Fix "Time active" field in transfer list

The "Time active" field was broken, displaying nothing when in
downloading state.
Also change type to int to match the return
types of TorrentHandle::activeTime() & TorrentHandle::seedingTime()
This commit is contained in:
Chocobo1
2017-09-26 01:14:49 +08:00
parent de6ca29dcd
commit 2d12c126eb

View File

@@ -122,13 +122,13 @@ void TransferListDelegate::paint(QPainter * painter, const QStyleOptionViewItem
break; break;
} }
case TorrentModel::TR_TIME_ELAPSED: { case TorrentModel::TR_TIME_ELAPSED: {
qlonglong elapsedTime = index.data().toLongLong(); const int elapsedTime = index.data().toInt();
qlonglong seedingTime = index.data(Qt::UserRole).toLongLong(); const int seedingTime = index.data(Qt::UserRole).toInt();
QString txt; const QString txt = (seedingTime > 0)
if (seedingTime > 0) ? tr("%1 (seeded for %2)", "e.g. 4m39s (seeded for 3m10s)")
txt += tr("%1 (seeded for %2)", "e.g. 4m39s (seeded for 3m10s)") .arg(Utils::Misc::userFriendlyDuration(elapsedTime))
.arg(Utils::Misc::userFriendlyDuration(elapsedTime)) .arg(Utils::Misc::userFriendlyDuration(seedingTime))
.arg(Utils::Misc::userFriendlyDuration(seedingTime)); : Utils::Misc::userFriendlyDuration(elapsedTime);
QItemDelegate::drawDisplay(painter, opt, opt.rect, txt); QItemDelegate::drawDisplay(painter, opt, opt.rect, txt);
break; break;
} }