simple_prefs.h
上传用户:kjfoods
上传日期:2020-07-06
资源大小:29949k
文件大小:7k
源码类别:

midi

开发平台:

Unix_Linux

  1. /*****************************************************************************
  2. * simple_prefs.h: Simple Preferences for Mac OS X
  3. *****************************************************************************
  4. * Copyright (C) 2008-2009 the VideoLAN team
  5. * $Id: 936a4cf158f4f872ca4146d8e585b283a5f4bdb0 $
  6. *
  7. * Authors: Felix Paul Kühne <fkuehne at videolan dot org>
  8. *
  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.
  13. *
  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.
  18. *
  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. *****************************************************************************/
  23. #import <Cocoa/Cocoa.h>
  24. #import "intf.h"
  25. #import <vlc_common.h>
  26. @interface VLCSimplePrefs : NSObject
  27. {
  28.     IBOutlet id o_audio_dolby_pop;
  29.     IBOutlet id o_audio_dolby_txt;
  30.     IBOutlet id o_audio_effects_box;
  31.     IBOutlet id o_audio_enable_ckb;
  32.     IBOutlet id o_audio_general_box;
  33.     IBOutlet id o_audio_headphone_ckb;
  34.     IBOutlet id o_audio_lang_fld;
  35.     IBOutlet id o_audio_lang_txt;
  36.     IBOutlet id o_audio_last_box;
  37.     IBOutlet id o_audio_last_ckb;
  38.     IBOutlet id o_audio_lastpwd_sfld;
  39.     IBOutlet id o_audio_lastpwd_txt;
  40.     IBOutlet id o_audio_lastuser_fld;
  41.     IBOutlet id o_audio_lastuser_txt;
  42.     IBOutlet id o_audio_norm_ckb;
  43.     IBOutlet id o_audio_norm_fld;
  44.     IBOutlet id o_audio_norm_stepper;
  45.     IBOutlet id o_audio_spdif_ckb;
  46.     IBOutlet id o_audio_view;
  47.     IBOutlet id o_audio_visual_pop;
  48.     IBOutlet id o_audio_visual_txt;
  49.     IBOutlet id o_audio_vol_fld;
  50.     IBOutlet id o_audio_vol_sld;
  51.     IBOutlet id o_audio_vol_txt;
  52.     IBOutlet id o_hotkeys_change_btn;
  53.     IBOutlet id o_hotkeys_change_lbl;
  54.     IBOutlet id o_hotkeys_change_keys_lbl;
  55.     IBOutlet id o_hotkeys_change_taken_lbl;
  56.     IBOutlet id o_hotkeys_change_win;
  57.     IBOutlet id o_hotkeys_change_cancel_btn;
  58.     IBOutlet id o_hotkeys_change_ok_btn;
  59.     IBOutlet id o_hotkeys_clear_btn;
  60.     IBOutlet id o_hotkeys_lbl;
  61.     IBOutlet id o_hotkeys_listbox;
  62.     IBOutlet id o_hotkeys_view;
  63.     IBOutlet id o_input_avi_pop;
  64.     IBOutlet id o_input_avi_txt;
  65.     IBOutlet id o_input_cachelevel_pop;
  66.     IBOutlet id o_input_cachelevel_txt;
  67.     IBOutlet id o_input_cachelevel_custom_txt;
  68.     IBOutlet id o_input_caching_box;
  69.     IBOutlet id o_input_httpproxy_fld;
  70.     IBOutlet id o_input_httpproxy_txt;
  71.     IBOutlet id o_input_httpproxypwd_sfld;
  72.     IBOutlet id o_input_httpproxypwd_txt;
  73.     IBOutlet id o_input_mux_box;
  74.     IBOutlet id o_input_net_box;
  75.     IBOutlet id o_input_postproc_fld;
  76.     IBOutlet id o_input_postproc_txt;
  77.     IBOutlet id o_input_rtsp_ckb;
  78.     IBOutlet id o_input_skipLoop_txt;
  79.     IBOutlet id o_input_skipLoop_pop;
  80.     IBOutlet id o_input_serverport_fld;
  81.     IBOutlet id o_input_serverport_txt;
  82.     IBOutlet id o_input_view;
  83.     IBOutlet id o_intf_art_pop;
  84.     IBOutlet id o_intf_art_txt;
  85.     IBOutlet id o_intf_embedded_ckb;
  86.     IBOutlet id o_intf_fspanel_ckb;
  87. IBOutlet id o_intf_appleremote_ckb;
  88. IBOutlet id o_intf_mediakeys_ckb;
  89.     IBOutlet id o_intf_mediakeys_bg_ckb;
  90.     IBOutlet id o_intf_lang_pop;
  91.     IBOutlet id o_intf_lang_txt;
  92.     IBOutlet id o_intf_network_box;
  93.     IBOutlet id o_intf_view;
  94.     IBOutlet id o_osd_encoding_pop;
  95.     IBOutlet id o_osd_encoding_txt;
  96.     IBOutlet id o_osd_font_box;
  97.     IBOutlet id o_osd_font_btn;
  98.     IBOutlet id o_osd_font_color_pop;
  99.     IBOutlet id o_osd_font_color_txt;
  100.     IBOutlet id o_osd_font_fld;
  101.     IBOutlet id o_osd_font_size_pop;
  102.     IBOutlet id o_osd_font_size_txt;
  103.     IBOutlet id o_osd_font_txt;
  104.     IBOutlet id o_osd_lang_box;
  105.     IBOutlet id o_osd_lang_fld;
  106.     IBOutlet id o_osd_lang_txt;
  107.     IBOutlet id o_osd_osd_box;
  108.     IBOutlet id o_osd_osd_ckb;
  109.     IBOutlet id o_osd_view;
  110.     IBOutlet id o_sprefs_basic_box;
  111.     IBOutlet id o_sprefs_basicFull_matrix;
  112.     IBOutlet id o_sprefs_cancel_btn;
  113.     IBOutlet id o_sprefs_controls_box;
  114.     IBOutlet id o_sprefs_reset_btn;
  115.     IBOutlet id o_sprefs_save_btn;
  116.     IBOutlet id o_sprefs_win;
  117.     IBOutlet id o_video_black_ckb;
  118.     IBOutlet id o_video_device_pop;
  119.     IBOutlet id o_video_device_txt;
  120.     IBOutlet id o_video_display_box;
  121.     IBOutlet id o_video_enable_ckb;
  122.     IBOutlet id o_video_fullscreen_ckb;
  123.     IBOutlet id o_video_onTop_ckb;
  124.     IBOutlet id o_video_output_pop;
  125.     IBOutlet id o_video_output_txt;
  126.     IBOutlet id o_video_skipFrames_ckb;
  127.     IBOutlet id o_video_snap_box;
  128.     IBOutlet id o_video_snap_folder_btn;
  129.     IBOutlet id o_video_snap_folder_fld;
  130.     IBOutlet id o_video_snap_folder_txt;
  131.     IBOutlet id o_video_snap_format_pop;
  132.     IBOutlet id o_video_snap_format_txt;
  133.     IBOutlet id o_video_snap_prefix_fld;
  134.     IBOutlet id o_video_snap_prefix_txt;
  135.     IBOutlet id o_video_snap_seqnum_ckb;
  136.     IBOutlet id o_video_view;
  137.     BOOL b_audioSettingChanged;
  138.     BOOL b_intfSettingChanged;
  139.     BOOL b_videoSettingChanged;
  140.     BOOL b_osdSettingChanged;
  141.     BOOL b_inputSettingChanged;
  142.     BOOL b_hotkeyChanged;
  143.     id o_currentlyShownCategoryView;
  144.     NSOpenPanel *o_selectFolderPanel;
  145.     NSArray *o_hotkeyDescriptions;
  146.     NSArray *o_hotkeysNonUseableKeys;
  147.     NSMutableArray *o_hotkeySettings;
  148.     NSNumber *o_keyInTransition;
  149.     intf_thread_t *p_intf;
  150. }
  151. + (VLCSimplePrefs *)sharedInstance;
  152. - (NSString *)OSXKeyToString:(int)val;
  153. /* toolbar */
  154. - (NSToolbarItem *) toolbar: (NSToolbar *)o_toolbar 
  155.       itemForItemIdentifier: (NSString *)o_itemIdent 
  156.   willBeInsertedIntoToolbar: (BOOL)b_willBeInserted;
  157. - (NSArray *)toolbarDefaultItemIdentifiers: (NSToolbar *)toolbar;
  158. - (NSArray *)toolbarAllowedItemIdentifiers: (NSToolbar *)toolbar;
  159. - (void)initStrings;
  160. - (void)resetControls;
  161. - (void)showSimplePrefs;
  162. - (IBAction)buttonAction:(id)sender;
  163. - (void)sheetDidEnd:(NSWindow *)o_sheet 
  164.          returnCode:(int)i_return
  165.         contextInfo:(void *)o_context;
  166. - (void)saveChangedSettings;
  167. /* interface */
  168. - (IBAction)interfaceSettingChanged:(id)sender;
  169. - (void)showInterfaceSettings;
  170. /* audio */
  171. - (IBAction)audioSettingChanged:(id)sender;
  172. - (void)showAudioSettings;
  173. /* video */
  174. - (IBAction)videoSettingChanged:(id)sender;
  175. - (void)showVideoSettings;
  176. /* OSD / subtitles */
  177. - (IBAction)osdSettingChanged:(id)sender;
  178. - (IBAction)showFontPicker:(id)sender;
  179. - (void)showOSDSettings;
  180. - (void)changeFont:(id)sender;
  181. /* input & codecs */
  182. - (IBAction)inputSettingChanged:(id)sender;
  183. - (void)showInputSettings;
  184. /* hotkeys */
  185. - (IBAction)hotkeySettingChanged:(id)sender;
  186. - (void)showHotkeySettings;
  187. - (int)numberOfRowsInTableView:(NSTableView *)aTableView;
  188. - (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex;
  189. - (BOOL)changeHotkeyTo: (int)i_theNewKey;
  190. @end
  191. @interface VLCHotkeyChangeWindow : NSWindow
  192. @end
  193. @interface VLCSimplePrefsWindow : NSWindow
  194. @end