diff options
Diffstat (limited to 'frontends/cocoa/PSMTabBarControl/PSMTabDragView.m')
-rw-r--r-- | frontends/cocoa/PSMTabBarControl/PSMTabDragView.m | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/frontends/cocoa/PSMTabBarControl/PSMTabDragView.m b/frontends/cocoa/PSMTabBarControl/PSMTabDragView.m new file mode 100644 index 000000000..4f6ce9131 --- /dev/null +++ b/frontends/cocoa/PSMTabBarControl/PSMTabDragView.m @@ -0,0 +1,60 @@ +// +// PSMTabDragView.m +// PSMTabBarControl +// +// Created by Kent Sutherland on 6/17/07. +// Copyright 2007 Kent Sutherland. All rights reserved. +// + +#import "PSMTabDragView.h" + +@implementation PSMTabDragView + +- (id)initWithFrame:(NSRect)frame +{ + if ((self = [super initWithFrame:frame])) { + _alpha = 1.0; + } + return self; +} + +- (void)drawRect:(NSRect)rect +{ + //1.0 fade means show the primary image + //0.0 fade means show the secondary image + CGFloat primaryAlpha = _alpha + 0.001f, alternateAlpha = 1.001f - _alpha; + NSRect srcRect; + srcRect.origin = NSZeroPoint; + srcRect.size = [_image size]; + + [_image drawInRect:[self bounds] fromRect:srcRect operation:NSCompositingOperationSourceOver fraction:primaryAlpha]; + srcRect.size = [_alternateImage size]; + [_alternateImage drawInRect:[self bounds] fromRect:srcRect operation:NSCompositingOperationSourceOver fraction:alternateAlpha]; +} + +- (void)setFadeValue:(CGFloat)value +{ + _alpha = value; +} + +- (NSImage *)image +{ + return _image; +} + +- (void)setImage:(NSImage *)image +{ + _image = image; +} + +- (NSImage *)alternateImage +{ + return _alternateImage; +} + +- (void)setAlternateImage:(NSImage *)image +{ + _alternateImage = image; +} + +@end |