Tons of new stuff. Made is compile now too :)
[MenuTunes.git] / MainController.h
1 /*
2  *      MenuTunes
3  *  MainController
4  *    App Controller Class
5  *
6  *  Original Author : Matthew Judy <mjudy@ithinksw.com>
7  *   Responsibility : Matthew Judy <mjudy@ithinksw.com>
8  *
9  *  Copyright (c) 2002-2003 iThink Software.
10  *  All Rights Reserved
11  *
12  */
13
14
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
21 @class StatusWindowController, MenuController;
22
23 @interface MainController : NSObject
24 {
25     ITStatusItem   *statusItem;
26     NSMutableArray *remoteArray;
27     ITMTRemote     *currentRemote;
28     
29     ITMTRemotePlayerRunningState  playerRunningState;
30     ITMTRemotePlayerPlaylistClass latestPlaylistClass;
31     
32     //Used in updating the menu automatically
33     NSTimer *refreshTimer;
34     NSString *_latestSongIdentifier;
35     
36     StatusWindowController *statusWindowController; //Shows status windows
37     MenuController *menuController;
38     NSUserDefaults *df;
39 }
40 + (MainController *)sharedController;
41
42 - (void)menuClicked;
43
44 //Methods called from MenuController by menu items
45 - (void)playPause;
46 - (void)nextSong;
47 - (void)prevSong;
48 - (void)fastForward;
49 - (void)rewind;
50 - (void)selectPlaylistAtIndex:(int)index;
51 - (void)selectSongAtIndex:(int)index;
52 - (void)selectSongRating:(int)rating;
53 - (void)selectEQPresetAtIndex:(int)index;
54 - (void)showPreferences;
55 - (void)quitMenuTunes;
56
57 //
58
59 - (ITMTRemote *)currentRemote;
60 - (void)clearHotKeys;
61 - (void)closePreferences;
62
63 @end