]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/private.h
Add wxABI_VERSION wrappers
[wxWidgets.git] / include / wx / msw / private.h
index 883ad9932ca162845ec516a2e89c12ceb48c0cfa..9489b2fd68c776e42eb7008efc14d4f30b721f8b 100644 (file)
@@ -193,6 +193,21 @@ extern LONG APIENTRY _EXPORT
     #define wxGetOSFHandle(fd) ((HANDLE)_get_osfhandle(fd))
 #endif
 
+// close the handle in the class dtor
+class AutoHANDLE
+{
+public:
+    wxEXPLICIT AutoHANDLE(HANDLE handle) : m_handle(handle) { }
+
+    bool IsOk() const { return m_handle != INVALID_HANDLE_VALUE; }
+    operator HANDLE() const { return m_handle; }
+
+    ~AutoHANDLE() { if ( IsOk() ) ::CloseHandle(m_handle); }
+
+protected:
+    HANDLE m_handle;
+};
+
 #if wxUSE_GUI
 
 #include <wx/gdicmn.h>
@@ -736,7 +751,7 @@ enum wxWinVersion
     wxWinVersion_NT6 = 0x0600
 };
 
-extern wxWinVersion wxGetWinVersion();
+WXDLLIMPEXP_BASE wxWinVersion wxGetWinVersion();
 
 #if wxUSE_GUI