-#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"]];
- (void)timerUpdate
{
- //This huge if statement is being nasty
- /*if ( ( [self songChanged] ) ||
- ( ([self radioIsPlaying]) && (latestPlaylistClass != ITMTRemotePlayerRadioPlaylist) ) ||
- ( (! [self radioIsPlaying]) && (latestPlaylistClass == ITMTRemotePlayerRadioPlaylist) ) )*/
-
if ([self songChanged]) {
[self setLatestSongIdentifier:[currentRemote currentSongUniqueIdentifier]];
- latestPlaylistClass = [currentRemote currentPlaylistClass];
[menuController rebuildSubmenus];
if ( [df boolForKey:@"showSongInfoOnChange"] ) {
[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 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;
}