Add game versio to title bar

This commit is contained in:
unknown 2020-06-08 23:58:04 +02:00
parent 98d2461529
commit 20a779299a
2 changed files with 17 additions and 13 deletions

View file

@ -1037,17 +1037,19 @@ void GMainWindow::BootGame(const QString& filename) {
const u64 title_id = Core::System::GetInstance().CurrentProcess()->GetTitleID(); const u64 title_id = Core::System::GetInstance().CurrentProcess()->GetTitleID();
std::string title_name; std::string title_name;
std::string title_version;
const auto res = Core::System::GetInstance().GetGameName(title_name); const auto res = Core::System::GetInstance().GetGameName(title_name);
if (res != Loader::ResultStatus::Success) {
const auto metadata = FileSys::PatchManager(title_id).GetControlMetadata();
if (metadata.first != nullptr)
title_name = metadata.first->GetApplicationName();
if (title_name.empty()) const auto metadata = FileSys::PatchManager(title_id).GetControlMetadata();
if (metadata.first != nullptr) {
title_version = metadata.first->GetVersionString();
title_name = metadata.first->GetApplicationName();
}
if (res != Loader::ResultStatus::Success || title_name.empty()) {
title_name = FileUtil::GetFilename(filename.toStdString()); title_name = FileUtil::GetFilename(filename.toStdString());
} }
LOG_INFO(Frontend, "Booting game: {:016X} | {}", title_id, title_name); LOG_INFO(Frontend, "Booting game: {:016X} | {} | {}", title_id, title_name, title_version);
UpdateWindowTitle(QString::fromStdString(title_name)); UpdateWindowTitle(title_name, title_version);
loading_screen->Prepare(Core::System::GetInstance().GetAppLoader()); loading_screen->Prepare(Core::System::GetInstance().GetAppLoader());
loading_screen->show(); loading_screen->show();
@ -1995,7 +1997,8 @@ void GMainWindow::OnCaptureScreenshot() {
OnStartGame(); OnStartGame();
} }
void GMainWindow::UpdateWindowTitle(const QString& title_name) { void GMainWindow::UpdateWindowTitle(const std::string& title_name,
const std::string& title_version) {
const auto full_name = std::string(Common::g_build_fullname); const auto full_name = std::string(Common::g_build_fullname);
const auto branch_name = std::string(Common::g_scm_branch); const auto branch_name = std::string(Common::g_scm_branch);
const auto description = std::string(Common::g_scm_desc); const auto description = std::string(Common::g_scm_desc);
@ -2004,7 +2007,7 @@ void GMainWindow::UpdateWindowTitle(const QString& title_name) {
const auto date = const auto date =
QDateTime::currentDateTime().toString(QStringLiteral("yyyy-MM-dd")).toStdString(); QDateTime::currentDateTime().toString(QStringLiteral("yyyy-MM-dd")).toStdString();
if (title_name.isEmpty()) { if (title_name.empty()) {
const auto fmt = std::string(Common::g_title_bar_format_idle); const auto fmt = std::string(Common::g_title_bar_format_idle);
setWindowTitle(QString::fromStdString(fmt::format(fmt.empty() ? "yuzu {0}| {1}-{2}" : fmt, setWindowTitle(QString::fromStdString(fmt::format(fmt.empty() ? "yuzu {0}| {1}-{2}" : fmt,
full_name, branch_name, description, full_name, branch_name, description,
@ -2012,8 +2015,8 @@ void GMainWindow::UpdateWindowTitle(const QString& title_name) {
} else { } else {
const auto fmt = std::string(Common::g_title_bar_format_running); const auto fmt = std::string(Common::g_title_bar_format_running);
setWindowTitle(QString::fromStdString( setWindowTitle(QString::fromStdString(
fmt::format(fmt.empty() ? "yuzu {0}| {3} | {1}-{2}" : fmt, full_name, branch_name, fmt::format(fmt.empty() ? "yuzu {0}| {3} | {4} | {1}-{2}" : fmt, full_name, branch_name,
description, title_name.toStdString(), date, build_id))); description, title_name, title_version, date, build_id)));
} }
} }

View file

@ -215,7 +215,8 @@ private slots:
private: private:
std::optional<u64> SelectRomFSDumpTarget(const FileSys::ContentProvider&, u64 program_id); std::optional<u64> SelectRomFSDumpTarget(const FileSys::ContentProvider&, u64 program_id);
void UpdateWindowTitle(const QString& title_name = {}); void UpdateWindowTitle(const std::string& title_name = {},
const std::string& title_version = {});
void UpdateStatusBar(); void UpdateStatusBar();
void HideMouseCursor(); void HideMouseCursor();
void ShowMouseCursor(); void ShowMouseCursor();