summaryrefslogtreecommitdiffstats
path: root/src/libs/kdtools
diff options
context:
space:
mode:
authorTim Jenssen <tim.jenssen@nokia.com>2012-03-21 14:28:40 +0100
committerTim Jenssen <tim.jenssen@nokia.com>2012-03-27 15:04:31 +0200
commit520d98028f37e550c0cfec34b9c10278c4a44aff (patch)
tree3a64434d02f3b1fa5009de88a7832ad8c56f184f /src/libs/kdtools
parent564ef626886496ea5e6685f0fc4f96c283245123 (diff)
introduce general humanReadableSize method
Change-Id: I4731be424cf2207e8cc2320ab9e442d02c29aeda Reviewed-by: Tim Jenssen <tim.jenssen@nokia.com>
Diffstat (limited to 'src/libs/kdtools')
-rw-r--r--src/libs/kdtools/kdupdaterfiledownloader.cpp26
1 files changed, 8 insertions, 18 deletions
diff --git a/src/libs/kdtools/kdupdaterfiledownloader.cpp b/src/libs/kdtools/kdupdaterfiledownloader.cpp
index a938c9cb5..6494d72b2 100644
--- a/src/libs/kdtools/kdupdaterfiledownloader.cpp
+++ b/src/libs/kdtools/kdupdaterfiledownloader.cpp
@@ -23,6 +23,8 @@
#include "kdupdaterfiledownloader_p.h"
#include "kdupdaterfiledownloaderfactory.h"
+#include <fileutils.h>
+
#include <QFile>
#include <QtNetwork/QFtp>
#include <QtNetwork/QNetworkAccessManager>
@@ -39,26 +41,13 @@
#include <QTimerEvent>
using namespace KDUpdater;
+using namespace QInstaller;
static double calcProgress(qint32 done, qint32 total)
{
return total ? (double(done) / double(total)) : 0;
}
-static QString format(double data)
-{
- if (data < 1024.0)
- return KDUpdater::FileDownloader::tr("%L1 B").arg(data);
- data /= 1024.0;
- if (data < 1024.0)
- return KDUpdater::FileDownloader::tr("%L1 KB").arg(data, 0, 'f', 2);
- data /= 1024.0;
- if (data < 1024.0)
- return KDUpdater::FileDownloader::tr("%L1 MB").arg(data, 0, 'f', 2);
- data /= 1024.0;
- return KDUpdater::FileDownloader::tr("%L1 GB").arg(data, 0, 'f', 2);
-}
-
QByteArray KDUpdater::calculateHash(QIODevice* device, QCryptographicHash::Algorithm algo)
{
Q_ASSERT(device);
@@ -417,9 +406,10 @@ void KDUpdater::FileDownloader::emitDownloadStatus()
{
QString status;
if (d->m_bytesToReceive > 0) {
- QString bytesReceived = format(d->m_bytesReceived);
- const QString bytesToReceive = format(d->m_bytesToReceive);
+ QString bytesReceived = humanReadableSize(d->m_bytesReceived);
+ const QString bytesToReceive = humanReadableSize(d->m_bytesToReceive);
+ // remove the unit from the bytesReceived value if bytesToReceive has the same
const QString tmp = bytesToReceive.mid(bytesToReceive.indexOf(QLatin1Char(' ')));
if (bytesReceived.endsWith(tmp))
bytesReceived.chop(tmp.length());
@@ -427,10 +417,10 @@ void KDUpdater::FileDownloader::emitDownloadStatus()
status = bytesReceived + tr(" of ") + bytesToReceive;
} else {
if (d->m_bytesReceived > 0)
- status = format(d->m_bytesReceived) + tr(" downloaded.");
+ status = humanReadableSize(d->m_bytesReceived) + tr(" downloaded.");
}
- status += QLatin1String(" (") + format(d->m_downloadSpeed) + tr("/sec") + QLatin1Char(')');
+ status += QLatin1String(" (") + humanReadableSize(d->m_downloadSpeed) + tr("/sec") + QLatin1Char(')');
if (d->m_bytesToReceive > 0 && d->m_downloadSpeed > 0) {
const qint64 time = (d->m_bytesToReceive - d->m_bytesReceived) / d->m_downloadSpeed;