You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
/******************************************************************************
|
|
|
|
|
* File - mainPanel.h
|
|
|
|
|
* Author - Joey Pollack
|
|
|
|
|
* Date - 2021/11/01 (y/m/d)
|
|
|
|
|
* Mod Date - 2021/11/01 (y/m/d)
|
|
|
|
|
* Description - The main window for the editor.
|
|
|
|
|
******************************************************************************/
|
|
|
|
|
|
|
|
|
|
#ifndef PANEL_MAIN_H_
|
|
|
|
|
#define PANEL_MAIN_H_
|
|
|
|
|
|
|
|
|
|
#include "iPanel.h"
|
|
|
|
|
|
|
|
|
|
namespace lunarium
|
|
|
|
|
{
|
|
|
|
|
class Editor;
|
|
|
|
|
class MainPanel : public Panel
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
MainPanel();
|
|
|
|
|
static MainPanel& GetInstance();
|
|
|
|
|
static void FreeInstance();
|
|
|
|
|
|
|
|
|
|
void SetEditor(Editor* e);
|
|
|
|
|
void Focus();
|
|
|
|
|
|
|
|
|
|
// Returns false if the window is closed
|
|
|
|
|
bool DoFrame();
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
static MainPanel* mpInstance;
|
|
|
|
|
MainPanel(const MainPanel&) = delete;
|
|
|
|
|
MainPanel& operator=(const MainPanel&) = delete;
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
Editor* mpEditor;
|
|
|
|
|
int mStartWidth;
|
|
|
|
|
int mStartHeight;
|
|
|
|
|
int mStartX;
|
|
|
|
|
int mStartY;
|
|
|
|
|
|
|
|
|
|
// Menu Items
|
|
|
|
|
bool mSetFocus;
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif // PANEL_MAIN_H_
|