Clickteam Fusion 2.5 (以下 CF25) Windows PC 用ベータ版エクステンションのバージョン2を公開予定。
6月中に公開するベータバージョン2は C++17 の Filesystem から一部機能を CF25 上で利用可能になっています。
C++17 で標準化された filesystem は 先行していた Boost 版をベースに実装されたもので、Boost 版で報告されていたバグも修正されずに一部残っているような?結局いろいろ試した結果、string で受け取った後に TCHAR へ変換する作業は必須になってしまった。ディレクトリ名やファイル名の取得にまつわる文字列絡みです。
ではベータバージョン2に実装された機能ハイライトをトピックスでお伝えします。
ファイルやディレクトリの一覧を取得
簡単なファイルエクスプローラーみたいなものを数行の CF25 イベントで作ることができるようになりました。ファイルとディレクトリを区別して CF25 上でループを回すことができるので、ファイル/ディレクトリ一覧を別々に出力も簡単にできます。
Windows 11 で試していますが、パーミッションを越えたアクセスはもちろんできません。
現在は名前を取得できるだけですが、ファイルサイズ取得、タイムスタンプ取得、リネーム機能などは実装予定があります。
「ファイル・ディレクトリの削除」はベータ2でも内部的には実装済み、しかしエクステンションには搭載されない可能性ある。ちょっとね、怖いんですよ、これをエクステンションに実装するのが。
Regex Search の実装
正規表現を使った文字列検索が CF25 上のコンディションから利用可能になります。かなり便利です。
文字列を Partial Match (部分文字列一致)で探す機能として実装されているのですが、正規表現を使って検索できるので通常だと 「or or or」 など冗長になる記述が「(mp3|dll|exe)$」のように正規表現を使って一発で検索できます。
もちろん filesystem とも連携できるので、指定した拡張子のファイルだけを抽出して一覧として取得などに活用できます。
HWND :: ウィンドウタイトルのキャプションを変更
ウィンドウタイトルに表示されている文字列を任意に変更できる機能。
Clickteam 謹製の Window Control Object でもできますが、それだけのためにエクステンションを追加するのも面倒だったので自作しました。
地味ですが、動作サンプルを作っている時など「ウィンドウタイトルを変更」できると便利なときがあるのです。
HWND は筆者の気分で欲しいものが詰め込まれる「おまけ」機能です。
ベータ2は6月中旬を目処に公開予定。