ochess/src/MainWindow.hpp
2022-12-24 12:46:59 +01:00

37 lines
No EOL
1 KiB
C++

#pragma once
#include "base_tab/BaseTab.hpp"
#include "game_tab/GameTab.hpp"
#include "ochess.hpp"
#include <wx/aui/auibook.h>
#include <wx/filedlg.h>
#include <wx/preferences.h>
#include <wx/textdlg.h>
wxDECLARE_EVENT(REFRESH_TAB_TITLE, wxCommandEvent);
wxDECLARE_EVENT(NEW_GAME_EVENT, wxCommandEvent);
wxDECLARE_EVENT(CLOSE_TAB_EVENT, wxCommandEvent);
wxDECLARE_EVENT(REFRESH_ENGINE_LIST, wxCommandEvent);
class MainWindow : public MainFrame {
wxPreferencesEditor *prefsEditor;
wxMenu *manageMenu;
void OnClose(wxCloseEvent &e);
void NewGame(bool useFen);
void OnNewGame(wxCommandEvent &event);
void OpenFile();
void OnPageChange(wxAuiNotebookEvent &event);
void OnRefreshTabTitle(wxCommandEvent &event);
TabInfos* NewGame(std::shared_ptr<Game> game);
void OpenSettings();
void NewEngine();
void OnCloseTabEvent(wxCommandEvent &event);
void OnRefreshEngineList(wxCommandEvent &event);
void OnMenuItemClick(wxCommandEvent &event);
public:
MainWindow();
void ApplyPreferences();
std::vector<TabInfos *> ListTabInfos();
};