@@ -38,21 +38,19 @@ class RevealMoveDialog final : public wxDialog {
3838 GamePlayer player;
3939 wxCheckBox *checkbox;
4040 };
41- GameDocument *m_doc{nullptr };
4241 std::vector<PlayerEntry> m_entries;
4342
4443 void OnCheckbox (wxCommandEvent &) { UpdateButtonState (); }
4544 void UpdateButtonState ();
4645
4746public:
48- RevealMoveDialog (wxWindow *p_parent, GameDocument *p_doc );
47+ RevealMoveDialog (wxWindow *p_parent, const Game &p_game );
4948 std::vector<GamePlayer> GetPlayers () const ;
5049};
5150
52- RevealMoveDialog::RevealMoveDialog (wxWindow *p_parent, GameDocument *p_doc )
51+ RevealMoveDialog::RevealMoveDialog (wxWindow *p_parent, const Game &p_game )
5352 : wxDialog(p_parent, wxID_ANY, _(" Reveal this move to players" ), wxDefaultPosition,
54- wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER),
55- m_doc (p_doc)
53+ wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
5654{
5755 auto *topSizer = new wxBoxSizer (wxVERTICAL);
5856
@@ -65,7 +63,7 @@ RevealMoveDialog::RevealMoveDialog(wxWindow *p_parent, GameDocument *p_doc)
6563 auto *playerBox = new wxBoxSizer (wxVERTICAL);
6664 playerBox->AddSpacer (3 );
6765
68- const auto &players = m_doc-> GetGame () ->GetPlayers ();
66+ const auto &players = p_game ->GetPlayers ();
6967 m_entries.reserve (players.size ());
7068
7169 for (const auto &player : players) {
@@ -78,7 +76,6 @@ RevealMoveDialog::RevealMoveDialog(wxWindow *p_parent, GameDocument *p_doc)
7876 }
7977 auto *cb = new wxCheckBox (this , wxID_ANY, label);
8078 cb->SetValue (true );
81- cb->SetForegroundColour (m_doc->GetStyle ().GetPlayerColor (player));
8279 cb->Bind (wxEVT_CHECKBOX, &RevealMoveDialog::OnCheckbox, this );
8380 m_entries.push_back ({player, cb});
8481 playerBox->Add (cb, wxSizerFlags ().Expand ().Border (wxLEFT | wxRIGHT | wxTOP, 4 ));
@@ -118,10 +115,9 @@ std::vector<GamePlayer> RevealMoveDialog::GetPlayers() const
118115
119116namespace Gambit ::GUI {
120117
121- std::optional<std::vector<GamePlayer>> RevealMove (wxWindow *p_parent, GameDocument *p_doc )
118+ std::optional<std::vector<GamePlayer>> RevealMove (wxWindow *p_parent, const Game &p_game )
122119{
123- RevealMoveDialog dialog (p_parent, p_doc);
124- if (dialog.ShowModal () == wxID_OK) {
120+ if (RevealMoveDialog dialog (p_parent, p_game); dialog.ShowModal () == wxID_OK) {
125121 return dialog.GetPlayers ();
126122 }
127123 return std::nullopt ;
0 commit comments