Skip to content

Commit 89a45c9

Browse files
committed
Chore: Refactoring
1 parent 0d99b78 commit 89a45c9

17 files changed

+91
-33
lines changed

Source/NETworkManager/Views/AWSSessionManagerHostView.xaml

Lines changed: 44 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,17 @@
77
xmlns:dockablz="clr-namespace:Dragablz.Dockablz;assembly=Dragablz"
88
xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks"
99
xmlns:converters="clr-namespace:NETworkManager.Converters;assembly=NETworkManager.Converters"
10+
xmlns:controls="clr-namespace:NETworkManager.Controls;assembly=NETworkManager.Controls"
1011
xmlns:wpfHelpers="clr-namespace:NETworkManager.Utilities.WPF;assembly=NETworkManager.Utilities.WPF"
1112
xmlns:dialogs="clr-namespace:MahApps.Metro.Controls.Dialogs;assembly=MahApps.Metro"
1213
xmlns:viewModels="clr-namespace:NETworkManager.ViewModels"
1314
xmlns:localization="clr-namespace:NETworkManager.Localization.Resources;assembly=NETworkManager.Localization"
1415
xmlns:settings="clr-namespace:NETworkManager.Settings;assembly=NETworkManager.Settings"
1516
xmlns:interactivity="http://schemas.microsoft.com/xaml/behaviors"
1617
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
17-
xmlns:controls="clr-namespace:NETworkManager.Controls"
18+
xmlns:internalControls="clr-namespace:NETworkManager.Controls"
1819
xmlns:profiles="clr-namespace:NETworkManager.Profiles;assembly=NETworkManager.Profiles"
20+
xmlns:networkManager="clr-namespace:NETworkManager"
1921
dialogs:DialogParticipation.Register="{Binding}"
2022
Loaded="UserControl_Loaded"
2123
mc:Ignorable="d" d:DataContext="{d:DesignInstance viewModels:AWSSessionManagerHostViewModel}">
@@ -58,7 +60,7 @@
5860
<dockablz:Layout Grid.Column="0" Grid.Row="0"
5961
Partition="{Binding InterTabPartition}">
6062
<dockablz:Layout.Resources>
61-
<DataTemplate x:Key="TabHeaderTemplate" DataType="{x:Type controls:DragablzTabItem}">
63+
<DataTemplate x:Key="TabHeaderTemplate" DataType="{x:Type internalControls:DragablzTabItem}">
6264
<Border BorderBrush="{DynamicResource MahApps.Brushes.Gray8}" BorderThickness="0,0,1,0">
6365
<Grid Height="32">
6466
<Grid.ContextMenu>
@@ -605,16 +607,51 @@
605607
<Setter Property="Template">
606608
<Setter.Value>
607609
<ControlTemplate>
608-
<Expander IsExpanded="True"
609-
Style="{StaticResource DefaultExpander}">
610+
<controls:GroupExpander
611+
Style="{StaticResource DefaultExpander}"
612+
StateStore="{Binding Path=DataContext.GroupExpanderStateStore, RelativeSource={RelativeSource AncestorType=ListBox}}"
613+
GroupName="{Binding Path=(CollectionViewGroup.Name)}">
610614
<Expander.Header>
611615
<Grid>
612616
<Grid.ColumnDefinitions>
613617
<ColumnDefinition Width="*" />
614618
<ColumnDefinition Width="10" />
615619
<ColumnDefinition Width="Auto" />
616620
</Grid.ColumnDefinitions>
617-
<Rectangle Grid.Column="0" Grid.ColumnSpan="4"
621+
<Grid.ContextMenu>
622+
<ContextMenu
623+
Style="{StaticResource DefaultContextMenu}">
624+
<MenuItem
625+
Header="{x:Static Member=localization:Strings.ExpandAll}"
626+
Command="{Binding Path=Data.(viewModels:AWSSessionManagerHostViewModel.ExpandAllProfileGroupsCommand), Source={StaticResource BindingProxy}}">
627+
<MenuItem.Icon>
628+
<Rectangle Width="16" Height="16"
629+
Fill="{DynamicResource ResourceKey=MahApps.Brushes.Gray3}">
630+
<Rectangle.OpacityMask>
631+
<VisualBrush
632+
Stretch="Uniform"
633+
Visual="{iconPacks:Material Kind=PlusBoxMultipleOutline}" />
634+
</Rectangle.OpacityMask>
635+
</Rectangle>
636+
</MenuItem.Icon>
637+
</MenuItem>
638+
<MenuItem
639+
Header="{x:Static Member=localization:Strings.CollapseAll}"
640+
Command="{Binding Path=Data.(viewModels:AWSSessionManagerHostViewModel.CollapseAllProfileGroupsCommand), Source={StaticResource BindingProxy}}">
641+
<MenuItem.Icon>
642+
<Rectangle Width="16" Height="16"
643+
Fill="{DynamicResource ResourceKey=MahApps.Brushes.Gray3}">
644+
<Rectangle.OpacityMask>
645+
<VisualBrush
646+
Stretch="Uniform"
647+
Visual="{iconPacks:Material Kind=MinusBoxMultipleOutline}" />
648+
</Rectangle.OpacityMask>
649+
</Rectangle>
650+
</MenuItem.Icon>
651+
</MenuItem>
652+
</ContextMenu>
653+
</Grid.ContextMenu>
654+
<Rectangle Grid.Column="0" Grid.ColumnSpan="3"
618655
Fill="Transparent" />
619656
<TextBlock Grid.Column="0"
620657
Text="{Binding (CollectionViewGroup.Name)}"
@@ -681,7 +718,7 @@
681718
</Grid>
682719
</Expander.Header>
683720
<ItemsPresenter />
684-
</Expander>
721+
</controls:GroupExpander>
685722
</ControlTemplate>
686723
</Setter.Value>
687724
</Setter>
@@ -859,7 +896,7 @@
859896
<!-- Unlock profile button -->
860897
<Button HorizontalAlignment="Center" VerticalAlignment="Center"
861898
Focusable="False"
862-
Command="{Binding UnlockProfileCommand, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type mah:MetroWindow}}}"
899+
Command="{Binding Path=(networkManager:MainWindow.UnlockProfileCommand), RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TypeName=mah:MetroWindow}}}"
863900
Style="{StaticResource CleanButton}"
864901
Visibility="{Binding Source={x:Static Member=settings:ConfigurationManager.Current}, Path=ProfileManagerShowUnlock, Converter={StaticResource BooleanToVisibilityCollapsedConverter}}">
865902
<Grid>

Source/NETworkManager/Views/DNSLookupHostView.xaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
xmlns:settings="clr-namespace:NETworkManager.Settings;assembly=NETworkManager.Settings"
1313
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
1414
xmlns:profiles="clr-namespace:NETworkManager.Profiles;assembly=NETworkManager.Profiles"
15+
xmlns:networkManager="clr-namespace:NETworkManager"
1516
mc:Ignorable="d" d:DataContext="{d:DesignInstance viewModels:DNSLookupHostViewModel}">
1617
<UserControl.Resources>
1718
<converters:BooleanReverseToVisibilityCollapsedConverter x:Key="BooleanReverseToVisibilityCollapsedConverter" />
@@ -629,7 +630,7 @@
629630
<!-- Unlock profile button -->
630631
<Button HorizontalAlignment="Center" VerticalAlignment="Center"
631632
Focusable="False"
632-
Command="{Binding UnlockProfileCommand, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type mah:MetroWindow}}}"
633+
Command="{Binding Path=(networkManager:MainWindow.UnlockProfileCommand), RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TypeName=mah:MetroWindow}}}"
633634
Style="{StaticResource CleanButton}"
634635
Visibility="{Binding Source={x:Static Member=settings:ConfigurationManager.Current}, Path=ProfileManagerShowUnlock, Converter={StaticResource BooleanToVisibilityCollapsedConverter}}">
635636
<Grid>

Source/NETworkManager/Views/IPGeolocationHostView.xaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
xmlns:settings="clr-namespace:NETworkManager.Settings;assembly=NETworkManager.Settings"
1313
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
1414
xmlns:profiles="clr-namespace:NETworkManager.Profiles;assembly=NETworkManager.Profiles"
15+
xmlns:networkManager="clr-namespace:NETworkManager"
1516
mc:Ignorable="d" d:DataContext="{d:DesignInstance viewModels:IPGeolocationHostViewModel}">
1617
<UserControl.Resources>
1718
<converters:BooleanReverseToVisibilityCollapsedConverter x:Key="BooleanReverseToVisibilityCollapsedConverter" />
@@ -622,7 +623,7 @@
622623
<!-- Unlock profile button -->
623624
<Button HorizontalAlignment="Center" VerticalAlignment="Center"
624625
Focusable="False"
625-
Command="{Binding UnlockProfileCommand, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type mah:MetroWindow}}}"
626+
Command="{Binding Path=(networkManager:MainWindow.UnlockProfileCommand), RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TypeName=mah:MetroWindow}}}"
626627
Style="{StaticResource CleanButton}"
627628
Visibility="{Binding Source={x:Static Member=settings:ConfigurationManager.Current}, Path=ProfileManagerShowUnlock, Converter={StaticResource BooleanToVisibilityCollapsedConverter}}">
628629
<Grid>

Source/NETworkManager/Views/IPScannerHostView.xaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
xmlns:settings="clr-namespace:NETworkManager.Settings;assembly=NETworkManager.Settings"
1313
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
1414
xmlns:profiles="clr-namespace:NETworkManager.Profiles;assembly=NETworkManager.Profiles"
15+
xmlns:networkManager="clr-namespace:NETworkManager"
1516
mc:Ignorable="d" d:DataContext="{d:DesignInstance viewModels:IPScannerHostViewModel}">
1617
<UserControl.Resources>
1718
<converters:BooleanReverseToVisibilityCollapsedConverter x:Key="BooleanReverseToVisibilityCollapsedConverter" />
@@ -630,7 +631,7 @@
630631
<!-- Unlock profile button -->
631632
<Button HorizontalAlignment="Center" VerticalAlignment="Center"
632633
Focusable="False"
633-
Command="{Binding UnlockProfileCommand, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type mah:MetroWindow}}}"
634+
Command="{Binding Path=(networkManager:MainWindow.UnlockProfileCommand), RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TypeName=mah:MetroWindow}}}"
634635
Style="{StaticResource CleanButton}"
635636
Visibility="{Binding Source={x:Static Member=settings:ConfigurationManager.Current}, Path=ProfileManagerShowUnlock, Converter={StaticResource BooleanToVisibilityCollapsedConverter}}">
636637
<Grid>

Source/NETworkManager/Views/NetworkInterfaceView.xaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
xmlns:liveChart="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
1818
xmlns:profiles="clr-namespace:NETworkManager.Profiles;assembly=NETworkManager.Profiles"
1919
xmlns:wpfHelper="clr-namespace:NETworkManager.Utilities.WPF;assembly=NETworkManager.Utilities.WPF"
20+
xmlns:networkManager="clr-namespace:NETworkManager"
2021
dialog:DialogParticipation.Register="{Binding}"
2122
mc:Ignorable="d" d:DataContext="{d:DesignInstance viewModels:NetworkInterfaceViewModel}">
2223
<UserControl.InputBindings>
@@ -1878,7 +1879,7 @@
18781879
<!-- Unlock profile button -->
18791880
<Button HorizontalAlignment="Center" VerticalAlignment="Center"
18801881
Focusable="False"
1881-
Command="{Binding UnlockProfileCommand, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type mah:MetroWindow}}}"
1882+
Command="{Binding Path=(networkManager:MainWindow.UnlockProfileCommand), RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TypeName=mah:MetroWindow}}}"
18821883
Style="{StaticResource CleanButton}"
18831884
Visibility="{Binding Source={x:Static Member=settings:ConfigurationManager.Current}, Path=ProfileManagerShowUnlock, Converter={StaticResource BooleanToVisibilityCollapsedConverter}}">
18841885
<Grid>

0 commit comments

Comments
 (0)