summaryrefslogtreecommitdiffstats
path: root/filewidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'filewidget.cpp')
-rw-r--r--filewidget.cpp8
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()){