#include "gamebase/GameBase.hpp" #include "gamebase/PGNGameBase.hpp" #include "ochess.hpp" // Foreign events wxDECLARE_EVENT(NEW_GAME_EVENT, wxCommandEvent); wxDECLARE_EVENT(REFRESH_TAB_TITLE, wxCommandEvent); class BaseTab : public TabBase, public TabInfos { GameBase *base; std::vector<std::uint32_t> deleted; std::vector<std::shared_ptr<Game>> edited; std::string base_file; public: BaseTab(wxFrame *parent, std::string base_file); ~BaseTab(); void ApplyPreferences(); void LoadFile(); void OnDelete(wxCommandEvent &event); void OnSave(wxCommandEvent &event); void OnExport(wxCommandEvent &event); void OnOpenGame(wxListEvent &event); void OnImport(wxCommandEvent &event); std::shared_ptr<Game> GetGame() { return (std::shared_ptr<Game>(NULL)); } void *GetBase() { return (base); }; };