aboutsummaryrefslogtreecommitdiff
path: root/src/yuzu/util/util.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/yuzu/util/util.cpp')
-rw-r--r--src/yuzu/util/util.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/yuzu/util/util.cpp b/src/yuzu/util/util.cpp
new file mode 100644
index 0000000000..02be92bbde
--- /dev/null
+++ b/src/yuzu/util/util.cpp
@@ -0,0 +1,26 @@
+// Copyright 2015 Citra Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#include <array>
+#include <cmath>
+#include "citra_qt/util/util.h"
+
+QFont GetMonospaceFont() {
+ QFont font("monospace");
+ // Automatic fallback to a monospace font on on platforms without a font called "monospace"
+ font.setStyleHint(QFont::Monospace);
+ font.setFixedPitch(true);
+ return font;
+}
+
+QString ReadableByteSize(qulonglong size) {
+ static const std::array<const char*, 6> units = {"B", "KiB", "MiB", "GiB", "TiB", "PiB"};
+ if (size == 0)
+ return "0";
+ int digit_groups = std::min<int>(static_cast<int>(std::log10(size) / std::log10(1024)),
+ static_cast<int>(units.size()));
+ return QString("%L1 %2")
+ .arg(size / std::pow(1024, digit_groups), 0, 'f', 1)
+ .arg(units[digit_groups]);
+}