Added a toggle visualizer hotkey. Not implemented in the prefs fully yet,
[MenuTunes.git] / PreferencesController.h
1 /*
2  *      MenuTunes
3  *  PreferencesController
4  *    Preferences window controller
5  *
6  *  Original Author : Kent Sutherland <ksuther@ithinksw.com>
7  *   Responsibility : Kent Sutherland <ksuther@ithinksw.com>
8  *
9  *  Copyright (c) 2002 iThink Software.
10  *  All Rights Reserved
11  *
12  */
13
14
15 #import <Cocoa/Cocoa.h>
16
17 @class MainController, KeyCombo;
18
19 @interface PreferencesController : NSObject
20 {
21     IBOutlet NSButton *albumCheckbox;
22     IBOutlet NSTableView *allTableView;
23     IBOutlet NSButton *artistCheckbox;
24     IBOutlet NSTextField *keyComboField;
25     IBOutlet NSPanel *keyComboPanel;
26     IBOutlet NSButton *launchAtLoginCheckbox;
27     IBOutlet NSTableView *menuTableView;
28     IBOutlet NSButton *nameCheckbox;
29     IBOutlet NSButton *nextTrackButton;
30     IBOutlet NSButton *playPauseButton;
31     IBOutlet NSButton *previousTrackButton;
32     IBOutlet NSButton *ratingDecrementButton;
33     IBOutlet NSButton *ratingIncrementButton;
34     IBOutlet NSTextField *songsInAdvance;
35     IBOutlet NSButton *toggleLoopButton;
36     IBOutlet NSButton *toggleShuffleButton;
37     IBOutlet NSButton *trackInfoButton;
38     IBOutlet NSButton *trackTimeCheckbox;
39     IBOutlet NSButton *upcomingSongsButton;
40     IBOutlet NSButton *visualizerButton;
41     IBOutlet NSButton *volumeDecrementButton;
42     IBOutlet NSButton *volumeIncrementButton;
43     IBOutlet NSWindow *window;
44     
45     MainController *controller;
46     NSUserDefaults *df;
47     NSMutableArray *availableItems;
48     NSMutableArray *myItems;
49     NSArray        *submenuItems;
50
51     KeyCombo *combo;
52     KeyCombo *playPauseCombo;
53     KeyCombo *nextTrackCombo;
54     KeyCombo *prevTrackCombo;
55     KeyCombo *visualizerCombo;
56     KeyCombo *trackInfoCombo;
57     KeyCombo *upcomingSongsCombo;
58     KeyCombo *volumeIncrementCombo;
59     KeyCombo *volumeDecrementCombo;
60     KeyCombo *ratingIncrementCombo;
61     KeyCombo *ratingDecrementCombo;
62     KeyCombo *toggleLoopCombo;
63     KeyCombo *toggleShuffleCombo;
64     
65     NSString *setHotKey;
66 }
67
68 + (PreferencesController *)sharedPrefs;
69
70 - (id)controller;
71 - (void)setController:(id)object;
72
73 - (IBAction)showPrefsWindow:(id)sender;
74
75 - (IBAction)changeGeneralSetting:(id)sender;
76 - (IBAction)changeStatusWindowSetting:(id)sender;
77 - (IBAction)changeHotKey:(id)sender;
78
79 - (void)registerDefaults;
80
81 - (IBAction)cancelHotKey:(id)sender;
82 - (IBAction)clearHotKey:(id)sender;
83 - (IBAction)okHotKey:(id)sender;
84
85 - (void)setHotKey:(NSString *)key;
86 - (void)setKeyCombo:(KeyCombo *)newCombo;
87 @end