mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-25 07:21:08 +00:00
86 lines
1.9 KiB
Objective-C
86 lines
1.9 KiB
Objective-C
/* Implementation of class NSMenuToolbarItem
|
|
Copyright (C) 2024 Free Software Foundation, Inc.
|
|
|
|
By: Gregory John Casamento
|
|
Date: 03-05-2024
|
|
|
|
This file is part of the GNUstep Library.
|
|
|
|
This library is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU Lesser General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2.1 of the License, or (at your option) any later version.
|
|
|
|
This library is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Lesser General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Lesser General Public
|
|
License along with this library; if not, write to the Free
|
|
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
Boston, MA 02110 USA.
|
|
*/
|
|
|
|
#import "AppKit/NSMenuToolbarItem.h"
|
|
#import "AppKit/NSMenu.h"
|
|
#import "AppKit/NSImage.h"
|
|
|
|
#import "GNUstepGUI/GSTheme.h"
|
|
|
|
@implementation NSMenuToolbarItem
|
|
|
|
- (instancetype) initWithItemIdentifier: (NSString *)identifier
|
|
{
|
|
self = [super initWithItemIdentifier: identifier];
|
|
if (self != nil)
|
|
{
|
|
[self setImage: [NSImage imageNamed: @"NSMenuToolbarItem"]];
|
|
[self setTarget: self];
|
|
[self setAction: @selector(_showMenu:)];
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (void) dealloc
|
|
{
|
|
RELEASE(_menu);
|
|
[super dealloc];
|
|
}
|
|
|
|
- (BOOL) showsIndicator
|
|
{
|
|
return _showsIndicator;
|
|
}
|
|
|
|
- (void) setShowsIndicator: (BOOL)flag
|
|
{
|
|
_showsIndicator = flag;
|
|
|
|
if (_showsIndicator == YES)
|
|
{
|
|
[self setImage: [NSImage imageNamed: @"NSMenuToolbarItem"]];
|
|
}
|
|
else
|
|
{
|
|
[self setImage: nil];
|
|
}
|
|
}
|
|
|
|
- (NSMenu *) menu
|
|
{
|
|
return _menu;
|
|
}
|
|
|
|
- (void) setMenu: (NSMenu *)menu
|
|
{
|
|
ASSIGN(_menu, menu);
|
|
}
|
|
|
|
- (void) _showMenu: (id)sender
|
|
{
|
|
[[GSTheme theme] rightMouseDisplay: _menu
|
|
forEvent: nil];
|
|
}
|
|
|
|
@end
|