Mmm, Renaming for the BIG REWRITE OF MARCH 2003!!!! BBQ!!!!1
[MenuTunes.git] / OldMainController.h
1 /*
2  *      MenuTunes
3  *  MainController
4  *    App Controller Class
5  *
6  *  Original Author : Kent Sutherland <ksuther@ithinksw.com>
7  *   Responsibility : Kent Sutherland <ksuther@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 #import <StatusWindow.h>
21
22 //@class MenuTunesView;
23 @class PreferencesController, StatusWindow;
24
25 @interface MainController : NSObject
26 {
27     ITStatusItem   *statusItem;
28     NSMenu         *menu;
29     ITMTRemote     *currentRemote;
30     NSMutableArray *remoteArray;
31     
32     //Used in updating the menu automatically
33     NSTimer *refreshTimer;
34     int      trackInfoIndex;
35     int      lastSongIndex;
36     int      lastPlaylistIndex;
37     BOOL     isPlayingRadio;
38     
39     ITMTRemotePlayerRunningState isAppRunning;
40     BOOL didHaveAlbumName;
41     BOOL didHaveArtistName; //Helper variable for creating the menu
42     
43     //For upcoming songs
44     NSMenuItem *upcomingSongsItem;
45     NSMenu     *upcomingSongsMenu;
46     
47     //For playlist selection
48     NSMenuItem *playlistItem;
49     NSMenu     *playlistMenu;
50     
51     //For EQ sets
52     NSMenuItem *eqItem;
53     NSMenu     *eqMenu;
54     
55     //For song ratings
56     NSMenuItem *songRatingMenuItem;
57     NSMenu *ratingMenu;
58     
59     NSMenuItem *playPauseMenuItem; //Toggle between 'Play' and 'Pause'
60     
61     PreferencesController *prefsController;
62     StatusWindow *statusWindow; //Shows track info and upcoming songs.
63 }
64
65 - (void)remotePlayerLaunched:(NSNotification *)note;
66 - (void)remotePlayerTerminated:(NSNotification *)note;
67
68 - (void)registerDefaultsIfNeeded;
69 - (void)rebuildMenu;
70
71 - (void)runTimerInNewThread;
72
73 - (void)setSongRating:(id)sender;
74
75 - (void)clearHotKeys;
76 - (void)closePreferences;
77
78 - (void)showPlayer;
79
80 @end