mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-03-12 14:46:49 +01:00
WX: Automatically pause the core for the JIT menu items
Removes the need to manually pause the core, select the menu item and then unpause.
This commit is contained in:
parent
f777c01c5d
commit
23ae756192
@ -480,6 +480,7 @@ void CCodeWindow::UpdateCallstack()
|
|||||||
// CPU Mode and JIT Menu
|
// CPU Mode and JIT Menu
|
||||||
void CCodeWindow::OnCPUMode(wxCommandEvent& event)
|
void CCodeWindow::OnCPUMode(wxCommandEvent& event)
|
||||||
{
|
{
|
||||||
|
Core::RunAsCPUThread([&event] {
|
||||||
switch (event.GetId())
|
switch (event.GetId())
|
||||||
{
|
{
|
||||||
case IDM_INTERPRETER:
|
case IDM_INTERPRETER:
|
||||||
@ -522,6 +523,7 @@ void CCodeWindow::OnCPUMode(wxCommandEvent& event)
|
|||||||
|
|
||||||
// Clear the JIT cache to enable these changes
|
// Clear the JIT cache to enable these changes
|
||||||
JitInterface::ClearCache();
|
JitInterface::ClearCache();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void CCodeWindow::OnJitMenu(wxCommandEvent& event)
|
void CCodeWindow::OnJitMenu(wxCommandEvent& event)
|
||||||
@ -533,7 +535,7 @@ void CCodeWindow::OnJitMenu(wxCommandEvent& event)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case IDM_CLEAR_CODE_CACHE:
|
case IDM_CLEAR_CODE_CACHE:
|
||||||
JitInterface::ClearCache();
|
Core::RunAsCPUThread(JitInterface::ClearCache);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case IDM_SEARCH_INSTRUCTION:
|
case IDM_SEARCH_INSTRUCTION:
|
||||||
|
@ -237,18 +237,18 @@ void CFrame::BindDebuggerMenuBarUpdateEvents()
|
|||||||
|
|
||||||
Bind(wxEVT_UPDATE_UI, &CFrame::OnUpdateInterpreterMenuItem, this, IDM_INTERPRETER);
|
Bind(wxEVT_UPDATE_UI, &CFrame::OnUpdateInterpreterMenuItem, this, IDM_INTERPRETER);
|
||||||
|
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_LS_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_LS_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_LSLXZ_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_LSLXZ_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_LSLWZ_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_LSLWZ_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_LSLBZX_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_LSLBZX_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_LSF_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_LSF_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_LSP_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_LSP_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_FP_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_FP_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_I_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_I_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_P_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_P_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_JIT_SR_OFF);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_JIT_SR_OFF);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCorePaused, IDM_CLEAR_CODE_CACHE);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreRunning, IDM_CLEAR_CODE_CACHE);
|
||||||
|
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreInitialized, IDM_SEARCH_INSTRUCTION);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreInitialized, IDM_SEARCH_INSTRUCTION);
|
||||||
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreInitialized, IDM_CLEAR_SYMBOLS);
|
Bind(wxEVT_UPDATE_UI, &WxEventUtils::OnEnableIfCoreInitialized, IDM_CLEAR_SYMBOLS);
|
||||||
@ -1111,7 +1111,7 @@ void CFrame::OnRescanGameList(wxCommandEvent& WXUNUSED(event))
|
|||||||
|
|
||||||
void CFrame::OnUpdateInterpreterMenuItem(wxUpdateUIEvent& event)
|
void CFrame::OnUpdateInterpreterMenuItem(wxUpdateUIEvent& event)
|
||||||
{
|
{
|
||||||
WxEventUtils::OnEnableIfCorePaused(event);
|
WxEventUtils::OnEnableIfCoreRunning(event);
|
||||||
|
|
||||||
if (GetMenuBar()->FindItem(IDM_INTERPRETER)->IsChecked())
|
if (GetMenuBar()->FindItem(IDM_INTERPRETER)->IsChecked())
|
||||||
return;
|
return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user