From 255d2ff2d296307c562057c096a0d77c9c5e06b5 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 31 Jul 2019 09:11:44 -0400 Subject: DolphinQt/Config/GeckoCodeWidget: Deduplicate ini path We can store this to a local variable to avoid duplicating the same string creation twice. --- Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp') diff --git a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp index dda5915fc5..da015cf57b 100644 --- a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp +++ b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp @@ -229,12 +229,13 @@ void GeckoCodeWidget::RemoveCode() void GeckoCodeWidget::SaveCodes() { - IniFile game_ini_local; - game_ini_local.Load(File::GetUserPath(D_GAMESETTINGS_IDX) + m_game_id + ".ini"); + const auto ini_path = + std::string(File::GetUserPath(D_GAMESETTINGS_IDX)).append(m_game_id).append(".ini"); + IniFile game_ini_local; + game_ini_local.Load(ini_path); Gecko::SaveCodes(game_ini_local, m_gecko_codes); - - game_ini_local.Save(File::GetUserPath(D_GAMESETTINGS_IDX) + m_game_id + ".ini"); + game_ini_local.Save(ini_path); } void GeckoCodeWidget::OnContextMenuRequested() -- cgit v1.2.3 From 6002529ece9aa9629169c56d30c3ba39ff98924a Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 31 Jul 2019 09:16:01 -0400 Subject: DolphinQt/Config/GeckoCodeWidget: Make exec() outcomes explicit Makes it a little more explicit which dialog outcomes we're expecting. While we're at it, we can invert them into guard clauses to unindent code a little bit. --- Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) (limited to 'Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp') diff --git a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp index da015cf57b..6ed31fe0fd 100644 --- a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp +++ b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp @@ -185,33 +185,29 @@ void GeckoCodeWidget::AddCode() CheatCodeEditor ed(this); ed.SetGeckoCode(&code); + if (ed.exec() == QDialog::Rejected) + return; - if (ed.exec()) - { - m_gecko_codes.push_back(std::move(code)); - SaveCodes(); - UpdateList(); - } + m_gecko_codes.push_back(std::move(code)); + SaveCodes(); + UpdateList(); } void GeckoCodeWidget::EditCode() { const auto* item = m_code_list->currentItem(); - if (item == nullptr) return; const int index = item->data(Qt::UserRole).toInt(); CheatCodeEditor ed(this); - ed.SetGeckoCode(&m_gecko_codes[index]); + if (ed.exec() == QDialog::Rejected) + return; - if (ed.exec()) - { - SaveCodes(); - UpdateList(); - } + SaveCodes(); + UpdateList(); } void GeckoCodeWidget::RemoveCode() -- cgit v1.2.3 From 14263ec6dd209dc2ca7be5c1d69b7882c27780e0 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 31 Jul 2019 09:18:37 -0400 Subject: DolphinQt/Config/GeckoCodeWidget: Call LoadDefaultGameIni() directly This is a static class function, so we don't need to go through the SConfig instance in order to call it. --- Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp') diff --git a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp index 6ed31fe0fd..12bf0dd7c9 100644 --- a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp +++ b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp @@ -40,7 +40,7 @@ GeckoCodeWidget::GeckoCodeWidget(const UICommon::GameFile& game, bool restart_re // will always be stored in GS/${GAMEID}.ini game_ini_local.Load(File::GetUserPath(D_GAMESETTINGS_IDX) + m_game_id + ".ini"); - IniFile game_ini_default = SConfig::GetInstance().LoadDefaultGameIni(m_game_id, m_game_revision); + const IniFile game_ini_default = SConfig::LoadDefaultGameIni(m_game_id, m_game_revision); m_gecko_codes = Gecko::LoadCodes(game_ini_default, game_ini_local); UpdateList(); -- cgit v1.2.3 From ff8f627499ca3eb8ac5f07cf5ced97f0d8b57ed1 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 31 Jul 2019 09:42:30 -0400 Subject: DolphinQt/Config/GeckoCodeWidget: Use forward declarations where applicable Avoids propagating headers into scopes where they're not needed. --- Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp') diff --git a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp index 12bf0dd7c9..4d8d5935b9 100644 --- a/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp +++ b/Source/Core/DolphinQt/Config/GeckoCodeWidget.cpp @@ -19,6 +19,7 @@ #include "Common/IniFile.h" #include "Core/ConfigManager.h" +#include "Core/GeckoCode.h" #include "Core/GeckoCodeConfig.h" #include "DolphinQt/Config/CheatCodeEditor.h" @@ -46,6 +47,8 @@ GeckoCodeWidget::GeckoCodeWidget(const UICommon::GameFile& game, bool restart_re UpdateList(); } +GeckoCodeWidget::~GeckoCodeWidget() = default; + void GeckoCodeWidget::CreateWidgets() { m_warning = new CheatWarningWidget(m_game_id, m_restart_required, this); -- cgit v1.2.3