6 * Original Author : Kent Sutherland <ksuther@ithinksw.com>
7 * Responsibility : Kent Sutherland <ksuther@ithinksw.com>
9 * Copyright (c) 2002-2003 iThink Software.
15 #import <Cocoa/Cocoa.h>
16 #import <Carbon/Carbon.h>
17 #import <ITKit/ITKit.h>
18 #import <ITFoundation/ITFoundation.h>
19 #import <ITMTRemote/ITMTRemote.h>
20 #import "PreferencesController.h"
21 #import "StatusWindow.h"
23 @interface MainController : NSObject
25 ITStatusItem *statusItem;
27 ITMTRemote *currentRemote;
28 NSMutableArray *remoteArray;
30 //Used in updating the menu automatically
31 NSTimer *refreshTimer;
34 int lastPlaylistIndex;
35 NSString *lastSongIdentifier;
39 ITMTRemotePlayerRunningState isAppRunning;
40 BOOL didHaveAlbumName;
41 BOOL didHaveArtistName; //Helper variable for creating the menu
44 NSMenuItem *upcomingSongsItem;
45 NSMenu *upcomingSongsMenu;
47 //For playlist selection
48 NSMenuItem *playlistItem;
56 NSMenuItem *ratingItem;
59 NSMenuItem *playPauseItem; //Toggle between 'Play' and 'Pause'
61 StatusWindow *statusWindow; //Shows track info and upcoming songs.
64 - (void)applicationLaunched:(NSNotification *)note;
65 - (void)applicationTerminated:(NSNotification *)note;
70 - (void)closePreferences;