diff options
author | chai <chaifix@163.com> | 2021-10-24 13:24:13 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2021-10-24 13:24:13 +0800 |
commit | 3239ba18797b1aa098056aa0c2a70e250a27a06c (patch) | |
tree | cb42710213cd188dd5f7c7841693c9ebe1b1915a /Editor | |
parent | 7bf672fd0c6211909d94078b448032b1bd0916ef (diff) |
* port shader
Diffstat (limited to 'Editor')
-rw-r--r-- | Editor/EditorMain.cpp | 6 | ||||
-rw-r--r-- | Editor/GUI/ContainerWindow.cpp | 4 | ||||
-rw-r--r-- | Editor/GUI/EditorWindows.h | 8 | ||||
-rw-r--r-- | Editor/GUI/GUIWindow.cpp | 4 | ||||
-rw-r--r-- | Editor/GUI/WindowManager.cpp | 6 | ||||
-rw-r--r-- | Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp | 6 | ||||
-rw-r--r-- | Editor/Scripting/EditorGUI/GUIWindow.bind.cpp | 20 | ||||
-rw-r--r-- | Editor/Scripting/EditorScripting.cpp | 2 | ||||
-rw-r--r-- | Editor/Utils/HelperFuncs.h | 4 |
9 files changed, 33 insertions, 27 deletions
diff --git a/Editor/EditorMain.cpp b/Editor/EditorMain.cpp index 7ca90ad..7686fa5 100644 --- a/Editor/EditorMain.cpp +++ b/Editor/EditorMain.cpp @@ -29,9 +29,8 @@ void OnRegisterNativeClass(LuaBind::State& state, int cls, std::string clsName, lua_setfield(state, cls, "_type");
}
-void InitLuaState()
+void InitLuaState(LuaBind::VM& vm)
{
- LuaBind::VM vm;
vm.Setup();
vm.OpenLibs();
@@ -59,7 +58,8 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int sw) {
WindowUtil::RegisterClasses();
- InitLuaState();
+ LuaBind::VM vm;
+ InitLuaState(vm);
return 0;
}
\ No newline at end of file diff --git a/Editor/GUI/ContainerWindow.cpp b/Editor/GUI/ContainerWindow.cpp index 2aca239..5f3e6f8 100644 --- a/Editor/GUI/ContainerWindow.cpp +++ b/Editor/GUI/ContainerWindow.cpp @@ -274,7 +274,7 @@ bool ContainerWindow::SetRenderContext() } // 初始化,创建窗口 -void ContainerWindow::Init(Rectf pixelRect, int showMode, const Vector2f& minSize, const Vector2f& maxSize, std::string name) +void ContainerWindow::Init(Rect pixelRect, int showMode, const Vector2& minSize, const Vector2& maxSize, std::string name) { // Aux windows are mac only. on windows they look just like normal utility windows. if (showMode == kShowAuxWindow) @@ -343,7 +343,7 @@ void ContainerWindow::Init(Rectf pixelRect, int showMode, const Vector2f& minSiz // parentWindow = GetMainEditorWindow(); } - bool notSizeable = (minSize == maxSize) && (minSize != Vector2f::zero); + bool notSizeable = (minSize == maxSize) && (minSize != Vector2::zero); if (notSizeable) windowStyle &= ~(WS_THICKFRAME); diff --git a/Editor/GUI/EditorWindows.h b/Editor/GUI/EditorWindows.h index 3b84b13..a7091dd 100644 --- a/Editor/GUI/EditorWindows.h +++ b/Editor/GUI/EditorWindows.h @@ -29,7 +29,7 @@ public : class WindowManager : Singleton<WindowManager> { public: - static Vector2f GetMousePosition(); + static Vector2 GetMousePosition(); static GUIWindow* GetMouseOverWindow(); private: @@ -56,7 +56,7 @@ public: ContainerWindow(LuaBind::VM* vm); ~ContainerWindow(); - void Init(Rectf size, int showMode, const Vector2f& minSize, const Vector2f& maxSize, std::string name = ""); + void Init(Rect size, int showMode, const Vector2& minSize, const Vector2& maxSize, std::string name = ""); void SetTitle(const char* title); void SetIcon(LPCSTR iconName); void SetAsRenderContext(); @@ -85,7 +85,7 @@ private: bool m_IsClosing; bool m_InMenuLoop; bool m_CloseFromScriptDontShutdown; - Rectf m_InternalRect; + Rect m_InternalRect; POINT m_MinSize; POINT m_MaxSize; @@ -140,7 +140,7 @@ public: void DoPaint(); void SetContainerWindow(ContainerWindow* wnd); void Focus(); - void SetPosition(Rectf position); + void SetPosition(Rect position); void SetAsRenderContext(); void OnFocus(); diff --git a/Editor/GUI/GUIWindow.cpp b/Editor/GUI/GUIWindow.cpp index fb23a59..df28785 100644 --- a/Editor/GUI/GUIWindow.cpp +++ b/Editor/GUI/GUIWindow.cpp @@ -196,7 +196,7 @@ void GUIWindow::Init(std::string name) //DWORD windowStyle = WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_CLIPCHILDREN | WS_MAXIMIZEBOX | WS_MINIMIZEBOX; DWORD extendedStyle = WS_EX_TOOLWINDOW; - Rectf pixelRect; + Rect pixelRect; pixelRect.x = 0; pixelRect.y = 0; pixelRect.width = 32; @@ -326,7 +326,7 @@ void GUIWindow::OnPaint() InvokeLuaCallback(m_Script, "OnPaint"); } -void GUIWindow::SetPosition(Rectf position) +void GUIWindow::SetPosition(Rect position) { log_info("GUIWindow::SetPosition()"); RECT rc; diff --git a/Editor/GUI/WindowManager.cpp b/Editor/GUI/WindowManager.cpp index 533435f..d8a4135 100644 --- a/Editor/GUI/WindowManager.cpp +++ b/Editor/GUI/WindowManager.cpp @@ -8,12 +8,12 @@ GUIWindow* WindowManager::GetMouseOverWindow() return NULL; } -Vector2f WindowManager::GetMousePosition() +Vector2 WindowManager::GetMousePosition() { POINT pt; if (!GetCursorPos(&pt)) - return Vector2f(0, 0); + return Vector2(0, 0); - return Vector2f(pt.x, pt.y); + return Vector2(pt.x, pt.y); } diff --git a/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp b/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp index ce0efc8..02b29df 100644 --- a/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp +++ b/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp @@ -56,10 +56,10 @@ LUA_BIND_IMPL_METHOD(ContainerWindow, ContainerWindow::_New) ContainerWindow* wnd = new ContainerWindow(state.GetVM()); - Rectf rect = state.GetValue<Rectf>(state, Rectf()); + Rect rect = state.GetValue<Rect>(state, Rect()); int showMode = state.GetValue<int>(2, 0); - Vector2f min = state.GetValue<Vector2f>(state, Vector2f()); - Vector2f max = state.GetValue<Vector2f>(state, Vector2f()); + Vector2 min = state.GetValue<Vector2>(state, Vector2()); + Vector2 max = state.GetValue<Vector2>(state, Vector2()); wnd->Init(rect, showMode, min, max); diff --git a/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp b/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp index 9ecc209..e991398 100644 --- a/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp +++ b/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp @@ -16,6 +16,15 @@ LUA_BIND_POSTPROCESS(GUIWindow) { } +LUA_BIND_IMPL_METHOD(GUIWindow, _New) +{ + LUA_BIND_STATE(L, GUIWindow); + GUIWindow* wnd = new GUIWindow(state.GetVM()); + wnd->Init(); + wnd->PushUserdata(state); + return 1; +} + LUA_BIND_IMPL_METHOD(GUIWindow, _DoPaint) { LUA_BIND_PREPARE(L, GUIWindow); @@ -53,7 +62,7 @@ LUA_BIND_IMPL_METHOD(GUIWindow, _SetPosition) if (!state.CheckParams(1, "UT")) return 0; - Rectf rect; + Rect rect; rect.x = state.GetField<float>(2, 1, 0); rect.y = state.GetField<float>(2, 2, 0); rect.width = state.GetField<float>(2, 3, 0); @@ -61,12 +70,3 @@ LUA_BIND_IMPL_METHOD(GUIWindow, _SetPosition) self->SetPosition(rect); return 0; } - -LUA_BIND_IMPL_METHOD(GUIWindow, _New) -{ - LUA_BIND_PREPARE(L, GUIWindow); - GUIWindow* wnd = new GUIWindow(state.GetVM()); - wnd->Init(); - wnd->PushUserdata(state); - return 1; -}
\ No newline at end of file diff --git a/Editor/Scripting/EditorScripting.cpp b/Editor/Scripting/EditorScripting.cpp index 26509e0..75014f3 100644 --- a/Editor/Scripting/EditorScripting.cpp +++ b/Editor/Scripting/EditorScripting.cpp @@ -35,6 +35,8 @@ bool SetupGameLabEditorScripting(lua_State* L) openlib(luaopen_GameLab_Debug); openlib(luaopen_GameLab_Path); + openlib(luaopen_GameLab_Engine_Rendering); + openlib(luaopen_GameLab_Editor); openlib(luaopen_GameLab_Editor_GUI); diff --git a/Editor/Utils/HelperFuncs.h b/Editor/Utils/HelperFuncs.h index 626e48f..def1e23 100644 --- a/Editor/Utils/HelperFuncs.h +++ b/Editor/Utils/HelperFuncs.h @@ -9,3 +9,7 @@ extern void PrintCallStack(); #define GET_X_LPARAM(lp) ((int)(short)LOWORD(lp)) #define GET_Y_LPARAM(lp) ((int)(short)HIWORD(lp)) + +#ifndef Assert +#define Assert assert +#endif |