-#import "MTShizzleWindow.h"
-
-@interface MTShizzleWindow (Private)
-- (void)setBling:(id)bling;
-- (void)buildWindow;
-- (void)setTargets;
-@end
-
-@implementation MTShizzleWindow
-
-static MTShizzleWindow *_privateSharedWindow = nil;
-
-+ (id)sharedWindowForSender:(id)sender
-{
- if( _privateSharedWindow ) {
- [_privateSharedWindow setBling:sender];
- return _privateSharedWindow;
- } else {
- _privateSharedWindow = [[MTShizzleWindow alloc]
- initWithContentRect:NSMakeRect(0, 0, 385, 353)
- styleMask:NSTitledWindowMask
- backing:NSBackingStoreBuffered
- defer:YES];
- [_privateSharedWindow setBling:sender];
- return _privateSharedWindow;
- }
-}
-
-- (id)initWithContentRect:(NSRect)contentRect styleMask:(unsigned int)styleMask backing:(NSBackingStoreType)backingType defer:(BOOL)flag
-{
- if ( (self = [super initWithContentRect:contentRect
- styleMask:styleMask
- backing:backingType
- defer:flag]) ) {
- [self buildWindow];
- }
- return self;
-}
-
-- (void)dealloc
-{
- [regMessage release];
- [regBenefits release];
- [enterInfo release];
- [owner release];
- [key release];
- [ownerEntry release];
- [keyEntry release];
- [registerButton release];
- [regLater release];
- [verifyKey release];
- [contentView release];
- [box release];
- [super dealloc];
-}
-
-- (void)setBling:(id)bling
-{
- _sender = bling;
- [self setTargets];
-}
-
-- (void)buildWindow
-{
- unichar returnChar = '\r';
-
- [self setReleasedWhenClosed:NO];
- [self setTitle:[NSString stringWithFormat:@"Register %@", @"MenuTunes"]];
- contentView = [self contentView];
-
- regMessage = [[NSTextField alloc] initWithFrame:NSMakeRect(20, 282, 345, 51)];
- [regMessage setStringValue:[NSString stringWithFormat:@"%@ is shareware. If you find it to be a valuable tool, please click the button below to buy your copy. Your support is greatly appreciated.", @"MenuTunes"]];
- [regMessage setBordered:NO];
- [regMessage setBezeled:NO];
- [regMessage setEditable:NO];
- [regMessage setSelectable:NO];
- [regMessage setDrawsBackground:NO];
- [contentView addSubview:regMessage];
-
- //Make me gray!
- box = [[NSBox alloc] initWithFrame:NSMakeRect(20, 181, 345, 81)];
- [box setTitlePosition:NSNoTitle];
- [box setBorderType:NSBezelBorder];
- [contentView addSubview:box];
-
- //This isn't tall enough
- registerButton = [[NSButton alloc] initWithFrame:NSMakeRect(24, 13, 115, 49)];
- [registerButton setImage:[NSImage imageNamed:@"esellerate"]];
- [registerButton setButtonType:NSMomentaryPushButton];
- [registerButton setBezelStyle:NSRegularSquareBezelStyle];
- [registerButton setTarget:_sender];
- [registerButton setAction:@selector(goToTheStore:)];
- [[box contentView] addSubview:registerButton];
-
- regBenefits = [[NSTextField alloc] initWithFrame:NSMakeRect(152, 16, 175, 42)];
- [regBenefits setStringValue:[NSString stringWithUTF8String:"• Register instantly and easily.\n• Fast, secure transaction.\n• Major credit cards accepted."]];
- [regBenefits setBordered:NO];
- [regBenefits setBezeled:NO];
- [regBenefits setEditable:NO];
- [regBenefits setSelectable:NO];
- [regBenefits setDrawsBackground:NO];
- [regBenefits setFont:[NSFont fontWithName:@"Lucida Grande" size:11]];
- [[box contentView] addSubview:regBenefits];
-
- enterInfo = [[NSTextField alloc] initWithFrame:NSMakeRect(20, 148, 345, 17)];
- [enterInfo setStringValue:@"Please enter your registration information below."];
- [enterInfo setBordered:NO];
- [enterInfo setBezeled:NO];
- [enterInfo setEditable:NO];
- [enterInfo setSelectable:NO];
- [enterInfo setDrawsBackground:NO];
- [enterInfo setFont:[NSFont fontWithName:@"Lucida Grande" size:13]];
- [contentView addSubview:enterInfo];
-
- owner = [[NSTextField alloc] initWithFrame:NSMakeRect(20, 126, 345, 14)];
- [owner setStringValue:@"License Owner:"];
- [owner setBordered:NO];
- [owner setBezeled:NO];
- [owner setEditable:NO];
- [owner setSelectable:NO];
- [owner setDrawsBackground:NO];
- [owner setFont:[NSFont fontWithName:@"Lucida Grande" size:11]];
- [contentView addSubview:owner];
-
- key = [[NSTextField alloc] initWithFrame:NSMakeRect(20, 82, 345, 14)];
- [key setStringValue:@"License Key:"];
- [key setBordered:NO];
- [key setBezeled:NO];
- [key setEditable:NO];
- [key setSelectable:NO];
- [key setDrawsBackground:NO];
- [key setFont:[NSFont fontWithName:@"Lucida Grande" size:11]];
- [contentView addSubview:key];
-
- ownerEntry = [[NSTextField alloc] initWithFrame:NSMakeRect(20, 104, 345, 22)];
- [ownerEntry setTarget:_sender];
- [ownerEntry setAction:@selector(verifyKey:)];
- [contentView addSubview:ownerEntry];
-
- keyEntry = [[NSTextField alloc] initWithFrame:NSMakeRect(20, 60, 345, 22)];
- [keyEntry setTarget:_sender];
- [keyEntry setAction:@selector(verifyKey:)];
- [contentView addSubview:keyEntry];
-
- regLater = [[NSButton alloc] initWithFrame:NSMakeRect(138, 16, 116, 25)];
- [regLater setTitle:@"Register Later"];
- [regLater setFont:[NSFont systemFontOfSize:[NSFont systemFontSize]]];
- [regLater setTarget:_sender];
- [regLater setAction:@selector(registerLater:)];
- [regLater setBezelStyle:NSRoundedBezelStyle];
- [contentView addSubview:regLater];
-
- verifyKey = [[NSButton alloc] initWithFrame:NSMakeRect(255, 16, 116, 25)];
- [verifyKey setTitle:@"Verify Key"];
- [verifyKey setFont:[NSFont systemFontOfSize:[NSFont systemFontSize]]];
- [verifyKey setTarget:_sender];
- [verifyKey setAction:@selector(verifyKey:)];
- [verifyKey setBezelStyle:NSRoundedBezelStyle];
- [verifyKey setKeyEquivalent:[NSString stringWithCharacters:&returnChar length:1]];
- [contentView addSubview:verifyKey];
-}
-
-- (void)setTargets
-{
- [registerButton setTarget:_sender];
- [ownerEntry setTarget:_sender];
- [keyEntry setTarget:_sender];
- [regLater setTarget:_sender];
- [verifyKey setTarget:_sender];
-}
-
-- (NSString *)owner
-{
- return [ownerEntry stringValue];
-}
-
-- (NSString *)key
-{
- return [keyEntry stringValue];
-}
-
-@end