20#include <imgui-docking/imgui.h>
22namespace OpenShaderDesigner
49 [[nodiscard]]
bool IsOpen()
const {
return bOpen; }
53 void SetFlags(ImGuiWindowFlags flags) { Flags |= flags; }
54 void ClearFlags(ImGuiWindowFlags flags) { Flags &= ~flags; }
55 void ToggleFlags(ImGuiWindowFlags flags) { Flags ^= flags; }
56 [[nodiscard]]
bool CheckFlag(ImGuiWindowFlags flag)
const {
return Flags & flag; }
58 [[nodiscard]]
bool HasMenuBar()
const {
return CheckFlag(ImGuiWindowFlags_MenuBar); }
61 ~EditorWindow() =
default;
62 EditorWindow(
const std::string& title
63 , ImGuiWindowFlags flags);
Definition EditorSystem.h:30
EditorWindow class for wrapping ImGui window functionality.
Definition EditorWindow.h:28
virtual void DrawWindow()
DrawWindow function for when the EditorWindow is being drawn.
Definition EditorWindow.h:75
const std::string Title
Title for the EditorWindow.
Definition EditorWindow.h:51
virtual void OnOpen()
OnOpen callback for when the EditorWindow is opened.
Definition EditorWindow.h:68
void Draw()
Draw the EditorWindow.
Definition EditorWindow.cpp:27
void Close()
Close the EditorWindow.
Definition EditorWindow.cpp:52
virtual void DrawMenu()
DrawMenu function for when the EditorWindow Menu is being drawn.
Definition EditorWindow.h:82
virtual void OnClose()
OnClose callback for when the EditorWindow is closed.
Definition EditorWindow.h:89
void Open()
Open the EditorWindow.
Definition EditorWindow.cpp:20
bool IsOpen() const
Check if the EditorWindow is open.
Definition EditorWindow.h:49