summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2013-08-14 17:50:21 -0400
committerJasper St. Pierre <jstpierre@mecheye.net>2013-08-14 18:16:05 -0400
commit5241deaebe2d4b83cb9e00a86d847b5645b6ff0d (patch)
treed8bf9788af2d6a3b473f1820ac6c31a46225a341 /Source/Core
parent92f8d795749e4284de2ce4219e5f6a729a12bdfa (diff)
NetPlay: Allow hosts to stop the game by closing the game window
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/DolphinWX/Src/FrameTools.cpp1
-rw-r--r--Source/Core/DolphinWX/Src/NetWindow.cpp10
-rw-r--r--Source/Core/DolphinWX/Src/NetWindow.h5
3 files changed, 15 insertions, 1 deletions
diff --git a/Source/Core/DolphinWX/Src/FrameTools.cpp b/Source/Core/DolphinWX/Src/FrameTools.cpp
index 30d5cd7bb3..8a7e3bf1e3 100644
--- a/Source/Core/DolphinWX/Src/FrameTools.cpp
+++ b/Source/Core/DolphinWX/Src/FrameTools.cpp
@@ -1049,6 +1049,7 @@ void CFrame::DoStop()
DoRecordingSave();
if(Movie::IsPlayingInput() || Movie::IsRecordingInput())
Movie::EndPlayInput(false);
+ NetPlay::StopGame();
wxBeginBusyCursor();
BootManager::Stop();
diff --git a/Source/Core/DolphinWX/Src/NetWindow.cpp b/Source/Core/DolphinWX/Src/NetWindow.cpp
index 064e852028..2a545df611 100644
--- a/Source/Core/DolphinWX/Src/NetWindow.cpp
+++ b/Source/Core/DolphinWX/Src/NetWindow.cpp
@@ -432,7 +432,7 @@ void NetPlayDiag::OnStart(wxCommandEvent&)
void NetPlayDiag::OnStop(wxCommandEvent&)
{
- netplay_server->StopGame();
+ NetPlay::StopGame();
}
void NetPlayDiag::BootGame(const std::string& filename)
@@ -661,3 +661,11 @@ void PadMapDiag::OnAdjust(wxCommandEvent& event)
for (unsigned int i=0; i<4; ++i)
m_mapping[i] = m_map_cbox[i]->GetSelection() - 1;
}
+
+void NetPlay::StopGame()
+{
+ if (netplay_server != NULL)
+ netplay_server->StopGame();
+
+ // TODO: allow non-hosting clients to close the window
+}
diff --git a/Source/Core/DolphinWX/Src/NetWindow.h b/Source/Core/DolphinWX/Src/NetWindow.h
index e798033eab..350cde7faf 100644
--- a/Source/Core/DolphinWX/Src/NetWindow.h
+++ b/Source/Core/DolphinWX/Src/NetWindow.h
@@ -133,5 +133,10 @@ private:
int* const m_mapping;
};
+namespace NetPlay
+{
+ void StopGame();
+}
+
#endif // _NETWINDOW_H_