bool DoEnable( bool enable );
void UpdateImages();
-
+
void UpdateToggleImage( bool toggle );
-
+
void UpdateLabel()
{
#if wxOSX_USE_NATIVE_TOOLBAR
wxCFStringRef l(labelStr, GetToolBarFontEncoding());
[m_toolbarItem setLabel:l.AsNSString()];
-
+
wxCFStringRef sh( GetShortHelp(), GetToolBarFontEncoding() );
[m_toolbarItem setToolTip:sh.AsNSString()];
}
tbar->OnLeftClick( GetId(), IsToggled() );
}
-
+
#if wxOSX_USE_NATIVE_TOOLBAR
void SetToolbarItemRef( NSToolbarItem* ref )
{
}
- (NSToolbarItem *)toolbar:(NSToolbar *)toolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag;
-
+
- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar*)toolbar;
- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar*)toolbar;
frame.origin.y = mac_y;
[m_controlHandle setFrame:frame];
}
- }
+ }
}
void wxToolBarTool::UpdateImages()
dc.DrawRectangle( 0, 0, w, h );
dc.DrawBitmap( m_bmpNormal, 0, 0, true );
dc.SelectObject( wxNullBitmap );
-
+
[(NSButton*) m_controlHandle setAlternateImage:m_alternateBitmap.GetNSImage()];
}
UpdateToggleImage( CanBeToggled() && IsToggled() );
if (parent->IsKindOf(CLASSINFO(wxFrame)) && wxSystemOptions::GetOptionInt(wxT("mac.toolbar.no-native")) != 1)
{
static wxNSToolbarDelegate* controller = nil;
-
+
if ( controller == nil )
controller = [[wxNSToolbarDelegate alloc] init];
wxString identifier = wxString::Format( wxT("%p"), this );
wxCFStringRef cfidentifier(identifier);
NSToolbar* tb = [[NSToolbar alloc] initWithIdentifier:cfidentifier.AsNSString()];
-
+
m_macToolbar = tb ;
-
+
if (m_macToolbar != NULL)
{
[tb setDelegate:controller];
-
+
NSToolbarDisplayMode mode = NSToolbarDisplayModeDefault;
NSToolbarSizeMode displaySize = NSToolbarSizeModeSmall;
WXWindow tlw = MacGetTopLevelWindowRef();
float toolbarHeight = 0.0;
NSRect windowFrame = NSMakeRect(0, 0, 0, 0);
-
+
if(m_macToolbar && [(NSToolbar*)m_macToolbar isVisible])
{
windowFrame = [NSWindow contentRectForFrameRect:[tlw frame]
toolbarHeight = NSHeight(windowFrame)
- NSHeight([[tlw contentView] frame]);
}
-
+
if ( width != NULL )
*width = (int)windowFrame.size.width;
if ( height != NULL )
bResult = true;
[tlw setToolbar:(NSToolbar*) m_macToolbar];
[(NSToolbar*) m_macToolbar setVisible:YES];
-
+
m_peer->Move(0,0,0,0 );
SetSize( wxSIZE_AUTO_WIDTH, 0 );
m_peer->SetVisibility( false );
}
}
}
- wxString identifier = wxString::Format( wxT("%ld"), (long) tool );
- wxCFStringRef cfidentifier(identifier);
+ if (tool->GetStyle() == wxTOOL_STYLE_SEPARATOR)
+ [refTB insertItemWithItemIdentifier:NSToolbarSeparatorItemIdentifier atIndex:currentPosition];
+ else
+ {
+
+ wxString identifier = wxString::Format( wxT("%ld"), (long) tool );
+ wxCFStringRef cfidentifier(identifier);
- [refTB insertItemWithItemIdentifier:cfidentifier.AsNSString() atIndex:currentPosition];
+ [refTB insertItemWithItemIdentifier:cfidentifier.AsNSString() atIndex:currentPosition];
+ }
tool->SetIndex( currentPosition );
}
[v setBordered:NO];
[v setButtonType: ( tool->CanBeToggled() ? NSOnOffButton : NSMomentaryPushInButton )];
[v setImplementation:tool];
-
+
controlHandle = v;
-
+
#if wxOSX_USE_NATIVE_TOOLBAR
if (m_macToolbar != NULL)
{
if (m_macToolbar != NULL)
{
WXWidget view = (WXWidget) tool->GetControl()->GetHandle() ;
- wxCHECK_MSG( view, false, _T("control must be non-NULL") );
+ wxCHECK_MSG( view, false, wxT("control must be non-NULL") );
wxString identifier = wxString::Format(wxT("%ld"), (long) tool);
wxCFStringRef cfidentifier( identifier, wxFont::GetDefaultEncoding() );