summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorfires.gc <fires.gc@gmail.com>2008-11-05 22:58:26 +0000
committerfires.gc <fires.gc@gmail.com>2008-11-05 22:58:26 +0000
commit135b6e1eb83ceb47b1436edede57115696193f0d (patch)
tree2cea7d624b7ddd97e489320e9ab4c1fa8466f81e /Source/Core
parent46c284f7a910c02883f03cad3d8806843710564a (diff)
added close event so application got shutdown correctly
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1083 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/DolphinWX/Src/Frame.cpp13
-rw-r--r--Source/Core/DolphinWX/Src/Frame.h1
2 files changed, 11 insertions, 3 deletions
diff --git a/Source/Core/DolphinWX/Src/Frame.cpp b/Source/Core/DolphinWX/Src/Frame.cpp
index c82b3199f0..1a452446af 100644
--- a/Source/Core/DolphinWX/Src/Frame.cpp
+++ b/Source/Core/DolphinWX/Src/Frame.cpp
@@ -80,6 +80,7 @@ static const long TOOLBAR_STYLE = wxTB_FLAT | wxTB_DOCKABLE | wxTB_TEXT;
const wxEventType wxEVT_HOST_COMMAND = wxNewEventType();
BEGIN_EVENT_TABLE(CFrame, wxFrame)
+EVT_CLOSE(CFrame::OnClose)
EVT_MENU(wxID_OPEN, CFrame::OnOpen)
EVT_MENU(wxID_EXIT, CFrame::OnQuit)
EVT_MENU(IDM_HELPWEBSITE, CFrame::OnHelp)
@@ -367,16 +368,22 @@ void CFrame::OnOpen(wxCommandEvent& WXUNUSED (event))
void CFrame::OnQuit(wxCommandEvent& WXUNUSED (event))
{
+ Close(true);
+}
+
+
+void CFrame::OnClose(wxCloseEvent& event)
+{
+ // Don't forget the skip of the window won't be destroyed
+ event.Skip();
+
if (Core::GetState() != Core::CORE_UNINITIALIZED)
{
Core::Stop();
UpdateGUI();
}
-
- Close(true);
}
-
void CFrame::OnHelp(wxCommandEvent& event)
{
switch (event.GetId())
diff --git a/Source/Core/DolphinWX/Src/Frame.h b/Source/Core/DolphinWX/Src/Frame.h
index d2d300ede2..868feba5dc 100644
--- a/Source/Core/DolphinWX/Src/Frame.h
+++ b/Source/Core/DolphinWX/Src/Frame.h
@@ -80,6 +80,7 @@ class CFrame : public wxFrame
void OnHostMessage(wxCommandEvent& event);
void OnLoadState(wxCommandEvent& event);
void OnSaveState(wxCommandEvent& event);
+ void OnClose(wxCloseEvent &event);
wxStatusBar* m_pStatusBar;