diff options
Diffstat (limited to 'Editor/Scripting/EditorGUI')
-rw-r--r-- | Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp | 10 | ||||
-rw-r--r-- | Editor/Scripting/EditorGUI/EditorGUI.bind.cpp | 13 | ||||
-rw-r--r-- | Editor/Scripting/EditorGUI/GUIWindow.bind.cpp | 17 |
3 files changed, 22 insertions, 18 deletions
diff --git a/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp b/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp index 0269b72..6c73116 100644 --- a/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp +++ b/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp @@ -1,6 +1,8 @@ #include "Editor/GUI/EditorWindows.h" #include "Runtime/Math/Math.h" +using namespace LuaBind; + LUA_BIND_REGISTRY(ContainerWindow) { LUA_BIND_REGISTER_METHODS(state, @@ -13,14 +15,6 @@ LUA_BIND_REGISTRY(ContainerWindow) LUA_BIND_POSTPROCESS(ContainerWindow) { - LUA_BIND_REGISTER_ENUM(state, "EShowMode", - { "NormalWindow", ShowMode::kShowNormalWindow }, - { "ShowPopupMenu", ShowMode::kShowPopupMenu }, - { "Utility ", ShowMode::kShowUtility }, - { "NoShadow", ShowMode::kShowNoShadow }, - { "MainWindow", ShowMode::kShowMainWindow }, - { "AuxWindow", ShowMode::kShowAuxWindow } - ); } LUA_BIND_IMPL_METHOD(ContainerWindow, _SetTitle) diff --git a/Editor/Scripting/EditorGUI/EditorGUI.bind.cpp b/Editor/Scripting/EditorGUI/EditorGUI.bind.cpp index bd21f7d..ed26604 100644 --- a/Editor/Scripting/EditorGUI/EditorGUI.bind.cpp +++ b/Editor/Scripting/EditorGUI/EditorGUI.bind.cpp @@ -11,6 +11,8 @@ #include "Runtime/GUI/TextMeshGenerator.h" #include "Runtime/Utilities/AutoInvoke.h" +using namespace LuaBind;
+
static std::vector<character::Unicode>* s_Codepoints;
InitializeStaticVariables([]() {
@@ -96,8 +98,19 @@ int luaopen_GameLab_Editor_GUI(lua_State* L) state.PushNamespace("Editor"); state.PushNamespace("GUI"); + state.PushNamespace("Internal"); state.RegisterNativeClass<ContainerWindow>(); state.RegisterNativeClass<GUIWindow>(); + state.PopNamespace(); + + LUA_BIND_REGISTER_ENUM(state, "EShowMode",
+ { "NormalWindow", ContainerWindow::kShowNormalWindow },
+ { "ShowPopupMenu", ContainerWindow::kShowPopupMenu },
+ { "Utility ", ContainerWindow::kShowUtility },
+ { "NoShadow", ContainerWindow::kShowNoShadow },
+ { "MainWindow", ContainerWindow::kShowMainWindow },
+ { "AuxWindow", ContainerWindow::kShowAuxWindow }
+ ); state.RegisterMethods(guiFuncs); diff --git a/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp b/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp index dbb26f4..212cb50 100644 --- a/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp +++ b/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp @@ -8,7 +8,6 @@ LUA_BIND_REGISTRY(GUIWindow) { "Focus", _Focus }, { "SetContainerWindow", _SetContainerWindow }, { "SetPosition", _SetPosition }, - { "SetInstance", _SetInstance}, { "New", _New } ); } @@ -17,11 +16,17 @@ LUA_BIND_POSTPROCESS(GUIWindow) { } +// GUIWindow.New([script]) LUA_BIND_IMPL_METHOD(GUIWindow, _New) { LUA_BIND_STATE(L, GUIWindow); + LUA_BIND_CHECK(L, "T"); + GUIWindow* wnd = new GUIWindow(state.GetVM()); - wnd->Init(); + + if (LuaHelper::IsType(state, "GameLab.Editor.GUI.GUIWindow", -1)) + wnd->SetMemberRef(state, wnd->m_Script, -1); + wnd->PushUserdata(state); return 1; } @@ -48,14 +53,6 @@ LUA_BIND_IMPL_METHOD(GUIWindow, _SetContainerWindow) return 0; } -// SetInstance(self, editorWindow) -LUA_BIND_IMPL_METHOD(GUIWindow, _SetInstance) -{ - LUA_BIND_PREPARE(L, GUIWindow); - self->SetMemberRef(state,self->m_Script, -1); - return 0; -} - // GUIWindow.SetPosition(self, {x, y, width, height}) LUA_BIND_IMPL_METHOD(GUIWindow, _SetPosition) { |