2022-02-23 18:11:55 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "../Game.hpp"
|
2022-02-28 13:44:27 +01:00
|
|
|
#include "board/BoardCanvas.hpp"
|
2022-02-23 18:11:55 +01:00
|
|
|
#include "ochess.hpp"
|
2022-12-30 15:09:24 +01:00
|
|
|
#include "base_tab/gamebase/GameBase.hpp"
|
2022-02-23 18:11:55 +01:00
|
|
|
|
|
|
|
// Foreign events
|
|
|
|
wxDECLARE_EVENT(GAME_CHANGE, wxCommandEvent);
|
|
|
|
|
2022-02-28 14:02:02 +01:00
|
|
|
class GameTabLeftPanel : public TabGameLeftPanel {
|
2022-02-28 20:16:57 +01:00
|
|
|
std::shared_ptr<Game> game;
|
2022-02-23 18:11:55 +01:00
|
|
|
BoardCanvas *board_canvas;
|
2022-12-29 10:08:22 +01:00
|
|
|
std::string last_absolute_move;
|
|
|
|
bool repeat;
|
2023-01-01 14:35:20 +01:00
|
|
|
HalfMove *last_move;
|
2022-12-29 10:08:22 +01:00
|
|
|
|
2022-02-23 18:11:55 +01:00
|
|
|
public:
|
2022-02-28 20:16:57 +01:00
|
|
|
GameTabLeftPanel(wxFrame *parent, std::shared_ptr<Game> game);
|
2022-12-29 10:08:22 +01:00
|
|
|
void Notify(bool animate=false,bool backward=false);
|
2022-02-23 18:11:55 +01:00
|
|
|
void OnPlay(wxCommandEvent &event);
|
|
|
|
void OnGotoMove(wxCommandEvent &event);
|
|
|
|
void OnRefreshBoard(wxCommandEvent &event);
|
|
|
|
void ApplyPreferences();
|
2022-12-30 15:58:13 +01:00
|
|
|
void DisableSaveTool(){game_toolbar->EnableTool(0,false);};
|
2022-02-23 18:11:55 +01:00
|
|
|
};
|