]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/region.cpp
made SetFirstItem() work again (patch 1445170)
[wxWidgets.git] / src / os2 / region.cpp
index c56301d723e90c333add2942d9572992a2d877d4..039534285ef9c0f49a848591f6df0b4ff355deea 100644 (file)
@@ -39,6 +39,7 @@ public:
         RGNRECT                     vRgnData;
         PRECTL                      pRect = NULL;
 
+        vRgnData.ulDirection = RECTDIR_LFRT_TOPBOT;
         if (::GpiQueryRegionRects( rData.m_hPS      // Pres space
                                   ,rData.m_hRegion  // Handle of region to query
                                   ,NULL             // Return all RECTs
@@ -438,7 +439,6 @@ wxRegionContain wxRegion::Contains(
 , wxCoord                           y
 ) const
 {
-    bool                            bOK = FALSE;
     POINTL                          vPoint;
 
     vPoint.x = x;
@@ -554,6 +554,7 @@ void wxRegion::SetPS(
     RGNRECT                     vRgnData;
     PRECTL                      pRect = NULL;
 
+    vRgnData.ulDirection = RECTDIR_LFRT_TOPBOT;
     if (::GpiQueryRegionRects( ((wxRegionRefData*)m_refData)->m_hPS
                               ,((wxRegionRefData*)m_refData)->m_hRegion
                               ,NULL
@@ -629,6 +630,7 @@ void wxRegionIterator::Reset(
 )
 {
     m_lCurrent = 0;
+    m_lNumRects = 0;
     m_vRegion  = rRegion;
 
     if (m_pRects)
@@ -643,6 +645,7 @@ void wxRegionIterator::Reset(
         RGNRECT                     vRgnData;
         PRECTL                      pRect;
 
+        vRgnData.ulDirection = RECTDIR_LFRT_TOPBOT;
         if (::GpiQueryRegionRects( ((wxRegionRefData*)rRegion.m_refData)->m_hPS     // Pres space
                                   ,((wxRegionRefData*)rRegion.m_refData)->m_hRegion // Handle of region to query
                                   ,NULL                                             // Return all RECTs
@@ -662,10 +665,12 @@ void wxRegionIterator::Reset(
                                       ,pRect                                            // Will contain the actual RECTS
                                      ))
             {
+#if 0
                 M_REGION = ::GpiCreateRegion( ((wxRegionRefData*)rRegion.m_refData)->m_hPS
                                              ,vRgnData.crcReturned
                                              ,pRect
                                             );
+#endif
                 for( LONG i = 0; i < m_lNumRects; i++)
                 {
                     m_pRects[i].x      = pRect[i].xLeft;
@@ -673,7 +678,9 @@ void wxRegionIterator::Reset(
                     m_pRects[i].y      = pRect[i].yBottom;
                     m_pRects[i].height = pRect[i].yTop - pRect[i].yBottom;
                 }
+#if 0
                 ((wxRegionRefData*)m_refData)->m_hPS = ((wxRegionRefData*)rRegion.m_refData)->m_hPS;
+#endif
             }
         }
     }