1 /*****************************************************************************
2 * simple_prefs.h: Simple Preferences for Mac OS X
3 *****************************************************************************
4 * Copyright (C) 2008 the VideoLAN team
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>
28 @interface VLCSimplePrefs : NSObject
30 IBOutlet id o_audio_dolby_pop;
31 IBOutlet id o_audio_dolby_txt;
32 IBOutlet id o_audio_effects_box;
33 IBOutlet id o_audio_enable_ckb;
34 IBOutlet id o_audio_general_box;
35 IBOutlet id o_audio_headphone_ckb;
36 IBOutlet id o_audio_lang_fld;
37 IBOutlet id o_audio_lang_txt;
38 IBOutlet id o_audio_last_box;
39 IBOutlet id o_audio_last_ckb;
40 IBOutlet id o_audio_lastpwd_fld;
41 IBOutlet id o_audio_lastpwd_txt;
42 IBOutlet id o_audio_lastuser_fld;
43 IBOutlet id o_audio_lastuser_txt;
44 IBOutlet id o_audio_norm_ckb;
45 IBOutlet id o_audio_norm_fld;
46 IBOutlet id o_audio_spdif_ckb;
47 IBOutlet id o_audio_view;
48 IBOutlet id o_audio_visual_pop;
49 IBOutlet id o_audio_visual_txt;
50 IBOutlet id o_audio_vol_fld;
51 IBOutlet id o_audio_vol_sld;
52 IBOutlet id o_audio_vol_txt;
54 IBOutlet id o_intf_art_pop;
55 IBOutlet id o_intf_art_txt;
56 IBOutlet id o_intf_embedded_ckb;
57 IBOutlet id o_intf_fspanel_ckb;
58 IBOutlet id o_intf_lang_pop;
59 IBOutlet id o_intf_lang_txt;
60 IBOutlet id o_intf_meta_ckb;
61 IBOutlet id o_intf_network_box;
62 IBOutlet id o_intf_view;
64 IBOutlet id o_sprefs_basic_box;
65 IBOutlet id o_sprefs_basicFull_matrix;
66 IBOutlet id o_sprefs_cancel_btn;
67 IBOutlet id o_sprefs_controls_box;
68 IBOutlet id o_sprefs_reset_btn;
69 IBOutlet id o_sprefs_save_btn;
70 IBOutlet id o_sprefs_win;
72 IBOutlet id o_video_black_ckb;
73 IBOutlet id o_video_device_pop;
74 IBOutlet id o_video_device_txt;
75 IBOutlet id o_video_display_box;
76 IBOutlet id o_video_enable_ckb;
77 IBOutlet id o_video_fullscreen_ckb;
78 IBOutlet id o_video_onTop_ckb;
79 IBOutlet id o_video_output_pop;
80 IBOutlet id o_video_output_txt;
81 IBOutlet id o_video_skipFrames_ckb;
82 IBOutlet id o_video_snap_box;
83 IBOutlet id o_video_snap_folder_btn;
84 IBOutlet id o_video_snap_folder_fld;
85 IBOutlet id o_video_snap_folder_txt;
86 IBOutlet id o_video_snap_format_pop;
87 IBOutlet id o_video_snap_format_txt;
88 IBOutlet id o_video_snap_prefix_fld;
89 IBOutlet id o_video_snap_prefix_txt;
90 IBOutlet id o_video_snap_seqnum_ckb;
91 IBOutlet id o_video_view;
93 BOOL b_audioSettingChanged;
94 BOOL b_intfSettingChanged;
95 BOOL b_videoSettingChanged;
96 id o_currentlyShownCategoryView;
98 NSToolbar *o_sprefs_toolbar;
99 NSOpenPanel *o_selectFolderPanel;
101 intf_thread_t *p_intf;
103 + (VLCSimplePrefs *)sharedInstance;
106 - (NSToolbarItem *) toolbar: (NSToolbar *)o_toolbar
107 itemForItemIdentifier: (NSString *)o_itemIdent
108 willBeInsertedIntoToolbar: (BOOL)b_willBeInserted;
109 - (NSArray *)toolbarDefaultItemIdentifiers: (NSToolbar *)toolbar;
110 - (NSArray *)toolbarAllowedItemIdentifiers: (NSToolbar *)toolbar;
113 - (void)resetControls;
114 - (void)showSimplePrefs;
116 - (IBAction)buttonAction:(id)sender;
117 - (void)sheetDidEnd:(NSWindow *)o_sheet
118 returnCode:(int)i_return
119 contextInfo:(void *)o_context;
121 - (void)saveChangedSettings;
124 - (IBAction)interfaceSettingChanged:(id)sender;
125 - (void)showInterfaceSettings;
128 - (IBAction)audioSettingChanged:(id)sender;
129 - (void)showAudioSettings;
132 - (IBAction)videoSettingChanged:(id)sender;
133 - (void)showVideoSettings;