m_x = position.x;
m_y = position.y;
- int x, y;
- x = y = 0;
int mac_x = position.x;
int mac_y = position.y;
void wxToolBarTool::UpdateToggleImage( bool toggle )
{
-#if wxMAC_USE_NATIVE_TOOLBAR
-
-#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_4
-#define kHIToolbarItemSelected (1 << 7)
-#endif
-
- // FIXME: this should be a OSX v10.4 runtime check
- if (m_toolbarItemRef != NULL)
- {
- OptionBits addAttrs, removeAttrs;
- OSStatus result;
-
- if (toggle)
- {
- addAttrs = kHIToolbarItemSelected;
- removeAttrs = kHIToolbarItemNoAttributes;
- }
- else
- {
- addAttrs = kHIToolbarItemNoAttributes;
- removeAttrs = kHIToolbarItemSelected;
- }
-
- result = HIToolbarItemChangeAttributes( m_toolbarItemRef, addAttrs, removeAttrs );
- }
-#endif
-
#ifdef __WXMAC_OSX__
if ( toggle )
{
wxMemoryDC dc;
dc.SelectObject( bmp );
- dc.SetPen( wxNullPen );
- dc.SetBackground( *wxWHITE );
+ dc.SetPen( wxPen(*wxBLACK) );
+ dc.SetBrush( wxBrush( *wxLIGHT_GREY ));
dc.DrawRectangle( 0, 0, w, h );
dc.DrawBitmap( m_bmpNormal, 0, 0, true );
dc.SelectObject( wxNullBitmap );
ControlButtonContentInfo info;
wxMacCreateBitmapButton( &info, bmp );
SetControlData( m_controlHandle, 0, kControlIconContentTag, sizeof(info), (Ptr)&info );
+#if wxMAC_USE_NATIVE_TOOLBAR
+ if (m_toolbarItemRef != NULL)
+ {
+ HIToolbarItemSetIconRef( m_toolbarItemRef, info.u.iconRef );
+ }
+#endif
wxMacReleaseBitmapButton( &info );
}
else
ControlButtonContentInfo info;
wxMacCreateBitmapButton( &info, m_bmpNormal );
SetControlData( m_controlHandle, 0, kControlIconContentTag, sizeof(info), (Ptr)&info );
+#if wxMAC_USE_NATIVE_TOOLBAR
+ if (m_toolbarItemRef != NULL)
+ {
+ HIToolbarItemSetIconRef( m_toolbarItemRef, info.u.iconRef );
+ }
+#endif
wxMacReleaseBitmapButton( &info );
}
return result ;
}
+#if wxMAC_USE_NATIVE_TOOLBAR
static const EventTypeSpec kToolbarEvents[] =
{
{ kEventClassToolbar, kEventToolbarGetDefaultIdentifiers },
}
return result ;
}
+#endif // wxMAC_USE_NATIVE_TOOLBAR
// also for the toolbar we have the dual implementation:
// only when MacInstallNativeToolbar is called is the native toolbar set as the window toolbar
bool lastIsRadio = false;
bool curIsRadio = false;
- bool setChoiceInGroup = false;
#if wxMAC_USE_NATIVE_TOOLBAR
CFIndex currentPosition = 0;
{
if ( tool->IsToggled() )
DoToggleTool( tool, true );
-
- setChoiceInGroup = false;
}
else
{
if ( tool->Toggle( true ) )
{
DoToggleTool( tool, true );
- setChoiceInGroup = true;
}
}
else if ( tool->IsToggled() )
InvalidateBestSize();
#endif
- SetBestFittingSize();
+ SetInitialSize();
return true;
}
drawInfo.kind = kThemeBackgroundMetal;
HIThemeApplyBackground( &hiToolbarrect, &drawInfo, cgContext, kHIThemeOrientationNormal );
+#ifndef __LP64__
QDEndCGContext( (CGrafPtr) dc.m_macPort, &cgContext );
+#endif
#endif
}
}