Commit 060244a8 authored by Jérome Decoodt's avatar Jérome Decoodt

*: fix problems about advanced button

parent 18dffb2a
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
VLCTreeItem *o_parent; VLCTreeItem *o_parent;
NSMutableArray *o_children; NSMutableArray *o_children;
int i_object_category; int i_object_category;
NSView *o_view; NSMutableArray *o_subviews;
} }
+ (VLCTreeItem *)rootItem; + (VLCTreeItem *)rootItem;
......
...@@ -227,7 +227,7 @@ static VLCTreeItem *o_root_item = nil; ...@@ -227,7 +227,7 @@ static VLCTreeItem *o_root_item = nil;
o_parent = o_parent_item; o_parent = o_parent_item;
o_children = o_children_array; o_children = o_children_array;
i_object_category = i_category; i_object_category = i_category;
o_view = nil; o_subviews = nil;
} }
return( self ); return( self );
} }
...@@ -464,18 +464,22 @@ static VLCTreeItem *o_root_item = nil; ...@@ -464,18 +464,22 @@ static VLCTreeItem *o_root_item = nil;
advancedView:(vlc_bool_t) b_advanced advancedView:(vlc_bool_t) b_advanced
{ {
fprintf( stderr, "[%s] showView\n", [o_name UTF8String] ); fprintf( stderr, "[%s] showView\n", [o_name UTF8String] );
if( o_view == nil )
{
intf_thread_t *p_intf = VLCIntf;
vlc_list_t *p_list;
module_t *p_parser = NULL;
module_config_t *p_item;
NSRect s_vrc; NSRect s_vrc;
NSView *o_view;
s_vrc = [[o_prefs_view contentView] bounds]; s_vrc.size.height -= 4; s_vrc = [[o_prefs_view contentView] bounds]; s_vrc.size.height -= 4;
o_view = [[VLCFlippedView alloc] initWithFrame: s_vrc]; o_view = [[VLCFlippedView alloc] initWithFrame: s_vrc];
[o_view setAutoresizingMask: NSViewWidthSizable | NSViewHeightSizable]; [o_view setAutoresizingMask: NSViewWidthSizable | NSViewHeightSizable];
/* Create all subviews if it isn't already done because we cannot use setHiden for MacOS < 10.3*/
if( o_subviews == nil )
{
intf_thread_t *p_intf = VLCIntf;
vlc_list_t *p_list;
module_t *p_parser = NULL;
module_config_t *p_item;
o_subviews = [[NSMutableArray alloc] initWithCapacity:10];
/* Get a pointer to the module */ /* Get a pointer to the module */
if( i_object_category == -1 ) if( i_object_category == -1 )
{ {
...@@ -521,8 +525,6 @@ fprintf( stderr, "%s (%d) is ", p_item->psz_name, p_item->i_type ); ...@@ -521,8 +525,6 @@ fprintf( stderr, "%s (%d) is ", p_item->psz_name, p_item->i_type );
{ {
VLCConfigControl *o_control = nil; VLCConfigControl *o_control = nil;
int i_widget = 0; int i_widget = 0;
if( p_item->b_advanced && (! b_advanced) )
break;
switch( p_item->i_type ) switch( p_item->i_type )
{ {
case CONFIG_ITEM_STRING: case CONFIG_ITEM_STRING:
...@@ -583,15 +585,14 @@ fprintf( stderr, "***UNKNOWN***" ); ...@@ -583,15 +585,14 @@ fprintf( stderr, "***UNKNOWN***" );
calcVerticalMargin:i_widget lastItem:i_lastItem]; calcVerticalMargin:i_widget lastItem:i_lastItem];
o_control = [VLCConfigControl newControl:p_item o_control = [VLCConfigControl newControl:p_item
withView:o_view withView:o_view
yOffset: i_yPos yOffset: i_yPos];
lastItem: i_lastItem];
if( o_control != nil ) if( o_control != nil )
{ {
i_yPos += [o_control frame].size.height; i_yPos += [o_control frame].size.height;
i_lastItem = i_widget; i_lastItem = i_widget;
[o_control setAutoresizingMask: NSViewMaxYMargin | [o_control setAutoresizingMask: NSViewMaxYMargin |
NSViewWidthSizable]; NSViewWidthSizable];
[o_view addSubview: o_control]; [o_subviews addObject: o_control];
} }
} }
fprintf( stderr, "\n" ); fprintf( stderr, "\n" );
...@@ -722,15 +723,14 @@ fprintf( stderr, "***UNKNOWN***" ); ...@@ -722,15 +723,14 @@ fprintf( stderr, "***UNKNOWN***" );
calcVerticalMargin:i_widget lastItem:i_lastItem]; calcVerticalMargin:i_widget lastItem:i_lastItem];
o_control = [VLCConfigControl newControl:p_item o_control = [VLCConfigControl newControl:p_item
withView:o_view withView:o_view
yOffset: i_yPos yOffset: i_yPos];
lastItem: i_lastItem];
if( o_control != nil ) if( o_control != nil )
{ {
i_yPos += [o_control frame].size.height; i_yPos += [o_control frame].size.height;
i_lastItem = i_widget; i_lastItem = i_widget;
[o_control setAutoresizingMask: NSViewMaxYMargin | [o_control setAutoresizingMask: NSViewMaxYMargin |
NSViewWidthSizable]; NSViewWidthSizable];
[o_view addSubview: o_control]; [o_subviews addObject: o_control];
} }
} }
fprintf( stderr, "\n" ); fprintf( stderr, "\n" );
...@@ -744,25 +744,42 @@ fprintf( stderr, "\n" ); ...@@ -744,25 +744,42 @@ fprintf( stderr, "\n" );
vlc_list_release( p_list ); vlc_list_release( p_list );
} }
} }
else
if( o_view != nil )
{ {
NSRect s_vrc; int i_lastItem = 0;
s_vrc = [[o_prefs_view contentView] bounds]; s_vrc.size.height -= 4; int i_yPos = 0;
[o_view setFrame: s_vrc]; unsigned int i;
for( i = 0 ; i < [o_subviews count] ; i++ )
{
int i_widget;
VLCConfigControl *o_widget = [o_subviews objectAtIndex:i];
if( ( [o_widget isAdvanced] ) && (! b_advanced) )
continue;
i_widget = [o_widget getViewType];
i_yPos += [VLCConfigControl calcVerticalMargin:i_widget
lastItem:i_lastItem];
[o_widget setYPos:i_yPos];
i_yPos += [o_widget frame].size.height;
i_lastItem = i_widget;
[o_widget setAutoresizingMask: NSViewMaxYMargin |
NSViewWidthSizable];
[o_view addSubview:o_widget];
} }
if( o_view != nil )
[o_prefs_view setDocumentView:o_view]; [o_prefs_view setDocumentView:o_view];
}
return o_view; return o_view;
} }
- (void)applyChanges - (void)applyChanges
{ {
unsigned int i; unsigned int i;
if( o_view != nil ) if( o_subviews != nil )
{ {
//Item has been shown //Item has been shown
fprintf( stderr, "[%s] applying changes\n", [o_name cString]); fprintf( stderr, "[%s] applying changes\n", [o_name cString]);
NSArray *o_subviews = [o_view subviews];
for( i = 0 ; i < [o_subviews count] ; i++ ) for( i = 0 ; i < [o_subviews count] ; i++ )
[[o_subviews objectAtIndex:i] applyChanges]; [[o_subviews objectAtIndex:i] applyChanges];
} }
......
...@@ -35,15 +35,18 @@ ...@@ -35,15 +35,18 @@
char *psz_name; char *psz_name;
NSTextField *o_label; NSTextField *o_label;
int i_type; int i_type;
int i_view_type;
vlc_bool_t b_advanced; vlc_bool_t b_advanced;
} }
+ (VLCConfigControl *)newControl: (module_config_t *)_p_item withView: (NSView *)o_parent_view yOffset:(int) i_yPos lastItem: (int) i_lastItem; + (VLCConfigControl *)newControl: (module_config_t *)_p_item
withView: (NSView *)o_parent_view yOffset:(int) i_yPos;
- (id)initWithFrame: (NSRect)frame item: (module_config_t *)p_item; - (id)initWithFrame: (NSRect)frame item: (module_config_t *)p_item;
- (NSString *)getName; - (NSString *)getName;
- (int)getType; - (int)getType;
- (int)getViewType;
- (BOOL)isAdvanced; - (BOOL)isAdvanced;
- (void)setYPos:(int)i_yPos;
- (int)intValue; - (int)intValue;
- (float)floatValue; - (float)floatValue;
- (char *)stringValue; - (char *)stringValue;
...@@ -61,8 +64,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -61,8 +64,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
...@@ -73,8 +75,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -73,8 +75,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
...@@ -87,8 +88,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -87,8 +88,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
- (IBAction)openFileDialog: (id)sender; - (IBAction)openFileDialog: (id)sender;
- (void)pathChosenInPanel:(NSOpenPanel *)o_sheet withReturn:(int)i_return_code contextInfo:(void *)o_context_info; - (void)pathChosenInPanel:(NSOpenPanel *)o_sheet withReturn:(int)i_return_code contextInfo:(void *)o_context_info;
...@@ -102,8 +102,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -102,8 +102,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
...@@ -116,8 +115,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -116,8 +115,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
- (IBAction)stepperChanged:(id)sender; - (IBAction)stepperChanged:(id)sender;
- (void)textfieldChanged:(NSNotification *)o_notification; - (void)textfieldChanged:(NSNotification *)o_notification;
...@@ -130,8 +128,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -130,8 +128,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
...@@ -146,8 +143,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -146,8 +143,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
- (IBAction)sliderChanged:(id)sender; - (IBAction)sliderChanged:(id)sender;
- (void)textfieldChanged:(NSNotification *)o_notification; - (void)textfieldChanged:(NSNotification *)o_notification;
...@@ -160,8 +156,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -160,8 +156,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
...@@ -174,8 +169,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -174,8 +169,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
- (IBAction)stepperChanged:(id)sender; - (IBAction)stepperChanged:(id)sender;
- (void)textfieldChanged:(NSNotification *)o_notification; - (void)textfieldChanged:(NSNotification *)o_notification;
...@@ -192,8 +186,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -192,8 +186,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
- (IBAction)sliderChanged:(id)sender; - (IBAction)sliderChanged:(id)sender;
- (void)textfieldChanged:(NSNotification *)o_notification; - (void)textfieldChanged:(NSNotification *)o_notification;
...@@ -210,8 +203,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -210,8 +203,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
...@@ -222,8 +214,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -222,8 +214,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
...@@ -236,8 +227,7 @@ static NSMenu *o_keys_menu = nil; ...@@ -236,8 +227,7 @@ static NSMenu *o_keys_menu = nil;
- (id) initWithItem: (module_config_t *)_p_item - (id) initWithItem: (module_config_t *)_p_item
withView: (NSView *)o_parent_view withView: (NSView *)o_parent_view
withVerticalOffset: (int)i_yPos withVerticalOffset: (int)i_yPos;
withLastItem: (int)i_lastItem;
@end @end
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment