- int i;
- for (i=0; i < (int)WXSIZEOF(grayValues); i++)
- {
- dc.SetPen( wxPen( wxColour( grayValues[i] , grayValues[i] , grayValues[i] ),
- 1 , wxSOLID ) );
- dc.DrawRectangle( 0, position+i, size.x, 1 );
- }
+ (short) headerRect.origin.y, (short) headerRect.origin.x,
+ (short) (headerRect.origin.y + headerRect.size.height),
+ (short) (headerRect.origin.x + headerRect.size.width)
+ };
+
+ RgnHandle updateRgn = NewRgn();
+ RectRgn( updateRgn, &r );
+ HIViewSetNeedsDisplayInRegion( (HIViewRef) win->GetHandle(), updateRgn, true );
+ DisposeRgn( updateRgn );
+ }
+ else
+ {
+ CGContextRef cgContext;
+
+#if wxMAC_USE_CORE_GRAPHICS
+ cgContext = (CGContextRef) dc.GetGraphicsContext()->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
+
+ {
+ HIThemeButtonDrawInfo drawInfo;
+ HIRect labelRect;
+
+ memset( &drawInfo, 0, sizeof(drawInfo) );
+ drawInfo.version = 0;
+ drawInfo.kind = kind;
+ drawInfo.state = (flags & wxCONTROL_DISABLED) ? kThemeStateInactive : kThemeStateActive;
+ drawInfo.value = (flags & wxCONTROL_SELECTED) ? kThemeButtonOn : kThemeButtonOff;
+ drawInfo.adornment = adornment;
+
+ HIThemeDrawButton( &headerRect, &drawInfo, cgContext, kHIThemeOrientationNormal, &labelRect );