HAY GUYS LETS SHIP
[MenuTunes.git] / MenuController.h
1 //
2 //  MenuController.h
3 //  MenuTunes
4 //
5 //  Created by Joseph Spiros on Wed Apr 30 2003.
6 //  Copyright (c) 2003 iThink Software. All rights reserved.
7 //
8
9 #import <Cocoa/Cocoa.h>
10 #import "ITMTRemote.h"
11
12 // Internal: To be used with NSMenuItems as their tag, for use with the NSMenuValidation stuff.
13 // Also will be used in supplying the controller with the layout to use for the MenuItems, unless
14 // we have the controller read the prefs itself.
15 typedef enum {
16     MTMenuSeperator = -1,
17     MTMenuTrackInfoHeader,
18     MTMenuTrackInfoTitle,
19     MTMenuTrackInfoAlbum,
20     MTMenuTrackInfoArtist,
21     MTMenuTrackInfoTrackTime,
22     MTMenuTrackInfoTrackNumber,
23     MTMenuTrackInfoRating,
24     MTMenuRatingMenu,
25     MTMenuPlaylistMenu,
26     MTMenuEqualizerMenu,
27     MTMenuUpcomingSongsMenu,
28     // MTMenuBrowseMenu,
29     // MTMenuVolumeMenu,
30     // MTMenuSourceMenu,
31     MTMenuPlayPauseItem,
32     MTMenuFastForwardItem,
33     MTMenuRewindItem,
34     MTMenuPreviousTrackItem,
35     MTMenuNextTrackItem,
36     MTMenuShowPlayerItem,
37     MTMenuPreferencesItem,
38     MTMenuQuitItem,
39     MTMenuRegisterItem
40 } MTMenuItemTag;
41
42 @interface MenuController : NSObject
43 {
44     NSMutableArray *_menuLayout;
45     NSMenu *_currentMenu;
46     NSMenu *_ratingMenu, *_upcomingSongsMenu, *_eqMenu, *_playlistsMenu; //Submenus
47     
48     ITMTRemote *currentRemote;
49     int _currentPlaylist, _currentTrack;
50     BOOL _playingRadio;
51 }
52
53 - (NSMenu *)menu;
54 - (NSMenu *)menuForNoPlayer;
55 - (void)rebuildSubmenus;
56
57 // - (NSArray *)menuLayout;
58 // - (void)setMenuLayout:(NSArray *)newLayoutArray;
59
60 @end