-#import "NewMainController.h"
+#import "MainController.h"
#import "MenuController.h"
#import "PreferencesController.h"
#import "HotKeyCenter.h"
@interface MainController(Private)
- (ITMTRemote *)loadRemote;
-- (void)setupHotKeys;
- (void)timerUpdate;
- (void)setLatestSongIdentifier:(NSString *)newIdentifier;
- (void)showCurrentTrackInfo;
if ([currentRemote playerRunningState] == ITMTRemotePlayerRunning) {
[self applicationLaunched:nil];
} else {
- [self applicationTerminated:nil];
+ if ([df boolForKey:@"LaunchPlayerWithMT"])
+ {
+ [self showPlayer];
+ }
+ else
+ {
+ [self applicationTerminated:nil];
+ }
}
[statusItem setImage:[NSImage imageNamed:@"menu"]];
[currentRemote showPrimaryInterface];
} else {
if (![[NSWorkspace sharedWorkspace] launchApplication:[currentRemote playerFullName]]) {
- NSLog(@"Error Launching Player");
+ NSLog(@"MenuTunes: Error Launching Player");
}
}
}
[[HotKeyCenter sharedCenter] removeHotKey:@"NextTrack"];
[[HotKeyCenter sharedCenter] removeHotKey:@"PrevTrack"];
[[HotKeyCenter sharedCenter] removeHotKey:@"TrackInfo"];
+ [[HotKeyCenter sharedCenter] removeHotKey:@"ShowPlayer"];
[[HotKeyCenter sharedCenter] removeHotKey:@"UpcomingSongs"];
[[HotKeyCenter sharedCenter] removeHotKey:@"ToggleLoop"];
[[HotKeyCenter sharedCenter] removeHotKey:@"ToggleShuffle"];
target:self action:@selector(prevSong)];
}
+ if ([df objectForKey:@"ShowPlayer"] != nil) {
+ [[HotKeyCenter sharedCenter] addHotKey:@"ShowPlayer"
+ combo:[df keyComboForKey:@"ShowPlayer"]
+ target:self action:@selector(showPlayer)];
+ }
+
if ([df objectForKey:@"TrackInfo"] != nil) {
[[HotKeyCenter sharedCenter] addHotKey:@"TrackInfo"
combo:[df keyComboForKey:@"TrackInfo"]
trackTotal:trackTotal
rating:rating];
} else {
- title = @"No song is playing.";
+ title = NSLocalizedString(@"noSongPlaying", @"No song is playing.");
[statusWindowController showSongWindowWithTitle:title
album:nil
artist:nil
[statusWindowController showUpcomingSongsWithTitles:songList];
} else {
- [statusWindowController showUpcomingSongsWithTitles:[NSArray arrayWithObject:@"No upcoming songs."]];
+ [statusWindowController showUpcomingSongsWithTitles:[NSArray arrayWithObject:NSLocalizedString(@"noUpcomingSongs", @"No upcoming songs.")]];
}
}
[currentRemote setVolume:volume];
//Show volume status window
+ [statusWindowController showVolumeWindowWithLevel:volume];
}
- (void)decrementVolume
[currentRemote setVolume:volume];
//Show volume status window
+ [statusWindowController showVolumeWindowWithLevel:volume];
}
- (void)incrementRating
[currentRemote setCurrentSongRating:rating];
//Show rating status window
+ [statusWindowController showRatingWindowWithLevel:rating];
}
- (void)decrementRating
[currentRemote setCurrentSongRating:rating];
//Show rating status window
+ [statusWindowController showRatingWindowWithLevel:rating];
}
- (void)toggleLoop
[currentRemote setRepeatMode:repeatMode];
//Show loop status window
+ [statusWindowController showLoopWindowWithMode:repeatMode];
}
- (void)toggleShuffle
{
- [currentRemote setShuffleEnabled:![currentRemote shuffleEnabled]];
+ bool newShuffleEnabled = ![currentRemote shuffleEnabled];
+ [currentRemote setShuffleEnabled:newShuffleEnabled];
//Show shuffle status window
+ [statusWindowController showLoopWindowWithMode:newShuffleEnabled];
}
/*************************************************************************/
[currentRemote begin];
[self setLatestSongIdentifier:@""];
[self timerUpdate];
- [NSThread detachNewThreadSelector:@selector(startTimerInNewThread) toTarget:self withObject:nil];
+ refreshTimer = [[NSTimer scheduledTimerWithTimeInterval:0.5
+ target:self
+ selector:@selector(timerUpdate)
+ userInfo:nil
+ repeats:YES] retain];
+ //[NSThread detachNewThreadSelector:@selector(startTimerInNewThread) toTarget:self withObject:nil];
[self setupHotKeys];
playerRunningState = ITMTRemotePlayerRunning;
}