summaryrefslogtreecommitdiff
path: root/src/citron/about_dialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/citron/about_dialog.cpp')
-rw-r--r--src/citron/about_dialog.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/citron/about_dialog.cpp b/src/citron/about_dialog.cpp
new file mode 100644
index 000000000..eeff54359
--- /dev/null
+++ b/src/citron/about_dialog.cpp
@@ -0,0 +1,32 @@
+// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include <QIcon>
+#include <fmt/format.h>
+#include "common/scm_rev.h"
+#include "ui_aboutdialog.h"
+#include "yuzu/about_dialog.h"
+
+AboutDialog::AboutDialog(QWidget* parent)
+ : QDialog(parent), ui{std::make_unique<Ui::AboutDialog>()} {
+ const auto branch_name = std::string(Common::g_scm_branch);
+ const auto description = std::string(Common::g_scm_desc);
+ const auto build_id = std::string(Common::g_build_id);
+
+ const auto yuzu_build = fmt::format("yuzu Development Build | {}-{}", branch_name, description);
+ const auto override_build =
+ fmt::format(fmt::runtime(std::string(Common::g_title_bar_format_idle)), build_id);
+ const auto yuzu_build_version = override_build.empty() ? yuzu_build : override_build;
+
+ ui->setupUi(this);
+ // Try and request the icon from Qt theme (Linux?)
+ const QIcon yuzu_logo = QIcon::fromTheme(QStringLiteral("org.yuzu_emu.yuzu"));
+ if (!yuzu_logo.isNull()) {
+ ui->labelLogo->setPixmap(yuzu_logo.pixmap(200));
+ }
+ ui->labelBuildInfo->setText(
+ ui->labelBuildInfo->text().arg(QString::fromStdString(yuzu_build_version),
+ QString::fromUtf8(Common::g_build_date).left(10)));
+}
+
+AboutDialog::~AboutDialog() = default;