Core - Create default instances for properties

UI - Added configurable width/height for brush dialogs
This commit is contained in:
Robert committed 2021-04-08 00:39:26 +02:00
1 parent f4e3011957
commit 903e434137
12 files changed
+109 -14

No files matched your search

@@ -75,7 +75,7 @@ namespace Artemis.UI.Screens.ProfileEditor.LayerProperties.Tree
ConstructorArgument argument = new(brushParameter.Name, layerBrush);
BrushConfigurationViewModel viewModel = (BrushConfigurationViewModel) layerBrush.Descriptor.Provider.Plugin.Kernel.Get(configurationViewModel.Type, argument);
_layerBrushSettingsWindowVm = new LayerBrushSettingsWindowViewModel(viewModel);
_layerBrushSettingsWindowVm = new LayerBrushSettingsWindowViewModel(viewModel, configurationViewModel);
_windowManager.ShowDialog(_layerBrushSettingsWindowVm);
}
catch (Exception e)
@@ -102,7 +102,7 @@ namespace Artemis.UI.Screens.ProfileEditor.LayerProperties.Tree
ConstructorArgument argument = new(effectParameter.Name, layerEffect);
EffectConfigurationViewModel viewModel = (EffectConfigurationViewModel) layerEffect.Descriptor.Provider.Plugin.Kernel.Get(configurationViewModel.Type, argument);
_layerEffectSettingsWindowVm = new LayerEffectSettingsWindowViewModel(viewModel);
_layerEffectSettingsWindowVm = new LayerEffectSettingsWindowViewModel(viewModel, configurationViewModel);
_windowManager.ShowDialog(_layerEffectSettingsWindowVm);
}
catch (Exception e)
@@ -12,8 +12,10 @@
Background="{DynamicResource MaterialDesignPaper}"
FontFamily="pack://application:,,,/MaterialDesignThemes.Wpf;component/Resources/Roboto/#Roboto"
UseLayoutRounding="True"
Width="800"
Height="800"
MinWidth="400"
MinHeight="400"
Width="{Binding Width}"
Height="{Binding Height}"
d:DesignHeight="800"
d:DesignWidth="800"
d:DataContext="{d:DesignInstance windows:LayerBrushSettingsWindowViewModel}"
@@ -6,10 +6,27 @@ namespace Artemis.UI.Screens.ProfileEditor.Windows
{
public class LayerBrushSettingsWindowViewModel : Conductor<BrushConfigurationViewModel>
{
public LayerBrushSettingsWindowViewModel(BrushConfigurationViewModel configurationViewModel)
private int _height;
private int _width;
public LayerBrushSettingsWindowViewModel(BrushConfigurationViewModel configurationViewModel, LayerBrushConfigurationDialog configuration)
{
ActiveItem = configurationViewModel ?? throw new ArgumentNullException(nameof(configurationViewModel));
ActiveItem.Closed += ActiveItemOnClosed;
Width = configuration.DialogWidth;
Height = configuration.DialogHeight;
}
public int Width
{
get => _width;
set => SetAndNotify(ref _width, value);
}
public int Height
{
get => _height;
set => SetAndNotify(ref _height, value);
}
private void ActiveItemOnClosed(object sender, CloseEventArgs e)
@@ -12,8 +12,10 @@
Background="{DynamicResource MaterialDesignPaper}"
FontFamily="pack://application:,,,/MaterialDesignThemes.Wpf;component/Resources/Roboto/#Roboto"
UseLayoutRounding="True"
Width="800"
Height="800"
MinWidth="400"
MinHeight="400"
Width="{Binding Width}"
Height="{Binding Height}"
d:DesignHeight="800"
d:DesignWidth="800"
d:DataContext="{d:DesignInstance windows:LayerEffectSettingsWindowViewModel}"
@@ -6,10 +6,27 @@ namespace Artemis.UI.Screens.ProfileEditor.Windows
{
public class LayerEffectSettingsWindowViewModel : Conductor<EffectConfigurationViewModel>
{
public LayerEffectSettingsWindowViewModel(EffectConfigurationViewModel configurationViewModel)
private int _height;
private int _width;
public LayerEffectSettingsWindowViewModel(EffectConfigurationViewModel configurationViewModel, LayerEffectConfigurationDialog configuration)
{
ActiveItem = configurationViewModel ?? throw new ArgumentNullException(nameof(configurationViewModel));
ActiveItem.Closed += ActiveItemOnClosed;
Width = configuration.DialogWidth;
Height = configuration.DialogHeight;
}
public int Width
{
get => _width;
set => SetAndNotify(ref _width, value);
}
public int Height
{
get => _height;
set => SetAndNotify(ref _height, value);
}
private void ActiveItemOnClosed(object sender, CloseEventArgs e)