b42c3e99ad4d528ab7d3143041a1a7adf8c09645
[vlc.git] / modules / gui / macosx / VLCOpenWindowController.h
1 /*****************************************************************************
2  * VLCOpenWindowController.h: Open dialogues for VLC's MacOS X port
3  *****************************************************************************
4  * Copyright (C) 2002-2016 VLC authors and VideoLAN
5  * $Id$
6  *
7  * Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
8  *          Christophe Massiot <massiot@via.ecp.fr>
9  *          Derk-Jan Hartman <thedj@users.sourceforge.net>
10  *          Felix Paul K├╝hne <fkuehne at videolan dot org>
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU General Public License as published by
14  * the Free Software Foundation; either version 2 of the License, or
15  * (at your option) any later version.
16  *
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20  * GNU General Public License for more details.
21  *
22  * You should have received a copy of the GNU General Public License
23  * along with this program; if not, write to the Free Software
24  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
25  *****************************************************************************/
26
27 #import <Cocoa/Cocoa.h>
28
29 @interface VLCOpenWindowController : NSWindowController
30
31 @property (readwrite, weak) IBOutlet NSTextField *mrlTextField;
32 @property (readwrite, weak) IBOutlet NSTextField *mrlLabel;
33 @property (readwrite, weak) IBOutlet NSView *mrlView;
34 @property (readwrite, weak) IBOutlet NSButton *mrlButton;
35 @property (readwrite, weak) IBOutlet NSTabView *tabView;
36
37 @property (readwrite, weak) IBOutlet NSButton *okButton;
38 @property (readwrite, weak) IBOutlet NSButton *cancelButton;
39
40 /* bottom-line items */
41 @property (readwrite, weak) IBOutlet NSButton *outputCheckbox;
42 @property (readwrite, weak) IBOutlet NSButton *outputSettingsButton;
43
44 /* open file */
45 @property (readwrite, weak) IBOutlet NSTextField *fileNameLabel;
46 @property (readwrite, weak) IBOutlet NSTextField *fileNameStubLabel;
47 @property (readwrite, weak) IBOutlet NSImageView *fileIconWell;
48 @property (readwrite, weak) IBOutlet NSButton *fileBrowseButton;
49 @property (readwrite, weak) IBOutlet NSButton *fileTreatAsPipeButton;
50 @property (readwrite, weak) IBOutlet NSButton *fileSlaveCheckbox;
51 @property (readwrite, weak) IBOutlet NSButton *fileSelectSlaveButton;
52 @property (readwrite, weak) IBOutlet NSTextField *fileSlaveFilenameLabel;
53 @property (readwrite, weak) IBOutlet NSImageView *fileSlaveIconWell;
54 @property (readwrite, weak) IBOutlet NSTextField *fileSubtitlesFilenameLabel;
55 @property (readwrite, weak) IBOutlet NSImageView *fileSubtitlesIconWell;
56 @property (readwrite, weak) IBOutlet NSButton *fileCustomTimingCheckbox;
57 @property (readwrite, weak) IBOutlet NSTextField *fileStartTimeTextField;
58 @property (readwrite, weak) IBOutlet NSTextField *fileStartTimeLabel;
59 @property (readwrite, weak) IBOutlet NSTextField *fileStopTimeTextField;
60 @property (readwrite, weak) IBOutlet NSTextField *fileStopTimeLabel;
61
62 /* open disc */
63 @property (readwrite, weak) IBOutlet NSPopUpButton *discSelectorPopup;
64
65 @property (readwrite, weak) IBOutlet NSView *discNoDiscView;
66 @property (readwrite, weak) IBOutlet NSTextField *discNoDiscLabel;
67 @property (readwrite, weak) IBOutlet NSButton *discNoDiscVideoTSButton;
68
69 @property (readwrite, weak) IBOutlet NSView *discAudioCDView;
70 @property (readwrite, weak) IBOutlet NSTextField *discAudioCDLabel;
71 @property (readwrite, weak) IBOutlet NSTextField *discAudioCDTrackCountLabel;
72 @property (readwrite, weak) IBOutlet NSButton *discAudioCDVideoTSButton;
73
74 @property (readwrite, weak) IBOutlet NSView *discDVDView;
75 @property (readwrite, weak) IBOutlet NSTextField *discDVDLabel;
76 @property (readwrite, weak) IBOutlet NSButton *discDVDDisableMenusButton;
77 @property (readwrite, weak) IBOutlet NSButton *discDVDVideoTSButton;
78
79 @property (readwrite, weak) IBOutlet NSView *discDVDwomenusView;
80 @property (readwrite, weak) IBOutlet NSTextField *discDVDwomenusLabel;
81 @property (readwrite, weak) IBOutlet NSButton *discDVDwomenusEnableMenusButton;
82 @property (readwrite, weak) IBOutlet NSButton *discDVDwomenusVideoTSButton;
83 @property (readwrite, weak) IBOutlet NSTextField *discDVDwomenusTitleTextField;
84 @property (readwrite, weak) IBOutlet NSTextField *discDVDwomenusTitleLabel;
85 @property (readwrite, weak) IBOutlet NSStepper *discDVDwomenusTitleStepper;
86 @property (readwrite, weak) IBOutlet NSTextField *discDVDwomenusChapterTextField;
87 @property (readwrite, weak) IBOutlet NSTextField *discDVDwomenusChapterLabel;
88 @property (readwrite, weak) IBOutlet NSStepper *discDVDwomenusChapterStepper;
89
90 @property (readwrite, weak) IBOutlet NSView *discVCDView;
91 @property (readwrite, weak) IBOutlet NSTextField *discVCDLabel;
92 @property (readwrite, weak) IBOutlet NSButton *discVCDVideoTSButton;
93 @property (readwrite, weak) IBOutlet NSTextField *discVCDTitleTextField;
94 @property (readwrite, weak) IBOutlet NSTextField *discVCDTitleLabel;
95 @property (readwrite, weak) IBOutlet NSStepper *discVCDTitleStepper;
96 @property (readwrite, weak) IBOutlet NSTextField *discVCDChapterTextField;
97 @property (readwrite, weak) IBOutlet NSTextField *discVCDChapterLabel;
98 @property (readwrite, weak) IBOutlet NSStepper *discVCDChapterStepper;
99
100 @property (readwrite, weak) IBOutlet NSView *discBDView;
101 @property (readwrite, weak) IBOutlet NSTextField *discBDLabel;
102 @property (readwrite, weak) IBOutlet NSButton *discBDVideoTSButton;
103
104 /* open network */
105 @property (readwrite, weak) IBOutlet NSTextField *netHTTPURLLabel;
106 @property (readwrite, weak) IBOutlet NSTextField *netHTTPURLTextField;
107 @property (readwrite, weak) IBOutlet NSTextField *netHelpLabel;
108
109 /* open UDP stuff panel */
110 @property (readwrite, weak) IBOutlet NSTextField *netHelpUDPLabel;
111 @property (readwrite, weak) IBOutlet NSMatrix *netUDPProtocolMatrix;
112 @property (readwrite, weak) IBOutlet NSTextField *netUDPProtocolLabel;
113 @property (readwrite, weak) IBOutlet NSTextField *netUDPAddressLabel;
114 @property (readwrite, weak) IBOutlet NSTextField *netUDPModeLabel;
115 @property (readwrite, weak) IBOutlet NSMatrix *netModeMatrix;
116 @property (readwrite, weak) IBOutlet NSButton *netOpenUDPButton;
117 @property (readwrite, weak) IBOutlet NSButton *netUDPCancelButton;
118 @property (readwrite, weak) IBOutlet NSButton *netUDPOKButton;
119 @property (readwrite, weak) IBOutlet NSWindow *netUDPPanel;
120 @property (readwrite, weak) IBOutlet NSTextField *netUDPPortTextField;
121 @property (readwrite, weak) IBOutlet NSTextField *netUDPPortLabel;
122 @property (readwrite, weak) IBOutlet NSStepper *netUDPPortStepper;
123 @property (readwrite, weak) IBOutlet NSTextField *netUDPMAddressTextField;
124 @property (readwrite, weak) IBOutlet NSTextField *netUDPMAddressLabel;
125 @property (readwrite, weak) IBOutlet NSTextField *netUDPMPortTextField;
126 @property (readwrite, weak) IBOutlet NSTextField *netUDPMPortLabel;
127 @property (readwrite, weak) IBOutlet NSStepper *netUDPMPortStepper;
128
129 /* open subtitle file */
130 @property (readwrite, weak) IBOutlet NSButton *fileSubCheckbox;
131 @property (readwrite, weak) IBOutlet NSButton *fileSubSettingsButton;
132 @property (readwrite, weak) IBOutlet NSPanel *fileSubSheet;
133 @property (readwrite, weak) IBOutlet NSTextField *fileSubPathLabel;
134 @property (readwrite, weak) IBOutlet NSTextField *fileSubPathTextField;
135 @property (readwrite, weak) IBOutlet NSImageView *fileSubIconView;
136 @property (readwrite, weak) IBOutlet NSButton *fileSubBrowseButton;
137 @property (readwrite, weak) IBOutlet NSButton *fileSubOverrideCheckbox;
138 @property (readwrite, weak) IBOutlet NSTextField *fileSubDelayTextField;
139 @property (readwrite, weak) IBOutlet NSTextField *fileSubDelayLabel;
140 @property (readwrite, weak) IBOutlet NSStepper *fileSubDelayStepper;
141 @property (readwrite, weak) IBOutlet NSTextField *fileSubFPSTextField;
142 @property (readwrite, weak) IBOutlet NSTextField *fileSubFPSLabel;
143 @property (readwrite, weak) IBOutlet NSStepper *fileSubFPSStepper;
144 @property (readwrite, weak) IBOutlet NSPopUpButton *fileSubEncodingPopup;
145 @property (readwrite, weak) IBOutlet NSTextField *fileSubEncodingLabel;
146 @property (readwrite, weak) IBOutlet NSPopUpButton *fileSubSizePopup;
147 @property (readwrite, weak) IBOutlet NSTextField *fileSubSizeLabel;
148 @property (readwrite, weak) IBOutlet NSPopUpButton *fileSubAlignPopup;
149 @property (readwrite, weak) IBOutlet NSTextField *fileSubAlignLabel;
150 @property (readwrite, weak) IBOutlet NSButton *fileSubOKButton;
151 @property (readwrite, weak) IBOutlet NSBox *fileSubFontBox;
152 @property (readwrite, weak) IBOutlet NSBox *fileSubFileBox;
153
154 /* generic capturing stuff */
155 @property (readwrite, weak) IBOutlet NSTextField *captureLabel;
156 @property (readwrite, weak) IBOutlet NSTextField *captureLongLabel;
157 @property (readwrite, weak) IBOutlet NSPopUpButton *captureModePopup;
158 @property (readwrite, weak) IBOutlet NSView *captureView;
159
160 /* screen support */
161 @property (readwrite, weak) IBOutlet NSView *screenView;
162 @property (readwrite, weak) IBOutlet NSTextField *screenlongLabel;
163 @property (readwrite, weak) IBOutlet NSTextField *screenFPSTextField;
164 @property (readwrite, weak) IBOutlet NSTextField *screenFPSLabel;
165 @property (readwrite, weak) IBOutlet NSStepper *screenFPSStepper;
166 @property (readwrite, weak) IBOutlet NSTextField *screenLabel;
167 @property (readwrite, weak) IBOutlet NSPopUpButton *screenPopup;
168 @property (readwrite, weak) IBOutlet NSTextField *screenLeftTextField;
169 @property (readwrite, weak) IBOutlet NSTextField *screenLeftLabel;
170 @property (readwrite, weak) IBOutlet NSStepper *screenLeftStepper;
171 @property (readwrite, weak) IBOutlet NSTextField *screenTopTextField;
172 @property (readwrite, weak) IBOutlet NSTextField *screenTopLabel;
173 @property (readwrite, weak) IBOutlet NSStepper *screenTopStepper;
174 @property (readwrite, weak) IBOutlet NSTextField *screenWidthTextField;
175 @property (readwrite, weak) IBOutlet NSTextField *screenWidthLabel;
176 @property (readwrite, weak) IBOutlet NSStepper *screenWidthStepper;
177 @property (readwrite, weak) IBOutlet NSTextField *screenHeightTextField;
178 @property (readwrite, weak) IBOutlet NSTextField *screenHeightLabel;
179 @property (readwrite, weak) IBOutlet NSStepper *screenHeightStepper;
180 @property (readwrite, weak) IBOutlet NSButton *screenFollowMouseCheckbox;
181 @property (readwrite, weak) IBOutlet NSPopUpButton *screenqtkAudioPopup;
182 @property (readwrite, weak) IBOutlet NSButton *screenqtkAudioCheckbox;
183
184 /* QTK support */
185 @property (readwrite, weak) IBOutlet NSView *qtkView;
186 @property (readwrite, weak) IBOutlet NSPopUpButton *qtkVideoDevicePopup;
187 @property (readwrite, weak) IBOutlet NSButton *qtkVideoCheckbox;
188 @property (readwrite, weak) IBOutlet NSPopUpButton *qtkAudioDevicePopup;
189 @property (readwrite, weak) IBOutlet NSButton *qtkAudioCheckbox;
190
191 /* text field / stepper binding values - subs panel */
192 @property (nonatomic) float fileSubDelay;
193 @property (nonatomic) float fileSubFps;
194
195 - (IBAction)outputSettings:(id)sender;
196 - (void)setSubPanel;
197 - (void)tabView:(NSTabView *)o_tv didSelectTabViewItem:(NSTabViewItem *)o_tvi;
198 - (void)textFieldWasClicked:(NSNotification *)o_notification;
199 - (IBAction)expandMRLfieldAction:(id)sender;
200 - (IBAction)inputSlaveAction:(id)sender;
201 - (IBAction)fileTimeCustomization:(id)sender;
202
203 - (void)openFileGeneric;
204 - (IBAction)openFileBrowse:(id)sender;
205 - (IBAction)openFileStreamChanged:(id)sender;
206
207 - (void)openDisc;
208 - (IBAction)discSelectorChanged:(id)sender;
209 - (IBAction)openSpecialMediaFolder:(id)sender;
210 - (IBAction)dvdreadOptionChanged:(id)sender;
211 - (IBAction)vcdOptionChanged:(id)sender;
212
213 - (void)openNet;
214 - (IBAction)openNetModeChanged:(id)sender;
215 - (IBAction)openNetStepperChanged:(id)sender;
216 - (void)openNetInfoChanged:(NSNotification *)o_notification;
217 - (IBAction)openNetUDPButtonAction:(id)sender;
218
219 - (void)openCapture;
220 - (IBAction)openCaptureModeChanged:(id)sender;
221 - (IBAction)qtkChanged:(id)sender;
222 - (IBAction)qtkAudioChanged:(id)sender;
223 - (IBAction)qtkToggleUIElements:(id)sender;
224 - (IBAction)screenChanged:(id)sender;
225
226 - (IBAction)subsChanged:(id)sender;
227 - (IBAction)subSettings:(id)sender;
228 - (IBAction)subFileBrowse:(id)sender;
229 - (IBAction)subOverride:(id)sender;
230
231 - (IBAction)subCloseSheet:(id)sender;
232
233 - (IBAction)panelCancel:(id)sender;
234 - (IBAction)panelOk:(id)sender;
235
236 - (void)openFile;
237 @end