diff options
Diffstat (limited to 'Frameworks/BWToolkitFramework.framework/BWHyperlinkButton.m')
-rw-r--r-- | Frameworks/BWToolkitFramework.framework/BWHyperlinkButton.m | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/Frameworks/BWToolkitFramework.framework/BWHyperlinkButton.m b/Frameworks/BWToolkitFramework.framework/BWHyperlinkButton.m new file mode 100644 index 00000000..8ab10e71 --- /dev/null +++ b/Frameworks/BWToolkitFramework.framework/BWHyperlinkButton.m @@ -0,0 +1,55 @@ +// +// BWHyperlinkButton.m +// BWToolkit +// +// Created by Brandon Walkin (www.brandonwalkin.com) +// All code is provided under the New BSD license. +// + +#import "BWHyperlinkButton.h" +#import "BWHyperlinkButtonCell.h" + +@implementation BWHyperlinkButton + +@synthesize urlString; + +-(void)awakeFromNib +{ + [self setTarget:self]; + [self setAction:@selector(openURLInBrowser:)]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + if ((self = [super initWithCoder:decoder]) != nil) + { + [self setUrlString:[decoder decodeObjectForKey:@"BWHBUrlString"]]; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)coder +{ + [super encodeWithCoder:coder]; + + [coder encodeObject:[self urlString] forKey:@"BWHBUrlString"]; +} + +- (void)openURLInBrowser:(id)sender +{ + if (![self respondsToSelector:@selector(ibDidAddToDesignableDocument:)]) + [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:self.urlString]]; +} + +- (void)resetCursorRects +{ + [self addCursorRect:[self bounds] cursor:[NSCursor pointingHandCursor]]; +} + +- (void)dealloc +{ + [urlString release]; + [super dealloc]; +} + +@end |