]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/region.cpp
no message
[wxWidgets.git] / src / msw / region.cpp
index b5e7227e1ad3951a61ba4ce5658f639f280749a1..5e7fae2b07a407faf42d305b044b63c6671dfa40 100644 (file)
@@ -1,7 +1,8 @@
 /////////////////////////////////////////////////////////////////////////////
-// File:      region.cpp
+// Name:        msw/region.cpp
 // Purpose:   Region handling for wxWindows/X11
 // Author:    Markus Holzem
+// Modified by:
 // Created:   Fri Oct 24 10:46:34 MET 1997
 // RCS-ID:       $Id$
 // Copyright: (c) 1997 Julian Smart and Markus Holzem
@@ -12,6 +13,7 @@
 #pragma implementation "region.h"
 #endif
 
+// For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
 #ifdef __BORLANDC__
@@ -36,6 +38,7 @@ class WXDLLEXPORT wxRegionRefData : public wxGDIRefData {
 public:
        wxRegionRefData(void)
        {
+        m_region = 0;
        }
 
        wxRegionRefData(const wxRegionRefData& data)
@@ -77,6 +80,12 @@ wxRegion::wxRegion(void)
     M_REGION = ::CreateRectRgn(0, 0, 0, 0);
 }
 
+wxRegion::wxRegion(WXHRGN hRegion)
+{
+    m_refData = new wxRegionRefData;
+    M_REGION = (HRGN) hRegion;
+}
+
 wxRegion::wxRegion(long x, long y, long w, long h)
 {
     m_refData = new wxRegionRefData;
@@ -335,7 +344,7 @@ void wxRegionIterator::Reset(const wxRegion& region)
         m_rects = new wxRect[header->nCount];
 
         RECT* rect = (RECT*) (rgnData + sizeof(RGNDATAHEADER)) ;
-        uint i;
+        size_t i;
         for (i = 0; i < header->nCount; i++)
         {
             m_rects[i] = wxRect(rect->left, rect->top,