aboutsummaryrefslogtreecommitdiff
path: root/src/base_tab/BaseTab.cpp
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2022-12-27 17:35:17 +0100
committerLoic Guegan <manzerbredes@mailbox.org>2022-12-27 17:35:17 +0100
commit53090ab2a300c413257ae9aa8b5b6592a029c9b7 (patch)
treecaa5194fed4a0dbec90b5f3cd94b7683b679e093 /src/base_tab/BaseTab.cpp
parentd6e8d80a8f921d12562ad39b0a4bde0d34036448 (diff)
Cleaning code
Diffstat (limited to 'src/base_tab/BaseTab.cpp')
-rw-r--r--src/base_tab/BaseTab.cpp28
1 files changed, 14 insertions, 14 deletions
diff --git a/src/base_tab/BaseTab.cpp b/src/base_tab/BaseTab.cpp
index 6866da1..fada2b2 100644
--- a/src/base_tab/BaseTab.cpp
+++ b/src/base_tab/BaseTab.cpp
@@ -8,8 +8,7 @@ BaseTab::BaseTab(wxFrame *parent, std::string base_file)
base=OpenDatabase(base_file);
// Games tab
- games_tab=new BaseGameTab((wxFrame *)notebook,base,this);
- glm=games_tab->glm;
+ games_tab=new BaseGameTab((wxFrame *)notebook,base);
notebook->AddPage(games_tab, "Games list",true); // true for selecting the tab
// Import tab
import_tab=new BaseImportTab((wxFrame *)notebook,base,this);
@@ -22,21 +21,22 @@ BaseTab::BaseTab(wxFrame *parent, std::string base_file)
Refresh();
// Bindings
- this->Bind(OPEN_GAME_EVENT, &BaseTab::OnOpenGame, this, wxID_ANY);
this->Bind(wxEVT_BUTTON, &BaseTab::OnSave, this, ID_SAVE_BUTTON);
+ this->Bind(wxEVT_LIST_ITEM_ACTIVATED, &BaseTab::OnOpenGame, this, ID_TABGAMES_GAME_LIST);
}
-
-void BaseTab::OnOpenGame(wxCommandEvent &event){
- std::shared_ptr<Game> *g = (std::shared_ptr<Game>*)event.GetClientData();
- this->game=*g;
-
- // Ask MainFrame to open a new game
- // TODO: Simplify that is, use wxWidget main app to do it
- wxCommandEvent newGameEvent(NEW_GAME_EVENT, GetId());
- newGameEvent.SetEventObject(this);
- newGameEvent.SetClientData((TabInfos*)this);
- ProcessEvent(newGameEvent);
+void BaseTab::OnOpenGame(wxListEvent &event){
+ long gameid=std::stol(event.GetItem().GetText().ToStdString());
+ std::shared_ptr<Game> g = games_tab->OpenGame(gameid,event.GetIndex());
+ if(g){
+ game=g;
+ // Ask MainFrame to open a new game
+ // TODO: Simplify that is, use wxWidget main app to do it
+ wxCommandEvent newGameEvent(NEW_GAME_EVENT, GetId());
+ newGameEvent.SetEventObject(this);
+ newGameEvent.SetClientData((TabInfos*)this);
+ ProcessEvent(newGameEvent);
+ }
}
void BaseTab::Refresh(){