Merge pull request #13082 from Dentomologist/generalpane_hardcore_mode_tooltip_clarifications

GeneralPane: Add Hardcore Mode tooltip clarifications
This commit is contained in:
JMC47 2025-09-28 14:10:06 -04:00 committed by GitHub
commit e5fbc74156
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 30 additions and 7 deletions

View file

@ -95,6 +95,8 @@ void GeneralPane::OnEmulationStateChanged(Core::State state)
m_checkbox_discord_presence->setEnabled(!running); m_checkbox_discord_presence->setEnabled(!running);
#endif #endif
m_combobox_fallback_region->setEnabled(!running); m_combobox_fallback_region->setEnabled(!running);
UpdateDescriptionsUsingHardcoreStatus();
} }
void GeneralPane::ConnectLayout() void GeneralPane::ConnectLayout()
@ -397,12 +399,6 @@ void GeneralPane::AddDescriptions()
"<br><br>This setting cannot be changed while emulation is active." "<br><br>This setting cannot be changed while emulation is active."
"<br><br><dolphin_emphasis>If unsure, leave this checked.</dolphin_emphasis>"); "<br><br><dolphin_emphasis>If unsure, leave this checked.</dolphin_emphasis>");
#endif #endif
static constexpr char TR_SPEEDLIMIT_DESCRIPTION[] =
QT_TR_NOOP("Controls how fast emulation runs relative to the original hardware."
"<br><br>Values higher than 100% will emulate faster than the original hardware "
"can run, if your hardware is able to keep up. Values lower than 100% will slow "
"emulation instead. Unlimited will emulate as fast as your hardware is able to."
"<br><br><dolphin_emphasis>If unsure, select 100%.</dolphin_emphasis>");
static constexpr char TR_UPDATE_TRACK_DESCRIPTION[] = QT_TR_NOOP( static constexpr char TR_UPDATE_TRACK_DESCRIPTION[] = QT_TR_NOOP(
"Selects which update track Dolphin uses when checking for updates at startup. If a new " "Selects which update track Dolphin uses when checking for updates at startup. If a new "
"update is available, Dolphin will show a list of changes made since your current version " "update is available, Dolphin will show a list of changes made since your current version "
@ -450,7 +446,6 @@ void GeneralPane::AddDescriptions()
#endif #endif
m_combobox_speedlimit->SetTitle(tr("Speed Limit")); m_combobox_speedlimit->SetTitle(tr("Speed Limit"));
m_combobox_speedlimit->SetDescription(tr(TR_SPEEDLIMIT_DESCRIPTION));
if (AutoUpdateChecker::SystemSupportsAutoUpdates()) if (AutoUpdateChecker::SystemSupportsAutoUpdates())
{ {
@ -468,3 +463,30 @@ void GeneralPane::AddDescriptions()
m_button_generate_new_identity->SetDescription(tr(TR_GENERATE_NEW_IDENTITY_DESCRIPTION)); m_button_generate_new_identity->SetDescription(tr(TR_GENERATE_NEW_IDENTITY_DESCRIPTION));
#endif #endif
} }
void GeneralPane::UpdateDescriptionsUsingHardcoreStatus()
{
const bool hardcore_enabled = AchievementManager::GetInstance().IsHardcoreModeActive();
static constexpr char TR_SPEEDLIMIT_DESCRIPTION[] =
QT_TR_NOOP("Controls how fast emulation runs relative to the original hardware."
"<br><br>Values higher than 100% will emulate faster than the original hardware "
"can run, if your hardware is able to keep up. Values lower than 100% will slow "
"emulation instead. Unlimited will emulate as fast as your hardware is able to."
"<br><br><dolphin_emphasis>If unsure, select 100%.</dolphin_emphasis>");
static constexpr char TR_SPEEDLIMIT_RESTRICTION_IN_HARDCORE_DESCRIPTION[] =
QT_TR_NOOP("<dolphin_emphasis>When Hardcore Mode is enabled, Speed Limit values less than "
"100% will be treated as 100%.</dolphin_emphasis>");
if (hardcore_enabled)
{
m_combobox_speedlimit->SetDescription(
tr("%1<br><br>%2")
.arg(tr(TR_SPEEDLIMIT_DESCRIPTION))
.arg(tr(TR_SPEEDLIMIT_RESTRICTION_IN_HARDCORE_DESCRIPTION)));
}
else
{
m_combobox_speedlimit->SetDescription(tr(TR_SPEEDLIMIT_DESCRIPTION));
}
}

View file

@ -39,6 +39,7 @@ private:
void LoadConfig(); void LoadConfig();
void OnSaveConfig(); void OnSaveConfig();
void OnEmulationStateChanged(Core::State state); void OnEmulationStateChanged(Core::State state);
void UpdateDescriptionsUsingHardcoreStatus();
// Widgets // Widgets
QVBoxLayout* m_main_layout; QVBoxLayout* m_main_layout;