Menu is ready !
This commit is contained in:
parent
7eb1b22b9d
commit
27c571a6b9
@ -2,6 +2,7 @@
|
|||||||
#define BILLYSHEET_GUI_HPP
|
#define BILLYSHEET_GUI_HPP
|
||||||
|
|
||||||
#include <filesystem>
|
#include <filesystem>
|
||||||
|
#include "menu.hpp"
|
||||||
|
|
||||||
namespace fs = std::filesystem;
|
namespace fs = std::filesystem;
|
||||||
|
|
||||||
@ -13,6 +14,8 @@ namespace gui {
|
|||||||
private:
|
private:
|
||||||
GuiData &data;
|
GuiData &data;
|
||||||
|
|
||||||
|
Menu menu;
|
||||||
|
|
||||||
fs::path font;
|
fs::path font;
|
||||||
|
|
||||||
bool initialized{ false };
|
bool initialized{ false };
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#ifndef BILLYSHEET_MENU_HPP
|
#ifndef BILLYSHEET_MENU_HPP
|
||||||
#define BILLYSHEET_MENU_HPP
|
#define BILLYSHEET_MENU_HPP
|
||||||
|
|
||||||
|
#include <spdlog/spdlog.h>
|
||||||
|
|
||||||
namespace gui {
|
namespace gui {
|
||||||
class GuiData;
|
class GuiData;
|
||||||
@ -11,7 +12,7 @@ namespace gui {
|
|||||||
public:
|
public:
|
||||||
Menu() noexcept = delete;
|
Menu() noexcept = delete;
|
||||||
|
|
||||||
explicit Menu(GuiData &data) noexcept: data(data) {}
|
explicit Menu(GuiData &data) noexcept: data(data) { SPDLOG_DEBUG("Creating Menu"); }
|
||||||
|
|
||||||
~Menu() noexcept = default;
|
~Menu() noexcept = default;
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
#include "imgui_impl_opengl3_loader.h"
|
#include "imgui_impl_opengl3_loader.h"
|
||||||
#include "gui/window.hpp"
|
#include "gui/window.hpp"
|
||||||
|
|
||||||
gui::Gui::Gui(gui::GuiData &data) : data(data), font("font/DejaVuSans.ttf") {
|
gui::Gui::Gui(gui::GuiData &data) : data(data), menu(data), font("font/DejaVuSans.ttf") {
|
||||||
SPDLOG_DEBUG("Creating GUI");
|
SPDLOG_DEBUG("Creating GUI");
|
||||||
(void) ImGui::CreateContext();
|
(void) ImGui::CreateContext();
|
||||||
ImGui::StyleColorsDark();
|
ImGui::StyleColorsDark();
|
||||||
@ -24,7 +24,8 @@ gui::Gui::~Gui() noexcept {
|
|||||||
|
|
||||||
void gui::Gui::render_gui() {
|
void gui::Gui::render_gui() {
|
||||||
if (initialized) {
|
if (initialized) {
|
||||||
constexpr ImGuiWindowFlags flags = ImGuiWindowFlags_NoMove |
|
constexpr ImGuiWindowFlags flags = ImGuiWindowFlags_MenuBar |
|
||||||
|
ImGuiWindowFlags_NoMove |
|
||||||
ImGuiWindowFlags_NoResize |
|
ImGuiWindowFlags_NoResize |
|
||||||
ImGuiWindowFlags_NoCollapse |
|
ImGuiWindowFlags_NoCollapse |
|
||||||
ImGuiWindowFlags_NoTitleBar;
|
ImGuiWindowFlags_NoTitleBar;
|
||||||
@ -42,6 +43,7 @@ void gui::Gui::render_gui() {
|
|||||||
|
|
||||||
// Never collapsed.
|
// Never collapsed.
|
||||||
(void) ImGui::Begin("Billy", nullptr, flags);
|
(void) ImGui::Begin("Billy", nullptr, flags);
|
||||||
|
menu.gui();
|
||||||
|
|
||||||
ImGui::Text("Hello world!");
|
ImGui::Text("Hello world!");
|
||||||
ImGui::Text("Average framerate: %.3f ms/frame (%.1f FPS)", 1000.f / ImGui::GetIO().Framerate, ImGui::GetIO().Framerate);
|
ImGui::Text("Average framerate: %.3f ms/frame (%.1f FPS)", 1000.f / ImGui::GetIO().Framerate, ImGui::GetIO().Framerate);
|
||||||
|
@ -2,12 +2,18 @@
|
|||||||
#include "imgui.h"
|
#include "imgui.h"
|
||||||
|
|
||||||
void gui::Menu::gui() const noexcept {
|
void gui::Menu::gui() const noexcept {
|
||||||
if (ImGui::BeginMainMenuBar()) {
|
if (ImGui::BeginMenuBar()) {
|
||||||
if (ImGui::BeginMenu("File")) {
|
if (ImGui::BeginMenu("File")) {
|
||||||
|
if (ImGui::MenuItem("Save")) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ImGui::MenuItem("Save as...")) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
ImGui::EndMenu();
|
ImGui::EndMenu();
|
||||||
}
|
}
|
||||||
ImGui::EndMainMenuBar();
|
ImGui::EndMenuBar();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user