- kThemeStateActive,
- item->IsExpanded() ? kThemeDisclosureDown : kThemeDisclosureRight,
- kThemeAdornmentNone
- };
-
- DrawThemeButton( &bounds, kThemeDisclosureButton, &info, NULL, NULL, NULL, NULL );
-#else // 1
- dc.DrawBitmap(
- flags & wxCONTROL_EXPANDED
- ? m_bmpTreeExpanded
- : m_bmpTreeCollapsed,
- rect.x, rect.y, true /* use mask */);
+ HIThemeButtonDrawInfo drawInfo;
+ HIRect labelRect;
+
+ memset( &drawInfo, 0, sizeof(drawInfo) );
+ drawInfo.version = 0;
+ drawInfo.kind = kThemeDisclosureButton;
+ drawInfo.state = (flags & wxCONTROL_DISABLED) ? kThemeStateInactive : kThemeStateActive;
+ // Apple mailing list posts say to use the arrow adornment constants, but those don't work.
+ // We need to set the value using the 'old' DrawThemeButton constants instead.
+ drawInfo.value = (flags & wxCONTROL_EXPANDED) ? kThemeDisclosureDown : kThemeDisclosureRight;
+ drawInfo.adornment = kThemeAdornmentNone;
+
+ HIThemeDrawButton( &headerRect, &drawInfo, cgContext, kHIThemeOrientationNormal, &labelRect );
+
+ }
+
+#if wxMAC_USE_CORE_GRAPHICS
+#else
+ QDEndCGContext( (CGrafPtr) dc.m_macPort, &cgContext );