renaming and garbage collection
This commit is contained in:
parent
f114304ec9
commit
91fa709b4b
@ -25,8 +25,8 @@ namespace MaterialModernWPF
|
|||||||
containerRegistry.Register<ShellViewModel>();
|
containerRegistry.Register<ShellViewModel>();
|
||||||
containerRegistry.Register<Shell>();
|
containerRegistry.Register<Shell>();
|
||||||
containerRegistry.RegisterSingleton<CalculationPackageContainer>();
|
containerRegistry.RegisterSingleton<CalculationPackageContainer>();
|
||||||
containerRegistry.RegisterSingleton<CalculationPackage, DetailedGeometryPackage>();
|
containerRegistry.RegisterSingleton<Package, DetailedGeometryPackage>();
|
||||||
containerRegistry.RegisterSingleton<CalculationPackage, AdditionalMoments>();
|
containerRegistry.RegisterSingleton<Package, AdditionalMoments>();
|
||||||
containerRegistry.RegisterForNavigation<DetailedGeometryView>();
|
containerRegistry.RegisterForNavigation<DetailedGeometryView>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,6 +12,6 @@ namespace MaterialModernWPF.Module
|
|||||||
_container = container;
|
_container = container;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEnumerable<CalculationPackage> Packages => _container.CalculationPackages;
|
public IEnumerable<Package> Packages => _container.CalculationPackages;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -3,7 +3,7 @@ using Prism.Events;
|
|||||||
|
|
||||||
namespace MaterialModernWPF.Service
|
namespace MaterialModernWPF.Service
|
||||||
{
|
{
|
||||||
public class AdditionalMoments : CalculationPackage
|
public class AdditionalMoments : Package
|
||||||
{
|
{
|
||||||
public AdditionalMoments(IEventAggregator eventAggregator) : base(eventAggregator)
|
public AdditionalMoments(IEventAggregator eventAggregator) : base(eventAggregator)
|
||||||
{
|
{
|
||||||
|
@ -4,12 +4,12 @@ using Prism.Events;
|
|||||||
|
|
||||||
namespace MaterialModernWPF.Service
|
namespace MaterialModernWPF.Service
|
||||||
{
|
{
|
||||||
public abstract class CalculationPackage
|
public abstract class Package
|
||||||
{
|
{
|
||||||
private readonly IEventAggregator _eventAggregator;
|
private readonly IEventAggregator _eventAggregator;
|
||||||
private bool _isSelected;
|
private bool _isSelected;
|
||||||
|
|
||||||
protected CalculationPackage(IEventAggregator eventAggregator)
|
protected Package(IEventAggregator eventAggregator)
|
||||||
{
|
{
|
||||||
_eventAggregator = eventAggregator;
|
_eventAggregator = eventAggregator;
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,7 @@ namespace MaterialModernWPF.Service
|
|||||||
{
|
{
|
||||||
private readonly IRegionManager _regionManager;
|
private readonly IRegionManager _regionManager;
|
||||||
private readonly IResolver _resolver;
|
private readonly IResolver _resolver;
|
||||||
public CalculationPackage[] CalculationPackages { get; }
|
public Package[] CalculationPackages { get; }
|
||||||
|
|
||||||
public CalculationPackageContainer(
|
public CalculationPackageContainer(
|
||||||
IEventAggregator eventAggregator, IRegionManager regionManager,
|
IEventAggregator eventAggregator, IRegionManager regionManager,
|
||||||
@ -17,11 +17,11 @@ namespace MaterialModernWPF.Service
|
|||||||
{
|
{
|
||||||
_regionManager = regionManager;
|
_regionManager = regionManager;
|
||||||
_resolver = resolver;
|
_resolver = resolver;
|
||||||
CalculationPackages = resolver.ResolveMany<CalculationPackage>().ToArray();
|
CalculationPackages = resolver.ResolveMany<Package>().ToArray();
|
||||||
eventAggregator.GetEvent<CalculationPackageSelectionChangedEvent>().Subscribe(SelectionChanged);
|
eventAggregator.GetEvent<CalculationPackageSelectionChangedEvent>().Subscribe(SelectionChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SelectionChanged((CalculationPackage sender, bool isSelected) payload)
|
private void SelectionChanged((Package sender, bool isSelected) payload)
|
||||||
{
|
{
|
||||||
var viewKey = payload.sender.GetType().FullName;
|
var viewKey = payload.sender.GetType().FullName;
|
||||||
var region = _regionManager.Regions[Constants.PackagesRegion];
|
var region = _regionManager.Regions[Constants.PackagesRegion];
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
namespace MaterialModernWPF.Service
|
namespace MaterialModernWPF.Service
|
||||||
{
|
{
|
||||||
public class CalculationPackageSelectionChangedEvent : PubSubEvent<(CalculationPackage, bool)>
|
public class CalculationPackageSelectionChangedEvent : PubSubEvent<(Package, bool)>
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@ using Prism.Events;
|
|||||||
|
|
||||||
namespace MaterialModernWPF.Service
|
namespace MaterialModernWPF.Service
|
||||||
{
|
{
|
||||||
public class DetailedGeometryPackage : CalculationPackage
|
public class DetailedGeometryPackage : Package
|
||||||
{
|
{
|
||||||
public DetailedGeometryPackage(IEventAggregator eventAggregator) : base(eventAggregator)
|
public DetailedGeometryPackage(IEventAggregator eventAggregator) : base(eventAggregator)
|
||||||
{
|
{
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
Title="NiftyTool NG"
|
Title="NiftyTool NG"
|
||||||
Width="920"
|
Width="920"
|
||||||
Height="600"
|
Height="600"
|
||||||
|
d:DataContext="{d:DesignInstance view:ShellViewModel}"
|
||||||
modern:UIHooks.AutoDpiScale="True"
|
modern:UIHooks.AutoDpiScale="True"
|
||||||
prism:ViewModelLocator.AutoWireViewModel="True"
|
prism:ViewModelLocator.AutoWireViewModel="True"
|
||||||
Background="{DynamicResource MaterialDesignPaper}"
|
Background="{DynamicResource MaterialDesignPaper}"
|
||||||
@ -85,7 +86,10 @@
|
|||||||
IsChecked="False"
|
IsChecked="False"
|
||||||
Style="{StaticResource MaterialDesignHamburgerToggleButton}" />
|
Style="{StaticResource MaterialDesignHamburgerToggleButton}" />
|
||||||
<StackPanel DockPanel.Dock="Right" Orientation="Horizontal">
|
<StackPanel DockPanel.Dock="Right" Orientation="Horizontal">
|
||||||
<Button materialDesign:ShadowAssist.ShadowDepth="Depth0" Style="{StaticResource MaterialDesignFloatingActionButton}">
|
<Button
|
||||||
|
materialDesign:ShadowAssist.ShadowDepth="Depth0"
|
||||||
|
Command="{Binding GcCollectCommand}"
|
||||||
|
Style="{StaticResource MaterialDesignFloatingActionButton}">
|
||||||
<materialDesign:PackIcon
|
<materialDesign:PackIcon
|
||||||
Width="32"
|
Width="32"
|
||||||
Height="32"
|
Height="32"
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
using Prism.Mvvm;
|
using System.Windows.Input;
|
||||||
|
using Prism.Commands;
|
||||||
|
using Prism.Mvvm;
|
||||||
|
|
||||||
namespace MaterialModernWPF.View
|
namespace MaterialModernWPF.View
|
||||||
{
|
{
|
||||||
@ -6,6 +8,9 @@ namespace MaterialModernWPF.View
|
|||||||
{
|
{
|
||||||
public ShellViewModel()
|
public ShellViewModel()
|
||||||
{
|
{
|
||||||
|
GcCollectCommand = new DelegateCommand(System.GC.Collect);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ICommand GcCollectCommand {get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user