2022-01-08 21:57:17 +01:00
|
|
|
#ifndef BILLYSHEET_GUI_HPP
|
|
|
|
#define BILLYSHEET_GUI_HPP
|
|
|
|
|
2022-01-09 00:43:33 +01:00
|
|
|
#include <filesystem>
|
2022-01-14 22:06:07 +01:00
|
|
|
#include "gui/menu/menu.hpp"
|
2022-01-09 00:43:33 +01:00
|
|
|
|
|
|
|
namespace fs = std::filesystem;
|
2022-01-08 21:57:17 +01:00
|
|
|
|
|
|
|
namespace gui {
|
2022-01-09 00:43:33 +01:00
|
|
|
|
|
|
|
class GuiData;
|
|
|
|
|
2022-01-14 22:06:07 +01:00
|
|
|
namespace menu { class MenuData; }
|
|
|
|
|
2022-01-08 21:57:17 +01:00
|
|
|
class Gui final {
|
|
|
|
private:
|
2022-01-09 00:43:33 +01:00
|
|
|
GuiData &data;
|
|
|
|
|
2022-01-14 22:06:07 +01:00
|
|
|
menu::Menu menu;
|
2022-01-14 19:21:42 +01:00
|
|
|
|
2022-01-09 00:43:33 +01:00
|
|
|
fs::path font;
|
2022-01-08 21:57:17 +01:00
|
|
|
|
2022-01-09 00:43:33 +01:00
|
|
|
bool initialized{ false };
|
2022-01-08 21:57:17 +01:00
|
|
|
public:
|
|
|
|
Gui() = delete;
|
|
|
|
|
2022-01-14 22:06:07 +01:00
|
|
|
explicit Gui(GuiData &data, menu::MenuData &menuData);
|
2022-01-09 00:43:33 +01:00
|
|
|
|
2022-01-08 21:57:17 +01:00
|
|
|
~Gui() noexcept;
|
2022-01-09 00:43:33 +01:00
|
|
|
|
|
|
|
void render_gui();
|
|
|
|
|
|
|
|
void render_gpu() const;
|
2022-01-08 21:57:17 +01:00
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif //BILLYSHEET_GUI_HPP
|