X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/744c594651e4456776f1428a58db11a3e188ce6c..f0facad09d3633455d338cba9036df6922c98cb4:/src/os2/region.cpp diff --git a/src/os2/region.cpp b/src/os2/region.cpp index 0bf37cdcc3..90c7306c8d 100644 --- a/src/os2/region.cpp +++ b/src/os2/region.cpp @@ -70,7 +70,7 @@ public: } } - ~wxRegionRefData() + virtual ~wxRegionRefData() { ::GpiDestroyRegion(m_hPS, m_hRegion); } @@ -151,10 +151,8 @@ wxRegion::wxRegion( ); } // end of wxRegion::wxRegion -wxRegion::wxRegion( - const wxPoint& rTopLeft -, const wxPoint& rBottomRight -) +wxRegion::wxRegion(const wxPoint& rTopLeft, + const wxPoint& rBottomRight) { RECTL vRect; SIZEL vSize = {0, 0}; @@ -188,9 +186,7 @@ wxRegion::wxRegion( ); } // end of wxRegion::wxRegion -wxRegion::wxRegion( - const wxRect& rRect -) +wxRegion::wxRegion(const wxRect& rRect) { RECTL vRect; SIZEL vSize = {0, 0}; @@ -225,6 +221,11 @@ wxRegion::wxRegion( ); } // end of wxRegion::wxRegion +wxRegion::wxRegion(size_t n, const wxPoint *points, wxPolygonFillMode WXUNUSED(fillStyle)) +{ + // TO DO +} + // // Destroy the region. // @@ -232,12 +233,12 @@ wxRegion::~wxRegion() { } // end of wxRegion::~wxRegion -wxObjectRefData *wxRegion::CreateData() const +wxGDIRefData *wxRegion::CreateGDIRefData() const { return new wxRegionRefData; } -wxObjectRefData *wxRegion::CloneData(const wxObjectRefData *data) const +wxGDIRefData *wxRegion::CloneGDIRefData(const wxGDIRefData *data) const { return new wxRegionRefData(*(wxRegionRefData *)data); } @@ -246,7 +247,7 @@ wxObjectRefData *wxRegion::CloneData(const wxObjectRefData *data) const //# Modify region //----------------------------------------------------------------------------- -bool wxRegion::Offset( wxCoord x, wxCoord y ) +bool wxRegion::DoOffset( wxCoord x, wxCoord y ) { if ( !x && !y ) { @@ -259,7 +260,7 @@ bool wxRegion::Offset( wxCoord x, wxCoord y ) #if 0 if ( ::OffsetRgn(GetHrgn(), x, y) == ERROR ) { - wxLogLastError(_T("OffsetRgn")); + wxLogLastError(wxT("OffsetRgn")); return false; } @@ -275,24 +276,10 @@ void wxRegion::Clear() UnRef(); } // end of wxRegion::Clear -// -// Combine rectangle (x, y, w, h) with this. -// -bool wxRegion::Combine( - wxCoord x -, wxCoord y -, wxCoord vWidth -, wxCoord vHeight -, wxRegionOp eOp -) -{ - return Combine(wxRegion(x, y, vWidth, vHeight), eOp); -} // end of wxRegion::Combine - // // Union region with this. // -bool wxRegion::Combine( const wxRegion& rRegion, wxRegionOp eOp ) +bool wxRegion::DoCombine( const wxRegion& rRegion, wxRegionOp eOp ) { // // We can't use the API functions if we don't have a valid region handle @@ -310,7 +297,7 @@ bool wxRegion::Combine( const wxRegion& rRegion, wxRegionOp eOp ) break; default: - wxFAIL_MSG( _T("unknown region operation") ); + wxFAIL_MSG( wxT("unknown region operation") ); // fall through case wxRGN_AND: @@ -357,27 +344,19 @@ bool wxRegion::Combine( const wxRegion& rRegion, wxRegionOp eOp ) return true; } // end of wxRegion::Combine -bool wxRegion::Combine( - const wxRect& rRect -, wxRegionOp eOp -) -{ - return Combine( rRect.GetLeft() - ,rRect.GetTop() - ,rRect.GetWidth() - ,rRect.GetHeight() - ,eOp - ); -} // end of wxRegion::Combine - //----------------------------------------------------------------------------- //# Information on region //----------------------------------------------------------------------------- +bool wxRegion::DoIsEqual(const wxRegion& WXUNUSED(region)) const +{ + return false; +} + // // Outer bounds of region // -void wxRegion::GetBox( +bool wxRegion::DoGetBox( wxCoord& x , wxCoord& y , wxCoord& vWidth @@ -397,24 +376,19 @@ void wxRegion::GetBox( y = vRect.yBottom; vWidth = vRect.xRight - vRect.xLeft; vHeight = vRect.yTop - vRect.yBottom; + return true; } else { x = y = vWidth = vHeight = 0L; + return false; } } // end of wxRegion::GetBox -wxRect wxRegion::GetBox() const -{ - wxCoord x, y, w, h; - GetBox(x, y, w, h); - return wxRect(x, y, w, h); -} - // // Is region empty? // -bool wxRegion::Empty() const +bool wxRegion::IsEmpty() const { wxCoord x; wxCoord y; @@ -430,7 +404,7 @@ bool wxRegion::Empty() const ,vHeight ); return ((vWidth == 0) && (vHeight == 0)); -} // end of wxRegion::Empty +} // end of wxRegion::IsEmpty //----------------------------------------------------------------------------- // Tests @@ -438,9 +412,9 @@ bool wxRegion::Empty() const // // Does the region contain the point pt? // -wxRegionContain wxRegion::Contains( const wxPoint& rPoint ) const +wxRegionContain wxRegion::DoContainsPoint( wxCoord x, wxCoord y ) const { - POINTL vPoint = { rPoint.x, rPoint.y }; + POINTL vPoint = { x, y }; if (!m_refData) return wxOutRegion; @@ -448,7 +422,7 @@ wxRegionContain wxRegion::Contains( const wxPoint& rPoint ) const LONG lInside = ::GpiPtInRegion( ((wxRegionRefData*)m_refData)->m_hPS, M_REGION, &vPoint - ); + ); if (lInside == PRGN_INSIDE) return wxInRegion; else @@ -458,23 +432,20 @@ wxRegionContain wxRegion::Contains( const wxPoint& rPoint ) const // // Does the region contain the rectangle (x, y, w, h)? // -wxRegionContain wxRegion::Contains( wxCoord x, - wxCoord y, - wxCoord vWidth, - wxCoord vHeight ) const +wxRegionContain wxRegion::DoContainsRect(const wxRect& rect) const { if (!m_refData) return wxOutRegion; RECTL vRect; - vRect.xLeft = x; - vRect.xRight = x + vWidth; - vRect.yTop = y + vHeight; - vRect.yBottom = y; + vRect.xLeft = rect.x; + vRect.xRight = rect.x + rect.width; + vRect.yTop = rect.y + rect.height; + vRect.yBottom = rect.y; LONG lInside = ::GpiRectInRegion( ((wxRegionRefData*)m_refData)->m_hPS, M_REGION, - &vRect + &vRect ); switch (lInside) { @@ -483,6 +454,7 @@ wxRegionContain wxRegion::Contains( wxCoord x, case RRGN_ERROR : default : return wxOutRegion; } + } // end of wxRegion::Contains //