diff options
Diffstat (limited to 'Data/Scripts')
-rw-r--r-- | Data/Scripts/Editor/AssetBrowser.lua | 14 | ||||
-rw-r--r-- | Data/Scripts/EditorApplication.lua | 11 | ||||
-rw-r--r-- | Data/Scripts/EditorGUI/EditorWindowManager.lua | 23 |
3 files changed, 33 insertions, 15 deletions
diff --git a/Data/Scripts/Editor/AssetBrowser.lua b/Data/Scripts/Editor/AssetBrowser.lua index 37e9358..6d02579 100644 --- a/Data/Scripts/Editor/AssetBrowser.lua +++ b/Data/Scripts/Editor/AssetBrowser.lua @@ -1,12 +1,12 @@ -local Debug = GameLab.Debug
-local AssetBrowser = GameLab.Editor.EditorWindow.Extend("GameLab.Editor.AssetBrowser")
-local GL = GameLab.Engine.GL
+local Debug = GameLab.Debug
+local GL = GameLab.Engine.GL
local Matrix44 = GameLab.Engine.Math.Matrix44
-local Engine = GameLab.Engine
-local Editor = GameLab.Editor
-local IO = GameLab.IO
+local Engine = GameLab.Engine
+local Editor = GameLab.Editor
+local IO = GameLab.IO
+local inspect = require("inspect")
-local inspect = require("inspect")
+local AssetBrowser = GameLab.Editor.EditorWindow.Extend("GameLab.Editor.AssetBrowser")
AssetBrowser.Ctor = function(self)
self.base.Ctor(self, "AssetBrowser")
diff --git a/Data/Scripts/EditorApplication.lua b/Data/Scripts/EditorApplication.lua index 4c4a708..01f5b70 100644 --- a/Data/Scripts/EditorApplication.lua +++ b/Data/Scripts/EditorApplication.lua @@ -8,7 +8,7 @@ local Engine = GameLab.Engine local Resource = GameLab.Engine.Resource local Rendering = GameLab.Engine.Rendering local Debug = GameLab.Debug -local GUI = GameLab.Editor.Window +local Window = GameLab.Editor.Window local GL = GameLab.Engine.GL local app = GameLab.Editor.EditorApplication.New() @@ -17,22 +17,21 @@ if app == nil then Debug.LogError("app is nil") end -local mainWindow = GUI.ContainerWindow.New({400, 400, 800, 500}, GUI.EShowMode.MainWindow, {100, 100}, {700, 700}) +local mainWindow = Window.ContainerWindow.New({400, 400, 800, 500}, Window.EShowMode.MainWindow, {100, 100}, {700, 700}) mainWindow:SetTitle("GameLab") mainWindow:SetIcon("./Data/Icon/GameLab.ico") app:SetMainWindow(mainWindow:GetNative()) +EditorWindowManager.SetMainWindow(mainWindow) -local guiWindow = GUI.GUIWindow.New() +local guiWindow = Window.GUIWindow.New() guiWindow:SetContainerWindow(mainWindow) guiWindow:SetPosition({0,0, 400, 400}) -local guiWindow2 = GUI.GUIWindow.New() +local guiWindow2 = Window.GUIWindow.New() guiWindow2:SetContainerWindow(mainWindow) guiWindow2:SetPosition({400,0, 400, 400}) -local wnd = AssetBrowser.New() - local v = GameLab.Engine.Math.Vector4.New(1,2,3,4) local c = Engine.Rendering.Color.New(1,1,1,1) diff --git a/Data/Scripts/EditorGUI/EditorWindowManager.lua b/Data/Scripts/EditorGUI/EditorWindowManager.lua index 27dd16d..ecd6912 100644 --- a/Data/Scripts/EditorGUI/EditorWindowManager.lua +++ b/Data/Scripts/EditorGUI/EditorWindowManager.lua @@ -4,8 +4,27 @@ local SplitWindow = require("GameLab.Editor.Window.SplitWindow") local EditorWindowManager = {}
-EditorWindowManager.splitWindows = {}
+EditorWindowManager.splitWindows = {}
+EditorWindowManager.containerWindows = {}
+EditorWindowManager.guiWindows = {}
+EditorWindowManager.rootSplitWindow = nil
+EditorWindowManager.mainWindow = nil
+local splitWindows = EditorWindowManager.splitWindows
+local containerWindows = EditorWindowManager.containerWindows
+local guiWindows = EditorWindowManager.guiWindows
+-- 申请一个GUIWindow并
+EditorWindowManager.ClaimGUIWindow = function()
+ if #splitWindows == 0 then
+ local sp = SplitWindow.New()
+ table.insert( splitWindows, sp)
-return EditorWindowManager
\ No newline at end of file + end
+end
+
+EditorWindowManager.SetMainWindow = function(wnd)
+ EditorWindowManager.mainWindow = wnd
+end
+
+return EditorWindowManager
\ No newline at end of file |