aboutsummaryrefslogtreecommitdiff
path: root/Src/Wasabi/api/wnd/wndclass/oswnd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Wasabi/api/wnd/wndclass/oswnd.cpp')
-rw-r--r--Src/Wasabi/api/wnd/wndclass/oswnd.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/Src/Wasabi/api/wnd/wndclass/oswnd.cpp b/Src/Wasabi/api/wnd/wndclass/oswnd.cpp
new file mode 100644
index 00000000..021327ab
--- /dev/null
+++ b/Src/Wasabi/api/wnd/wndclass/oswnd.cpp
@@ -0,0 +1,32 @@
+#include <precomp.h>
+#include "oswnd.h"
+
+int OSWnd::onInit()
+{
+ OSWND_PARENT::onInit();
+ onSetVisible(isVisible());
+ return 1;
+}
+
+void OSWnd::onSetVisible(int show)
+{
+#ifdef WIN32
+ ShowWindow(getOSHandle(), show ? SW_NORMAL : SW_HIDE);
+#endif
+}
+
+int OSWnd::onResize()
+{
+ OSWND_PARENT::onResize();
+#ifdef WIN32
+ if (getOSHandle())
+ {
+ RECT r;
+ getClientRect(&r);
+ SetWindowPos(getOSHandle(), NULL, r.left, r.top, r.right - r.left, r.bottom - r.top, SWP_NOZORDER | SWP_NOACTIVATE);
+ }
+#endif
+ return 1;
+}
+
+