#ifndef IUSERINTERFACE_H #define IUSERINTERFACE_H #include #include #include #include "ControlManager.h" #include enum MenuID { ID_SaveLayout = 1000, }; class UserInterface final : public wxFrame { public: explicit UserInterface(const wxString& title); ~UserInterface() override; public: void OnClose(wxCloseEvent& event); private: void InitUI(); void InitMenu(); void InitData(); private: void TryRestoreLayout(); private: void OnSaveLayout(wxCommandEvent& event); private: wxAuiManager mgr_; wxMenuBar* menuBar_; wxString configDir_; wxString configPath_; std::shared_ptr clientCore_; std::shared_ptr controlMgr_; }; #endif // IUSERINTERFACE_H