aboutsummaryrefslogtreecommitdiff
path: root/src/base_tab/BaseTab.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/base_tab/BaseTab.cpp')
-rw-r--r--src/base_tab/BaseTab.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/base_tab/BaseTab.cpp b/src/base_tab/BaseTab.cpp
index fd94ef8..730db84 100644
--- a/src/base_tab/BaseTab.cpp
+++ b/src/base_tab/BaseTab.cpp
@@ -24,10 +24,6 @@ BaseTab::BaseTab(wxFrame *parent, std::string base_file)
LoadFile();
}
-BaseTab::~BaseTab() {
- delete base;
-}
-
void BaseTab::OnImport(wxCommandEvent &event) {
AppendGameDialog *dia = new AppendGameDialog(this, base);
dia->ShowModal();
@@ -53,7 +49,7 @@ void BaseTab::OnDelete(wxCommandEvent &event) {
}
void BaseTab::OnSave(wxCommandEvent &event) {
- std::vector<GameBase *> new_games_bases;
+ std::vector<std::shared_ptr<GameBase>> new_games_bases;
std::vector<std::shared_ptr<Game>> new_games;
new_games.insert(
new_games.end(), edited.begin(),
@@ -67,7 +63,7 @@ void BaseTab::OnSave(wxCommandEvent &event) {
void BaseTab::OnOpenGame(wxListEvent &event) {
wxLogDebug("Open!");
long id = std::stoi(event.GetItem().GetText().ToStdString());
- std::shared_ptr<Game> *g =new std::shared_ptr<Game>(base->GetGame(id));
+ std::shared_ptr<Game> *g = new std::shared_ptr<Game>(base->GetGame(id));
if (g != NULL) {
edited.push_back(*g);
deleted.push_back(id);
@@ -102,7 +98,7 @@ void BaseTab::LoadFile() {
wxFileName file(base_file);
wxString ext = file.GetExt().Lower();
if (ext == "pgn") {
- base = new PGNGameBase(base_file);
+ base = std::shared_ptr<GameBase>(new PGNGameBase(base_file));
SetLabel(file.GetName() + "(PGN)");
}