BillySheet/include/gui/gui.hpp

40 lines
568 B
C++

#ifndef BILLYSHEET_GUI_HPP
#define BILLYSHEET_GUI_HPP
#include <filesystem>
#include "gui/menu/menu.hpp"
namespace fs = std::filesystem;
class Controller;
namespace gui {
class GuiData;
namespace menu { class MenuData; }
class Gui final {
private:
GuiData &data;
menu::Menu menu;
const fs::path font;
bool initialized{ false };
public:
Gui() = delete;
explicit Gui(GuiData &data, menu::MenuData &menuData);
~Gui() noexcept;
void render_gui(const Controller &controller);
void render_gpu() const;
};
}
#endif //BILLYSHEET_GUI_HPP