Compare commits
56 Commits
1.1.0-beta
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
bb715f6583 | ||
|
416f145d3f | ||
|
92759871b4 | ||
|
322afa1c3f | ||
|
8ea26a4614 | ||
|
dcd963a210 | ||
|
757fc46e6b | ||
|
7a6747ebad | ||
|
309be5e881 | ||
|
785524f3ab | ||
|
fdec69789e | ||
|
4afff926b8 | ||
|
4290688ac0 | ||
|
7c31ba393c | ||
|
7bab2e3392 | ||
|
cb6b61c66c | ||
|
ab7cbf5ce4 | ||
|
02eafb4c62 | ||
|
992c6f510a | ||
|
85c215382b | ||
|
c44d7b6095 | ||
|
717a0a83a9 | ||
|
1f9a1c5196 | ||
|
dea0378a16 | ||
|
4862452188 | ||
|
db258de11e | ||
|
e2a92e10bb | ||
|
444f09751a | ||
|
9356f55209 | ||
|
fb7bd8b81e | ||
|
72ed517929 | ||
|
290547cbba | ||
|
065e56e0a6 | ||
|
d686e6da39 | ||
|
79398667b4 | ||
|
2424ab9195 | ||
|
491f448f94 | ||
|
2f49e85227 | ||
|
dce0af7fd6 | ||
|
208aeb39f6 | ||
|
79274df0fb | ||
|
4052d6e020 | ||
|
7c0da57570 | ||
|
557767f4dc | ||
|
ad1b46f975 | ||
|
9f17d84a7f | ||
|
0fe21336e6 | ||
|
2ba1b8adac | ||
|
2415be089b | ||
|
cde2d692c9 | ||
|
c96aa472d9 | ||
|
d4e8a72d47 | ||
|
4c826f42fd | ||
|
4022cf12a0 | ||
|
8073948cfe | ||
|
f331bffee7 |
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\NUnit.3.11.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.11.0\build\NUnit.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@ -34,27 +33,9 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Moq, Version=4.10.0.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Moq.4.10.0\lib\net45\Moq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework, Version=3.11.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NUnit.3.11.0\lib\net45\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@ -66,15 +47,25 @@
|
||||
</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>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.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\NUnit.3.11.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.11.0\build\NUnit.props'))" />
|
||||
</Target>
|
||||
<!-- 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.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Moq" version="4.10.0" targetFramework="net461" />
|
||||
<package id="NUnit" version="3.11.0" targetFramework="net461" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
</packages>
|
@ -31,24 +31,6 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Windsor, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Windsor.4.1.1\lib\net45\Castle.Windsor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="CommonServiceLocator, Version=2.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\CommonServiceLocator.2.0.4\lib\net46\CommonServiceLocator.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight, Version=5.4.1.0, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.4.1.0, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.4.1.0, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="System" />
|
||||
@ -56,9 +38,6 @@
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Runtime.Remoting" />
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xaml" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
@ -80,12 +59,13 @@
|
||||
<Compile Include="Services\FileSystemService.cs" />
|
||||
<Compile Include="Services\MessageBoxService.cs" />
|
||||
<Compile Include="Utilities\LineReader.cs" />
|
||||
<Compile Include="Utilities\PathOfExileColors.cs" />
|
||||
<Compile Include="Utilities\VisualTreeUtility.cs" />
|
||||
<Compile Include="ViewModels\PaneViewModel.cs" />
|
||||
<Compile Include="WindsorInstallers\ServicesInstaller.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
||||
@ -99,6 +79,23 @@
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
</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" />
|
||||
<!-- 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.
|
||||
|
@ -2,9 +2,9 @@
|
||||
using System.Windows.Media;
|
||||
using Xceed.Wpf.Toolkit;
|
||||
|
||||
namespace Filtration.Views
|
||||
namespace Filtration.Common.Utilities
|
||||
{
|
||||
internal static class PathOfExileColors
|
||||
public static class PathOfExileColors
|
||||
{
|
||||
static PathOfExileColors()
|
||||
{
|
@ -1,7 +1,7 @@
|
||||
using System.Windows;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace Filtration.Utility
|
||||
namespace Filtration.Common.Utilities
|
||||
{
|
||||
public class VisualTreeUtility
|
||||
{
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Castle.Windsor" version="4.1.1" targetFramework="net461" />
|
||||
<package id="CommonServiceLocator" version="2.0.4" targetFramework="net461" />
|
||||
<package id="MvvmLightLibs" version="5.4.1.1" targetFramework="net461" />
|
||||
</packages>
|
@ -31,24 +31,9 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="CommonServiceLocator, Version=2.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\CommonServiceLocator.2.0.4\lib\net46\CommonServiceLocator.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight, Version=5.4.1.0, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.4.1.0, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.4.1.0, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@ -63,7 +48,14 @@
|
||||
</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>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- 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 IsTheme { get; }
|
||||
Task Close();
|
||||
Task<bool> Close();
|
||||
RelayCommand CloseCommand { get; }
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="CommonServiceLocator" version="2.0.4" targetFramework="net461" />
|
||||
<package id="MvvmLightLibs" version="5.4.1.1" targetFramework="net461" />
|
||||
</packages>
|
@ -2,7 +2,7 @@
|
||||
<configuration>
|
||||
<configSections>
|
||||
<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>
|
||||
<entityFramework>
|
||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
||||
@ -22,12 +22,7 @@
|
||||
<connectionStrings>
|
||||
<add name="FiltrationDbContext" connectionString="data source="D:\C# Projects\Filtration\Filtration.db"" providerName="System.Data.SQLite.EF6" />
|
||||
</connectionStrings>
|
||||
<system.data>
|
||||
<DbProviderFactories>
|
||||
<remove invariant="System.Data.SQLite.EF6" />
|
||||
<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" />
|
||||
<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>
|
||||
</system.data>
|
||||
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
|
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\NUnit.3.11.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.11.0\build\NUnit.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
@ -39,26 +38,8 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.SqlServer.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework, Version=3.11.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NUnit.3.11.0\lib\net45\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.109.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.109.2\lib\net46\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Data.SQLite.EF6, Version=1.0.109.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.EF6.1.0.109.0\lib\net46\System.Data.SQLite.EF6.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Data.SQLite.Linq, Version=1.0.109.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Linq.1.0.109.0\lib\net46\System.Data.SQLite.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<Choose>
|
||||
<When Condition="('$(VisualStudioVersion)' == '10.0' or '$(VisualStudioVersion)' == '') and '$(TargetFrameworkVersion)' == 'v3.5'">
|
||||
@ -78,7 +59,6 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Filtration.ItemFilterPreview.Data\Filtration.ItemFilterPreview.Data.csproj">
|
||||
@ -90,6 +70,17 @@
|
||||
<Name>Filtration.ObjectModel</Name>
|
||||
</ProjectReference>
|
||||
</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>
|
||||
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
|
||||
<ItemGroup>
|
||||
@ -110,14 +101,6 @@
|
||||
</Choose>
|
||||
<Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.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\NUnit.3.11.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.11.0\build\NUnit.props'))" />
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets')" />
|
||||
<!-- 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.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="EntityFramework" version="6.2.0" targetFramework="net461" />
|
||||
<package id="NUnit" version="3.11.0" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite" version="1.0.109.2" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.109.2" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite.EF6" version="1.0.109.0" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite.Linq" version="1.0.109.0" targetFramework="net461" />
|
||||
</packages>
|
@ -2,7 +2,7 @@
|
||||
<configuration>
|
||||
<configSections>
|
||||
<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>
|
||||
<entityFramework>
|
||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
||||
@ -21,12 +21,7 @@
|
||||
<connectionStrings>
|
||||
<add name="FiltrationDbContext" connectionString="data source="D:\C# Projects\Filtration\Filtration.db"" providerName="System.Data.SQLite.EF6" />
|
||||
</connectionStrings>
|
||||
<system.data>
|
||||
<DbProviderFactories>
|
||||
<remove invariant="System.Data.SQLite.EF6" />
|
||||
<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" />
|
||||
<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>
|
||||
</system.data>
|
||||
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
|
@ -33,24 +33,9 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.SqlServer.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.109.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.109.2\lib\net46\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Data.SQLite.EF6, Version=1.0.109.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.EF6.1.0.109.0\lib\net46\System.Data.SQLite.EF6.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Data.SQLite.Linq, Version=1.0.109.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Linq.1.0.109.0\lib\net46\System.Data.SQLite.Linq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.Security" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
@ -68,7 +53,6 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
|
||||
@ -76,14 +60,15 @@
|
||||
<Name>Filtration.ObjectModel</Name>
|
||||
</ProjectReference>
|
||||
</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="..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.109.2\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.109.2\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.109.2\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.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="EntityFramework" version="6.2.0" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite" version="1.0.109.2" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.109.2" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite.EF6" version="1.0.109.0" targetFramework="net461" />
|
||||
<package id="System.Data.SQLite.Linq" version="1.0.109.0" targetFramework="net461" />
|
||||
</packages>
|
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\NUnit.3.11.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.11.0\build\NUnit.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
@ -45,29 +44,8 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="FluentAssertions, Version=5.5.3.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\FluentAssertions.5.5.3\lib\net45\FluentAssertions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Moq, Version=4.10.0.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Moq.4.10.0\lib\net45\Moq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework, Version=3.11.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NUnit.3.11.0\lib\net45\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
</ItemGroup>
|
||||
@ -119,16 +97,29 @@
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Resources\MuldiniFilterScript.txt" />
|
||||
</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" />
|
||||
<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\NUnit.3.11.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.11.0\build\NUnit.props'))" />
|
||||
</Target>
|
||||
<!-- 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.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -4,7 +4,7 @@
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Xceed.Wpf.AvalonDock" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.4.0.0" newVersion="3.4.0.0" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="ControlzEx" publicKeyToken="f08b075e934b7045" culture="neutral" />
|
||||
@ -12,7 +12,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Xceed.Wpf.Toolkit" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.9.0.0" newVersion="2.9.0.0" />
|
||||
<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" />
|
||||
|
@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="FluentAssertions" version="5.5.3" targetFramework="net461" />
|
||||
<package id="Moq" version="4.10.0" targetFramework="net461" />
|
||||
<package id="NUnit" version="3.11.0" targetFramework="net461" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
</packages>
|
@ -36,44 +36,11 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Windsor, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Windsor.4.1.1\lib\net45\Castle.Windsor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="CommonServiceLocator, Version=2.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\CommonServiceLocator.2.0.4\lib\net46\CommonServiceLocator.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight, Version=5.4.1.0, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.4.1.0, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.4.1.0, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Moq, Version=4.10.0.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Moq.4.10.0\lib\net45\Moq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Remoting" />
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Core" />
|
||||
@ -159,7 +126,6 @@
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
@ -197,6 +163,29 @@
|
||||
<ItemGroup>
|
||||
<Folder Include="Model\" />
|
||||
</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" />
|
||||
<!-- 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.
|
||||
|
@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Castle.Windsor" version="4.1.1" targetFramework="net461" />
|
||||
<package id="CommonServiceLocator" version="2.0.4" targetFramework="net461" />
|
||||
<package id="Moq" version="4.10.0" targetFramework="net461" />
|
||||
<package id="MvvmLightLibs" version="5.4.1.1" targetFramework="net461" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
</packages>
|
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\NUnit.3.11.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.11.0\build\NUnit.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@ -34,28 +33,10 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Moq, Version=4.10.0.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Moq.4.10.0\lib\net45\Moq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework, Version=3.11.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NUnit.3.11.0\lib\net45\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@ -77,18 +58,28 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
||||
</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" />
|
||||
<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\NUnit.3.11.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.11.0\build\NUnit.props'))" />
|
||||
</Target>
|
||||
<!-- 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.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Moq" version="4.10.0" targetFramework="net461" />
|
||||
<package id="NUnit" version="3.11.0" targetFramework="net461" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
</packages>
|
16
Filtration.ObjectModel/BlockItemBaseTypes/NilBlockItem.cs
Normal file
16
Filtration.ObjectModel/BlockItemBaseTypes/NilBlockItem.cs
Normal file
@ -0,0 +1,16 @@
|
||||
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; }
|
||||
}
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
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;
|
||||
}
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
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;
|
||||
}
|
||||
}
|
@ -4,18 +4,15 @@ using Filtration.ObjectModel.Enums;
|
||||
|
||||
namespace Filtration.ObjectModel.BlockItemTypes
|
||||
{
|
||||
public sealed class DisableDropSoundBlockItem : BooleanBlockItem, IAudioVisualBlockItem
|
||||
public sealed class DisableDropSoundBlockItem : NilBlockItem, IAudioVisualBlockItem
|
||||
{
|
||||
public DisableDropSoundBlockItem()
|
||||
{
|
||||
}
|
||||
|
||||
public DisableDropSoundBlockItem(bool booleanValue) : base(booleanValue)
|
||||
public DisableDropSoundBlockItem() : base()
|
||||
{
|
||||
}
|
||||
|
||||
public override string PrefixText => "DisableDropSound";
|
||||
public override string DisplayHeading => "Disable Drop Sound";
|
||||
public override string Description => "Default drop sound disabled.";
|
||||
public override Color SummaryBackgroundColor => Colors.Transparent;
|
||||
public override Color SummaryTextColor => Colors.Transparent;
|
||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.DisableDropSound;
|
||||
|
@ -0,0 +1,23 @@
|
||||
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;
|
||||
}
|
||||
}
|
@ -0,0 +1,39 @@
|
||||
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;
|
||||
}
|
||||
}
|
@ -23,6 +23,6 @@ namespace Filtration.ObjectModel.BlockItemTypes
|
||||
public override Color SummaryTextColor => Colors.White;
|
||||
public override BlockItemOrdering SortOrder => BlockItemOrdering.Quality;
|
||||
public override int Minimum => 0;
|
||||
public override int Maximum => 30;
|
||||
public override int Maximum => 99;
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,23 @@
|
||||
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;
|
||||
}
|
||||
}
|
@ -12,9 +12,13 @@ namespace Filtration.ObjectModel.Enums
|
||||
Corrupted,
|
||||
ElderItem,
|
||||
ShaperItem,
|
||||
SynthesisedItem,
|
||||
FracturedItem,
|
||||
AnyEnchantment,
|
||||
MapTier,
|
||||
ShapedMap,
|
||||
ElderMap,
|
||||
BligtedMap,
|
||||
SocketGroup,
|
||||
Height,
|
||||
Width,
|
||||
@ -27,6 +31,7 @@ namespace Filtration.ObjectModel.Enums
|
||||
BaseType,
|
||||
Prophecy,
|
||||
HasExplicitMod,
|
||||
HasEnchantment,
|
||||
SetTextColor,
|
||||
SetBackgroundColor,
|
||||
SetBorderColor,
|
||||
|
@ -4,8 +4,6 @@ namespace Filtration.ObjectModel.Enums
|
||||
{
|
||||
public enum ItemRarity
|
||||
{
|
||||
[Description("Not Set")]
|
||||
NotSet,
|
||||
[Description("Normal")]
|
||||
Normal,
|
||||
[Description("Magic")]
|
||||
|
@ -16,23 +16,20 @@ namespace Filtration.ObjectModel.Extensions
|
||||
}
|
||||
case ItemRarity.Normal:
|
||||
{
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.WhiteItem];
|
||||
}
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.WhiteItem];
|
||||
}
|
||||
case ItemRarity.Rare:
|
||||
{
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.RareItem];
|
||||
}
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.RareItem];
|
||||
}
|
||||
case ItemRarity.Unique:
|
||||
{
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.UniqueItem];
|
||||
}
|
||||
case ItemRarity.NotSet:
|
||||
{
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.QuestItem];
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.UniqueItem];
|
||||
}
|
||||
|
||||
default:
|
||||
{
|
||||
throw new ArgumentOutOfRangeException(nameof(itemRarity), itemRarity, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -31,24 +31,6 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Windsor, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Windsor.4.1.1\lib\net45\Castle.Windsor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="CommonServiceLocator, Version=2.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\CommonServiceLocator.2.0.4\lib\net46\CommonServiceLocator.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight, Version=5.4.1.0, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.4.1.0, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.4.1.0, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="System" />
|
||||
@ -57,9 +39,6 @@
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Runtime.Remoting" />
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@ -75,13 +54,18 @@
|
||||
<Compile Include="BlockItemBaseTypes\DualIntegerBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\EffectColorBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\IconBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\NilBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\StringBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\StrIntBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\IntegerBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\NumericFilterPredicateBlockItem.cs" />
|
||||
<Compile Include="BlockItemBaseTypes\StringListBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\AnyEnchantmentBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\BackgroundColorBlockItem.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\PlayEffectBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\BorderColorBlockItem.cs" />
|
||||
@ -94,6 +78,7 @@
|
||||
<Compile Include="BlockItemTypes\MapIconBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\ProphecyBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\ShapedMapBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\SynthesisedItemBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\ShaperItemBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\ElderItemBlockItem.cs" />
|
||||
<Compile Include="BlockItemTypes\CorruptedBlockItem.cs" />
|
||||
@ -172,7 +157,20 @@
|
||||
</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>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
@ -121,10 +121,8 @@ namespace Filtration.ObjectModel
|
||||
return PathOfExileNamedColors.Colors[PathOfExileNamedColor.QuestItem];
|
||||
}
|
||||
|
||||
return ItemRarity != ItemRarity.NotSet ? ItemRarity.DefaultRarityTextColor() : PathOfExileNamedColors.Colors[PathOfExileNamedColor.WhiteItem];
|
||||
return ItemRarity.DefaultRarityTextColor();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -279,7 +279,7 @@ namespace Filtration.ObjectModel
|
||||
get
|
||||
{
|
||||
var borderColorBlockItem = BlockItems.OfType<BorderColorBlockItem>().FirstOrDefault();
|
||||
return borderColorBlockItem?.Color ?? new Color { A = 240, R = 0, G = 0, B = 0 };
|
||||
return borderColorBlockItem?.Color ?? new Color { A = 0, R = 255, G = 255, B = 255 };
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Castle.Windsor" version="4.1.1" targetFramework="net461" />
|
||||
<package id="CommonServiceLocator" version="2.0.4" targetFramework="net461" />
|
||||
<package id="MvvmLightLibs" version="5.4.1.1" targetFramework="net461" />
|
||||
</packages>
|
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\NUnit.3.11.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.11.0\build\NUnit.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
@ -39,30 +38,9 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="FluentAssertions, Version=5.5.3.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\FluentAssertions.5.5.3\lib\net45\FluentAssertions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Moq, Version=4.10.0.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Moq.4.10.0\lib\net45\Moq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework, Version=3.11.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NUnit.3.11.0\lib\net45\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
</ItemGroup>
|
||||
@ -117,11 +95,30 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Resources\testscript2.txt" />
|
||||
</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>
|
||||
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
|
||||
<ItemGroup>
|
||||
@ -142,12 +139,6 @@
|
||||
</Choose>
|
||||
<Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.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\NUnit.3.11.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.11.0\build\NUnit.props'))" />
|
||||
</Target>
|
||||
<!-- 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.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -919,7 +919,7 @@ namespace Filtration.Parser.Tests.Services
|
||||
{
|
||||
// Arrange
|
||||
var inputString = "Show" + Environment.NewLine +
|
||||
" DisableDropSound True";
|
||||
" DisableDropSound # Test";
|
||||
|
||||
// Act
|
||||
var result = _testUtility.Translator.TranslateStringToItemFilterBlock(inputString, _testUtility.MockItemFilterScript);
|
||||
@ -928,7 +928,22 @@ namespace Filtration.Parser.Tests.Services
|
||||
|
||||
Assert.AreEqual(1, result.BlockItems.Count(b => b is DisableDropSoundBlockItem));
|
||||
var blockItem = result.BlockItems.OfType<DisableDropSoundBlockItem>().First();
|
||||
Assert.IsTrue(blockItem.BooleanValue);
|
||||
Assert.AreEqual(blockItem.Comment, " Test");
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TranslateStringToItemFilterBlock_DisableDropSound_IncorrectBooleanValue_ReturnsCorrectObject()
|
||||
{
|
||||
// Arrange
|
||||
var inputString = "Show" + Environment.NewLine +
|
||||
" DisableDropSound True";
|
||||
|
||||
// Act
|
||||
var result = _testUtility.Translator.TranslateStringToItemFilterBlock(inputString, _testUtility.MockItemFilterScript);
|
||||
|
||||
// Assert
|
||||
|
||||
Assert.AreEqual(1, result.BlockItems.Count(b => b is DisableDropSoundBlockItem));
|
||||
}
|
||||
|
||||
[Test]
|
||||
@ -965,7 +980,7 @@ namespace Filtration.Parser.Tests.Services
|
||||
" SetBorderColor 0 0 0" + Environment.NewLine +
|
||||
" SetFontSize 50" + Environment.NewLine +
|
||||
" PlayAlertSound 3" + Environment.NewLine +
|
||||
" DisableDropSound False" + Environment.NewLine +
|
||||
" DisableDropSound # False" + Environment.NewLine +
|
||||
" CustomAlertSound \"test.mp3\" # customSoundTheme" + Environment.NewLine +
|
||||
" MinimapIcon 2 Green Triangle # iconTheme" + Environment.NewLine +
|
||||
" PlayEffect Green Temp # effectTheme" + Environment.NewLine;
|
||||
@ -1075,7 +1090,7 @@ namespace Filtration.Parser.Tests.Services
|
||||
Assert.AreEqual(0, result.BlockItems.OfType<SoundBlockItem>().Count());
|
||||
|
||||
var disableDropSoundBlockItem = result.BlockItems.OfType<DisableDropSoundBlockItem>().First();
|
||||
Assert.IsFalse(disableDropSoundBlockItem.BooleanValue);
|
||||
Assert.AreEqual(disableDropSoundBlockItem.Comment, " False");
|
||||
|
||||
var customSoundBlockItem = result.BlockItems.OfType<CustomSoundBlockItem>().First();
|
||||
Assert.AreEqual("test.mp3", customSoundBlockItem.Value);
|
||||
@ -2065,7 +2080,7 @@ namespace Filtration.Parser.Tests.Services
|
||||
" SetBorderColor 255 1 254" + Environment.NewLine +
|
||||
" SetFontSize 50" + Environment.NewLine +
|
||||
" PlayAlertSound 6 90" + Environment.NewLine +
|
||||
" DisableDropSound True" + Environment.NewLine +
|
||||
" DisableDropSound" + Environment.NewLine +
|
||||
" MinimapIcon 1 Blue Circle" + Environment.NewLine +
|
||||
" PlayEffect Red Temp" + Environment.NewLine +
|
||||
" CustomAlertSound \"test.mp3\"";
|
||||
@ -2120,7 +2135,7 @@ namespace Filtration.Parser.Tests.Services
|
||||
_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 PlayEffectBlockItem(EffectColor.Red, true));
|
||||
_testUtility.TestBlock.BlockItems.Add(new DisableDropSoundBlockItem(true));
|
||||
_testUtility.TestBlock.BlockItems.Add(new DisableDropSoundBlockItem());
|
||||
|
||||
// Act
|
||||
var result = _testUtility.Translator.TranslateItemFilterBlockToString(_testUtility.TestBlock);
|
||||
|
@ -322,7 +322,13 @@ namespace Filtration.Parser.Tests.Services
|
||||
Environment.NewLine +
|
||||
"Show" + Environment.NewLine +
|
||||
" ItemLevel > 20" + Environment.NewLine +
|
||||
" SetTextColor 255 255 0";
|
||||
" SetTextColor 255 255 0" + Environment.NewLine +
|
||||
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>());
|
||||
@ -332,15 +338,21 @@ namespace Filtration.Parser.Tests.Services
|
||||
var result = translator.TranslateStringToItemFilterScript(testInputScript);
|
||||
|
||||
// Assert
|
||||
Assert.AreEqual(3, result.ItemFilterBlocks.Count);
|
||||
Assert.AreEqual(5, result.ItemFilterBlocks.Count);
|
||||
|
||||
var firstBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().First();
|
||||
var secondBlock = result.ItemFilterBlocks.OfType<ItemFilterBlock>().Skip(1).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(5, secondBlock.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]
|
||||
|
@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="FluentAssertions" version="5.5.3" targetFramework="net461" />
|
||||
<package id="Moq" version="4.10.0" targetFramework="net461" />
|
||||
<package id="NUnit" version="3.11.0" targetFramework="net461" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
</packages>
|
@ -31,12 +31,6 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Windsor, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Windsor.4.1.1\lib\net45\Castle.Windsor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="System" />
|
||||
@ -71,7 +65,6 @@
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Filtration.Common\Filtration.Common.csproj">
|
||||
@ -87,6 +80,14 @@
|
||||
<Name>Filtration.Parser.Interface</Name>
|
||||
</ProjectReference>
|
||||
</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" />
|
||||
<!-- 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.
|
||||
|
@ -184,6 +184,21 @@ namespace Filtration.Parser.Services
|
||||
AddBooleanItemToBlockItems<ShaperItemBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "SynthesisedItem":
|
||||
{
|
||||
AddBooleanItemToBlockItems<SynthesisedItemBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "FracturedItem":
|
||||
{
|
||||
AddBooleanItemToBlockItems<FracturedItemBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "AnyEnchantment":
|
||||
{
|
||||
AddBooleanItemToBlockItems<AnyEnchantmentBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "ShapedMap":
|
||||
{
|
||||
AddBooleanItemToBlockItems<ShapedMapBlockItem>(block, trimmedLine);
|
||||
@ -317,6 +332,11 @@ namespace Filtration.Parser.Services
|
||||
AddStringListItemToBlockItems<HasExplicitModBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "HasEnchantment":
|
||||
{
|
||||
AddStringListItemToBlockItems<HasEnchantmentBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "ElderMap":
|
||||
{
|
||||
AddBooleanItemToBlockItems<ElderMapBlockItem>(block, trimmedLine);
|
||||
@ -327,7 +347,7 @@ namespace Filtration.Parser.Services
|
||||
// Only ever use the last DisableDropSound item encountered as multiples aren't valid.
|
||||
RemoveExistingBlockItemsOfType<DisableDropSoundBlockItem>(block);
|
||||
|
||||
AddBooleanItemToBlockItems<DisableDropSoundBlockItem>(block, trimmedLine);
|
||||
AddNilItemToBlockItems<DisableDropSoundBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "MinimapIcon":
|
||||
@ -349,12 +369,6 @@ namespace Filtration.Parser.Services
|
||||
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);
|
||||
themeComponentType = (int)ThemeComponentType.Icon;
|
||||
}
|
||||
@ -405,6 +419,11 @@ namespace Filtration.Parser.Services
|
||||
AddNumericFilterPredicateItemToBlockItems<MapTierBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
case "BlightedMap":
|
||||
{
|
||||
AddBooleanItemToBlockItems<BlightedMapBlockItem>(block, trimmedLine);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(blockComment) && block.BlockItems.Count > 1)
|
||||
@ -512,6 +531,13 @@ 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
|
||||
{
|
||||
var blockItem = Activator.CreateInstance<T>();
|
||||
@ -566,12 +592,17 @@ namespace Filtration.Parser.Services
|
||||
var trimmedLine = line.Trim();
|
||||
if (trimmedLine.IndexOf('#') > 0)
|
||||
{
|
||||
blockComment = trimmedLine.Substring(trimmedLine.IndexOf('#') + 1);
|
||||
blockComment = trimmedLine.Substring(trimmedLine.IndexOf('#') + 1).Trim();
|
||||
trimmedLine = trimmedLine.Substring(0, trimmedLine.IndexOf('#')).Trim();
|
||||
}
|
||||
|
||||
switch (matches.Value)
|
||||
{
|
||||
case "DisableDropSound":
|
||||
{
|
||||
blockItems.Add(new DisableDropSoundBlockItem());
|
||||
break;
|
||||
}
|
||||
case "PlayAlertSound":
|
||||
{
|
||||
var match = Regex.Match(trimmedLine, @"\s+(\S+) (\d+)");
|
||||
@ -586,6 +617,20 @@ namespace Filtration.Parser.Services
|
||||
blockItems.Add(blockItem);
|
||||
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":
|
||||
{
|
||||
var result = Regex.Matches(trimmedLine, @"([\w\s]*)");
|
||||
@ -642,6 +687,56 @@ namespace Filtration.Parser.Services
|
||||
blockItems.Add(blockItem);
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -61,8 +61,7 @@ namespace Filtration.Parser.Services
|
||||
lines[i] = lines[i].Trim();
|
||||
if(!lines[i].StartsWith("#"))
|
||||
{
|
||||
string curLine = Regex.Replace(lines[i], @"\s+", "");
|
||||
if ((curLine.StartsWith("Show") || curLine.StartsWith("Hide")) && (curLine.Length == 4 || curLine[4] == '#')) // found
|
||||
if ((lines[i].StartsWith("Show") || lines[i].StartsWith("Hide")) && (lines[i].Length == 4 || lines[i][4] == ' ')) // found
|
||||
{
|
||||
inBlock[i] = true;
|
||||
break;
|
||||
@ -98,8 +97,8 @@ namespace Filtration.Parser.Services
|
||||
{
|
||||
if (!inDisabledBlock && lines[i].StartsWith("#"))
|
||||
{
|
||||
string curLine = Regex.Replace(lines[i].Substring(1), @"\s+", "");
|
||||
if ((curLine.StartsWith("Show") || curLine.StartsWith("Hide")) && (curLine.Length == 4 || curLine[4] == '#') && !inBlock[i])
|
||||
string curLine = lines[i].Substring(1).Trim();
|
||||
if ((curLine.StartsWith("Show") || curLine.StartsWith("Hide")) && (curLine.Length == 4 || curLine[4] == ' ') && !inBlock[i])
|
||||
{
|
||||
inDisabledBlock = true;
|
||||
lines[i] = lines[i].Substring(1).TrimStart(' ');
|
||||
|
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Castle.Windsor" version="4.1.1" targetFramework="net461" />
|
||||
</packages>
|
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\NUnit.3.11.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.11.0\build\NUnit.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@ -34,37 +33,10 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="FluentAssertions, Version=5.5.3.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\FluentAssertions.5.5.3\lib\net45\FluentAssertions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAPICodePack, Version=1.1.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\WindowsAPICodePack-Core.1.1.2\lib\Microsoft.WindowsAPICodePack.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAPICodePack.Shell, Version=1.1.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\WindowsAPICodePack-Shell.1.1.1\lib\Microsoft.WindowsAPICodePack.Shell.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Moq, Version=4.10.0.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Moq.4.10.0\lib\net45\Moq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework, Version=3.11.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NUnit.3.11.0\lib\net45\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@ -86,7 +58,6 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Models\" />
|
||||
@ -125,13 +96,33 @@
|
||||
<ItemGroup>
|
||||
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
||||
</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" />
|
||||
<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\NUnit.3.11.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.11.0\build\NUnit.props'))" />
|
||||
</Target>
|
||||
<!-- 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.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -4,7 +4,7 @@
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Xceed.Wpf.AvalonDock" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.4.0.0" newVersion="3.4.0.0" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="ControlzEx" publicKeyToken="f08b075e934b7045" culture="neutral" />
|
||||
@ -16,7 +16,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Xceed.Wpf.Toolkit" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.9.0.0" newVersion="2.9.0.0" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="CommonServiceLocator" publicKeyToken="489b6accfaf20ef0" culture="neutral" />
|
||||
|
@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="FluentAssertions" version="5.5.3" targetFramework="net461" />
|
||||
<package id="Moq" version="4.10.0" targetFramework="net461" />
|
||||
<package id="NUnit" version="3.11.0" targetFramework="net461" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
<package id="WindowsAPICodePack-Core" version="1.1.2" targetFramework="net461" />
|
||||
<package id="WindowsAPICodePack-Shell" version="1.1.1" targetFramework="net461" />
|
||||
</packages>
|
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\NUnit.3.11.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.11.0\build\NUnit.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@ -34,28 +33,10 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Moq, Version=4.10.0.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Moq.4.10.0\lib\net45\Moq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="nunit.framework, Version=3.11.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NUnit.3.11.0\lib\net45\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
@ -84,18 +65,28 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
||||
</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" />
|
||||
<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\NUnit.3.11.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.11.0\build\NUnit.props'))" />
|
||||
</Target>
|
||||
<!-- 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.
|
||||
<Target Name="BeforeBuild">
|
||||
|
@ -22,6 +22,10 @@
|
||||
<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="Xceed.Wpf.Toolkit" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Moq" version="4.10.0" targetFramework="net461" />
|
||||
<package id="NUnit" version="3.11.0" targetFramework="net461" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
</packages>
|
@ -31,30 +31,6 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="AutoMapper, Version=8.0.0.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\AutoMapper.8.0.0\lib\net461\AutoMapper.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Windsor, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Windsor.4.1.1\lib\net45\Castle.Windsor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="CommonServiceLocator, Version=2.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\CommonServiceLocator.2.0.4\lib\net46\CommonServiceLocator.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight, Version=5.4.1.0, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.4.1.0, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.4.1.0, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NLog.4.5.11\lib\net45\NLog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="System" />
|
||||
@ -66,14 +42,8 @@
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xaml" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
@ -81,24 +51,6 @@
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="WindowsBase" />
|
||||
<Reference Include="Xceed.Wpf.AvalonDock, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock.Themes.Aero, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock.Themes.Metro, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock.Themes.VS2010, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.DataGrid, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.DataGrid.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.Toolkit, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.Toolkit.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Converters\ThemeComponentTypeToStringConverter.cs" />
|
||||
@ -156,7 +108,32 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<WCFMetadata Include="Connected Services\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="AutoMapper">
|
||||
<Version>8.0.0</Version>
|
||||
</PackageReference>
|
||||
<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>
|
||||
<PackageReference Include="NLog">
|
||||
<Version>4.6.2</Version>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
@ -23,7 +23,6 @@ namespace Filtration.ThemeEditor.ViewModels
|
||||
{
|
||||
RelayCommand<ThemeComponentType> AddThemeComponentCommand { get; }
|
||||
RelayCommand<ThemeComponent> DeleteThemeComponentCommand { get; }
|
||||
RelayCommand CloseCommand { get; }
|
||||
|
||||
void InitialiseForNewTheme(ThemeComponentCollection themeComponentCollection);
|
||||
void InitialiseForMasterTheme(IItemFilterScript script);
|
||||
@ -186,10 +185,11 @@ namespace Filtration.ThemeEditor.ViewModels
|
||||
}
|
||||
|
||||
#pragma warning disable 1998
|
||||
public async Task Close()
|
||||
public async Task<bool> Close()
|
||||
#pragma warning restore 1998
|
||||
{
|
||||
Messenger.Default.Send(new ThemeClosedMessage {ClosedViewModel = this});
|
||||
return true;
|
||||
}
|
||||
|
||||
private void OnAddThemeComponentCommand(ThemeComponentType themeComponentType)
|
||||
|
@ -9,6 +9,7 @@
|
||||
xmlns:views="clr-namespace:Filtration.ThemeEditor.Views"
|
||||
xmlns:extensions="clr-namespace:Filtration.Common.Extensions;assembly=Filtration.Common"
|
||||
xmlns:enums="clr-namespace:Filtration.ObjectModel.Enums;assembly=Filtration.ObjectModel"
|
||||
xmlns:utilities="clr-namespace:Filtration.Common.Utilities;assembly=Filtration.Common"
|
||||
mc:Ignorable="d"
|
||||
d:DataContext="{d:DesignInstance Type=themeEditor:ThemeComponent}"
|
||||
d:DesignHeight="100" d:DesignWidth="200">
|
||||
@ -63,8 +64,8 @@
|
||||
<ContentControl Grid.Row="2" Content="{Binding Mode=OneWay}">
|
||||
<ContentControl.Resources>
|
||||
<!-- Color Theme Template -->
|
||||
<DataTemplate DataType="{x:Type themeEditor:ColorThemeComponent}">
|
||||
<xctk:ColorPicker SelectedColor="{Binding Color}" />
|
||||
<DataTemplate DataType="{x:Type themeEditor:ColorThemeComponent}">
|
||||
<xctk:ColorPicker SelectedColor="{Binding Color}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" MouseDown="ColorPicker_OnMouseDown" />
|
||||
</DataTemplate>
|
||||
|
||||
<!-- Integer Theme Template -->
|
||||
|
@ -1,4 +1,6 @@
|
||||
namespace Filtration.ThemeEditor.Views
|
||||
using System.Windows.Input;
|
||||
|
||||
namespace Filtration.ThemeEditor.Views
|
||||
{
|
||||
public partial class ThemeComponentControl
|
||||
{
|
||||
@ -6,5 +8,13 @@
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void ColorPicker_OnMouseDown(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
// For some reason if we don't mark OnMouseDown events as handled for this control
|
||||
// it ignores them and they end up getting picked up by the parent ListBoxItem instead,
|
||||
// resulting in the Advanced tab not being clickable.
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -29,50 +29,48 @@
|
||||
</ResourceDictionary>
|
||||
</UserControl.Resources>
|
||||
<Grid Margin="10">
|
||||
<ScrollViewer HorizontalScrollBarVisibility="Disabled">
|
||||
<ListView ItemsSource="{Binding Source={StaticResource ComponentsViewSource}}"
|
||||
<ListView ItemsSource="{Binding Source={StaticResource ComponentsViewSource}}"
|
||||
SelectedItem="{Binding SelectedThemeComponent}"
|
||||
Margin="5"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
||||
<ListView.Resources>
|
||||
<Style TargetType="ListViewItem">
|
||||
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ListViewItem">
|
||||
<Border Name="Border" BorderBrush="Black" Background="White" BorderThickness="1" CornerRadius="3" Margin="2" SnapsToDevicePixels="true">
|
||||
<ContentPresenter />
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsSelected" Value="true">
|
||||
<Setter TargetName="Border" Property="Background" Value="#A9BDD8"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListView.Resources>
|
||||
<ListView.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel />
|
||||
</ItemsPanelTemplate>
|
||||
</ListView.ItemsPanel>
|
||||
<ListView.GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Margin="7,5,0,0" FontWeight="Bold" FontSize="15" Text="{Binding Path=Name, Converter={StaticResource ThemeComponentTypeToStringConverter}}"/>
|
||||
</DataTemplate>
|
||||
</GroupStyle.HeaderTemplate>
|
||||
</GroupStyle>
|
||||
</ListView.GroupStyle>
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<views:ThemeComponentControl DataContext="{Binding}" Margin="10,5,10,5" />
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
</ListView>
|
||||
</ScrollViewer>
|
||||
<ListView.Resources>
|
||||
<Style TargetType="ListViewItem">
|
||||
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ListViewItem">
|
||||
<Border Name="Border" BorderBrush="Black" Background="White" BorderThickness="1" CornerRadius="3" Margin="2" SnapsToDevicePixels="true">
|
||||
<ContentPresenter />
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsSelected" Value="true">
|
||||
<Setter TargetName="Border" Property="Background" Value="#A9BDD8"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListView.Resources>
|
||||
<ListView.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel />
|
||||
</ItemsPanelTemplate>
|
||||
</ListView.ItemsPanel>
|
||||
<ListView.GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Margin="7,5,0,0" FontWeight="Bold" FontSize="15" Text="{Binding Path=Name, Converter={StaticResource ThemeComponentTypeToStringConverter}}"/>
|
||||
</DataTemplate>
|
||||
</GroupStyle.HeaderTemplate>
|
||||
</GroupStyle>
|
||||
</ListView.GroupStyle>
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<views:ThemeComponentControl DataContext="{Binding}" Margin="10,5,10,5" />
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
</ListView>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="AutoMapper" version="8.0.0" targetFramework="net461" />
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Castle.Windsor" version="4.1.1" targetFramework="net461" />
|
||||
<package id="CommonServiceLocator" version="2.0.4" targetFramework="net461" />
|
||||
<package id="Extended.Wpf.Toolkit" version="3.4.0" targetFramework="net461" />
|
||||
<package id="MvvmLightLibs" version="5.4.1.1" targetFramework="net461" />
|
||||
<package id="NLog" version="4.5.11" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
</packages>
|
@ -50,10 +50,6 @@
|
||||
</userSettings>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Xceed.Wpf.AvalonDock" publicKeyToken="3e4669d2f30244f4" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.4.0.0" newVersion="3.4.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" />
|
||||
|
31
Filtration/Converters/DisabledDefaultSoundConverter.cs
Normal file
31
Filtration/Converters/DisabledDefaultSoundConverter.cs
Normal file
@ -0,0 +1,31 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Media.Imaging;
|
||||
|
||||
namespace Filtration.Converters
|
||||
{
|
||||
public class DisabledDefaultSoundConverter : IValueConverter
|
||||
{
|
||||
private static readonly BitmapImage _soundIcon;
|
||||
private static readonly BitmapImage _soundDDSIcon;
|
||||
|
||||
static DisabledDefaultSoundConverter()
|
||||
{
|
||||
var soundUri = new Uri("pack://application:,,,/Filtration;component/Resources/Icons/sound.png", UriKind.Absolute);
|
||||
var soundDDSUri = new Uri("pack://application:,,,/Filtration;component/Resources/Icons/sound_dds.png", UriKind.Absolute);
|
||||
_soundIcon = new BitmapImage(soundUri);
|
||||
_soundDDSIcon = new BitmapImage(soundDDSUri);
|
||||
}
|
||||
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
return (bool)value ? _soundDDSIcon : _soundIcon;
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
return ReferenceEquals(value, _soundDDSIcon);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using System.Windows;
|
||||
using System.Windows.Data;
|
||||
|
||||
namespace Filtration.Converters
|
||||
{
|
||||
class DisabledDefaultSoundTooltipConverter : IMultiValueConverter
|
||||
{
|
||||
private static readonly string appendage = "\nNote: the default drop sound is disabled for this block.";
|
||||
|
||||
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
if (values[0] == DependencyProperty.UnsetValue ||
|
||||
values[1] == DependencyProperty.UnsetValue)
|
||||
{
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
var baseText = (string)(values[0]);
|
||||
var hasDisabledDefaultSound = (bool)(values[1]);
|
||||
|
||||
if (hasDisabledDefaultSound)
|
||||
{
|
||||
return $"{baseText}{appendage}";
|
||||
}
|
||||
else
|
||||
{
|
||||
return baseText;
|
||||
}
|
||||
}
|
||||
|
||||
public object[] ConvertBack(object value, Type[] targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
@ -52,111 +52,19 @@
|
||||
<Prefer32Bit>true</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="AutoMapper, Version=8.0.0.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\AutoMapper.8.0.0\lib\net461\AutoMapper.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Castle.Windsor, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Castle.Windsor.4.1.1\lib\net45\Castle.Windsor.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="CommonServiceLocator, Version=2.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\CommonServiceLocator.2.0.4\lib\net46\CommonServiceLocator.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="ControlzEx, Version=3.0.2.4, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ControlzEx.3.0.2.4\lib\net45\ControlzEx.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DeltaCompressionDotNet, Version=1.1.0.0, Culture=neutral, PublicKeyToken=1d14d6e5194e7f4a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DeltaCompressionDotNet.MsDelta, Version=1.1.0.0, Culture=neutral, PublicKeyToken=46b2138a390abf55, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.MsDelta.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DeltaCompressionDotNet.PatchApi, Version=1.1.0.0, Culture=neutral, PublicKeyToken=3e8888ee913ed789, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.PatchApi.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DynamicData, Version=6.7.0.2529, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\DynamicData.6.7.0.2529\lib\net46\DynamicData.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Fluent, Version=6.1.0.326, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Fluent.Ribbon.6.1.0.326\lib\net45\Fluent.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight, Version=5.4.1.0, Culture=neutral, PublicKeyToken=e7570ab207bcb616, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Extras, Version=5.4.1.0, Culture=neutral, PublicKeyToken=669f0b5e8f868abf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Extras.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GalaSoft.MvvmLight.Platform, Version=5.4.1.0, Culture=neutral, PublicKeyToken=5f873c45e98af8a1, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MvvmLightLibs.5.4.1.1\lib\net45\GalaSoft.MvvmLight.Platform.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MahApps.Metro, Version=1.2.4.0, Culture=neutral, PublicKeyToken=f4fb5a3c4d1e5b4f, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MahApps.Metro.1.2.4.0\lib\net45\MahApps.Metro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Microsoft.WindowsAPICodePack, Version=1.1.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\WindowsAPICodePack-Core.1.1.2\lib\Microsoft.WindowsAPICodePack.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAPICodePack.Shell, Version=1.1.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\WindowsAPICodePack-Shell.1.1.1\lib\Microsoft.WindowsAPICodePack.Shell.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Cecil, Version=0.9.6.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Cecil.Mdb, Version=0.9.6.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Mdb.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Cecil.Pdb, Version=0.9.6.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Pdb.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Cecil.Rocks, Version=0.9.6.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Rocks.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NLog.4.5.11\lib\net45\NLog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NuGet.Squirrel, Version=3.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\squirrel.windows.1.9.0\lib\Net45\NuGet.Squirrel.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SharpCompress, Version=0.17.1.0, Culture=neutral, PublicKeyToken=afb0a02973931d96, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SharpCompress.0.17.1\lib\net45\SharpCompress.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Splat, Version=1.6.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Splat.1.6.2\lib\Net45\Splat.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Squirrel, Version=1.9.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\squirrel.windows.1.9.0\lib\Net45\Squirrel.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.Reactive, Version=4.0.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Reactive.4.0.0\lib\net46\System.Reactive.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Remoting" />
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows" />
|
||||
<Reference Include="System.Windows.Controls.Input.Toolkit, Version=3.5.40128.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\WPFToolkit.3.5.50211.1\lib\System.Windows.Controls.Input.Toolkit.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Controls.Layout.Toolkit, Version=3.5.40128.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\WPFToolkit.3.5.50211.1\lib\System.Windows.Controls.Layout.Toolkit.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MahApps.Metro.1.2.4.0\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xaml">
|
||||
@ -166,35 +74,10 @@
|
||||
<Reference Include="WindowsBase" />
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="WpfAnimatedGif, Version=1.4.17.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\WpfAnimatedGif.1.4.17\lib\net\WpfAnimatedGif.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="WPFToolkit, Version=3.5.40128.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\WPFToolkit.3.5.50211.1\lib\WPFToolkit.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock.Themes.Aero, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock.Themes.Metro, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock.Themes.VS2010, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.AvalonDock.Themes.VS2013, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>libs\Xceed.Wpf.AvalonDock.Themes.VS2013.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.DataGrid, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.DataGrid.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Xceed.Wpf.Toolkit, Version=3.4.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Extended.Wpf.Toolkit.3.4.0\lib\net40\Xceed.Wpf.Toolkit.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ApplicationDefinition Include="App.xaml">
|
||||
@ -210,6 +93,8 @@
|
||||
<Compile Include="Converters\BooleanToBlockActionInverseConverter.cs" />
|
||||
<Compile Include="Converters\BooleanToBlockActionConverter.cs" />
|
||||
<Compile Include="Converters\BlockItemToRemoveEnabledVisibilityConverter.cs" />
|
||||
<Compile Include="Converters\DisabledDefaultSoundConverter.cs" />
|
||||
<Compile Include="Converters\DisabledDefaultSoundTooltipConverter.cs" />
|
||||
<Compile Include="Converters\MinimapIconToCroppedBitmapConverter.cs" />
|
||||
<Compile Include="Converters\HashSignRemovalConverter.cs" />
|
||||
<Compile Include="Converters\ItemRarityConverter.cs" />
|
||||
@ -247,8 +132,8 @@
|
||||
<Compile Include="UserControls\ThemeComponentSelectionControl.xaml.cs">
|
||||
<DependentUpon>ThemeComponentSelectionControl.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Utility\VisualTreeUtility.cs" />
|
||||
<Compile Include="ViewModels\DesignTime\DesignTimeItemFilterBlockViewModel.cs" />
|
||||
<Compile Include="Utility\SplatNLogAdapter.cs" />
|
||||
<Compile Include="ViewModels\DesignTime\DesignTimeSettingsPageViewModel.cs" />
|
||||
<Compile Include="Views\AttachedProperties\SelectedItemsAttachedProperty.cs" />
|
||||
<Compile Include="Utility\RoutedCommandHandler.cs" />
|
||||
@ -279,7 +164,6 @@
|
||||
</Compile>
|
||||
<Compile Include="Views\Behaviors\BindableSelectedItemBehavior.cs" />
|
||||
<Compile Include="Views\BindingProxy.cs" />
|
||||
<Compile Include="Views\PathOfExileColors.cs" />
|
||||
<Compile Include="Views\SettingsPageView.xaml.cs">
|
||||
<DependentUpon>SettingsPageView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@ -462,6 +346,11 @@
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="Resources\Enchantments.txt" />
|
||||
<Resource Include="Resources\Icons\no_sound_dds_light.png" />
|
||||
<Resource Include="Resources\Icons\no_sound_dds.png" />
|
||||
<Resource Include="Resources\Icons\speaker_icon.png" />
|
||||
<Resource Include="Resources\Icons\sound_dds.png" />
|
||||
<EmbeddedResource Include="Resources\Prophecies.txt" />
|
||||
<EmbeddedResource Include="Resources\ItemMods.txt" />
|
||||
<Resource Include="Resources\loading_spinner.gif" />
|
||||
@ -478,10 +367,6 @@
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
<None Include="Filtration.nuspec" />
|
||||
<None Include="NLog.xsd">
|
||||
<SubType>Designer</SubType>
|
||||
</None>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
@ -506,7 +391,7 @@
|
||||
<Resource Include="Resources\Icons\open_icon.png" />
|
||||
<Resource Include="Resources\Icons\arrow_down_large_icon.png" />
|
||||
<Resource Include="Resources\Icons\arrow_up_large_icon.png" />
|
||||
<Resource Include="Resources\Icons\speaker_icon.png" />
|
||||
<Resource Include="Resources\Icons\sound.png" />
|
||||
<Resource Include="Resources\Icons\play_icon.png" />
|
||||
<Resource Include="Resources\Icons\arrow_top_icon.png" />
|
||||
<Resource Include="Resources\Icons\arrow_bottom_icon.png" />
|
||||
@ -656,6 +541,61 @@
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="AutoMapper">
|
||||
<Version>8.0.0</Version>
|
||||
</PackageReference>
|
||||
<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="DynamicData">
|
||||
<Version>6.8.0.2561</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Extended.Wpf.Toolkit">
|
||||
<Version>3.5.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Fluent.Ribbon">
|
||||
<Version>6.1.0.326</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="MahApps.Metro">
|
||||
<Version>1.2.4</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="MvvmLightLibs">
|
||||
<Version>5.4.1.1</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="NLog">
|
||||
<Version>4.6.2</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="NLog.Schema">
|
||||
<Version>4.6.2</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="NuGet.CommandLine">
|
||||
<Version>4.7.1</Version>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="squirrel.windows">
|
||||
<Version>1.9.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="WindowsAPICodePack-Core">
|
||||
<Version>1.1.2</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="WindowsAPICodePack-Shell">
|
||||
<Version>1.1.1</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="WpfAnimatedGif">
|
||||
<Version>1.4.18</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="WPFToolkit">
|
||||
<Version>3.5.50211.1</Version>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Target Name="AfterBuild" Condition=" '$(Configuration)' == 'Releasify'">
|
||||
<GetAssemblyIdentity AssemblyFiles="$(TargetPath)">
|
||||
@ -666,8 +606,8 @@
|
||||
</ReadLinesFromFile>
|
||||
<ItemGroup>
|
||||
<!-- If your .NET version is <3.5 and you get build error, move this ItemGroup outside of Target -->
|
||||
<NuGetExe Include="..\packages\NuGet.CommandLine.*\tools\nuget.exe" />
|
||||
<SquirrelExe Include="..\packages\Squirrel.Windows.*\tools\squirrel.exe" />
|
||||
<NuGetExe Include="$(UserProfile)\.nuget\packages\NuGet.CommandLine\4.7.1\tools\nuget.exe" />
|
||||
<SquirrelExe Include="$(UserProfile)\.nuget\packages\Squirrel.Windows\1.9.0\tools\squirrel.exe" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<ReleaseDir>..\Releases\</ReleaseDir>
|
||||
|
@ -8,21 +8,10 @@
|
||||
<authors>Ben Wallis</authors>
|
||||
<description>A Path of Exile loot filter script editor</description>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<copyright>Copyright 2018</copyright>
|
||||
<releaseNotes>* Added support for new Prophecies block item type
|
||||
* All open filter scripts are now remembered on exit and reopened when the application is started rather than just the last opened one (#95)
|
||||
* Filter sections are once again now expanded by default when scripts are opened, unless the new "Auto-expand all sections when opening scripts" setting is disabled
|
||||
* A new Clear Styles button has been added which removes all styles from the selected block (#96)
|
||||
* New buttons for adding/removing DisableDropSound from selected blocks have been added (#110)
|
||||
* The Enable/Disable Block toggle button is now visible on both the Regular Block Items and Appearance Block Items views
|
||||
* When there are too many block items to fit horizontally in a block a horizontal scrollbar will now appear
|
||||
* Fixed the application freezing for a long period of time when Ctrl+A (Select All) is performed
|
||||
* Fixed the Switch to Appearance/Regular Block Items text overlapping block items
|
||||
* Fixed theme saving (blank theme files were being saved) (#83)
|
||||
* Fixed checkboxes in Block Group Browser (#97)
|
||||
* Fixed the Select Path of Exile data directory dialog appearing after every upgrade (#94)
|
||||
* Fixed an issue where custom sounds were only populated from the default Path of Exile data directory rather than the configured directory
|
||||
* Clean installs no longer prompt to select the Path of Exile data directory if the default directory exists</releaseNotes>
|
||||
<copyright>Copyright 2019</copyright>
|
||||
<releaseNotes>* Added Blight League Item Base Types and Item Classes to static data
|
||||
* Adding the first Block Group to a script will now enable Block Groups for the script
|
||||
* Removing the last Block Group from a script will now disable Block Groups for the script</releaseNotes>
|
||||
<dependencies />
|
||||
</metadata>
|
||||
<files>
|
||||
|
@ -10,15 +10,21 @@
|
||||
layout="${longdate} ${uppercase:${level}} ${message}" />
|
||||
<target xsi:type="File" name="fDebug" fileName="${basedir}/Filtration_debug_${shortdate}.log"
|
||||
layout="${longdate} ${uppercase:${level}} ${message}" />
|
||||
<target xsi:type="File" name="fUpdater" fileName="${basedir}/Filtration_updater_${shortdate}.log"
|
||||
layout="${longdate} ${uppercase:${level}} ${message}" />
|
||||
<target xsi:type="Debugger" name="cDebug" layout="${longdate} ${uppercase:${level}} ${message}"/>
|
||||
</targets>
|
||||
|
||||
<rules>
|
||||
|
||||
<!-- Squirrel Updater Log-->
|
||||
<logger name="SquirrelLogger" minlevel="Trace" writeTo="fUpdater" />
|
||||
|
||||
<!-- Uncomment the Debug line to enable Debug logging -->
|
||||
<!--<logger name="*" minlevel="Debug" writeTo="fDebug" final="true" />-->
|
||||
<logger name="*" minlevel="Error" writeTo="fErrors" />
|
||||
<logger name="*" minlevel="Trace" writeTo="cDebug" />
|
||||
|
||||
|
||||
</rules>
|
||||
</nlog>
|
3168
Filtration/NLog.xsd
3168
Filtration/NLog.xsd
File diff suppressed because it is too large
Load Diff
@ -6,12 +6,12 @@ using System.Runtime.CompilerServices;
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("XVar Industries Inc.")]
|
||||
[assembly: AssemblyProduct("Filtration")]
|
||||
[assembly: AssemblyCopyright("Copyright © Ben Wallis 2018")]
|
||||
[assembly: AssemblyCopyright("Copyright © Ben Wallis 2019")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
[assembly: AssemblyVersion("1.1.0")]
|
||||
[assembly: AssemblyInformationalVersion("1.1.0-beta6")]
|
||||
[assembly: AssemblyVersion("1.2.2")]
|
||||
[assembly: AssemblyInformationalVersion("1.2.2")]
|
||||
|
||||
[assembly: InternalsVisibleTo("Filtration.Tests")]
|
||||
[assembly: InternalsVisibleTo("Filtration.ItemFilterPreview.Tests")]
|
||||
|
13
Filtration/Properties/Resources.Designer.cs
generated
13
Filtration/Properties/Resources.Designer.cs
generated
@ -388,7 +388,18 @@ namespace Filtration.Properties {
|
||||
return ResourceManager.GetString("Prophecies", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Enchantment Decree of Force.
|
||||
/// </summary>
|
||||
internal static string Enchantments
|
||||
{
|
||||
get
|
||||
{
|
||||
return ResourceManager.GetString("Enchantments", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.IO.UnmanagedMemoryStream similar to System.IO.MemoryStream.
|
||||
/// </summary>
|
||||
|
@ -214,4 +214,7 @@
|
||||
<data name="Prophecies" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Prophecies.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
|
||||
</data>
|
||||
<data name="Enchantments" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Enchantments.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
|
||||
</data>
|
||||
</root>
|
1107
Filtration/Resources/Enchantments.txt
Normal file
1107
Filtration/Resources/Enchantments.txt
Normal file
File diff suppressed because it is too large
Load Diff
BIN
Filtration/Resources/Icons/no_sound_dds.png
Normal file
BIN
Filtration/Resources/Icons/no_sound_dds.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
BIN
Filtration/Resources/Icons/no_sound_dds_light.png
Normal file
BIN
Filtration/Resources/Icons/no_sound_dds_light.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.1 KiB |
BIN
Filtration/Resources/Icons/sound.png
Normal file
BIN
Filtration/Resources/Icons/sound.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.4 KiB |
BIN
Filtration/Resources/Icons/sound_dds.png
Normal file
BIN
Filtration/Resources/Icons/sound_dds.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.7 KiB |
@ -4,6 +4,7 @@ Abandoned Wealth
|
||||
Aberrant Fossil
|
||||
Abyssal Axe
|
||||
Abyssal Cry
|
||||
Abyssal Incubator
|
||||
Abyssal Sceptre
|
||||
Academy Map
|
||||
Acid Caverns Map
|
||||
@ -15,6 +16,7 @@ Additional Accuracy Support
|
||||
Advanced Traps Support
|
||||
Aetheric Fossil
|
||||
Agate Amulet
|
||||
Akil's Prophecy
|
||||
Albino Rhoa Feather
|
||||
Alchemy Shard
|
||||
Alder Spiked Shield
|
||||
@ -22,8 +24,11 @@ Alira's Amulet
|
||||
Alleyways Map
|
||||
Allflame
|
||||
Alloyed Spiked Shield
|
||||
Alluring Bounty
|
||||
Alone in the Darkness
|
||||
Alteration Shard
|
||||
Amber Amulet
|
||||
Amber Oil
|
||||
Ambush Boots
|
||||
Ambush Leaguestone
|
||||
Ambush Mitts
|
||||
@ -76,6 +81,7 @@ Armageddon Brand
|
||||
Arming Axe
|
||||
Armourer's Scrap
|
||||
Armoury Map
|
||||
Arrogance of the Vaal
|
||||
Arsenal Map
|
||||
Ashen Wood Map
|
||||
Ashscale Talisman
|
||||
@ -94,8 +100,11 @@ Aventail Helmet
|
||||
Avian Slippers
|
||||
Avian Twins Talisman
|
||||
Awl
|
||||
Azure Oil
|
||||
Azyran's Reward
|
||||
Baleful Gem
|
||||
Ball Lightning
|
||||
Bane
|
||||
Bane of the Loyal
|
||||
Barbed Club
|
||||
Barbute Helmet
|
||||
@ -121,6 +130,7 @@ Bear Trap
|
||||
Beauty Through Death
|
||||
Behemoth Mace
|
||||
Belfry Map
|
||||
Berserk
|
||||
Bestel's Manuscript
|
||||
Bestiary Orb
|
||||
Beyond Leaguestone
|
||||
@ -128,6 +138,7 @@ Binding Shard
|
||||
Birth of the Three
|
||||
Bismuth Flask
|
||||
Black Maw Talisman
|
||||
Black Oil
|
||||
Black Rose of Anarchy
|
||||
Black Venom
|
||||
Blacksmith's Whetstone
|
||||
@ -135,8 +146,10 @@ Blade Flurry
|
||||
Blade Vortex
|
||||
Bladed Mace
|
||||
Bladefall
|
||||
Bladestorm
|
||||
Blasphemy Support
|
||||
Blast Rain
|
||||
Blastchain Mine Support
|
||||
Blessed Orb
|
||||
Blessing of Chayula
|
||||
Blessing of Esh
|
||||
@ -150,6 +163,7 @@ Blind Venture
|
||||
Blinder
|
||||
Blink Arrow
|
||||
Block Chance Reduction Support
|
||||
Blood and Sand
|
||||
Blood Magic Support
|
||||
Blood Rage
|
||||
Blood Raiment
|
||||
@ -172,6 +186,7 @@ Bone Offering
|
||||
Bone Spirit Shield
|
||||
Bonechill Support
|
||||
Bonespire Talisman
|
||||
Boon of Justice
|
||||
Boon of the First Ones
|
||||
Boot Blade
|
||||
Boot Knife
|
||||
@ -199,7 +214,9 @@ Brutality Support
|
||||
Buckskin Tower Shield
|
||||
Buckskin Tunic
|
||||
Burial Chambers Map
|
||||
Buried Treasure
|
||||
Burning Arrow
|
||||
Burning Blood
|
||||
Burning Damage Support
|
||||
Burnished Foil
|
||||
Burnished Spiked Shield
|
||||
@ -245,6 +262,7 @@ Carnal Mitts
|
||||
Carnal Sceptre
|
||||
Cartographer's Chisel
|
||||
Cartographer's Delight
|
||||
Cartographer's Incubator
|
||||
Cartographer's Seal
|
||||
Cartographer's Sextant
|
||||
Carved Wand
|
||||
@ -259,11 +277,15 @@ Castle Ruins Map
|
||||
Cat's Paw
|
||||
Caustic Arrow
|
||||
Cedar Tower Shield
|
||||
Celestial Armoursmith's Incubator
|
||||
Celestial Blacksmith's Incubator
|
||||
Celestial Jeweller's Incubator
|
||||
Cells Map
|
||||
Cemetery Map
|
||||
Ceremonial Axe
|
||||
Ceremonial Kite Shield
|
||||
Ceremonial Mace
|
||||
Cerulean Ring
|
||||
Chain Belt
|
||||
Chain Boots
|
||||
Chain Gloves
|
||||
@ -281,6 +303,7 @@ Chaos Shard
|
||||
Chaotic Disposition
|
||||
Charan's Sword
|
||||
Charged Dash
|
||||
Charged Mines Support
|
||||
Charged Traps Support
|
||||
Chateau Map
|
||||
Chayula's Breachstone
|
||||
@ -296,14 +319,17 @@ City Square Map
|
||||
Clarity
|
||||
Clasped Boots
|
||||
Clasped Mitts
|
||||
Clear Oil
|
||||
Cleave
|
||||
Cleaver
|
||||
Close Combat Support
|
||||
Close Helmet
|
||||
Cloth Belt
|
||||
Cloth Belt Piece
|
||||
Cluster Traps Support
|
||||
Clutching Talisman
|
||||
Cobalt Jewel
|
||||
Cobra Lash
|
||||
Cogs of Disruption
|
||||
Coiled Staff
|
||||
Cold Penetration Support
|
||||
@ -336,6 +362,7 @@ Contagion
|
||||
Controlled Destruction Support
|
||||
Conversion Trap
|
||||
Convocation
|
||||
Convoking Wand
|
||||
Copper Kris
|
||||
Copper Plate
|
||||
Copper Sword
|
||||
@ -361,6 +388,7 @@ Cremation
|
||||
Crescent Staff
|
||||
Crested Tower Shield
|
||||
Crimson Jewel
|
||||
Crimson Oil
|
||||
Crimson Raiment
|
||||
Crimson Round Shield
|
||||
Crimson Temple Map
|
||||
@ -387,9 +415,12 @@ Cutthroat's Garb
|
||||
Cyclone
|
||||
Dagger Axe
|
||||
Damage on Full Life Support
|
||||
Dark Dreams
|
||||
Dark Forest Map
|
||||
Dark Pact
|
||||
Dark Temptation
|
||||
Darkwood Sceptre
|
||||
Dash
|
||||
Deadhand Talisman
|
||||
Deadly Ailments Support
|
||||
Deafening Essence
|
||||
@ -415,6 +446,8 @@ Deafening Essence of Wrath
|
||||
Deafening Essence of Zeal
|
||||
Death
|
||||
Death Bow
|
||||
Deathmark Support
|
||||
Decadent Incubator
|
||||
Decanter Spiritus
|
||||
Decay Support
|
||||
Decimation Bow
|
||||
@ -426,6 +459,7 @@ Deerskin Boots
|
||||
Deerskin Gloves
|
||||
Defiled Cathedral Map
|
||||
Deicide Mask
|
||||
Demigod's Wager
|
||||
Demon Dagger
|
||||
Demon's Horn
|
||||
Dense Fossil
|
||||
@ -450,10 +484,12 @@ Diamond Ring
|
||||
Dig Map
|
||||
Discharge
|
||||
Discipline
|
||||
Divine Ire
|
||||
Divine Life Flask
|
||||
Divine Mana Flask
|
||||
Divine Orb
|
||||
Divine Vessel
|
||||
Diviner's Incubator
|
||||
Doedre's Madness
|
||||
Dominating Blow
|
||||
Domination Leaguestone
|
||||
@ -484,6 +520,7 @@ Earth Drinker
|
||||
Earthquake
|
||||
Eber's Key
|
||||
Ebony Tower Shield
|
||||
Echoes of Love
|
||||
Eclipse Staff
|
||||
Eelskin Boots
|
||||
Eelskin Gloves
|
||||
@ -491,10 +528,12 @@ Eelskin Tunic
|
||||
Efficacy Support
|
||||
Elder Sword
|
||||
Elder's Orb
|
||||
Eldritch Incubator
|
||||
Elegant Foil
|
||||
Elegant Ringmail
|
||||
Elegant Round Shield
|
||||
Elegant Sword
|
||||
Elemental Army Support
|
||||
Elemental Damage with Attacks Support
|
||||
Elemental Focus Support
|
||||
Elemental Hit
|
||||
@ -507,9 +546,11 @@ Emperor's Luck
|
||||
Empower Support
|
||||
Enameled Buckler
|
||||
Enchanted Fossil
|
||||
Enchanted Incubator
|
||||
Encrusted Fossil
|
||||
Endurance Charge on Melee Stun Support
|
||||
Enduring Cry
|
||||
Energy Leech Support
|
||||
Enfeeble
|
||||
Engineer's Orb
|
||||
Engineer's Shard
|
||||
@ -581,15 +622,17 @@ Faster Attacks Support
|
||||
Faster Casting Support
|
||||
Faster Projectiles Support
|
||||
Faun's Horn
|
||||
Feeding Frenzy Support
|
||||
Fencer Helm
|
||||
Feral Incubator
|
||||
Festival Mask
|
||||
Field Lamellar
|
||||
Fields Map
|
||||
Fiend Dagger
|
||||
Fine Incubator
|
||||
Fingerless Silk Gloves
|
||||
Fir Round Shield
|
||||
Fire Arrow Quiver
|
||||
Fire Nova Mine
|
||||
Fire Penetration Support
|
||||
Fire Trap
|
||||
Fireball
|
||||
@ -606,6 +649,7 @@ Flammability
|
||||
Flanged Mace
|
||||
Flashpowder Keg
|
||||
Flaying Knife
|
||||
Flesh and Stone
|
||||
Flesh Offering
|
||||
Fleshripper
|
||||
Flicker Strike
|
||||
@ -613,9 +657,11 @@ Flooded Mine Map
|
||||
Fluted Bascinet
|
||||
Footman Sword
|
||||
Forbidden Power
|
||||
Foreboding Incubator
|
||||
Forge of the Phoenix Map
|
||||
Fork Support
|
||||
Fortify Support
|
||||
Fossilised Incubator
|
||||
Fossilised Spirit Shield
|
||||
Foul Staff
|
||||
Fractured Fossil
|
||||
@ -623,7 +669,7 @@ Fragment of the Chimera
|
||||
Fragment of the Hydra
|
||||
Fragment of the Minotaur
|
||||
Fragment of the Phoenix
|
||||
Freeze Mine
|
||||
Fragmented Incubator
|
||||
Freezing Pulse
|
||||
Frenzy
|
||||
Fright Claw
|
||||
@ -634,6 +680,7 @@ Frost Blades
|
||||
Frost Bomb
|
||||
Frost Wall
|
||||
Frostbite
|
||||
Frostblink
|
||||
Frostbolt
|
||||
Full Chainmail
|
||||
Full Dragonscale
|
||||
@ -645,6 +692,7 @@ Full Wyrmscale
|
||||
Fungal Hollow Map
|
||||
Gardens Map
|
||||
Gavel
|
||||
Gemcutter's Incubator
|
||||
Gemcutter's Prism
|
||||
Gemcutter's Promise
|
||||
Gemini Claw
|
||||
@ -652,6 +700,7 @@ Gemstone Sword
|
||||
General's Brigandine
|
||||
Generosity Support
|
||||
Geode Map
|
||||
Geomancer's Incubator
|
||||
Ghastly Eye Jewel
|
||||
Ghetto Map
|
||||
Giant Life Flask
|
||||
@ -667,6 +716,7 @@ Gilded Divination Scarab
|
||||
Gilded Elder Scarab
|
||||
Gilded Fossil
|
||||
Gilded Harbinger Scarab
|
||||
Gilded Legion Scarab
|
||||
Gilded Perandus Scarab
|
||||
Gilded Reliquary Scarab
|
||||
Gilded Sallet
|
||||
@ -704,6 +754,7 @@ Golden Kris
|
||||
Golden Mantle
|
||||
Golden Mask
|
||||
Golden Obi
|
||||
Golden Oil
|
||||
Golden Page
|
||||
Golden Plate
|
||||
Golden Wreath
|
||||
@ -766,6 +817,7 @@ Herald of Purity
|
||||
Herald of Thunder
|
||||
Heterochromia
|
||||
Hexclaw Talisman
|
||||
High-Impact Mine Support
|
||||
Highborn Bow
|
||||
Highborn Staff
|
||||
Highland Blade
|
||||
@ -796,15 +848,18 @@ Ice Shot
|
||||
Ice Spear
|
||||
Ice Trap
|
||||
Iceberg Map
|
||||
Icicle Mine
|
||||
Ignite Proliferation Support
|
||||
Imbued Wand
|
||||
Immolate Support
|
||||
Immortal Call
|
||||
Immortal Resolve
|
||||
Imp Dagger
|
||||
Impale Support
|
||||
Imperial Bow
|
||||
Imperial Buckler
|
||||
Imperial Claw
|
||||
Imperial Legacy
|
||||
Imperial Maul
|
||||
Imperial Skean
|
||||
Imperial Staff
|
||||
@ -818,9 +873,14 @@ Increased Duration Support
|
||||
Infantry Brigandine
|
||||
Infernal Axe
|
||||
Infernal Blow
|
||||
Infernal Legion Support
|
||||
Infernal Sword
|
||||
Infested Valley Map
|
||||
Infused Channelling Support
|
||||
Infused Incubator
|
||||
Innervate Support
|
||||
Inspiration Support
|
||||
Intensify Support
|
||||
Invasion Leaguestone
|
||||
Inya's Key
|
||||
Iron Circlet
|
||||
@ -949,6 +1009,7 @@ Majestic Plate
|
||||
Malachai's Entrails
|
||||
Malachai's Heart
|
||||
Malachai's Lungs
|
||||
Malevolence
|
||||
Malformation Map
|
||||
Maligaro's Map
|
||||
Maligaro's Spike
|
||||
@ -965,6 +1026,7 @@ Mausoleum Map
|
||||
Mawr Blaidd
|
||||
Maze Map
|
||||
Maze of the Minotaur Map
|
||||
Meat Shield Support
|
||||
Meatgrinder
|
||||
Medicine Chest
|
||||
Medium Hybrid Flask
|
||||
@ -977,11 +1039,11 @@ Memory Fragment I
|
||||
Memory Fragment II
|
||||
Memory Fragment III
|
||||
Memory Fragment IV
|
||||
Memory Fragment IX
|
||||
Memory Fragment V
|
||||
Memory Fragment VI
|
||||
Memory Fragment VII
|
||||
Memory Fragment VIII
|
||||
Memory Fragment IX
|
||||
Memory Fragment X
|
||||
Merciless Armament
|
||||
Mesa Map
|
||||
@ -995,7 +1057,6 @@ Military Staff
|
||||
Mind Cage
|
||||
Minefield Support
|
||||
Mineral Pools Map
|
||||
Minion and Totem Elemental Resistance Support
|
||||
Minion Damage Support
|
||||
Minion Life Support
|
||||
Minion Speed Support
|
||||
@ -1009,10 +1070,12 @@ Molten Shell
|
||||
Molten Strike
|
||||
Monkey Paw Talisman
|
||||
Monkey Twins Talisman
|
||||
Monochrome
|
||||
Moon Orb
|
||||
Moon Staff
|
||||
Moon Temple Map
|
||||
Moonstone Ring
|
||||
More is Never Enough
|
||||
Morning Star
|
||||
Mortal Grief
|
||||
Mortal Hope
|
||||
@ -1036,22 +1099,26 @@ Muttering Essence of Hatred
|
||||
Muttering Essence of Sorrow
|
||||
Muttering Essence of Torment
|
||||
Muttering Essence of Woe
|
||||
Mysterious Incubator
|
||||
Nailed Fist
|
||||
Necromancer Circlet
|
||||
Necromancer Silks
|
||||
Necromancy Net
|
||||
Necropolis Map
|
||||
Nemesis Leaguestone
|
||||
Nightblade Support
|
||||
Nightmare Bascinet
|
||||
Nightmare Mace
|
||||
No Traces
|
||||
Noble Axe
|
||||
Noble Claw
|
||||
Noble Tricorne
|
||||
Nook's Crown
|
||||
Nubuck Boots
|
||||
Nubuck Gloves
|
||||
Oak Buckler
|
||||
Oak's Amulet
|
||||
Obscured Incubator
|
||||
Obsidian Key
|
||||
Occultist's Vestment
|
||||
Ochre Sceptre
|
||||
@ -1065,6 +1132,7 @@ Onyx Amulet
|
||||
Opal Ring
|
||||
Opal Sceptre
|
||||
Opal Wand
|
||||
Opalescent Oil
|
||||
Orb of Alchemy
|
||||
Orb of Alteration
|
||||
Orb of Annulment
|
||||
@ -1079,10 +1147,12 @@ Orb of Scouring
|
||||
Orb of Storms
|
||||
Orb of Transmutation
|
||||
Orchard Map
|
||||
Ornate Incubator
|
||||
Ornate Mace
|
||||
Ornate Ringmail
|
||||
Ornate Spiked Shield
|
||||
Ornate Sword
|
||||
Otherworldly Incubator
|
||||
Overgrown Ruin Map
|
||||
Overgrown Shrine Map
|
||||
Padded Jacket
|
||||
@ -1102,7 +1172,9 @@ Perandus Coin
|
||||
Perandus Leaguestone
|
||||
Perfect Fossil
|
||||
Perfection
|
||||
Perforate
|
||||
Pernarch
|
||||
Pestilent Strike
|
||||
Petrified Club
|
||||
Phantasmagoria Map
|
||||
Phantom Mace
|
||||
@ -1116,6 +1188,7 @@ Pine Buckler
|
||||
Pinnacle Tower Shield
|
||||
Pit Map
|
||||
Pit of the Chimera Map
|
||||
Plague Bearer
|
||||
Plague Mask
|
||||
Plank Kite Shield
|
||||
Plate Vest
|
||||
@ -1138,6 +1211,7 @@ Polished Cartography Scarab
|
||||
Polished Divination Scarab
|
||||
Polished Elder Scarab
|
||||
Polished Harbinger Scarab
|
||||
Polished Legion Scarab
|
||||
Polished Perandus Scarab
|
||||
Polished Reliquary Scarab
|
||||
Polished Shaper Scarab
|
||||
@ -1156,8 +1230,12 @@ Powerful Alchemical Resonator
|
||||
Powerful Chaotic Resonator
|
||||
Praetor Crown
|
||||
Precinct Map
|
||||
Precision
|
||||
Prehistoric Claw
|
||||
Pride
|
||||
Pride Before the Fall
|
||||
Pride of the First Ones
|
||||
Primal Incubator
|
||||
Primal Skull Talisman
|
||||
Prime Alchemical Resonator
|
||||
Prime Chaotic Resonator
|
||||
@ -1181,12 +1259,15 @@ Prophecy Leaguestone
|
||||
Prophecy Wand
|
||||
Prophet Crown
|
||||
Prosperity
|
||||
Pulverise Support
|
||||
Puncture
|
||||
Punishment
|
||||
Purifying Flame
|
||||
Purity of Elements
|
||||
Purity of Fire
|
||||
Purity of Ice
|
||||
Purity of Lightning
|
||||
Pyroclast Mine
|
||||
Quarterstaff
|
||||
Quartz Flask
|
||||
Quartz Sceptre
|
||||
@ -1194,6 +1275,7 @@ Quartz Wand
|
||||
Quicksilver Flask
|
||||
Quilted Jacket
|
||||
Racecourse Map
|
||||
Rage Support
|
||||
Rain of Arrows
|
||||
Rain of Chaos
|
||||
Rain Tempter
|
||||
@ -1216,7 +1298,6 @@ Reaver Sword
|
||||
Rebirth
|
||||
Reckoning
|
||||
Recurve Bow
|
||||
Reduced Mana Support
|
||||
Redwood Spiked Shield
|
||||
Reef Map
|
||||
Reflex Bow
|
||||
@ -1231,8 +1312,8 @@ Reinforced Steel Net
|
||||
Reinforced Tower Shield
|
||||
Rejuvenation Totem
|
||||
Relic Chambers Map
|
||||
Remembrance
|
||||
Remnant of Corruption
|
||||
Remote Mine Support
|
||||
Residence Map
|
||||
Ribbon Spool
|
||||
Righteous Fire
|
||||
@ -1269,6 +1350,7 @@ Rusted Divination Scarab
|
||||
Rusted Elder Scarab
|
||||
Rusted Harbinger Scarab
|
||||
Rusted Hatchet
|
||||
Rusted Legion Scarab
|
||||
Rusted Perandus Scarab
|
||||
Rusted Reliquary Scarab
|
||||
Rusted Shaper Scarab
|
||||
@ -1295,6 +1377,7 @@ Saint's Hauberk
|
||||
Saintly Chainmail
|
||||
Sallet
|
||||
Sambar Sceptre
|
||||
Sambodhi's Vow
|
||||
Samite Gloves
|
||||
Samite Helmet
|
||||
Samite Slippers
|
||||
@ -1349,6 +1432,7 @@ Seismic Trap
|
||||
Sekhem
|
||||
Sekhema Feather
|
||||
Sentinel Jacket
|
||||
Sepia Oil
|
||||
Sepulchre Map
|
||||
Serpent Wand
|
||||
Serpentine Staff
|
||||
@ -1357,6 +1441,7 @@ Serpentscale Gauntlets
|
||||
Serrated Arrow Quiver
|
||||
Serrated Foil
|
||||
Serrated Fossil
|
||||
Seven Years Bad Luck
|
||||
Shabby Jerkin
|
||||
Shackled Boots
|
||||
Shadow Axe
|
||||
@ -1385,6 +1470,7 @@ Shattering Steel
|
||||
Shield Charge
|
||||
Shipyard Map
|
||||
Shock Nova
|
||||
Shockwave Support
|
||||
Shockwave Totem
|
||||
Shore Map
|
||||
Short Bow
|
||||
@ -1428,14 +1514,17 @@ Silver Coin
|
||||
Silver Flask
|
||||
Silver Key
|
||||
Silver Locket
|
||||
Silver Oil
|
||||
Simple Iron Net
|
||||
Simple Robe
|
||||
Simple Rope Net
|
||||
Simple Steel Net
|
||||
Singular Incubator
|
||||
Sinner Tricorne
|
||||
Siphoning Trap
|
||||
Skean
|
||||
Skinning Knife
|
||||
Skittering Incubator
|
||||
Slaughter Knife
|
||||
Sledgehammer
|
||||
Sleek Coat
|
||||
@ -1457,6 +1546,7 @@ Soldier Helmet
|
||||
Soldier's Brigandine
|
||||
Sorcerer Boots
|
||||
Sorcerer Gloves
|
||||
Soulrend
|
||||
Sovereign Spiked Shield
|
||||
Spark
|
||||
Sparkling Claw
|
||||
@ -1505,6 +1595,7 @@ Steel Ring
|
||||
Steelhead
|
||||
Steelscale Boots
|
||||
Steelscale Gauntlets
|
||||
Steelskin
|
||||
Steelwood Bow
|
||||
Stibnite Flask
|
||||
Stiletto
|
||||
@ -1516,6 +1607,7 @@ Storm Blade
|
||||
Storm Brand
|
||||
Storm Burst
|
||||
Storm Call
|
||||
Stormblast Mine
|
||||
Strand Map
|
||||
Strapped Boots
|
||||
Strapped Leather
|
||||
@ -1531,6 +1623,7 @@ Stygian Vise
|
||||
Sulphur Flask
|
||||
Sulphur Vents Map
|
||||
Summit Map
|
||||
Summon Carrion Golem
|
||||
Summon Chaos Golem
|
||||
Summon Flame Golem
|
||||
Summon Holy Relic
|
||||
@ -1538,7 +1631,8 @@ Summon Ice Golem
|
||||
Summon Lightning Golem
|
||||
Summon Phantasm on Kill Support
|
||||
Summon Raging Spirit
|
||||
Summon Skeleton
|
||||
Summon Skeletons
|
||||
Summon Skitterbots
|
||||
Summon Stone Golem
|
||||
Sun Leather
|
||||
Sun Orb
|
||||
@ -1549,11 +1643,13 @@ Sunken City Map
|
||||
Supreme Spiked Shield
|
||||
Sweep
|
||||
Swift Affliction Support
|
||||
Swift Assembly Support
|
||||
Talisman Leaguestone
|
||||
Talon Axe
|
||||
Tangled Fossil
|
||||
Tarnished Spirit Shield
|
||||
Teak Round Shield
|
||||
Teal Oil
|
||||
Tectonic Slam
|
||||
Tempered Foil
|
||||
Tempest Leaguestone
|
||||
@ -1564,15 +1660,18 @@ Tenderizer
|
||||
Terrace Map
|
||||
Terror Claw
|
||||
Terror Maul
|
||||
Thaumaturge's Incubator
|
||||
Thaumaturgical Net
|
||||
Thaumetic Emblem
|
||||
Thaumetic Sulphite
|
||||
The Admirer
|
||||
The Aesthete
|
||||
The Archmage's Right Hand
|
||||
The Arena Champion
|
||||
The Army of Blood
|
||||
The Artist
|
||||
The Avenger
|
||||
The Bargain
|
||||
The Battle Born
|
||||
The Beast
|
||||
The Betrayal
|
||||
@ -1593,10 +1692,14 @@ The Chains that Bind
|
||||
The Coming Storm
|
||||
The Conduit
|
||||
The Cursed King
|
||||
The Damned
|
||||
The Dapper Prodigy
|
||||
The Dark Mage
|
||||
The Darkest Dream
|
||||
The Deal
|
||||
The Deceiver
|
||||
The Deep Ones
|
||||
The Demon
|
||||
The Demoness
|
||||
The Devastator
|
||||
The Doctor
|
||||
@ -1614,12 +1717,14 @@ The Ethereal
|
||||
The Explorer
|
||||
The Eye of Desire
|
||||
The Eye of Fury
|
||||
The Eye of Terror
|
||||
The Eye of the Dragon
|
||||
The Fathomless Depths
|
||||
The Feast
|
||||
The Fiend
|
||||
The Fletcher
|
||||
The Flora's Gift
|
||||
The Fool
|
||||
The Formless Sea
|
||||
The Forsaken
|
||||
The Fox
|
||||
@ -1628,9 +1733,11 @@ The Garish Power
|
||||
The Gemcutter
|
||||
The Gentleman
|
||||
The Gladiator
|
||||
The Golden Era
|
||||
The Hale Heart
|
||||
The Harvester
|
||||
The Hermit
|
||||
The Heroic Shot
|
||||
The Hoarder
|
||||
The Hunger
|
||||
The Immortal
|
||||
@ -1642,24 +1749,31 @@ The Inventor
|
||||
The Iron Bard
|
||||
The Jester
|
||||
The Jeweller's Boon
|
||||
The Journey
|
||||
The King's Blade
|
||||
The King's Heart
|
||||
The Landing
|
||||
The Last One Standing
|
||||
The Lich
|
||||
The Life Thief
|
||||
The Lion
|
||||
The Lord in Black
|
||||
The Lord of Celebration
|
||||
The Lover
|
||||
The Lunaris Priestess
|
||||
The Mad King
|
||||
The Master
|
||||
The Master Artisan
|
||||
The Mayor
|
||||
The Mercenary
|
||||
The Messenger
|
||||
The Metalsmith's Gift
|
||||
The Mountain
|
||||
The Nurse
|
||||
The Oath
|
||||
The Obscured
|
||||
The Offering
|
||||
The Old Man
|
||||
The One With All
|
||||
The Opulent
|
||||
The Pack Leader
|
||||
@ -1668,7 +1782,9 @@ The Penitent
|
||||
The Poet
|
||||
The Polymath
|
||||
The Porcupine
|
||||
The Price of Loyalty
|
||||
The Price of Protection
|
||||
The Primordial
|
||||
The Professor
|
||||
The Puzzle
|
||||
The Queen
|
||||
@ -1684,11 +1800,14 @@ The Samurai's Eye
|
||||
The Scarred Meadow
|
||||
The Scavenger
|
||||
The Scholar
|
||||
The Seeker
|
||||
The Sephirot
|
||||
The Shaper's Key
|
||||
The Shaper's Realm
|
||||
The Side Quest
|
||||
The Sigil
|
||||
The Siren
|
||||
The Skeleton
|
||||
The Soul
|
||||
The Spark and the Flame
|
||||
The Spoiled Prince
|
||||
@ -1726,6 +1845,7 @@ The Wilted Rose
|
||||
The Wind
|
||||
The Witch
|
||||
The Wolf
|
||||
The Wolf's Legacy
|
||||
The Wolf's Shadow
|
||||
The Wolven King's Bite
|
||||
The Wolverine
|
||||
@ -1735,6 +1855,7 @@ The Wretched
|
||||
Thicket Bow
|
||||
Thicket Map
|
||||
Thief's Garb
|
||||
Thirst for Knowledge
|
||||
Thorium Spirit Shield
|
||||
Thorn Rapier
|
||||
Three Faces in the Dark
|
||||
@ -1748,7 +1869,18 @@ Tiger Hook
|
||||
Tiger Sword
|
||||
Tiger's Paw
|
||||
Timber Axe
|
||||
Time-Lost Incubator
|
||||
Time-Lost Relic
|
||||
Timeless Eternal Empire Emblem
|
||||
Timeless Eternal Empire Splinter
|
||||
Timeless Karui Emblem
|
||||
Timeless Karui Splinter
|
||||
Timeless Maraketh Emblem
|
||||
Timeless Maraketh Splinter
|
||||
Timeless Templar Emblem
|
||||
Timeless Templar Splinter
|
||||
Timeless Vaal Emblem
|
||||
Timeless Vaal Splinter
|
||||
Timeworn Claw
|
||||
Timeworn Reliquary Key
|
||||
Titan Gauntlets
|
||||
@ -1800,6 +1932,7 @@ Underground River Map
|
||||
Underground Sea Map
|
||||
Undying Flesh Talisman
|
||||
Unearth
|
||||
Unleash Support
|
||||
Unset Ring
|
||||
Unshaping Orb
|
||||
Ursine Pelt
|
||||
@ -1858,12 +1991,16 @@ Vaal Summon Skeletons
|
||||
Vaal Temple Map
|
||||
Valako's Jaw
|
||||
Vanguard Belt
|
||||
Vanity
|
||||
Variscite Blade
|
||||
Varnished Coat
|
||||
Vault Map
|
||||
Velvet Gloves
|
||||
Velvet Slippers
|
||||
Vengeance
|
||||
Venom Gyre
|
||||
Verdant Oil
|
||||
Vermillion Ring
|
||||
Vial of Awakening
|
||||
Vial of Consequence
|
||||
Vial of Dominance
|
||||
@ -1876,17 +2013,20 @@ Vial of the Ritual
|
||||
Vial of Transcendence
|
||||
Vicious Projectiles Support
|
||||
Vigilant Strike
|
||||
Vile Power
|
||||
Vile Staff
|
||||
Vile Toxins Support
|
||||
Villa Map
|
||||
Vine Circlet
|
||||
Vinia's Token
|
||||
Violet Oil
|
||||
Viper Strike
|
||||
Viridian Jewel
|
||||
Visored Sallet
|
||||
Vitality
|
||||
Void Axe
|
||||
Void Manipulation Support
|
||||
Void of the Elements
|
||||
Void Sceptre
|
||||
Volatile Dead
|
||||
Volatile Power
|
||||
@ -1924,6 +2064,7 @@ Warlord's Mark
|
||||
Waste Pool Map
|
||||
Wasteland Map
|
||||
Waterways Map
|
||||
Wave of Conviction
|
||||
Waxed Garb
|
||||
Wealth and Power
|
||||
Weeping Essence
|
||||
@ -1948,12 +2089,14 @@ Whispering Essence of Contempt
|
||||
Whispering Essence of Greed
|
||||
Whispering Essence of Hatred
|
||||
Whispering Essence of Woe
|
||||
Whispering Incubator
|
||||
Widowsilk Robe
|
||||
Wild Leather
|
||||
Wild Strike
|
||||
Wings of Vastiri
|
||||
Winter Orb
|
||||
Wither
|
||||
Withering Step
|
||||
Withering Touch Support
|
||||
Wolf Pelt
|
||||
Woodful Staff
|
||||
@ -1978,4 +2121,5 @@ Yriel's Key
|
||||
Zealot Boots
|
||||
Zealot Gloves
|
||||
Zealot Helmet
|
||||
Zealotry
|
||||
Zodiac Leather
|
@ -10,6 +10,7 @@ Claws
|
||||
Currency
|
||||
Daggers
|
||||
Delve Socketable Currency
|
||||
Delve Stackable Socketable Currency
|
||||
Divination Card
|
||||
Fishing Rods
|
||||
Flasks
|
||||
@ -17,6 +18,7 @@ Gems
|
||||
Gloves
|
||||
Helmets
|
||||
Hybrid Flasks
|
||||
Incubator
|
||||
Incursion Item
|
||||
Jewel
|
||||
Labyrinth Item
|
||||
@ -40,6 +42,7 @@ Quest Items
|
||||
Quivers
|
||||
Relics
|
||||
Rings
|
||||
Rune Dagger
|
||||
Sceptres
|
||||
Shields
|
||||
Small Relics
|
||||
@ -52,4 +55,5 @@ Two Hand Axes
|
||||
Two Hand Maces
|
||||
Two Hand Swords
|
||||
Utility Flasks
|
||||
Wands
|
||||
Wands
|
||||
Warstaff
|
@ -12,6 +12,7 @@ namespace Filtration.Services
|
||||
IEnumerable<string> ItemClasses { get; }
|
||||
IEnumerable<string> ItemMods { get; }
|
||||
IEnumerable<string> Prophecies { get; }
|
||||
IEnumerable<string> Enchantments { get; }
|
||||
}
|
||||
|
||||
internal class StaticDataService : IStaticDataService
|
||||
@ -29,12 +30,15 @@ namespace Filtration.Services
|
||||
|
||||
public IEnumerable<string> Prophecies { get; private set; }
|
||||
|
||||
public IEnumerable<string> Enchantments { get; private set; }
|
||||
|
||||
private void PopulateStaticData()
|
||||
{
|
||||
ItemBaseTypes = new LineReader(() => new StringReader(Resources.ItemBaseTypes)).ToList();
|
||||
ItemClasses = new LineReader(() => new StringReader(Resources.ItemClasses)).ToList();
|
||||
ItemMods = new LineReader(() => new StringReader(Resources.ItemMods)).ToList();
|
||||
Prophecies = new LineReader(() => new StringReader(Resources.Prophecies)).ToList();
|
||||
Enchantments = new LineReader(() => new StringReader(Resources.Enchantments)).ToList();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,12 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using Filtration.Enums;
|
||||
using Filtration.Properties;
|
||||
using Filtration.Utility;
|
||||
using NLog;
|
||||
using Squirrel;
|
||||
|
||||
@ -76,11 +79,14 @@ namespace Filtration.Services
|
||||
private bool _downloadPrereleaseUpdates;
|
||||
private UpdateStatus _updateStatus;
|
||||
|
||||
public UpdateService(ISettingsService settingsService)
|
||||
public UpdateService(ISettingsService settingsService,
|
||||
ISplatNLogAdapter splatNLogAdapter)
|
||||
{
|
||||
_settingsService = settingsService;
|
||||
|
||||
UpdateStatus = UpdateStatus.NoUpdateAvailable;
|
||||
|
||||
Splat.Locator.CurrentMutable.Register(() => splatNLogAdapter, typeof(Splat.ILogger));
|
||||
}
|
||||
|
||||
public event EventHandler<UpdateStatusChangedEventArgs> UpdateStatusChanged;
|
||||
@ -117,6 +123,17 @@ namespace Filtration.Services
|
||||
_downloadPrereleaseUpdates = true;
|
||||
#endif
|
||||
|
||||
var expectedInstallationPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Filtration");
|
||||
var baseDirectory = AppDomain.CurrentDomain.BaseDirectory;
|
||||
|
||||
var runningInstalled = baseDirectory.StartsWith(expectedInstallationPath);
|
||||
|
||||
if (!runningInstalled)
|
||||
{
|
||||
Logger.Debug($"Skipping update check since base directory of {baseDirectory} does not start with the expected installation path of {expectedInstallationPath}");
|
||||
return;
|
||||
}
|
||||
|
||||
async Task CheckForUpdatesAsync(IUpdateManager updateManager)
|
||||
{
|
||||
_updates = await updateManager.CheckForUpdate(progress: progress => UpdateProgressChanged?.Invoke(this, new UpdateProgressChangedEventArgs(progress)));
|
||||
|
@ -11,6 +11,7 @@
|
||||
xmlns:enums="clr-namespace:Filtration.ObjectModel.Enums;assembly=Filtration.ObjectModel"
|
||||
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
|
||||
xmlns:views="clr-namespace:Filtration.Views"
|
||||
xmlns:utilities="clr-namespace:Filtration.Common.Utilities;assembly=Filtration.Common"
|
||||
mc:Ignorable="d"
|
||||
d:DataContext="{d:DesignInstance Type=userControls:BlockItemControl}"
|
||||
d:DesignHeight="200" d:DesignWidth="190">
|
||||
@ -86,6 +87,11 @@
|
||||
<userControls:EditableListBoxControl Margin="5,5,5,5" ItemsSource="{Binding Items}" AutoCompleteItemsSource="{Binding ElementName=TopLevelGrid, Path=DataContext.AutocompleteItemMods}" />
|
||||
</DataTemplate>
|
||||
|
||||
<!-- Enchantments Template -->
|
||||
<DataTemplate DataType="{x:Type blockItemTypes:HasEnchantmentBlockItem}">
|
||||
<userControls:EditableListBoxControl Margin="5,5,5,5" ItemsSource="{Binding Items}" AutoCompleteItemsSource="{Binding ElementName=TopLevelGrid, Path=DataContext.AutocompleteEnchantments}" />
|
||||
</DataTemplate>
|
||||
|
||||
<!-- Socket Groups Template -->
|
||||
<DataTemplate DataType="{x:Type blockItemTypes:SocketGroupBlockItem}">
|
||||
<userControls:EditableListBoxControl Margin="5,5,5,5" ItemsSource="{Binding Items}" />
|
||||
@ -117,7 +123,7 @@
|
||||
<!-- Color Template -->
|
||||
<DataTemplate DataType="{x:Type blockItemBaseTypes:ColorBlockItem}">
|
||||
<StackPanel>
|
||||
<xctk:ColorPicker SelectedColor="{Binding Color}" AvailableColors="{Binding ElementName=BlockItemContentControl, Path=DataContext.AvailableColors }" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors"/>
|
||||
<xctk:ColorPicker SelectedColor="{Binding Color}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors"/>
|
||||
<userControls:ThemeComponentSelectionControl ThemeComponent="{Binding ThemeComponent}"
|
||||
|
||||
Margin="0,2,0,2">
|
||||
@ -246,6 +252,13 @@
|
||||
</userControls:ThemeComponentSelectionControl>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
|
||||
<!-- Disable Drop Sound Template -->
|
||||
<DataTemplate DataType="{x:Type blockItemBaseTypes:NilBlockItem}">
|
||||
<Grid>
|
||||
<TextBlock Text="{Binding Description}" VerticalAlignment="Center" />
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ContentControl.Resources>
|
||||
</ContentControl>
|
||||
</Grid>
|
||||
|
@ -1,16 +1,13 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.ComponentModel;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Windows;
|
||||
using Filtration.Annotations;
|
||||
using Filtration.ObjectModel;
|
||||
using Filtration.ObjectModel.BlockItemBaseTypes;
|
||||
using Filtration.ObjectModel.Enums;
|
||||
using Filtration.ObjectModel.ThemeEditor;
|
||||
using Filtration.Views;
|
||||
using Filtration.ObjectModel.Enums;
|
||||
using Filtration.ObjectModel.ThemeEditor;
|
||||
using GalaSoft.MvvmLight.CommandWpf;
|
||||
using Xceed.Wpf.Toolkit;
|
||||
|
||||
namespace Filtration.UserControls
|
||||
{
|
||||
@ -81,9 +78,6 @@ namespace Filtration.UserControls
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public ObservableCollection<ColorItem> AvailableColors => PathOfExileColors.DefaultColors;
|
||||
|
||||
public List<string> SoundsAvailable => new List<string> {
|
||||
"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16",
|
||||
"ShGeneral", "ShBlessed", "ShChaos", "ShDivine", "ShExalted", "ShMirror", "ShAlchemy",
|
||||
|
52
Filtration/Utility/SplatNLogAdapter.cs
Normal file
52
Filtration/Utility/SplatNLogAdapter.cs
Normal file
@ -0,0 +1,52 @@
|
||||
using System;
|
||||
using NLog;
|
||||
using ILogger = Splat.ILogger;
|
||||
using LogLevel = Splat.LogLevel;
|
||||
|
||||
namespace Filtration.Utility
|
||||
{
|
||||
public interface ISplatNLogAdapter
|
||||
{
|
||||
}
|
||||
|
||||
public class SplatNLogAdapter : ILogger, ISplatNLogAdapter
|
||||
{
|
||||
private static readonly Logger Logger = LogManager.GetLogger("SquirrelLogger");
|
||||
|
||||
public void Write(string message, LogLevel logLevel)
|
||||
{
|
||||
switch (logLevel)
|
||||
{
|
||||
case LogLevel.Debug:
|
||||
{
|
||||
Logger.Debug(message);
|
||||
break;
|
||||
}
|
||||
case LogLevel.Info:
|
||||
{
|
||||
Logger.Info(message);
|
||||
break;
|
||||
}
|
||||
case LogLevel.Error:
|
||||
{
|
||||
Logger.Error(message);
|
||||
break;
|
||||
}
|
||||
case LogLevel.Fatal:
|
||||
{
|
||||
Logger.Fatal(message);
|
||||
break;
|
||||
}
|
||||
case LogLevel.Warn:
|
||||
{
|
||||
Logger.Warn(message);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(logLevel), logLevel, null);
|
||||
}
|
||||
}
|
||||
|
||||
public LogLevel Level { get; set; }
|
||||
}
|
||||
}
|
@ -131,15 +131,19 @@ namespace Filtration.ViewModels.DesignTime
|
||||
typeof (CorruptedBlockItem),
|
||||
typeof (ElderItemBlockItem),
|
||||
typeof (ShaperItemBlockItem),
|
||||
typeof (SynthesisedItemBlockItem),
|
||||
typeof (FracturedItemBlockItem),
|
||||
typeof (AnyEnchantmentBlockItem),
|
||||
typeof (MapTierBlockItem),
|
||||
typeof (ShapedMapBlockItem),
|
||||
typeof (ElderMapBlockItem),
|
||||
typeof (BlightedMapBlockItem),
|
||||
typeof (GemLevelBlockItem),
|
||||
typeof (StackSizeBlockItem),
|
||||
typeof (HasExplicitModBlockItem)
|
||||
typeof (HasExplicitModBlockItem),
|
||||
typeof (HasEnchantmentBlockItem),
|
||||
};
|
||||
public List<Type> AudioVisualBlockItemTypesAvailable { get; }
|
||||
public ObservableCollection<ColorItem> AvailableColors { get; }
|
||||
public Color DisplayTextColor => Colors.Red;
|
||||
public Color DisplayBackgroundColor => Colors.White;
|
||||
public Color DisplayBorderColor => Colors.GreenYellow;
|
||||
@ -151,6 +155,7 @@ namespace Filtration.ViewModels.DesignTime
|
||||
public bool HasSound { get; }
|
||||
public bool HasPositionalSound { get; }
|
||||
public bool HasCustomSound { get; }
|
||||
public bool HasDisabledDefaultSound { get; }
|
||||
public bool HasAudioVisualBlockItems { get; }
|
||||
public void RefreshBlockPreview()
|
||||
{
|
||||
|
@ -39,7 +39,7 @@ namespace Filtration.ViewModels.DesignTime
|
||||
|
||||
public bool IsScript { get; }
|
||||
public bool IsTheme { get; }
|
||||
public Task Close()
|
||||
public Task<bool> Close()
|
||||
{
|
||||
throw new System.NotImplementedException();
|
||||
}
|
||||
|
@ -54,7 +54,6 @@ namespace Filtration.ViewModels
|
||||
IEnumerable<string> AutocompleteItemMods { get; }
|
||||
List<Type> BlockItemTypesAvailable { get; }
|
||||
List<Type> AudioVisualBlockItemTypesAvailable { get; }
|
||||
ObservableCollection<ColorItem> AvailableColors { get; }
|
||||
Color DisplayTextColor { get; }
|
||||
Color DisplayBackgroundColor { get; }
|
||||
Color DisplayBorderColor { get; }
|
||||
@ -66,6 +65,7 @@ namespace Filtration.ViewModels
|
||||
bool HasSound { get; }
|
||||
bool HasPositionalSound { get; }
|
||||
bool HasCustomSound { get; }
|
||||
bool HasDisabledDefaultSound { get; }
|
||||
bool HasAudioVisualBlockItems { get; }
|
||||
void RefreshBlockPreview();
|
||||
}
|
||||
@ -208,6 +208,8 @@ namespace Filtration.ViewModels
|
||||
|
||||
public IEnumerable<string> AutocompleteItemMods => _staticDataService.ItemMods;
|
||||
|
||||
public IEnumerable<string> AutocompleteEnchantments => _staticDataService.Enchantments;
|
||||
|
||||
public List<Type> BlockItemTypesAvailable => new List<Type>
|
||||
{
|
||||
typeof (ItemLevelBlockItem),
|
||||
@ -226,12 +228,17 @@ namespace Filtration.ViewModels
|
||||
typeof (CorruptedBlockItem),
|
||||
typeof (ElderItemBlockItem),
|
||||
typeof (ShaperItemBlockItem),
|
||||
typeof (SynthesisedItemBlockItem),
|
||||
typeof (FracturedItemBlockItem),
|
||||
typeof (AnyEnchantmentBlockItem),
|
||||
typeof (MapTierBlockItem),
|
||||
typeof (ShapedMapBlockItem),
|
||||
typeof (ElderMapBlockItem),
|
||||
typeof (BlightedMapBlockItem),
|
||||
typeof (GemLevelBlockItem),
|
||||
typeof (StackSizeBlockItem),
|
||||
typeof (HasExplicitModBlockItem)
|
||||
typeof (HasExplicitModBlockItem),
|
||||
typeof (HasEnchantmentBlockItem),
|
||||
};
|
||||
|
||||
public List<Type> AudioVisualBlockItemTypesAvailable => new List<Type>
|
||||
@ -276,8 +283,6 @@ namespace Filtration.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
public ObservableCollection<ColorItem> AvailableColors => PathOfExileColors.DefaultColors;
|
||||
|
||||
public Color DisplayTextColor => Block.DisplayTextColor;
|
||||
public Color DisplayBackgroundColor => Block.DisplayBackgroundColor;
|
||||
public Color DisplayBorderColor => Block.DisplayBorderColor;
|
||||
@ -290,6 +295,7 @@ namespace Filtration.ViewModels
|
||||
public bool HasSound => Block.HasBlockItemOfType<SoundBlockItem>();
|
||||
public bool HasPositionalSound => Block.HasBlockItemOfType<PositionalSoundBlockItem>();
|
||||
public bool HasCustomSound => Block.HasBlockItemOfType<CustomSoundBlockItem>();
|
||||
public bool HasDisabledDefaultSound => Block.HasBlockItemOfType<DisableDropSoundBlockItem>();
|
||||
|
||||
public bool HasAudioVisualBlockItems => AudioVisualBlockItems.Any();
|
||||
|
||||
@ -352,6 +358,10 @@ namespace Filtration.ViewModels
|
||||
private void OnPasteBlockStyleCommand()
|
||||
{
|
||||
_parentScriptViewModel.PasteBlockStyle(this);
|
||||
foreach (var blockItem in Block.BlockItems.OfType<IAudioVisualBlockItem>())
|
||||
{
|
||||
blockItem.PropertyChanged += OnBlockItemChanged;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnAddBlockCommand()
|
||||
@ -529,6 +539,7 @@ namespace Filtration.ViewModels
|
||||
RaisePropertyChanged(nameof(HasSound));
|
||||
RaisePropertyChanged(nameof(HasPositionalSound));
|
||||
RaisePropertyChanged(nameof(HasCustomSound));
|
||||
RaisePropertyChanged(nameof(HasDisabledDefaultSound));
|
||||
}
|
||||
|
||||
private void OnBlockItemsCollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
|
||||
@ -537,6 +548,7 @@ namespace Filtration.ViewModels
|
||||
RaisePropertyChanged(nameof(SummaryBlockItems));
|
||||
RaisePropertyChanged(nameof(AudioVisualBlockItems));
|
||||
RaisePropertyChanged(nameof(HasAudioVisualBlockItems));
|
||||
RaisePropertyChanged(nameof(HasDisabledDefaultSound));
|
||||
}
|
||||
|
||||
private void OnCustomSoundFileDialog()
|
||||
@ -613,6 +625,7 @@ namespace Filtration.ViewModels
|
||||
|
||||
Block.IsEdited = true;
|
||||
_parentScriptViewModel.SetDirtyFlag();
|
||||
_parentScriptViewModel.Script.ItemFilterScriptSettings.BlockGroupsEnabled = true;
|
||||
|
||||
Messenger.Default.Send(new NotificationMessage<bool>(_parentScriptViewModel.ShowAdvanced, "BlockGroupsChanged"));
|
||||
UpdateBlockGroups();
|
||||
@ -641,6 +654,11 @@ namespace Filtration.ViewModels
|
||||
|
||||
Messenger.Default.Send(new NotificationMessage<bool>(_parentScriptViewModel.ShowAdvanced, "BlockGroupsChanged"));
|
||||
UpdateBlockGroups();
|
||||
|
||||
if (BlockGroups.Count <= 0)
|
||||
{
|
||||
_parentScriptViewModel.Script.ItemFilterScriptSettings.BlockGroupsEnabled = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -393,7 +393,7 @@ namespace Filtration.ViewModels
|
||||
{
|
||||
for (var i = 0; i < SelectedBlockViewModels.Count; i++)
|
||||
{
|
||||
if (!ViewItemFilterBlockViewModels.Contains(SelectedBlockViewModels[i]))
|
||||
if (SelectedBlockViewModels[i] == null || !ViewItemFilterBlockViewModels.Contains(SelectedBlockViewModels[i]))
|
||||
{
|
||||
SelectedBlockViewModels.RemoveAt(i--);
|
||||
}
|
||||
@ -562,6 +562,8 @@ namespace Filtration.ViewModels
|
||||
|
||||
public bool CanModifySelectedBlocks()
|
||||
{
|
||||
ValidateSelectedBlocks();
|
||||
|
||||
if (SelectedBlockViewModels.Count < 1)
|
||||
return false;
|
||||
|
||||
@ -578,6 +580,9 @@ namespace Filtration.ViewModels
|
||||
|
||||
public bool CanModifyBlock(IItemFilterBlockViewModelBase itemFilterBlock)
|
||||
{
|
||||
if (itemFilterBlock == null)
|
||||
return false;
|
||||
|
||||
if (itemFilterBlock is IItemFilterBlockViewModel)
|
||||
return true;
|
||||
|
||||
@ -796,34 +801,37 @@ namespace Filtration.ViewModels
|
||||
await Close();
|
||||
}
|
||||
|
||||
public async Task Close()
|
||||
public async Task<bool> Close()
|
||||
{
|
||||
if (!IsDirty)
|
||||
{
|
||||
CloseScript();
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
var result = _messageBoxService.Show("Filtration",
|
||||
"Save script \"" + Filename + "\"?", MessageBoxButton.YesNoCancel, MessageBoxImage.Question);
|
||||
|
||||
switch (result)
|
||||
var result = _messageBoxService.Show("Filtration",
|
||||
"Save script \"" + Filename + "\"?", MessageBoxButton.YesNoCancel, MessageBoxImage.Question);
|
||||
|
||||
switch (result)
|
||||
{
|
||||
case MessageBoxResult.Yes:
|
||||
{
|
||||
case MessageBoxResult.Yes:
|
||||
{
|
||||
await SaveAsync();
|
||||
CloseScript();
|
||||
break;
|
||||
}
|
||||
case MessageBoxResult.No:
|
||||
{
|
||||
CloseScript();
|
||||
break;
|
||||
}
|
||||
case MessageBoxResult.Cancel:
|
||||
{
|
||||
return;
|
||||
}
|
||||
await SaveAsync();
|
||||
CloseScript();
|
||||
return true;
|
||||
}
|
||||
case MessageBoxResult.No:
|
||||
{
|
||||
CloseScript();
|
||||
return true;
|
||||
}
|
||||
case MessageBoxResult.Cancel:
|
||||
{
|
||||
return false;
|
||||
}
|
||||
default:
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1309,10 +1317,10 @@ namespace Filtration.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
if (input.Count > 0)
|
||||
{
|
||||
_scriptCommandManager.ExecuteCommand(new RemoveBlockItemFromBlocksCommand(input));
|
||||
SetDirtyFlag();
|
||||
if (input.Count > 0)
|
||||
{
|
||||
_scriptCommandManager.ExecuteCommand(new RemoveBlockItemFromBlocksCommand(input));
|
||||
SetDirtyFlag();
|
||||
}
|
||||
}
|
||||
|
||||
@ -1335,15 +1343,15 @@ namespace Filtration.ViewModels
|
||||
}
|
||||
|
||||
if (!found) {
|
||||
var item = new DisableDropSoundBlockItem(true);
|
||||
var item = new DisableDropSoundBlockItem();
|
||||
input.Add(new Tuple<ObservableCollection<IItemFilterBlockItem>, IItemFilterBlockItem>(blockItems, item));
|
||||
}
|
||||
}
|
||||
|
||||
if (input.Count > 0)
|
||||
{
|
||||
if (input.Count > 0)
|
||||
{
|
||||
_scriptCommandManager.ExecuteCommand(new AddBlockItemToBlocksCommand(input));
|
||||
SetDirtyFlag();
|
||||
SetDirtyFlag();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -768,7 +768,10 @@ namespace Filtration.ViewModels
|
||||
continue;
|
||||
}
|
||||
|
||||
await document.Close();
|
||||
if (!await document.Close())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -1,12 +1,9 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Linq;
|
||||
using System.Windows.Media;
|
||||
using Filtration.ObjectModel;
|
||||
using Filtration.ObjectModel.BlockItemTypes;
|
||||
using Filtration.Views;
|
||||
using GalaSoft.MvvmLight;
|
||||
using GalaSoft.MvvmLight.CommandWpf;
|
||||
using Xceed.Wpf.Toolkit;
|
||||
|
||||
namespace Filtration.ViewModels
|
||||
{
|
||||
@ -62,8 +59,6 @@ namespace Filtration.ViewModels
|
||||
_itemFilterScript = itemFilterScript;
|
||||
}
|
||||
|
||||
public ObservableCollection<ColorItem> AvailableColors => PathOfExileColors.DefaultColors;
|
||||
|
||||
public Color NewTextColor
|
||||
{
|
||||
get => _replaceColorsParameterSet.NewTextColor;
|
||||
|
@ -25,7 +25,7 @@ namespace Filtration.ViewModels
|
||||
public bool IsScript => false;
|
||||
public bool IsTheme => false;
|
||||
|
||||
public Task Close()
|
||||
public Task<bool> Close()
|
||||
{
|
||||
throw new System.NotImplementedException();
|
||||
}
|
||||
|
@ -65,9 +65,10 @@ namespace Filtration.ViewModels
|
||||
|
||||
public bool IsInErrorState => UpdateStatus == UpdateStatus.Error;
|
||||
|
||||
public async Task Close()
|
||||
public async Task<bool> Close()
|
||||
{
|
||||
await Task.FromResult(true);
|
||||
return true;
|
||||
}
|
||||
|
||||
public RelayCommand CloseCommand { get; }
|
||||
|
@ -32,7 +32,7 @@
|
||||
<StackPanel Grid.Row="0" Grid.Column="1">
|
||||
<TextBlock FontWeight="Black">Filtration</TextBlock>
|
||||
<TextBlock Text="{Binding Version}" />
|
||||
<TextBlock>Copyright © 2018</TextBlock>
|
||||
<TextBlock>Copyright © 2019</TextBlock>
|
||||
<TextBlock>Created by Ben Wallis</TextBlock>
|
||||
<TextBlock>
|
||||
<Hyperlink NavigateUri="https://github.com/ben-wallis/Filtration/" extensions:HyperlinkExtensions.IsExternal="True">https://github.com/ben-wallis/Filtration/</Hyperlink>
|
||||
|
@ -11,7 +11,6 @@
|
||||
<Image Source="/Filtration;component/Resources/Icons/arrow_up_large_icon.png" x:Key="MoveUpIcon" x:Shared="false" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/arrow_bottom_icon.png" x:Key="MoveToBottomIcon" x:Shared="false" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/arrow_down_large_icon.png" x:Key="MoveDownIcon" x:Shared="false" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/speaker_icon.png" x:Key="SpeakerIcon" x:Shared="false" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/play_icon.png" x:Key="PlayIcon" x:Shared="false" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/about_icon.png" x:Key="AboutIcon" x:Shared="false" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/ReplaceColors.ico" x:Key="ReplaceColorsIcon" x:Shared="false" />
|
||||
@ -37,4 +36,4 @@
|
||||
<Image Source="/Filtration;component/Resources/Icons/standby_disabled_icon.png" x:Key="StandbyDisabledIcon" x:Shared="False" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/standby_enabled_icon.png" x:Key="EnableDropSoundsIcon" x:Shared="False" />
|
||||
<Image Source="/Filtration;component/Resources/Icons/standby_disabled_icon.png" x:Key="DisableDropSoundsIcon" x:Shared="False" />
|
||||
</ResourceDictionary>
|
||||
</ResourceDictionary>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<UserControl x:Class="Filtration.Views.ItemFilterBlockView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:userControls="clr-namespace:Filtration.UserControls"
|
||||
xmlns:toolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Input.Toolkit"
|
||||
@ -10,7 +10,7 @@
|
||||
xmlns:blockItemBaseTypes="clr-namespace:Filtration.ObjectModel.BlockItemBaseTypes;assembly=Filtration.ObjectModel"
|
||||
xmlns:componentModel="clr-namespace:System.ComponentModel;assembly=WindowsBase"
|
||||
xmlns:designTime="clr-namespace:Filtration.ViewModels.DesignTime"
|
||||
mc:Ignorable="d"
|
||||
mc:Ignorable="d"
|
||||
d:DataContext="{d:DesignInstance Type=designTime:DesignTimeItemFilterBlockViewModel, IsDesignTimeCreatable=True}"
|
||||
d:DesignHeight="400" d:DesignWidth="817">
|
||||
<UserControl.Resources>
|
||||
@ -18,6 +18,8 @@
|
||||
<views:BindingProxy x:Key="Proxy" Data="{Binding}" />
|
||||
<converters:BlockGroupAdvancedFillColorConverter x:Key="BlockGroupAdvancedFillColorConverter" />
|
||||
<converters:MinimapIconToCroppedBitmapConverter x:Key="MinimapIconToCroppedBitmapConverter"/>
|
||||
<converters:DisabledDefaultSoundConverter x:Key="DisabledDefaultSoundConverter"/>
|
||||
<converters:DisabledDefaultSoundTooltipConverter x:Key="DisabledDefaultSoundTooltipConverter"/>
|
||||
<Style TargetType="{x:Type ContentPresenter}" x:Key="BlockItemFadeInStyle">
|
||||
<Setter Property="LayoutTransform">
|
||||
<Setter.Value>
|
||||
@ -130,48 +132,90 @@
|
||||
<WrapPanel Grid.Row="0" Grid.Column="2" VerticalAlignment="Center">
|
||||
<Image Height="40" Width="40" Margin="0,0,10,0" Stretch="Fill">
|
||||
<Image.Source>
|
||||
<MultiBinding Converter="{StaticResource MinimapIconToCroppedBitmapConverter}">
|
||||
<Binding Path="DisplayIconSize"/>
|
||||
<Binding Path="DisplayIconColor"/>
|
||||
<Binding Path="DisplayIconShape"/>
|
||||
<MultiBinding Converter="{StaticResource MinimapIconToCroppedBitmapConverter}">
|
||||
<Binding Path="DisplayIconSize"/>
|
||||
<Binding Path="DisplayIconColor"/>
|
||||
<Binding Path="DisplayIconShape"/>
|
||||
</MultiBinding>
|
||||
</Image.Source>
|
||||
</Image>
|
||||
<Image Height="28" Width="28" Margin="0,0,5,0" Source="../Resources/Icons/no_sound_dds_light.png">
|
||||
<Image.ToolTip>
|
||||
<TextBlock>
|
||||
The default drop sound is disabled for this block.
|
||||
<LineBreak />
|
||||
Drops matched by this block emit no sound whatsoever
|
||||
</TextBlock>
|
||||
</Image.ToolTip>
|
||||
<Image.Style>
|
||||
<Style TargetType="Image">
|
||||
<Setter Property="Visibility" Value="Collapsed" />
|
||||
<Style.Triggers>
|
||||
<MultiDataTrigger>
|
||||
<MultiDataTrigger.Conditions>
|
||||
<Condition Binding="{Binding HasCustomSound}" Value="False" />
|
||||
<Condition Binding="{Binding HasSound}" Value="False" />
|
||||
<Condition Binding="{Binding HasPositionalSound}" Value="False" />
|
||||
<Condition Binding="{Binding HasDisabledDefaultSound}" Value="True" />
|
||||
</MultiDataTrigger.Conditions>
|
||||
<MultiDataTrigger.Setters>
|
||||
<Setter Property="Visibility" Value="Visible" />
|
||||
</MultiDataTrigger.Setters>
|
||||
</MultiDataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Image.Style>
|
||||
</Image>
|
||||
<Button Command="{Binding PlaySoundCommand}"
|
||||
Width="25"
|
||||
Height="25"
|
||||
Width="32"
|
||||
Height="32"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
Margin="0,0,3,0"
|
||||
Visibility="{Binding HasSound, Converter={StaticResource BooleanVisibilityConverter}}"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent"
|
||||
ToolTip="Click to preview drop sound">
|
||||
<Image Source="/Filtration;component/Resources/Icons/speaker_icon.png" VerticalAlignment="Center" HorizontalAlignment="Center" />
|
||||
BorderBrush="Transparent">
|
||||
<Button.ToolTip>
|
||||
<MultiBinding Converter="{StaticResource DisabledDefaultSoundTooltipConverter}">
|
||||
<Binding Source="Click to preview drop sound."/>
|
||||
<Binding Path="HasDisabledDefaultSound"/>
|
||||
</MultiBinding>
|
||||
</Button.ToolTip>
|
||||
<Image Source="{Binding HasDisabledDefaultSound, Converter={StaticResource DisabledDefaultSoundConverter}}" VerticalAlignment="Center" HorizontalAlignment="Center" />
|
||||
</Button>
|
||||
<Button Command="{Binding PlayPositionalSoundCommand}"
|
||||
Width="25"
|
||||
Height="25"
|
||||
Width="32"
|
||||
Height="32"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
Margin="0,0,3,0"
|
||||
Visibility="{Binding HasPositionalSound, Converter={StaticResource BooleanVisibilityConverter}}"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent"
|
||||
ToolTip="Click to preview drop sound">
|
||||
<Image Source="/Filtration;component/Resources/Icons/speaker_icon.png" VerticalAlignment="Center" HorizontalAlignment="Center" />
|
||||
BorderBrush="Transparent">
|
||||
<Button.ToolTip>
|
||||
<MultiBinding Converter="{StaticResource DisabledDefaultSoundTooltipConverter}">
|
||||
<Binding Source="Click to preview positional drop sound."/>
|
||||
<Binding Path="HasDisabledDefaultSound"/>
|
||||
</MultiBinding>
|
||||
</Button.ToolTip>
|
||||
<Image Source="{Binding HasDisabledDefaultSound, Converter={StaticResource DisabledDefaultSoundConverter}}" VerticalAlignment="Center" HorizontalAlignment="Center" />
|
||||
</Button>
|
||||
<Button Command="{Binding PlayCustomSoundCommand}"
|
||||
Width="25"
|
||||
Height="25"
|
||||
Width="32"
|
||||
Height="32"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
Margin="0,0,3,0"
|
||||
Visibility="{Binding HasCustomSound, Converter={StaticResource BooleanVisibilityConverter}}"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent"
|
||||
ToolTip="Click to preview drop sound">
|
||||
<Image Source="/Filtration;component/Resources/Icons/speaker_icon.png" VerticalAlignment="Center" HorizontalAlignment="Center" />
|
||||
BorderBrush="Transparent">
|
||||
<Button.ToolTip>
|
||||
<MultiBinding Converter="{StaticResource DisabledDefaultSoundTooltipConverter}">
|
||||
<Binding Source="Click to preview custom drop sound."/>
|
||||
<Binding Path="HasDisabledDefaultSound"/>
|
||||
</MultiBinding>
|
||||
</Button.ToolTip>
|
||||
<Image Source="{Binding HasDisabledDefaultSound, Converter={StaticResource DisabledDefaultSoundConverter}}" VerticalAlignment="Center" HorizontalAlignment="Center" />
|
||||
</Button>
|
||||
<Line Y1="5" Y2="38" StrokeThickness="2" Panel.ZIndex="999"
|
||||
Stroke="{Binding DisplayEffectColor, Converter={StaticResource ColorToSolidColorBrushConverter}, Mode=OneWay}"
|
||||
|
@ -2,8 +2,8 @@
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using Filtration.Common.Utilities;
|
||||
using Filtration.UserControls;
|
||||
using Filtration.Utility;
|
||||
|
||||
namespace Filtration.Views
|
||||
{
|
||||
@ -44,8 +44,9 @@ namespace Filtration.Views
|
||||
if (sender is ScrollViewer viewer && !e.Handled)
|
||||
{
|
||||
// Don't handle events if they originated from a control within an EditableListBoxControl
|
||||
// since we still want to allow scrolling within those with the mouse wheel
|
||||
if (e.OriginalSource is DependencyObject dependencyObject && VisualTreeUtility.FindParent<EditableListBoxControl>(dependencyObject) != null)
|
||||
// or a ComboBox since we still want to allow scrolling within those with the mouse wheel
|
||||
if (e.OriginalSource is DependencyObject dependencyObject && (IsDropDownScrollViewer(dependencyObject) || ParentIsEditableListBoxControl(dependencyObject) ||
|
||||
ParentIsDropDownScrollViewer(dependencyObject)))
|
||||
{
|
||||
e.Handled = false;
|
||||
return;
|
||||
@ -60,5 +61,20 @@ namespace Filtration.Views
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static bool ParentIsEditableListBoxControl(DependencyObject dependencyObject)
|
||||
{
|
||||
return VisualTreeUtility.FindParent<EditableListBoxControl>(dependencyObject) != null;
|
||||
}
|
||||
private static bool ParentIsDropDownScrollViewer(DependencyObject dependencyObject)
|
||||
{
|
||||
var parent = VisualTreeUtility.FindParent<ScrollViewer>(dependencyObject);
|
||||
return parent != null && parent.Name == "DropDownScrollViewer";
|
||||
}
|
||||
|
||||
private static bool IsDropDownScrollViewer(DependencyObject dependencyObject)
|
||||
{
|
||||
return dependencyObject is ScrollViewer scrollViewer && scrollViewer.Name == "DropDownScrollViewer";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -44,7 +44,6 @@ namespace Filtration.Views
|
||||
if (!allDocumentsClosed)
|
||||
{
|
||||
e.Cancel = true;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
|
||||
xmlns:viewModels="clr-namespace:Filtration.ViewModels"
|
||||
xmlns:userControls="clr-namespace:Filtration.UserControls"
|
||||
xmlns:utilities="clr-namespace:Filtration.Common.Utilities;assembly=Filtration.Common"
|
||||
mc:Ignorable="d"
|
||||
d:DataContext="{d:DesignInstance Type=viewModels:ReplaceColorsViewModel}"
|
||||
Title="Replace Script Colors" Height="280" Width="540"
|
||||
@ -31,22 +32,22 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox Grid.Row="0" Grid.Column="0" Content="Replace Text Color" IsChecked="{Binding ReplaceTextColor}" />
|
||||
<TextBlock Grid.Row="0" Grid.Column="2" VerticalAlignment="Center">Existing Text Color</TextBlock>
|
||||
<xctk:ColorPicker Grid.Row="0" Grid.Column="4" SelectedColor="{Binding ReplaceColorsParameterSet.OldTextColor}" AvailableColors="{Binding AvailableColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<xctk:ColorPicker Grid.Row="0" Grid.Column="4" SelectedColor="{Binding ReplaceColorsParameterSet.OldTextColor}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<TextBlock Grid.Row="1" Grid.Column="2" VerticalAlignment="Center">New Text Color</TextBlock>
|
||||
<xctk:ColorPicker Grid.Row="1" Grid.Column="4" SelectedColor="{Binding NewTextColor}" AvailableColors="{Binding AvailableColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<xctk:ColorPicker Grid.Row="1" Grid.Column="4" SelectedColor="{Binding NewTextColor}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
|
||||
|
||||
<CheckBox Grid.Row="2" Grid.Column="0" Content="Replace Background Color" IsChecked="{Binding ReplaceBackgroundColor}" />
|
||||
<TextBlock Grid.Row="2" Grid.Column="2" VerticalAlignment="Center">Existing Background Color</TextBlock>
|
||||
<xctk:ColorPicker Grid.Row="2" Grid.Column="4" SelectedColor="{Binding ReplaceColorsParameterSet.OldBackgroundColor}" AvailableColors="{Binding AvailableColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<xctk:ColorPicker Grid.Row="2" Grid.Column="4" SelectedColor="{Binding ReplaceColorsParameterSet.OldBackgroundColor}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<TextBlock Grid.Row="3" Grid.Column="2" VerticalAlignment="Center">New Background Color</TextBlock>
|
||||
<xctk:ColorPicker Grid.Row="3" Grid.Column="4" SelectedColor="{Binding NewBackgroundColor}" AvailableColors="{Binding AvailableColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<xctk:ColorPicker Grid.Row="3" Grid.Column="4" SelectedColor="{Binding NewBackgroundColor}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
|
||||
<CheckBox Grid.Row="4" Grid.Column="0" Content="Replace Border Color" IsChecked="{Binding ReplaceBorderColor}" />
|
||||
<TextBlock Grid.Row="4" Grid.Column="2" VerticalAlignment="Center">Existing Border Color</TextBlock>
|
||||
<xctk:ColorPicker Grid.Row="4" Grid.Column="4" SelectedColor="{Binding ReplaceColorsParameterSet.OldBorderColor}" AvailableColors="{Binding AvailableColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<xctk:ColorPicker Grid.Row="4" Grid.Column="4" SelectedColor="{Binding ReplaceColorsParameterSet.OldBorderColor}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<TextBlock Grid.Row="5" Grid.Column="2" VerticalAlignment="Center">New Border Color</TextBlock>
|
||||
<xctk:ColorPicker Grid.Row="5" Grid.Column="4" SelectedColor="{Binding NewBorderColor}" AvailableColors="{Binding AvailableColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
<xctk:ColorPicker Grid.Row="5" Grid.Column="4" SelectedColor="{Binding NewBorderColor}" AvailableColors="{x:Static utilities:PathOfExileColors.DefaultColors}" ShowAvailableColors="True" AvailableColorsHeader="Path of Exile Colors" />
|
||||
|
||||
<userControls:ItemPreviewControl Grid.Row="6" Grid.Column="4" TextColor="{Binding DisplayTextColor}" BackgroundColor="{Binding DisplayBackgroundColor}" BorderColor="{Binding DisplayBorderColor}" />
|
||||
<TextBlock Grid.Row="6" Grid.Column="2" VerticalAlignment="Center">Preview</TextBlock>
|
||||
|
@ -2,6 +2,7 @@
|
||||
using Castle.MicroKernel.SubSystems.Configuration;
|
||||
using Castle.Windsor;
|
||||
using Filtration.Services;
|
||||
using Filtration.Utility;
|
||||
|
||||
namespace Filtration.WindsorInstallers
|
||||
{
|
||||
@ -58,6 +59,11 @@ namespace Filtration.WindsorInstallers
|
||||
Component.For<IDialogService>()
|
||||
.ImplementedBy<DialogService>()
|
||||
.LifeStyle.Singleton);
|
||||
|
||||
container.Register(
|
||||
Component.For<ISplatNLogAdapter>()
|
||||
.ImplementedBy<SplatNLogAdapter>()
|
||||
.LifeStyle.Singleton);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,27 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="AutoMapper" version="8.0.0" targetFramework="net461" />
|
||||
<package id="Castle.Core" version="4.3.1" targetFramework="net461" />
|
||||
<package id="Castle.Windsor" version="4.1.1" targetFramework="net461" />
|
||||
<package id="CommonServiceLocator" version="2.0.4" targetFramework="net461" />
|
||||
<package id="ControlzEx" version="3.0.2.4" targetFramework="net461" />
|
||||
<package id="DeltaCompressionDotNet" version="1.1.0" targetFramework="net461" />
|
||||
<package id="DynamicData" version="6.7.0.2529" targetFramework="net461" />
|
||||
<package id="Extended.Wpf.Toolkit" version="3.4.0" targetFramework="net461" />
|
||||
<package id="Fluent.Ribbon" version="6.1.0.326" targetFramework="net461" />
|
||||
<package id="MahApps.Metro" version="1.2.4.0" targetFramework="net461" />
|
||||
<package id="Mono.Cecil" version="0.9.6.1" targetFramework="net461" />
|
||||
<package id="MvvmLightLibs" version="5.4.1.1" targetFramework="net461" />
|
||||
<package id="NLog" version="4.5.11" targetFramework="net461" />
|
||||
<package id="NLog.Schema" version="4.5.11" targetFramework="net461" />
|
||||
<package id="NuGet.CommandLine" version="4.7.1" targetFramework="net461" developmentDependency="true" />
|
||||
<package id="SharpCompress" version="0.17.1" targetFramework="net461" />
|
||||
<package id="Splat" version="1.6.2" targetFramework="net461" />
|
||||
<package id="squirrel.windows" version="1.9.0" targetFramework="net461" />
|
||||
<package id="System.Reactive" version="4.0.0" targetFramework="net461" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
|
||||
<package id="WindowsAPICodePack-Core" version="1.1.2" targetFramework="net461" />
|
||||
<package id="WindowsAPICodePack-Shell" version="1.1.1" targetFramework="net461" />
|
||||
<package id="WpfAnimatedGif" version="1.4.17" targetFramework="net461" />
|
||||
<package id="WPFToolkit" version="3.5.50211.1" targetFramework="net451" />
|
||||
</packages>
|
@ -2,9 +2,9 @@
|
||||
|
||||
Filtration is an editor for Path of Exile item filter scripts.
|
||||
|
||||
## Current Release (Released 2018-09-30)
|
||||
## Current Release (Released 2019-09-11)
|
||||
<b>Installer</b><br>
|
||||
<a href="https://github.com/ben-wallis/Filtration/releases/download/1.0.1/Setup.exe">Setup.exe</a>
|
||||
<a href="https://github.com/ben-wallis/Filtration/releases/download/1.2.2/Setup.exe">Setup.exe</a>
|
||||
|
||||
## System Requirements
|
||||
Filtration requires .NET Framework 4.6.1 installed.
|
||||
@ -28,6 +28,3 @@ If you'd like to make your script fully compatible with Filtration, please take
|
||||
|
||||
##### Theme Editor
|
||||
<img src="https://i.imgur.com/Pi9wds1.png" />
|
||||
|
||||
## Contact
|
||||
You can find me on irc.freenode.net in #filtration
|
||||
|
Loading…
x
Reference in New Issue
Block a user