Browse Source

Increased number of digits after the decimal point for Gibibytes and above

adaptive-webui-19844
thalieht 8 years ago
parent
commit
311b060c70
  1. 10
      src/base/utils/misc.cpp
  2. 1
      src/base/utils/misc.h

10
src/base/utils/misc.cpp

@ -358,12 +358,20 @@ QString Utils::Misc::friendlyUnit(qint64 bytesValue, bool isSpeed) @@ -358,12 +358,20 @@ QString Utils::Misc::friendlyUnit(qint64 bytesValue, bool isSpeed)
if (unit == SizeUnit::Byte)
ret = QString::number(bytesValue) + " " + unitString(unit);
else
ret = Utils::String::fromDouble(friendlyVal, 1) + " " + unitString(unit);
ret = Utils::String::fromDouble(friendlyVal, friendlyUnitPrecision(unit)) + " " + unitString(unit);
if (isSpeed)
ret += QCoreApplication::translate("misc", "/s", "per second");
return ret;
}
int Utils::Misc::friendlyUnitPrecision(SizeUnit unit)
{
// friendlyUnit's number of digits after the decimal point
if (unit <= SizeUnit::MebiByte) return 1;
else if (unit == SizeUnit::GibiByte) return 2;
else return 3;
}
qlonglong Utils::Misc::sizeInBytes(qreal size, Utils::Misc::SizeUnit unit)
{
for (int i = 0; i < static_cast<int>(unit); ++i)

1
src/base/utils/misc.h

@ -88,6 +88,7 @@ namespace Utils @@ -88,6 +88,7 @@ namespace Utils
// value must be given in bytes
bool friendlyUnit(qint64 sizeInBytes, qreal& val, SizeUnit& unit);
QString friendlyUnit(qint64 bytesValue, bool isSpeed = false);
int friendlyUnitPrecision(SizeUnit unit);
qint64 sizeInBytes(qreal size, SizeUnit unit);
bool isPreviewable(const QString& extension);

Loading…
Cancel
Save