More fun times with network prefs.
[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 CustomMenuTableView, MainController, ITKeyCombo;
18
19 @interface PreferencesController : NSObject
20 {
21     IBOutlet NSButton *albumCheckbox;
22     IBOutlet NSTableView *allTableView;
23     IBOutlet NSPopUpButton *appearanceEffectPopup;
24     IBOutlet NSSlider *appearanceSpeedSlider;
25     IBOutlet NSButton *artistCheckbox;
26     IBOutlet NSTextField *clientPasswordTextField;
27     IBOutlet NSTextField *hostTextField;
28     IBOutlet NSTableView *hotKeysTableView;
29     IBOutlet NSButton *launchAtLoginCheckbox;
30     IBOutlet NSButton *launchPlayerAtLaunchCheckbox;
31     IBOutlet NSTextField *locationTextField;
32     IBOutlet NSView *manualView;
33     IBOutlet CustomMenuTableView *menuTableView;
34     IBOutlet NSButton *nameCheckbox;
35     IBOutlet NSTextField *nameTextField;
36     IBOutlet NSPanel *passwordPanel;
37     IBOutlet NSTextField *passwordPanelMessage;
38     IBOutlet NSButton *passwordPanelOKButton;
39     IBOutlet NSTextField *passwordPanelTextField;
40     IBOutlet NSTextField *passwordPanelTitle;
41     IBOutlet NSTextField *passwordTextField;
42     IBOutlet NSButton *ratingCheckbox;
43     IBOutlet NSTextField *selectedPlayerTextField;
44     IBOutlet NSBox *selectPlayerBox;
45     IBOutlet NSPanel *selectPlayerSheet;
46     IBOutlet NSButton *selectSharedPlayerButton;
47     IBOutlet NSButton *shareMenuTunesCheckbox;
48     IBOutlet NSButton *sharingPanelOKButton;
49     IBOutlet NSTableView *sharingTableView;
50     IBOutlet NSButton *showOnChangeCheckbox;
51     IBOutlet NSTextField *songsInAdvance;
52     IBOutlet NSButton *trackNumberCheckbox;
53     IBOutlet NSButton *trackTimeCheckbox;
54     IBOutlet NSButton *usePasswordCheckbox;
55     IBOutlet NSButton *useSharedMenuTunesCheckbox;
56     IBOutlet NSSlider *vanishDelaySlider;
57     IBOutlet NSPopUpButton *vanishEffectPopup;
58     IBOutlet NSSlider *vanishSpeedSlider;
59     IBOutlet NSWindow *window;
60     IBOutlet NSView *zeroConfView;
61
62     MainController *controller;
63     NSUserDefaults *df;
64     NSMutableArray *availableItems;
65     NSMutableArray *myItems;
66     NSArray        *submenuItems;
67     
68     NSArray *hotKeysArray, *hotKeyNamesArray;
69     NSMutableDictionary *hotKeysDictionary;
70 }
71
72 + (PreferencesController *)sharedPrefs;
73
74 - (id)controller;
75 - (void)setController:(id)object;
76
77 - (BOOL)showPasswordPanel;
78 - (BOOL)showInvalidPasswordPanel;
79
80 - (IBAction)changeGeneralSetting:(id)sender;
81 - (IBAction)changeSharingSetting:(id)sender;
82 - (IBAction)changeStatusWindowSetting:(id)sender;
83 - (void)resetRemotePlayerTextFields;
84
85 - (IBAction)clearHotKey:(id)sender;
86 - (IBAction)editHotKey:(id)sender;
87 - (IBAction)showPrefsWindow:(id)sender;
88
89 - (void)registerDefaults;
90 - (void)deletePressedInTableView:(NSTableView *)tableView;
91
92 @end