diff options
Diffstat (limited to 'src/citra_qt/util/util.cpp')
| -rw-r--r-- | src/citra_qt/util/util.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/citra_qt/util/util.cpp b/src/citra_qt/util/util.cpp index f292046b7..8734a8efd 100644 --- a/src/citra_qt/util/util.cpp +++ b/src/citra_qt/util/util.cpp | |||
| @@ -2,6 +2,9 @@ | |||
| 2 | // Licensed under GPLv2 or any later version | 2 | // Licensed under GPLv2 or any later version |
| 3 | // Refer to the license.txt file included. | 3 | // Refer to the license.txt file included. |
| 4 | 4 | ||
| 5 | #include <array> | ||
| 6 | #include <cmath> | ||
| 7 | |||
| 5 | #include "citra_qt/util/util.h" | 8 | #include "citra_qt/util/util.h" |
| 6 | 9 | ||
| 7 | QFont GetMonospaceFont() { | 10 | QFont GetMonospaceFont() { |
| @@ -11,3 +14,12 @@ QFont GetMonospaceFont() { | |||
| 11 | font.setFixedPitch(true); | 14 | font.setFixedPitch(true); |
| 12 | return font; | 15 | return font; |
| 13 | } | 16 | } |
| 17 | |||
| 18 | QString ReadableByteSize(qulonglong size) { | ||
| 19 | static const std::array<const char*, 6> units = { "B", "KiB", "MiB", "GiB", "TiB", "PiB" }; | ||
| 20 | if (size == 0) | ||
| 21 | return "0"; | ||
| 22 | int digit_groups = std::min<int>((int)(std::log10(size) / std::log10(1024)), units.size()); | ||
| 23 | return QString("%L1 %2").arg(size / std::pow(1024, digit_groups), 0, 'f', 1) | ||
| 24 | .arg(units[digit_groups]); | ||
| 25 | } | ||