diff options
author | Arno <arno@disconnect.de> | 2016-12-06 12:14:47 +0100 |
---|---|---|
committer | Arno <arno@disconnect.de> | 2016-12-06 12:14:47 +0100 |
commit | 997ed9156ba7a1942cebd487fd5cc2818220fa78 (patch) | |
tree | 3b9d5a63b9235e3fa9ce8e4f9078991fc14738b3 /filewidget.cpp | |
parent | a68cf88e69c65014f2e528aa26db42b4808c3b64 (diff) | |
download | ShemovCleaner-997ed9156ba7a1942cebd487fd5cc2818220fa78.tar.gz ShemovCleaner-997ed9156ba7a1942cebd487fd5cc2818220fa78.tar.bz2 ShemovCleaner-997ed9156ba7a1942cebd487fd5cc2818220fa78.zip |
Add a summary to ProgressDialog
Show how many files we have, and display the transfer rate in Megabytes
per second. Can't believe that it worked right from the start :)
Diffstat (limited to 'filewidget.cpp')
-rw-r--r-- | filewidget.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/filewidget.cpp b/filewidget.cpp index a539f82..6b5770f 100644 --- a/filewidget.cpp +++ b/filewidget.cpp @@ -47,6 +47,7 @@ FileWidget::FileWidget(QWidget *parent) : QWidget(parent), mCopyToMenu(0), mCopy mCopyProgress = new ProgressDialog; connect(mFileCopier, SIGNAL(newFile(QString,QString,qint64)), this, SLOT(setupProgress(QString,QString,qint64))); connect(mFileCopier, SIGNAL(bytesRead(qint64)), this, SLOT(setCopyProgress(qint64))); + connect(mFileCopier, SIGNAL(bytesReadIntval(qint64,qint64)), this, SLOT(setCopySummary(qint64,qint64))); connect(mFileCopier, SIGNAL(finished()), this, SLOT(hideCopyProgress())); connect(mFileCopier, SIGNAL(success(bool,QString)), this, SLOT(copySuccess(bool,QString))); connect(mCopyProgress, SIGNAL(cancelled()), this, SLOT(hideCopyProgress())); @@ -526,6 +527,13 @@ void FileWidget::setCopyProgress(qint64 bytes){ mCopyProgress->setValue(val); } +void FileWidget::setCopySummary(qint64 bytes, qint64 elapsed){ + QHash<QString,QString> jobs = mFileCopier->jobs(); + float rate = bytes / (elapsed / 1000) / 1024 / 1024.0; + QString sum = QString("%1 file(s), @ %2 MB/s").arg(QString::number(jobs.count() + 1)).arg(QString::number(rate, 'f', 2)); + mCopyProgress->setSummary(sum); +} + void FileWidget::copyFiles(QString destDir){ QModelIndexList files = mFileView->selectionModel()->selectedRows(); if(!files.isEmpty()){ |