#import <netinet/in.h>
#import <arpa/inet.h>
#import <openssl/sha.h>
+#import <sys/types.h>
+#import <sys/stat.h>
#import <ITFoundation/ITFoundation.h>
[passwordPanelOKButton setTitle:@"Connect"];
[passwordPanelTitle setStringValue:@"Password Required"];
[passwordPanelMessage setStringValue:[NSString stringWithFormat:@"Please enter a password for access to the MenuTunes player named %@ at %@.", [[[NetworkController sharedController] networkObject] serverName], [[NetworkController sharedController] remoteHost]]];
- [passwordPanel center];
[passwordPanel setLevel:NSStatusWindowLevel];
- [passwordPanel makeKeyAndOrderFront:nil];
+ [NSApp activateIgnoringOtherApps:YES];
+ [passwordPanel center];
+ [passwordPanel orderFrontRegardless];
+ [passwordPanel makeKeyWindow];
if ([NSApp runModalForWindow:passwordPanel]) {
return YES;
} else {
[passwordPanelOKButton setTitle:@"Retry"];
[passwordPanelTitle setStringValue:@"Invalid Password"];
[passwordPanelMessage setStringValue:[NSString stringWithFormat:@"The password entered for access to the MenuTunes player named %@ at %@ is invalid. Please provide a new password.", [[[NetworkController sharedController] networkObject] serverName], [[NetworkController sharedController] remoteHost]]];
- [passwordPanel center];
[passwordPanel setLevel:NSStatusWindowLevel];
- [passwordPanel makeKeyAndOrderFront:nil];
+ [NSApp activateIgnoringOtherApps:YES];
+ [passwordPanel center];
+ [passwordPanel orderFrontRegardless];
+ [passwordPanel makeKeyWindow];
if ([NSApp runModalForWindow:passwordPanel]) {
return YES;
} else {
}
[self resetRemotePlayerTextFields];
- [window center];
+ [launchAtLoginCheckbox becomeFirstResponder];
[NSApp activateIgnoringOtherApps:YES];
- [window performSelector:@selector(makeKeyAndOrderFront:) withObject:self afterDelay:0.0];
+ [window center];
+ [window orderFrontRegardless];
+ [window makeKeyWindow];
}
- (IBAction)showTestWindow:(id)sender
[df setBool:SENDER_STATE forKey:@"showTrackNumber"];
} else if ( [sender tag] == 1090) {
[df setBool:SENDER_STATE forKey:@"showTrackRating"];
+ } else if ( [sender tag] == 1100) {
+ [df setBool:SENDER_STATE forKey:@"showAlbumArtwork"];
+ } else if ( [sender tag] == 1110) {
+ [df setBool:SENDER_STATE forKey:@"runScripts"];
+ if (SENDER_STATE) {
+ [runScriptsCheckbox setState:NSOnState];
+ [showScriptsButton setEnabled:YES];
+ } else {
+ [showScriptsButton setEnabled:NO];
+ }
+ } else if ( [sender tag] == 1120) {
+ mkdir([[NSHomeDirectory() stringByAppendingPathComponent:@"Library/Application Support/MenuTunes/Scripts"] cString], 0744);
+ [[NSWorkspace sharedWorkspace] openFile:[NSHomeDirectory() stringByAppendingPathComponent:@"Library/Application Support/MenuTunes/Scripts"]];
}
[df synchronize];
}
[trackTimeCheckbox setState:[df boolForKey:@"showTime"] ? NSOnState : NSOffState];
[trackNumberCheckbox setState:[df boolForKey:@"showTrackNumber"] ? NSOnState : NSOffState];
[ratingCheckbox setState:[df boolForKey:@"showTrackRating"] ? NSOnState : NSOffState];
+ [albumArtworkCheckbox setState:[df boolForKey:@"showAlbumArtwork"] ? NSOnState : NSOffState];
+
+ if ([df boolForKey:@"runScripts"]) {
+ [runScriptsCheckbox setState:NSOnState];
+ [showScriptsButton setEnabled:YES];
+ } else {
+ [showScriptsButton setEnabled:NO];
+ }
// Set the launch at login checkbox state
ITDebugLog(@"Setting launch at login state.");
ITDebugLog(@"Synchronizing menus");
[df setObject:myItems forKey:@"menu"];
[df synchronize];
+
+ //If we're connected over a network, refresh the menu immediately
+ if ([[NetworkController sharedController] isConnectedToServer]) {
+ [controller timerUpdate];
+ }
}
- (void)setLaunchesAtLogin:(BOOL)flag