#pragma once

/*
	ApplicationFramework
	by John Ryland
	Copyright (c) 2023
*/

////////////////////////////////////////////////////////////////////////////////////
//	Main Window

#include "Window.h"

namespace ApplicationFramework {

class MainWindow : public Window
{
public:
    typedef Window ParentClass;

    MainWindow(IApplication& app, int width, int height, const char* title);

    void Update() override;

protected:
    virtual void AddMenus();

    void ShowMenus();
    void ShowFileMenu();
    void ShowOverlay();
    void ShowStyleEditor();

    // Dear ImGui Tools/Apps (accessible from the "Tools" menu)
    bool show_demo_window = false;
    bool show_app_overlay = true;
    bool show_app_metrics = false;
    bool show_app_debug_log = true;
    bool show_app_stack_tool = true;
    bool show_app_about = false;
    bool show_app_style_editor = false;
    bool show_acknowledgements = false;
};

} // ApplicationFramework namespace
