summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-10-17 16:01:09 +0800
committerchai <chaifix@163.com>2021-10-17 16:01:09 +0800
commite13f699ee5f575198552d94ada1167305c82bb2f (patch)
treed67ff5ec85959f38a62babf856d4fa9f2f0b4147
parentd35db57d457132dd9d83fa2bd51491b148530655 (diff)
*misc
-rw-r--r--DefaultContent/Libraries/Math/Euler.lua0
-rw-r--r--DefaultContent/Libraries/Math/Matrix4x4.lua0
-rw-r--r--DefaultContent/Libraries/Math/Quaternion.lua4
-rw-r--r--DefaultContent/Libraries/Math/Vector2.lua0
-rw-r--r--DefaultContent/Libraries/Math/Vector3.lua0
-rw-r--r--Editor/EditorMain.cpp14
-rw-r--r--Editor/GUI/ContainnerWindow.cpp151
-rw-r--r--Editor/GUI/EditorWindows.h38
-rw-r--r--Editor/GUI/GUIWindow.cpp164
-rw-r--r--Editor/GUI/MainWindow.cpp54
-rw-r--r--Editor/GUI/WindowManager.cpp2
-rw-r--r--Editor/IMGUI/GUIButton.cpp0
-rw-r--r--Editor/Resource/ResourceManager.cpp0
-rw-r--r--Editor/Resource/ResourceManager.h0
-rw-r--r--Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp0
-rw-r--r--Editor/Scripting/EditorGUI/EditorGUI.bind.cpp2
-rw-r--r--Editor/Scripting/EditorGUI/GUIWindow.bind.cpp0
-rw-r--r--Editor/Scripting/EditorGUI/SplitWindow.bind.cpp0
-rw-r--r--Editor/Scripting/EditorScripting.cpp15
-rw-r--r--Editor/Scripting/EditorScripting.h3
-rw-r--r--Editor/Scripting/IMGUI/GUIButton.bind.cpp1
-rw-r--r--Editor/Scripts/EditorApplication.lua (renamed from Editor/Scripts/EditorMain.lua)8
-rw-r--r--Editor/Utils/HelperFuncs.h5
-rw-r--r--Projects/VisualStudio/Editor/Editor.vcxproj11
-rw-r--r--Projects/VisualStudio/Editor/Editor.vcxproj.filters48
-rw-r--r--Projects/VisualStudio/Runtime/Runtime.vcxproj50
-rw-r--r--Projects/VisualStudio/Runtime/Runtime.vcxproj.filters142
27 files changed, 575 insertions, 137 deletions
diff --git a/DefaultContent/Libraries/Math/Euler.lua b/DefaultContent/Libraries/Math/Euler.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/DefaultContent/Libraries/Math/Euler.lua
diff --git a/DefaultContent/Libraries/Math/Matrix4x4.lua b/DefaultContent/Libraries/Math/Matrix4x4.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/DefaultContent/Libraries/Math/Matrix4x4.lua
diff --git a/DefaultContent/Libraries/Math/Quaternion.lua b/DefaultContent/Libraries/Math/Quaternion.lua
new file mode 100644
index 0000000..4c71f52
--- /dev/null
+++ b/DefaultContent/Libraries/Math/Quaternion.lua
@@ -0,0 +1,4 @@
+local Quaternion = {}
+
+return Quaternion
+
diff --git a/DefaultContent/Libraries/Math/Vector2.lua b/DefaultContent/Libraries/Math/Vector2.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/DefaultContent/Libraries/Math/Vector2.lua
diff --git a/DefaultContent/Libraries/Math/Vector3.lua b/DefaultContent/Libraries/Math/Vector3.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/DefaultContent/Libraries/Math/Vector3.lua
diff --git a/Editor/EditorMain.cpp b/Editor/EditorMain.cpp
index 9d77862..8fea1df 100644
--- a/Editor/EditorMain.cpp
+++ b/Editor/EditorMain.cpp
@@ -4,11 +4,9 @@
#include "Runtime/Scripting/LuaBind.h"
#include "EditorManager.h"
#include "Runtime/Graphics/OpenGL.h"
+#include "Editor/Scripting/EditorScripting.h"
-// Editor入口
-
-
-static int MainMessageLoop()
+static int MainLoop()
{
BOOL returnValue;
MSG msg, lastMsg;
@@ -50,6 +48,12 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int sw)
OpenLogTags();
WindowUtil::Init();
+ if (!SetupGameLabEditorScripting())
+ {
+ log_error("Can't setup scripting.");
+ return 0;
+ }
+
ContainnerWindow* wnd = new ContainnerWindow();
Vector2f min = Vector2f(100, 100);
Vector2f max = Vector2f(700, 700);
@@ -90,7 +94,7 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int sw)
guiWnd->DoPaint();
guiWnd2->DoPaint();
- MainMessageLoop();
+ MainLoop();
return 0;
} \ No newline at end of file
diff --git a/Editor/GUI/ContainnerWindow.cpp b/Editor/GUI/ContainnerWindow.cpp
index 5e6c356..3778485 100644
--- a/Editor/GUI/ContainnerWindow.cpp
+++ b/Editor/GUI/ContainnerWindow.cpp
@@ -8,11 +8,14 @@
using namespace std;
+static bool s_IsMainWindowMaximized;
+
+extern bool ProcessMainWindowMessages(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam, LRESULT& result);
+
static PAINTSTRUCT ps;
LRESULT CALLBACK ContainnerWindow::ContainerWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
- log_info("WndProc", "ContainnerWindow::ContainerWndProc()");
-
+
ContainnerWindow *self = (ContainnerWindow*)GetWindowLongPtr(hWnd, GWLP_USERDATA);
if (!self)
{
@@ -20,6 +23,8 @@ LRESULT CALLBACK ContainnerWindow::ContainerWndProc(HWND hWnd, UINT message, WPA
return DefWindowProcW(hWnd, message, wParam, lParam);
}
+ //log_info("WndProc", "ContainnerWindow::ContainerWndProc(), ContainnerWindow name is " + self->GetName());
+
switch (message)
{
case WM_MENUSELECT:
@@ -48,6 +53,123 @@ LRESULT CALLBACK ContainnerWindow::ContainerWndProc(HWND hWnd, UINT message, WPA
UpdateWindow(self->m_Window);
return 0;
}
+ case WM_ENTERMENULOOP: // 点击菜单
+
+ return 0;
+ case WM_EXITMENULOOP: // 松开菜单
+ return 0;
+
+ case WM_KEYDOWN: // key down
+ case WM_KEYUP: // key up
+ case WM_SYSKEYDOWN: // 和 WM_KEYDOWN 的区别是可以捕获快捷键或系统命令按键,比如alt键, Ctrl和shift不属于WM_SYSKEYDOWN
+ case WM_SYSKEYUP: // 和 WM_KEYUP 的区别是可以捕获快捷键或系统命令按键,比如alt键
+ if (message == WM_KEYDOWN && wParam == VK_ESCAPE) {
+ // Escape should close utility container windows
+ // 如果本窗口是 utility 窗口,关闭它
+ if (self->m_ShowMode == ShowMode::kShowUtility) {
+ self->Close();
+ return 0;
+ }
+ }
+ return 0;
+
+ case WM_ERASEBKGND:// WM_ERASEBKGND是在当窗口*背景*必须被擦除时 (例如,窗口的移动,窗口的大小的改变)发送。
+ {
+ // unity的窗口背景色要么是灰色(免费版) ,要么是深黑色(专业版)
+ // 对于透明窗口
+ if (GetWindowLong(hWnd, GWL_EXSTYLE) & WS_EX_LAYERED) { // WS_EX_LAYERED是extendedStyle透明窗口
+ // 填充用户区
+ RECT rc;
+ GetClientRect(hWnd, &rc);
+ FillRect((HDC)wParam, &rc, (HBRUSH)GetStockObject(BLACK_BRUSH));
+ }
+ // do not erase background
+ // 如果不是透明窗口不要清除背景,跳过DefWindowProc函数
+ return 1;
+ }
+
+ case WM_WINDOWPOSCHANGED: // 窗口大小、位置、z层级改变,即窗口区域改变
+ {
+ if (!self->m_IsClosing && !IsIconic(hWnd)) //IsIconic 窗口是否是最小化(图标化)
+ {
+ // OnRectChanged()回调
+ self->OnRectChanged();
+ }
+ // WM_WINDOWPOSCHANGED 消息触发后且调用了DefWindowProc会接着发送WM_SIZE和WM_MOVE消息。在WM_WINDOWPOSCHANGED
+ // 中一起处理大小和位置改变更高效
+ /*
+ By default, the DefWindowProc function sends the WM_SIZE and WM_MOVE messages to the window.
+ The WM_SIZE and WM_MOVE messages are not sent if an application handles the WM_WINDOWPOSCHANGED
+ message without calling DefWindowProc. It is more efficient to perform any move or size change
+ processing during the WM_WINDOWPOSCHANGED message without calling DefWindowProc.
+ */
+ break;
+ }
+
+ case WM_SIZE: // 窗口大小改变
+ if (self->m_ShowMode == ShowMode::kShowMainWindow)
+ {
+ if (IsWindowVisible(hWnd))
+ {
+ bool nowMaximized = wParam == SIZE_MAXIMIZED;
+ if (s_IsMainWindowMaximized != nowMaximized)//更新s_IsMainWindowMaximized变量
+ s_IsMainWindowMaximized = nowMaximized;
+ }
+ }
+ break;
+
+ case WM_SETFOCUS: // 窗口获得焦点
+ return 0;
+
+ case WM_ACTIVATEAPP: // 编辑器的激活状态改变,所有的窗口都会获得这个消息,和WM_ACTIVATE不同,WM_ACTIVATE只是单个窗口被激活
+ // 发送一个 OnActivateApplication 消息
+ self->OnActivateApplication(wParam != FALSE);
+ break; // fall through to main window processing
+
+
+ case WM_NCACTIVATE: // non-client active 即非用户区被激活,用这个消息来刷新编辑器
+
+ break;
+
+ case WM_ACTIVATE: // 单个窗口的激活状态改变
+
+ return 0;
+
+ case WM_CLOSE: // 窗口关闭消息
+ {
+ bool isMainAndShouldExit = (self->m_ShowMode == kShowMainWindow && !self->m_CloseFromScriptDontShutdown);
+ if (isMainAndShouldExit)
+ {
+ //退出编辑器
+ }
+ else
+ {
+ // 关闭此窗口
+ ::SetMenu(hWnd, NULL); // 给窗口分配一个菜单,如果是NULL,这个窗口的菜单被删除
+ ::DestroyWindow(hWnd);
+ }
+ return 0;
+ }
+
+ case WM_DESTROY: // 窗口被销毁
+
+ return 0;
+
+ case WM_INITMENUPOPUP: //下拉菜单或子菜单将要被激活的时候
+
+ return 0;
+
+ case WM_ENTERSIZEMOVE: // 在大小、位置改变前,即当用户点击标题栏、边框
+
+ return 0;
+ }
+
+ if (self->m_ShowMode == ShowMode::kShowMainWindow)
+ {
+ LRESULT result;
+ if (ProcessMainWindowMessages(hWnd, message, wParam, lParam, result)) {
+ return result;
+ }
}
long flag = DefWindowProcW(hWnd, message, wParam, lParam);
@@ -140,18 +262,14 @@ bool ContainnerWindow::SetRenderContext()
}
-HWND ContainnerWindow::GetWindowHandle()
-{
- return m_Window;
-}
-
// 初始化,创建窗口
-void ContainnerWindow::Init(Rectf pixelRect, int showMode, const Vector2f& minSize, const Vector2f& maxSize)
+void ContainnerWindow::Init(Rectf pixelRect, int showMode, const Vector2f& minSize, const Vector2f& maxSize, std::string name)
{
// Aux windows are mac only. on windows they look just like normal utility windows.
if (showMode == kShowAuxWindow)
showMode = kShowUtility;
+ m_Name = name;
m_ShowMode = static_cast<ShowMode>(showMode);
m_IsClosing = false;
m_InMenuLoop = false;
@@ -289,3 +407,20 @@ void ContainnerWindow::SetIcon(LPCSTR iconName)
if (SendMessage(m_Window, WM_SETICON, ICON_SMALL, (LPARAM)hWindowIcon) != WM_SETICON)
log_error("icon error: " + to_string(GetLastError()));
}
+
+void ContainnerWindow::Close()
+{
+ log_info("Close window " + m_Name);
+
+ SendMessage(m_Window, WM_CLOSE, 0, 0);
+}
+
+void ContainnerWindow::OnRectChanged()
+{
+
+}
+
+void ContainnerWindow::OnActivateApplication(bool active)
+{
+
+}
diff --git a/Editor/GUI/EditorWindows.h b/Editor/GUI/EditorWindows.h
index 33d99c1..8a146e2 100644
--- a/Editor/GUI/EditorWindows.h
+++ b/Editor/GUI/EditorWindows.h
@@ -8,6 +8,8 @@
#include "Runtime/Utilities/Singleton.h"
#include "Editor/Utils/Log.h"
#include "Runtime/Graphics/OpenGL.h"
+#include "Runtime/Utilities/UtilMacros.h"
+#include "Editor/Utils/HelperFuncs.h"
class GUIWindow;
@@ -26,6 +28,10 @@ class WindowManager : Singleton<WindowManager>
public:
static Vector2f GetMousePosition();
static GUIWindow* GetMouseOverWindow();
+
+private:
+ static std::vector<GUIWindow*> s_GUIWindows;
+
};
// 一个containner window中有多个viewport
@@ -46,19 +52,27 @@ public:
ContainnerWindow();
~ContainnerWindow();
- void Init(Rectf size, int showMode, const Vector2f& minSize, const Vector2f& maxSize);
+ void Init(Rectf size, int showMode, const Vector2f& minSize, const Vector2f& maxSize, std::string name = "");
void SetTitle(const char* title);
void SetIcon(LPCSTR iconName);
void SetAsRenderContext();
void DoPaint();
+ void Close();
+
+ GET_SET(std::string, Name, m_Name);
- HWND GetWindowHandle();
- HDC GetDC() { return m_DC; }
- HGLRC GetRC() { return m_RC; }
+ GET(HWND, WindowHandle, m_Window);
+ GET(HDC, DC, m_DC);
+ GET(HGLRC, RC, m_RC);
+
+ void OnRectChanged();
+ void OnActivateApplication(bool active);
private:
bool SetRenderContext();
+ std::string m_Name;
+
HWND m_Window;
HDC m_DC;
HGLRC m_RC;
@@ -90,24 +104,24 @@ public:
SplitMode GetSplitMode() { return m_SplitMode; }
+ GET(SplitMode, SplitMode, m_SplitMode);
+
private:
SplitMode m_SplitMode;
GUIWindow* m_GUIWindow;
- std::vector<GUIWindow*> m_GUIWindows;
+ std::vector<GUIWindow*>* m_GUIWindows;
};
// GUI窗口,事件相应、绘制、布局的单元
-// 和unity不一样的地方在于一个GUIWindow只会有一个EditorWindow,即一个切页,因为在实际开发中我发现很少会频繁的切换切页,UE逻辑更像blender
-// 好处也在于比较好组织
class GUIWindow : public WindowBase
{
public:
static LRESULT CALLBACK GUIViewWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
static void RepaintAll();
- void Init();
+ void Init(std::string name = "");
void DoPaint();
void SetContainnerWindow(ContainnerWindow* wnd);
void Focus();
@@ -117,12 +131,16 @@ public:
void OnFocus();
void OnLostFocus();
- HDC GetDC() { return m_DC; }
- HGLRC GetRC() { return m_RC; }
+ GET_SET(std::string, Name, m_Name);
+ GET(HDC, DC, m_DC);
+ GET(HGLRC, RC, m_RC);
private:
+ void ProcessEventMessages(UINT message, WPARAM wParam, LPARAM lParam);
bool SetRenderContext();
+ std::string m_Name;
+
ContainnerWindow* m_ContainnerWindow;
HWND m_Handle;
HDC m_DC;
diff --git a/Editor/GUI/GUIWindow.cpp b/Editor/GUI/GUIWindow.cpp
index e13770e..1fe88ca 100644
--- a/Editor/GUI/GUIWindow.cpp
+++ b/Editor/GUI/GUIWindow.cpp
@@ -2,37 +2,170 @@
#include "WinUtils.h"
#include "Runtime/Graphics/OpenGL.h"
+static bool RedirectMouseWheel(HWND window, WPARAM wParam, LPARAM lParam)
+{
+ //// prevent reentrancy
+ //static bool s_ReentrancyCheck = false;
+ //if (s_ReentrancyCheck)
+ // return false;
+
+ //// 找到对应的子窗口
+ //GUIWindow* view = GetMouseOverWindow();
+ //if (!view)
+ // return false;
+
+ //// 将鼠标滚轮事件派发到子窗口上去
+ //// send mouse wheel to view under mouse
+ //s_ReentrancyCheck = true;
+ //::SendMessage(view->GetWindowHandle(), WM_MOUSEWHEEL, wParam, lParam);
+ //s_ReentrancyCheck = false;
+ return true;
+}
+
static PAINTSTRUCT ps;
LRESULT CALLBACK GUIWindow::GUIViewWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
- log_info("WndProc", "GUIWindow::GUIViewWndProc(), hWnd=" /*+ (long)hWnd*/);
-
- GUIWindow* wnd = (GUIWindow*)GetWindowLongPtr(hWnd, GWLP_USERDATA);
- if (!wnd)
+ GUIWindow* self = (GUIWindow*)GetWindowLongPtr(hWnd, GWLP_USERDATA);
+ if (!self)
{
log_warning("GUIWindow::GUIViewWndProc(), lParam为空");
return DefWindowProcW(hWnd, message, wParam, lParam);
}
+ //log_info("WndProc", "GUIWindow::GUIViewWndProc(), GUIWindow name is " + wnd->GetName());
+
switch (message)
{
+ case WM_ERASEBKGND:
+
+ return 1;
+
case WM_PAINT:
{
- log_info("WM_PAINT");
- wnd->SetAsRenderContext();
+ log_info("WndProc", "WM_PAINT");
+ self->SetAsRenderContext();
glEnable(GL_BLEND);
glClearColor(1,0,0,1);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glFlush();
- BeginPaint(wnd->m_Handle, &ps);
- EndPaint(wnd->m_Handle, &ps);
- UpdateWindow(wnd->m_Handle);
+ BeginPaint(self->m_Handle, &ps);
+ EndPaint(self->m_Handle, &ps);
+ UpdateWindow(self->m_Handle);
+ return 0;
+ }
+
+ case WM_MOUSEWHEEL: // 在这个子窗口滚动
+ {
+ // quick check if mouse is in our window
+ RECT rc;
+ POINT pt = { GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam) };
+ ::GetWindowRect(hWnd, &rc);
+ if (!::PtInRect(&rc, pt)) //如果不在这个子窗口范围内
+ {
+ // 重新派发到鼠标所在的那个窗口上去,这里其实就是之前很多windows用户反映的,明明是在某个窗口上滚动,但由于这个窗口没
+ // 被选中,导致滚动事件被触发在选中的那个窗口上
+ if (RedirectMouseWheel(hWnd, wParam, lParam))
+ return 0;
+ }
+
+ Assert(self->m_Handle != hWnd);
+ //self->ProcessEventMessages(message, wParam, lParam);
+ return 0;
+ }
+
+ case WM_CAPTURECHANGED:
+
+ return 0;
+
+ case WM_LBUTTONDOWN:
+ case WM_RBUTTONDOWN:
+ case WM_MBUTTONDOWN:
+ case WM_XBUTTONDOWN:
+ case WM_LBUTTONUP:
+ case WM_RBUTTONUP:
+ case WM_MBUTTONUP:
+ case WM_XBUTTONUP:
+ case WM_LBUTTONDBLCLK:
+ case WM_RBUTTONDBLCLK:
+ case WM_MBUTTONDBLCLK:
+ case WM_XBUTTONDBLCLK:
+ case WM_KEYUP:
+ case WM_KEYDOWN:
+ case WM_SYSKEYUP:
+ case WM_SYSKEYDOWN:
+ case WM_CHAR:
+ case WM_MOUSEMOVE:
+ switch (message)
+ {
+ case WM_LBUTTONDOWN:
+ case WM_RBUTTONDOWN:
+ case WM_MBUTTONDOWN:
+ case WM_XBUTTONDOWN:
+ {
+ SetFocus(hWnd);
+
+ if (/*processInput && !focused*/ true)
+ {
+ //focused = (GetFocus() == hWnd);
+
+ //if (focused)
+ //{
+ // BOOL handled = FALSE;
+ // ProcessInputMessage(hWnd, message, wParam, lParam, handled);
+ //}
+ }
+ }
+ break;
+ }
+
+ // 处理键盘输入,比如输入内容
+ self->ProcessEventMessages(message, wParam, lParam);
+
+ case WM_SETCURSOR:
+ // We're setting the cursor on every WM_MOUSEMOVE.
+ //We eat the WM_SETCURSOR event here so the OS doesn't conflict with us causing cursor garbage flicker.
+ return 1;
+
+ case WM_WINDOWPOSCHANGED:
+ {
+ // 切换opengl渲染目标,重绘用户区
+ //if (self->m_GfxWindow)
+ //{
+ // RECT rect;
+ // GetClientRect(hWnd, &rect);
+ // // 大小变动了
+ // if (self->m_GfxWindow->GetWidth() != rect.right || self->m_GfxWindow->GetHeight() != rect.bottom)
+ // {
+ // // 调用wglMakeCurrent()绑定用户区
+ // // GLWindow.cpp > Reshape
+ // self->m_GfxWindow->Reshape(rect.right, rect.bottom, self->m_DepthFormat, self->m_AntiAlias);
+ // // 请求重绘
+ // self->RequestRepaint();
+ // }
+
+ // // Update the scene so that scripts marked with [ExecuteInEditMode] are able to react to screen size changes
+ // GetApplication().SetSceneRepaintDirty();
+ //}
return 0;
}
+
+ case WM_SETFOCUS: //获得焦点
+ return 0;
+ case WM_KILLFOCUS: //失去焦点
+ return 0;
+
+ case WM_ACTIVATE:
+ break;
+
+ case WM_CLOSE:
+ delete self;
+ return 0;
+
+ case WM_INITMENUPOPUP: //下拉菜单或子菜单将要被激活的时候
+ return 0;
}
- long flag = DefWindowProcW(hWnd, message, wParam, lParam);
- return flag;
+ return DefWindowProcW(hWnd, message, wParam, lParam);
}
void GUIWindow::RepaintAll()
@@ -41,10 +174,17 @@ void GUIWindow::RepaintAll()
//////////////////////////////////////////////////////////////////////////////////////////
-void GUIWindow::Init()
+void GUIWindow::ProcessEventMessages(UINT message, WPARAM wParam, LPARAM lParam)
+{
+
+}
+
+void GUIWindow::Init(std::string name)
{
log_info("Init GUIWindow " /*+ (long)this*/);
+ m_Name = name;
+
DWORD windowStyle = WS_CHILD;
//DWORD windowStyle = WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_CLIPCHILDREN | WS_MAXIMIZEBOX | WS_MINIMIZEBOX;
DWORD extendedStyle = WS_EX_TOOLWINDOW;
diff --git a/Editor/GUI/MainWindow.cpp b/Editor/GUI/MainWindow.cpp
new file mode 100644
index 0000000..fe4e499
--- /dev/null
+++ b/Editor/GUI/MainWindow.cpp
@@ -0,0 +1,54 @@
+#include <string>
+
+#include "EditorWindows.h"
+#include "WinUtils.h"
+#include "Editor/Utils/HelperFuncs.h"
+#include "MenuManager.h"
+#include "Runtime/Utilities/Assert.h"
+
+bool ProcessMainWindowMessages(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam, LRESULT& result)
+{
+
+ //if(message!=WM_TIMER && message!=WM_SETCURSOR)
+ // printf_console("msg: %s\n", winutils::GetWindowsMessageInfo(message,wParam,lParam).c_str());
+
+ switch (message)
+ {
+
+ // Ok, this is fun: when we're using swap chains and no "regular window", often we don't get device loss events, even though it
+ // looks like the device is put into "lost" state. So whenever anything important changes (resolution, user logs in, etc.),
+ // try to manually reset the device and repaint everything. Yay!
+ case WM_SETTINGCHANGE:
+ // when switching to screen saver, it seems that the only way to detect that is by handling working area change message.
+ if (wParam == SPI_SETWORKAREA) {
+ }
+ break;
+ case WM_DISPLAYCHANGE:
+ case WM_DEVMODECHANGE:
+ case WM_USERCHANGED:
+ break;
+
+ case WM_COPYDATA:
+ {
+
+ }
+ break;
+ case WM_INITMENU: // 主窗口菜单栏初始化
+
+ return true;
+ case WM_COMMAND: // 点击菜单,点击加速键,点击子窗口按钮,点击工具栏按钮。这些时候都有command消息产生。
+
+ break;
+
+ case WM_ACTIVATEAPP:
+
+ break;
+
+ case WM_DESTROY:
+ ::PostQuitMessage(0);
+ break;
+ }
+
+ return false;
+}
+
diff --git a/Editor/GUI/WindowManager.cpp b/Editor/GUI/WindowManager.cpp
index add2066..533435f 100644
--- a/Editor/GUI/WindowManager.cpp
+++ b/Editor/GUI/WindowManager.cpp
@@ -1,6 +1,8 @@
#include "EditorWindows.h"
#include "WinUtils.h"
+std::vector<GUIWindow*> WindowManager::s_GUIWindows;
+
GUIWindow* WindowManager::GetMouseOverWindow()
{
return NULL;
diff --git a/Editor/IMGUI/GUIButton.cpp b/Editor/IMGUI/GUIButton.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Editor/IMGUI/GUIButton.cpp
diff --git a/Editor/Resource/ResourceManager.cpp b/Editor/Resource/ResourceManager.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Editor/Resource/ResourceManager.cpp
diff --git a/Editor/Resource/ResourceManager.h b/Editor/Resource/ResourceManager.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Editor/Resource/ResourceManager.h
diff --git a/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp b/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Editor/Scripting/EditorGUI/ContainerWindow.bind.cpp
diff --git a/Editor/Scripting/EditorGUI/EditorGUI.bind.cpp b/Editor/Scripting/EditorGUI/EditorGUI.bind.cpp
new file mode 100644
index 0000000..139597f
--- /dev/null
+++ b/Editor/Scripting/EditorGUI/EditorGUI.bind.cpp
@@ -0,0 +1,2 @@
+
+
diff --git a/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp b/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Editor/Scripting/EditorGUI/GUIWindow.bind.cpp
diff --git a/Editor/Scripting/EditorGUI/SplitWindow.bind.cpp b/Editor/Scripting/EditorGUI/SplitWindow.bind.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Editor/Scripting/EditorGUI/SplitWindow.bind.cpp
diff --git a/Editor/Scripting/EditorScripting.cpp b/Editor/Scripting/EditorScripting.cpp
new file mode 100644
index 0000000..7f1d90c
--- /dev/null
+++ b/Editor/Scripting/EditorScripting.cpp
@@ -0,0 +1,15 @@
+#include "EditorScripting.h"
+#include "Editor/Utils/Log.h"
+
+extern void SetupEditorGUI();
+extern void SetupEditorGUILayout();
+extern void SetupEditorIMGUI();
+extern void SetupEditorResource();
+
+bool SetupGameLabEditorScripting()
+{
+ log_info("Scripting", "SetupGameLabEditorScripting()");
+
+
+ return true;
+}
diff --git a/Editor/Scripting/EditorScripting.h b/Editor/Scripting/EditorScripting.h
new file mode 100644
index 0000000..8d32a9d
--- /dev/null
+++ b/Editor/Scripting/EditorScripting.h
@@ -0,0 +1,3 @@
+#pragma once
+
+bool SetupGameLabEditorScripting();
diff --git a/Editor/Scripting/IMGUI/GUIButton.bind.cpp b/Editor/Scripting/IMGUI/GUIButton.bind.cpp
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/Editor/Scripting/IMGUI/GUIButton.bind.cpp
@@ -0,0 +1 @@
+
diff --git a/Editor/Scripts/EditorMain.lua b/Editor/Scripts/EditorApplication.lua
index 2de656d..fb37d69 100644
--- a/Editor/Scripts/EditorMain.lua
+++ b/Editor/Scripts/EditorApplication.lua
@@ -7,11 +7,9 @@ function ViewEditor:OnGUI()
end
-function main()
- local view = Editor.ContainnerWindow.New(ViewEditor)
-
-end
+-- Editor
+local view = Editor.ContainnerWindow.New(ViewEditor)
+
-main() \ No newline at end of file
diff --git a/Editor/Utils/HelperFuncs.h b/Editor/Utils/HelperFuncs.h
index 2ee7932..626e48f 100644
--- a/Editor/Utils/HelperFuncs.h
+++ b/Editor/Utils/HelperFuncs.h
@@ -5,4 +5,7 @@
std::string to_string(const char* cstr);
-extern void PrintCallStack(); \ No newline at end of file
+extern void PrintCallStack();
+
+#define GET_X_LPARAM(lp) ((int)(short)LOWORD(lp))
+#define GET_Y_LPARAM(lp) ((int)(short)HIWORD(lp))
diff --git a/Projects/VisualStudio/Editor/Editor.vcxproj b/Projects/VisualStudio/Editor/Editor.vcxproj
index 6418165..1ae6d0d 100644
--- a/Projects/VisualStudio/Editor/Editor.vcxproj
+++ b/Projects/VisualStudio/Editor/Editor.vcxproj
@@ -146,12 +146,21 @@
<ClCompile Include="..\..\..\Editor\EditorManager.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\ContainnerWindow.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\Dock.cpp" />
+ <ClCompile Include="..\..\..\Editor\GUI\MainWindow.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\WindowManager.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\GUIWindow.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\MenuManager.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\SplitWindow.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\WindowUtil.cpp" />
<ClCompile Include="..\..\..\Editor\GUI\WinUtils.cpp" />
+ <ClCompile Include="..\..\..\Editor\IMGUI\GUIButton.cpp" />
+ <ClCompile Include="..\..\..\Editor\Resource\ResourceManager.cpp" />
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\ContainerWindow.bind.cpp" />
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\EditorGUI.bind.cpp" />
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\GUIWindow.bind.cpp" />
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\SplitWindow.bind.cpp" />
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorScripting.cpp" />
+ <ClCompile Include="..\..\..\Editor\Scripting\IMGUI\GUIButton.bind.cpp" />
<ClCompile Include="..\..\..\Editor\Utils\HelperFuncs.cpp" />
<ClCompile Include="..\..\..\Editor\Utils\Log.cpp" />
<ClCompile Include="..\..\..\Runtime\Math\Vector2.cpp" />
@@ -175,6 +184,8 @@
<ClInclude Include="..\..\..\Editor\GUI\MenuManager.h" />
<ClInclude Include="..\..\..\Editor\GUI\Rect.h" />
<ClInclude Include="..\..\..\Editor\GUI\WinUtils.h" />
+ <ClInclude Include="..\..\..\Editor\Resource\ResourceManager.h" />
+ <ClInclude Include="..\..\..\Editor\Scripting\EditorScripting.h" />
<ClInclude Include="..\..\..\Editor\Utils\HelperFuncs.h" />
<ClInclude Include="..\..\..\Editor\Utils\Log.h" />
<ClInclude Include="..\..\..\Runtime\Math\AABB.h" />
diff --git a/Projects/VisualStudio/Editor/Editor.vcxproj.filters b/Projects/VisualStudio/Editor/Editor.vcxproj.filters
index de41fde..5c0cfb5 100644
--- a/Projects/VisualStudio/Editor/Editor.vcxproj.filters
+++ b/Projects/VisualStudio/Editor/Editor.vcxproj.filters
@@ -31,6 +31,21 @@
<Filter Include="Editor\Scripting">
<UniqueIdentifier>{bfc8b148-db9d-403d-96b9-32c946e15402}</UniqueIdentifier>
</Filter>
+ <Filter Include="Editor\Resource">
+ <UniqueIdentifier>{5b8dba28-42d0-450a-98e1-ca4a65a4fc76}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Editor\Scripting\EditorGUI">
+ <UniqueIdentifier>{848489fc-f661-4b10-91f5-db1687293b95}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Editor\Scripting\EditorGUILayout">
+ <UniqueIdentifier>{87edd159-c171-4ccb-9094-9e5061c980d0}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Editor\Scripting\Resource">
+ <UniqueIdentifier>{476cedf1-fc4a-48a5-8782-bed16dabb86e}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Editor\Scripting\IMGUI">
+ <UniqueIdentifier>{337f607e-8c00-4e7b-a925-9380e08a30f0}</UniqueIdentifier>
+ </Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\Editor\GUI\Dock.cpp">
@@ -108,6 +123,33 @@
<ClCompile Include="..\..\..\Editor\Utils\HelperFuncs.cpp">
<Filter>Editor\Utils</Filter>
</ClCompile>
+ <ClCompile Include="..\..\..\Editor\GUI\MainWindow.cpp">
+ <Filter>Editor\GUI</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\Resource\ResourceManager.cpp">
+ <Filter>Editor\Resource</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\EditorGUI.bind.cpp">
+ <Filter>Editor\Scripting\EditorGUI</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorScripting.cpp">
+ <Filter>Editor\Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\ContainerWindow.bind.cpp">
+ <Filter>Editor\Scripting\EditorGUI</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\GUIWindow.bind.cpp">
+ <Filter>Editor\Scripting\EditorGUI</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\Scripting\EditorGUI\SplitWindow.bind.cpp">
+ <Filter>Editor\Scripting\EditorGUI</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\IMGUI\GUIButton.cpp">
+ <Filter>Editor\IMGUI</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Editor\Scripting\IMGUI\GUIButton.bind.cpp">
+ <Filter>Editor\Scripting\IMGUI</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\Editor\GUI\Dock.h">
@@ -218,6 +260,12 @@
<ClInclude Include="..\..\..\Editor\GUI\MenuManager.h">
<Filter>Editor\GUI</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\Editor\Resource\ResourceManager.h">
+ <Filter>Editor\Resource</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Editor\Scripting\EditorScripting.h">
+ <Filter>Editor\Scripting</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\..\..\Runtime\Scripting\LuaBindClass.inc">
diff --git a/Projects/VisualStudio/Runtime/Runtime.vcxproj b/Projects/VisualStudio/Runtime/Runtime.vcxproj
index c0179de..5ce1d52 100644
--- a/Projects/VisualStudio/Runtime/Runtime.vcxproj
+++ b/Projects/VisualStudio/Runtime/Runtime.vcxproj
@@ -50,20 +50,20 @@
<ClInclude Include="..\..\..\Runtime\Physics\Rigidbody.h" />
<ClInclude Include="..\..\..\Runtime\Profiler\FrameStats.h" />
<ClInclude Include="..\..\..\Runtime\Profiler\Profiler.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_cfunctions.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_class.hpp" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_config.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_enum.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_globalstate.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_internal.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_memberref.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_ref.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_reftable.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_state.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_utility.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_vm.h" />
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_watchdog.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBind.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindCFunctions.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindClass.hpp" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindConfig.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindEnum.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindGlobalState.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindInternal.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindMemberRef.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindRef.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindRefTable.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindState.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindUtility.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindVM.h" />
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindWatchDog.h" />
<ClInclude Include="..\..\..\Runtime\Shaders\ShaderChannel.h" />
<ClInclude Include="..\..\..\Runtime\Shaders\ShaderDefine.h" />
<ClInclude Include="..\..\..\Runtime\Shaders\ShaderUniform.h" />
@@ -107,15 +107,15 @@
<ClCompile Include="..\..\..\Runtime\Mesh\Font.cpp" />
<ClCompile Include="..\..\..\Runtime\Mesh\Mesh.cpp" />
<ClCompile Include="..\..\..\Runtime\Physics\Scripting\wrap_Joint.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_cfunctions.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_class.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_enum.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_memberref.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_ref.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_reftable.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_state.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_vm.cpp" />
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_watchdog.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindCFunctions.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindClass.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindEnum.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindMemberRef.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindRef.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindRefTable.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindState.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindVM.cpp" />
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindWatchDog.cpp" />
<ClCompile Include="..\..\..\Runtime\Shaders\ShaderDefine.cpp" />
<ClCompile Include="..\..\..\Runtime\Threads\Mutex.cpp" />
<ClCompile Include="..\..\..\Runtime\Threads\Semaphore.cpp" />
@@ -134,8 +134,8 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
- <None Include="..\..\..\Runtime\Scripting\luax_class.inc" />
- <None Include="..\..\..\Runtime\Scripting\luax_state.inc" />
+ <None Include="..\..\..\Runtime\Scripting\LuaBindClass.inc" />
+ <None Include="..\..\..\Runtime\Scripting\LuaBindState.inc" />
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>15.0</VCProjectVersion>
diff --git a/Projects/VisualStudio/Runtime/Runtime.vcxproj.filters b/Projects/VisualStudio/Runtime/Runtime.vcxproj.filters
index 018dac5..8de44e2 100644
--- a/Projects/VisualStudio/Runtime/Runtime.vcxproj.filters
+++ b/Projects/VisualStudio/Runtime/Runtime.vcxproj.filters
@@ -135,48 +135,6 @@
<ClInclude Include="..\..\..\Runtime\Graphics\PolyLine.h">
<Filter>Graphics</Filter>
</ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_cfunctions.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_class.hpp">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_config.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_enum.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_globalstate.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_internal.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_memberref.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_ref.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_reftable.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_state.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_utility.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_vm.h">
- <Filter>Scripting</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\Runtime\Scripting\luax_watchdog.h">
- <Filter>Scripting</Filter>
- </ClInclude>
<ClInclude Include="..\..\..\Runtime\FileSystem\Unzip.h">
<Filter>FileSystem</Filter>
</ClInclude>
@@ -231,6 +189,48 @@
<ClInclude Include="..\..\..\Runtime\ImGUI\GUILabel.h">
<Filter>ImGUI</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBind.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindCFunctions.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindClass.hpp">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindConfig.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindEnum.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindGlobalState.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindInternal.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindMemberRef.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindRef.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindRefTable.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindState.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindUtility.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindVM.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\Runtime\Scripting\LuaBindWatchDog.h">
+ <Filter>Scripting</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\Runtime\Mesh\Mesh.cpp">
@@ -297,33 +297,6 @@
<ClCompile Include="..\..\..\Runtime\Graphics\PolyLine.cpp">
<Filter>Graphics</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_cfunctions.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_class.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_enum.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_memberref.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_ref.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_reftable.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_state.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_vm.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\Runtime\Scripting\luax_watchdog.cpp">
- <Filter>Scripting</Filter>
- </ClCompile>
<ClCompile Include="..\..\..\Runtime\FileSystem\Unzip.cpp">
<Filter>FileSystem</Filter>
</ClCompile>
@@ -351,12 +324,39 @@
<ClCompile Include="..\..\..\Runtime\ImGUI\GUILabel.cpp">
<Filter>ImGUI</Filter>
</ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindCFunctions.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindClass.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindEnum.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindMemberRef.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindRef.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindRefTable.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindState.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindVM.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\Runtime\Scripting\LuaBindWatchDog.cpp">
+ <Filter>Scripting</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
- <None Include="..\..\..\Runtime\Scripting\luax_class.inc">
+ <None Include="..\..\..\Runtime\Scripting\LuaBindClass.inc">
<Filter>Scripting</Filter>
</None>
- <None Include="..\..\..\Runtime\Scripting\luax_state.inc">
+ <None Include="..\..\..\Runtime\Scripting\LuaBindState.inc">
<Filter>Scripting</Filter>
</None>
</ItemGroup>