diff options
Diffstat (limited to 'src/base_tab/gamebase/GameBase.cpp')
| -rw-r--r-- | src/base_tab/gamebase/GameBase.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/base_tab/gamebase/GameBase.cpp b/src/base_tab/gamebase/GameBase.cpp index 3d7b5d3..a5710df 100644 --- a/src/base_tab/gamebase/GameBase.cpp +++ b/src/base_tab/gamebase/GameBase.cpp @@ -16,4 +16,20 @@ std::shared_ptr<GameBase> OpenDatabase(const std::string &dbpath, bool createIfN std::shared_ptr<Game> OpenGameX(const std::string &dbpath, long id){ std::shared_ptr<GameBase> base=OpenDatabase(dbpath); return base->GetGame(id); +} + +void SaveGame(const std::string &dbpath, std::shared_ptr<Game> g){ + wxFileName file(dbpath); + wxString ext = file.GetExt().Lower(); + // Create data structure + std::vector<std::shared_ptr<Game>> new_games; + new_games.push_back(g); + std::vector<std::string> dummy_empty_bases; + std::vector<std::uint32_t> dummy_empty_ignores; + // Save the game + if (ext == "pgn") { + PGNGameBase::CreateDatabaseFile(dbpath); // Erase if exist + GameBase *b=new PGNGameBase(dbpath); + b->Save(dummy_empty_ignores,dummy_empty_bases, new_games); + } }
\ No newline at end of file |
