make ellipses drawn with transparent pen more wxGC/Cairo-like (closes #9899)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2008-09-14 00:12:02 +00:00
parent 99774d589d
commit c11bdf68b8

View File

@@ -955,6 +955,14 @@ void wxWindowDCImpl::DoDrawEllipse( wxCoord x, wxCoord y, wxCoord width, wxCoord
bool originChanged;
DrawingSetup(gc, originChanged);
// If the pen is transparent pen we increase the size
// for better compatibility with other platforms.
if (m_pen.GetStyle() == wxPENSTYLE_TRANSPARENT)
{
++ww;
++hh;
}
gdk_draw_arc(m_gdkwindow, gc, true, xx, yy, ww, hh, 0, 360*64);
if (originChanged)
@@ -962,7 +970,7 @@ void wxWindowDCImpl::DoDrawEllipse( wxCoord x, wxCoord y, wxCoord width, wxCoord
}
if (m_pen.GetStyle() != wxPENSTYLE_TRANSPARENT)
gdk_draw_arc( m_gdkwindow, m_penGC, FALSE, xx, yy, ww, hh, 0, 360*64 );
gdk_draw_arc( m_gdkwindow, m_penGC, false, xx, yy, ww, hh, 0, 360*64 );
}
CalcBoundingBox( x, y );