- (IBAction)changeGeneralSetting:(id)sender
{
- BOOL rebuildRequired = NO;
-
if ( [sender tag] == 1010) {
[self setLaunchesAtLogin:SENDER_STATE];
} else if ( [sender tag] == 1020) {
[df setBool:SENDER_STATE forKey:@"LaunchPlayerWithMT"];
} else if ( [sender tag] == 1030) {
[df setInteger:[sender intValue] forKey:@"SongsInAdvance"];
- rebuildRequired = YES;
+
} else if ( [sender tag] == 1040) {
// This will not be executed. Song info always shows the title of the song.
// [df setBool:SENDER_STATE forKey:@"showName"];
- // rebuildRequired = YES;
} else if ( [sender tag] == 1050) {
[df setBool:SENDER_STATE forKey:@"showArtist"];
- rebuildRequired = YES;
} else if ( [sender tag] == 1060) {
[df setBool:SENDER_STATE forKey:@"showAlbum"];
- rebuildRequired = YES;
} else if ( [sender tag] == 1070) {
[df setBool:SENDER_STATE forKey:@"showTime"];
- rebuildRequired = YES;
} else if ( [sender tag] == 1080) {
[df setBool:SENDER_STATE forKey:@"showTrackNumber"];
- rebuildRequired = YES;
} else if ( [sender tag] == 1090) {
[df setBool:SENDER_STATE forKey:@"showTrackRating"];
- rebuildRequired = YES;
}
-
- if ( rebuildRequired ) {
- //[controller rebuildMenu];
- // redraw song info status window, or upcoming songs here
- }
-
[df synchronize];
}
[self setCurrentHotKey:@"PrevTrack"];
break;
case 4035:
- [self setKeyCombo:[hotKeysDictionary objectForKey:@"ToggleVisualizer"]];
- [self setCurrentHotKey:@"ToggleVisualizer"];
+ [self setKeyCombo:[hotKeysDictionary objectForKey:@"ShowPlayer"]];
+ [self setCurrentHotKey:@"ShowPlayer"];
break;
case 4040:
[self setKeyCombo:[hotKeysDictionary objectForKey:@"ToggleLoop"]];
[nextTrackButton setTitle:@""];
} else if ([enumKey isEqualToString:@"PrevTrack"]) {
[previousTrackButton setTitle:@""];
- } else if ([enumKey isEqualToString:@"ToggleVisualizer"]) {
- [visualizerButton setTitle:@""];
+ } else if ([enumKey isEqualToString:@"ShowPlayer"]) {
+ [showPlayerButton setTitle:@""];
} else if ([enumKey isEqualToString:@"TrackInfo"]) {
[trackInfoButton setTitle:@""];
} else if ([enumKey isEqualToString:@"UpcomingSongs"]) {
} else if ([currentHotKey isEqualToString:@"PrevTrack"]) {
[previousTrackButton setTitle:string];
[[HotKeyCenter sharedCenter] addHotKey:@"PrevTrack" combo:combo target:[MainController sharedController] action:@selector(prevSong)];
- } else if ([currentHotKey isEqualToString:@"ToggleVisualizer"]) {
- [visualizerButton setTitle:string];
- //[[HotKeyCenter sharedCenter] addHotKey:@"ToggleVisualizer" combo:combo target:[MainController sharedController] selector:@selector(NULL)];
+ } else if ([currentHotKey isEqualToString:@"ShowPlayer"]) {
+ [showPlayerButton setTitle:string];
+ [[HotKeyCenter sharedCenter] addHotKey:@"ShowPlayer" combo:combo target:[MainController sharedController] action:@selector(showPlayer)];
} else if ([currentHotKey isEqualToString:@"TrackInfo"]) {
[trackInfoButton setTitle:string];
[[HotKeyCenter sharedCenter] addHotKey:@"TrackInfo" combo:combo target:[MainController sharedController] action:@selector(showCurrentTrackInfo)];
[hotKeysDictionary setObject:[KeyCombo keyCombo] forKey:@"PrevTrack"];
}
- if ([df objectForKey:@"ToggleVisualizer"]) {
- anItem = [df keyComboForKey:@"ToggleVisualizer"];
- [hotKeysDictionary setObject:anItem forKey:@"ToggleVisualizer"];
- [visualizerButton setTitle:[anItem userDisplayRep]];
+ if ([df objectForKey:@"ShowPlayer"]) {
+ anItem = [df keyComboForKey:@"ShowPlayer"];
+ [hotKeysDictionary setObject:anItem forKey:@"ShowPlayer"];
+ [showPlayerButton setTitle:[anItem userDisplayRep]];
} else {
- [hotKeysDictionary setObject:[KeyCombo keyCombo] forKey:@"ToggleVisualizer"];
+ [hotKeysDictionary setObject:[KeyCombo keyCombo] forKey:@"ShowPlayer"];
}
if ([df objectForKey:@"TrackInfo"]) {
[nameCheckbox setEnabled:NO]; // Song info will ALWAYS show song title.
[artistCheckbox setState:[df boolForKey:@"showArtist"] ? NSOnState : NSOffState];
[trackTimeCheckbox setState:[df boolForKey:@"showTime"] ? NSOnState : NSOffState];
+ [trackNumberCheckbox setState:[df boolForKey:@"showTrackNumber"] ? NSOnState : NSOffState];
// Set the launch at login checkbox state
[df synchronize];