X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9954f65067822d9d757516abeff877bbbd60374d..e795e8b56f213f97745636a017609091746894a0:/src/mac/carbon/renderer.cpp?ds=sidebyside diff --git a/src/mac/carbon/renderer.cpp b/src/mac/carbon/renderer.cpp index 685b8e1a68..62ff9846c9 100644 --- a/src/mac/carbon/renderer.cpp +++ b/src/mac/carbon/renderer.cpp @@ -135,10 +135,10 @@ wxRendererMac::DrawHeaderButton(wxWindow *win, const wxRect& rect, int flags) { - const wxCoord x = rect.x-1, - y = rect.y-1, - w = rect.width, - h = rect.height; + const wxCoord x = dc.XLOG2DEV(rect.x-1), + y = dc.YLOG2DEV(rect.y-1), + w = dc.XLOG2DEVREL(rect.width), + h = dc.YLOG2DEVREL(rect.height); int major,minor; wxGetOsVersion( &major, &minor ); @@ -162,13 +162,15 @@ wxRendererMac::DrawHeaderButton(wxWindow *win, { CGContextRef cgContext ; #if wxMAC_USE_CORE_GRAPHICS - cgContext = dynamic_cast(dc.GetGraphicContext())->GetNativeContext() ; + cgContext = ((wxMacCGContext*)(dc.GetGraphicContext()))->GetNativeContext() ; #else Rect bounds ; GetPortBounds( (CGrafPtr) dc.m_macPort , &bounds ) ; QDBeginCGContext( (CGrafPtr) dc.m_macPort , &cgContext ) ; CGContextTranslateCTM( cgContext , 0 , bounds.bottom - bounds.top ) ; CGContextScaleCTM( cgContext , 1 , -1 ) ; + HIShapeReplacePathInCGContext( HIShapeCreateWithQDRgn( (RgnHandle) dc.m_macCurrentClipRgn ) , cgContext ) ; + CGContextClip( cgContext ) ; HIViewConvertRect( &headerRect , (HIViewRef) win->GetHandle() , (HIViewRef) win->MacGetTopLevelWindow()->GetHandle() ) ; #endif { @@ -286,7 +288,7 @@ wxRendererMac::DrawSplitterSash(wxWindow *win, { CGContextRef cgContext ; #if wxMAC_USE_CORE_GRAPHICS - cgContext = dynamic_cast(dc.GetGraphicContext())->GetNativeContext() ; + cgContext = ((wxMacCGContext*)(dc.GetGraphicContext()))->GetNativeContext() ; #else Rect bounds ; GetPortBounds( (CGrafPtr) dc.m_macPort , &bounds ) ;