バックアップの処理クラスを考える [Qt]
先日、「mainwindow.ui」に以前追加したslotが残っている件を気にしていましたが、それを削除できないかと思っていたところ、できました。
Objectペインの「MainWindowClass」を右クリックし、「change signals/slots」を選択します。
こっちにはありました
「Slots」の欄に「addButtonClicked()」が残っていたので、これを選択して「-」ボタンを押して削除します。
ここに残ってます
結果を保存して、「mainwindow.ui」をテキストエディタで見たところ、該当の箇所の記述が消えていました。
消えた!
*
以上、すっきりしたところで、実装を進めようと思いますが、進める前にクラス構成を考えたいと思います。今まで、MainWindowクラスに色々貼り付けていましたが、ここは単なるUIとして、バックアップ制御を受け持つクラスを別に用意したいと思います。クラス図を書くとこんな感じでしょうか・・。
描くほどでもないですが・・
アプリケーション自体はMainWindowクラス主体で動くので、そのエンジンとなる「BackupControl」と言うクラスを作成します。ベースクラスは無しとします。
MainWindowクラスとこのクラス(BackupControl)の間でBackupControlクラス側に必要そうなメソッドは下記のような感じでしょうか。
最後のメソッドで思いつきましたが、そう言えば、バックアップ動作の中止のボタンが必要ですね・・。
また、経過出力のためにsignalを出してもらう必要がありそうです。signalでいいんですかね・・。
ここまで書いて気付きましたが、これって、バックアップ処理は並列処理で行わないと途中で停止ができない気がしますね・・。Qtのスレッドの仕組みを見なければ・・。
つづく。
Objectペインの「MainWindowClass」を右クリックし、「change signals/slots」を選択します。
こっちにはありました
「Slots」の欄に「addButtonClicked()」が残っていたので、これを選択して「-」ボタンを押して削除します。
ここに残ってます
結果を保存して、「mainwindow.ui」をテキストエディタで見たところ、該当の箇所の記述が消えていました。
消えた!
*
以上、すっきりしたところで、実装を進めようと思いますが、進める前にクラス構成を考えたいと思います。今まで、MainWindowクラスに色々貼り付けていましたが、ここは単なるUIとして、バックアップ制御を受け持つクラスを別に用意したいと思います。クラス図を書くとこんな感じでしょうか・・。
描くほどでもないですが・・
アプリケーション自体はMainWindowクラス主体で動くので、そのエンジンとなる「BackupControl」と言うクラスを作成します。ベースクラスは無しとします。
MainWindowクラスとこのクラス(BackupControl)の間でBackupControlクラス側に必要そうなメソッドは下記のような感じでしょうか。
addSourceDir() | バックアップ元ディレクトリの追加 |
delSourceDir() | バックアップ元ディレクトリの削除 |
backup() | バックアップ開始 |
setDestinationDir() | バックアップ先ディレクトリの設定 |
getSourceDirs() | 設定されているバックアップ元ディレクトリの取得 |
getDiestinationDir() | 設定されているバックアップ先ディレクトリの取得 |
stop() | バックアップの停止 |
最後のメソッドで思いつきましたが、そう言えば、バックアップ動作の中止のボタンが必要ですね・・。
また、経過出力のためにsignalを出してもらう必要がありそうです。signalでいいんですかね・・。
startCopyFile() | 1ファイルコピー開始のsignal(コピー元) |
finishCopyFile() | 1ファイルコピー終了のsignal(コピー元) |
startCopy() | コピー処理開始のsignal |
finishCopy() | コピー処理終了のsignal |
stopCopy() | コピー処理停止のsignal |
ここまで書いて気付きましたが、これって、バックアップ処理は並列処理で行わないと途中で停止ができない気がしますね・・。Qtのスレッドの仕組みを見なければ・・。
つづく。
コメント 0