diff options
| -rw-r--r-- | systray_darwin.m | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/systray_darwin.m b/systray_darwin.m index a489bc4..e466948 100644 --- a/systray_darwin.m +++ b/systray_darwin.m @@ -64,15 +64,30 @@ } - (void)setIcon:(NSImage *)image { - [statusItem setImage:image]; + statusItem.button.image = image; + [self updateTitleButtonStyle]; } - (void)setTitle:(NSString *)title { - [statusItem setTitle:title]; + statusItem.button.title = title; + [self updateTitleButtonStyle]; } +-(void)updateTitleButtonStyle { + if (statusItem.button.image != nil) { + if ([statusItem.button.title length] == 0) { + statusItem.button.imagePosition = NSImageOnly; + } else { + statusItem.button.imagePosition = NSImageLeft; + } + } else { + statusItem.button.imagePosition = NSNoImage; + } +} + + - (void)setTooltip:(NSString *)tooltip { - [statusItem setToolTip:tooltip]; + statusItem.button.toolTip = tooltip; } - (IBAction)menuHandler:(id)sender @@ -97,14 +112,14 @@ } [menuItem setToolTip:item->tooltip]; if (item->disabled == 1) { - [menuItem setEnabled:FALSE]; + menuItem.enabled = FALSE; } else { - [menuItem setEnabled:TRUE]; + menuItem.enabled = TRUE; } if (item->checked == 1) { - [menuItem setState:NSOnState]; + menuItem.state = NSControlStateValueOn; } else { - [menuItem setState:NSOffState]; + menuItem.state = NSControlStateValueOff; } } |
