aboutsummaryrefslogtreecommitdiff
path: root/src/game_tab/left_panel/board/BoardCanvas.hpp
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2022-12-28 12:10:08 +0100
committerLoic Guegan <manzerbredes@mailbox.org>2022-12-28 12:10:08 +0100
commitc451c63aaa6c898081fc658180e175e23b6f1bbb (patch)
treecda71b9a8ed2bcec6c1a4b50e3f8638798513db8 /src/game_tab/left_panel/board/BoardCanvas.hpp
parent2151ccbe650132c8d07fba3c70c63ddc768dd38f (diff)
Prepare for pieces animation
Diffstat (limited to 'src/game_tab/left_panel/board/BoardCanvas.hpp')
-rw-r--r--src/game_tab/left_panel/board/BoardCanvas.hpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/game_tab/left_panel/board/BoardCanvas.hpp b/src/game_tab/left_panel/board/BoardCanvas.hpp
index ee3dc29..c87f20e 100644
--- a/src/game_tab/left_panel/board/BoardCanvas.hpp
+++ b/src/game_tab/left_panel/board/BoardCanvas.hpp
@@ -57,8 +57,16 @@ class BoardCanvas : public wxPanel {
ClockTime black_time, white_time;
bool frozen,lock_square_size;
- // Drawing buffer
+ // Drawing buffer (ANIMATIONS)
wxBitmap *buffer;
+ bool reuseBuffer;
+ wxTimer timer;
+ int frame,duration,fps;
+ std::string final_board;
+ bool final_is_black_turn;
+ std::map<char, std::uint8_t> final_captures;
+ std::string src;
+ std::string dst;
public:
BoardCanvas(wxFrame *parent);
@@ -71,8 +79,10 @@ public:
void MouseEvent(wxMouseEvent &event);
void Zoom(std::int32_t zoom);
void Swap();
+ void OnTimerTick(wxTimerEvent &event);
void SetupBoard(std::string board, bool is_black_turn,
std::map<char, std::uint8_t> captures);
+ void Animate(std::string board, bool is_black_turn, std::map<char, std::uint8_t> captures, std::string src, std::string dst);
void SetClockTime(short hours, short min, short sec, bool IsBlack);
DECLARE_EVENT_TABLE()
};