#pragma once #include "utils/utils.hpp" namespace VE { struct flags { flags() { if (m_no_titlebar) m_window_flags |= ImGuiWindowFlags_NoTitleBar; if (m_no_scrollbar) m_window_flags |= ImGuiWindowFlags_NoScrollbar; if (!m_no_menu) m_window_flags |= ImGuiWindowFlags_MenuBar; if (m_no_move) m_window_flags |= ImGuiWindowFlags_NoMove; if (m_no_resize) m_window_flags |= ImGuiWindowFlags_NoResize; if (m_no_collapse) m_window_flags |= ImGuiWindowFlags_NoCollapse; if (m_no_nav) m_window_flags |= ImGuiWindowFlags_NoNav; if (m_no_background) m_window_flags |= ImGuiWindowFlags_NoBackground; if (m_no_bring_to_front) m_window_flags |= ImGuiWindowFlags_NoBringToFrontOnFocus; } virtual ~flags() = default; bool m_p_open = false; bool m_no_titlebar = true; bool m_no_scrollbar = true; bool m_no_menu = true; bool m_no_move = true; bool m_no_resize = true; bool m_no_collapse = true; bool m_no_nav = false; bool m_no_background = false; bool m_no_bring_to_front = false; bool m_no_docking = true; ImGuiWindowFlags m_window_flags = 0; }; }