]> git.sesse.net Git - vlc/blobdiff - modules/gui/macosx/prefs.h
* share/skins2/skin.catalog: added a default catalog as some platforms don't provide...
[vlc] / modules / gui / macosx / prefs.h
index eb980e7c11b96e3622aca5f5d95a14b994ef3f8f..2f710a145d785aecda69db4603d58103a6029260 100644 (file)
@@ -1,8 +1,8 @@
 /*****************************************************************************
- * prefs.h: MacOS X plugin for vlc
+ * prefs.h: MacOS X module for vlc
  *****************************************************************************
  * Copyright (C) 2002-2003 VideoLAN
- * $Id: prefs.h,v 1.4 2003/02/23 05:53:53 jlj Exp $
+ * $Id$
  *
  * Authors: Jon Lech Johansen <jon-vl@nanocrew.net> 
  *
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
  *****************************************************************************/
 
-#define PREFS_WRAP 60
+#define PREFS_WRAP 300
+
+@interface VLCTreeItem : NSObject
+{
+    NSString *o_name;
+    int i_object_id;
+    VLCTreeItem *o_parent;
+    NSMutableArray *o_children;
+}
+
++ (VLCTreeItem *)rootItem;
+- (int)numberOfChildren;
+- (VLCTreeItem *)childAtIndex:(int)i_index;
+- (int)getObjectID;
+- (NSString *)getName;
+- (BOOL)hasPrefs:(NSString *)o_module_name;
+
+@end
 
 /*****************************************************************************
  * VLCPrefs interface
 @interface VLCPrefs : NSObject
 {
     intf_thread_t *p_intf;
-
-    NSMutableDictionary *o_pref_panels;
-    NSMutableDictionary *o_toolbars;
-    NSMutableDictionary *o_scroll_views;
-    NSMutableDictionary *o_panel_views;
+    vlc_bool_t b_advanced;
+    VLCTreeItem *o_config_tree;
+    NSView *o_empty_view;
     NSMutableDictionary *o_save_prefs;
+    
+    IBOutlet id o_prefs_window;
+    IBOutlet id o_tree;
+    IBOutlet id o_prefs_view;
+    IBOutlet id o_save_btn;
+    IBOutlet id o_cancel_btn;
+    IBOutlet id o_reset_btn;
+    IBOutlet id o_advanced_ckb;
 }
 
-- (BOOL)hasPrefs:(NSString *)o_module_name;
-- (void)createPrefPanel:(NSString *)o_module_name;
-- (void)destroyPrefPanel:(id)o_unknown;
-- (void)selectPrefView:(id)sender;
-
-- (void)moduleSelected:(id)sender;
-- (void)configureModule:(id)sender;
-- (void)selectModule:(id)sender;
-
+- (void)initStrings;
+- (void)showPrefs;
+- (IBAction)savePrefs: (id)sender;
+- (IBAction)closePrefs: (id)sender;
+- (IBAction)resetAll: (id)sender;
+- (void)sheetDidEnd:(NSWindow *)o_sheet returnCode:(int)i_return contextInfo:(void *)o_context;
+- (IBAction)advancedToggle: (id)sender;
+- (IBAction)openFileDialog: (id)sender;
+- (void)pathChosenInPanel:(NSOpenPanel *)o_sheet withReturn:(int)i_return_code contextInfo:(void  *)o_context_info;
+- (void)showViewForID: (int) i_id andName:(NSString *)o_item_name;
 - (void)configChanged:(id)o_unknown;
 
-- (void)clickedApplyCancelOK:(id)sender;
-
 @end
 
 @interface VLCFlippedView : NSView
 @end
 
 INTF_CONTROL_CONFIG(Button);
+INTF_CONTROL_CONFIG(PopUpButton);
 INTF_CONTROL_CONFIG(ComboBox);
 INTF_CONTROL_CONFIG(TextField);
+INTF_CONTROL_CONFIG(Slider);
+INTF_CONTROL_CONFIG(Matrix);
 
 #define CONTROL_CONFIG( obj, mname, ctype, cname ) \
     { \
         [obj setModuleName: mname]; \
         [obj setConfigType: ctype]; \
-        [obj setConfigName: [NSString stringWithCString: cname]]; \
+        [obj setConfigName: [NSString stringWithUTF8String: cname]]; \
     }