diff --git a/mac/wxMac_additions/wxMac-3.0.2-fixes.patch b/mac/wxMac_additions/wxMac-3.0.2-fixes.patch new file mode 100644 index 000000000..af90c5525 --- /dev/null +++ b/mac/wxMac_additions/wxMac-3.0.2-fixes.patch @@ -0,0 +1,51 @@ +Index: src/osx/core/dcmemory.cpp +=================================================================== +--- src/osx/core/dcmemory.cpp (revision 3f66f6a5b3583b02c34854556eb83e3a808524ce) ++++ src/osx/core/dcmemory.cpp (revision f5dccf312d657852ca6c3a9b5a46ccd71667e1c8) +@@ -87,4 +87,6 @@ + CGContextSetStrokeColorSpace( bmCtx, genericColorSpace ); + SetGraphicsContext( wxGraphicsContext::CreateFromNative( bmCtx ) ); ++ if (m_graphicContext) ++ m_graphicContext->EnableOffset(true); + } + m_ok = (m_graphicContext != NULL) ; +Index: src/common/dcgraph.cpp +=================================================================== +--- src/common/dcgraph.cpp (revision 148971013ee48926dfe153ca39c94be92acde37c) ++++ src/common/dcgraph.cpp (revision b8abf338c8c83ea7f0dcf29b39dfd2223d16c462) +@@ -877,8 +877,7 @@ + CalcBoundingBox(x + w, y + h); + +- if ( m_graphicContext->ShouldOffset() ) +- { +- // if we are offsetting the entire rectangle is moved 0.5, so the +- // border line gets off by 1 ++ if (m_pen.IsOk() && m_pen.GetStyle() != wxPENSTYLE_TRANSPARENT && m_pen.GetWidth() > 0) ++ { ++ // outline is one pixel larger than what raster-based wxDC implementations draw + w -= 1; + h -= 1; +@@ -906,8 +905,7 @@ + CalcBoundingBox(x + w, y + h); + +- if ( m_graphicContext->ShouldOffset() ) +- { +- // if we are offsetting the entire rectangle is moved 0.5, so the +- // border line gets off by 1 ++ if (m_pen.IsOk() && m_pen.GetStyle() != wxPENSTYLE_TRANSPARENT && m_pen.GetWidth() > 0) ++ { ++ // outline is one pixel larger than what raster-based wxDC implementations draw + w -= 1; + h -= 1; +@@ -926,11 +924,4 @@ + CalcBoundingBox(x + w, y + h); + +- if ( m_graphicContext->ShouldOffset() ) +- { +- // if we are offsetting the entire rectangle is moved 0.5, so the +- // border line gets off by 1 +- w -= 1; +- h -= 1; +- } + m_graphicContext->DrawEllipse(x,y,w,h); + }