]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/region.cpp
corrected warnings when compiling with -Wall -W
[wxWidgets.git] / src / mac / region.cpp
index afe12ce60332d74ceabf9d43c6f806b81230d09c..16d033004c1cb9ce278570dd0b1b27cc90ececd6 100644 (file)
 
 class WXDLLEXPORT wxRegionRefData : public wxGDIRefData {
 public:
-       wxRegionRefData()
-       {
-               m_macRgn = NewRgn() ;
-       }
+    wxRegionRefData()
+    {
+        m_macRgn = NewRgn() ;
+    }
 
-       wxRegionRefData(const wxRegionRefData& data)
-       {
-               m_macRgn = NewRgn() ;
+    wxRegionRefData(const wxRegionRefData& data)
+        : wxGDIRefData()
+    {
+        m_macRgn = NewRgn() ;
         CopyRgn( data.m_macRgn , m_macRgn ) ;
-       }
+    }
 
-       ~wxRegionRefData()
-       {
+    ~wxRegionRefData()
+    {
         DisposeRgn( m_macRgn ) ;
-       }
-       RgnHandle       m_macRgn ;
+    }
+    RgnHandle  m_macRgn ;
 };
 
 #define M_REGION (((wxRegionRefData*)m_refData)->m_macRgn)
@@ -63,25 +64,25 @@ wxRegion::wxRegion()
 wxRegion::wxRegion(WXHRGN hRegion )
 {
     m_refData = new wxRegionRefData;
-    CopyRgn( hRegion , M_REGION ) ;
+    CopyRgn( (RgnHandle) hRegion , (RgnHandle) M_REGION ) ;
 }
 
 wxRegion::wxRegion(long x, long y, long w, long h)
 {
     m_refData = new wxRegionRefData;
-    SetRectRgn( M_REGION , x , y , x+w , y+h ) ;
+    SetRectRgn( (RgnHandle) M_REGION , x , y , x+w , y+h ) ;
 }
 
 wxRegion::wxRegion(const wxPoint& topLeft, const wxPoint& bottomRight)
 {
     m_refData = new wxRegionRefData;
-    SetRectRgn( M_REGION , topLeft.x , topLeft.y , bottomRight.x , bottomRight.y ) ;
+    SetRectRgn( (RgnHandle) M_REGION , topLeft.x , topLeft.y , bottomRight.x , bottomRight.y ) ;
 }
 
 wxRegion::wxRegion(const wxRect& rect)
 {
     m_refData = new wxRegionRefData;
-    SetRectRgn( M_REGION , rect.x , rect.y , rect.x+rect.width , rect.y+rect.height ) ;
+    SetRectRgn( (RgnHandle) M_REGION , rect.x , rect.y , rect.x+rect.width , rect.y+rect.height ) ;
 }
 
 /*!
@@ -194,7 +195,7 @@ bool wxRegion::Combine(const wxRect& rect, wxRegionOp op)
 //-----------------------------------------------------------------------------
 
 // Outer bounds of region
-void wxRegion::GetBox(long& x, long& y, long&w, long &h) const
+void wxRegion::GetBox(wxCoord& x, wxCoord& y, wxCoord& w, wxCoord& h) const
 {
        if (m_refData) 
        {
@@ -213,7 +214,7 @@ void wxRegion::GetBox(long& x, long& y, long&w, long &h) const
 
 wxRect wxRegion::GetBox() const
 {
-    long x, y, w, h;
+    wxCoord x, y, w, h;
     GetBox(x, y, w, h);
     return wxRect(x, y, w, h);
 }
@@ -286,15 +287,16 @@ wxRegionContain wxRegion::Contains(const wxRect& rect) const
 }
 
 ///////////////////////////////////////////////////////////////////////////////
-//                                                                                                                                                      //
-//                                                        wxRegionIterator                                                              //
-//                                                                                                                                                      //
+//                                                                           //
+//                               wxRegionIterator                            //
+//                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
 /*!
  * Initialize empty iterator
  */
-wxRegionIterator::wxRegionIterator() : m_current(0), m_numRects(0), m_rects(NULL)
+wxRegionIterator::wxRegionIterator()
+    : m_current(0), m_numRects(0), m_rects(NULL)
 {
 }
 
@@ -304,6 +306,22 @@ wxRegionIterator::~wxRegionIterator()
         delete[] m_rects;
 }
 
+wxRegionIterator::wxRegionIterator(const wxRegionIterator& iterator)
+    : wxObject()
+    , m_current(iterator.m_current)
+    , m_numRects(iterator.m_numRects)
+    , m_rects(iterator.m_rects)
+{
+}
+
+wxRegionIterator& wxRegionIterator::operator=(const wxRegionIterator& iterator)
+{
+    m_current  = iterator.m_current;
+    m_numRects = iterator.m_numRects;
+    m_rects    = iterator.m_rects;
+    return *this;
+}
+
 /*!
  * Initialize iterator for region
  */
@@ -311,7 +329,7 @@ wxRegionIterator::wxRegionIterator(const wxRegion& region)
 {
     m_rects = NULL;
 
-       Reset(region);
+    Reset(region);
 }
 
 /*!
@@ -347,20 +365,25 @@ void wxRegionIterator::Reset(const wxRegion& region)
  * Increment iterator. The rectangle returned is the one after the
  * incrementation.
  */
-void wxRegionIterator::operator ++ ()
+wxRegionIterator& wxRegionIterator::operator ++ ()
 {
-       if (m_current < m_numRects)
-               ++m_current;
+    if (m_current < m_numRects)
+        ++m_current;
+    return *this;
 }
 
 /*!
  * Increment iterator. The rectangle returned is the one before the
  * incrementation.
  */
-void wxRegionIterator::operator ++ (int)
+wxRegionIterator wxRegionIterator::operator ++ (int)
 {
-       if (m_current < m_numRects)
-               ++m_current;
+    wxRegionIterator previous(*this);
+
+    if (m_current < m_numRects)
+        ++m_current;
+
+    return previous;
 }
 
 long wxRegionIterator::GetX() const