1
mirror of https://github.com/qbittorrent/qBittorrent synced 2024-10-19 21:36:47 +02:00

Merge pull request #13876 from Chocobo1/fix

Fix availability value
This commit is contained in:
Mike Tzou 2020-11-30 11:20:02 +08:00 committed by GitHub
commit 7c5d0a0e00
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 31 additions and 38 deletions

View File

@ -28,9 +28,12 @@
#include "speedplotview.h"
#include <cmath>
#include <QLocale>
#include <QPainter>
#include <QPen>
#include "base/global.h"
#include "base/unicodestrings.h"
#include "base/utils/misc.h"
@ -85,20 +88,16 @@ namespace
calculatedUnit = static_cast<SizeUnit>(static_cast<int>(calculatedUnit) + 1);
}
if (value > 100.0)
if (value > 100)
{
int roundedValue = static_cast<int>(value / 40) * 40;
while (roundedValue < value)
roundedValue += 40;
return {static_cast<double>(roundedValue), calculatedUnit};
const double roundedValue {std::ceil(value / 40) * 40};
return {roundedValue, calculatedUnit};
}
if (value > 10.0)
if (value > 10)
{
int roundedValue = static_cast<int>(value / 4) * 4;
while (roundedValue < value)
roundedValue += 4;
return {static_cast<double>(roundedValue), calculatedUnit};
const double roundedValue {std::ceil(value / 4) * 4};
return {roundedValue, calculatedUnit};
}
for (const auto &roundedValue : roundingTable)

View File

@ -112,42 +112,37 @@ QString TorrentContentModelItem::displayData(const int column) const
case COL_NAME:
return m_name;
case COL_PRIO:
{
switch (m_priority)
{
case BitTorrent::DownloadPriority::Mixed:
return tr("Mixed", "Mixed (priorities");
case BitTorrent::DownloadPriority::Ignored:
return tr("Not downloaded");
case BitTorrent::DownloadPriority::High:
return tr("High", "High (priority)");
case BitTorrent::DownloadPriority::Maximum:
return tr("Maximum", "Maximum (priority)");
default:
return tr("Normal", "Normal (priority)");
}
switch (m_priority)
{
case BitTorrent::DownloadPriority::Mixed:
return tr("Mixed", "Mixed (priorities");
case BitTorrent::DownloadPriority::Ignored:
return tr("Not downloaded");
case BitTorrent::DownloadPriority::High:
return tr("High", "High (priority)");
case BitTorrent::DownloadPriority::Maximum:
return tr("Maximum", "Maximum (priority)");
default:
return tr("Normal", "Normal (priority)");
}
case COL_PROGRESS:
{
const qreal progress = m_progress * 100;
return (static_cast<int>(progress) == 100)
? QString::fromLatin1("100%")
: (Utils::String::fromDouble(progress, 1) + QLatin1Char('%'));
}
return (m_progress >= 1)
? QString::fromLatin1("100%")
: (Utils::String::fromDouble((m_progress * 100), 1) + QLatin1Char('%'));
case COL_SIZE:
return Utils::Misc::friendlyUnit(m_size);
case COL_REMAINING:
return Utils::Misc::friendlyUnit(remaining());
case COL_AVAILABILITY:
{
const int avail = availability();
{
const qreal avail = availability();
if (avail < 0)
return tr("N/A");
const QString value = (avail >= 1.0)
const QString value = (avail >= 1)
? QString::fromLatin1("100")
: Utils::String::fromDouble((avail * 100), 1);
return QString {value + C_THIN_SPACE + QLatin1Char('%')};
return {value + C_THIN_SPACE + QLatin1Char('%')};
}
default:
Q_ASSERT(false);

View File

@ -316,12 +316,11 @@ QString TransferListModel::displayValue(const BitTorrent::TorrentHandle *torrent
return tagsList.join(", ");
};
const auto progressString = [](qreal progress) -> QString
const auto progressString = [](const qreal progress) -> QString
{
progress *= 100;
return (static_cast<int>(progress) == 100)
return (progress >= 1)
? QString::fromLatin1("100%")
: Utils::String::fromDouble(progress, 1) + '%';
: Utils::String::fromDouble((progress * 100), 1) + QLatin1Char('%');
};
const auto statusString = [this](const BitTorrent::TorrentState state, const QString &errorMessage) -> QString