mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
GUI: Fixed some wxPostEvent endless loops
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4060 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
<VisualStudioProject
|
<VisualStudioProject
|
||||||
ProjectType="Visual C++"
|
ProjectType="Visual C++"
|
||||||
Version="9.00"
|
Version="9,00"
|
||||||
Name="Common"
|
Name="Common"
|
||||||
ProjectGUID="{C573CAF7-EE6A-458E-8049-16C0BF34C2E9}"
|
ProjectGUID="{C573CAF7-EE6A-458E-8049-16C0BF34C2E9}"
|
||||||
RootNamespace="Common"
|
RootNamespace="Common"
|
||||||
|
@ -101,6 +101,9 @@ BEGIN_EVENT_TABLE(CCodeWindow, wxPanel)
|
|||||||
// Menu bar
|
// Menu bar
|
||||||
EVT_MENU(IDM_INTERPRETER, CCodeWindow::OnCPUMode) // CPU Mode
|
EVT_MENU(IDM_INTERPRETER, CCodeWindow::OnCPUMode) // CPU Mode
|
||||||
EVT_MENU(IDM_AUTOMATICSTART, CCodeWindow::OnCPUMode)
|
EVT_MENU(IDM_AUTOMATICSTART, CCodeWindow::OnCPUMode)
|
||||||
|
EVT_MENU(IDM_BOOTTOPAUSE, CCodeWindow::OnCPUMode)
|
||||||
|
|
||||||
|
EVT_MENU(IDM_JITUNLIMITED, CCodeWindow::OnCPUMode)
|
||||||
EVT_MENU(IDM_JITOFF, CCodeWindow::OnCPUMode)
|
EVT_MENU(IDM_JITOFF, CCodeWindow::OnCPUMode)
|
||||||
EVT_MENU(IDM_JITLSOFF, CCodeWindow::OnCPUMode)
|
EVT_MENU(IDM_JITLSOFF, CCodeWindow::OnCPUMode)
|
||||||
EVT_MENU(IDM_JITLSLXZOFF, CCodeWindow::OnCPUMode)
|
EVT_MENU(IDM_JITLSLXZOFF, CCodeWindow::OnCPUMode)
|
||||||
@ -711,7 +714,6 @@ void CCodeWindow::OnCodeStep(wxCommandEvent& event)
|
|||||||
case IDM_DEBUG_GO:
|
case IDM_DEBUG_GO:
|
||||||
{
|
{
|
||||||
// [F|RES] prolly we should disable the other buttons in go mode too ...
|
// [F|RES] prolly we should disable the other buttons in go mode too ...
|
||||||
|
|
||||||
if (CCPU::IsStepping())
|
if (CCPU::IsStepping())
|
||||||
{
|
{
|
||||||
CCPU::EnableStepping(false);
|
CCPU::EnableStepping(false);
|
||||||
|
@ -81,17 +81,6 @@ class CCodeWindow
|
|||||||
|
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
// Toolbar
|
|
||||||
ID_TOOLBAR = 2000,
|
|
||||||
IDM_DEBUG_GO,
|
|
||||||
IDM_STEP,
|
|
||||||
IDM_STEPOVER,
|
|
||||||
IDM_SKIP,
|
|
||||||
IDM_SETPC,
|
|
||||||
IDM_GOTOPC,
|
|
||||||
IDM_ADDRBOX,
|
|
||||||
|
|
||||||
// ==============================================================
|
|
||||||
// Debugger GUI Objects
|
// Debugger GUI Objects
|
||||||
ID_CODEVIEW,
|
ID_CODEVIEW,
|
||||||
ID_CALLSTACKLIST,
|
ID_CALLSTACKLIST,
|
||||||
|
@ -549,8 +549,14 @@ void CFrame::OnHostMessage(wxCommandEvent& event)
|
|||||||
// Post events
|
// Post events
|
||||||
void CFrame::PostEvent(wxCommandEvent& event)
|
void CFrame::PostEvent(wxCommandEvent& event)
|
||||||
{
|
{
|
||||||
// Don't post zero events, that may hang
|
// Restrict the post events to the minimum necessary, it seems like these events are
|
||||||
if (g_pCodeWindow && event.GetId()) wxPostEvent(g_pCodeWindow, event);
|
// somtimes posted to the parent wxFrame too so that it creates and endless loop
|
||||||
|
if (g_pCodeWindow
|
||||||
|
&& event.GetId() >= IDM_INTERPRETER && event.GetId() <= IDM_ADDRBOX
|
||||||
|
&& event.GetId() != IDM_JITUNLIMITED
|
||||||
|
)
|
||||||
|
wxPostEvent(g_pCodeWindow, event);
|
||||||
|
event.Skip();
|
||||||
}
|
}
|
||||||
void CFrame::PostMenuEvent(wxMenuEvent& event)
|
void CFrame::PostMenuEvent(wxMenuEvent& event)
|
||||||
{
|
{
|
||||||
|
@ -153,7 +153,7 @@ enum
|
|||||||
// --------------------------------------------------------------
|
// --------------------------------------------------------------
|
||||||
// Debugger Toolbar
|
// Debugger Toolbar
|
||||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
ID_TOOLBAR2 = 2000,
|
ID_TOOLBAR2,
|
||||||
IDM_DEBUG_GO,
|
IDM_DEBUG_GO,
|
||||||
IDM_STEP,
|
IDM_STEP,
|
||||||
IDM_STEPOVER,
|
IDM_STEPOVER,
|
||||||
|
Reference in New Issue
Block a user