Commit bc5cee00 authored by Derk-Jan Hartman's avatar Derk-Jan Hartman

* Fix the Reset button for OS X preferences (closes #193)

parent f0665477
...@@ -39,6 +39,7 @@ ...@@ -39,6 +39,7 @@
- (BOOL)hasPrefs:(NSString *)o_module_name; - (BOOL)hasPrefs:(NSString *)o_module_name;
- (NSView *)showView:(NSScrollView *)o_prefs_view advancedView:(vlc_bool_t) b_advanced; - (NSView *)showView:(NSScrollView *)o_prefs_view advancedView:(vlc_bool_t) b_advanced;
- (void)applyChanges; - (void)applyChanges;
- (void)resetView;
@end @end
......
...@@ -146,7 +146,9 @@ static VLCPrefs *_o_sharedMainInstance = nil; ...@@ -146,7 +146,9 @@ static VLCPrefs *_o_sharedMainInstance = nil;
{ {
if( i_return == NSAlertAlternateReturn ) if( i_return == NSAlertAlternateReturn )
{ {
[o_prefs_view setDocumentView: o_empty_view];
config_ResetAll( p_intf ); config_ResetAll( p_intf );
[[VLCTreeItem rootItem] resetView];
[[o_tree itemAtRow:[o_tree selectedRow]] [[o_tree itemAtRow:[o_tree selectedRow]]
showView:o_prefs_view advancedView: showView:o_prefs_view advancedView:
( [o_advanced_ckb state] == NSOnState ) ? VLC_TRUE : VLC_FALSE]; ( [o_advanced_ckb state] == NSOnState ) ? VLC_TRUE : VLC_FALSE];
...@@ -310,7 +312,8 @@ static VLCTreeItem *o_root_item = nil; ...@@ -310,7 +312,8 @@ static VLCTreeItem *o_root_item = nil;
case CONFIG_SUBCATEGORY: case CONFIG_SUBCATEGORY:
o_child_name = [[VLCMain sharedInstance] o_child_name = [[VLCMain sharedInstance]
localizedString: config_CategoryNameGet(p_item->i_value ) ]; localizedString: config_CategoryNameGet(p_item->i_value ) ];
if( p_item->i_value != SUBCAT_VIDEO_GENERAL && if( p_item->i_value != SUBCAT_PLAYLIST_GENERAL &&
p_item->i_value != SUBCAT_VIDEO_GENERAL &&
p_item->i_value != SUBCAT_AUDIO_GENERAL ) p_item->i_value != SUBCAT_AUDIO_GENERAL )
[p_last_category->o_children [p_last_category->o_children
addObject:[[VLCTreeItem alloc] addObject:[[VLCTreeItem alloc]
...@@ -555,7 +558,8 @@ static VLCTreeItem *o_root_item = nil; ...@@ -555,7 +558,8 @@ static VLCTreeItem *o_root_item = nil;
} }
p_item = (p_parser->p_config + i_object_category); p_item = (p_parser->p_config + i_object_category);
if( ( p_item->i_type == CONFIG_CATEGORY ) && if( ( p_item->i_type == CONFIG_CATEGORY ) &&
( ( p_item->i_value == CAT_AUDIO ) || ( ( p_item->i_value == CAT_PLAYLIST ) ||
( p_item->i_value == CAT_AUDIO ) ||
( p_item->i_value == CAT_VIDEO ) ) ) ( p_item->i_value == CAT_VIDEO ) ) )
p_item++; p_item++;
...@@ -684,6 +688,21 @@ static VLCTreeItem *o_root_item = nil; ...@@ -684,6 +688,21 @@ static VLCTreeItem *o_root_item = nil;
[[o_children objectAtIndex:i] applyChanges]; [[o_children objectAtIndex:i] applyChanges];
} }
- (void)resetView
{
unsigned int i;
if( o_subviews != nil )
{
//Item has been shown
[o_subviews release];
o_subviews = nil;
}
if( o_children != IsALeafNode )
for( i = 0 ; i < [o_children count] ; i++ )
[[o_children objectAtIndex:i] resetView];
}
@end @end
......
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