From 2e760d69fed99553e436d754c1fb315b3f33ecac Mon Sep 17 00:00:00 2001 From: "XTra.KrazzY" Date: Thu, 28 Aug 2008 21:30:13 +0000 Subject: Added save/load state support in the UI git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@375 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/DolphinWX/src/Frame.cpp | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) (limited to 'Source/Core/DolphinWX/src/Frame.cpp') diff --git a/Source/Core/DolphinWX/src/Frame.cpp b/Source/Core/DolphinWX/src/Frame.cpp index c77f61009f..4f07c6d510 100644 --- a/Source/Core/DolphinWX/src/Frame.cpp +++ b/Source/Core/DolphinWX/src/Frame.cpp @@ -95,6 +95,8 @@ EVT_MENU(IDM_MEMCARD, CFrame::OnMemcard) EVT_MENU(IDM_TOGGLE_FULLSCREEN, CFrame::OnToggleFullscreen) EVT_MENU(IDM_TOGGLE_DUALCORE, CFrame::OnToggleDualCore) EVT_MENU(IDM_TOGGLE_TOOLBAR, CFrame::OnToggleToolbar) +EVT_MENU(IDM_LOADSTATE, CFrame::OnLoadState) +EVT_MENU(IDM_SAVESTATE, CFrame::OnSaveState) EVT_HOST_COMMAND(wxID_ANY, CFrame::OnHostMessage) END_EVENT_TABLE() @@ -174,11 +176,13 @@ void CFrame::CreateMenu() m_pMenuItemStop = new wxMenuItem(fileMenu, IDM_STOP, _T("&Stop")); fileMenu->Append(m_pMenuItemStop); - /*fileMenu->AppendSeparator(); - wxMenuItem* LoadState = fileMenu->Append(IDM_LOADSTATE, _T("&Load State...")); - LoadState->Enable(false); - wxMenuItem* SaveState = fileMenu->Append(IDM_SAVESTATE, _T("&Save State...")); - SaveState->Enable(false);*/ + fileMenu->AppendSeparator(); + m_pMenuItemLoad = new wxMenuItem(fileMenu, IDM_LOADSTATE, _T("&Load State... (AKA Russian Roulette)")); + fileMenu->Append(m_pMenuItemLoad); + m_pMenuItemLoad->Enable(false); + m_pMenuItemSave = new wxMenuItem(fileMenu, IDM_SAVESTATE, _T("Sa&ve State... (Use at your own risk)")); + fileMenu->Append(m_pMenuItemSave); + m_pMenuItemSave->Enable(false); fileMenu->AppendSeparator(); fileMenu->Append(wxID_EXIT, _T("E&xit"), _T("")); @@ -496,6 +500,16 @@ void CFrame::OnToggleDualCore(wxCommandEvent& WXUNUSED (event)) SConfig::GetInstance().SaveSettings(); } +void CFrame::OnLoadState(wxCommandEvent& WXUNUSED (event)) +{ + Core::LoadState(); +} + +void CFrame::OnSaveState(wxCommandEvent& WXUNUSED (event)) +{ + Core::SaveState(); +} + void CFrame::OnToggleToolbar(wxCommandEvent& event) { wxToolBarBase* toolBar = GetToolBar(); @@ -539,6 +553,8 @@ void CFrame::UpdateGUI() m_pMenuItemPlay->Enable(false); m_pMenuItemStop->Enable(false); + m_pMenuItemLoad->Enable(false); + m_pMenuItemSave->Enable(false); } else { @@ -550,6 +566,8 @@ void CFrame::UpdateGUI() m_pMenuItemPlay->Enable(true); m_pMenuItemStop->Enable(true); + m_pMenuItemLoad->Enable(true); + m_pMenuItemSave->Enable(true); if (Core::GetState() == Core::CORE_RUN) { -- cgit v1.2.3