X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77f4f0a700031e1c1fa4ece26df44f3af49b7545..8ad31f9dfdb85a54cd080aac6957883f2f3e38e3:/src/os2/dc.cpp diff --git a/src/os2/dc.cpp b/src/os2/dc.cpp index e215660198..86e618a0f4 100644 --- a/src/os2/dc.cpp +++ b/src/os2/dc.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: dc.cpp +// Name: src/os2/dc.cpp // Purpose: wxDC class // Author: David Webster // Modified by: @@ -23,19 +23,19 @@ #include "wx/log.h" #include "wx/icon.h" #include "wx/msgdlg.h" + #include "wx/dcprint.h" #if wxUSE_STATUSBAR #include "wx/statusbr.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. @@ -774,11 +774,7 @@ void wxDC::DoDrawArc( vPtlArc[0].y = vYm; vPtlArc[1].x = vX2; vPtlArc[1].y = vY2; -#if !(defined(__WATCOMC__) && __WATCOMC__ < 1240 ) -// Open Watcom 1.3 had incomplete headers -// that's reported and should be fixed for OW 1.4 ::GpiPointArc(m_hPS, vPtlArc); // Draws the arc -#endif CalcBoundingBox( (wxCoord)(vXc - dRadius) ,(wxCoord)(vYc - dRadius) ); @@ -1272,7 +1268,7 @@ void wxDC::DoDrawIcon( // // Need to copy back into a bitmap. ::WinDrawPointer uses device coords // and I don't feel like figuring those out for scrollable windows so - // just convert to a bitmap then let the DoDrawBitmap routing display it + // just convert to a bitmap then let the DoDrawBitmap routine display it // if (rIcon.IsXpm()) { @@ -2047,73 +2043,33 @@ void wxDC::SetBrush( } } // end of wxDC::SetBrush -void wxDC::SetBackground( - const wxBrush& rBrush -) +void wxDC::SetBackground(const wxBrush& rBrush) { m_backgroundBrush = rBrush; - if (!m_backgroundBrush.Ok()) - return; - if (m_pCanvas) - { - bool bCustomColours = true; - // - // If we haven't specified wxUSER_COLOURS, don't allow the panel/dialog box to - // change background colours from the control-panel specified colours. - // - if (m_pCanvas->IsKindOf(CLASSINFO(wxWindow)) && - ((m_pCanvas->GetWindowStyleFlag() & wxUSER_COLOURS) != wxUSER_COLOURS)) - bCustomColours = false; - if (bCustomColours) - { - if (m_backgroundBrush.GetStyle()==wxTRANSPARENT) - { - m_pCanvas->SetTransparent(true); - } - else - { - // - // Setting the background brush of a DC - // doesn't affect the window background colour. However, - // I'm leaving in the transparency setting because it's needed by - // various controls (e.g. wxStaticText) to determine whether to draw - // transparently or not. TODO: maybe this should be a new function - // wxWindow::SetTransparency(). Should that apply to the child itself, or the - // parent? - // m_canvas->SetBackgroundColour(m_backgroundBrush.GetColour()); - // - m_pCanvas->SetTransparent(false); - } - } + if (m_backgroundBrush.Ok()) + { + (void)::GpiSetBackColor((HPS)m_hPS, m_backgroundBrush.GetColour().GetPixel()); } - COLORREF vNewColor = m_backgroundBrush.GetColour().GetPixel(); - (void)::GpiSetBackColor((HPS)m_hPS, (LONG)vNewColor); } // end of wxDC::SetBackground -void wxDC::SetBackgroundMode( - int nMode -) +void wxDC::SetBackgroundMode(int nMode) { m_backgroundMode = nMode; } // end of wxDC::SetBackgroundMode -void wxDC::SetLogicalFunction( - int nFunction -) +void wxDC::SetLogicalFunction(int nFunction) { m_logicalFunction = nFunction; SetRop((WXHDC)m_hDC); } // wxDC::SetLogicalFunction -void wxDC::SetRop( - WXHDC hDC -) +void wxDC::SetRop(WXHDC hDC) { if (!hDC || m_logicalFunction < 0) return; - LONG lCRop; + LONG lCRop; switch (m_logicalFunction) { case wxXOR: