X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8a438f46b50a70cff345870e1324226dc7809f0a..b3aee70835b3304f620b056a88e5126a61f4820b:/src/mac/carbon/dcclient.cpp diff --git a/src/mac/carbon/dcclient.cpp b/src/mac/carbon/dcclient.cpp index 7023f8cc9f..9fcd763bb8 100644 --- a/src/mac/carbon/dcclient.cpp +++ b/src/mac/carbon/dcclient.cpp @@ -112,6 +112,9 @@ static wxBrush MacGetBackgroundBrush( wxWindow* window ) wxWindowDC::wxWindowDC() { m_window = NULL ; +#if wxMAC_USE_CORE_GRAPHICS + m_release = false; +#endif } wxWindowDC::wxWindowDC(wxWindow *window) @@ -142,8 +145,6 @@ wxWindowDC::wxWindowDC(wxWindow *window) SetGraphicsContext( wxGraphicsContext::CreateFromNative( cg ) ); } - m_graphicContext->SetPen( m_pen ) ; - m_graphicContext->SetBrush( m_brush ) ; SetClippingRegion( 0 , 0 , m_width , m_height ) ; #else int x , y ; @@ -165,11 +166,12 @@ wxWindowDC::wxWindowDC(wxWindow *window) wxWindowDC::~wxWindowDC() { #if wxMAC_USE_CORE_GRAPHICS - if ( m_release && m_graphicContext ) + if ( m_release ) { + // this must not necessarily be the current context, we must restore the state of the + // cg we started with above (before the CGContextTranslateCTM call) CGContextRef cg = (CGContextRef) m_window->MacGetCGContextRef(); CGContextRestoreGState(cg); - //CGContextRef cg = (CGContextRef) m_graphicContext->GetNativeContext() ; } #endif }