1 /*****************************************************************************
2 * VLCSimplePrefsController.h: Simple Preferences for Mac OS X
3 *****************************************************************************
4 * Copyright (C) 2008-2014 VLC authors and VideoLAN
7 * Authors: Felix Paul Kühne <fkuehne at videolan dot org>
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
22 *****************************************************************************/
24 #import <Cocoa/Cocoa.h>
26 #import <vlc_common.h>
28 @interface VLCSimplePrefsController
: NSWindowController
31 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*audio_dolbyPopup
;
32 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_dolbyLabel
;
33 @
property (readwrite
, weak
) IBOutlet NSBox
*audio_effectsBox
;
34 @
property (readwrite
, weak
) IBOutlet NSButton
*audio_enableCheckbox
;
35 @
property (readwrite
, weak
) IBOutlet NSBox
*audio_generalBox
;
36 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_langTextField
;
37 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_langLabel
;
38 @
property (readwrite
, weak
) IBOutlet NSBox
*audio_lastBox
;
39 @
property (readwrite
, weak
) IBOutlet NSButton
*audio_lastCheckbox
;
40 @
property (readwrite
, weak
) IBOutlet NSSecureTextField
*audio_lastpwdSecureTextField
;
41 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_lastpwdLabel
;
42 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_lastuserTextField
;
43 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_lastuserLabel
;
44 @
property (readwrite
, weak
) IBOutlet NSView
*audioView
;
45 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*audio_visualPopup
;
46 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_visualLabel
;
47 @
property (readwrite
, weak
) IBOutlet NSTextField
*audio_volTextField
;
48 @
property (readwrite
, weak
) IBOutlet NSSlider
*audio_volSlider
;
49 @
property (readwrite
, weak
) IBOutlet NSMatrix
*audio_autosavevolMatrix
;
50 @
property (readwrite
, weak
) IBOutlet NSButtonCell
*audio_autosavevol_yesButtonCell
;
51 @
property (readwrite
, weak
) IBOutlet NSButtonCell
*audio_autosavevol_noButtonCell
;
54 @
property (readwrite
) IBOutlet NSWindow
*hotkeys_change_win
;
55 @
property (readwrite
, weak
) IBOutlet NSButton
*hotkeys_changeButton
;
56 @
property (readwrite
, weak
) IBOutlet NSTextField
*hotkeys_changeLabel
;
57 @
property (readwrite
, weak
) IBOutlet NSTextField
*hotkeys_change_keysLabel
;
58 @
property (readwrite
, weak
) IBOutlet NSTextField
*hotkeys_change_takenLabel
;
59 @
property (readwrite
, weak
) IBOutlet NSButton
*hotkeys_change_cancelButton
;
60 @
property (readwrite
, weak
) IBOutlet NSButton
*hotkeys_change_okButton
;
61 @
property (readwrite
, weak
) IBOutlet NSButton
*hotkeys_clearButton
;
62 @
property (readwrite
, weak
) IBOutlet NSTextField
*hotkeysLabel
;
63 @
property (readwrite
, weak
) IBOutlet NSTableView
*hotkeys_listbox
;
64 @
property (readwrite
, weak
) IBOutlet NSView
*hotkeysView
;
67 @
property (readwrite
, weak
) IBOutlet NSBox
*input_recordBox
;
68 @
property (readwrite
, weak
) IBOutlet NSTextField
*input_recordTextField
;
69 @
property (readwrite
, weak
) IBOutlet NSButton
*input_recordButton
;
70 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*input_aviPopup
;
71 @
property (readwrite
, weak
) IBOutlet NSTextField
*input_aviLabel
;
72 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*input_cachelevelPopup
;
73 @
property (readwrite
, weak
) IBOutlet NSTextField
*input_cachelevelLabel
;
74 @
property (readwrite
, weak
) IBOutlet NSTextField
*input_cachelevel_customLabel
;
75 @
property (readwrite
, weak
) IBOutlet NSBox
*input_cachingBox
;
76 @
property (readwrite
, weak
) IBOutlet NSBox
*input_muxBox
;
77 @
property (readwrite
, weak
) IBOutlet NSBox
*input_netBox
;
78 @
property (readwrite
, weak
) IBOutlet NSTextField
*input_postprocTextField
;
79 @
property (readwrite
, weak
) IBOutlet NSTextField
*input_postprocLabel
;
80 @
property (readwrite
, weak
) IBOutlet NSTextField
*input_skipLoopLabel
;
81 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*input_skipLoopPopup
;
82 @
property (readwrite
, weak
) IBOutlet NSButton
*input_urlhandlerButton
;
83 @
property (readwrite
, weak
) IBOutlet NSButton
*input_skipFramesCheckbox
;
84 @
property (readwrite
, weak
) IBOutlet NSView
*inputView
;
86 // intf pane - general box
87 @
property (readwrite
, weak
) IBOutlet NSBox
*intf_generalSettingsBox
;
88 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*intf_languagePopup
;
89 @
property (readwrite
, weak
) IBOutlet NSTextField
*intf_languageLabel
;
90 @
property (readwrite
, weak
) IBOutlet NSTextField
*intf_styleLabel
;
91 @
property (readwrite
, weak
) IBOutlet NSButtonCell
*intf_style_darkButtonCell
;
92 @
property (readwrite
, weak
) IBOutlet NSButtonCell
*intf_style_brightButtonCell
;
93 @
property (readwrite
, weak
) IBOutlet NSButton
*intf_statusIconCheckbox
;
95 // intf pane - control box
96 @
property (readwrite
, weak
) IBOutlet NSBox
*intf_playbackControlBox
;
97 @
property (readwrite
, weak
) IBOutlet NSTextField
*intf_continueplaybackLabel
;
98 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*intf_continueplaybackPopup
;
99 @
property (readwrite
, weak
) IBOutlet NSButton
*intf_appleremoteCheckbox
;
100 @
property (readwrite
, weak
) IBOutlet NSButton
*intf_mediakeysCheckbox
;
101 @
property (readwrite
, weak
) IBOutlet NSButton
*intf_appleremote_sysvolCheckbox
;
103 // intf pane - behaviour box
104 @
property (readwrite
, weak
) IBOutlet NSBox
*intf_playbackBehaviourBox
;
105 @
property (readwrite
, weak
) IBOutlet NSButton
*intf_enableNotificationsCheckbox
;
106 @
property (readwrite
, weak
) IBOutlet NSTextField
*intf_pauseitunesLabel
;
107 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*intf_pauseitunesPopup
;
109 // intf pane - network box
110 @
property (readwrite
, weak
) IBOutlet NSBox
*intf_networkBox
;
111 @
property (readwrite
, weak
) IBOutlet NSButton
*intf_artCheckbox
;
112 @
property (readwrite
, weak
) IBOutlet NSButton
*intf_updateCheckbox
;
113 @
property (readwrite
, weak
) IBOutlet NSTextField
*intf_last_updateLabel
;
115 // intf pane - http interface box
116 @
property (readwrite
, weak
) IBOutlet NSBox
*intf_luahttpBox
;
117 @
property (readwrite
, weak
) IBOutlet NSTextField
*intf_luahttppwdLabel
;
118 @
property (readwrite
, weak
) IBOutlet NSTextField
*intf_luahttppwdTextField
;
119 @
property (readwrite
, weak
) IBOutlet NSView
*intfView
;
122 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*osd_encodingPopup
;
123 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_encodingLabel
;
124 @
property (readwrite
, weak
) IBOutlet NSBox
*osd_fontBox
;
125 @
property (readwrite
, weak
) IBOutlet NSButton
*osd_fontButton
;
126 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*osd_font_colorPopup
;
127 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_font_colorLabel
;
128 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_fontTextField
;
129 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*osd_font_sizePopup
;
130 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_font_sizeLabel
;
131 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_fontLabel
;
132 @
property (readwrite
, weak
) IBOutlet NSBox
*osd_langBox
;
133 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_langTextField
;
134 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_langLabel
;
135 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_opacityLabel
;
136 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_opacityTextField
;
137 @
property (readwrite
, weak
) IBOutlet NSSlider
*osd_opacitySlider
;
138 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*osd_outline_colorPopup
;
139 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_outline_colorLabel
;
140 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*osd_outline_thicknessPopup
;
141 @
property (readwrite
, weak
) IBOutlet NSTextField
*osd_outline_thicknessLabel
;
142 @
property (readwrite
, weak
) IBOutlet NSButton
*osd_forceboldCheckbox
;
143 @
property (readwrite
, weak
) IBOutlet NSBox
*osd_osdBox
;
144 @
property (readwrite
, weak
) IBOutlet NSButton
*osd_osdCheckbox
;
145 @
property (readwrite
, weak
) IBOutlet NSView
*osdView
;
147 @
property (readwrite
, weak
) IBOutlet NSButton
*showAllButton
;
148 @
property (readwrite
, weak
) IBOutlet NSButton
*cancelButton
;
149 @
property (readwrite
, weak
) IBOutlet NSBox
*controlsBox
;
150 @
property (readwrite
, weak
) IBOutlet NSButton
*resetButton
;
151 @
property (readwrite
, weak
) IBOutlet NSButton
*saveButton
;
154 @
property (readwrite
, weak
) IBOutlet NSButton
*video_enableCheckbox
;
155 // video pane - display box
156 @
property (readwrite
, weak
) IBOutlet NSBox
*video_displayBox
;
157 @
property (readwrite
, weak
) IBOutlet NSButton
*video_embeddedCheckbox
;
158 @
property (readwrite
, weak
) IBOutlet NSButton
*video_pauseWhenMinimizedCheckbox
;
159 @
property (readwrite
, weak
) IBOutlet NSButton
*video_onTopCheckbox
;
160 @
property (readwrite
, weak
) IBOutlet NSButton
*video_videodecoCheckbox
;
162 // video pane - fullscreen box
163 @
property (readwrite
, weak
) IBOutlet NSBox
*video_fullscreenBox
;
164 @
property (readwrite
, weak
) IBOutlet NSButton
*video_startInFullscreenCheckbox
;
165 @
property (readwrite
, weak
) IBOutlet NSButton
*video_blackScreenCheckbox
;
166 @
property (readwrite
, weak
) IBOutlet NSButton
*video_nativeFullscreenCheckbox
;
167 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_deviceLabel
;
168 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*video_devicePopup
;
170 // video pane - video box
171 @
property (readwrite
, weak
) IBOutlet NSBox
*video_videoBox
;
172 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_deinterlaceLabel
;
173 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*video_deinterlacePopup
;
174 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_deinterlace_modeLabel
;
175 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*video_deinterlace_modePopup
;
177 // video pane - snapshot box
178 @
property (readwrite
, weak
) IBOutlet NSBox
*video_snapBox
;
179 @
property (readwrite
, weak
) IBOutlet NSButton
*video_snap_folderButton
;
180 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_snap_folderTextField
;
181 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_snap_folderLabel
;
182 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*video_snap_formatPopup
;
183 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_snap_formatLabel
;
184 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_snap_prefixTextField
;
185 @
property (readwrite
, weak
) IBOutlet NSTextField
*video_snap_prefixLabel
;
186 @
property (readwrite
, weak
) IBOutlet NSButton
*video_snap_seqnumCheckbox
;
188 @
property (readwrite
, weak
) IBOutlet NSView
*videoView
;
190 @
property (readwrite
, weak
) IBOutlet NSTextField
*urlhandler_titleLabel
;
191 @
property (readwrite
, weak
) IBOutlet NSTextField
*urlhandler_subtitleLabel
;
192 @
property (readwrite
, weak
) IBOutlet NSButton
*urlhandler_saveButton
;
193 @
property (readwrite
, weak
) IBOutlet NSButton
*urlhandler_cancelButton
;
194 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_ftpPopup
;
195 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_mmsPopup
;
196 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_rtmpPopup
;
197 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_rtpPopup
;
198 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_rtspPopup
;
199 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_sftpPopup
;
200 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_smbPopup
;
201 @
property (readwrite
, weak
) IBOutlet NSPopUpButton
*urlhandler_udpPopup
;
202 @
property (readwrite
) IBOutlet NSWindow
*urlhandler_win
;
205 - (NSToolbarItem
*)toolbar
:(NSToolbar
*)o_toolbar
206 itemForItemIdentifier
:(NSString
*)o_itemIdent
207 willBeInsertedIntoToolbar
:(BOOL
)b_willBeInserted
;
208 - (NSArray
*)toolbarDefaultItemIdentifiers
:(NSToolbar
*)toolbar
;
209 - (NSArray
*)toolbarAllowedItemIdentifiers
:(NSToolbar
*)toolbar
;
211 - (void)showSimplePrefs
;
212 - (void)showSimplePrefsWithLevel
:(NSInteger
)i_window_level
;
214 - (IBAction
)buttonAction
:(id
)sender
;
215 - (IBAction
)resetPreferences
:(id
)sender
;
216 - (void)sheetDidEnd
:(NSWindow
*)o_sheet
217 returnCode
:(int)i_return
218 contextInfo
:(void *)o_context
;
221 - (IBAction
)interfaceSettingChanged
:(id
)sender
;
224 - (IBAction
)audioSettingChanged
:(id
)sender
;
227 - (IBAction
)videoSettingChanged
:(id
)sender
;
229 /* OSD / subtitles */
230 - (IBAction
)osdSettingChanged
:(id
)sender
;
231 - (IBAction
)showFontPicker
:(id
)sender
;
232 - (void)changeFont
:(id
)sender
;
235 - (IBAction
)inputSettingChanged
:(id
)sender
;
236 - (IBAction
)urlHandlerAction
:(id
)sender
;
239 - (IBAction
)hotkeySettingChanged
:(id
)sender
;
240 - (BOOL
)changeHotkeyTo
: (NSString
*)theKey
;