#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; bool repeat; HalfMove *last_move; std::vector engine_arrows; public: GameTabLeftPanel(wxFrame *parent, std::shared_ptr game); void Notify(bool skip_animation=false); void OnPlay(wxCommandEvent &event); void OnGotoMove(wxCommandEvent &event); void OnRefreshBoard(wxCommandEvent &event); void ApplyPreferences(); void SetSaveToolEnable(bool state){game_toolbar->EnableTool(0,state);}; void SetEngineArrows(std::vector arrows); };