pygtkのファイルコピー、基本的な機能が完成。

WindowsLinuxとでThreadの挙動の違いについてかなり試行錯誤をしましたが、ようやくWindowsでもLinuxでも動作するファイルコピーツールの基本機能ができました。

ますはアバウトダイアログから。

次はファイル登録ウインドウ。
この画面でコピー元のファイルを登録したり、コピー先のディレクトリやファイル名を設定したりします。
設定した内容はXMLファイルに保存できるので、いつでも同じ内容のコピーを行うことができます。

ファイルに連番をつけてコピーする機能も付けてみました。
次のようなダイアログで設定した書式にしたがって連番ファイルを作れます。
"%d"の部分が連番の数字に置き換わります。
たとえばFILE_%dとすると、FILE_1, FILE_2, FILE_3....といった具合に連番ファイルとしてコピーされます。

ほかにも、ファイル登録ウインドウ中に表示されているコピー元(Src)、コピー先(Dst)のファイル名を入れ替えることができます。この機能を使うと、連番などにリネームして別ディレクトリにコピーしたファイルを、オリジナルの名前に戻すことができます。

現状では、コピー時にエラーが発生した場合や、保存したXMLが壊れていた場合などの例外処理が大雑把なので、そのあたりをもう少し調整しようと思っています。

そのあとで、お待ちかね(?)のオプションとして設定できる項目を増やしたり、Pythonで書かれたプラグインで機能を拡張できるようにする予定です。

いやはや、GTKはサクサクつくれてあまりストレスがたまらなくて楽ちんです。

とはいうものの、Linux環境とWindows環境の両方で動かすには、ある程度試行錯誤が必要なので(GTKのスレッドとPythonのスレッドを同時に動かすような場合など)、そのあたりの情報収集なども続けていかねば。。。
と思いました。

一通り機能の実装と検証を済ませたら、久しぶりにポケット倉庫@Wikiにソース一式をアップ使用と思っています。

つづく。