#import "PreferencesController.h"
-#import "MenuTunes.h"
+#import "MainController.h"
#import "HotKeyCenter.h"
@implementation PreferencesController
-- (id)initWithMenuTunes:(MenuTunes *)tunes;
+- (id)initWithMenuTunes:(MainController *)tunes;
{
if ( (self = [super init]) ) {
int i;
mt = [tunes retain];
[mt registerDefaultsIfNeeded];
-
+
//Load the nib
[NSBundle loadNibNamed:@"Preferences" owner:self];
[allTableView registerForDraggedTypes:[NSArray arrayWithObjects:@"MenuTableViewPboardType", @"AllTableViewPboardType", nil]];
//Set the list of items you can have.
- availableItems = [[NSMutableArray alloc] initWithObjects:@"Current Track Info", @"Upcoming Songs", @"Playlists", @"EQ Presets", @"Play/Pause", @"Next Track", @"Previous Track", @"Fast Forward", @"Rewind", @"<separator>", nil];
+ availableItems = [[NSMutableArray alloc] initWithObjects:@"Current Track Info", @"Upcoming Songs", @"Playlists", @"EQ Presets", @"Song Rating", @"Play/Pause", @"Next Track", @"Previous Track", @"Fast Forward", @"Rewind", @"<separator>", nil];
//Get our preferred menu
myItems = [[[NSUserDefaults standardUserDefaults] arrayForKey:@"menu"] mutableCopy];
}
//Items that show should a submenu image
- submenuItems = [[NSArray alloc] initWithObjects:@"Upcoming Songs", @"Playlists", @"EQ Presets", nil];
+ submenuItems = [[NSArray alloc] initWithObjects:@"Upcoming Songs", @"Playlists", @"EQ Presets", @"Song Rating", nil];
//Fill in the number of songs in advance to show field
[songsInAdvance setIntValue:[defaults integerForKey:@"SongsInAdvance"]];
- (IBAction)apply:(id)sender
{
- ProcessSerialNumber psn;
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:myItems forKey:@"menu"];
[defaults setInteger:5 forKey:@"SongsInAdvance"];
}
- psn = [mt iTunesPSN];
- if (!((psn.highLongOfPSN == kNoProcess) && (psn.lowLongOfPSN == 0))) {
- [mt rebuildMenu];
+ {
+ NSArray *apps = [[NSWorkspace sharedWorkspace] launchedApplications];
+ int i;
+
+ for (i = 0; i < [apps count]; i++) {
+ if ([[[apps objectAtIndex:i] objectForKey:@"NSApplicationName"]
+ isEqualToString:@"iTunes"]) {
+ [mt rebuildMenu];
+ }
+ }
}
[mt clearHotKeys];
}