]> git.sesse.net Git - vlc/blobdiff - modules/gui/macosx/prefs_widgets.h
macosx: minor code optimization
[vlc] / modules / gui / macosx / prefs_widgets.h
index f1c1ef0005c54eb34852fc00591955e7d4928fb9..ab5be7c12b6ce730ecc9b93e20bb87e076a40abf 100644 (file)
@@ -1,16 +1,17 @@
 /*****************************************************************************
  * prefs_widgets.h: Preferences controls
  *****************************************************************************
- * Copyright (C) 2002-2003 VideoLAN
+ * Copyright (C) 2002-2012 VLC authors and VideoLAN
  * $Id$
  *
- * Authors: Derk-Jan Hartman <hartman at videolan.org> 
+ * Authors: Derk-Jan Hartman <hartman at videolan.org>
+ *          Felix Paul Kühne <fkuehne at videolan.org>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
- * 
+ *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
-#define CONFIG_ITEM_STRING_LIST (CONFIG_ITEM_STRING + 1)
-#define CONFIG_ITEM_RANGED_INTEGER (CONFIG_ITEM_INTEGER + 1)
-#define CONFIG_ITEM_KEY_BEFORE_10_3 (CONFIG_ITEM_KEY + 1)
-#define CONFIG_ITEM_KEY_AFTER_10_3 (CONFIG_ITEM_KEY + 2)
-#define MACOS_VERSION [[[NSDictionary dictionaryWithContentsOfFile: \
-            @"/System/Library/CoreServices/SystemVersion.plist"] \
-            objectForKey: @"ProductVersion"] floatValue]
+#define CONFIG_ITEM_STRING_LIST (CONFIG_ITEM_STRING + 10)
+#define CONFIG_ITEM_RANGED_INTEGER (CONFIG_ITEM_INTEGER + 10)
+#define LEFTMARGIN  18
+#define RIGHTMARGIN 18
+
+static NSMenu   *o_keys_menu = nil;
 
 @interface VLCConfigControl : NSView
 {
     NSTextField     *o_label;
     int             i_type;
     int             i_view_type;
-    vlc_bool_t      b_advanced;
+    bool      b_advanced;
 }
 
+@property (readonly) NSString * name;
+@property (readonly) int type;
+@property (readonly) int viewType;
+@property (readonly) bool advanced;
+@property (readonly) int intValue;
+@property (readonly) float floatValue;
+@property (readonly) char * stringValue;
+@property (readonly) int labelSize;
+
 + (VLCConfigControl *)newControl: (module_config_t *)_p_item
         withView: (NSView *)o_parent_view;
++ (int)calcVerticalMargin: (int)i_curItem lastItem:(int)i_lastItem;
+
 - (id)initWithFrame: (NSRect)frame item: (module_config_t *)p_item;
-- (NSString *)getName;
-- (int)getType;
-- (int)getViewType;
-- (BOOL)isAdvanced;
+
 - (void)setYPos:(int)i_yPos;
-- (int)intValue;
-- (float)floatValue;
-- (char *)stringValue;
-- (void)applyChanges;
-static NSMenu   *o_keys_menu = nil;
+- (void)alignWithXPosition:(int)i_xPos;
 
-+ (int)calcVerticalMargin: (int)i_curItem lastItem:(int)i_lastItem;
+- (void)applyChanges;
+- (void)resetValues;
 
 @end
 
@@ -69,7 +74,7 @@ static NSMenu   *o_keys_menu = nil;
 
 @interface StringListConfigControl : VLCConfigControl
 {
-    NSComboBox      *o_combo;
+    NSPopUpButton      *o_popup;
 }
 
 - (id) initWithItem: (module_config_t *)_p_item
@@ -88,7 +93,6 @@ static NSMenu   *o_keys_menu = nil;
            withView: (NSView *)o_parent_view;
 
 - (IBAction)openFileDialog: (id)sender;
-- (void)pathChosenInPanel:(NSOpenPanel *)o_sheet withReturn:(int)i_return_code contextInfo:(void  *)o_context_info;
 
 @end
 
@@ -102,7 +106,7 @@ static NSMenu   *o_keys_menu = nil;
 
 @end
 
-@interface IntegerConfigControl : VLCConfigControl
+@interface IntegerConfigControl : VLCConfigControl <NSTextFieldDelegate>
 {
     NSTextField     *o_textfield;
     NSStepper       *o_stepper;
@@ -118,7 +122,7 @@ static NSMenu   *o_keys_menu = nil;
 
 @interface IntegerListConfigControl : VLCConfigControl
 {
-    NSComboBox      *o_combo;
+    NSPopUpButton      *o_popup;
 }
 
 - (id) initWithItem: (module_config_t *)_p_item
@@ -126,7 +130,7 @@ static NSMenu   *o_keys_menu = nil;
 
 @end
 
-@interface RangedIntegerConfigControl : VLCConfigControl
+@interface RangedIntegerConfigControl : VLCConfigControl <NSTextFieldDelegate>
 {
     NSSlider        *o_slider;
     NSTextField     *o_textfield;
@@ -152,7 +156,7 @@ static NSMenu   *o_keys_menu = nil;
 
 @end
 
-@interface FloatConfigControl : VLCConfigControl
+@interface FloatConfigControl : VLCConfigControl <NSTextFieldDelegate>
 {
     NSTextField     *o_textfield;
     NSStepper       *o_stepper;
@@ -166,7 +170,7 @@ static NSMenu   *o_keys_menu = nil;
 
 @end
 
-@interface RangedFloatConfigControl : VLCConfigControl
+@interface RangedFloatConfigControl : VLCConfigControl <NSTextFieldDelegate>
 {
     NSSlider        *o_slider;
     NSTextField     *o_textfield;
@@ -182,12 +186,8 @@ static NSMenu   *o_keys_menu = nil;
 
 @end
 
-@interface KeyConfigControlBefore103 : VLCConfigControl
+@interface KeyConfigControl : VLCConfigControl
 {
-    NSButton        *o_cmd_checkbox;
-    NSButton        *o_ctrl_checkbox;
-    NSButton        *o_alt_checkbox;
-    NSButton        *o_shift_checkbox;
     NSPopUpButton   *o_popup;
 }
 
@@ -196,9 +196,11 @@ static NSMenu   *o_keys_menu = nil;
 
 @end
 
-@interface KeyConfigControlAfter103 : VLCConfigControl
+@interface ModuleListConfigControl : VLCConfigControl <NSTableViewDataSource>
 {
-    NSPopUpButton   *o_popup;
+    NSTextField     *o_textfield;
+    NSScrollView    *o_scrollview;
+    NSMutableArray  *o_modulearray;
 }
 
 - (id) initWithItem: (module_config_t *)_p_item
@@ -206,11 +208,8 @@ static NSMenu   *o_keys_menu = nil;
 
 @end
 
-@interface ModuleListConfigControl : VLCConfigControl
+@interface SectionControl : VLCConfigControl
 {
-    NSTextField     *o_textfield;
-    NSScrollView    *o_scrollview;
-    NSMutableArray  *o_modulearray;
 }
 
 - (id) initWithItem: (module_config_t *)_p_item
@@ -220,6 +219,4 @@ static NSMenu   *o_keys_menu = nil;
 
 //#undef CONFIG_ITEM_LIST_STRING
 //#undef CONFIG_ITEM_RANGED_INTEGER
-//#undef CONFIG_ITEM_KEY_BEFORE_10_3
-//#undef CONFIG_ITEM_KEY_AFTER_10_3