#pragma once #include "../Game.hpp" #include "BoardCanvas.hpp" #include "ochess.hpp" // Foreign events wxDECLARE_EVENT(GAME_CHANGE, wxCommandEvent); enum { COPY_FEN_BTN = wxID_HIGHEST + 1, ZOOM_IN_BTN, ZOOM_OUT_BTN, SWAP_BTN }; class BoardPanel : public wxPanel { Game *game; BoardCanvas *board_canvas; void NotifyEditor(); public: BoardPanel(wxFrame *parent, Game *game); void Notify(); void OnPlay(wxCommandEvent &event); void OnGotoMove(wxCommandEvent &event); void OnPreviousMove(wxCommandEvent &event); void OnNextMove(wxCommandEvent &event); void OnCopyFEN(wxCommandEvent &event); void OnZoomIn(wxCommandEvent &event); void OnZoomOut(wxCommandEvent &event); void OnSwap(wxCommandEvent &event); void OnRefreshBoard(wxCommandEvent &event); void ApplyPreferences(); };