Compare commits
No commits in common. "master" and "1.0.0-beta3" have entirely different histories.
master
...
1.0.0-beta
@ -12,8 +12,6 @@
|
|||||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||||
<FileAlignment>512</FileAlignment>
|
<FileAlignment>512</FileAlignment>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
<NuGetPackageImportStamp>
|
|
||||||
</NuGetPackageImportStamp>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
@ -33,8 +31,17 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
@ -46,24 +53,7 @@
|
|||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="app.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Moq">
|
|
||||||
<Version>4.10.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="NUnit">
|
|
||||||
<Version>3.11.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Threading.Tasks.Extensions">
|
|
||||||
<Version>4.5.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.ValueTuple">
|
|
||||||
<Version>4.5.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
</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.
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
6
Filtration.Common.Tests/packages.config
Normal file
6
Filtration.Common.Tests/packages.config
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.3" targetFramework="net461" />
|
||||||
|
<package id="Moq" version="4.5.30" targetFramework="net461" />
|
||||||
|
<package id="NUnit" version="3.6.1" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -31,13 +31,36 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Castle.Windsor, Version=3.4.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Windsor.3.4.0\lib\net45\Castle.Windsor.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight, Version=5.3.0.19026, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.Practices.ServiceLocation">
|
||||||
|
<HintPath>..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="PresentationFramework" />
|
<Reference Include="PresentationFramework" />
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Runtime.Remoting" />
|
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||||
<Reference Include="System.Web" />
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System.Xaml" />
|
<Reference Include="System.Xaml" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
@ -59,13 +82,11 @@
|
|||||||
<Compile Include="Services\FileSystemService.cs" />
|
<Compile Include="Services\FileSystemService.cs" />
|
||||||
<Compile Include="Services\MessageBoxService.cs" />
|
<Compile Include="Services\MessageBoxService.cs" />
|
||||||
<Compile Include="Utilities\LineReader.cs" />
|
<Compile Include="Utilities\LineReader.cs" />
|
||||||
<Compile Include="Utilities\PathOfExileColors.cs" />
|
|
||||||
<Compile Include="Utilities\VisualTreeUtility.cs" />
|
|
||||||
<Compile Include="ViewModels\PaneViewModel.cs" />
|
<Compile Include="ViewModels\PaneViewModel.cs" />
|
||||||
<Compile Include="WindsorInstallers\ServicesInstaller.cs" />
|
<Compile Include="WindsorInstallers\ServicesInstaller.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="app.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
||||||
@ -79,23 +100,6 @@
|
|||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</Page>
|
</Page>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Castle.Windsor">
|
|
||||||
<Version>5.0.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="CommonServiceLocator">
|
|
||||||
<Version>2.0.4</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Extended.Wpf.Toolkit">
|
|
||||||
<Version>3.5.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="MvvmLightLibs">
|
|
||||||
<Version>5.4.1.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</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.
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
using System.Windows;
|
|
||||||
using System.Windows.Media;
|
|
||||||
|
|
||||||
namespace Filtration.Common.Utilities
|
|
||||||
{
|
|
||||||
public class VisualTreeUtility
|
|
||||||
{
|
|
||||||
public static T FindParent<T>(DependencyObject child)
|
|
||||||
where T : DependencyObject
|
|
||||||
{
|
|
||||||
//get parent item
|
|
||||||
var parentObject = VisualTreeHelper.GetParent(child);
|
|
||||||
|
|
||||||
//we've reached the end of the tree
|
|
||||||
if (parentObject == null) return null;
|
|
||||||
|
|
||||||
//check if the parent matches the type we're looking for
|
|
||||||
if (parentObject is T parent)
|
|
||||||
{
|
|
||||||
return parent;
|
|
||||||
}
|
|
||||||
|
|
||||||
return FindParent<T>(parentObject);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
7
Filtration.Common/packages.config
Normal file
7
Filtration.Common/packages.config
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.3" targetFramework="net451" />
|
||||||
|
<package id="Castle.Windsor" version="3.4.0" targetFramework="net461" />
|
||||||
|
<package id="CommonServiceLocator" version="1.3" targetFramework="net451" />
|
||||||
|
<package id="MvvmLightLibs" version="5.3.0.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -31,9 +31,24 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight, Version=5.3.0.19026, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.Practices.ServiceLocation, Version=1.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
@ -47,15 +62,7 @@
|
|||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="app.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="CommonServiceLocator">
|
|
||||||
<Version>2.0.4</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="MvvmLightLibs">
|
|
||||||
<Version>5.4.1.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
</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.
|
||||||
|
@ -8,7 +8,7 @@ namespace Filtration.Interface
|
|||||||
{
|
{
|
||||||
bool IsScript { get; }
|
bool IsScript { get; }
|
||||||
bool IsTheme { get; }
|
bool IsTheme { get; }
|
||||||
Task<bool> Close();
|
Task Close();
|
||||||
RelayCommand CloseCommand { get; }
|
RelayCommand CloseCommand { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
5
Filtration.Interface/packages.config
Normal file
5
Filtration.Interface/packages.config
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="CommonServiceLocator" version="1.3" targetFramework="net461" />
|
||||||
|
<package id="MvvmLightLibs" version="5.3.0.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -2,7 +2,7 @@
|
|||||||
<configuration>
|
<configuration>
|
||||||
<configSections>
|
<configSections>
|
||||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||||
|
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||||
</configSections>
|
</configSections>
|
||||||
<entityFramework>
|
<entityFramework>
|
||||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
||||||
@ -23,12 +23,9 @@
|
|||||||
<add name="FiltrationDbContext" connectionString="data source="D:\C# Projects\Filtration\Filtration.db"" providerName="System.Data.SQLite.EF6" />
|
<add name="FiltrationDbContext" connectionString="data source="D:\C# Projects\Filtration\Filtration.db"" providerName="System.Data.SQLite.EF6" />
|
||||||
</connectionStrings>
|
</connectionStrings>
|
||||||
|
|
||||||
<runtime>
|
<system.data>
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
<DbProviderFactories>
|
||||||
<dependentAssembly>
|
<remove invariant="System.Data.SQLite.EF6" />
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
<add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6" />
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
<remove invariant="System.Data.SQLite" /><add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".NET Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" /></DbProviderFactories>
|
||||||
</dependentAssembly>
|
</system.data></configuration>
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
@ -38,8 +38,31 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||||
|
<Reference Include="System.Data.SQLite, Version=1.0.102.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\System.Data.SQLite.Core.1.0.102.0\lib\net46\System.Data.SQLite.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Data.SQLite.EF6, Version=1.0.102.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\System.Data.SQLite.EF6.1.0.102.0\lib\net46\System.Data.SQLite.EF6.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Data.SQLite.Linq, Version=1.0.102.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\System.Data.SQLite.Linq.1.0.102.0\lib\net46\System.Data.SQLite.Linq.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Choose>
|
<Choose>
|
||||||
<When Condition="('$(VisualStudioVersion)' == '10.0' or '$(VisualStudioVersion)' == '') and '$(TargetFrameworkVersion)' == 'v3.5'">
|
<When Condition="('$(VisualStudioVersion)' == '10.0' or '$(VisualStudioVersion)' == '') and '$(TargetFrameworkVersion)' == 'v3.5'">
|
||||||
@ -59,6 +82,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="App.config" />
|
<None Include="App.config" />
|
||||||
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Filtration.ItemFilterPreview.Data\Filtration.ItemFilterPreview.Data.csproj">
|
<ProjectReference Include="..\Filtration.ItemFilterPreview.Data\Filtration.ItemFilterPreview.Data.csproj">
|
||||||
@ -70,17 +94,6 @@
|
|||||||
<Name>Filtration.ObjectModel</Name>
|
<Name>Filtration.ObjectModel</Name>
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="NUnit">
|
|
||||||
<Version>3.11.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Data.SQLite">
|
|
||||||
<Version>1.0.109.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Data.SQLite.Core">
|
|
||||||
<Version>1.0.109.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<Choose>
|
<Choose>
|
||||||
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
|
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
@ -101,6 +114,13 @@
|
|||||||
</Choose>
|
</Choose>
|
||||||
<Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />
|
<Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
<Import Project="..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets')" />
|
||||||
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets'))" />
|
||||||
|
</Target>
|
||||||
<!-- 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.
|
||||||
<Target Name="BeforeBuild">
|
<Target Name="BeforeBuild">
|
||||||
|
9
Filtration.ItemFilterPreview.Data.Tests/packages.config
Normal file
9
Filtration.ItemFilterPreview.Data.Tests/packages.config
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="EntityFramework" version="6.1.3" targetFramework="net461" />
|
||||||
|
<package id="NUnit" version="3.6.1" targetFramework="net461" />
|
||||||
|
<package id="System.Data.SQLite" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
<package id="System.Data.SQLite.Core" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
<package id="System.Data.SQLite.EF6" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
<package id="System.Data.SQLite.Linq" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -1,8 +1,8 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<configuration>
|
<configuration>
|
||||||
<configSections>
|
<configSections>
|
||||||
|
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||||
|
|
||||||
</configSections>
|
</configSections>
|
||||||
<entityFramework>
|
<entityFramework>
|
||||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
||||||
@ -11,23 +11,19 @@
|
|||||||
</parameters>
|
</parameters>
|
||||||
</defaultConnectionFactory>
|
</defaultConnectionFactory>
|
||||||
<providers>
|
<providers>
|
||||||
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
|
|
||||||
<provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
|
<provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
|
||||||
</providers>
|
</providers>
|
||||||
</entityFramework>
|
</entityFramework>
|
||||||
<startup>
|
<startup>
|
||||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
|
||||||
</startup>
|
</startup>
|
||||||
<connectionStrings>
|
|
||||||
<add name="FiltrationDbContext" connectionString="data source="D:\C# Projects\Filtration\Filtration.db"" providerName="System.Data.SQLite.EF6" />
|
|
||||||
</connectionStrings>
|
|
||||||
|
|
||||||
<runtime>
|
<connectionStrings>
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
<add name="FiltrationDbContext" connectionString="data source="D:\C# Projects\Filtration\Filtration.db"" providerName="System.Data.SQLite.EF6" />
|
||||||
<dependentAssembly>
|
</connectionStrings>
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
<system.data>
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
<DbProviderFactories>
|
||||||
</dependentAssembly>
|
<remove invariant="System.Data.SQLite.EF6" />
|
||||||
</assemblyBinding>
|
<add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6" />
|
||||||
</runtime>
|
<remove invariant="System.Data.SQLite" /><add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".NET Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" /></DbProviderFactories>
|
||||||
</configuration>
|
</system.data></configuration>
|
@ -33,9 +33,25 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Data.SQLite, Version=1.0.102.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\System.Data.SQLite.Core.1.0.102.0\lib\net46\System.Data.SQLite.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Data.SQLite.EF6, Version=1.0.102.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\System.Data.SQLite.EF6.1.0.102.0\lib\net46\System.Data.SQLite.EF6.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Data.SQLite.Linq, Version=1.0.102.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\System.Data.SQLite.Linq.1.0.102.0\lib\net46\System.Data.SQLite.Linq.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System.Runtime.Serialization" />
|
<Reference Include="System.Runtime.Serialization" />
|
||||||
<Reference Include="System.Security" />
|
<Reference Include="System.Security" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
@ -53,6 +69,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="App.config" />
|
<None Include="App.config" />
|
||||||
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
||||||
@ -60,15 +77,14 @@
|
|||||||
<Name>Filtration.ObjectModel</Name>
|
<Name>Filtration.ObjectModel</Name>
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="System.Data.SQLite">
|
|
||||||
<Version>1.0.109.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Data.SQLite.Core">
|
|
||||||
<Version>1.0.109.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
<Import Project="..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets')" />
|
||||||
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.102.0\build\net46\System.Data.SQLite.Core.targets'))" />
|
||||||
|
</Target>
|
||||||
<!-- 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.
|
||||||
<Target Name="BeforeBuild">
|
<Target Name="BeforeBuild">
|
||||||
|
8
Filtration.ItemFilterPreview.Data/packages.config
Normal file
8
Filtration.ItemFilterPreview.Data/packages.config
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="EntityFramework" version="6.1.3" targetFramework="net46" />
|
||||||
|
<package id="System.Data.SQLite" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
<package id="System.Data.SQLite.Core" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
<package id="System.Data.SQLite.EF6" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
<package id="System.Data.SQLite.Linq" version="1.0.102.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -23,8 +23,6 @@
|
|||||||
<TestProjectType>CodedUITest</TestProjectType>
|
<TestProjectType>CodedUITest</TestProjectType>
|
||||||
<IsWindowsStoreCodedUITest>True</IsWindowsStoreCodedUITest>
|
<IsWindowsStoreCodedUITest>True</IsWindowsStoreCodedUITest>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
<NuGetPackageImportStamp>
|
|
||||||
</NuGetPackageImportStamp>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
@ -44,10 +42,29 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="FluentAssertions, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="FluentAssertions.Core, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.Core.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
|
<Reference Include="YamlDotNet, Version=3.9.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\YamlDotNet.3.9.0\lib\net35\YamlDotNet.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
|
<CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
|
||||||
@ -97,28 +114,9 @@
|
|||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<None Include="packages.config" />
|
||||||
<None Include="Resources\MuldiniFilterScript.txt" />
|
<None Include="Resources\MuldiniFilterScript.txt" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="FluentAssertions">
|
|
||||||
<Version>5.6.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Moq">
|
|
||||||
<Version>4.10.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="NUnit">
|
|
||||||
<Version>3.11.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Threading.Tasks.Extensions">
|
|
||||||
<Version>4.5.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.ValueTuple">
|
|
||||||
<Version>4.5.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildBinPath)\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.
|
||||||
|
@ -1,39 +1,15 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<configuration>
|
<configuration>
|
||||||
<runtime>
|
<runtime>
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||||
<dependentAssembly>
|
<dependentAssembly>
|
||||||
<assemblyIdentity name="Xceed.Wpf.AvalonDock" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
<assemblyIdentity name="Xceed.Wpf.AvalonDock" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
||||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
<bindingRedirect oldVersion="0.0.0.0-2.9.0.0" newVersion="2.9.0.0" />
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
<dependentAssembly>
|
<dependentAssembly>
|
||||||
<assemblyIdentity name="ControlzEx" publicKeyToken="f08b075e934b7045" culture="neutral" />
|
<assemblyIdentity name="ControlzEx" publicKeyToken="f08b075e934b7045" culture="neutral" />
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.2.0.4" newVersion="2.2.0.4" />
|
<bindingRedirect oldVersion="0.0.0.0-2.2.0.4" newVersion="2.2.0.4" />
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
<dependentAssembly>
|
</assemblyBinding>
|
||||||
<assemblyIdentity name="Xceed.Wpf.Toolkit" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
</runtime>
|
||||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Windows.Interactivity" publicKeyToken="31bf3856ad364e35" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="4.5.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
</configuration>
|
8
Filtration.ItemFilterPreview.Tests/packages.config
Normal file
8
Filtration.ItemFilterPreview.Tests/packages.config
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.3" targetFramework="net461" />
|
||||||
|
<package id="FluentAssertions" version="4.19.2" targetFramework="net461" />
|
||||||
|
<package id="Moq" version="4.5.30" targetFramework="net461" />
|
||||||
|
<package id="NUnit" version="3.6.1" targetFramework="net461" />
|
||||||
|
<package id="YamlDotNet" version="3.9.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -1,26 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<configuration>
|
<configuration>
|
||||||
<startup>
|
<startup>
|
||||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1"/>
|
||||||
</startup>
|
</startup>
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
</configuration>
|
||||||
|
@ -36,11 +36,38 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Castle.Windsor, Version=3.4.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Windsor.3.4.0\lib\net45\Castle.Windsor.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight, Version=5.3.0.19026, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.Practices.ServiceLocation, Version=1.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.Runtime.Remoting" />
|
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||||
<Reference Include="System.Web" />
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
@ -126,6 +153,7 @@
|
|||||||
<Generator>ResXFileCodeGenerator</Generator>
|
<Generator>ResXFileCodeGenerator</Generator>
|
||||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<None Include="packages.config" />
|
||||||
<None Include="Properties\Settings.settings">
|
<None Include="Properties\Settings.settings">
|
||||||
<Generator>SettingsSingleFileGenerator</Generator>
|
<Generator>SettingsSingleFileGenerator</Generator>
|
||||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||||
@ -163,29 +191,6 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Folder Include="Model\" />
|
<Folder Include="Model\" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Castle.Windsor">
|
|
||||||
<Version>5.0.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="CommonServiceLocator">
|
|
||||||
<Version>2.0.4</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Moq">
|
|
||||||
<Version>4.10.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="MvvmLightLibs">
|
|
||||||
<Version>5.4.1.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Threading.Tasks.Extensions">
|
|
||||||
<Version>4.5.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.ValueTuple">
|
|
||||||
<Version>4.5.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</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.
|
||||||
|
8
Filtration.ItemFilterPreview/packages.config
Normal file
8
Filtration.ItemFilterPreview/packages.config
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.3" targetFramework="net461" />
|
||||||
|
<package id="Castle.Windsor" version="3.4.0" targetFramework="net461" />
|
||||||
|
<package id="CommonServiceLocator" version="1.3" targetFramework="net461" />
|
||||||
|
<package id="Moq" version="4.5.30" targetFramework="net461" />
|
||||||
|
<package id="MvvmLightLibs" version="5.3.0.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -12,8 +12,6 @@
|
|||||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||||
<FileAlignment>512</FileAlignment>
|
<FileAlignment>512</FileAlignment>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
<NuGetPackageImportStamp>
|
|
||||||
</NuGetPackageImportStamp>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
@ -33,9 +31,18 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
@ -57,28 +64,11 @@
|
|||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="app.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Moq">
|
|
||||||
<Version>4.10.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="NUnit">
|
|
||||||
<Version>3.11.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Threading.Tasks.Extensions">
|
|
||||||
<Version>4.5.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.ValueTuple">
|
|
||||||
<Version>4.5.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</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.
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
6
Filtration.ObjectModel.Tests/packages.config
Normal file
6
Filtration.ObjectModel.Tests/packages.config
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.3" targetFramework="net461" />
|
||||||
|
<package id="Moq" version="4.5.30" targetFramework="net461" />
|
||||||
|
<package id="NUnit" version="3.6.1" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -41,8 +41,8 @@ namespace Filtration.ObjectModel.BlockItemBaseTypes
|
|||||||
|
|
||||||
public override Color SummaryTextColor => Action == BlockAction.Show ? Colors.Black : Colors.White;
|
public override Color SummaryTextColor => Action == BlockAction.Show ? Colors.Black : Colors.White;
|
||||||
|
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Action;
|
public override int SortOrder => 0;
|
||||||
|
|
||||||
public void ToggleAction()
|
public void ToggleAction()
|
||||||
{
|
{
|
||||||
Action = Action == BlockAction.Show ? BlockAction.Hide : BlockAction.Show;
|
Action = Action == BlockAction.Show ? BlockAction.Hide : BlockAction.Show;
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.Annotations;
|
using Filtration.ObjectModel.Annotations;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemBaseTypes
|
namespace Filtration.ObjectModel.BlockItemBaseTypes
|
||||||
{
|
{
|
||||||
@ -17,7 +16,7 @@ namespace Filtration.ObjectModel.BlockItemBaseTypes
|
|||||||
public abstract string SummaryText { get; }
|
public abstract string SummaryText { get; }
|
||||||
public abstract Color SummaryBackgroundColor { get; }
|
public abstract Color SummaryBackgroundColor { get; }
|
||||||
public abstract Color SummaryTextColor { get; }
|
public abstract Color SummaryTextColor { get; }
|
||||||
public abstract BlockItemOrdering SortOrder { get; }
|
public abstract int SortOrder { get; }
|
||||||
public string Comment { get; set; }
|
public string Comment { get; set; }
|
||||||
|
|
||||||
public bool IsDirty
|
public bool IsDirty
|
||||||
@ -31,7 +30,7 @@ namespace Filtration.ObjectModel.BlockItemBaseTypes
|
|||||||
}
|
}
|
||||||
|
|
||||||
public event PropertyChangedEventHandler PropertyChanged;
|
public event PropertyChangedEventHandler PropertyChanged;
|
||||||
|
|
||||||
[NotifyPropertyChangedInvocator]
|
[NotifyPropertyChangedInvocator]
|
||||||
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
|
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
|
||||||
{
|
{
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public override string OutputText => PrefixText + " " + BooleanValue;
|
public override string OutputText => PrefixText + " " + BooleanValue;
|
||||||
public override string SummaryText => DisplayHeading + " = " + BooleanValue;
|
public override string SummaryText => PrefixText + " = " + BooleanValue;
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
|
|
||||||
public void ToggleValue()
|
public void ToggleValue()
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
namespace Filtration.ObjectModel.BlockItemBaseTypes
|
|
||||||
{
|
|
||||||
public abstract class NilBlockItem : BlockItemBase
|
|
||||||
{
|
|
||||||
protected NilBlockItem()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string OutputText => PrefixText;
|
|
||||||
public override string SummaryText => DisplayHeading;
|
|
||||||
public override int MaximumAllowed => 1;
|
|
||||||
|
|
||||||
public abstract string Description { get; }
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,23 +0,0 @@
|
|||||||
using System.Windows.Media;
|
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
|
||||||
{
|
|
||||||
public sealed class AnyEnchantmentBlockItem : BooleanBlockItem
|
|
||||||
{
|
|
||||||
public AnyEnchantmentBlockItem()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public AnyEnchantmentBlockItem(bool booleanValue) : base(booleanValue)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string PrefixText => "AnyEnchantment";
|
|
||||||
public override string DisplayHeading => "Any Enchantment";
|
|
||||||
public override Color SummaryBackgroundColor => Colors.YellowGreen;
|
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.AnyEnchantment;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,5 +1,4 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
@ -18,6 +17,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "SetBackgroundColor";
|
public override string PrefixText => "SetBackgroundColor";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Background Color";
|
public override string DisplayHeading => "Background Color";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.SetBackgroundColor;
|
public override int SortOrder => 23;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -17,23 +16,23 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
{
|
{
|
||||||
if (Items.Count > 0 && Items.Count < 4)
|
if (Items.Count > 0 && Items.Count < 4)
|
||||||
{
|
{
|
||||||
return "Base Types: " +
|
return "Item Base Types: " +
|
||||||
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
||||||
}
|
}
|
||||||
if (Items.Count >= 4)
|
if (Items.Count >= 4)
|
||||||
{
|
{
|
||||||
var remaining = Items.Count - 3;
|
var remaining = Items.Count - 3;
|
||||||
return "Base Types: " + Items.Take(3)
|
return "Item Base Types: " + Items.Take(3)
|
||||||
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
||||||
.TrimEnd(' ')
|
.TrimEnd(' ')
|
||||||
.TrimEnd(',') + " (+" + remaining + " more)";
|
.TrimEnd(',') + " (+" + remaining + " more)";
|
||||||
}
|
}
|
||||||
return "Base Types: (none)";
|
return "Item Base Types: (none)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override Color SummaryBackgroundColor => Colors.MediumTurquoise;
|
public override Color SummaryBackgroundColor => Colors.MediumTurquoise;
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
public override Color SummaryTextColor => Colors.Black;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.BaseType;
|
public override int SortOrder => 20;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
using System.Windows.Media;
|
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
|
||||||
{
|
|
||||||
public sealed class BlightedMapBlockItem : BooleanBlockItem
|
|
||||||
{
|
|
||||||
public BlightedMapBlockItem()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public BlightedMapBlockItem(bool booleanValue) : base(booleanValue)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string PrefixText => "BlightedMap";
|
|
||||||
public override string DisplayHeading => "Blighted Map";
|
|
||||||
public override Color SummaryBackgroundColor => Colors.Khaki;
|
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.BligtedMap;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,6 +1,5 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "SetBorderColor";
|
public override string PrefixText => "SetBorderColor";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Border Color";
|
public override string DisplayHeading => "Border Color";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.SetBorderColor;
|
public override int SortOrder => 24;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -17,23 +16,23 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
{
|
{
|
||||||
if (Items.Count > 0 && Items.Count < 4)
|
if (Items.Count > 0 && Items.Count < 4)
|
||||||
{
|
{
|
||||||
return "Classes: " +
|
return "Item Classes: " +
|
||||||
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
||||||
}
|
}
|
||||||
if (Items.Count >= 4)
|
if (Items.Count >= 4)
|
||||||
{
|
{
|
||||||
var remaining = Items.Count - 3;
|
var remaining = Items.Count - 3;
|
||||||
return "Classes: " + Items.Take(3)
|
return "Item Classes: " + Items.Take(3)
|
||||||
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
||||||
.TrimEnd(' ')
|
.TrimEnd(' ')
|
||||||
.TrimEnd(',') + " (+" + remaining + " more)";
|
.TrimEnd(',') + " (+" + remaining + " more)";
|
||||||
}
|
}
|
||||||
return "Classes: (none)";
|
return "Item Classes: (none)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override Color SummaryBackgroundColor => Colors.MediumSeaGreen;
|
public override Color SummaryBackgroundColor => Colors.MediumSeaGreen;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Class;
|
public override int SortOrder => 19;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string DisplayHeading => "Corrupted";
|
public override string DisplayHeading => "Corrupted";
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkRed;
|
public override Color SummaryBackgroundColor => Colors.DarkRed;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Corrupted;
|
public override int SortOrder => 5;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -17,6 +16,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "CustomAlertSound";
|
public override string PrefixText => "CustomAlertSound";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Custom Alert Sound";
|
public override string DisplayHeading => "Custom Alert Sound";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.CustomAlertSound;
|
public override int SortOrder => 31;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,20 +1,23 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
public sealed class DisableDropSoundBlockItem : NilBlockItem, IAudioVisualBlockItem
|
public sealed class DisableDropSoundBlockItem : BooleanBlockItem, IAudioVisualBlockItem
|
||||||
{
|
{
|
||||||
public DisableDropSoundBlockItem() : base()
|
public DisableDropSoundBlockItem()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public DisableDropSoundBlockItem(bool booleanValue) : base(booleanValue)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
public override string PrefixText => "DisableDropSound";
|
public override string PrefixText => "DisableDropSound";
|
||||||
public override string DisplayHeading => "Disable Drop Sound";
|
public override string DisplayHeading => "Disable Drop Sound";
|
||||||
public override string Description => "Default drop sound disabled.";
|
|
||||||
public override Color SummaryBackgroundColor => Colors.Transparent;
|
public override Color SummaryBackgroundColor => Colors.Transparent;
|
||||||
public override Color SummaryTextColor => Colors.Transparent;
|
public override Color SummaryTextColor => Colors.Transparent;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.DisableDropSound;
|
public override int SortOrder => 28;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Drop Level " + FilterPredicate;
|
public override string SummaryText => "Drop Level " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.DodgerBlue;
|
public override Color SummaryBackgroundColor => Colors.DodgerBlue;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.DropLevel;
|
public override int SortOrder => 15;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 100;
|
public override int Maximum => 100;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string DisplayHeading => "Elder Item";
|
public override string DisplayHeading => "Elder Item";
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkGray;
|
public override Color SummaryBackgroundColor => Colors.DarkGray;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.ElderItem;
|
public override int SortOrder => 6;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string DisplayHeading => "Elder Map";
|
public override string DisplayHeading => "Elder Map";
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkGoldenrod;
|
public override Color SummaryBackgroundColor => Colors.DarkGoldenrod;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.ElderMap;
|
public override int SortOrder => 10;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -17,7 +16,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "SetFontSize";
|
public override string PrefixText => "SetFontSize";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Font Size";
|
public override string DisplayHeading => "Font Size";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.SetFontSize;
|
public override int SortOrder => 25;
|
||||||
public override int Minimum => 11;
|
public override int Minimum => 11;
|
||||||
public override int Maximum => 45;
|
public override int Maximum => 45;
|
||||||
}
|
}
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
using System.Windows.Media;
|
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
|
||||||
{
|
|
||||||
public sealed class FracturedItemBlockItem : BooleanBlockItem
|
|
||||||
{
|
|
||||||
public FracturedItemBlockItem()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public FracturedItemBlockItem(bool booleanValue) : base(booleanValue)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string PrefixText => "FracturedItem";
|
|
||||||
public override string DisplayHeading => "Fractured Item";
|
|
||||||
public override Color SummaryBackgroundColor => Colors.Salmon;
|
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.FracturedItem;
|
|
||||||
}
|
|
||||||
}
|
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Gem Level " + FilterPredicate;
|
public override string SummaryText => "Gem Level " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.GemLevel;
|
public override int SortOrder => 16;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 21;
|
public override int Maximum => 21;
|
||||||
}
|
}
|
||||||
|
@ -1,39 +0,0 @@
|
|||||||
using System.Linq;
|
|
||||||
using System.Windows.Media;
|
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
|
||||||
{
|
|
||||||
public class HasEnchantmentBlockItem : StringListBlockItem
|
|
||||||
{
|
|
||||||
public override string PrefixText => "HasEnchantment";
|
|
||||||
public override int MaximumAllowed => 1;
|
|
||||||
public override string DisplayHeading => "Has Enchantment";
|
|
||||||
|
|
||||||
public override string SummaryText
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
if (Items.Count > 0 && Items.Count < 4)
|
|
||||||
{
|
|
||||||
return "Enchantments: " +
|
|
||||||
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
|
||||||
}
|
|
||||||
if (Items.Count >= 4)
|
|
||||||
{
|
|
||||||
var remaining = Items.Count - 3;
|
|
||||||
return "Enchantments: " + Items.Take(3)
|
|
||||||
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
|
||||||
.TrimEnd(' ')
|
|
||||||
.TrimEnd(',') + " (+" + remaining + " more)";
|
|
||||||
}
|
|
||||||
return "Enchantments: (none)";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override Color SummaryBackgroundColor => Colors.PaleGreen;
|
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.HasEnchantment;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +1,6 @@
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -17,23 +16,23 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
{
|
{
|
||||||
if (Items.Count > 0 && Items.Count < 4)
|
if (Items.Count > 0 && Items.Count < 4)
|
||||||
{
|
{
|
||||||
return "Explicit Mods: " +
|
return "Item Explicit Mods: " +
|
||||||
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
||||||
}
|
}
|
||||||
if (Items.Count >= 4)
|
if (Items.Count >= 4)
|
||||||
{
|
{
|
||||||
var remaining = Items.Count - 3;
|
var remaining = Items.Count - 3;
|
||||||
return "Explicit Mods: " + Items.Take(3)
|
return "Item Explicit Mods: " + Items.Take(3)
|
||||||
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
||||||
.TrimEnd(' ')
|
.TrimEnd(' ')
|
||||||
.TrimEnd(',') + " (+" + remaining + " more)";
|
.TrimEnd(',') + " (+" + remaining + " more)";
|
||||||
}
|
}
|
||||||
return "Explicit Mods: (none)";
|
return "Item Explicit Mods: (none)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override Color SummaryBackgroundColor => Colors.MidnightBlue;
|
public override Color SummaryBackgroundColor => Colors.MidnightBlue;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.HasExplicitMod;
|
public override int SortOrder => 21;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Height " + FilterPredicate;
|
public override string SummaryText => "Height " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.LightBlue;
|
public override Color SummaryBackgroundColor => Colors.LightBlue;
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
public override Color SummaryTextColor => Colors.Black;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Height;
|
public override int SortOrder => 12;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 6;
|
public override int Maximum => 6;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string DisplayHeading => "Identified";
|
public override string DisplayHeading => "Identified";
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Identified;
|
public override int SortOrder => 4;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -13,14 +13,14 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public ItemLevelBlockItem(FilterPredicateOperator predicateOperator, int predicateOperand) : base (predicateOperator, predicateOperand)
|
public ItemLevelBlockItem(FilterPredicateOperator predicateOperator, int predicateOperand) : base (predicateOperator, predicateOperand)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
public override string PrefixText => "ItemLevel";
|
public override string PrefixText => "ItemLevel";
|
||||||
public override int MaximumAllowed => 2;
|
public override int MaximumAllowed => 2;
|
||||||
public override string DisplayHeading => "Item Level";
|
public override string DisplayHeading => "Item Level";
|
||||||
public override string SummaryText => "Item Level " + FilterPredicate;
|
public override string SummaryText => "Item Level " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.ItemLevel;
|
public override int SortOrder => 14;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 100;
|
public override int Maximum => 100;
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Linked Sockets " + FilterPredicate;
|
public override string SummaryText => "Linked Sockets " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.Gold;
|
public override Color SummaryBackgroundColor => Colors.Gold;
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
public override Color SummaryTextColor => Colors.Black;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.LinkedSockets;
|
public override int SortOrder => 1;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 6;
|
public override int Maximum => 6;
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "MinimapIcon";
|
public override string PrefixText => "MinimapIcon";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Minimap Icon";
|
public override string DisplayHeading => "Minimap Icon";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.MinimapIcon;
|
public override int SortOrder => 29;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Map Tier " + FilterPredicate;
|
public override string SummaryText => "Map Tier " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.MapTier;
|
public override int SortOrder => 8;
|
||||||
public override int Minimum => 1;
|
public override int Minimum => 1;
|
||||||
public override int Maximum => 16;
|
public override int Maximum => 16;
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "PlayEffect";
|
public override string PrefixText => "PlayEffect";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Play Effect";
|
public override string DisplayHeading => "Play Effect";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.PlayEffect;
|
public override int SortOrder => 30;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "PlayAlertSoundPositional";
|
public override string PrefixText => "PlayAlertSoundPositional";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Play Positional Alert Sound";
|
public override string DisplayHeading => "Play Positional Alert Sound";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.PlayAlertSoundPositional;
|
public override int SortOrder => 27;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,39 +0,0 @@
|
|||||||
using System.Linq;
|
|
||||||
using System.Windows.Media;
|
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
|
||||||
{
|
|
||||||
public class ProphecyBlockItem : StringListBlockItem
|
|
||||||
{
|
|
||||||
public override string PrefixText => "Prophecy";
|
|
||||||
public override int MaximumAllowed => 1;
|
|
||||||
public override string DisplayHeading => "Prophecy";
|
|
||||||
|
|
||||||
public override string SummaryText
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
if (Items.Count > 0 && Items.Count < 4)
|
|
||||||
{
|
|
||||||
return "Prophecies: " +
|
|
||||||
Items.Aggregate(string.Empty, (current, i) => current + i + ", ").TrimEnd(' ').TrimEnd(',');
|
|
||||||
}
|
|
||||||
if (Items.Count >= 4)
|
|
||||||
{
|
|
||||||
var remaining = Items.Count - 3;
|
|
||||||
return "Prophecies: " + Items.Take(3)
|
|
||||||
.Aggregate(string.Empty, (current, i) => current + i + ", ")
|
|
||||||
.TrimEnd(' ')
|
|
||||||
.TrimEnd(',') + " (+" + remaining + " more)";
|
|
||||||
}
|
|
||||||
return "Prophecies: (none)";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkMagenta;
|
|
||||||
public override Color SummaryTextColor => Colors.White;
|
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Prophecy;
|
|
||||||
}
|
|
||||||
}
|
|
@ -9,7 +9,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public QualityBlockItem()
|
public QualityBlockItem()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
public QualityBlockItem(FilterPredicateOperator predicateOperator, int predicateOperand)
|
public QualityBlockItem(FilterPredicateOperator predicateOperator, int predicateOperand)
|
||||||
: base(predicateOperator, predicateOperand)
|
: base(predicateOperator, predicateOperand)
|
||||||
{
|
{
|
||||||
@ -21,8 +21,8 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Quality " + FilterPredicate;
|
public override string SummaryText => "Quality " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkOrange;
|
public override Color SummaryBackgroundColor => Colors.DarkOrange;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Quality;
|
public override int SortOrder => 3;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 99;
|
public override int Maximum => 30;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -30,7 +30,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
((ItemRarity) FilterPredicate.PredicateOperand).GetAttributeDescription();
|
((ItemRarity) FilterPredicate.PredicateOperand).GetAttributeDescription();
|
||||||
public override Color SummaryBackgroundColor => Colors.LightCoral;
|
public override Color SummaryBackgroundColor => Colors.LightCoral;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Rarity;
|
public override int SortOrder => 18;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => (int)ItemRarity.Unique;
|
public override int Maximum => (int)ItemRarity.Unique;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string DisplayHeading => "Shaped Map";
|
public override string DisplayHeading => "Shaped Map";
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkGoldenrod;
|
public override Color SummaryBackgroundColor => Colors.DarkGoldenrod;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.ShapedMap;
|
public override int SortOrder => 9;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string DisplayHeading => "Shaper Item";
|
public override string DisplayHeading => "Shaper Item";
|
||||||
public override Color SummaryBackgroundColor => Colors.DimGray;
|
public override Color SummaryBackgroundColor => Colors.DimGray;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.ShaperItem;
|
public override int SortOrder => 7;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
{
|
{
|
||||||
public SocketGroupBlockItem()
|
public SocketGroupBlockItem()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override string PrefixText => "SocketGroup";
|
public override string PrefixText => "SocketGroup";
|
||||||
@ -39,7 +39,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
|
|
||||||
public override Color SummaryBackgroundColor => Colors.GhostWhite;
|
public override Color SummaryBackgroundColor => Colors.GhostWhite;
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
public override Color SummaryTextColor => Colors.Black;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.SocketGroup;
|
public override int SortOrder => 11;
|
||||||
|
|
||||||
private SocketColor StringToSocketColor(char socketColorString)
|
private SocketColor StringToSocketColor(char socketColorString)
|
||||||
{
|
{
|
||||||
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Sockets " + FilterPredicate;
|
public override string SummaryText => "Sockets " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.LightGray;
|
public override Color SummaryBackgroundColor => Colors.LightGray;
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
public override Color SummaryTextColor => Colors.Black;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Sockets;
|
public override int SortOrder => 2;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 6;
|
public override int Maximum => 6;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
namespace Filtration.ObjectModel.BlockItemTypes
|
||||||
{
|
{
|
||||||
@ -18,6 +17,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "PlayAlertSound";
|
public override string PrefixText => "PlayAlertSound";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Play Alert Sound";
|
public override string DisplayHeading => "Play Alert Sound";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.PlayAlertSound;
|
public override int SortOrder => 26;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Stack Size " + FilterPredicate;
|
public override string SummaryText => "Stack Size " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
public override Color SummaryBackgroundColor => Colors.DarkSlateGray;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.StackSize;
|
public override int SortOrder => 17;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 1000;
|
public override int Maximum => 1000;
|
||||||
}
|
}
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
using System.Windows.Media;
|
|
||||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.BlockItemTypes
|
|
||||||
{
|
|
||||||
public sealed class SynthesisedItemBlockItem : BooleanBlockItem
|
|
||||||
{
|
|
||||||
public SynthesisedItemBlockItem()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public SynthesisedItemBlockItem(bool booleanValue) : base(booleanValue)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string PrefixText => "SynthesisedItem";
|
|
||||||
public override string DisplayHeading => "Synthesised Item";
|
|
||||||
public override Color SummaryBackgroundColor => Colors.Salmon;
|
|
||||||
public override Color SummaryTextColor => Colors.Black;
|
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.SynthesisedItem;
|
|
||||||
}
|
|
||||||
}
|
|
@ -18,6 +18,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string PrefixText => "SetTextColor";
|
public override string PrefixText => "SetTextColor";
|
||||||
public override int MaximumAllowed => 1;
|
public override int MaximumAllowed => 1;
|
||||||
public override string DisplayHeading => "Text Color";
|
public override string DisplayHeading => "Text Color";
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.SetTextColor;
|
public override int SortOrder => 22;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
|||||||
public override string SummaryText => "Width " + FilterPredicate;
|
public override string SummaryText => "Width " + FilterPredicate;
|
||||||
public override Color SummaryBackgroundColor => Colors.MediumPurple;
|
public override Color SummaryBackgroundColor => Colors.MediumPurple;
|
||||||
public override Color SummaryTextColor => Colors.White;
|
public override Color SummaryTextColor => Colors.White;
|
||||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Width;
|
public override int SortOrder => 13;
|
||||||
public override int Minimum => 0;
|
public override int Minimum => 0;
|
||||||
public override int Maximum => 2;
|
public override int Maximum => 2;
|
||||||
}
|
}
|
||||||
|
@ -1,42 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Collections.ObjectModel;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.Commands.ItemFilterScript
|
|
||||||
{
|
|
||||||
public class AddBlockItemToBlocksCommand : IUndoableCommand
|
|
||||||
{
|
|
||||||
private readonly List<Tuple<ObservableCollection<IItemFilterBlockItem>, IItemFilterBlockItem>> _input;
|
|
||||||
|
|
||||||
public AddBlockItemToBlocksCommand(List<Tuple<ObservableCollection<IItemFilterBlockItem>, IItemFilterBlockItem>> input)
|
|
||||||
{
|
|
||||||
_input = input;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Execute()
|
|
||||||
{
|
|
||||||
foreach (var v in _input)
|
|
||||||
{
|
|
||||||
var blockItems = v.Item1;
|
|
||||||
var item = v.Item2;
|
|
||||||
|
|
||||||
blockItems.Add(item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Undo()
|
|
||||||
{
|
|
||||||
foreach (var v in _input)
|
|
||||||
{
|
|
||||||
var blockItems = v.Item1;
|
|
||||||
var item = v.Item2;
|
|
||||||
blockItems.Remove(item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Redo() => Execute();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,48 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Collections.ObjectModel;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.Commands.ItemFilterScript
|
|
||||||
{
|
|
||||||
public class RemoveBlockItemFromBlocksCommand : IUndoableCommand
|
|
||||||
{
|
|
||||||
private readonly List<Tuple<ObservableCollection<IItemFilterBlockItem>, IItemFilterBlockItem>> _input;
|
|
||||||
|
|
||||||
public RemoveBlockItemFromBlocksCommand(List<Tuple<ObservableCollection<IItemFilterBlockItem>, IItemFilterBlockItem>> input)
|
|
||||||
{
|
|
||||||
_input = input;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Execute()
|
|
||||||
{
|
|
||||||
foreach (var pair in _input)
|
|
||||||
{
|
|
||||||
var blockItems = pair.Item1;
|
|
||||||
var blockItem = pair.Item2;
|
|
||||||
|
|
||||||
for (var i = 0; i < blockItems.Count; i++)
|
|
||||||
{
|
|
||||||
if (blockItems[i] == blockItem)
|
|
||||||
{
|
|
||||||
blockItems.RemoveAt(i--);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Undo()
|
|
||||||
{
|
|
||||||
foreach (var pair in _input)
|
|
||||||
{
|
|
||||||
var blockItems = pair.Item1;
|
|
||||||
var blockItem = pair.Item2;
|
|
||||||
blockItems.Add(blockItem);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Redo() => Execute();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,46 +0,0 @@
|
|||||||
using System.ComponentModel;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel.Enums
|
|
||||||
{
|
|
||||||
public enum BlockItemOrdering
|
|
||||||
{
|
|
||||||
Action,
|
|
||||||
LinkedSockets,
|
|
||||||
Sockets,
|
|
||||||
Quality,
|
|
||||||
Identified,
|
|
||||||
Corrupted,
|
|
||||||
ElderItem,
|
|
||||||
ShaperItem,
|
|
||||||
SynthesisedItem,
|
|
||||||
FracturedItem,
|
|
||||||
AnyEnchantment,
|
|
||||||
MapTier,
|
|
||||||
ShapedMap,
|
|
||||||
ElderMap,
|
|
||||||
BligtedMap,
|
|
||||||
SocketGroup,
|
|
||||||
Height,
|
|
||||||
Width,
|
|
||||||
ItemLevel,
|
|
||||||
DropLevel,
|
|
||||||
GemLevel,
|
|
||||||
StackSize,
|
|
||||||
Rarity,
|
|
||||||
Class,
|
|
||||||
BaseType,
|
|
||||||
Prophecy,
|
|
||||||
HasExplicitMod,
|
|
||||||
HasEnchantment,
|
|
||||||
SetTextColor,
|
|
||||||
SetBackgroundColor,
|
|
||||||
SetBorderColor,
|
|
||||||
SetFontSize,
|
|
||||||
PlayAlertSound,
|
|
||||||
PlayAlertSoundPositional,
|
|
||||||
DisableDropSound,
|
|
||||||
MinimapIcon,
|
|
||||||
PlayEffect,
|
|
||||||
CustomAlertSound
|
|
||||||
}
|
|
||||||
}
|
|
@ -8,7 +8,6 @@
|
|||||||
Rarity,
|
Rarity,
|
||||||
Class,
|
Class,
|
||||||
BaseType,
|
BaseType,
|
||||||
Prophecy,
|
|
||||||
Sockets,
|
Sockets,
|
||||||
LinkedSockets,
|
LinkedSockets,
|
||||||
SocketGroup,
|
SocketGroup,
|
||||||
|
@ -4,6 +4,8 @@ namespace Filtration.ObjectModel.Enums
|
|||||||
{
|
{
|
||||||
public enum ItemRarity
|
public enum ItemRarity
|
||||||
{
|
{
|
||||||
|
[Description("Not Set")]
|
||||||
|
NotSet,
|
||||||
[Description("Normal")]
|
[Description("Normal")]
|
||||||
Normal,
|
Normal,
|
||||||
[Description("Magic")]
|
[Description("Magic")]
|
||||||
|
@ -16,20 +16,23 @@ namespace Filtration.ObjectModel.Extensions
|
|||||||
}
|
}
|
||||||
case ItemRarity.Normal:
|
case ItemRarity.Normal:
|
||||||
{
|
{
|
||||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.WhiteItem];
|
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.WhiteItem];
|
||||||
}
|
}
|
||||||
case ItemRarity.Rare:
|
case ItemRarity.Rare:
|
||||||
{
|
{
|
||||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.RareItem];
|
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.RareItem];
|
||||||
}
|
}
|
||||||
case ItemRarity.Unique:
|
case ItemRarity.Unique:
|
||||||
{
|
{
|
||||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.UniqueItem];
|
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.UniqueItem];
|
||||||
}
|
}
|
||||||
default:
|
case ItemRarity.NotSet:
|
||||||
{
|
{
|
||||||
throw new ArgumentOutOfRangeException(nameof(itemRarity), itemRarity, null);
|
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.QuestItem];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
throw new ArgumentOutOfRangeException(nameof(itemRarity), itemRarity, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -31,14 +31,32 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.0\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Castle.Windsor, Version=3.4.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Windsor.3.4.0\lib\net45\Castle.Windsor.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="CommonServiceLocator, Version=2.0.2.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\CommonServiceLocator.2.0.2\lib\net45\CommonServiceLocator.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight, Version=5.3.0.19026, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.3.0.19032, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="PresentationFramework" />
|
<Reference Include="PresentationFramework" />
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Runtime.Remoting" />
|
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||||
<Reference Include="System.Web" />
|
<HintPath>..\packages\MvvmLightLibs.5.3.0.0\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
@ -54,18 +72,13 @@
|
|||||||
<Compile Include="BlockItemBaseTypes\DualIntegerBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\DualIntegerBlockItem.cs" />
|
||||||
<Compile Include="BlockItemBaseTypes\EffectColorBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\EffectColorBlockItem.cs" />
|
||||||
<Compile Include="BlockItemBaseTypes\IconBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\IconBlockItem.cs" />
|
||||||
<Compile Include="BlockItemBaseTypes\NilBlockItem.cs" />
|
|
||||||
<Compile Include="BlockItemBaseTypes\StringBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\StringBlockItem.cs" />
|
||||||
<Compile Include="BlockItemBaseTypes\StrIntBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\StrIntBlockItem.cs" />
|
||||||
<Compile Include="BlockItemBaseTypes\IntegerBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\IntegerBlockItem.cs" />
|
||||||
<Compile Include="BlockItemBaseTypes\NumericFilterPredicateBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\NumericFilterPredicateBlockItem.cs" />
|
||||||
<Compile Include="BlockItemBaseTypes\StringListBlockItem.cs" />
|
<Compile Include="BlockItemBaseTypes\StringListBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\AnyEnchantmentBlockItem.cs" />
|
|
||||||
<Compile Include="BlockItemTypes\BackgroundColorBlockItem.cs" />
|
<Compile Include="BlockItemTypes\BackgroundColorBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\BaseTypeBlockItem.cs" />
|
<Compile Include="BlockItemTypes\BaseTypeBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\BlightedMapBlockItem.cs" />
|
|
||||||
<Compile Include="BlockItemTypes\FracturedItemBlockItem.cs" />
|
|
||||||
<Compile Include="BlockItemTypes\HasEnchantmentBlockItem.cs" />
|
|
||||||
<Compile Include="BlockItemTypes\MapTierBlockItem.cs" />
|
<Compile Include="BlockItemTypes\MapTierBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\PlayEffectBlockItem.cs" />
|
<Compile Include="BlockItemTypes\PlayEffectBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\BorderColorBlockItem.cs" />
|
<Compile Include="BlockItemTypes\BorderColorBlockItem.cs" />
|
||||||
@ -76,9 +89,7 @@
|
|||||||
<Compile Include="BlockItemTypes\GemLevelBlockItem.cs" />
|
<Compile Include="BlockItemTypes\GemLevelBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\HasExplicitModBlockItem.cs" />
|
<Compile Include="BlockItemTypes\HasExplicitModBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\MapIconBlockItem.cs" />
|
<Compile Include="BlockItemTypes\MapIconBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\ProphecyBlockItem.cs" />
|
|
||||||
<Compile Include="BlockItemTypes\ShapedMapBlockItem.cs" />
|
<Compile Include="BlockItemTypes\ShapedMapBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\SynthesisedItemBlockItem.cs" />
|
|
||||||
<Compile Include="BlockItemTypes\ShaperItemBlockItem.cs" />
|
<Compile Include="BlockItemTypes\ShaperItemBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\ElderItemBlockItem.cs" />
|
<Compile Include="BlockItemTypes\ElderItemBlockItem.cs" />
|
||||||
<Compile Include="BlockItemTypes\CorruptedBlockItem.cs" />
|
<Compile Include="BlockItemTypes\CorruptedBlockItem.cs" />
|
||||||
@ -99,19 +110,16 @@
|
|||||||
<Compile Include="BlockItemTypes\WidthBlockItem.cs" />
|
<Compile Include="BlockItemTypes\WidthBlockItem.cs" />
|
||||||
<Compile Include="Commands\CommandManager.cs" />
|
<Compile Include="Commands\CommandManager.cs" />
|
||||||
<Compile Include="Commands\ICommand.cs" />
|
<Compile Include="Commands\ICommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\AddBlockItemToBlocksCommand.cs" />
|
|
||||||
<Compile Include="Commands\ItemFilterScript\MoveBlocksToIndexCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\MoveBlocksToIndexCommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\MoveBlocksToBottomCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\MoveBlocksToBottomCommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\AddCommentBlockCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\AddCommentBlockCommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\MoveBlocksToTopCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\MoveBlocksToTopCommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\PasteBlocksCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\PasteBlocksCommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\RemoveBlockItemFromBlocksCommand.cs" />
|
|
||||||
<Compile Include="Commands\ItemFilterScript\RemoveBlocksCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\RemoveBlocksCommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\SetScriptDescriptionCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\SetScriptDescriptionCommand.cs" />
|
||||||
<Compile Include="Commands\ItemFilterScript\AddBlockCommand.cs" />
|
<Compile Include="Commands\ItemFilterScript\AddBlockCommand.cs" />
|
||||||
<Compile Include="Commands\IUndoableCommand.cs" />
|
<Compile Include="Commands\IUndoableCommand.cs" />
|
||||||
<Compile Include="Enums\BlockAction.cs" />
|
<Compile Include="Enums\BlockAction.cs" />
|
||||||
<Compile Include="Enums\BlockItemOrdering.cs" />
|
|
||||||
<Compile Include="Enums\BlockItemType.cs" />
|
<Compile Include="Enums\BlockItemType.cs" />
|
||||||
<Compile Include="Enums\EffectColor.cs" />
|
<Compile Include="Enums\EffectColor.cs" />
|
||||||
<Compile Include="Enums\FilterPredicateOperator.cs" />
|
<Compile Include="Enums\FilterPredicateOperator.cs" />
|
||||||
@ -156,21 +164,7 @@
|
|||||||
<Compile Include="WindsorInstallers\ModelsInstaller.cs" />
|
<Compile Include="WindsorInstallers\ModelsInstaller.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="app.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Castle.Windsor">
|
|
||||||
<Version>5.0.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="CommonServiceLocator">
|
|
||||||
<Version>2.0.4</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="MvvmLightLibs">
|
|
||||||
<Version>5.4.1.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
</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.
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using Filtration.ObjectModel.Enums;
|
|
||||||
|
|
||||||
namespace Filtration.ObjectModel
|
namespace Filtration.ObjectModel
|
||||||
{
|
{
|
||||||
@ -13,7 +12,7 @@ namespace Filtration.ObjectModel
|
|||||||
Color SummaryBackgroundColor { get; }
|
Color SummaryBackgroundColor { get; }
|
||||||
Color SummaryTextColor { get; }
|
Color SummaryTextColor { get; }
|
||||||
int MaximumAllowed { get; }
|
int MaximumAllowed { get; }
|
||||||
BlockItemOrdering SortOrder { get; }
|
int SortOrder { get; }
|
||||||
bool IsDirty { get; }
|
bool IsDirty { get; }
|
||||||
string Comment { get; set; }
|
string Comment { get; set; }
|
||||||
}
|
}
|
||||||
|
@ -121,8 +121,10 @@ namespace Filtration.ObjectModel
|
|||||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.QuestItem];
|
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.QuestItem];
|
||||||
}
|
}
|
||||||
|
|
||||||
return ItemRarity.DefaultRarityTextColor();
|
return ItemRarity != ItemRarity.NotSet ? ItemRarity.DefaultRarityTextColor() : PathOfExileNamedColors.Colors[PathOfExileNamedColor.WhiteItem];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -279,7 +279,7 @@ namespace Filtration.ObjectModel
|
|||||||
get
|
get
|
||||||
{
|
{
|
||||||
var borderColorBlockItem = BlockItems.OfType<BorderColorBlockItem>().FirstOrDefault();
|
var borderColorBlockItem = BlockItems.OfType<BorderColorBlockItem>().FirstOrDefault();
|
||||||
return borderColorBlockItem?.Color ?? new Color { A = 0, R = 255, G = 255, B = 255 };
|
return borderColorBlockItem?.Color ?? new Color { A = 240, R = 0, G = 0, B = 0 };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,10 +9,6 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
{
|
{
|
||||||
private Color _color;
|
private Color _color;
|
||||||
|
|
||||||
private ColorThemeComponent()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public ColorThemeComponent(ThemeComponentType componentType, string componentName, Color componentColor)
|
public ColorThemeComponent(ThemeComponentType componentType, string componentName, Color componentColor)
|
||||||
{
|
{
|
||||||
if (componentName == null || componentColor == null)
|
if (componentName == null || componentColor == null)
|
||||||
@ -27,7 +23,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public Color Color
|
public Color Color
|
||||||
{
|
{
|
||||||
get => _color;
|
get { return _color; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_color = value;
|
_color = value;
|
||||||
|
@ -9,21 +9,22 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
private EffectColor _effectColor;
|
private EffectColor _effectColor;
|
||||||
private bool _temporary;
|
private bool _temporary;
|
||||||
|
|
||||||
private EffectColorThemeComponent()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public EffectColorThemeComponent(ThemeComponentType componentType, string componentName, EffectColor componentEffectColor, bool componentTemporary)
|
public EffectColorThemeComponent(ThemeComponentType componentType, string componentName, EffectColor componentEffectColor, bool componentTemporary)
|
||||||
{
|
{
|
||||||
|
if (componentName == null)
|
||||||
|
{
|
||||||
|
throw new ArgumentException("Null parameters not allowed in EffectColorThemeComponent constructor");
|
||||||
|
}
|
||||||
|
|
||||||
ComponentType = componentType;
|
ComponentType = componentType;
|
||||||
ComponentName = componentName ?? throw new ArgumentException("Null parameters not allowed in EffectColorThemeComponent constructor");
|
ComponentName = componentName;
|
||||||
EffectColor = componentEffectColor;
|
EffectColor = componentEffectColor;
|
||||||
Temporary = componentTemporary;
|
Temporary = componentTemporary;
|
||||||
}
|
}
|
||||||
|
|
||||||
public EffectColor EffectColor
|
public EffectColor EffectColor
|
||||||
{
|
{
|
||||||
get => _effectColor;
|
get { return _effectColor; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_effectColor = value;
|
_effectColor = value;
|
||||||
@ -34,7 +35,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public bool Temporary
|
public bool Temporary
|
||||||
{
|
{
|
||||||
get => _temporary;
|
get { return _temporary; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_temporary = value;
|
_temporary = value;
|
||||||
|
@ -10,10 +10,6 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
private IconColor _iconColor;
|
private IconColor _iconColor;
|
||||||
private IconShape _iconShape;
|
private IconShape _iconShape;
|
||||||
|
|
||||||
private IconThemeComponent()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public IconThemeComponent(ThemeComponentType componentType, string componentName, IconSize componentIconSize, IconColor componentIconColor, IconShape componentIconShape)
|
public IconThemeComponent(ThemeComponentType componentType, string componentName, IconSize componentIconSize, IconColor componentIconColor, IconShape componentIconShape)
|
||||||
{
|
{
|
||||||
if (componentName == null)
|
if (componentName == null)
|
||||||
@ -30,7 +26,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public IconSize IconSize
|
public IconSize IconSize
|
||||||
{
|
{
|
||||||
get => _iconSize;
|
get { return _iconSize; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_iconSize = value;
|
_iconSize = value;
|
||||||
@ -41,7 +37,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public IconColor IconColor
|
public IconColor IconColor
|
||||||
{
|
{
|
||||||
get => _iconColor;
|
get { return _iconColor; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_iconColor = value;
|
_iconColor = value;
|
||||||
@ -52,7 +48,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public IconShape IconShape
|
public IconShape IconShape
|
||||||
{
|
{
|
||||||
get => _iconShape;
|
get { return _iconShape; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_iconShape = value;
|
_iconShape = value;
|
||||||
|
@ -9,10 +9,6 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
{
|
{
|
||||||
private int _value;
|
private int _value;
|
||||||
|
|
||||||
private IntegerThemeComponent()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public IntegerThemeComponent(ThemeComponentType componentType, string componentName, int componentValue)
|
public IntegerThemeComponent(ThemeComponentType componentType, string componentName, int componentValue)
|
||||||
{
|
{
|
||||||
if (componentName == null)
|
if (componentName == null)
|
||||||
@ -27,7 +23,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public int Value
|
public int Value
|
||||||
{
|
{
|
||||||
get => _value;
|
get { return _value; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_value = value;
|
_value = value;
|
||||||
|
@ -9,10 +9,6 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
private string _value;
|
private string _value;
|
||||||
private int _secondValue;
|
private int _secondValue;
|
||||||
|
|
||||||
private StrIntThemeComponent()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public StrIntThemeComponent(ThemeComponentType componentType, string componentName, string componentValue, int componentSecondValue)
|
public StrIntThemeComponent(ThemeComponentType componentType, string componentName, string componentValue, int componentSecondValue)
|
||||||
{
|
{
|
||||||
if (componentName == null || componentValue == null)
|
if (componentName == null || componentValue == null)
|
||||||
@ -28,7 +24,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public string Value
|
public string Value
|
||||||
{
|
{
|
||||||
get => _value;
|
get { return _value; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_value = value;
|
_value = value;
|
||||||
@ -39,7 +35,7 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
public int SecondValue
|
public int SecondValue
|
||||||
{
|
{
|
||||||
get => _secondValue;
|
get { return _secondValue; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_secondValue = value;
|
_secondValue = value;
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Xml.Serialization;
|
|
||||||
using Filtration.ObjectModel.Enums;
|
using Filtration.ObjectModel.Enums;
|
||||||
using GalaSoft.MvvmLight.Command;
|
using GalaSoft.MvvmLight.Command;
|
||||||
using Microsoft.Win32;
|
using Microsoft.Win32;
|
||||||
@ -14,10 +13,6 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
private string _value;
|
private string _value;
|
||||||
public static ObservableCollection<string> _customSoundsAvailable;
|
public static ObservableCollection<string> _customSoundsAvailable;
|
||||||
|
|
||||||
private StringThemeComponent()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public StringThemeComponent(ThemeComponentType componentType, string componentName, string componentValue)
|
public StringThemeComponent(ThemeComponentType componentType, string componentName, string componentValue)
|
||||||
{
|
{
|
||||||
if (componentName == null || componentValue == null)
|
if (componentName == null || componentValue == null)
|
||||||
@ -66,14 +61,13 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
CustomSoundFileDialogCommand = new RelayCommand(OnCustomSoundFileDialog);
|
CustomSoundFileDialogCommand = new RelayCommand(OnCustomSoundFileDialog);
|
||||||
}
|
}
|
||||||
|
|
||||||
[XmlIgnore]
|
|
||||||
public RelayCommand CustomSoundFileDialogCommand { get; set; }
|
public RelayCommand CustomSoundFileDialogCommand { get; set; }
|
||||||
|
|
||||||
public ObservableCollection<string> CustomSoundsAvailable => _customSoundsAvailable;
|
public ObservableCollection<string> CustomSoundsAvailable => _customSoundsAvailable;
|
||||||
|
|
||||||
public string Value
|
public string Value
|
||||||
{
|
{
|
||||||
get => _value;
|
get { return _value; }
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
_value = value;
|
_value = value;
|
||||||
@ -84,11 +78,12 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
|
|
||||||
private void OnCustomSoundFileDialog()
|
private void OnCustomSoundFileDialog()
|
||||||
{
|
{
|
||||||
OpenFileDialog fileDialog = new OpenFileDialog {DefaultExt = ".mp3"};
|
OpenFileDialog fileDialog = new OpenFileDialog();
|
||||||
var poePath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\My Games\Path of Exile\";
|
fileDialog.DefaultExt = ".mp3";
|
||||||
|
var poePath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments).ToString() + @"\My Games\Path of Exile\";
|
||||||
fileDialog.InitialDirectory = poePath;
|
fileDialog.InitialDirectory = poePath;
|
||||||
|
|
||||||
bool? result = fileDialog.ShowDialog();
|
Nullable<bool> result = fileDialog.ShowDialog();
|
||||||
if (result == true)
|
if (result == true)
|
||||||
{
|
{
|
||||||
var fileName = fileDialog.FileName;
|
var fileName = fileDialog.FileName;
|
||||||
|
@ -7,17 +7,13 @@ using Filtration.ObjectModel.Enums;
|
|||||||
namespace Filtration.ObjectModel.ThemeEditor
|
namespace Filtration.ObjectModel.ThemeEditor
|
||||||
{
|
{
|
||||||
[Serializable]
|
[Serializable]
|
||||||
[XmlInclude(typeof(ColorThemeComponent))]
|
|
||||||
[XmlInclude(typeof(EffectColorThemeComponent))]
|
|
||||||
[XmlInclude(typeof(IconThemeComponent))]
|
|
||||||
[XmlInclude(typeof(IntegerThemeComponent))]
|
|
||||||
[XmlInclude(typeof(StringThemeComponent))]
|
|
||||||
[XmlInclude(typeof(StrIntThemeComponent))]
|
|
||||||
public class Theme
|
public class Theme
|
||||||
{
|
{
|
||||||
|
private readonly ThemeComponentCollection _components;
|
||||||
|
|
||||||
public Theme()
|
public Theme()
|
||||||
{
|
{
|
||||||
Components = new ThemeComponentCollection { IsMasterCollection = false};
|
_components = new ThemeComponentCollection { IsMasterCollection = false};
|
||||||
}
|
}
|
||||||
|
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
@ -25,28 +21,28 @@ namespace Filtration.ObjectModel.ThemeEditor
|
|||||||
[XmlIgnore]
|
[XmlIgnore]
|
||||||
public string FilePath { get; set; }
|
public string FilePath { get; set; }
|
||||||
|
|
||||||
public ThemeComponentCollection Components { get; set; }
|
public ThemeComponentCollection Components => _components;
|
||||||
|
|
||||||
public bool ComponentExists(ThemeComponentType componentType, string componentName)
|
public bool ComponentExists(ThemeComponentType componentType, string componentName)
|
||||||
{
|
{
|
||||||
var componentCount =
|
var componentCount =
|
||||||
Components.Count(c => c.ComponentName == componentName && c.ComponentType == componentType);
|
_components.Count(c => c.ComponentName == componentName && c.ComponentType == componentType);
|
||||||
return componentCount > 0;
|
return componentCount > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AddComponent(ThemeComponentType componentType, string componentName, Color componentColor)
|
public void AddComponent(ThemeComponentType componentType, string componentName, Color componentColor)
|
||||||
{
|
{
|
||||||
Components.Add(new ColorThemeComponent(componentType, componentName, componentColor));
|
_components.Add(new ColorThemeComponent(componentType, componentName, componentColor));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AddComponent(ThemeComponentType componentType, string componentName, int componentValue)
|
public void AddComponent(ThemeComponentType componentType, string componentName, int componentValue)
|
||||||
{
|
{
|
||||||
Components.Add(new IntegerThemeComponent(componentType, componentName, componentValue));
|
_components.Add(new IntegerThemeComponent(componentType, componentName, componentValue));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AddComponent(ThemeComponentType componentType, string componentName, string componentValue, int componentSecondValue)
|
public void AddComponent(ThemeComponentType componentType, string componentName, string componentValue, int componentSecondValue)
|
||||||
{
|
{
|
||||||
Components.Add(new StrIntThemeComponent(componentType, componentName, componentValue, componentSecondValue));
|
_components.Add(new StrIntThemeComponent(componentType, componentName, componentValue, componentSecondValue));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
7
Filtration.ObjectModel/packages.config
Normal file
7
Filtration.ObjectModel/packages.config
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.0" targetFramework="net461" />
|
||||||
|
<package id="Castle.Windsor" version="3.4.0" targetFramework="net461" />
|
||||||
|
<package id="CommonServiceLocator" version="2.0.2" targetFramework="net461" />
|
||||||
|
<package id="MvvmLightLibs" version="5.3.0.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -46,9 +46,7 @@
|
|||||||
<Compile Include="Services\IItemFilterBlockTranslator.cs" />
|
<Compile Include="Services\IItemFilterBlockTranslator.cs" />
|
||||||
<Compile Include="Services\IItemFilterScriptTranslator.cs" />
|
<Compile Include="Services\IItemFilterScriptTranslator.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup />
|
||||||
<None Include="app.config" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
||||||
<Project>{4aac3beb-1dc1-483e-9d11-0e9334e80227}</Project>
|
<Project>{4aac3beb-1dc1-483e-9d11-0e9334e80227}</Project>
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
@ -17,8 +17,6 @@
|
|||||||
<IsCodedUITest>False</IsCodedUITest>
|
<IsCodedUITest>False</IsCodedUITest>
|
||||||
<TestProjectType>UnitTest</TestProjectType>
|
<TestProjectType>UnitTest</TestProjectType>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
<NuGetPackageImportStamp>
|
|
||||||
</NuGetPackageImportStamp>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
@ -38,9 +36,24 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="FluentAssertions, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="FluentAssertions.Core, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.Core.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
@ -94,31 +107,11 @@
|
|||||||
<EmbeddedResource Include="Resources\testscript.txt" />
|
<EmbeddedResource Include="Resources\testscript.txt" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="app.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<EmbeddedResource Include="Resources\testscript2.txt" />
|
<EmbeddedResource Include="Resources\testscript2.txt" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="FluentAssertions">
|
|
||||||
<Version>5.6.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Moq">
|
|
||||||
<Version>4.10.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="NUnit">
|
|
||||||
<Version>3.11.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Threading.Tasks.Extensions">
|
|
||||||
<Version>4.5.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.ValueTuple">
|
|
||||||
<Version>4.5.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<Choose>
|
<Choose>
|
||||||
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
|
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@ -119,8 +119,8 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
var blockItem = result.BlockItems.OfType<ItemLevelBlockItem>().First();
|
var blockItem = result.BlockItems.OfType<ItemLevelBlockItem>().First();
|
||||||
Assert.AreEqual(55, blockItem.FilterPredicate.PredicateOperand);
|
Assert.AreEqual(55, blockItem.FilterPredicate.PredicateOperand);
|
||||||
Assert.AreEqual(FilterPredicateOperator.GreaterThanOrEqual, blockItem.FilterPredicate.PredicateOperator);
|
Assert.AreEqual(FilterPredicateOperator.GreaterThanOrEqual, blockItem.FilterPredicate.PredicateOperator);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Ignore("Update required, ItemFilterBlockTranslator does not set IsShowChecked anymore")]
|
[Ignore("Update required, ItemFilterBlockTranslator does not set IsShowChecked anymore")]
|
||||||
[Test]
|
[Test]
|
||||||
public void TranslateStringToItemFilterBlock_BlockGroupsEnabled_ShowBlock_SetsBlockGroupIsCheckedCorrectly()
|
public void TranslateStringToItemFilterBlock_BlockGroupsEnabled_ShowBlock_SetsBlockGroupIsCheckedCorrectly()
|
||||||
@ -567,25 +567,6 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
Assert.Contains("Test BaseType 2", blockItem.Items);
|
Assert.Contains("Test BaseType 2", blockItem.Items);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
|
||||||
public void TranslateStringToItemFilterBlock_Prophecy_ReturnsCorrectObject()
|
|
||||||
{
|
|
||||||
// Arrange
|
|
||||||
var inputString = "Show" + Environment.NewLine +
|
|
||||||
@" Prophecy ""Test Prophecy 1"" ""TestOneWordProphecyInQuotes"" TestOneWordProphecyNotInQuotes ""Test Prophecy 2""";
|
|
||||||
|
|
||||||
// Act
|
|
||||||
var result = _testUtility.Translator.TranslateStringToItemFilterBlock(inputString, _testUtility.MockItemFilterScript);
|
|
||||||
|
|
||||||
// Assert
|
|
||||||
Assert.AreEqual(1, result.BlockItems.Count(b => b is ProphecyBlockItem));
|
|
||||||
var blockItem = result.BlockItems.OfType<ProphecyBlockItem>().First();
|
|
||||||
Assert.Contains("Test Prophecy 1", blockItem.Items);
|
|
||||||
Assert.Contains("TestOneWordProphecyInQuotes", blockItem.Items);
|
|
||||||
Assert.Contains("TestOneWordProphecyNotInQuotes", blockItem.Items);
|
|
||||||
Assert.Contains("Test Prophecy 2", blockItem.Items);
|
|
||||||
}
|
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void TranslateStringToItemFilterBlock_HasExplicitMod_ReturnsCorrectObject()
|
public void TranslateStringToItemFilterBlock_HasExplicitMod_ReturnsCorrectObject()
|
||||||
{
|
{
|
||||||
@ -916,23 +897,6 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void TranslateStringToItemFilterBlock_DisableDropSound_ReturnsCorrectObject()
|
public void TranslateStringToItemFilterBlock_DisableDropSound_ReturnsCorrectObject()
|
||||||
{
|
|
||||||
// Arrange
|
|
||||||
var inputString = "Show" + Environment.NewLine +
|
|
||||||
" DisableDropSound # Test";
|
|
||||||
|
|
||||||
// Act
|
|
||||||
var result = _testUtility.Translator.TranslateStringToItemFilterBlock(inputString, _testUtility.MockItemFilterScript);
|
|
||||||
|
|
||||||
// Assert
|
|
||||||
|
|
||||||
Assert.AreEqual(1, result.BlockItems.Count(b => b is DisableDropSoundBlockItem));
|
|
||||||
var blockItem = result.BlockItems.OfType<DisableDropSoundBlockItem>().First();
|
|
||||||
Assert.AreEqual(blockItem.Comment, " Test");
|
|
||||||
}
|
|
||||||
|
|
||||||
[Test]
|
|
||||||
public void TranslateStringToItemFilterBlock_DisableDropSound_IncorrectBooleanValue_ReturnsCorrectObject()
|
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var inputString = "Show" + Environment.NewLine +
|
var inputString = "Show" + Environment.NewLine +
|
||||||
@ -944,6 +908,8 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
// Assert
|
// Assert
|
||||||
|
|
||||||
Assert.AreEqual(1, result.BlockItems.Count(b => b is DisableDropSoundBlockItem));
|
Assert.AreEqual(1, result.BlockItems.Count(b => b is DisableDropSoundBlockItem));
|
||||||
|
var blockItem = result.BlockItems.OfType<DisableDropSoundBlockItem>().First();
|
||||||
|
Assert.IsTrue(blockItem.BooleanValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
@ -968,7 +934,6 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
" ElderMap False" + Environment.NewLine +
|
" ElderMap False" + Environment.NewLine +
|
||||||
@" Class ""My Item Class"" AnotherClass ""AndAnotherClass""" + Environment.NewLine +
|
@" Class ""My Item Class"" AnotherClass ""AndAnotherClass""" + Environment.NewLine +
|
||||||
@" BaseType MyBaseType ""Another BaseType""" + Environment.NewLine +
|
@" BaseType MyBaseType ""Another BaseType""" + Environment.NewLine +
|
||||||
@" Prophecy MyProphecy ""Another Prophecy""" + Environment.NewLine +
|
|
||||||
@" HasExplicitMod MyMod ""Another Mod""" + Environment.NewLine +
|
@" HasExplicitMod MyMod ""Another Mod""" + Environment.NewLine +
|
||||||
" JunkLine Let's ignore this one!" + Environment.NewLine +
|
" JunkLine Let's ignore this one!" + Environment.NewLine +
|
||||||
" #Quality Commented out quality line" + Environment.NewLine +
|
" #Quality Commented out quality line" + Environment.NewLine +
|
||||||
@ -980,7 +945,7 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
" SetBorderColor 0 0 0" + Environment.NewLine +
|
" SetBorderColor 0 0 0" + Environment.NewLine +
|
||||||
" SetFontSize 50" + Environment.NewLine +
|
" SetFontSize 50" + Environment.NewLine +
|
||||||
" PlayAlertSound 3" + Environment.NewLine +
|
" PlayAlertSound 3" + Environment.NewLine +
|
||||||
" DisableDropSound # False" + Environment.NewLine +
|
" DisableDropSound False" + Environment.NewLine +
|
||||||
" CustomAlertSound \"test.mp3\" # customSoundTheme" + Environment.NewLine +
|
" CustomAlertSound \"test.mp3\" # customSoundTheme" + Environment.NewLine +
|
||||||
" MinimapIcon 2 Green Triangle # iconTheme" + Environment.NewLine +
|
" MinimapIcon 2 Green Triangle # iconTheme" + Environment.NewLine +
|
||||||
" PlayEffect Green Temp # effectTheme" + Environment.NewLine;
|
" PlayEffect Green Temp # effectTheme" + Environment.NewLine;
|
||||||
@ -1043,11 +1008,6 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
Assert.Contains("MyBaseType", baseTypeblockItem.Items);
|
Assert.Contains("MyBaseType", baseTypeblockItem.Items);
|
||||||
Assert.Contains("Another BaseType", baseTypeblockItem.Items);
|
Assert.Contains("Another BaseType", baseTypeblockItem.Items);
|
||||||
|
|
||||||
var prophecyblockItem = result.BlockItems.OfType<ProphecyBlockItem>().First();
|
|
||||||
Assert.AreEqual(2, prophecyblockItem.Items.Count);
|
|
||||||
Assert.Contains("MyProphecy", prophecyblockItem.Items);
|
|
||||||
Assert.Contains("Another Prophecy", prophecyblockItem.Items);
|
|
||||||
|
|
||||||
var hasExplicitModBlockItem = result.BlockItems.OfType<HasExplicitModBlockItem>().First();
|
var hasExplicitModBlockItem = result.BlockItems.OfType<HasExplicitModBlockItem>().First();
|
||||||
Assert.AreEqual(2, hasExplicitModBlockItem.Items.Count);
|
Assert.AreEqual(2, hasExplicitModBlockItem.Items.Count);
|
||||||
Assert.Contains("MyMod", hasExplicitModBlockItem.Items);
|
Assert.Contains("MyMod", hasExplicitModBlockItem.Items);
|
||||||
@ -1090,7 +1050,7 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
Assert.AreEqual(0, result.BlockItems.OfType<SoundBlockItem>().Count());
|
Assert.AreEqual(0, result.BlockItems.OfType<SoundBlockItem>().Count());
|
||||||
|
|
||||||
var disableDropSoundBlockItem = result.BlockItems.OfType<DisableDropSoundBlockItem>().First();
|
var disableDropSoundBlockItem = result.BlockItems.OfType<DisableDropSoundBlockItem>().First();
|
||||||
Assert.AreEqual(disableDropSoundBlockItem.Comment, " False");
|
Assert.IsFalse(disableDropSoundBlockItem.BooleanValue);
|
||||||
|
|
||||||
var customSoundBlockItem = result.BlockItems.OfType<CustomSoundBlockItem>().First();
|
var customSoundBlockItem = result.BlockItems.OfType<CustomSoundBlockItem>().First();
|
||||||
Assert.AreEqual("test.mp3", customSoundBlockItem.Value);
|
Assert.AreEqual("test.mp3", customSoundBlockItem.Value);
|
||||||
@ -1747,26 +1707,6 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
Assert.AreEqual(expectedResult, result);
|
Assert.AreEqual(expectedResult, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
|
||||||
public void TranslateItemFilterBlockToString_Prophecies_ReturnsCorrectString()
|
|
||||||
{
|
|
||||||
// Arrange
|
|
||||||
var expectedResult = "Show" + Environment.NewLine +
|
|
||||||
" Prophecy \"Test Prophecy\" \"Another Prophecy\" \"Yet Another Prophecy\"";
|
|
||||||
|
|
||||||
var prophecyBlockItem = new ProphecyBlockItem();
|
|
||||||
prophecyBlockItem.Items.Add("Test Prophecy");
|
|
||||||
prophecyBlockItem.Items.Add("Another Prophecy");
|
|
||||||
prophecyBlockItem.Items.Add("Yet Another Prophecy");
|
|
||||||
_testUtility.TestBlock.BlockItems.Add(prophecyBlockItem);
|
|
||||||
|
|
||||||
// Act
|
|
||||||
var result = _testUtility.Translator.TranslateItemFilterBlockToString(_testUtility.TestBlock);
|
|
||||||
|
|
||||||
// Assert
|
|
||||||
Assert.AreEqual(expectedResult, result);
|
|
||||||
}
|
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void TranslateItemFilterBlockToString_HasExplicitMod_ReturnsCorrectString()
|
public void TranslateItemFilterBlockToString_HasExplicitMod_ReturnsCorrectString()
|
||||||
{
|
{
|
||||||
@ -2073,14 +2013,13 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
" Rarity = Unique" + Environment.NewLine +
|
" Rarity = Unique" + Environment.NewLine +
|
||||||
" Class \"Body Armour\" \"Gloves\" \"Belt\" \"Two Hand Axes\"" + Environment.NewLine +
|
" Class \"Body Armour\" \"Gloves\" \"Belt\" \"Two Hand Axes\"" + Environment.NewLine +
|
||||||
" BaseType \"Greater Life Flask\" \"Simple Robe\" \"Full Wyrmscale\"" + Environment.NewLine +
|
" BaseType \"Greater Life Flask\" \"Simple Robe\" \"Full Wyrmscale\"" + Environment.NewLine +
|
||||||
" Prophecy \"The Cursed Choir\" \"A Valuable Combination\" \"The Beautiful Guide\"" + Environment.NewLine +
|
|
||||||
" HasExplicitMod \"Guatelitzi's\" \"of Tacati\" \"Tyrannical\"" + Environment.NewLine +
|
" HasExplicitMod \"Guatelitzi's\" \"of Tacati\" \"Tyrannical\"" + Environment.NewLine +
|
||||||
" SetTextColor 255 89 0 56" + Environment.NewLine +
|
" SetTextColor 255 89 0 56" + Environment.NewLine +
|
||||||
" SetBackgroundColor 0 0 0" + Environment.NewLine +
|
" SetBackgroundColor 0 0 0" + Environment.NewLine +
|
||||||
" SetBorderColor 255 1 254" + Environment.NewLine +
|
" SetBorderColor 255 1 254" + Environment.NewLine +
|
||||||
" SetFontSize 50" + Environment.NewLine +
|
" SetFontSize 50" + Environment.NewLine +
|
||||||
" PlayAlertSound 6 90" + Environment.NewLine +
|
" PlayAlertSound 6 90" + Environment.NewLine +
|
||||||
" DisableDropSound" + Environment.NewLine +
|
" DisableDropSound True" + Environment.NewLine +
|
||||||
" MinimapIcon 1 Blue Circle" + Environment.NewLine +
|
" MinimapIcon 1 Blue Circle" + Environment.NewLine +
|
||||||
" PlayEffect Red Temp" + Environment.NewLine +
|
" PlayEffect Red Temp" + Environment.NewLine +
|
||||||
" CustomAlertSound \"test.mp3\"";
|
" CustomAlertSound \"test.mp3\"";
|
||||||
@ -2107,11 +2046,6 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
baseTypeItemblockItem.Items.Add("Simple Robe");
|
baseTypeItemblockItem.Items.Add("Simple Robe");
|
||||||
baseTypeItemblockItem.Items.Add("Full Wyrmscale");
|
baseTypeItemblockItem.Items.Add("Full Wyrmscale");
|
||||||
_testUtility.TestBlock.BlockItems.Add(baseTypeItemblockItem);
|
_testUtility.TestBlock.BlockItems.Add(baseTypeItemblockItem);
|
||||||
var prophecyItemblockItem = new ProphecyBlockItem();
|
|
||||||
prophecyItemblockItem.Items.Add("The Cursed Choir");
|
|
||||||
prophecyItemblockItem.Items.Add("A Valuable Combination");
|
|
||||||
prophecyItemblockItem.Items.Add("The Beautiful Guide");
|
|
||||||
_testUtility.TestBlock.BlockItems.Add(prophecyItemblockItem);
|
|
||||||
var hasExplicitModBlockItem = new HasExplicitModBlockItem();
|
var hasExplicitModBlockItem = new HasExplicitModBlockItem();
|
||||||
hasExplicitModBlockItem.Items.Add("Guatelitzi's");
|
hasExplicitModBlockItem.Items.Add("Guatelitzi's");
|
||||||
hasExplicitModBlockItem.Items.Add("of Tacati");
|
hasExplicitModBlockItem.Items.Add("of Tacati");
|
||||||
@ -2135,7 +2069,7 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
_testUtility.TestBlock.BlockItems.Add(new MapTierBlockItem(FilterPredicateOperator.LessThan, 10));
|
_testUtility.TestBlock.BlockItems.Add(new MapTierBlockItem(FilterPredicateOperator.LessThan, 10));
|
||||||
_testUtility.TestBlock.BlockItems.Add(new MapIconBlockItem(IconSize.Medium, IconColor.Blue, IconShape.Circle));
|
_testUtility.TestBlock.BlockItems.Add(new MapIconBlockItem(IconSize.Medium, IconColor.Blue, IconShape.Circle));
|
||||||
_testUtility.TestBlock.BlockItems.Add(new PlayEffectBlockItem(EffectColor.Red, true));
|
_testUtility.TestBlock.BlockItems.Add(new PlayEffectBlockItem(EffectColor.Red, true));
|
||||||
_testUtility.TestBlock.BlockItems.Add(new DisableDropSoundBlockItem());
|
_testUtility.TestBlock.BlockItems.Add(new DisableDropSoundBlockItem(true));
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
var result = _testUtility.Translator.TranslateItemFilterBlockToString(_testUtility.TestBlock);
|
var result = _testUtility.Translator.TranslateItemFilterBlockToString(_testUtility.TestBlock);
|
||||||
|
@ -124,7 +124,7 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
&& s.ItemFilterScriptSettings == new ItemFilterScriptSettings(new ThemeComponentCollection())
|
&& s.ItemFilterScriptSettings == new ItemFilterScriptSettings(new ThemeComponentCollection())
|
||||||
&& s.Description == "Script description\r\nScript description\r\nScript description\r\nScript description");
|
&& s.Description == "Script description\r\nScript description\r\nScript description\r\nScript description");
|
||||||
|
|
||||||
result.Should().BeEquivalentTo(expectedResult);
|
result.ShouldBeEquivalentTo(expectedResult);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
@ -322,13 +322,7 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
Environment.NewLine +
|
Environment.NewLine +
|
||||||
"Show" + Environment.NewLine +
|
"Show" + Environment.NewLine +
|
||||||
" ItemLevel > 20" + Environment.NewLine +
|
" ItemLevel > 20" + Environment.NewLine +
|
||||||
" SetTextColor 255 255 0" + Environment.NewLine +
|
" SetTextColor 255 255 0";
|
||||||
Environment.NewLine +
|
|
||||||
"#Show $Recipes->Glassblower->15% %D1" + Environment.NewLine +
|
|
||||||
"# SetTextColor 255 255 0" + Environment.NewLine +
|
|
||||||
Environment.NewLine +
|
|
||||||
"#Hide simple text without any special character" + Environment.NewLine +
|
|
||||||
"# SetTextColor 255 255 0";
|
|
||||||
|
|
||||||
|
|
||||||
var blockTranslator = new ItemFilterBlockTranslator(Mock.Of<IBlockGroupHierarchyBuilder>());
|
var blockTranslator = new ItemFilterBlockTranslator(Mock.Of<IBlockGroupHierarchyBuilder>());
|
||||||
@ -338,21 +332,15 @@ namespace Filtration.Parser.Tests.Services
|
|||||||
var result = translator.TranslateStringToItemFilterScript(testInputScript);
|
var result = translator.TranslateStringToItemFilterScript(testInputScript);
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.AreEqual(5, result.ItemFilterBlocks.Count);
|
Assert.AreEqual(3, result.ItemFilterBlocks.Count);
|
||||||
|
|
||||||
var firstBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().First();
|
var firstBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().First();
|
||||||
var secondBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().Skip(1).First();
|
var secondBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().Skip(1).First();
|
||||||
var thirdBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().Skip(2).First();
|
var thirdBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().Skip(2).First();
|
||||||
var fourthBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().Skip(3).First();
|
|
||||||
var fifthBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().Skip(4).First();
|
|
||||||
|
|
||||||
Assert.AreEqual(3, firstBlock.BlockItems.Count);
|
Assert.AreEqual(3, firstBlock.BlockItems.Count);
|
||||||
Assert.AreEqual(5, secondBlock.BlockItems.Count);
|
Assert.AreEqual(5, secondBlock.BlockItems.Count);
|
||||||
Assert.AreEqual(3, thirdBlock.BlockItems.Count);
|
Assert.AreEqual(3, thirdBlock.BlockItems.Count);
|
||||||
Assert.AreEqual(2, fourthBlock.BlockItems.Count);
|
|
||||||
Assert.AreEqual(2, fifthBlock.BlockItems.Count);
|
|
||||||
Assert.AreEqual(false, fourthBlock.Enabled);
|
|
||||||
Assert.AreEqual(false, fifthBlock.Enabled);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
7
Filtration.Parser.Tests/packages.config
Normal file
7
Filtration.Parser.Tests/packages.config
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.3" targetFramework="net461" />
|
||||||
|
<package id="FluentAssertions" version="4.19.2" targetFramework="net461" />
|
||||||
|
<package id="Moq" version="4.5.30" targetFramework="net461" />
|
||||||
|
<package id="NUnit" version="3.6.1" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -31,13 +31,17 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Castle.Windsor, Version=3.4.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Windsor.3.4.0\lib\net45\Castle.Windsor.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="PresentationFramework" />
|
<Reference Include="PresentationFramework" />
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Runtime.Remoting" />
|
|
||||||
<Reference Include="System.Web" />
|
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
@ -64,7 +68,7 @@
|
|||||||
<Generator>SettingsSingleFileGenerator</Generator>
|
<Generator>SettingsSingleFileGenerator</Generator>
|
||||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||||
</None>
|
</None>
|
||||||
<None Include="app.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Filtration.Common\Filtration.Common.csproj">
|
<ProjectReference Include="..\Filtration.Common\Filtration.Common.csproj">
|
||||||
@ -80,14 +84,6 @@
|
|||||||
<Name>Filtration.Parser.Interface</Name>
|
<Name>Filtration.Parser.Interface</Name>
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Castle.Windsor">
|
|
||||||
<Version>5.0.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</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.
|
||||||
|
@ -46,7 +46,7 @@ namespace Filtration.Parser.Services
|
|||||||
return itemFilterCommentBlock;
|
return itemFilterCommentBlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
// This method converts a string into a ItemFilterBlock. This is used for pasting ItemFilterBlocks
|
// This method converts a string into a ItemFilterBlock. This is used for pasting ItemFilterBlocks
|
||||||
// and reading ItemFilterScripts from a file.
|
// and reading ItemFilterScripts from a file.
|
||||||
public IItemFilterBlock TranslateStringToItemFilterBlock(string inputString, IItemFilterScript parentItemFilterScript, string originalString = "", bool initialiseBlockGroupHierarchyBuilder = false)
|
public IItemFilterBlock TranslateStringToItemFilterBlock(string inputString, IItemFilterScript parentItemFilterScript, string originalString = "", bool initialiseBlockGroupHierarchyBuilder = false)
|
||||||
{
|
{
|
||||||
@ -159,11 +159,6 @@ namespace Filtration.Parser.Services
|
|||||||
AddStringListItemToBlockItems<BaseTypeBlockItem>(block, trimmedLine);
|
AddStringListItemToBlockItems<BaseTypeBlockItem>(block, trimmedLine);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "Prophecy":
|
|
||||||
{
|
|
||||||
AddStringListItemToBlockItems<ProphecyBlockItem>(block, trimmedLine);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "Corrupted":
|
case "Corrupted":
|
||||||
{
|
{
|
||||||
AddBooleanItemToBlockItems<CorruptedBlockItem>(block, trimmedLine);
|
AddBooleanItemToBlockItems<CorruptedBlockItem>(block, trimmedLine);
|
||||||
@ -184,21 +179,6 @@ namespace Filtration.Parser.Services
|
|||||||
AddBooleanItemToBlockItems<ShaperItemBlockItem>(block, trimmedLine);
|
AddBooleanItemToBlockItems<ShaperItemBlockItem>(block, trimmedLine);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "SynthesisedItem":
|
|
||||||
{
|
|
||||||
AddBooleanItemToBlockItems<SynthesisedItemBlockItem>(block, trimmedLine);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "FracturedItem":
|
|
||||||
{
|
|
||||||
AddBooleanItemToBlockItems<FracturedItemBlockItem>(block, trimmedLine);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "AnyEnchantment":
|
|
||||||
{
|
|
||||||
AddBooleanItemToBlockItems<AnyEnchantmentBlockItem>(block, trimmedLine);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "ShapedMap":
|
case "ShapedMap":
|
||||||
{
|
{
|
||||||
AddBooleanItemToBlockItems<ShapedMapBlockItem>(block, trimmedLine);
|
AddBooleanItemToBlockItems<ShapedMapBlockItem>(block, trimmedLine);
|
||||||
@ -288,7 +268,7 @@ namespace Filtration.Parser.Services
|
|||||||
RemoveExistingBlockItemsOfType<CustomSoundBlockItem>(block);
|
RemoveExistingBlockItemsOfType<CustomSoundBlockItem>(block);
|
||||||
|
|
||||||
var match = Regex.Match(trimmedLine, @"\S+\s+(\S+)\s?(\d+)?");
|
var match = Regex.Match(trimmedLine, @"\S+\s+(\S+)\s?(\d+)?");
|
||||||
|
|
||||||
if (match.Success)
|
if (match.Success)
|
||||||
{
|
{
|
||||||
string firstValue = match.Groups[1].Value;
|
string firstValue = match.Groups[1].Value;
|
||||||
@ -332,11 +312,6 @@ namespace Filtration.Parser.Services
|
|||||||
AddStringListItemToBlockItems<HasExplicitModBlockItem>(block, trimmedLine);
|
AddStringListItemToBlockItems<HasExplicitModBlockItem>(block, trimmedLine);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "HasEnchantment":
|
|
||||||
{
|
|
||||||
AddStringListItemToBlockItems<HasEnchantmentBlockItem>(block, trimmedLine);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "ElderMap":
|
case "ElderMap":
|
||||||
{
|
{
|
||||||
AddBooleanItemToBlockItems<ElderMapBlockItem>(block, trimmedLine);
|
AddBooleanItemToBlockItems<ElderMapBlockItem>(block, trimmedLine);
|
||||||
@ -347,19 +322,19 @@ namespace Filtration.Parser.Services
|
|||||||
// Only ever use the last DisableDropSound item encountered as multiples aren't valid.
|
// Only ever use the last DisableDropSound item encountered as multiples aren't valid.
|
||||||
RemoveExistingBlockItemsOfType<DisableDropSoundBlockItem>(block);
|
RemoveExistingBlockItemsOfType<DisableDropSoundBlockItem>(block);
|
||||||
|
|
||||||
AddNilItemToBlockItems<DisableDropSoundBlockItem>(block, trimmedLine);
|
AddBooleanItemToBlockItems<DisableDropSoundBlockItem>(block, trimmedLine);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "MinimapIcon":
|
case "MinimapIcon":
|
||||||
{
|
{
|
||||||
// Only ever use the last Icon item encountered as multiples aren't valid.
|
// Only ever use the last Icon item encountered as multiples aren't valid.
|
||||||
RemoveExistingBlockItemsOfType<MapIconBlockItem>(block);
|
RemoveExistingBlockItemsOfType<MapIconBlockItem>(block);
|
||||||
|
|
||||||
// TODO: Get size, color, shape values programmatically
|
// TODO: Get size, color, shape values programmatically
|
||||||
var match = Regex.Match(trimmedLine,
|
var match = Regex.Match(trimmedLine,
|
||||||
@"\S+\s+(0|1|2)\s+(Red|Green|Blue|Brown|White|Yellow)\s+(Circle|Diamond|Hexagon|Square|Star|Triangle)\s*([#]?)(.*)",
|
@"\S+\s+(0|1|2)\s+(Red|Green|Blue|Brown|White|Yellow)\s+(Circle|Diamond|Hexagon|Square|Star|Triangle)\s*([#]?)(.*)",
|
||||||
RegexOptions.IgnoreCase);
|
RegexOptions.IgnoreCase);
|
||||||
|
|
||||||
if (match.Success)
|
if (match.Success)
|
||||||
{
|
{
|
||||||
var blockItemValue = new MapIconBlockItem
|
var blockItemValue = new MapIconBlockItem
|
||||||
@ -369,6 +344,12 @@ namespace Filtration.Parser.Services
|
|||||||
Shape = EnumHelper.GetEnumValueFromDescription<IconShape>(match.Groups[3].Value)
|
Shape = EnumHelper.GetEnumValueFromDescription<IconShape>(match.Groups[3].Value)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var themeComponent = _masterComponentCollection.AddComponent(ThemeComponentType.Icon, match.Groups[5].Value.Trim(),
|
||||||
|
blockItemValue.Size, blockItemValue.Color, blockItemValue.Shape);
|
||||||
|
if(match.Groups[4].Value == "#" && !string.IsNullOrWhiteSpace(match.Groups[5].Value))
|
||||||
|
{
|
||||||
|
blockItemValue.ThemeComponent = themeComponent;
|
||||||
|
}
|
||||||
block.BlockItems.Add(blockItemValue);
|
block.BlockItems.Add(blockItemValue);
|
||||||
themeComponentType = (int)ThemeComponentType.Icon;
|
themeComponentType = (int)ThemeComponentType.Icon;
|
||||||
}
|
}
|
||||||
@ -378,10 +359,10 @@ namespace Filtration.Parser.Services
|
|||||||
{
|
{
|
||||||
// Only ever use the last BeamColor item encountered as multiples aren't valid.
|
// Only ever use the last BeamColor item encountered as multiples aren't valid.
|
||||||
RemoveExistingBlockItemsOfType<PlayEffectBlockItem>(block);
|
RemoveExistingBlockItemsOfType<PlayEffectBlockItem>(block);
|
||||||
|
|
||||||
// TODO: Get colors programmatically
|
// TODO: Get colors programmatically
|
||||||
var match = Regex.Match(trimmedLine, @"\S+\s+(Red|Green|Blue|Brown|White|Yellow)\s*(Temp)?", RegexOptions.IgnoreCase);
|
var match = Regex.Match(trimmedLine, @"\S+\s+(Red|Green|Blue|Brown|White|Yellow)\s*(Temp)?", RegexOptions.IgnoreCase);
|
||||||
|
|
||||||
if (match.Success)
|
if (match.Success)
|
||||||
{
|
{
|
||||||
var blockItemValue = new PlayEffectBlockItem
|
var blockItemValue = new PlayEffectBlockItem
|
||||||
@ -402,7 +383,7 @@ namespace Filtration.Parser.Services
|
|||||||
RemoveExistingBlockItemsOfType<PositionalSoundBlockItem>(block);
|
RemoveExistingBlockItemsOfType<PositionalSoundBlockItem>(block);
|
||||||
|
|
||||||
var match = Regex.Match(trimmedLine, @"\S+\s+""([^\*\<\>\?|]+)""");
|
var match = Regex.Match(trimmedLine, @"\S+\s+""([^\*\<\>\?|]+)""");
|
||||||
|
|
||||||
if (match.Success)
|
if (match.Success)
|
||||||
{
|
{
|
||||||
var blockItemValue = new CustomSoundBlockItem
|
var blockItemValue = new CustomSoundBlockItem
|
||||||
@ -419,11 +400,6 @@ namespace Filtration.Parser.Services
|
|||||||
AddNumericFilterPredicateItemToBlockItems<MapTierBlockItem>(block, trimmedLine);
|
AddNumericFilterPredicateItemToBlockItems<MapTierBlockItem>(block, trimmedLine);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "BlightedMap":
|
|
||||||
{
|
|
||||||
AddBooleanItemToBlockItems<BlightedMapBlockItem>(block, trimmedLine);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!string.IsNullOrWhiteSpace(blockComment) && block.BlockItems.Count > 1)
|
if (!string.IsNullOrWhiteSpace(blockComment) && block.BlockItems.Count > 1)
|
||||||
@ -531,17 +507,10 @@ namespace Filtration.Parser.Services
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void AddNilItemToBlockItems<T>(IItemFilterBlock block, string inputString) where T : NilBlockItem
|
|
||||||
{
|
|
||||||
var blockItem = Activator.CreateInstance<T>();
|
|
||||||
blockItem.Comment = GetTextAfterFirstComment(inputString);
|
|
||||||
block.BlockItems.Add(blockItem);
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void AddNumericFilterPredicateItemToBlockItems<T>(IItemFilterBlock block, string inputString) where T : NumericFilterPredicateBlockItem
|
private static void AddNumericFilterPredicateItemToBlockItems<T>(IItemFilterBlock block, string inputString) where T : NumericFilterPredicateBlockItem
|
||||||
{
|
{
|
||||||
var blockItem = Activator.CreateInstance<T>();
|
var blockItem = Activator.CreateInstance<T>();
|
||||||
|
|
||||||
SetNumericFilterPredicateFromString(blockItem.FilterPredicate, inputString);
|
SetNumericFilterPredicateFromString(blockItem.FilterPredicate, inputString);
|
||||||
block.BlockItems.Add(blockItem);
|
block.BlockItems.Add(blockItem);
|
||||||
}
|
}
|
||||||
@ -592,17 +561,12 @@ namespace Filtration.Parser.Services
|
|||||||
var trimmedLine = line.Trim();
|
var trimmedLine = line.Trim();
|
||||||
if (trimmedLine.IndexOf('#') > 0)
|
if (trimmedLine.IndexOf('#') > 0)
|
||||||
{
|
{
|
||||||
blockComment = trimmedLine.Substring(trimmedLine.IndexOf('#') + 1).Trim();
|
blockComment = trimmedLine.Substring(trimmedLine.IndexOf('#') + 1);
|
||||||
trimmedLine = trimmedLine.Substring(0, trimmedLine.IndexOf('#')).Trim();
|
trimmedLine = trimmedLine.Substring(0, trimmedLine.IndexOf('#')).Trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (matches.Value)
|
switch (matches.Value)
|
||||||
{
|
{
|
||||||
case "DisableDropSound":
|
|
||||||
{
|
|
||||||
blockItems.Add(new DisableDropSoundBlockItem());
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "PlayAlertSound":
|
case "PlayAlertSound":
|
||||||
{
|
{
|
||||||
var match = Regex.Match(trimmedLine, @"\s+(\S+) (\d+)");
|
var match = Regex.Match(trimmedLine, @"\s+(\S+) (\d+)");
|
||||||
@ -617,20 +581,6 @@ namespace Filtration.Parser.Services
|
|||||||
blockItems.Add(blockItem);
|
blockItems.Add(blockItem);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "PlayAlertSoundPositional":
|
|
||||||
{
|
|
||||||
var match = Regex.Match(trimmedLine, @"\s+(\S+) (\d+)");
|
|
||||||
if (!match.Success) break;
|
|
||||||
var blockItem = new PositionalSoundBlockItem(match.Groups[1].Value, Convert.ToInt16(match.Groups[2].Value));
|
|
||||||
if(_masterComponentCollection != null && !string.IsNullOrWhiteSpace(blockComment))
|
|
||||||
{
|
|
||||||
ThemeComponent themeComponent = _masterComponentCollection.AddComponent(ThemeComponentType.AlertSound,
|
|
||||||
blockComment, blockItem.Value, blockItem.SecondValue);
|
|
||||||
blockItem.ThemeComponent = themeComponent;
|
|
||||||
}
|
|
||||||
blockItems.Add(blockItem);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "SetTextColor":
|
case "SetTextColor":
|
||||||
{
|
{
|
||||||
var result = Regex.Matches(trimmedLine, @"([\w\s]*)");
|
var result = Regex.Matches(trimmedLine, @"([\w\s]*)");
|
||||||
@ -687,60 +637,10 @@ namespace Filtration.Parser.Services
|
|||||||
blockItems.Add(blockItem);
|
blockItems.Add(blockItem);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "MinimapIcon":
|
}
|
||||||
{
|
|
||||||
// TODO: Get size, color, shape values programmatically
|
|
||||||
var match = Regex.Match(trimmedLine,
|
|
||||||
@"\S+\s+(0|1|2)\s+(Red|Green|Blue|Brown|White|Yellow)\s+(Circle|Diamond|Hexagon|Square|Star|Triangle)\s*([#]?)(.*)",
|
|
||||||
RegexOptions.IgnoreCase);
|
|
||||||
|
|
||||||
if (match.Success)
|
|
||||||
{
|
|
||||||
var blockItemValue = new MapIconBlockItem
|
|
||||||
{
|
|
||||||
Size = (IconSize)short.Parse(match.Groups[1].Value),
|
|
||||||
Color = EnumHelper.GetEnumValueFromDescription<IconColor>(match.Groups[2].Value),
|
|
||||||
Shape = EnumHelper.GetEnumValueFromDescription<IconShape>(match.Groups[3].Value)
|
|
||||||
};
|
|
||||||
|
|
||||||
blockItems.Add(blockItemValue);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "PlayEffect":
|
|
||||||
{
|
|
||||||
// TODO: Get colors programmatically
|
|
||||||
var match = Regex.Match(trimmedLine, @"\S+\s+(Red|Green|Blue|Brown|White|Yellow)\s*(Temp)?", RegexOptions.IgnoreCase);
|
|
||||||
|
|
||||||
if (match.Success)
|
|
||||||
{
|
|
||||||
var blockItemValue = new PlayEffectBlockItem
|
|
||||||
{
|
|
||||||
Color = EnumHelper.GetEnumValueFromDescription<EffectColor>(match.Groups[1].Value),
|
|
||||||
Temporary = match.Groups[2].Value.Trim().ToLower() == "temp"
|
|
||||||
};
|
|
||||||
blockItems.Add(blockItemValue);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "CustomAlertSound":
|
|
||||||
{
|
|
||||||
var match = Regex.Match(trimmedLine, @"\S+\s+""([^\*\<\>\?|]+)""");
|
|
||||||
|
|
||||||
if (match.Success)
|
|
||||||
{
|
|
||||||
var blockItemValue = new CustomSoundBlockItem
|
|
||||||
{
|
|
||||||
Value = match.Groups[1].Value
|
|
||||||
};
|
|
||||||
blockItems.Add(blockItemValue);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void AddBlockGroupToBlock(IItemFilterBlock block, string inputString)
|
private void AddBlockGroupToBlock(IItemFilterBlock block, string inputString)
|
||||||
{
|
{
|
||||||
var blockGroupText = GetTextAfterFirstComment(inputString);
|
var blockGroupText = GetTextAfterFirstComment(inputString);
|
||||||
@ -825,7 +725,7 @@ namespace Filtration.Parser.Services
|
|||||||
// Remove trailing newline
|
// Remove trailing newline
|
||||||
return commentWithHashes.TrimEnd('\r', '\n');
|
return commentWithHashes.TrimEnd('\r', '\n');
|
||||||
}
|
}
|
||||||
|
|
||||||
// This method converts an ItemFilterBlock object into a string. This is used for copying a ItemFilterBlock
|
// This method converts an ItemFilterBlock object into a string. This is used for copying a ItemFilterBlock
|
||||||
// to the clipboard, and when saving a ItemFilterScript.
|
// to the clipboard, and when saving a ItemFilterScript.
|
||||||
// TODO: Private
|
// TODO: Private
|
||||||
|
@ -61,7 +61,8 @@ namespace Filtration.Parser.Services
|
|||||||
lines[i] = lines[i].Trim();
|
lines[i] = lines[i].Trim();
|
||||||
if(!lines[i].StartsWith("#"))
|
if(!lines[i].StartsWith("#"))
|
||||||
{
|
{
|
||||||
if ((lines[i].StartsWith("Show") || lines[i].StartsWith("Hide")) && (lines[i].Length == 4 || lines[i][4] == ' ')) // found
|
string curLine = Regex.Replace(lines[i], @"\s+", "");
|
||||||
|
if ((curLine.StartsWith("Show") || curLine.StartsWith("Hide")) && (curLine.Length == 4 || curLine[4] == '#')) // found
|
||||||
{
|
{
|
||||||
inBlock[i] = true;
|
inBlock[i] = true;
|
||||||
break;
|
break;
|
||||||
@ -97,8 +98,8 @@ namespace Filtration.Parser.Services
|
|||||||
{
|
{
|
||||||
if (!inDisabledBlock && lines[i].StartsWith("#"))
|
if (!inDisabledBlock && lines[i].StartsWith("#"))
|
||||||
{
|
{
|
||||||
string curLine = lines[i].Substring(1).Trim();
|
string curLine = Regex.Replace(lines[i].Substring(1), @"\s+", "");
|
||||||
if ((curLine.StartsWith("Show") || curLine.StartsWith("Hide")) && (curLine.Length == 4 || curLine[4] == ' ') && !inBlock[i])
|
if ((curLine.StartsWith("Show") || curLine.StartsWith("Hide")) && (curLine.Length == 4 || curLine[4] == '#') && !inBlock[i])
|
||||||
{
|
{
|
||||||
inDisabledBlock = true;
|
inDisabledBlock = true;
|
||||||
lines[i] = lines[i].Substring(1).TrimStart(' ');
|
lines[i] = lines[i].Substring(1).TrimStart(' ');
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.0.4.0" newVersion="2.0.4.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
5
Filtration.Parser/packages.config
Normal file
5
Filtration.Parser/packages.config
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Castle.Core" version="3.3.3" targetFramework="net461" />
|
||||||
|
<package id="Castle.Windsor" version="3.4.0" targetFramework="net461" />
|
||||||
|
</packages>
|
@ -12,8 +12,6 @@
|
|||||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||||
<FileAlignment>512</FileAlignment>
|
<FileAlignment>512</FileAlignment>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
<NuGetPackageImportStamp>
|
|
||||||
</NuGetPackageImportStamp>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
@ -33,9 +31,24 @@
|
|||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="FluentAssertions, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="FluentAssertions.Core, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.Core.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
@ -53,11 +66,11 @@
|
|||||||
<Compile Include="Repositories\TestItemFilterScriptRepository.cs" />
|
<Compile Include="Repositories\TestItemFilterScriptRepository.cs" />
|
||||||
<Compile Include="Services\TestHTTPService.cs" />
|
<Compile Include="Services\TestHTTPService.cs" />
|
||||||
<Compile Include="Services\TestItemFilterPersistenceService.cs" />
|
<Compile Include="Services\TestItemFilterPersistenceService.cs" />
|
||||||
<Compile Include="Services\TestItemFilterScriptDirectoryService.cs" />
|
|
||||||
<Compile Include="Services\TestUpdateService.cs" />
|
<Compile Include="Services\TestUpdateService.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="app.config" />
|
<None Include="app.config" />
|
||||||
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Folder Include="Models\" />
|
<Folder Include="Models\" />
|
||||||
@ -96,32 +109,6 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Castle.Core">
|
|
||||||
<Version>4.4.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="FluentAssertions">
|
|
||||||
<Version>5.6.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Moq">
|
|
||||||
<Version>4.10.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="NUnit">
|
|
||||||
<Version>3.11.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Threading.Tasks.Extensions">
|
|
||||||
<Version>4.5.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.ValueTuple">
|
|
||||||
<Version>4.5.0</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="WindowsAPICodePack-Core">
|
|
||||||
<Version>1.1.2</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="WindowsAPICodePack-Shell">
|
|
||||||
<Version>1.1.1</Version>
|
|
||||||
</PackageReference>
|
|
||||||
</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.
|
||||||
|
@ -60,7 +60,50 @@ namespace Filtration.Tests.Repositories
|
|||||||
Func<Task<IItemFilterScriptViewModel>> result = async () => await repository.LoadScriptFromFileAsync(testInputPath);
|
Func<Task<IItemFilterScriptViewModel>> result = async () => await repository.LoadScriptFromFileAsync(testInputPath);
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Throw<IOException>();
|
result.ShouldThrow<IOException>();
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void SetItemFilterScriptDirectory_CallsPersistenceServiceSetItemFilterScriptDirectory()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var testInputPath = "C:\\Test\\Path";
|
||||||
|
|
||||||
|
var mockPersistenceService = new Mock<IItemFilterPersistenceService>();
|
||||||
|
mockPersistenceService.Setup(p => p.SetItemFilterScriptDirectory(testInputPath)).Verifiable();
|
||||||
|
|
||||||
|
var mockItemFilterScriptViewModelFactory = new Mock<IItemFilterScriptViewModelFactory>();
|
||||||
|
|
||||||
|
var repository = CreateItemFilterScriptRepository(itemFilterPersistenceService: mockPersistenceService.Object,
|
||||||
|
itemFilterScriptViewModelFactory: mockItemFilterScriptViewModelFactory.Object);
|
||||||
|
|
||||||
|
// Act
|
||||||
|
repository.SetItemFilterScriptDirectory(testInputPath);
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
mockPersistenceService.Verify();
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void GetItemFilterScriptDirectory_ReturnsItemFilterScriptDirectoryFromPersistenceService()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var testInputPath = "C:\\Test\\Path";
|
||||||
|
|
||||||
|
var mockPersistenceService = new Mock<IItemFilterPersistenceService>();
|
||||||
|
mockPersistenceService.SetupGet(p => p.ItemFilterScriptDirectory).Returns(testInputPath).Verifiable();
|
||||||
|
|
||||||
|
var mockItemFilterScriptViewModelFactory = new Mock<IItemFilterScriptViewModelFactory>();
|
||||||
|
|
||||||
|
var repository = CreateItemFilterScriptRepository(itemFilterPersistenceService: mockPersistenceService.Object,
|
||||||
|
itemFilterScriptViewModelFactory: mockItemFilterScriptViewModelFactory.Object);
|
||||||
|
|
||||||
|
// Act
|
||||||
|
string result = repository.GetItemFilterScriptDirectory();
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
mockPersistenceService.Verify();
|
||||||
|
Assert.AreEqual(result, testInputPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user