Skip to content

Commit ca8f38c

Browse files
committed
Sort out initial expanded states.
1 parent 90f6116 commit ca8f38c

File tree

4 files changed

+32
-31
lines changed

4 files changed

+32
-31
lines changed

Rubberduck.Core/Navigation/CodeExplorer/CodeExplorerItemViewModelBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ protected void OnNameChanged()
8888

8989
protected bool UnfilteredIsExpanded { get; private set; }
9090

91-
private bool _isExpanded = true;
91+
private bool _isExpanded;
9292
public bool IsExpanded
9393
{
9494
get => _isExpanded;

Rubberduck.Core/Navigation/CodeExplorer/CodeExplorerProjectViewModel.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ public CodeExplorerProjectViewModel(Declaration declaration, IEnumerable<Declara
3030

3131
SetName();
3232
AddNewChildren(declarations.ToList());
33+
IsExpanded = true;
3334
}
3435

3536
private string _displayName;

Rubberduck.Core/Navigation/CodeExplorer/CodeExplorerViewModel.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ private void Synchronize(List<Declaration> declarations)
268268
{
269269
var model = new CodeExplorerProjectViewModel(project, declarations, _state, _vbe);
270270
Projects.Add(model);
271-
model.IsExpanded = true;
271+
//model.IsExpanded = true;
272272
}
273273

274274
CanSearch = Projects.Any();

Rubberduck.Core/UI/CodeExplorer/CodeExplorerControl.xaml

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,33 @@
244244
</Trigger>
245245
</Style.Triggers>
246246
</Style>
247+
248+
<Style x:Key="TreeViewContainerStyle" TargetType="{x:Type TreeViewItem}">
249+
<Setter Property="BorderThickness" Value="1.5"/>
250+
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
251+
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=OneWay}" />
252+
<Setter Property="Visibility" Value="{Binding Filtered, Mode=OneWay, Converter={StaticResource BoolToHiddenVisibility}}" />
253+
<Setter Property="HorizontalAlignment" Value="Left" />
254+
<EventSetter Event="MouseDoubleClick" Handler="TreeView_OnMouseDoubleClick" />
255+
<EventSetter Event="MouseRightButtonDown" Handler="TreeView_OnMouseRightButtonDown" />
256+
<Style.Triggers>
257+
<Trigger Property="IsSelected" Value="True">
258+
<Setter Property="BorderBrush" Value="#adc6e5"/>
259+
</Trigger>
260+
<MultiTrigger>
261+
<MultiTrigger.Conditions>
262+
<Condition Property="IsSelected" Value="True"/>
263+
<Condition Property="IsSelectionActive" Value="False"/>
264+
</MultiTrigger.Conditions>
265+
<Setter Property="BorderBrush" Value="LightGray"/>
266+
</MultiTrigger>
267+
</Style.Triggers>
268+
<Style.Resources>
269+
<Style TargetType="Border">
270+
<Setter Property="CornerRadius" Value="2"/>
271+
</Style>
272+
</Style.Resources>
273+
</Style>
247274
</ResourceDictionary>
248275
</UserControl.Resources>
249276

@@ -423,6 +450,7 @@
423450
Background="White"
424451
HorizontalContentAlignment="Stretch"
425452
ItemsSource="{Binding Projects}"
453+
ItemContainerStyle="{StaticResource TreeViewContainerStyle}"
426454
FontSize="{Binding FontSize, Mode=OneWay}"
427455
BorderThickness="0,1"
428456
VirtualizingPanel.IsVirtualizing="False">
@@ -533,35 +561,7 @@
533561
</ContextMenu>
534562
</TreeView.ContextMenu>
535563
<TreeView.ItemTemplate>
536-
<HierarchicalDataTemplate DataType="codeExplorer:ICodeExplorerNode" ItemsSource="{Binding Children}">
537-
<HierarchicalDataTemplate.ItemContainerStyle>
538-
<Style TargetType="{x:Type TreeViewItem}">
539-
<Setter Property="BorderThickness" Value="1.5"/>
540-
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
541-
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=OneWay}" />
542-
<Setter Property="Visibility" Value="{Binding Filtered, Mode=OneWay, Converter={StaticResource BoolToHiddenVisibility}}" />
543-
<Setter Property="HorizontalAlignment" Value="Left" />
544-
<EventSetter Event="MouseDoubleClick" Handler="TreeView_OnMouseDoubleClick" />
545-
<EventSetter Event="MouseRightButtonDown" Handler="TreeView_OnMouseRightButtonDown" />
546-
<Style.Triggers>
547-
<Trigger Property="IsSelected" Value="True">
548-
<Setter Property="BorderBrush" Value="#adc6e5"/>
549-
</Trigger>
550-
<MultiTrigger>
551-
<MultiTrigger.Conditions>
552-
<Condition Property="IsSelected" Value="True"/>
553-
<Condition Property="IsSelectionActive" Value="False"/>
554-
</MultiTrigger.Conditions>
555-
<Setter Property="BorderBrush" Value="LightGray"/>
556-
</MultiTrigger>
557-
</Style.Triggers>
558-
<Style.Resources>
559-
<Style TargetType="Border">
560-
<Setter Property="CornerRadius" Value="2"/>
561-
</Style>
562-
</Style.Resources>
563-
</Style>
564-
</HierarchicalDataTemplate.ItemContainerStyle>
564+
<HierarchicalDataTemplate DataType="codeExplorer:ICodeExplorerNode" ItemsSource="{Binding Children}" ItemContainerStyle="{StaticResource TreeViewContainerStyle}">
565565
<HierarchicalDataTemplate.Resources>
566566
<Style x:Key="TreeViewItemStyle" TargetType="{x:Type TextBlock}">
567567
<Setter Property="Text" Value="{Binding Name}" />

0 commit comments

Comments
 (0)