diff options
Diffstat (limited to 'Editor/GUI/GUIWindow.h')
-rw-r--r-- | Editor/GUI/GUIWindow.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Editor/GUI/GUIWindow.h b/Editor/GUI/GUIWindow.h index aed38d9..bbf2687 100644 --- a/Editor/GUI/GUIWindow.h +++ b/Editor/GUI/GUIWindow.h @@ -14,6 +14,25 @@ #include "Runtime/Utilities/Exception.h" #include "WindowUtil.h" +class GUIWindow; + +class GUIWindowProxy : public LuaObjectProxy +{ +public: + GUIWindow * owner; + LuaBind::MemberRef script; + + GUIWindowProxy() {} + GUIWindowProxy(GUIWindow *owner, LuaBind::MemberRef script); + + void DoGUI(); + void DoClean(); + +private: + void OnGUI(LuaBind::State& state); + +}; + // GUI窗口,事件相应、绘制、布局的单元 class GUIWindow : public WindowBase @@ -47,6 +66,7 @@ private: std::string m_Name; LuaBind::MemberRef m_Script; + GUIWindowProxy m_Instance; BOOL m_MouseTracking; DWORD m_MouseHoverTime; |