Improve and fix comic file size format

This commit is contained in:
Luis Ángel San Martín 2024-02-13 18:41:23 +01:00
parent 374898702d
commit 2b2762c045
2 changed files with 13 additions and 1 deletions

View File

@ -8,6 +8,7 @@ Version counting is based on semantic versioning (Major.Feature.Patch)
* Fix columns in the search results.
* Fix type not being propagated to new folders from their parents.
* Fix default type set to folders in the root folder when they are added.
* Improve and fix comic file size format.
## 9.14.1

View File

@ -290,7 +290,18 @@ QVariant ComicModel::data(const QModelIndex &index, int role) const
auto item = static_cast<ComicItem *>(index.internalPointer());
auto sizeString = [=] {
return QString::number(item->data(ComicModel::Hash).toString().right(item->data(ComicModel::Hash).toString().length() - 40).toInt() / 1024.0 / 1024.0, 'f', 2) + "Mb";
auto bytes = item->data(ComicModel::Hash).toString().right(item->data(ComicModel::Hash).toString().length() - 40).toULongLong();
QStringList units = { "B", "KB", "MB", "GB", "TB" };
int i;
double outputSize = bytes;
for (i = 0; i < units.size() - 1; i++) {
if (outputSize < 1024) {
break;
}
outputSize = outputSize / 1024;
}
return QString("%1 %2").arg(outputSize, 0, 'f', 2).arg(units[i]);
};
if (role == NumberRole)