summaryrefslogtreecommitdiff
path: root/Editor/GUI/GUIWindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Editor/GUI/GUIWindow.cpp')
-rw-r--r--Editor/GUI/GUIWindow.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/Editor/GUI/GUIWindow.cpp b/Editor/GUI/GUIWindow.cpp
index 2127232..fb23a59 100644
--- a/Editor/GUI/GUIWindow.cpp
+++ b/Editor/GUI/GUIWindow.cpp
@@ -45,7 +45,7 @@ LRESULT CALLBACK GUIWindow::GUIViewWndProc(HWND hWnd, UINT message, WPARAM wPara
{
log_info("WndProc", "WM_PAINT");
self->SetAsRenderContext();
-
+ self->OnPaint();
BeginPaint(self->m_Handle, &ps);
EndPaint(self->m_Handle, &ps);
UpdateWindow(self->m_Handle);
@@ -150,6 +150,7 @@ LRESULT CALLBACK GUIWindow::GUIViewWndProc(HWND hWnd, UINT message, WPARAM wPara
}
case WM_SETFOCUS: //获得焦点
+ self->OnFocus();
return 0;
case WM_KILLFOCUS: //失去焦点
return 0;
@@ -176,7 +177,7 @@ void GUIWindow::RepaintAll()
GUIWindow::GUIWindow(LuaBind::VM* vm)
: LuaBind::NativeClass<GUIWindow>(vm)
- , m_Instance()
+ , m_Script()
{
}
@@ -313,12 +314,18 @@ void GUIWindow::DoPaint()
void GUIWindow::OnFocus()
{
+ InvokeLuaCallback(m_Script, "OnFocus");
}
void GUIWindow::OnLostFocus()
{
}
+void GUIWindow::OnPaint()
+{
+ InvokeLuaCallback(m_Script, "OnPaint");
+}
+
void GUIWindow::SetPosition(Rectf position)
{
log_info("GUIWindow::SetPosition()");