diff options
Diffstat (limited to 'Data/DefaultContent/Libraries')
3 files changed, 46 insertions, 0 deletions
diff --git a/Data/DefaultContent/Libraries/GameLab/Engine/GUI/IMGUI.lua b/Data/DefaultContent/Libraries/GameLab/Engine/GUI/IMGUI.lua new file mode 100644 index 0000000..f8cc33b --- /dev/null +++ b/Data/DefaultContent/Libraries/GameLab/Engine/GUI/IMGUI.lua @@ -0,0 +1,39 @@ +local Debug = GameLab.Debug
+
+local GUI = GameLab.Engine.GUI or {}
+GameLab.Engine.GUI = GUI
+
+local Event = GameLab.Events.Event
+
+local imgui = {
+ currentId = 0, -- 当前可分配的controlID
+}
+
+GUI.GetControlID = function()
+ imgui.currentId = imgui.currentId + 1
+ return imgui.currentId
+end
+
+-- 每次调用OnGUI(无论是哪个事件)都要重新调用BeginOnGUI方法进行重置
+GUI.BeginOnGUI = function()
+ imgui.currentId = 0
+end
+
+GUI.EndOnGUI = function()
+ imgui.currentId = 0
+end
+
+GUI.BeginFrame = function()
+
+end
+
+GUI.EndFrame = function()
+
+end
+
+GUI.Button = function()
+ local id = GUI.GetControlID()
+
+end
+
+return GUI
\ No newline at end of file diff --git a/Data/DefaultContent/Libraries/GameLab/Engine/GUI/init.lua b/Data/DefaultContent/Libraries/GameLab/Engine/GUI/init.lua new file mode 100644 index 0000000..4b83ddc --- /dev/null +++ b/Data/DefaultContent/Libraries/GameLab/Engine/GUI/init.lua @@ -0,0 +1,3 @@ +local import = GameLab.import(...)
+
+import("IMGUI")
diff --git a/Data/DefaultContent/Libraries/GameLab/Engine/Math/Rect.lua b/Data/DefaultContent/Libraries/GameLab/Engine/Math/Rect.lua index f603ed5..75b550d 100644 --- a/Data/DefaultContent/Libraries/GameLab/Engine/Math/Rect.lua +++ b/Data/DefaultContent/Libraries/GameLab/Engine/Math/Rect.lua @@ -14,4 +14,8 @@ Rect.Set = function(self, rect) self.w = rect.w or rect[4]
end
+Rect.Contains = function(self, point)
+
+end
+
return Rect
\ No newline at end of file |