#pragma once #include "../Game.hpp" #include "board/BoardCanvas.hpp" #include "ochess.hpp" #include "base_tab/gamebase/GameBase.hpp" // Foreign events wxDECLARE_EVENT(GAME_CHANGE, wxCommandEvent); class GameTabLeftPanel : public TabGameLeftPanel { std::shared_ptr game; BoardCanvas *board_canvas; void NotifyEditor(); std::string last_absolute_move; bool repeat; std::string related_file; public: GameTabLeftPanel(wxFrame *parent, std::shared_ptr game); void Notify(bool animate=false,bool backward=false); void OnPlay(wxCommandEvent &event); void OnGotoMove(wxCommandEvent &event); void PreviousMove(bool isKeyDown); void NextMove(bool isKeyDown); void OnZoomIn(wxCommandEvent &event); void OnZoomOut(wxCommandEvent &event); void OnSwap(wxCommandEvent &event); void OnRefreshBoard(wxCommandEvent &event); void ApplyPreferences(); void OnToolClick(wxCommandEvent &event); };