More theme changes
This commit is contained in:
parent
d6bd1678b4
commit
cbbc7c25fa
|
@ -2,7 +2,7 @@
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using System.Windows.Data;
|
using System.Windows.Data;
|
||||||
|
|
||||||
namespace Filtration.Converters
|
namespace Filtration.Common.Converters
|
||||||
{
|
{
|
||||||
internal class BoolInverterConverter : IValueConverter
|
internal class BoolInverterConverter : IValueConverter
|
||||||
{
|
{
|
|
@ -2,7 +2,7 @@
|
||||||
using System.Windows.Data;
|
using System.Windows.Data;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
|
|
||||||
namespace Filtration.Converters
|
namespace Filtration.Common.Converters
|
||||||
{
|
{
|
||||||
public class ColorToSolidColorBrushConverter : IValueConverter
|
public class ColorToSolidColorBrushConverter : IValueConverter
|
||||||
{
|
{
|
|
@ -3,7 +3,7 @@ using System.Globalization;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using System.Windows.Data;
|
using System.Windows.Data;
|
||||||
|
|
||||||
namespace Filtration.Converters
|
namespace Filtration.Common.Converters
|
||||||
{
|
{
|
||||||
internal class InverseBooleanVisibilityConverter : IValueConverter
|
internal class InverseBooleanVisibilityConverter : IValueConverter
|
||||||
{
|
{
|
|
@ -3,7 +3,7 @@ using System.Globalization;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using System.Windows.Data;
|
using System.Windows.Data;
|
||||||
|
|
||||||
namespace Filtration.Converters
|
namespace Filtration.Common.Converters
|
||||||
{
|
{
|
||||||
internal class StringToVisibilityConverter : IValueConverter
|
internal class StringToVisibilityConverter : IValueConverter
|
||||||
{
|
{
|
|
@ -64,7 +64,12 @@
|
||||||
<Reference Include="WindowsBase" />
|
<Reference Include="WindowsBase" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="Converters\BooleanInverterConverter.cs" />
|
||||||
<Compile Include="Converters\BooleanVisibilityConverter.cs" />
|
<Compile Include="Converters\BooleanVisibilityConverter.cs" />
|
||||||
|
<Compile Include="Converters\ColorToSolidColorBrushConverter.cs" />
|
||||||
|
<Compile Include="Converters\InverseBooleanVisibilityConverter.cs" />
|
||||||
|
<Compile Include="Converters\StringToVisibilityConverter.cs" />
|
||||||
|
<Compile Include="Messages\ThemeClosedMessage.cs" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<Compile Include="Services\FileSystemService.cs" />
|
<Compile Include="Services\FileSystemService.cs" />
|
||||||
<Compile Include="Services\MessageBoxService.cs" />
|
<Compile Include="Services\MessageBoxService.cs" />
|
||||||
|
@ -81,6 +86,12 @@
|
||||||
<Name>Filtration.ObjectModel</Name>
|
<Name>Filtration.ObjectModel</Name>
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Page Include="Styles\SharedResourcesDictionary.xaml">
|
||||||
|
<Generator>MSBuild:Compile</Generator>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
Other similar extension points exist, see Microsoft.Common.targets.
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace Filtration.Common.Messages
|
||||||
|
{
|
||||||
|
class ThemeClosedMessage
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,9 +1,8 @@
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:converters="clr-namespace:Filtration.Converters"
|
|
||||||
xmlns:commonConverters="clr-namespace:Filtration.Common.Converters;assembly=Filtration.Common"
|
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
|
xmlns:converters="clr-namespace:Filtration.Common.Converters"
|
||||||
mc:Ignorable="d" >
|
mc:Ignorable="d" >
|
||||||
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
|
@ -32,18 +31,19 @@
|
||||||
</Setter.Value>
|
</Setter.Value>
|
||||||
</Setter>
|
</Setter>
|
||||||
</Style>
|
</Style>
|
||||||
<converters:IntToItemRarityConverter x:Key="IntToItemRarityConverter" />
|
<Style TargetType="{x:Type Border}" x:Key="BlockItemBorder">
|
||||||
|
<Setter Property="BorderThickness" Value="1" />
|
||||||
|
<Setter Property="BorderBrush" Value="Black" />
|
||||||
|
<Setter Property="CornerRadius" Value="3" />
|
||||||
|
<Setter Property="Margin" Value="0,0,5,5" />
|
||||||
|
</Style>
|
||||||
<converters:StringToVisibilityConverter x:Key="StringToVisibilityConverter" />
|
<converters:StringToVisibilityConverter x:Key="StringToVisibilityConverter" />
|
||||||
<converters:BoolInverterConverter x:Key="BoolInverterConverter" />
|
<converters:BoolInverterConverter x:Key="BoolInverterConverter" />
|
||||||
<converters:ColorToSolidColorBrushConverter x:Key="ColorToSolidColorBrushConverter" />
|
<converters:ColorToSolidColorBrushConverter x:Key="ColorToSolidColorBrushConverter" />
|
||||||
<converters:BooleanToBlockActionConverter x:Key="BooleanToBlockActionConverter" />
|
<converters:BooleanVisibilityConverter x:Key="BooleanVisibilityConverter" />
|
||||||
<converters:BooleanToBlockActionInverseConverter x:Key="BooleanToBlockActionInverseConverter" />
|
|
||||||
<converters:BlockItemTypeToStringConverter x:Key="BlockItemTypeToStringConverter" />
|
|
||||||
<commonConverters:BooleanVisibilityConverter x:Key="BooleanVisibilityConverter" />
|
|
||||||
<converters:InverseBooleanVisibilityConverter x:Key="InverseBooleanVisibilityConverter" />
|
<converters:InverseBooleanVisibilityConverter x:Key="InverseBooleanVisibilityConverter" />
|
||||||
<converters:BlockItemToRemoveEnabledVisibilityConverter x:Key="BlockItemToRemoveEnabledVisibilityConverter" />
|
|
||||||
<converters:AvailableThemeComponentsConverter x:Key="AvailableThemeComponentsConverter" />
|
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
<ResourceDictionary Source="ExpanderStyle.xaml" />
|
|
||||||
</ResourceDictionary.MergedDictionaries>
|
</ResourceDictionary.MergedDictionaries>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
|
@ -19,17 +19,17 @@ namespace Filtration.ThemeEditor.Converters
|
||||||
|
|
||||||
switch (type.GetAttributeDescription())
|
switch (type.GetAttributeDescription())
|
||||||
{
|
{
|
||||||
case "TextColor":
|
case "Text":
|
||||||
{
|
{
|
||||||
return "Text";
|
return "Text Color Theme Components";
|
||||||
}
|
}
|
||||||
case "BorderColor":
|
case "Border":
|
||||||
{
|
{
|
||||||
return "Border";
|
return "Border Color Theme Components";
|
||||||
}
|
}
|
||||||
case "BackgroundColor":
|
case "Background":
|
||||||
{
|
{
|
||||||
return "Background";
|
return "Background Color Theme Components";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -95,6 +95,7 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Converters\ThemeComponentTypeToStringConverter.cs" />
|
<Compile Include="Converters\ThemeComponentTypeToStringConverter.cs" />
|
||||||
|
<Compile Include="Messages\ThemeClosedMessage.cs" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<Compile Include="Providers\ThemeProvider.cs" />
|
<Compile Include="Providers\ThemeProvider.cs" />
|
||||||
<Compile Include="Services\ThemePersistenceService.cs" />
|
<Compile Include="Services\ThemePersistenceService.cs" />
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
using Filtration.ThemeEditor.ViewModels;
|
||||||
|
|
||||||
|
namespace Filtration.ThemeEditor.Messages
|
||||||
|
{
|
||||||
|
public class ThemeClosedMessage
|
||||||
|
{
|
||||||
|
public IThemeEditorViewModel ClosedViewModel { get; set; }
|
||||||
|
}
|
||||||
|
}
|
|
@ -39,7 +39,7 @@ namespace Filtration.ThemeEditor.Providers
|
||||||
});
|
});
|
||||||
|
|
||||||
var themeViewModel = _themeViewModelFactory.Create();
|
var themeViewModel = _themeViewModelFactory.Create();
|
||||||
themeViewModel.Initialise(themeComponentCollection, true);
|
themeViewModel.InitialiseForNewTheme(themeComponentCollection);
|
||||||
themeViewModel.FilePath = "Untitled.filtertheme";
|
themeViewModel.FilePath = "Untitled.filtertheme";
|
||||||
|
|
||||||
return themeViewModel;
|
return themeViewModel;
|
||||||
|
@ -48,7 +48,7 @@ namespace Filtration.ThemeEditor.Providers
|
||||||
public IThemeEditorViewModel MasterThemeForScript(ItemFilterScript script)
|
public IThemeEditorViewModel MasterThemeForScript(ItemFilterScript script)
|
||||||
{
|
{
|
||||||
var themeViewModel = _themeViewModelFactory.Create();
|
var themeViewModel = _themeViewModelFactory.Create();
|
||||||
themeViewModel.Initialise(script.ThemeComponents, true);
|
themeViewModel.InitialiseForMasterTheme(script);
|
||||||
themeViewModel.FilePath = "<Master Theme> " + Path.GetFileName(script.FilePath);
|
themeViewModel.FilePath = "<Master Theme> " + Path.GetFileName(script.FilePath);
|
||||||
|
|
||||||
return themeViewModel;
|
return themeViewModel;
|
||||||
|
|
|
@ -7,10 +7,13 @@ using System.Windows.Media.Imaging;
|
||||||
using Filtration.Common.Services;
|
using Filtration.Common.Services;
|
||||||
using Filtration.Common.ViewModels;
|
using Filtration.Common.ViewModels;
|
||||||
using Filtration.Interface;
|
using Filtration.Interface;
|
||||||
|
using Filtration.ObjectModel;
|
||||||
using Filtration.ObjectModel.Enums;
|
using Filtration.ObjectModel.Enums;
|
||||||
using Filtration.ObjectModel.ThemeEditor;
|
using Filtration.ObjectModel.ThemeEditor;
|
||||||
|
using Filtration.ThemeEditor.Messages;
|
||||||
using Filtration.ThemeEditor.Providers;
|
using Filtration.ThemeEditor.Providers;
|
||||||
using GalaSoft.MvvmLight.CommandWpf;
|
using GalaSoft.MvvmLight.CommandWpf;
|
||||||
|
using GalaSoft.MvvmLight.Messaging;
|
||||||
using NLog;
|
using NLog;
|
||||||
|
|
||||||
namespace Filtration.ThemeEditor.ViewModels
|
namespace Filtration.ThemeEditor.ViewModels
|
||||||
|
@ -19,9 +22,12 @@ namespace Filtration.ThemeEditor.ViewModels
|
||||||
{
|
{
|
||||||
RelayCommand<ThemeComponentType> AddThemeComponentCommand { get; }
|
RelayCommand<ThemeComponentType> AddThemeComponentCommand { get; }
|
||||||
RelayCommand<ThemeComponent> DeleteThemeComponentCommand { get; }
|
RelayCommand<ThemeComponent> DeleteThemeComponentCommand { get; }
|
||||||
|
RelayCommand CloseCommand { get; }
|
||||||
|
|
||||||
void Initialise(ThemeComponentCollection themeComponentCollection, bool newTheme);
|
void InitialiseForNewTheme(ThemeComponentCollection themeComponentCollection);
|
||||||
bool EditEnabled { get; }
|
void InitialiseForMasterTheme(ItemFilterScript script);
|
||||||
|
bool IsMasterTheme { get; }
|
||||||
|
ItemFilterScript IsMasterThemeForScript { get; }
|
||||||
string Title { get; }
|
string Title { get; }
|
||||||
string FilePath { get; set; }
|
string FilePath { get; set; }
|
||||||
string Filename { get; }
|
string Filename { get; }
|
||||||
|
@ -46,29 +52,42 @@ namespace Filtration.ThemeEditor.ViewModels
|
||||||
_themeProvider = themeProvider;
|
_themeProvider = themeProvider;
|
||||||
_messageBoxService = messageBoxService;
|
_messageBoxService = messageBoxService;
|
||||||
|
|
||||||
AddThemeComponentCommand = new RelayCommand<ThemeComponentType>(OnAddThemeComponentCommand, t => EditEnabled);
|
AddThemeComponentCommand = new RelayCommand<ThemeComponentType>(OnAddThemeComponentCommand, t => IsMasterTheme);
|
||||||
DeleteThemeComponentCommand = new RelayCommand<ThemeComponent>(OnDeleteThemeComponentCommand,
|
DeleteThemeComponentCommand = new RelayCommand<ThemeComponent>(OnDeleteThemeComponentCommand,
|
||||||
t => EditEnabled && SelectedThemeComponent != null);
|
t => IsMasterTheme && SelectedThemeComponent != null);
|
||||||
|
CloseCommand = new RelayCommand(OnCloseCommand);
|
||||||
|
|
||||||
var icon = new BitmapImage();
|
var icon = new BitmapImage();
|
||||||
icon.BeginInit();
|
icon.BeginInit();
|
||||||
icon.UriSource = new Uri("pack://application:,,,/Filtration;component/Resources/Icons/Theme.ico");
|
icon.UriSource = new Uri("pack://application:,,,/Filtration;component/Resources/Icons/Theme.ico");
|
||||||
icon.EndInit();
|
icon.EndInit();
|
||||||
IconSource = icon;
|
IconSource = icon;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public RelayCommand<ThemeComponentType> AddThemeComponentCommand { get; private set; }
|
public RelayCommand<ThemeComponentType> AddThemeComponentCommand { get; private set; }
|
||||||
public RelayCommand<ThemeComponent> DeleteThemeComponentCommand { get; private set; }
|
public RelayCommand<ThemeComponent> DeleteThemeComponentCommand { get; private set; }
|
||||||
|
public RelayCommand CloseCommand { get; private set; }
|
||||||
|
|
||||||
public bool EditEnabled
|
public bool IsMasterTheme
|
||||||
{
|
{
|
||||||
get { return Components.IsMasterCollection; }
|
get { return Components.IsMasterCollection; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Initialise(ThemeComponentCollection themeComponentCollection, bool newTheme)
|
public ItemFilterScript IsMasterThemeForScript { get; private set; }
|
||||||
|
|
||||||
|
public void InitialiseForNewTheme(ThemeComponentCollection themeComponentCollection)
|
||||||
{
|
{
|
||||||
Components = themeComponentCollection;
|
Components = themeComponentCollection;
|
||||||
_filenameIsFake = newTheme;
|
_filenameIsFake = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InitialiseForMasterTheme(ItemFilterScript script)
|
||||||
|
{
|
||||||
|
Components = script.ThemeComponents;
|
||||||
|
IsMasterThemeForScript = script;
|
||||||
|
_filenameIsFake = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsScript { get { return false; } }
|
public bool IsScript { get { return false; } }
|
||||||
|
@ -106,6 +125,8 @@ namespace Filtration.ThemeEditor.ViewModels
|
||||||
|
|
||||||
public void Save()
|
public void Save()
|
||||||
{
|
{
|
||||||
|
if (IsMasterTheme) return;
|
||||||
|
|
||||||
if (_filenameIsFake)
|
if (_filenameIsFake)
|
||||||
{
|
{
|
||||||
SaveAs();
|
SaveAs();
|
||||||
|
@ -130,6 +151,8 @@ namespace Filtration.ThemeEditor.ViewModels
|
||||||
|
|
||||||
public void SaveAs()
|
public void SaveAs()
|
||||||
{
|
{
|
||||||
|
if (IsMasterTheme) return;
|
||||||
|
|
||||||
var saveDialog = new SaveFileDialog
|
var saveDialog = new SaveFileDialog
|
||||||
{
|
{
|
||||||
DefaultExt = ".filter",
|
DefaultExt = ".filter",
|
||||||
|
@ -161,9 +184,14 @@ namespace Filtration.ThemeEditor.ViewModels
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnCloseCommand()
|
||||||
|
{
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
Messenger.Default.Send(new ThemeClosedMessage { ClosedViewModel = this });
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnAddThemeComponentCommand(ThemeComponentType themeComponentType)
|
private void OnAddThemeComponentCommand(ThemeComponentType themeComponentType)
|
||||||
|
|
|
@ -4,15 +4,13 @@
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
|
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
|
||||||
xmlns:converters="clr-namespace:Filtration.ThemeEditor.Converters"
|
|
||||||
xmlns:commonConverters="clr-namespace:Filtration.Common.Converters;assembly=Filtration.Common"
|
xmlns:commonConverters="clr-namespace:Filtration.Common.Converters;assembly=Filtration.Common"
|
||||||
xmlns:themeEditor="clr-namespace:Filtration.ObjectModel.ThemeEditor;assembly=Filtration.ObjectModel"
|
xmlns:themeEditor="clr-namespace:Filtration.ObjectModel.ThemeEditor;assembly=Filtration.ObjectModel"
|
||||||
xmlns:views="clr-namespace:Filtration.ThemeEditor.Views"
|
xmlns:views="clr-namespace:Filtration.ThemeEditor.Views"
|
||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
d:DataContext="{d:DesignInstance Type=themeEditor:ThemeComponent}"
|
d:DataContext="{d:DesignInstance Type=themeEditor:ThemeComponent}"
|
||||||
d:DesignHeight="40" d:DesignWidth="200">
|
d:DesignHeight="100" d:DesignWidth="200">
|
||||||
<UserControl.Resources>
|
<UserControl.Resources>
|
||||||
<converters:ThemeComponentTypeToStringConverter x:Key="ThemeComponentTypeToStringConverter" />
|
|
||||||
<commonConverters:BooleanVisibilityConverter x:Key="BooleanVisibilityConverter" />
|
<commonConverters:BooleanVisibilityConverter x:Key="BooleanVisibilityConverter" />
|
||||||
</UserControl.Resources>
|
</UserControl.Resources>
|
||||||
<Grid Width="200">
|
<Grid Width="200">
|
||||||
|
@ -53,10 +51,10 @@
|
||||||
<ContentControl.Style>
|
<ContentControl.Style>
|
||||||
<Style TargetType="ContentControl">
|
<Style TargetType="ContentControl">
|
||||||
<Style.Triggers>
|
<Style.Triggers>
|
||||||
<DataTrigger Binding="{Binding Path=DataContext.EditEnabled, RelativeSource={RelativeSource AncestorType={x:Type views:ThemeEditorView}}}" Value="true">
|
<DataTrigger Binding="{Binding Path=DataContext.IsMasterTheme, RelativeSource={RelativeSource AncestorType={x:Type views:ThemeEditorView}}}" Value="true">
|
||||||
<Setter Property="ContentTemplate" Value="{StaticResource EditableComponentNameTemplate}" />
|
<Setter Property="ContentTemplate" Value="{StaticResource EditableComponentNameTemplate}" />
|
||||||
</DataTrigger>
|
</DataTrigger>
|
||||||
<DataTrigger Binding="{Binding Path=DataContext.EditEnabled, RelativeSource={RelativeSource AncestorType={x:Type views:ThemeEditorView}}}" Value="false">
|
<DataTrigger Binding="{Binding Path=DataContext.IsMasterTheme, RelativeSource={RelativeSource AncestorType={x:Type views:ThemeEditorView}}}" Value="false">
|
||||||
<Setter Property="ContentTemplate" Value="{StaticResource ViewOnlyComponentNameTemplate}" />
|
<Setter Property="ContentTemplate" Value="{StaticResource ViewOnlyComponentNameTemplate}" />
|
||||||
</DataTrigger>
|
</DataTrigger>
|
||||||
</Style.Triggers>
|
</Style.Triggers>
|
||||||
|
|
|
@ -6,24 +6,33 @@
|
||||||
xmlns:viewModels="clr-namespace:Filtration.ThemeEditor.ViewModels"
|
xmlns:viewModels="clr-namespace:Filtration.ThemeEditor.ViewModels"
|
||||||
xmlns:views="clr-namespace:Filtration.ThemeEditor.Views"
|
xmlns:views="clr-namespace:Filtration.ThemeEditor.Views"
|
||||||
xmlns:componentModel="clr-namespace:System.ComponentModel;assembly=WindowsBase"
|
xmlns:componentModel="clr-namespace:System.ComponentModel;assembly=WindowsBase"
|
||||||
|
xmlns:converters="clr-namespace:Filtration.ThemeEditor.Converters"
|
||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
d:DataContext="{d:DesignInstance Type=viewModels:ThemeEditorViewModel}"
|
d:DataContext="{d:DesignInstance Type=viewModels:ThemeEditorViewModel}"
|
||||||
d:DesignHeight="300" d:DesignWidth="300">
|
d:DesignHeight="300" d:DesignWidth="300">
|
||||||
<UserControl.Resources>
|
<UserControl.Resources>
|
||||||
<CollectionViewSource Source="{Binding Components}" x:Key="ComponentsViewSource">
|
<ResourceDictionary>
|
||||||
<CollectionViewSource.GroupDescriptions>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
<PropertyGroupDescription PropertyName="ComponentType" />
|
<ResourceDictionary>
|
||||||
</CollectionViewSource.GroupDescriptions>
|
<CollectionViewSource Source="{Binding Components}" x:Key="ComponentsViewSource">
|
||||||
<CollectionViewSource.SortDescriptions>
|
<CollectionViewSource.GroupDescriptions>
|
||||||
<componentModel:SortDescription PropertyName="ComponentType" />
|
<PropertyGroupDescription PropertyName="ComponentType" />
|
||||||
</CollectionViewSource.SortDescriptions>
|
</CollectionViewSource.GroupDescriptions>
|
||||||
</CollectionViewSource>
|
<CollectionViewSource.SortDescriptions>
|
||||||
|
<componentModel:SortDescription PropertyName="ComponentType" />
|
||||||
|
</CollectionViewSource.SortDescriptions>
|
||||||
|
</CollectionViewSource>
|
||||||
|
<converters:ThemeComponentTypeToStringConverter x:Key="ThemeComponentTypeToStringConverter" />
|
||||||
|
</ResourceDictionary>
|
||||||
|
<ResourceDictionary Source="pack://application:,,,/Filtration.Common;component/Styles/SharedResourcesDictionary.xaml" />
|
||||||
|
</ResourceDictionary.MergedDictionaries>
|
||||||
|
</ResourceDictionary>
|
||||||
</UserControl.Resources>
|
</UserControl.Resources>
|
||||||
<Grid>
|
<Grid Margin="10">
|
||||||
<ScrollViewer HorizontalScrollBarVisibility="Disabled">
|
<ScrollViewer HorizontalScrollBarVisibility="Disabled">
|
||||||
<ListView ItemsSource="{Binding Source={StaticResource ComponentsViewSource}}"
|
<ListView ItemsSource="{Binding Source={StaticResource ComponentsViewSource}}"
|
||||||
SelectedItem="{Binding SelectedThemeComponent}"
|
SelectedItem="{Binding SelectedThemeComponent}"
|
||||||
Margin="10"
|
Margin="5"
|
||||||
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
||||||
<ListView.Resources>
|
<ListView.Resources>
|
||||||
<Style TargetType="ListViewItem">
|
<Style TargetType="ListViewItem">
|
||||||
|
@ -53,7 +62,7 @@
|
||||||
<GroupStyle>
|
<GroupStyle>
|
||||||
<GroupStyle.HeaderTemplate>
|
<GroupStyle.HeaderTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<TextBlock FontWeight="Bold" FontSize="15" Text="{Binding Path=Name}"/>
|
<TextBlock FontWeight="Bold" FontSize="15" Text="{Binding Path=Name, Converter={StaticResource ThemeComponentTypeToStringConverter}}"/>
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</GroupStyle.HeaderTemplate>
|
</GroupStyle.HeaderTemplate>
|
||||||
</GroupStyle>
|
</GroupStyle>
|
||||||
|
|
|
@ -1,10 +1,13 @@
|
||||||
<Application x:Class="Filtration.App"
|
<Application x:Class="Filtration.App"
|
||||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
xmlns:converters="clr-namespace:Filtration.Converters"
|
||||||
Startup="Application_Startup">
|
Startup="Application_Startup">
|
||||||
<Application.Resources>
|
<Application.Resources>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
|
<ResourceDictionary Source="pack://application:,,,/Filtration.Common;component/Styles/SharedResourcesDictionary.xaml" />
|
||||||
|
|
||||||
<ResourceDictionary Source="pack://application:,,,/Fluent;Component/Themes/Generic.xaml" />
|
<ResourceDictionary Source="pack://application:,,,/Fluent;Component/Themes/Generic.xaml" />
|
||||||
<ResourceDictionary Source="pack://application:,,,/Fluent;component/Themes/windows8/silver.xaml" />
|
<ResourceDictionary Source="pack://application:,,,/Fluent;component/Themes/windows8/silver.xaml" />
|
||||||
<ResourceDictionary Source="Views/Styles/Colours.xaml" />
|
<ResourceDictionary Source="Views/Styles/Colours.xaml" />
|
||||||
|
@ -24,6 +27,7 @@
|
||||||
|
|
||||||
<ResourceDictionary Source="Views/CrossButton.xaml" />
|
<ResourceDictionary Source="Views/CrossButton.xaml" />
|
||||||
<ResourceDictionary Source="Views/IconsDictionary.xaml" />
|
<ResourceDictionary Source="Views/IconsDictionary.xaml" />
|
||||||
|
<ResourceDictionary Source="Views/ExpanderStyle.xaml" />
|
||||||
|
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<Style TargetType="ComboBox" BasedOn="{StaticResource MetroComboBox}" />
|
<Style TargetType="ComboBox" BasedOn="{StaticResource MetroComboBox}" />
|
||||||
|
@ -31,6 +35,14 @@
|
||||||
<Style TargetType="ScrollBar" BasedOn="{StaticResource MetroScrollBar}" />
|
<Style TargetType="ScrollBar" BasedOn="{StaticResource MetroScrollBar}" />
|
||||||
<Style TargetType="TextBox" BasedOn="{StaticResource MetroTextBox}" />
|
<Style TargetType="TextBox" BasedOn="{StaticResource MetroTextBox}" />
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
<ResourceDictionary>
|
||||||
|
<converters:BlockItemToRemoveEnabledVisibilityConverter x:Key="BlockItemToRemoveEnabledVisibilityConverter" />
|
||||||
|
<converters:IntToItemRarityConverter x:Key="IntToItemRarityConverter" />
|
||||||
|
<converters:BooleanToBlockActionConverter x:Key="BooleanToBlockActionConverter" />
|
||||||
|
<converters:BlockItemTypeToStringConverter x:Key="BlockItemTypeToStringConverter" />
|
||||||
|
<converters:BooleanToBlockActionInverseConverter x:Key="BooleanToBlockActionInverseConverter" />
|
||||||
|
<converters:AvailableThemeComponentsConverter x:Key="AvailableThemeComponentsConverter" />
|
||||||
|
</ResourceDictionary>
|
||||||
</ResourceDictionary.MergedDictionaries>
|
</ResourceDictionary.MergedDictionaries>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
</Application.Resources>
|
</Application.Resources>
|
||||||
|
|
|
@ -134,15 +134,11 @@
|
||||||
<Compile Include="Converters\BlockGroupAdvancedColorConverter.cs" />
|
<Compile Include="Converters\BlockGroupAdvancedColorConverter.cs" />
|
||||||
<Compile Include="Converters\BlockGroupVisibilityConverter.cs" />
|
<Compile Include="Converters\BlockGroupVisibilityConverter.cs" />
|
||||||
<Compile Include="Converters\BlockItemTypeToStringConverter.cs" />
|
<Compile Include="Converters\BlockItemTypeToStringConverter.cs" />
|
||||||
<Compile Include="Converters\BooleanInverterConverter.cs" />
|
|
||||||
<Compile Include="Converters\BooleanToBlockActionInverseConverter.cs" />
|
<Compile Include="Converters\BooleanToBlockActionInverseConverter.cs" />
|
||||||
<Compile Include="Converters\BooleanToBlockActionConverter.cs" />
|
<Compile Include="Converters\BooleanToBlockActionConverter.cs" />
|
||||||
<Compile Include="Converters\BlockItemToRemoveEnabledVisibilityConverter.cs" />
|
<Compile Include="Converters\BlockItemToRemoveEnabledVisibilityConverter.cs" />
|
||||||
<Compile Include="Converters\ColorToSolidColorBrushConverter.cs" />
|
|
||||||
<Compile Include="Converters\HashSignRemovalConverter.cs" />
|
<Compile Include="Converters\HashSignRemovalConverter.cs" />
|
||||||
<Compile Include="Converters\ItemRarityConverter.cs" />
|
<Compile Include="Converters\ItemRarityConverter.cs" />
|
||||||
<Compile Include="Converters\InverseBooleanVisibilityConverter.cs" />
|
|
||||||
<Compile Include="Converters\StringToVisibilityConverter.cs" />
|
|
||||||
<Compile Include="Converters\TreeViewMarginConverter.cs" />
|
<Compile Include="Converters\TreeViewMarginConverter.cs" />
|
||||||
<Compile Include="Extensions\EnumerationExtension.cs" />
|
<Compile Include="Extensions\EnumerationExtension.cs" />
|
||||||
<Compile Include="Extensions\HyperlinkExtensions.cs" />
|
<Compile Include="Extensions\HyperlinkExtensions.cs" />
|
||||||
|
@ -309,10 +305,6 @@
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
<Generator>MSBuild:Compile</Generator>
|
<Generator>MSBuild:Compile</Generator>
|
||||||
</Page>
|
</Page>
|
||||||
<Page Include="Views\SharedResourcesDictionary.xaml">
|
|
||||||
<SubType>Designer</SubType>
|
|
||||||
<Generator>MSBuild:Compile</Generator>
|
|
||||||
</Page>
|
|
||||||
<Page Include="Views\ItemFilterScriptView.xaml">
|
<Page Include="Views\ItemFilterScriptView.xaml">
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
<Generator>MSBuild:Compile</Generator>
|
<Generator>MSBuild:Compile</Generator>
|
||||||
|
|
|
@ -13,21 +13,6 @@
|
||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
d:DataContext="{d:DesignInstance Type=userControls:BlockItemControl}"
|
d:DataContext="{d:DesignInstance Type=userControls:BlockItemControl}"
|
||||||
d:DesignHeight="200" d:DesignWidth="150">
|
d:DesignHeight="200" d:DesignWidth="150">
|
||||||
<UserControl.Resources>
|
|
||||||
<ResourceDictionary>
|
|
||||||
<ResourceDictionary.MergedDictionaries>
|
|
||||||
<ResourceDictionary>
|
|
||||||
<Style TargetType="{x:Type Border}" x:Key="BlockItemBorder">
|
|
||||||
<Setter Property="BorderThickness" Value="1" />
|
|
||||||
<Setter Property="BorderBrush" Value="Black" />
|
|
||||||
<Setter Property="CornerRadius" Value="3" />
|
|
||||||
<Setter Property="Margin" Value="0,0,5,5" />
|
|
||||||
</Style>
|
|
||||||
</ResourceDictionary>
|
|
||||||
<ResourceDictionary Source="../Views/SharedResourcesDictionary.xaml" />
|
|
||||||
</ResourceDictionary.MergedDictionaries>
|
|
||||||
</ResourceDictionary>
|
|
||||||
</UserControl.Resources>
|
|
||||||
<Border Style="{StaticResource BlockItemBorder}" Width="142">
|
<Border Style="{StaticResource BlockItemBorder}" Width="142">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
|
|
|
@ -7,9 +7,6 @@
|
||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
d:DataContext="{d:DesignInstance Type=userControls:ItemPreviewControl}"
|
d:DataContext="{d:DesignInstance Type=userControls:ItemPreviewControl}"
|
||||||
d:DesignHeight="35" d:DesignWidth="170">
|
d:DesignHeight="35" d:DesignWidth="170">
|
||||||
<UserControl.Resources>
|
|
||||||
<ResourceDictionary Source="../Views/SharedResourcesDictionary.xaml" />
|
|
||||||
</UserControl.Resources>
|
|
||||||
<Border BorderBrush="Black" BorderThickness="1">
|
<Border BorderBrush="Black" BorderThickness="1">
|
||||||
<Grid Width="166" Height="39">
|
<Grid Width="166" Height="39">
|
||||||
<Image Source="pack://application:,,,/resources/groundtile.png" Stretch="Fill" />
|
<Image Source="pack://application:,,,/resources/groundtile.png" Stretch="Fill" />
|
||||||
|
|
|
@ -11,8 +11,7 @@
|
||||||
<UserControl.Resources>
|
<UserControl.Resources>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
<ResourceDictionary Source="..\Views\SharedResourcesDictionary.xaml" />
|
<ResourceDictionary Source="pack://application:,,,/Filtration.Common;component/Styles/SharedResourcesDictionary.xaml" />
|
||||||
<ResourceDictionary></ResourceDictionary>
|
|
||||||
</ResourceDictionary.MergedDictionaries>
|
</ResourceDictionary.MergedDictionaries>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
</UserControl.Resources>
|
</UserControl.Resources>
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
|
using System.Linq;
|
||||||
using Filtration.Common.ViewModels;
|
using Filtration.Common.ViewModels;
|
||||||
using Filtration.Interface;
|
using Filtration.Interface;
|
||||||
using Filtration.ThemeEditor.ViewModels;
|
using Filtration.ThemeEditor.ViewModels;
|
||||||
|
@ -22,6 +23,7 @@ namespace Filtration.ViewModels
|
||||||
void AddDocument(IDocument document);
|
void AddDocument(IDocument document);
|
||||||
void CloseDocument(IDocument document);
|
void CloseDocument(IDocument document);
|
||||||
void SwitchActiveDocument(IDocument document);
|
void SwitchActiveDocument(IDocument document);
|
||||||
|
IThemeEditorViewModel OpenMasterThemeForScript(IItemFilterScriptViewModel scriptViewModel);
|
||||||
}
|
}
|
||||||
|
|
||||||
internal class AvalonDockWorkspaceViewModel : FiltrationViewModelBase, IAvalonDockWorkspaceViewModel
|
internal class AvalonDockWorkspaceViewModel : FiltrationViewModelBase, IAvalonDockWorkspaceViewModel
|
||||||
|
@ -180,5 +182,19 @@ namespace Filtration.ViewModels
|
||||||
|
|
||||||
ActiveDocument = document;
|
ActiveDocument = document;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public IThemeEditorViewModel OpenMasterThemeForScript(IItemFilterScriptViewModel scriptViewModel)
|
||||||
|
{
|
||||||
|
var existingMasterThemeViewModelCount =
|
||||||
|
OpenDocuments.OfType<IThemeEditorViewModel>()
|
||||||
|
.Count(c => c.IsMasterThemeForScript == scriptViewModel.Script);
|
||||||
|
if (existingMasterThemeViewModelCount > 0)
|
||||||
|
{
|
||||||
|
return OpenDocuments.OfType<IThemeEditorViewModel>()
|
||||||
|
.First(c => c.IsMasterThemeForScript == scriptViewModel.Script);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,6 @@ using Filtration.Common.ViewModels;
|
||||||
using Filtration.Interface;
|
using Filtration.Interface;
|
||||||
using Filtration.ObjectModel;
|
using Filtration.ObjectModel;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.ThemeEditor;
|
|
||||||
using Filtration.Services;
|
using Filtration.Services;
|
||||||
using Filtration.Translators;
|
using Filtration.Translators;
|
||||||
using GalaSoft.MvvmLight.CommandWpf;
|
using GalaSoft.MvvmLight.CommandWpf;
|
||||||
|
@ -493,6 +492,13 @@ namespace Filtration.ViewModels
|
||||||
|
|
||||||
private void CloseScript()
|
private void CloseScript()
|
||||||
{
|
{
|
||||||
|
var openMasterThemForScript =
|
||||||
|
_avalonDockWorkspaceViewModel.OpenMasterThemeForScript(this);
|
||||||
|
if (openMasterThemForScript != null)
|
||||||
|
{
|
||||||
|
_avalonDockWorkspaceViewModel.CloseDocument(openMasterThemForScript);
|
||||||
|
}
|
||||||
|
|
||||||
_avalonDockWorkspaceViewModel.ActiveDocumentChanged -= OnActiveDocumentChanged;
|
_avalonDockWorkspaceViewModel.ActiveDocumentChanged -= OnActiveDocumentChanged;
|
||||||
_avalonDockWorkspaceViewModel.CloseDocument(this);
|
_avalonDockWorkspaceViewModel.CloseDocument(this);
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,7 @@ using Filtration.ObjectModel.ThemeEditor;
|
||||||
using Filtration.Properties;
|
using Filtration.Properties;
|
||||||
using Filtration.Repositories;
|
using Filtration.Repositories;
|
||||||
using Filtration.Services;
|
using Filtration.Services;
|
||||||
|
using Filtration.ThemeEditor.Messages;
|
||||||
using Filtration.ThemeEditor.Providers;
|
using Filtration.ThemeEditor.Providers;
|
||||||
using Filtration.ThemeEditor.Services;
|
using Filtration.ThemeEditor.Services;
|
||||||
using Filtration.ThemeEditor.ViewModels;
|
using Filtration.ThemeEditor.ViewModels;
|
||||||
|
@ -128,6 +129,12 @@ namespace Filtration.ViewModels
|
||||||
icon.EndInit();
|
icon.EndInit();
|
||||||
Icon = icon;
|
Icon = icon;
|
||||||
|
|
||||||
|
Messenger.Default.Register<ThemeClosedMessage>(this, message =>
|
||||||
|
{
|
||||||
|
if (message.ClosedViewModel == null) return;
|
||||||
|
AvalonDockWorkspaceViewModel.CloseDocument(message.ClosedViewModel);
|
||||||
|
});
|
||||||
|
|
||||||
Messenger.Default.Register<NotificationMessage>(this, message =>
|
Messenger.Default.Register<NotificationMessage>(this, message =>
|
||||||
{
|
{
|
||||||
switch (message.Notification)
|
switch (message.Notification)
|
||||||
|
@ -294,24 +301,14 @@ namespace Filtration.ViewModels
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//public bool ActiveDocumentIsScript
|
|
||||||
//{
|
|
||||||
// get { return AvalonDockWorkspaceViewModel.ActiveDocument is ItemFilterScriptViewModel; }
|
|
||||||
//}
|
|
||||||
|
|
||||||
public bool ActiveScriptHasSelectedBlock
|
public bool ActiveScriptHasSelectedBlock
|
||||||
{
|
{
|
||||||
get { return AvalonDockWorkspaceViewModel.ActiveScriptViewModel.SelectedBlockViewModel != null; }
|
get { return AvalonDockWorkspaceViewModel.ActiveScriptViewModel.SelectedBlockViewModel != null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
//public bool ActiveDocumentIsTheme
|
|
||||||
//{
|
|
||||||
// get { return AvalonDockWorkspaceViewModel.ActiveDocument is ThemeEditorViewModel; }
|
|
||||||
//}
|
|
||||||
|
|
||||||
public bool ActiveThemeIsEditable
|
public bool ActiveThemeIsEditable
|
||||||
{
|
{
|
||||||
get { return AvalonDockWorkspaceViewModel.ActiveThemeViewModel.EditEnabled; }
|
get { return AvalonDockWorkspaceViewModel.ActiveThemeViewModel.IsMasterTheme; }
|
||||||
}
|
}
|
||||||
|
|
||||||
private bool ActiveDocumentIsEditable()
|
private bool ActiveDocumentIsEditable()
|
||||||
|
@ -335,9 +332,19 @@ namespace Filtration.ViewModels
|
||||||
|
|
||||||
private void OnEditMasterThemeCommand()
|
private void OnEditMasterThemeCommand()
|
||||||
{
|
{
|
||||||
var themeViewModel =
|
var openMasterThemForScript =
|
||||||
_themeProvider.MasterThemeForScript(AvalonDockWorkspaceViewModel.ActiveScriptViewModel.Script);
|
AvalonDockWorkspaceViewModel.OpenMasterThemeForScript(AvalonDockWorkspaceViewModel.ActiveScriptViewModel);
|
||||||
OpenTheme(themeViewModel);
|
|
||||||
|
if (openMasterThemForScript != null)
|
||||||
|
{
|
||||||
|
AvalonDockWorkspaceViewModel.SwitchActiveDocument(openMasterThemForScript);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var themeViewModel =
|
||||||
|
_themeProvider.MasterThemeForScript(AvalonDockWorkspaceViewModel.ActiveScriptViewModel.Script);
|
||||||
|
OpenTheme(themeViewModel);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OpenTheme(IThemeEditorViewModel themeEditorViewModel)
|
private void OpenTheme(IThemeEditorViewModel themeEditorViewModel)
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
<UserControl.Resources>
|
<UserControl.Resources>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
<ResourceDictionary Source="SharedResourcesDictionary.xaml" />
|
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<views:BindingProxy x:Key="proxy" Data="{Binding}" />
|
<views:BindingProxy x:Key="proxy" Data="{Binding}" />
|
||||||
<converters:BlockGroupAdvancedFillColorConverter x:Key="BlockGroupAdvancedFillColorConverter" />
|
<converters:BlockGroupAdvancedFillColorConverter x:Key="BlockGroupAdvancedFillColorConverter" />
|
||||||
|
|
|
@ -11,14 +11,6 @@
|
||||||
Title="Replace Script Colors" Height="280" Width="540"
|
Title="Replace Script Colors" Height="280" Width="540"
|
||||||
BorderThickness="1" BorderBrush="Black"
|
BorderThickness="1" BorderBrush="Black"
|
||||||
Loaded="ReplaceColorsWindow_OnLoaded" ResizeMode="CanMinimize">
|
Loaded="ReplaceColorsWindow_OnLoaded" ResizeMode="CanMinimize">
|
||||||
<!--ShowMaxRestoreButton="False"-->
|
|
||||||
<Window.Resources>
|
|
||||||
<ResourceDictionary>
|
|
||||||
<ResourceDictionary.MergedDictionaries>
|
|
||||||
<ResourceDictionary Source="SharedResourcesDictionary.xaml" />
|
|
||||||
</ResourceDictionary.MergedDictionaries>
|
|
||||||
</ResourceDictionary>
|
|
||||||
</Window.Resources>
|
|
||||||
<Grid Margin="5">
|
<Grid Margin="5">
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="Auto"></RowDefinition>
|
<RowDefinition Height="Auto"></RowDefinition>
|
||||||
|
|
Loading…
Reference in New Issue