Fix an issue that caused the DSP-LLE window to be openned twice in windows. (Thanks shuffle2).

Fix an issue that prevented the code window settings from taking effect on application start.  (Thanks shuffle2, skid_au, and sanchez).
Fix a potential segmentation fault with the DSP-LLE debugger window.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5988 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Glenn Rice
2010-07-28 15:22:27 +00:00
parent a122a4dc2c
commit 71d4ece44e
8 changed files with 117 additions and 163 deletions
@@ -560,7 +560,6 @@ void CCodeWindow::ToggleDLLWindow(int Id, bool bShow)
if (Win)
{
Parent->DoRemovePage(Win, false);
Win->Close();
Win->Destroy();
}
}
+2 -2
View File
@@ -365,8 +365,9 @@ CFrame::CFrame(wxFrame* parent,
if (UseDebugger)
{
g_pCodeWindow = new CCodeWindow(SConfig::GetInstance().m_LocalCoreStartupParameter, this, IDM_CODEWINDOW);
g_pCodeWindow->Hide();
LoadIniPerspectives();
g_pCodeWindow->Load();
g_pCodeWindow->Hide();
}
// Create timer
@@ -446,7 +447,6 @@ CFrame::CFrame(wxFrame* parent,
if (g_pCodeWindow)
{
// Load perspective
LoadIniPerspectives();
DoLoadPerspective();
}
else
+1 -3
View File
@@ -145,7 +145,7 @@ class CFrame : public CRenderFrame
// Utility
wxWindow * GetNotebookPageFromId(wxWindowID Id);
wxAuiNotebook * GetNotebookFromId(u32);
wxAuiNotebook * GetNotebookFromId(size_t NBId);
int GetNotebookCount();
wxString GetMenuLabel(int Id);
@@ -159,8 +159,6 @@ class CFrame : public CRenderFrame
void OnTab(wxAuiNotebookEvent& event);
int GetNotebookAffiliation(wxWindowID Id);
void ClosePages();
void ShowAllNotebooks(bool Window = false);
void HideAllNotebooks(bool Window = false);
void CloseAllNotebooks();
void DoAddPage(wxWindow *Win, int i, bool Float);
void DoRemovePage(wxWindow *, bool bHide = true);
File diff suppressed because it is too large Load Diff
-6
View File
@@ -413,12 +413,6 @@ void CLogWindow::OnOptionsCheck(wxCommandEvent& event)
m_LogManager->removeListener((LogTypes::LOG_TYPE)i, m_console);
}
}
/*
if (m_writeConsole && !m_console->IsOpen())
wxGetApp().GetCFrame()->ToggleConsole(true);
else if (!m_writeConsole && m_console->IsOpen())
wxGetApp().GetCFrame()->ToggleConsole(false);
*/
break;
}
SaveSettings();
@@ -32,6 +32,8 @@
void Host_NotifyMapLoaded() {}
void Host_UpdateBreakPointView() {}
DSPDebuggerLLE* m_DebuggerFrame = NULL;
BEGIN_EVENT_TABLE(DSPDebuggerLLE, wxPanel)
EVT_CLOSE(DSPDebuggerLLE::OnClose)
EVT_MENU_RANGE(ID_RUNTOOL, ID_STEPTOOL, DSPDebuggerLLE::OnChangeState)
@@ -109,18 +111,17 @@ DSPDebuggerLLE::DSPDebuggerLLE(wxWindow* parent)
UpdateState();
m_mgr.Update();
Show();
}
DSPDebuggerLLE::~DSPDebuggerLLE()
{
m_mgr.UnInit();
m_DebuggerFrame = NULL;
}
void DSPDebuggerLLE::OnClose(wxCloseEvent& event)
{
Hide();
event.Skip();
}
void DSPDebuggerLLE::OnChangeState(wxCommandEvent& event)
@@ -176,12 +177,15 @@ void DSPDebuggerLLE::FocusOnPC()
void DSPDebuggerLLE::UpdateState()
{
if (DSPCore_GetState() == DSPCORE_RUNNING) {
if (DSPCore_GetState() == DSPCORE_RUNNING)
{
m_Toolbar->SetToolLabel(ID_RUNTOOL, wxT("Pause"));
m_Toolbar->SetToolBitmap(ID_RUNTOOL,
wxArtProvider::GetBitmap(wxART_TICK_MARK, wxART_OTHER, wxSize(10,10)));
m_Toolbar->EnableTool(ID_STEPTOOL, false);
} else {
}
else
{
m_Toolbar->SetToolLabel(ID_RUNTOOL, wxT("Run"));
m_Toolbar->SetToolBitmap(ID_RUNTOOL,
wxArtProvider::GetBitmap(wxART_GO_FORWARD, wxART_OTHER, wxSize(10,10)));
@@ -102,4 +102,6 @@ private:
void UnselectAll();
};
extern DSPDebuggerLLE* m_DebuggerFrame;
#endif //_DSP_DEBUGGER_LLE_H
@@ -41,7 +41,6 @@
#include "DSPConfigDlgLLE.h"
DSPConfigDialogLLE* m_ConfigFrame = NULL;
#include "Debugger/DSPDebugWindow.h"
DSPDebuggerLLE* m_DebuggerFrame = NULL;
#endif
PLUGIN_GLOBALS* globals = NULL;