]> git.saurik.com Git - wxWidgets.git/commitdiff
added WinStruct<>
authorVadim Zeitlin <vadim@wxwidgets.org>
Sun, 11 May 2003 22:43:28 +0000 (22:43 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sun, 11 May 2003 22:43:28 +0000 (22:43 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/msw/private.h

index d1f5d61b8c36ffd35ff67347bd8a3e05b20c4974..31a435f2a4c98f0666e0f51b555edb65944fa383 100644 (file)
@@ -330,6 +330,19 @@ inline RECT wxGetClientRect(HWND hwnd)
 // small helper classes
 // ---------------------------------------------------------------------------
 
 // small helper classes
 // ---------------------------------------------------------------------------
 
+// a template to make initializing Windows styructs less painful: it zeroes all
+// the struct fields and also sets cbSize member to the correct value (and so
+// can be only used with structures which have this member...)
+template <class T>
+struct WinStruct : public T
+{
+    WinStruct()
+    {
+        ::ZeroMemory(this, cbSize = sizeof(T));
+    }
+};
+
+
 // create an instance of this class and use it as the HDC for screen, will
 // automatically release the DC going out of scope
 class ScreenHDC
 // create an instance of this class and use it as the HDC for screen, will
 // automatically release the DC going out of scope
 class ScreenHDC