ChangeGameDialog: Internally set the chosen game name

Passing in a reference to an empty string is unnecessary and
overcomplicates design.
This commit is contained in:
Lioncash 2015-08-16 01:08:51 -04:00
parent af35f38491
commit ca0b9481ea
3 changed files with 18 additions and 14 deletions

View File

@ -9,9 +9,8 @@
#include "DolphinWX/NetPlay/ChangeGameDialog.h" #include "DolphinWX/NetPlay/ChangeGameDialog.h"
#include "DolphinWX/NetPlay/NetWindow.h" #include "DolphinWX/NetPlay/NetWindow.h"
ChangeGameDialog::ChangeGameDialog(wxWindow* parent, const CGameListCtrl* const game_list, wxString& game_name) ChangeGameDialog::ChangeGameDialog(wxWindow* parent, const CGameListCtrl* const game_list)
: wxDialog(parent, wxID_ANY, _("Change Game")) : wxDialog(parent, wxID_ANY, _("Change Game"))
, m_game_name(game_name)
{ {
m_game_lbox = new wxListBox(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, nullptr, wxLB_SORT); m_game_lbox = new wxListBox(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, nullptr, wxLB_SORT);
m_game_lbox->Bind(wxEVT_LISTBOX_DCLICK, &ChangeGameDialog::OnPick, this); m_game_lbox->Bind(wxEVT_LISTBOX_DCLICK, &ChangeGameDialog::OnPick, this);
@ -29,9 +28,13 @@ ChangeGameDialog::ChangeGameDialog(wxWindow* parent, const CGameListCtrl* const
SetFocus(); SetFocus();
} }
wxString ChangeGameDialog::GetChosenGameName() const
{
return m_game_name;
}
void ChangeGameDialog::OnPick(wxCommandEvent& event) void ChangeGameDialog::OnPick(wxCommandEvent& event)
{ {
// return the selected game name
m_game_name = m_game_lbox->GetStringSelection(); m_game_name = m_game_lbox->GetStringSelection();
EndModal(wxID_OK); EndModal(wxID_OK);
} }

View File

@ -12,11 +12,13 @@ class wxListBox;
class ChangeGameDialog final : public wxDialog class ChangeGameDialog final : public wxDialog
{ {
public: public:
ChangeGameDialog(wxWindow* parent, const CGameListCtrl* const game_list, wxString& game_name); ChangeGameDialog(wxWindow* parent, const CGameListCtrl* const game_list);
wxString GetChosenGameName() const;
private: private:
void OnPick(wxCommandEvent& event); void OnPick(wxCommandEvent& event);
wxListBox* m_game_lbox; wxListBox* m_game_lbox;
wxString& m_game_name; wxString m_game_name;
}; };

View File

@ -445,18 +445,17 @@ void NetPlayDialog::OnThread(wxThreadEvent& event)
void NetPlayDialog::OnChangeGame(wxCommandEvent&) void NetPlayDialog::OnChangeGame(wxCommandEvent&)
{ {
wxString game_name; ChangeGameDialog cgd(this, m_game_list);
ChangeGameDialog cgd(this, m_game_list, game_name);
cgd.ShowModal(); cgd.ShowModal();
if (game_name.length()) wxString game_name = cgd.GetChosenGameName();
{ if (game_name.empty())
return;
m_selected_game = WxStrToStr(game_name); m_selected_game = WxStrToStr(game_name);
netplay_server->ChangeGame(m_selected_game); netplay_server->ChangeGame(m_selected_game);
m_game_btn->SetLabel(game_name.Prepend(_(" Game : "))); m_game_btn->SetLabel(game_name.Prepend(_(" Game : ")));
} }
}
void NetPlayDialog::OnConfigPads(wxCommandEvent&) void NetPlayDialog::OnConfigPads(wxCommandEvent&)
{ {