6 * Original Author : Matthew Judy <mjudy@ithinksw.com>
7 * Responsibility : Matthew Judy <mjudy@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 "MTBlingController.h"
22 @class StatusWindowController, MenuController;
24 @interface MainController : NSObject
26 ITStatusItem *statusItem;
27 NSMutableArray *remoteArray;
28 ITMTRemote *currentRemote;
30 ITMTRemotePlayerRunningState playerRunningState;
31 ITMTRemotePlayerPlaylistClass latestPlaylistClass;
33 //Used in updating the menu automatically
34 NSTimer *refreshTimer;
35 NSString *_latestSongIdentifier;
37 StatusWindowController *statusWindowController; //Shows status windows
38 MenuController *menuController;
42 MTBlingController *bling;
44 + (MainController *)sharedController;
48 //Methods called from MenuController by menu items
58 - (void)selectPlaylistAtIndex:(int)index;
59 - (void)selectSongAtIndex:(int)index;
60 - (void)selectSongRating:(int)rating;
61 - (void)selectEQPresetAtIndex:(int)index;
63 - (void)showPreferences;
64 - (void)quitMenuTunes;
68 - (ITMTRemote *)currentRemote;
71 - (void)closePreferences;