65 lines
1.1 KiB
C++
65 lines
1.1 KiB
C++
#ifndef BILLYSHEET_GUI_HPP
|
|
#define BILLYSHEET_GUI_HPP
|
|
|
|
#include <filesystem>
|
|
#include "gui/menu/menu.hpp"
|
|
|
|
namespace fs = std::filesystem;
|
|
|
|
class Controller;
|
|
|
|
namespace character::characteristic {
|
|
class Characteristic;
|
|
}
|
|
|
|
namespace gui {
|
|
|
|
class GuiData;
|
|
|
|
class Window;
|
|
|
|
namespace menu { class MenuData; }
|
|
|
|
class Gui final {
|
|
private:
|
|
GuiData &data;
|
|
|
|
menu::Menu menu;
|
|
|
|
const fs::path font;
|
|
|
|
bool initialized{ false };
|
|
|
|
void habilete_menu() noexcept;
|
|
|
|
void adresse_menu() noexcept;
|
|
|
|
void endurance_menu() noexcept;
|
|
|
|
void chance_menu() noexcept;
|
|
|
|
void stat_second_menu() noexcept;
|
|
|
|
void materiel_menu() noexcept;
|
|
|
|
void gloire_menu() noexcept;
|
|
|
|
void richesse_menu() noexcept;
|
|
|
|
public:
|
|
Gui() = delete;
|
|
|
|
explicit Gui(Window &window, GuiData &data, menu::MenuData &menuData);
|
|
|
|
~Gui() noexcept;
|
|
|
|
void render_gui(const Controller &controller);
|
|
|
|
void render_gpu() const;
|
|
|
|
static void characteristic_gui(const character::characteristic::Characteristic &characteristic) noexcept;
|
|
};
|
|
}
|
|
|
|
#endif //BILLYSHEET_GUI_HPP
|