diff options
author | ritsuka <[email protected]> | 2008-06-25 13:05:04 +0000 |
---|---|---|
committer | ritsuka <[email protected]> | 2008-06-25 13:05:04 +0000 |
commit | 65b74e51bbae41b4b2a9a92a410e92caf80e8d8d (patch) | |
tree | ea834034b1969e857141bd4525250e4f93babf73 /macosx/MVMenuButton.m | |
parent | 3b829798a6b6e4189ffaaea03084b427a1c18097 (diff) |
MacGUI: Replace MVMenuButton with standard controls. Thanks blindjimmy.
Replace plus and minus icons with apple's one.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1537 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'macosx/MVMenuButton.m')
-rw-r--r-- | macosx/MVMenuButton.m | 164 |
1 files changed, 0 insertions, 164 deletions
diff --git a/macosx/MVMenuButton.m b/macosx/MVMenuButton.m deleted file mode 100644 index ea6b2efc6..000000000 --- a/macosx/MVMenuButton.m +++ /dev/null @@ -1,164 +0,0 @@ -#import "MVMenuButton.h" - -@implementation MVMenuButton -- (void) encodeWithCoder:(NSCoder *) coder { - [super encodeWithCoder:coder]; -} - -- (id) initWithFrame:(NSRect) frame { - if( ( self = [super initWithFrame:frame] ) ) { - [self setBordered:NO]; - [self setButtonType:NSMomentaryChangeButton]; - } - return self; -} - -- (id) initWithCoder:(NSCoder *) coder { - if( ( self = [super initWithCoder:coder] ) ) { - _size = NSRegularControlSize; - _drawsArrow = NO; - _orgImage = [[self image] copy]; - _smallImage = nil; - _toolbarItem = nil; - } - return self; -} - -- (void) dealloc { - [_orgImage release]; - [_smallImage release]; - - _orgImage = nil; - _smallImage = nil; - _toolbarItem = nil; - - [super dealloc]; -} - -- (void) drawRect:(NSRect) rect { - [super drawRect:rect]; - - if( [self drawsArrow] ) { - NSBezierPath *path = [NSBezierPath bezierPath]; - - if( _size == NSRegularControlSize ) { - [path moveToPoint:NSMakePoint( NSWidth( [self frame] ) - 6, NSHeight( [self frame] ) - 3 )]; - [path relativeLineToPoint:NSMakePoint( 6, 0 )]; - [path relativeLineToPoint:NSMakePoint( -3, 3 )]; - } else if( _size == NSSmallControlSize ) { - [path moveToPoint:NSMakePoint( NSWidth( [self frame] ) - 4, NSHeight( [self frame] ) - 3 )]; - [path relativeLineToPoint:NSMakePoint( 4, 0 )]; - [path relativeLineToPoint:NSMakePoint( -2, 3 )]; - } - - [path closePath]; - [[[NSColor blackColor] colorWithAlphaComponent:0.75] set]; - [path fill]; - } -} - -- (void) mouseDown:(NSEvent *) theEvent { - if( ! [self isEnabled] ) return; - if( ! [self menu] ) { - [super mouseDown:theEvent]; - return; - } - - [self highlight:YES]; - - NSPoint point = [self convertPoint:[self bounds].origin toView:nil]; - point.y -= NSHeight( [self frame] ) + 2.; - point.x -= 1.; - - NSEvent *event = [NSEvent mouseEventWithType:[theEvent type] location:point modifierFlags:[theEvent modifierFlags] timestamp:[theEvent timestamp] windowNumber:[[theEvent window] windowNumber] context:[theEvent context] eventNumber:[theEvent eventNumber] clickCount:[theEvent clickCount] pressure:[theEvent pressure]]; - [NSMenu popUpContextMenu:[self menu] withEvent:event forView:self]; - - [self mouseUp:[[NSApplication sharedApplication] currentEvent]]; -} - -- (void) mouseUp:(NSEvent *) theEvent { - [self highlight:NO]; - [super mouseUp:theEvent]; -} - -- (void) mouseDragged:(NSEvent *) theEvent { - return; -} - -- (NSControlSize) controlSize { - return ( _size ? _size : NSRegularControlSize ); -} - -- (void) setControlSize:(NSControlSize) controlSize { - if( ! _orgImage ) _orgImage = [[self image] copy]; - if( controlSize == NSRegularControlSize ) { - [super setImage:_orgImage]; - [_toolbarItem setMinSize:NSMakeSize( 32., 32. )]; - [_toolbarItem setMaxSize:NSMakeSize( 32., 32. )]; - } else if( controlSize == NSSmallControlSize ) { - if( ! _smallImage ) { - NSImageRep *sourceImageRep = [_orgImage bestRepresentationForDevice:nil]; - _smallImage = [[NSImage alloc] initWithSize:NSMakeSize( 24., 24. )]; - [_smallImage lockFocus]; - [[NSGraphicsContext currentContext] setImageInterpolation:NSImageInterpolationHigh]; - [sourceImageRep drawInRect:NSMakeRect( 0., 0., 24., 24. )]; - [_smallImage unlockFocus]; - } - [super setImage:_smallImage]; - [_toolbarItem setMinSize:NSMakeSize( 24., 24. )]; - [_toolbarItem setMaxSize:NSMakeSize( 24., 24. )]; - } - _size = controlSize; -} - -- (void) setImage:(NSImage *) image { - [_orgImage autorelease]; - _orgImage = [[self image] copy]; - - NSImageRep *sourceImageRep = [image bestRepresentationForDevice:nil]; - [_smallImage autorelease]; - _smallImage = [[NSImage alloc] initWithSize:NSMakeSize( 24., 24. )]; - [_smallImage lockFocus]; - [[NSGraphicsContext currentContext] setImageInterpolation:NSImageInterpolationHigh]; - [sourceImageRep drawInRect:NSMakeRect( 0., 0., 24., 24. )]; - [_smallImage unlockFocus]; - - if( _size == NSRegularControlSize ) [super setImage:image]; - else if( _size == NSSmallControlSize ) [super setImage:_smallImage]; -} - -- (NSImage *) smallImage { - return _smallImage; -} - -- (void) setSmallImage:(NSImage *) image { - [_smallImage autorelease]; - _smallImage = [image copy]; -} - -- (NSToolbarItem *) toolbarItem { - return _toolbarItem; -} - -- (void) setToolbarItem:(NSToolbarItem *) item { - _toolbarItem = item; -} - -- (BOOL) drawsArrow { - return _drawsArrow; -} - -- (void) setDrawsArrow:(BOOL) arrow { - _drawsArrow = arrow; -} - -- (id) accessibilityAttributeValue:(NSString *) attribute { - if( [attribute isEqualToString:NSAccessibilityTitleAttribute] ) - return [_toolbarItem label]; - if( [attribute isEqualToString:NSAccessibilityHelpAttribute] ) - return [_toolbarItem toolTip]; - if( [attribute isEqualToString:NSAccessibilityToolbarButtonAttribute] ) - return _toolbarItem; - return [super accessibilityAttributeValue:attribute]; -} -@end |