3 * PreferencesController
4 * Preferences window controller
6 * Original Author : Kent Sutherland <ksuther@ithinksw.com>
7 * Responsibility : Kent Sutherland <ksuther@ithinksw.com>
9 * Copyright (c) 2002 iThink Software.
15 #import <Cocoa/Cocoa.h>
17 @class MainController, KeyCombo;
19 @interface PreferencesController : NSObject
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 NSTextField *songsInAdvance;
33 IBOutlet NSButton *trackInfoButton;
34 IBOutlet NSButton *trackTimeCheckbox;
35 IBOutlet NSButton *upcomingSongsButton;
36 IBOutlet NSWindow *window;
38 MainController *controller;
40 NSMutableArray *availableItems;
41 NSMutableArray *myItems;
42 NSArray *submenuItems;
45 KeyCombo *playPauseCombo;
46 KeyCombo *nextTrackCombo;
47 KeyCombo *prevTrackCombo;
48 KeyCombo *trackInfoCombo;
49 KeyCombo *upcomingSongsCombo;
54 + (PreferencesController *)sharedPrefs;
57 - (void)setController:(id)object;
59 - (IBAction)showPrefsWindow:(id)sender;
61 - (IBAction)apply:(id)sender;
62 - (IBAction)cancel:(id)sender;
63 - (IBAction)cancelHotKey:(id)sender;
64 - (IBAction)clearHotKey:(id)sender;
65 - (IBAction)okHotKey:(id)sender;
66 - (IBAction)save:(id)sender;
67 - (IBAction)setCurrentTrackInfo:(id)sender;
68 - (IBAction)setNextTrack:(id)sender;
69 - (IBAction)setPlayPause:(id)sender;
70 - (IBAction)setPreviousTrack:(id)sender;
71 - (IBAction)setUpcomingSongs:(id)sender;
73 - (void)setHotKey:(NSString *)key;
74 - (void)setKeyCombo:(KeyCombo *)newCombo;