summaryrefslogtreecommitdiff
path: root/Editor/GUI/WindowUtil.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-11-09 19:22:13 +0800
committerchai <chaifix@163.com>2021-11-09 19:22:13 +0800
commitd8417b03b9c2a820d3d3be0dfa80841b4d1f4c04 (patch)
tree7d036d283bd7a626d56c5c5a725733df439c8368 /Editor/GUI/WindowUtil.h
parent13f477664c07826c92eac774f0035994c460c057 (diff)
*misc
Diffstat (limited to 'Editor/GUI/WindowUtil.h')
-rw-r--r--Editor/GUI/WindowUtil.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/Editor/GUI/WindowUtil.h b/Editor/GUI/WindowUtil.h
new file mode 100644
index 0000000..dcc4eca
--- /dev/null
+++ b/Editor/GUI/WindowUtil.h
@@ -0,0 +1,49 @@
+#pragma once
+
+#include <windows.h>
+#include <vector>
+#include "Runtime/Math/Rect.h"
+#include "Runtime/Lua/LuaBind/LuaBind.h"
+#include "Runtime/Lua/LuaHelper.h"
+#include "Runtime/Utilities/Singleton.h"
+#include "Runtime/Debug/Log.h"
+#include "Runtime/Graphics/OpenGL.h"
+#include "Runtime/Utilities/UtilMacros.h"
+#include "Editor/Utils/HelperFuncs.h"
+#include "Runtime/Math/Math.h"
+#include "Runtime/Utilities/Exception.h"
+
+class WindowBase
+{
+};
+
+CustomException(WindowException);
+
+class GUIWindow;
+
+class WindowUtil
+{
+public:
+ static void RegisterClasses();
+
+ static const wchar_t* kContainerWindowClassName;
+ static const wchar_t* kPopupWindowClassName;
+ static const wchar_t* kGUIWindowClassName;
+
+ static void SetEditorMouseOffset(int x, int y, HWND window);
+ static void GetEditorMouseOffset(int *x, int *y, HWND *window);
+};
+
+class WindowManager : Singleton<WindowManager>
+{
+public:
+ static Vector2 GetMousePosition();
+ static GUIWindow* GetMouseOverWindow();
+
+private:
+ static std::vector<GUIWindow*> s_GUIWindows;
+
+};
+
+
+