+ [statusWindowController showUpcomingSongsWindowWithTitles:[NSArray arrayWithObject:NSLocalizedString(@"noUpcomingSongs", @"No upcoming songs.")]];
+ }
+}
+
+- (void)incrementVolume
+{
+ float volume = [currentRemote volume];
+ float dispVol = volume;
+ ITDebugLog(@"Incrementing volume.");
+ volume += 0.110;
+ dispVol += 0.100;
+
+ if (volume > 1.0) {
+ volume = 1.0;
+ dispVol = 1.0;
+ }
+
+ ITDebugLog(@"Setting volume to %f", volume);
+ [currentRemote setVolume:volume];
+
+ // Show volume status window
+ [statusWindowController showVolumeWindowWithLevel:dispVol];
+}
+
+- (void)decrementVolume
+{
+ float volume = [currentRemote volume];
+ float dispVol = volume;
+ ITDebugLog(@"Decrementing volume.");
+ volume -= 0.090;
+ dispVol -= 0.100;
+
+ if (volume < 0.0) {
+ volume = 0.0;
+ dispVol = 0.0;
+ }
+
+ ITDebugLog(@"Setting volume to %f", volume);
+ [currentRemote setVolume:volume];
+
+ //Show volume status window
+ [statusWindowController showVolumeWindowWithLevel:dispVol];
+}
+
+- (void)incrementRating
+{
+ float rating = [currentRemote currentSongRating];
+ ITDebugLog(@"Incrementing rating.");
+
+ if ([currentRemote currentPlaylistIndex] == 0) {
+ ITDebugLog(@"No song playing, rating change aborted.");
+ return;
+ }
+
+ rating += 0.2;
+ if (rating > 1.0) {
+ rating = 1.0;
+ }
+ ITDebugLog(@"Setting rating to %f", rating);
+ [currentRemote setCurrentSongRating:rating];
+
+ //Show rating status window
+ [statusWindowController showRatingWindowWithRating:rating];
+}
+
+- (void)decrementRating
+{
+ float rating = [currentRemote currentSongRating];
+ ITDebugLog(@"Decrementing rating.");
+
+ if ([currentRemote currentPlaylistIndex] == 0) {
+ ITDebugLog(@"No song playing, rating change aborted.");
+ return;
+ }
+
+ rating -= 0.2;
+ if (rating < 0.0) {
+ rating = 0.0;
+ }
+ ITDebugLog(@"Setting rating to %f", rating);
+ [currentRemote setCurrentSongRating:rating];
+
+ //Show rating status window
+ [statusWindowController showRatingWindowWithRating:rating];
+}
+
+- (void)toggleLoop
+{
+ ITMTRemotePlayerRepeatMode repeatMode = [currentRemote repeatMode];
+ ITDebugLog(@"Toggling repeat mode.");
+ switch (repeatMode) {
+ case ITMTRemotePlayerRepeatOff:
+ repeatMode = ITMTRemotePlayerRepeatAll;
+ break;
+ case ITMTRemotePlayerRepeatAll:
+ repeatMode = ITMTRemotePlayerRepeatOne;
+ break;
+ case ITMTRemotePlayerRepeatOne:
+ repeatMode = ITMTRemotePlayerRepeatOff;
+ break;