diff options
| author | LillyJadeKatrin <lilly.kitty.1988@gmail.com> | 2024-07-24 22:15:06 -0400 |
|---|---|---|
| committer | LillyJadeKatrin <lilly.kitty.1988@gmail.com> | 2024-10-03 08:59:54 -0400 |
| commit | 72f682ab13edc49e40cd5e52f24a16feb60f5de8 (patch) | |
| tree | 5082a6d31b9f379d1a2b5feb1caa12504c49cdb8 /Source | |
| parent | 415fa3c6a5f25353e3e8348ee95f99399d3d0701 (diff) | |
Add Confirm Popups for Achievements Logout and Hardcore Off
Diffstat (limited to 'Source')
| -rw-r--r-- | Source/Core/DolphinQt/Achievements/AchievementSettingsWidget.cpp | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/Source/Core/DolphinQt/Achievements/AchievementSettingsWidget.cpp b/Source/Core/DolphinQt/Achievements/AchievementSettingsWidget.cpp index 261130d105..b90ad58604 100644 --- a/Source/Core/DolphinQt/Achievements/AchievementSettingsWidget.cpp +++ b/Source/Core/DolphinQt/Achievements/AchievementSettingsWidget.cpp @@ -21,6 +21,7 @@ #include "DolphinQt/Config/ControllerInterface/ControllerInterfaceWindow.h" #include "DolphinQt/Config/ToolTipControls/ToolTipCheckBox.h" +#include "DolphinQt/QtUtils/ModalMessageBox.h" #include "DolphinQt/QtUtils/NonDefaultQPushButton.h" #include "DolphinQt/QtUtils/SignalBlocking.h" #include "DolphinQt/Settings.h" @@ -36,7 +37,7 @@ AchievementSettingsWidget::AchievementSettingsWidget(QWidget* parent) : QWidget( // If hardcore is enabled when the emulator starts, make sure it turns off what it needs to if (Config::Get(Config::RA_HARDCORE_ENABLED)) - ToggleHardcore(); + UpdateHardcoreMode(); } void AchievementSettingsWidget::UpdateData() @@ -260,12 +261,29 @@ void AchievementSettingsWidget::Login() void AchievementSettingsWidget::Logout() { - AchievementManager::GetInstance().Logout(); - SaveSettings(); + auto confirm = ModalMessageBox::question( + this, tr("Confirm Logout"), tr("Are you sure you want to log out of RetroAchievements?"), + QMessageBox::Yes | QMessageBox::No, QMessageBox::NoButton, Qt::ApplicationModal); + if (confirm == QMessageBox::Yes) + { + AchievementManager::GetInstance().Logout(); + SaveSettings(); + } } void AchievementSettingsWidget::ToggleHardcore() { + if (Config::Get(Config::RA_HARDCORE_ENABLED)) + { + auto confirm = ModalMessageBox::question( + this, tr("Confirm Hardcore Off"), tr("Are you sure you want to turn hardcore mode off?"), + QMessageBox::Yes | QMessageBox::No, QMessageBox::NoButton, Qt::ApplicationModal); + if (confirm != QMessageBox::Yes) + { + SignalBlocking(m_common_hardcore_enabled_input)->setChecked(true); + return; + } + } SaveSettings(); UpdateHardcoreMode(); } |
