From 414e0f459862851a1714461a646bf801c09a4175 Mon Sep 17 00:00:00 2001 From: "Admiral H. Curtiss" Date: Sun, 6 Jun 2021 21:25:37 +0200 Subject: [PATCH] GeckoCodeWidget: Take game ID and revision directly instead of through GameFile. --- Source/Core/DolphinQt/CheatsManager.cpp | 5 ++++- Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp | 9 ++++++--- Source/Core/DolphinQt/Config/GeckoCodeWidget.h | 9 ++------- Source/Core/DolphinQt/Config/PropertiesDialog.cpp | 3 ++- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/Source/Core/DolphinQt/CheatsManager.cpp b/Source/Core/DolphinQt/CheatsManager.cpp index 0969a7018d..ea6aaf8e25 100644 --- a/Source/Core/DolphinQt/CheatsManager.cpp +++ b/Source/Core/DolphinQt/CheatsManager.cpp @@ -195,7 +195,10 @@ void CheatsManager::OnStateChanged(Core::State state) m_ar_code = new ARCodeWidget(m_game_file->GetGameID(), m_game_file->GetRevision(), false); m_tab_widget->insertTab(0, m_ar_code, tr("AR Code")); - m_tab_widget->insertTab(1, new GeckoCodeWidget(*m_game_file, false), tr("Gecko Codes")); + auto* gecko_code = + new GeckoCodeWidget(m_game_file->GetGameID(), m_game_file->GetGameTDBID(), + m_game_file->GetRevision(), false); + m_tab_widget->insertTab(1, gecko_code, tr("Gecko Codes")); } } } diff --git a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp index 8ff6c0cb78..3afbaf1760 100644 --- a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp +++ b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp @@ -4,6 +4,8 @@ #include "DolphinQt/Config/GeckoCodeWidget.h" +#include + #include #include #include @@ -28,9 +30,10 @@ #include "UICommon/GameFile.h" -GeckoCodeWidget::GeckoCodeWidget(const UICommon::GameFile& game, bool restart_required) - : m_game(game), m_game_id(game.GetGameID()), m_gametdb_id(game.GetGameTDBID()), - m_game_revision(game.GetRevision()), m_restart_required(restart_required) +GeckoCodeWidget::GeckoCodeWidget(std::string game_id, std::string gametdb_id, u16 game_revision, + bool restart_required) + : m_game_id(std::move(game_id)), m_gametdb_id(std::move(gametdb_id)), + m_game_revision(game_revision), m_restart_required(restart_required) { CreateWidgets(); ConnectWidgets(); diff --git a/Source/Core/DolphinQt/Config/GeckoCodeWidget.h b/Source/Core/DolphinQt/Config/GeckoCodeWidget.h index 28fa4aeb44..33b634ae01 100644 --- a/Source/Core/DolphinQt/Config/GeckoCodeWidget.h +++ b/Source/Core/DolphinQt/Config/GeckoCodeWidget.h @@ -23,16 +23,12 @@ namespace Gecko class GeckoCode; } -namespace UICommon -{ -class GameFile; -} - class GeckoCodeWidget : public QWidget { Q_OBJECT public: - explicit GeckoCodeWidget(const UICommon::GameFile& game, bool restart_required = true); + explicit GeckoCodeWidget(std::string game_id, std::string gametdb_id, u16 game_revision, + bool restart_required = true); ~GeckoCodeWidget() override; signals: @@ -54,7 +50,6 @@ private: void SaveCodes(); void SortAlphabetically(); - const UICommon::GameFile& m_game; std::string m_game_id; std::string m_gametdb_id; u16 m_game_revision; diff --git a/Source/Core/DolphinQt/Config/PropertiesDialog.cpp b/Source/Core/DolphinQt/Config/PropertiesDialog.cpp index 0764e5011f..4e629a803e 100644 --- a/Source/Core/DolphinQt/Config/PropertiesDialog.cpp +++ b/Source/Core/DolphinQt/Config/PropertiesDialog.cpp @@ -39,7 +39,8 @@ PropertiesDialog::PropertiesDialog(QWidget* parent, const UICommon::GameFile& ga InfoWidget* info = new InfoWidget(game); ARCodeWidget* ar = new ARCodeWidget(game.GetGameID(), game.GetRevision()); - GeckoCodeWidget* gecko = new GeckoCodeWidget(game); + GeckoCodeWidget* gecko = + new GeckoCodeWidget(game.GetGameID(), game.GetGameTDBID(), game.GetRevision()); PatchesWidget* patches = new PatchesWidget(game); GameConfigWidget* game_config = new GameConfigWidget(game);