X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1c067fe3c1e752658c63b4d556eb6a5468213860..e8a8d0dc2ddfae4aa8d5fd832f7644a32773aac9:/src/os2/dc.cpp diff --git a/src/os2/dc.cpp b/src/os2/dc.cpp index ee3e233a89..2347161e0e 100644 --- a/src/os2/dc.cpp +++ b/src/os2/dc.cpp @@ -23,19 +23,16 @@ #include "wx/log.h" #include "wx/icon.h" #include "wx/msgdlg.h" -#if wxUSE_STATUSBAR + #include "wx/dcprint.h" #include "wx/statusbr.h" + #include "wx/module.h" #endif -#endif - -#include "wx/module.h" -#include "wx/dcprint.h" #include #include "wx/os2/private.h" - IMPLEMENT_ABSTRACT_CLASS(wxDC, wxObject) +IMPLEMENT_ABSTRACT_CLASS(wxDC, wxObject) // // wxWidgets uses the Microsoft convention that the origin is the UPPER left. @@ -353,11 +350,8 @@ wxDC::wxDC(void) m_hPS = NULL; m_bIsPaintTime = false; // True at Paint Time - wxColour vColor( wxT("BLACK") ); - m_pen.SetColour(vColor); - - vColor.Set( wxT("WHITE") ); - m_brush.SetColour(vColor); + m_pen.SetColour(*wxBLACK); + m_brush.SetColour(*wxWHITE); } // end of wxDC::wxDC @@ -853,47 +847,44 @@ void wxDC::DoDrawPoint( ); } // end of wxDC::DoDrawPoint -void wxDC::DoDrawPolygon( - int n -, wxPoint vPoints[] -, wxCoord vXoffset -, wxCoord vYoffset -, int nFillStyle -) +void wxDC::DoDrawPolygon( int n, + wxPoint vPoints[], + wxCoord vXoffset, + wxCoord vYoffset, + int nFillStyle ) { - ULONG ulCount = 1; // Number of polygons. - POLYGON vPlgn; // polygon. - ULONG flOptions = 0L; // Drawing options. - -////////////////////////////////////////////////////////////////////////////// -// This contains fields of option bits... to draw boundary lines as well as -// the area interior. -// -// Drawing boundary lines: -// POLYGON_NOBOUNDARY Does not draw boundary lines. -// POLYGON_BOUNDARY Draws boundary lines (the default). -// -// Construction of the area interior: -// POLYGON_ALTERNATE Constructs interior in alternate mode -// (the default). -// POLYGON_WINDING Constructs interior in winding mode. -////////////////////////////////////////////////////////////////////////////// - - ULONG flModel = 0L; // Drawing model. + ULONG ulCount = 1; // Number of polygons. + POLYGON vPlgn; // polygon. + ULONG flOptions = 0L; // Drawing options. -////////////////////////////////////////////////////////////////////////////// -// Drawing model. -// POLYGON_INCL Fill is inclusive of bottom right (the default). -// POLYGON_EXCL Fill is exclusive of bottom right. -// This is provided to aid migration from other graphics models. -////////////////////////////////////////////////////////////////////////////// - - LONG lHits = 0L; // Correlation/error indicator. - POINTL vPoint; - int i; - int nIsTRANSPARENT = 0; - LONG lBorderColor = 0L; - LONG lColor = 0L; + ////////////////////////////////////////////////////////////////////////////// + // This contains fields of option bits... to draw boundary lines as well as + // the area interior. + // + // Drawing boundary lines: + // POLYGON_NOBOUNDARY Does not draw boundary lines. + // POLYGON_BOUNDARY Draws boundary lines (the default). + // + // Construction of the area interior: + // POLYGON_ALTERNATE Constructs interior in alternate mode + // (the default). + // POLYGON_WINDING Constructs interior in winding mode. + ////////////////////////////////////////////////////////////////////////////// + + ULONG flModel = POLYGON_INCL; // Drawing model. + + ////////////////////////////////////////////////////////////////////////////// + // Drawing model. + // POLYGON_INCL Fill is inclusive of bottom right (the default). + // POLYGON_EXCL Fill is exclusive of bottom right. + // This is provided to aid migration from other graphics models. + ////////////////////////////////////////////////////////////////////////////// + + LONG lHits = 0L; // Correlation/error indicator. + int i; + int nIsTRANSPARENT = 0; + LONG lBorderColor = 0L; + LONG lColor = 0L; lBorderColor = m_pen.GetColour().GetPixel(); lColor = m_brush.GetColour().GetPixel(); @@ -907,20 +898,17 @@ void wxDC::DoDrawPolygon( for(i = 0; i < n; i++) { - vPlgn.aPointl[i].x = vPoints[i].x; // +xoffset; - vPlgn.aPointl[i].y = OS2Y(vPoints[i].y,0); // +yoffset; + vPlgn.aPointl[i].x = vPoints[i].x+vXoffset; + vPlgn.aPointl[i].y = OS2Y(vPoints[i].y+vYoffset,0); } - flModel = POLYGON_BOUNDARY; + flOptions = POLYGON_BOUNDARY; if(nFillStyle == wxWINDING_RULE) - flModel |= POLYGON_WINDING; + flOptions |= POLYGON_WINDING; else - flModel |= POLYGON_ALTERNATE; - - vPoint.x = vXoffset; - vPoint.y = OS2Y(vYoffset,0); + flOptions |= POLYGON_ALTERNATE; ::GpiSetColor(m_hPS, lBorderColor); - ::GpiMove(m_hPS, &vPoint); + ::GpiMove(m_hPS, &vPlgn.aPointl[0]); lHits = ::GpiPolygons(m_hPS, ulCount, &vPlgn, flOptions, flModel); free(vPlgn.aPointl); } // end of wxDC::DoDrawPolygon @@ -1708,11 +1696,9 @@ void wxDC::DoDrawText( CalcBoundingBox((vX + vWidth), (vY + vHeight)); } // end of wxDC::DoDrawText -void wxDC::DrawAnyText( - const wxString& rsText -, wxCoord vX -, wxCoord vY -) +void wxDC::DrawAnyText( const wxString& rsText, + wxCoord vX, + wxCoord vY ) { int nOldBackground = 0; POINTL vPtlStart; @@ -1753,13 +1739,7 @@ void wxDC::DrawAnyText( m_vRclPaint.xRight == 0 && m_vRclPaint.xLeft == 0)) { - // - // Position Text a little differently in the Statusbar from other panels - // - if (m_pCanvas && m_pCanvas->IsKindOf(CLASSINFO(wxStatusBar))) - vPtlStart.y = OS2Y(vY,vTextY); - else - vPtlStart.y = (wxCoord)(OS2Y(vY,vTextY/1.5)); // Full extent is a bit much + vPtlStart.y = OS2Y(vY,vTextY); } else { @@ -1767,16 +1747,13 @@ void wxDC::DrawAnyText( { m_vRclPaint.yTop = m_vSelectedBitmap.GetHeight(); m_vRclPaint.xRight = m_vSelectedBitmap.GetWidth(); - if (m_pCanvas && m_pCanvas->IsKindOf(CLASSINFO(wxStatusBar))) - vPtlStart.y = OS2Y(vY,vTextY); - else - vPtlStart.y = (LONG)(OS2Y(vY,vTextY/1.5)); + vPtlStart.y = OS2Y(vY,vTextY); } else vPtlStart.y = vY; } - PCH pzStr = (PCH)rsText.c_str(); + PCH pzStr = (PCH)rsText.c_str(); ::GpiMove(m_hPS, &vPtlStart); lHits = ::GpiCharString( m_hPS @@ -2734,12 +2711,10 @@ bool wxDC::DoBlit( wxCoord vXdest, return bSuccess; } -void wxDC::DoGetSize( - int* pnWidth -, int* pnHeight -) const +void wxDC::DoGetSize( int* pnWidth, + int* pnHeight ) const { - LONG lArray[CAPS_HEIGHT]; + LONG lArray[CAPS_HEIGHT]; if(::DevQueryCaps( m_hDC ,CAPS_FAMILY @@ -2807,10 +2782,7 @@ wxSize wxDC::GetPPI() const return ppisize; } // end of wxDC::GetPPI -void wxDC::SetLogicalScale( - double dX -, double dY -) +void wxDC::SetLogicalScale( double dX, double dY ) { m_logicalScaleX = dX; m_logicalScaleY = dY;