Qt/hotkeys: do not show the debugging tab if the debugger is disabled

This commit is contained in:
aldelaro5 2018-05-13 18:12:31 -04:00
parent 2c861e75f5
commit 0a2357f044
No known key found for this signature in database
GPG Key ID: 054DD3E6FF48DB71
3 changed files with 41 additions and 24 deletions

View File

@ -289,7 +289,18 @@ void MappingWindow::SetMappingType(MappingWindow::Type type)
widget = new HotkeyGeneral(this);
AddWidget(tr("General"), widget);
AddWidget(tr("TAS Tools"), new HotkeyTAS(this));
AddWidget(tr("Debugging"), new HotkeyDebugging(this));
HotkeyDebugging* debugging_widget = new HotkeyDebugging(this);
QWidget* debugging_widget_wrapper = GetWrappedWidget(debugging_widget, this, 150, 150);
connect(&Settings::Instance(), &Settings::DebugModeToggled, this, [=](bool enabled) {
if (enabled)
m_tab_widget->insertTab(2, debugging_widget_wrapper, tr("Debugging"));
else
m_tab_widget->removeTab(2);
});
if (Settings::Instance().IsDebugModeEnabled())
AddWidget(tr("Debugging"), debugging_widget);
AddWidget(tr("Wii and Wii Remote"), new HotkeyWii(this));
AddWidget(tr("Graphics"), new HotkeyGraphics(this));
AddWidget(tr("3D"), new Hotkey3D(this));

View File

@ -215,29 +215,7 @@ void HotkeyScheduler::Run()
if (SConfig::GetInstance().bEnableDebugging)
{
if (IsHotkey(HK_STEP))
emit Step();
if (IsHotkey(HK_STEP_OVER))
emit StepOver();
if (IsHotkey(HK_STEP_OUT))
emit StepOut();
if (IsHotkey(HK_SKIP))
emit Skip();
if (IsHotkey(HK_SHOW_PC))
emit ShowPC();
if (IsHotkey(HK_SET_PC))
emit Skip();
if (IsHotkey(HK_BP_TOGGLE))
emit ToggleBreakpoint();
if (IsHotkey(HK_BP_ADD))
emit AddBreakpoint();
CheckDebuggingHotkeys();
}
// TODO: HK_MBP_ADD
@ -471,3 +449,30 @@ void HotkeyScheduler::Run()
State::UndoSaveState();
}
}
void HotkeyScheduler::CheckDebuggingHotkeys()
{
if (IsHotkey(HK_STEP))
emit Step();
if (IsHotkey(HK_STEP_OVER))
emit StepOver();
if (IsHotkey(HK_STEP_OUT))
emit StepOut();
if (IsHotkey(HK_SKIP))
emit Skip();
if (IsHotkey(HK_SHOW_PC))
emit ShowPC();
if (IsHotkey(HK_SET_PC))
emit Skip();
if (IsHotkey(HK_BP_TOGGLE))
emit ToggleBreakpoint();
if (IsHotkey(HK_BP_ADD))
emit AddBreakpoint();
}

View File

@ -51,6 +51,7 @@ signals:
private:
void Run();
void CheckDebuggingHotkeys();
Common::Flag m_stop_requested;
std::thread m_thread;