From 83dc3bf210138d02dbebb74e634cb1ebfa4f8ccc Mon Sep 17 00:00:00 2001 From: Glenn Rice Date: Fri, 18 Feb 2011 20:03:01 +0000 Subject: [PATCH] Make the log config dialog modeless. Eventually I will make this a dockable window. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7193 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/DolphinWX/Src/Frame.cpp | 9 ++++----- Source/Core/DolphinWX/Src/FrameTools.cpp | 5 ++--- Source/Core/DolphinWX/Src/LogConfigDiag.cpp | 13 +++++-------- Source/Core/DolphinWX/Src/LogConfigDiag.h | 1 + Source/Core/DolphinWX/Src/LogWindow.h | 6 ------ 5 files changed, 12 insertions(+), 22 deletions(-) diff --git a/Source/Core/DolphinWX/Src/Frame.cpp b/Source/Core/DolphinWX/Src/Frame.cpp index b5dd3d29bb..f5bc6aa98c 100644 --- a/Source/Core/DolphinWX/Src/Frame.cpp +++ b/Source/Core/DolphinWX/Src/Frame.cpp @@ -197,6 +197,10 @@ CRenderFrame::CRenderFrame(wxFrame* parent, wxWindowID id, const wxString& title const wxPoint& pos, const wxSize& size, long style) : wxFrame(parent, id, title, pos, size, style) { + // Give it an icon + wxIcon IconTemp; + IconTemp.CopyFromBitmap(wxGetBitmapFromMemory(dolphin_ico32x32)); + SetIcon(IconTemp); } #ifdef _WIN32 @@ -375,11 +379,6 @@ CFrame::CFrame(wxFrame* parent, // Create toolbar bitmaps InitBitmaps(); - // Give it an icon - wxIcon IconTemp; - IconTemp.CopyFromBitmap(wxGetBitmapFromMemory(dolphin_ico32x32)); - SetIcon(IconTemp); - // Give it a status bar SetStatusBar(CreateStatusBar(2, wxST_SIZEGRIP, ID_STATUSBAR)); if (!SConfig::GetInstance().m_InterfaceStatusbar) diff --git a/Source/Core/DolphinWX/Src/FrameTools.cpp b/Source/Core/DolphinWX/Src/FrameTools.cpp index 8ca91deefc..0f51296fd7 100644 --- a/Source/Core/DolphinWX/Src/FrameTools.cpp +++ b/Source/Core/DolphinWX/Src/FrameTools.cpp @@ -1231,9 +1231,8 @@ void CFrame::OnConfigHotkey(wxCommandEvent& WXUNUSED (event)) void CFrame::OnConfigLogger(wxCommandEvent& WXUNUSED (event)) { - LogConfigDiag m_LogConfigDiag(this, m_LogWindow); - m_LogConfigDiag.ShowModal(); - m_LogConfigDiag.Destroy(); + LogConfigDiag *m_LogConfigDiag = new LogConfigDiag(this, m_LogWindow); + m_LogConfigDiag->Show(); } void CFrame::OnHelp(wxCommandEvent& event) diff --git a/Source/Core/DolphinWX/Src/LogConfigDiag.cpp b/Source/Core/DolphinWX/Src/LogConfigDiag.cpp index 4d6a73e15d..acec27da35 100644 --- a/Source/Core/DolphinWX/Src/LogConfigDiag.cpp +++ b/Source/Core/DolphinWX/Src/LogConfigDiag.cpp @@ -22,11 +22,11 @@ #include "FileUtil.h" #define _connect_macro_(b, f, c, s) \ - (b)->Connect(wxID_ANY, (c), wxCommandEventHandler( f ), (wxObject*)0, (wxEvtHandler*)s) + (b)->Connect(wxID_ANY, (c), wxCommandEventHandler(f), (wxObject*)0, (wxEvtHandler*)s) LogConfigDiag::LogConfigDiag(wxWindow* parent, CLogWindow *log_window) : wxDialog(parent, wxID_ANY, _("Logger Configuration"), wxDefaultPosition, wxDefaultSize) - , m_LogWindow(log_window) + , m_LogWindow(log_window), enableAll(true) { Connect(wxID_ANY, wxEVT_CLOSE_WINDOW, wxCloseEventHandler(LogConfigDiag::OnClose), (wxObject*)0, this); m_LogManager = LogManager::GetInstance(); @@ -121,6 +121,7 @@ void LogConfigDiag::LoadSettings() { bool log_enabled; ini.Get("Logs", m_LogManager->getShortName((LogTypes::LOG_TYPE)i), &log_enabled, true); + if (log_enabled) enableAll=false; m_checks->Check(i, log_enabled); } } @@ -194,11 +195,9 @@ void LogConfigDiag::OnWriteWindowChecked(wxCommandEvent& event) void LogConfigDiag::OnToggleAll(wxCommandEvent& WXUNUSED(event)) { - static bool enableAll = false; for (int i = 0; i < LogTypes::NUMBER_OF_LOGS; ++i) ToggleLog(i, enableAll); - SaveSettings(); enableAll = !enableAll; } @@ -231,8 +230,6 @@ void LogConfigDiag::OnLogCheck(wxCommandEvent& event) { int i = event.GetInt(); ToggleLog(i, m_checks->IsChecked(i)); - - SaveSettings(); } void LogConfigDiag::OnClickClose(wxCommandEvent& WXUNUSED(event)) @@ -240,8 +237,8 @@ void LogConfigDiag::OnClickClose(wxCommandEvent& WXUNUSED(event)) Close(); } -void LogConfigDiag::OnClose(wxCloseEvent& WXUNUSED(event)) +void LogConfigDiag::OnClose(wxCloseEvent& event) { SaveSettings(); - EndModal(wxID_CLOSE); + event.Skip(); } diff --git a/Source/Core/DolphinWX/Src/LogConfigDiag.h b/Source/Core/DolphinWX/Src/LogConfigDiag.h index c0aa9a882d..0baeac196d 100644 --- a/Source/Core/DolphinWX/Src/LogConfigDiag.h +++ b/Source/Core/DolphinWX/Src/LogConfigDiag.h @@ -37,6 +37,7 @@ private: LogManager *m_LogManager; CLogWindow *m_LogWindow; bool m_writeFile, m_writeConsole, m_writeWindow; + bool enableAll; // Controls wxCheckBox *m_writeFileCB, *m_writeConsoleCB, *m_writeWindowCB; diff --git a/Source/Core/DolphinWX/Src/LogWindow.h b/Source/Core/DolphinWX/Src/LogWindow.h index 78e9db0ea5..55fcc37f0c 100644 --- a/Source/Core/DolphinWX/Src/LogWindow.h +++ b/Source/Core/DolphinWX/Src/LogWindow.h @@ -27,15 +27,9 @@ enum { IDM_LOG, IDM_CLEARLOG, - IDM_LOGCHECKS, - IDM_OPTIONS, IDM_TOGGLEALL, IDM_WRAPLINE, - IDM_WRITEFILE, - IDM_WRITECONSOLE, - IDM_WRITEWINDOW, IDTM_UPDATELOG, - IDM_VERBOSITY, IDM_FONT, IDM_SUBMITCMD };