diff options
| author | Loic Guegan <manzerbredes@mailbox.org> | 2022-02-23 18:11:55 +0100 |
|---|---|---|
| committer | Loic Guegan <manzerbredes@mailbox.org> | 2022-02-23 18:11:55 +0100 |
| commit | ce941c146aea7925bded6b9d2a0d0559d3156ad3 (patch) | |
| tree | 4c52e02600e3fd127bfb28b3e974d45541ec9e4e /src/game_tab/editor/EditorCanvas.hpp | |
Create repository
Diffstat (limited to 'src/game_tab/editor/EditorCanvas.hpp')
| -rw-r--r-- | src/game_tab/editor/EditorCanvas.hpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/game_tab/editor/EditorCanvas.hpp b/src/game_tab/editor/EditorCanvas.hpp new file mode 100644 index 0000000..b3bb29f --- /dev/null +++ b/src/game_tab/editor/EditorCanvas.hpp @@ -0,0 +1,33 @@ +#pragma once + +#include "../HalfMove.hpp" +#include "CGEditor.hpp" +#include "ochess.hpp" +#include "../board/Theme.hpp" + +// Foreign events +wxDECLARE_EVENT(GOTO_MOVE_EVENT, wxCommandEvent); +wxDECLARE_EVENT(PREVIOUS_MOVE_EVENT, wxCommandEvent); +wxDECLARE_EVENT(NEXT_MOVE_EVENT, wxCommandEvent); +wxDECLARE_EVENT(DELETE_MOVE_EVENT, wxCommandEvent); +wxDECLARE_EVENT(PROMOTE_MOVE_EVENT, wxCommandEvent); +wxDECLARE_EVENT(SET_AS_MAINLINE_EVENT, wxCommandEvent); + +class EditorCanvas : public wxPanel, public cgeditor::CGEditor { + wxPaintDC *dc; + bool NeedRedraw; + wxPoint Middle(cgeditor::Element e); + wxBitmap hide_icon; + Theme t; + +public: + EditorCanvas(wxFrame *parent); + void OnPaint(wxPaintEvent &event); + void MouseEvent(wxMouseEvent &event); + void DrawElement(const cgeditor::Element &e); + void HandleEvent(const cgeditor::Event &e); + void SetMoves(HalfMove *moves, HalfMove *current); + void OnKeyEvent(wxKeyEvent &event); + + DECLARE_EVENT_TABLE() +}; |
