summaryrefslogtreecommitdiff
path: root/Data/Scripts
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-11-12 09:45:23 +0800
committerchai <chaifix@163.com>2021-11-12 09:45:23 +0800
commitbfbe1b31322030d0af6f4d010f578c0b3b3dde21 (patch)
tree493d0833e6fb9979df9519a77a0314ec59259c7c /Data/Scripts
parent8113eb9f4b1152c03ea7e4de632dcdde9b32b6bf (diff)
*split window
Diffstat (limited to 'Data/Scripts')
-rw-r--r--Data/Scripts/Editor/AssetBrowser.lua14
-rw-r--r--Data/Scripts/EditorApplication.lua11
-rw-r--r--Data/Scripts/EditorGUI/EditorWindowManager.lua23
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