Updated to version 1.6.5
[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
11 // Internal: To be used with NSMenuItems as their tag, for use with the NSMenuValidation stuff.
12 // Also will be used in supplying the controller with the layout to use for the MenuItems, unless
13 // we have the controller read the prefs itself.
14 typedef enum {
15     MTMenuSeperator = -1,
16     MTMenuTrackInfoHeader,
17     MTMenuTrackInfoTitle,
18     MTMenuTrackInfoAlbum,
19     MTMenuTrackInfoArtist,
20     MTMenuTrackInfoTrackTime,
21     MTMenuTrackInfoTrackNumber,
22     MTMenuTrackInfoRating,
23     MTMenuRatingMenu,
24     MTMenuPlaylistMenu,
25     MTMenuEqualizerMenu,
26     MTMenuUpcomingSongsMenu,
27     // MTMenuBrowseMenu,
28     // MTMenuVolumeMenu,
29     // MTMenuSourceMenu,
30     MTMenuPlayPauseItem,
31     MTMenuFastForwardItem,
32     MTMenuRewindItem,
33     MTMenuPreviousTrackItem,
34     MTMenuNextTrackItem,
35     MTMenuShowPlayerItem,
36     MTMenuPreferencesItem,
37         MTMenuAboutItem,
38     MTMenuQuitItem,
39     MTMenuRegisterItem
40 } MTMenuItemTag;
41
42 @interface MenuController : NSObject
43 {
44     NSMutableArray *_menuLayout;
45     NSMenu *_currentMenu;
46     NSMenu *_ratingMenu, *_upcomingSongsMenu, *_eqMenu, *_playlistsMenu, *_artistsMenu, *_albumsMenu; //Submenus
47     
48     int _currentPlaylist, _currentTrack;
49     BOOL _playingRadio, _continue;
50 }
51
52 - (NSMenu *)menu;
53 - (NSMenu *)menuForNoPlayer;
54 - (BOOL)rebuildSubmenus;
55
56 // - (NSArray *)menuLayout;
57 // - (void)setMenuLayout:(NSArray *)newLayoutArray;
58
59 @end