新しいファイラー

MDIEを直すより、いっそ新しくしようと考え、去年からコツコツやっていましたが、
まだ出せそうにありません。4月ぐらいに何かあると良いと思います、って感じで
お茶を濁しておきます。なんだか、ファイラーが盛り上がっているみたいなので、
便乗して新しいファイラーがどんな風になるのかを、紹介したいと思います。

外観


どこかのブラウザにすごく似てる気がしないでもない外観になっています。去年の12月31日まではWinSCPに似ている二画面だったはずなのに、新年明けたらこうなってました。MDIEと大きく異なるところはありません。メニューがないぐらいですね。閉じるとかのボタンがないので、今後しっかりやります。

検索


検索は大きく変わります。基本的に検索という概念はなくなり、全てのフォルダが階層に対応します。検索はまず2階層ぐらいを展開します。そしてフィルタリングします。(下の検索バーにフィルタリングしたい言葉を打ち込むのですが、現状は古い仕様のコマンドバーだったものを代用しています。リリース時とは異なります)展開した結果は保存しているので、再フィルタリングは高速です。ただしメモリを圧迫する可能性があります。まぁメモリは増える方向なので、そういった設計にしました。検索と通常のファイル操作がシームレスに扱えるようになります。

設定の保存

レジストリはやめ、JSON形式にしました。JsonCppをutf16に対応させたものになっています。

縮小表示

今まで酷かったちらつきを押さえ、さらにキャッシュとしてsqlite3を使用しています。また画像の取得はGDI+を使用し、今までよりシェルへの依存を弱めています。これによりvistaへの対応度が高まると思っています。
Susieプラグインユニコード対応になったらSusieプラグインに対応させようと思います。というかもうSusieで表示するコードは書いたのですが、ユニコードじゃなきゃ納得いかないということで、放置してます。

複数ウインドウへの対応

いくつかのウインドウを表示することができるようになります。

その他

Vistaへの対応はやってません。ただWindows7は買うつもりなので、動きそうなコードにしています。MDIEはXP,2000に大きく依存したコードになっていたのですが、今回はマイナーな関数などの使用を避けています。ただファイラーという性質上避けられないものもあるので、Vistaへの対応は微妙です。MDIEよりか動くと思います。

開発スタイル

ファイラーは安定性が求められるので、MDIEよりはましになった開発スタイルを書いておきます。

言語はC++で開発しています。ライブラリはWTLになっています。テンプレート楽しいです。.NETも考えましたが、初回起動が遅いのは耐えられませんでした。あとBoostは使わないようにしました。JSON Spiritを試したときに、どうもインテリセンスがおかしくなる現象が起きてやめました。結果、JsonCppを直すことになったのですが、いろいろ考えたぶん良くなった気がします。スマートポインタのみTR1を使っています。

バージョン管理はGITを使っています。適当にコミットしているだけなので、使っているというより単なるロールバックとデスクトップとノートの受け渡し用です。リリース後に活躍するといいなと思っています。

ドキュメントはDoxygenにかけて出力したものを、たまに眺める感じです。