/******************************************************************************
*	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);

        // 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;

    private:    // HELPERS
        void DoMainMenu();
    };
}

#endif  // PANEL_MAIN_H_