TmpMenu/src/gui.hpp
2023-06-23 08:43:44 +02:00

55 lines
1.1 KiB
C++

#pragma once
#include "common.hpp"
namespace big
{
class gui
{
public:
gui();
virtual ~gui();
gui(const gui&) = delete;
gui(gui&&) noexcept = delete;
gui& operator=(const gui&) = delete;
gui& operator=(gui&&) noexcept = delete;
bool is_open();
void toggle(bool toggle);
bool mouse_override() const
{
return m_override_mouse;
}
/**
* @brief Forces the mouse to draw and disable camera controls of the game
* This function works for now but might start causing issues when more features start relying on it.
*/
void override_mouse(bool override);
void dx_init();
void dx_on_tick();
void save_default_style();
void restore_default_style();
void push_theme_colors();
void pop_theme_colors();
void script_on_tick();
static void script_func();
void wndproc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);
private:
void toggle_mouse();
private:
bool m_is_open;
bool m_override_mouse;
ImGuiStyle m_default_config;
};
inline gui* g_gui;
}