Projektdateien hinzufügen.

This commit is contained in:
Dominique Wyniger 2017-09-07 20:27:45 +02:00
parent 66b5e2b8e5
commit 1206aa4cde
31 changed files with 5633 additions and 0 deletions

22
ArkH.sln Normal file
View File

@ -0,0 +1,22 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26430.14
MinimumVisualStudioVersion = 10.0.40219.1
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ArkH", "ArkH\ArkH.vbproj", "{811C5D2C-7CD4-459D-8E07-09235D9F6B92}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{811C5D2C-7CD4-459D-8E07-09235D9F6B92}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{811C5D2C-7CD4-459D-8E07-09235D9F6B92}.Debug|Any CPU.Build.0 = Debug|Any CPU
{811C5D2C-7CD4-459D-8E07-09235D9F6B92}.Release|Any CPU.ActiveCfg = Release|Any CPU
{811C5D2C-7CD4-459D-8E07-09235D9F6B92}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

6
ArkH/App.config Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>

14
ArkH/Application.xaml Normal file
View File

@ -0,0 +1,14 @@
<Application x:Class="Application"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:ArkH"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes/MetroDark/MetroDark.MSControls.Core.Implicit.xaml" />
<ResourceDictionary Source="Themes/MetroDark/MetroDark.MSControls.Toolkit.Implicit.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>

6
ArkH/Application.xaml.vb Normal file
View File

@ -0,0 +1,6 @@
Class Application
' Ereignisse auf Anwendungsebene wie Startup, Exit und DispatcherUnhandledException
' können in dieser Datei verarbeitet werden.
End Class

196
ArkH/ArkH.vbproj Normal file
View File

@ -0,0 +1,196 @@
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{811C5D2C-7CD4-459D-8E07-09235D9F6B92}</ProjectGuid>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
<OutputType>WinExe</OutputType>
<RootNamespace>ArkH</RootNamespace>
<AssemblyName>ArkH</AssemblyName>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
<MyType>Custom</MyType>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<IncrementalBuild>true</IncrementalBuild>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>ArkH.xml</DocumentationFile>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036,42314</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<DebugSymbols>false</DebugSymbols>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<IncrementalBuild>false</IncrementalBuild>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>ArkH.xml</DocumentationFile>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036,42314</NoWarn>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>mYdLixs.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="System.Core" />
<Reference Include="System.Windows.Controls.Input.Toolkit, Version=3.5.40128.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Infragistics.Themes.MetroDark.Wpf.1.0.0\lib\net40\System.Windows.Controls.Input.Toolkit.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Windows.Controls.Layout.Toolkit, Version=3.5.40128.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Infragistics.Themes.MetroDark.Wpf.1.0.0\lib\net40\System.Windows.Controls.Layout.Toolkit.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="System.Xaml">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="System.Net.Http" />
<Reference Include="WPFToolkit, Version=3.5.40128.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Infragistics.Themes.MetroDark.Wpf.1.0.0\lib\net40\WPFToolkit.dll</HintPath>
<Private>True</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<ApplicationDefinition Include="Application.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<Compile Include="functions.vb" />
<Compile Include="GetWebAPIinfo.vb" />
<Compile Include="HandleProceses.vb" />
<Compile Include="Notification.xaml.vb">
<DependentUpon>Notification.xaml</DependentUpon>
</Compile>
<Compile Include="Overlay.xaml.vb">
<DependentUpon>Overlay.xaml</DependentUpon>
</Compile>
<Compile Include="PressKeys.vb" />
<Page Include="MainWindow.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Compile Include="Application.xaml.vb">
<DependentUpon>Application.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="globvars.vb" />
<Compile Include="MainWindow.xaml.vb">
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Page Include="Notification.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Overlay.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Themes\MetroDark\MetroDark.MSControls.Core.Implicit.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Themes\MetroDark\MetroDark.MSControls.Toolkit.Implicit.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Themes\MetroDark\Styles.Shared.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Themes\MetroDark\Styles.WPF.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Themes\MetroDark\Theme.Colors.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
</ItemGroup>
<ItemGroup>
<Import Include="System.Threading.Tasks" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Diagnostics" />
<Import Include="System.Windows" />
<Import Include="System.Windows.Controls" />
<Import Include="System.Windows.Data" />
<Import Include="System.Windows.Documents" />
<Import Include="System.Windows.Input" />
<Import Include="System.Windows.Shapes" />
<Import Include="System.Windows.Media" />
<Import Include="System.Windows.Media.Imaging" />
<Import Include="System.Windows.Navigation" />
</ItemGroup>
<ItemGroup>
<Compile Include="My Project\AssemblyInfo.vb">
<SubType>Code</SubType>
</Compile>
<Compile Include="My Project\MyExtensions\MyWpfExtension.vb">
<VBMyExtensionTemplateID>Microsoft.VisualBasic.WPF.MyExtension</VBMyExtensionTemplateID>
<VBMyExtensionTemplateVersion>1.0.0.0</VBMyExtensionTemplateVersion>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
</EmbeddedResource>
<None Include="config.ini" />
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<Resource Include="Themes\MetroDark\HowToApplyTheme.txt" />
</ItemGroup>
<ItemGroup>
<Resource Include="mYdLixs.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project>

20
ArkH/Functions.vb Normal file
View File

@ -0,0 +1,20 @@
Module functions
Public Function booltostring(ByVal inbool As Boolean)
Dim outstring As String
If inbool = True Then
outstring = "True"
Else
outstring = "False"
End If
Return outstring
End Function
Public Function stringtobool(ByVal instring As String)
Dim outbool As Boolean
If instring = "True" Then
outbool = True
Else
outbool = False
End If
Return outbool
End Function
End Module

50
ArkH/GetWebAPIinfo.vb Normal file
View File

@ -0,0 +1,50 @@
Imports System.Text.RegularExpressions
Imports System.Net
Imports System.IO
Module getWebAPIinfo
Public Sub getAPIdataFromWeb()
globvar_APIversion = getwebAPIdata("http://arkdedicated.com/version")
globvar_APistatus = getwebAPIdata("http://arkdedicated.com/officialserverstatus.ini")
globvar_APInews = striptags(getwebAPIdata("http://arkdedicated.com/news.ini"))
globvar_serverlist = getwebAPIdata("http://arkdedicated.com/officialservers.ini")
findEvents()
'MsgBox(globvar_eventmessage)
End Sub
Private Function getwebAPIdata(ByVal url As String)
Dim request As WebRequest = WebRequest.Create(url)
Dim response As WebResponse = request.GetResponse()
Dim datastream As Stream = response.GetResponseStream()
Dim reader As New StreamReader(datastream)
Dim responsefromserver As String = reader.ReadToEnd()
reader.Close()
response.Close()
Return responsefromserver
End Function
Private Function striptags(ByVal html As String) As String
Return Regex.Replace(html, "<.*?>", "")
End Function
Private Sub findEvents()
Dim Substrings() As String = globvar_APInews.Split(vbCrLf)
globvar_eventmessage = ""
globvar_eventactive = False
For Each substring In Substrings
'MsgBox(substring)
If substring.Contains("Phoenix") = True Then
globvar_eventactive = True
globvar_eventmessage = substring
' MsgBox(substring)
Else
End If
Next
' MsgBox(globvar_eventmessage)
End Sub
End Module

38
ArkH/HandleProceses.vb Normal file
View File

@ -0,0 +1,38 @@
Module HandleProceses
Private Sub checkprocess()
If System.Diagnostics.Process.GetProcessesByName("shootergame").Count > 0 Then
'Hier gehts weiter wenn der Prozess an ist.
globvar_gamerunning = True
Else
globvar_gamerunning = False
End If
End Sub
Public Sub startgame()
If System.Diagnostics.Process.GetProcessesByName("shootergame").Count = 0 Then
Try
If globvar_pathtogame.Contains("Shootergame.exe") = True Then
Process.Start(globvar_pathtogame)
Else
Process.Start(globvar_pathtogame & "\shootergame.exe")
End If
Catch ex As Exception
MsgBox("Can't start process")
End Try
End If
End Sub
End Module

78
ArkH/MainWindow.xaml Normal file
View File

@ -0,0 +1,78 @@
<Window x:Class="MainWindow"
AllowsTransparency="True" WindowStyle="None"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:ArkH"
mc:Ignorable="d"
Title="MainWindow" Height="600" Width="1000" Background="#BF181818">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="326*"/>
<ColumnDefinition Width="323*"/>
<ColumnDefinition Width="343*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="62*"/>
<RowDefinition Height="209*"/>
<RowDefinition Height="329*"/>
</Grid.RowDefinitions>
<Label x:Name="lblTitle" Content="lblTitle" Margin="10,10,10,6" FontSize="22"/>
<Grid Margin="10" Grid.Row="1">
<Rectangle Fill="#00F4F4F5" Stroke="Black"/>
<Button x:Name="btnBrowsePathToGame" Content="Browse" Margin="221,146,10,0" Height="30" VerticalAlignment="Top"/>
<TextBox x:Name="txtGameWindowName" Height="23" Margin="10,43,10,0" TextWrapping="Wrap" Text="TextBox" ToolTip="The Name of the Window written in Titlebar or when you hover over Taskbar Icon" VerticalAlignment="Top"/>
<Label x:Name="lblGameWindowName" Content="Game Window Name:" HorizontalAlignment="Left" Margin="10,10,0,0" Width="172" ToolTip="The Name of the Window written in Titlebar or when you hover over Taskbar Icon" Height="28" VerticalAlignment="Top"/>
<Label x:Name="lblPathToGame" Content="Path to game:" HorizontalAlignment="Left" Margin="10,78,0,0" Width="172" ToolTip="The Name of the Window written in Titlebar or when you hover over Taskbar Icon" Height="28" VerticalAlignment="Top"/>
<TextBox x:Name="txtPathToGame" Height="23" Margin="10,111,10,0" TextWrapping="Wrap" Text="TextBox" ToolTip="The Name of the Window written in Titlebar or when you hover over Taskbar Icon" VerticalAlignment="Top"/>
<CheckBox x:Name="chkAutoStartGame" Content="AutoStart Game" HorizontalAlignment="Left" Margin="10,150,0,0" VerticalAlignment="Top" Background="#FF00A9E0" Foreground="#FF00A9E0"/>
</Grid>
<Grid Margin="10" Grid.Row="1" Grid.Column="1">
<Rectangle Fill="#00F4F4F5" Stroke="Black"/>
<CheckBox x:Name="chkEnableOverlay" Content="Enable Overlay" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Background="#FF00A9E0" Foreground="#FF00A9E0"/>
<TextBox x:Name="txtKeyForward" HorizontalAlignment="Left" Height="23" Margin="242,43,0,0" TextWrapping="Wrap" Text="w" VerticalAlignment="Top" Width="50" HorizontalContentAlignment="Center"/>
<Label x:Name="lblKeyForward" Content="Key &quot;Forward&quot;" HorizontalAlignment="Left" Margin="10,43,0,0" VerticalAlignment="Top" Width="227"/>
<TextBox x:Name="txtKeyUse" HorizontalAlignment="Left" Height="23" Margin="242,78,0,0" TextWrapping="Wrap" Text="e" VerticalAlignment="Top" Width="50" HorizontalContentAlignment="Center"/>
<TextBox x:Name="txtKeyWhistle" HorizontalAlignment="Left" Height="23" Margin="242,113,0,0" TextWrapping="Wrap" Text="u" VerticalAlignment="Top" Width="50" HorizontalContentAlignment="Center"/>
<Label x:Name="lblKeyUse" Content="Key &quot;Use&quot;" HorizontalAlignment="Left" Margin="10,78,0,0" VerticalAlignment="Top" Width="227"/>
<ComboBox x:Name="cmbAttackBind" HorizontalAlignment="Left" Margin="109,148,0,0" VerticalAlignment="Top" Width="183">
<ComboBoxItem Cursor="" Content="Left Mousebutton"/>
<ComboBoxItem Content="Left CTRL"/>
</ComboBox>
<Label x:Name="lblKeyWhistleStop" Content="Key &quot;Whistle stop all&quot;" HorizontalAlignment="Left" Margin="10,113,0,0" VerticalAlignment="Top" Width="227"/>
<Label x:Name="lblKeyWhistleStop_Copy" Content="Attack Bind" HorizontalAlignment="Left" Margin="10,150,0,0" VerticalAlignment="Top" Width="80"/>
</Grid>
<Label x:Name="lblCounter" Content="lblCounter" Margin="10,10,10,6" FontSize="22" Grid.Column="1"/>
<Button x:Name="btnsave" Content="Save" HorizontalAlignment="Left" Margin="10,289,0,0" Grid.Row="2" VerticalAlignment="Top" Width="75" Click="Button_Click" Height="30"/>
<Button x:Name="btnSetDefault" Content="Set defaults" HorizontalAlignment="Left" Margin="90,289,0,0" Grid.Row="2" VerticalAlignment="Top" Width="115" Height="30"/>
<Grid Grid.Column="2" Margin="10" Grid.Row="1">
<Rectangle Fill="#00F4F4F5" Stroke="Black"/>
<ComboBox x:Name="cmbprofileselect" Margin="10,43,10,0" VerticalAlignment="Top"/>
<Label Content="Profile:" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="124"/>
</Grid>
<Grid Grid.Column="1" Margin="10" Grid.Row="2">
<Rectangle Fill="#00F4F4F5" Stroke="Black"/>
<TextBox x:Name="txtKeyForward_Copy" HorizontalAlignment="Left" Height="23" Margin="242,10,0,0" TextWrapping="Wrap" Text="F5" VerticalAlignment="Top" Width="50" HorizontalContentAlignment="Center"/>
<Label x:Name="lblKeyForward_Copy" Content="AutoWalk" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="227"/>
<TextBox x:Name="txtKeyForward_Copy1" HorizontalAlignment="Left" Height="23" Margin="242,43,0,0" TextWrapping="Wrap" Text="F6" VerticalAlignment="Top" Width="50" HorizontalContentAlignment="Center"/>
<Label x:Name="lblKeyForward_Copy1" Content="MateHelper" HorizontalAlignment="Left" Margin="10,43,0,0" VerticalAlignment="Top" Width="227"/>
<TextBox x:Name="txtKeyForward_Copy2" HorizontalAlignment="Left" Height="23" Margin="242,78,0,0" TextWrapping="Wrap" Text="F7" VerticalAlignment="Top" Width="50" HorizontalContentAlignment="Center"/>
<Label x:Name="lblKeyForward_Copy2" Content="BabyFeeder" HorizontalAlignment="Left" Margin="10,78,0,0" VerticalAlignment="Top" Width="227"/>
</Grid>
<Button x:Name="btnExit" Content="Exit" Grid.Column="2" HorizontalAlignment="Left" Margin="259,10,0,0" VerticalAlignment="Top" Width="74" Height="30"/>
<Grid Margin="10,10,10,45" Grid.Row="2">
<Rectangle Fill="#00F4F4F4" Stroke="Black"/>
<Slider HorizontalAlignment="Left" Margin="10,43,0,0" VerticalAlignment="Top" Width="289"/>
<Label x:Name="lblKeyForward_Copy3" Content="AutoFeed Rate (seconds)" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="227"/>
<Slider HorizontalAlignment="Left" Margin="10,97,0,0" VerticalAlignment="Top" Width="289"/>
<Label x:Name="lblKeyForward_Copy4" Content="AutoEat Rate (minutes)" HorizontalAlignment="Left" Margin="10,64,0,0" VerticalAlignment="Top" Width="227"/>
<Slider HorizontalAlignment="Left" Margin="10,151,0,0" VerticalAlignment="Top" Width="289"/>
<Label x:Name="lblKeyForward_Copy5" Content="AutoDrink Rate (minutes)" HorizontalAlignment="Left" Margin="10,118,0,0" VerticalAlignment="Top" Width="227"/>
<Slider HorizontalAlignment="Left" Margin="10,205,0,0" VerticalAlignment="Top" Width="289"/>
<Label x:Name="lblKeyForward_Copy6" Content="AutoScreenshot Interval (minutes)" HorizontalAlignment="Left" Margin="10,172,0,0" VerticalAlignment="Top" Width="227"/>
</Grid>
</Grid>
</Window>

866
ArkH/MainWindow.xaml.vb Normal file
View File

@ -0,0 +1,866 @@
Imports System.ComponentModel
Imports System.IO
Imports System.Runtime.InteropServices
Class MainWindow
Dim overlaywin As New Overlay()
Dim notifywin As New Notification()
Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As keys) As Short
Private WithEvents Bgworker As New ComponentModel.BackgroundWorker
Public Enum keys
' // UNASSIGNED // = &HFFFF0000 ' // [Modifiers] = -65536
' // UNASSIGNED // = &H0 ' // [None] = 000
VK_LBUTTON = &H1 ' // [LButton] = 001
VK_RBUTTON = &H2 ' // [RButton] = 002
VK_CANCEL = &H3 ' // [Cancel] = 003
VK_MBUTTON = &H4 ' // [MButton] = 004 ' NOT contiguous with L & RBUTTON
VK_XBUTTON1 = &H5 ' // [XButton1] = 005 ' NOT contiguous with L & RBUTTON
VK_XBUTTON2 = &H6 ' // [XButton2] = 006 ' NOT contiguous with L & RBUTTON
' // UNASSIGNED // = &H7 ' // ''UNASSIGNED = 007
VK_BACK = &H8 ' // [Back] = 008
VK_TAB = &H9 ' // [Tab] = 009
' // RESERVED // = &HA ' // [LineFeed] = 010
' // RESERVED // = &HB ' // ''UNASSIGNED = 011
VK_CLEAR = &HC ' // [Clear] = 012
VK_RETURN = &HD ' // [Return] = 013
' // UNDEFINED // ' // [Enter] = 013
VK_SHIFT = &H10 ' // [ShiftKey] = 016
VK_CONTROL = &H11 ' // [ControlKey] = 017
VK_MENU = &H12 ' // [Menu] = 018
VK_PAUSE = &H13 ' // [Pause] = 019
VK_CAPITAL = &H14 ' // [Capital] = 020
' // UNDEFINED // ' // [CapsLock] = 020
VK_HANGUL = &H15 ' // [HangulMode] = 021
VK_HANGEUL = &H15 ' // [HanguelMode] = 021 ' old name (compatibility)
VK_KANA = &H15 ' // [KanaMode] = 021
VK_JUNJA = &H17 ' // [JunjaMode] = 023
VK_FINAL = &H18 ' // [FinalMode] = 024
VK_KANJI = &H19 ' // [KanjiMode] = 025
VK_HANJA = &H19 ' // [HanjaMode] = 025
VK_ESCAPE = &H1B ' // [Escape] = 027
VK_CONVERT = &H1C ' // [IMEConvert] = 028
VK_NONCONVERT = &H1D ' // [IMENonconvert] = 029
VK_ACCEPT = &H1E ' // [IMEAccept] = 030
VK_MODECHANGE = &H1F ' // [IMEModeChange] = 031
VK_SPACE = &H20 ' // [Space] = 032
VK_PRIOR = &H21 ' // [Prior] = 033
' // UNDEFINED // ' // [PageUp] = 033
VK_NEXT = &H22 ' // [Next] = 034
' // UNDEFINED // ' // [PageDown] = 034
VK_END = &H23 ' // [End] = 035
VK_HOME = &H24 ' // [Home] = 036
VK_LEFT = &H25 ' // [Left] = 037
VK_UP = &H26 ' // [Up] = 038
VK_RIGHT = &H27 ' // [Right] = 039
VK_DOWN = &H28 ' // [Down] = 040
VK_SELECT = &H29 ' // [Select] = 041
VK_PRINT = &H2A ' // [Print] = 042
VK_EXECUTE = &H2B ' // [Execute] = 043
VK_SNAPSHOT = &H2C ' // [Snapshot] = 044
' // UNDEFINED // ' // [PrintScreen] = 044
VK_INSERT = &H2D ' // [Insert] = 045
VK_DELETE = &H2E ' // [Delete] = 046
VK_HELP = &H2F ' // [Help] = 047
VK_0 = &H30 ' // [D0] = 048
VK_1 = &H31 ' // [D1] = 049
VK_2 = &H32 ' // [D2] = 050
VK_3 = &H33 ' // [D3] = 051
VK_4 = &H34 ' // [D4] = 052
VK_5 = &H35 ' // [D5] = 053
VK_6 = &H36 ' // [D6] = 054
VK_7 = &H37 ' // [D7] = 055
VK_8 = &H38 ' // [D8] = 056
VK_9 = &H39 ' // [D9] = 057
' // UNASSIGNED // = &H40 to &H4F (058 to 064)
VK_A = &H41 ' // [A] = 065
VK_B = &H42 ' // [B] = 066
VK_C = &H43 ' // [C] = 067
VK_D = &H44 ' // [D] = 068
VK_E = &H45 ' // [E] = 069
VK_F = &H46 ' // [F] = 070
VK_G = &H47 ' // [G] = 071
VK_H = &H48 ' // [H] = 072
VK_I = &H49 ' // [I] = 073
VK_J = &H4A ' // [J] = 074
VK_K = &H4B ' // [K] = 075
VK_L = &H4C ' // [L] = 076
VK_M = &H4D ' // [M] = 077
VK_N = &H4E ' // [N] = 078
VK_O = &H4F ' // [O] = 079
VK_P = &H50 ' // [P] = 080
VK_Q = &H51 ' // [Q] = 081
VK_R = &H52 ' // [R] = 082
VK_S = &H53 ' // [S] = 083
VK_T = &H54 ' // [T] = 084
VK_U = &H55 ' // [U] = 085
VK_V = &H56 ' // [V] = 086
VK_W = &H57 ' // [W] = 087
VK_X = &H58 ' // [X] = 088
VK_Y = &H59 ' // [Y] = 089
VK_Z = &H5A ' // [Z] = 090
VK_LWIN = &H5B ' // [LWin] = 091
VK_RWIN = &H5C ' // [RWin] = 092
VK_APPS = &H5D ' // [Apps] = 093
' // RESERVED // = &H5E ' // ''UNASSIGNED = 094
VK_SLEEP = &H5F ' // [Sleep] = 095
VK_NUMPAD0 = &H60 ' // [NumPad0] = 096
VK_NUMPAD1 = &H61 ' // [NumPad1] = 097
VK_NUMPAD2 = &H62 ' // [NumPad2] = 098
VK_NUMPAD3 = &H63 ' // [NumPad3] = 099
VK_NUMPAD4 = &H64 ' // [NumPad4] = 100
VK_NUMPAD5 = &H65 ' // [NumPad5] = 101
VK_NUMPAD6 = &H66 ' // [NumPad6] = 102
VK_NUMPAD7 = &H67 ' // [NumPad7] = 103
VK_NUMPAD8 = &H68 ' // [NumPad8] = 104
VK_NUMPAD9 = &H69 ' // [NumPad9] = 105
VK_MULTIPLY = &H6A ' // [Multiply] = 106
VK_ADD = &H6B ' // [Add] = 107
VK_SEPARATOR = &H6C ' // [Separator] = 108
VK_SUBTRACT = &H6D ' // [Subtract] = 109
VK_DECIMAL = &H6E ' // [Decimal] = 110
VK_DIVIDE = &H6F ' // [Divide] = 111
VK_F1 = &H70 ' // [F1] = 112
VK_F2 = &H71 ' // [F2] = 113
VK_F3 = &H72 ' // [F3] = 114
VK_F4 = &H73 ' // [F4] = 115
VK_F5 = &H74 ' // [F5] = 116
VK_F6 = &H75 ' // [F6] = 117
VK_F7 = &H76 ' // [F7] = 118
VK_F8 = &H77 ' // [F8] = 119
VK_F9 = &H78 ' // [F9] = 120
VK_F10 = &H79 ' // [F10] = 121
VK_F11 = &H7A ' // [F11] = 122
VK_F12 = &H7B ' // [F12] = 123
VK_F13 = &H7C ' // [F13] = 124
VK_F14 = &H7D ' // [F14] = 125
VK_F15 = &H7E ' // [F15] = 126
VK_F16 = &H7F ' // [F16] = 127
VK_F17 = &H80 ' // [F17] = 128
VK_F18 = &H81 ' // [F18] = 129
VK_F19 = &H82 ' // [F19] = 130
VK_F20 = &H83 ' // [F20] = 131
VK_F21 = &H84 ' // [F21] = 132
VK_F22 = &H85 ' // [F22] = 133
VK_F23 = &H86 ' // [F23] = 134
VK_F24 = &H87 ' // [F24] = 135
' // UNASSIGNED // = &H88 to &H8F (136 to 143)
VK_NUMLOCK = &H90 ' // [NumLock] = 144
VK_SCROLL = &H91 ' // [Scroll] = 145
VK_OEM_NEC_EQUAL = &H92 ' // [NEC_Equal] = 146 ' NEC PC-9800 kbd definitions "=" key on numpad
VK_OEM_FJ_JISHO = &H92 ' // [Fujitsu_Masshou] = 146 ' Fujitsu/OASYS kbd definitions "Dictionary" key
VK_OEM_FJ_MASSHOU = &H93 ' // [Fujitsu_Masshou] = 147 ' Fujitsu/OASYS kbd definitions "Unregister word" key
VK_OEM_FJ_TOUROKU = &H94 ' // [Fujitsu_Touroku] = 148 ' Fujitsu/OASYS kbd definitions "Register word" key
VK_OEM_FJ_LOYA = &H95 ' // [Fujitsu_Loya] = 149 ' Fujitsu/OASYS kbd definitions "Left OYAYUBI" key
VK_OEM_FJ_ROYA = &H96 ' // [Fujitsu_Roya] = 150 ' Fujitsu/OASYS kbd definitions "Right OYAYUBI" key
' // UNASSIGNED // = &H97 to &H9F (151 to 159)
' NOTE :: &HA0 to &HA5 (160 to 165) = left and right Alt, Ctrl and Shift virtual keys.
' NOTE :: Used only as parameters to GetAsyncKeyState() and GetKeyState().
' NOTE :: No other API or message will distinguish left and right keys in this way.
VK_LSHIFT = &HA0 ' // [LShiftKey] = 160
VK_RSHIFT = &HA1 ' // [RShiftKey] = 161
VK_LCONTROL = &HA2 ' // [LControlKey] = 162
VK_RCONTROL = &HA3 ' // [RControlKey] = 163
VK_LMENU = &HA4 ' // [LMenu] = 164
VK_RMENU = &HA5 ' // [RMenu] = 165
VK_BROWSER_BACK = &HA6 ' // [BrowserBack] = 166
VK_BROWSER_FORWARD = &HA7 ' // [BrowserForward] = 167
VK_BROWSER_REFRESH = &HA8 ' // [BrowserRefresh] = 168
VK_BROWSER_STOP = &HA9 ' // [BrowserStop] = 169
VK_BROWSER_SEARCH = &HAA ' // [BrowserSearch] = 170
VK_BROWSER_FAVORITES = &HAB ' // [BrowserFavorites] = 171
VK_BROWSER_HOME = &HAC ' // [BrowserHome] = 172
VK_VOLUME_MUTE = &HAD ' // [VolumeMute] = 173
VK_VOLUME_DOWN = &HAE ' // [VolumeDown] = 174
VK_VOLUME_UP = &HAF ' // [VolumeUp] = 175
VK_MEDIA_NEXT_TRACK = &HB0 ' // [MediaNextTrack] = 176
VK_MEDIA_PREV_TRACK = &HB1 ' // [MediaPreviousTrack] = 177
VK_MEDIA_STOP = &HB2 ' // [MediaStop] = 178
VK_MEDIA_PLAY_PAUSE = &HB3 ' // [MediaPlayPause] = 179
VK_LAUNCH_MAIL = &HB4 ' // [LaunchMail] = 180
VK_LAUNCH_MEDIA_SELECT = &HB5 ' // [SelectMedia] = 181
VK_LAUNCH_APP1 = &HB6 ' // [LaunchApplication1] = 182
VK_LAUNCH_APP2 = &HB7 ' // [LaunchApplication2] = 183
' // UNASSIGNED // = &HB8 ' // ''UNASSIGNED = 184
' // UNASSIGNED // = &HB9 ' // ''UNASSIGNED = 185
VK_OEM_1 = &HBA ' // [Oem1] = 186 ' ";:" for USA
' // UNDEFINED // ' // [OemSemicolon] = 186 ' ";:" for USA
VK_OEM_PLUS = &HBB ' // [Oemplus] = 187 ' "+" any country
VK_OEM_COMMA = &HBC ' // [Oemcomma] = 188 ' "," any country
VK_OEM_MINUS = &HBD ' // [OemMinus] = 189 ' "-" any country
VK_OEM_PERIOD = &HBE ' // [OemPeriod] = 190 ' "." any country
VK_OEM_2 = &HBF ' // [Oem2] = 191 ' "/?" for USA
' // UNDEFINED // ' // [OemQuestion] = 191 ' "/?" for USA
' // UNDEFINED // ' // [Oemtilde] = 192 ' "'~" for USA
VK_OEM_3 = &HC0 ' // [Oem3] = 192 ' "'~" for USA
' // RESERVED // = &HC1 to &HD7 (193 to 215)
' // UNASSIGNED // = &HD8 to &HDA (216 to 218)
VK_OEM_4 = &HDB ' // [Oem4] = 219 ' "[{" for USA
' // UNDEFINED // ' // [OemOpenBrackets] = 219 ' "[{" for USA
' // UNDEFINED // ' // [OemPipe] = 220 ' "\|" for USA
VK_OEM_5 = &HDC ' // [Oem5] = 220 ' "\|" for USA
VK_OEM_6 = &HDD ' // [Oem6] = 221 ' "]}" for USA
' // UNDEFINED // ' // [OemCloseBrackets] = 221 ' "]}" for USA
' // UNDEFINED // ' // [OemQuotes] = 222 ' "'"" for USA
VK_OEM_7 = &HDE ' // [Oem7] = 222 ' "'"" for USA
VK_OEM_8 = &HDF ' // [Oem8] = 223
' // RESERVED // = &HE0 ' // ''UNASSIGNED = 224
VK_OEM_AX = &HE1 ' // [OEMAX] = 225 ' "AX" key on Japanese AX kbd
' // UNDEFINED // ' // [OemBackslash] = 226 ' "<>" or "\|" on RT 102-key kbd
VK_OEM_102 = &HE2 ' // [Oem102] = 226 ' "<>" or "\|" on RT 102-key kbd
VK_ICO_HELP = &HE3 ' // [ICOHelp] = 227 ' Help key on ICO
VK_ICO_00 = &HE4 ' // [ICO00] = 228 ' 00 key on ICO
VK_PROCESSKEY = &HE5 ' // [ProcessKey] = 229
VK_ICO_CLEAR = &HE6 ' // [ICOClear] = 230
VK_PACKET = &HE7 ' // [Packet] = 231
' // UNASSIGNED // = &HE8 ' // ''UNASSIGNED = 232
' NOTE :: Nokia/Ericsson definitions
VK_OEM_RESET = &HE9 ' // [OEMReset] = 233
VK_OEM_JUMP = &HEA ' // [OEMJump] = 234
VK_OEM_PA1 = &HEB ' // [OEMPA1] = 235
VK_OEM_PA2 = &HEC ' // [OEMPA2] = 236
VK_OEM_PA3 = &HED ' // [OEMPA3] = 237
VK_OEM_WSCTRL = &HEE ' // [OEMWSCtrl] = 238
VK_OEM_CUSEL = &HEF ' // [OEMCUSel] = 239
VK_OEM_ATTN = &HF0 ' // [OEMATTN] = 240
VK_OEM_FINISH = &HF1 ' // [OEMFinish] = 241
VK_OEM_COPY = &HF2 ' // [OEMCopy] = 242
VK_OEM_AUTO = &HF3 ' // [OEMAuto] = 243
VK_OEM_ENLW = &HF4 ' // [OEMENLW] = 244
VK_OEM_BACKTAB = &HF5 ' // [OEMBackTab] = 245
VK_ATTN = &HF6 ' // [Attn] = 246
VK_CRSEL = &HF7 ' // [Crsel] = 247
VK_EXSEL = &HF8 ' // [Exsel] = 248
VK_EREOF = &HF9 ' // [EraseEof] = 249
VK_PLAY = &HFA ' // [Play] = 250
VK_ZOOM = &HFB ' // [Zoom] = 251
VK_NONAME = &HFC ' // [NoName] = 252
VK_PA1 = &HFD ' // [Pa1] = 253
VK_OEM_CLEAR = &HFE ' // [OemClear] = 254
' // UNASSIGNED // = &HFFFF ' // [KeyCode] = 65535
' // UNASSIGNED // = &H10000 ' // [Shift] = 65536
' // UNASSIGNED // = &H20000 ' // [Control] = 131072
' // UNASSIGNED // = &H40000 ' // [Alt] = 262144
End Enum
Private Sub MainWindow_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
Me.Left = 150
Me.Top = 150
Try
initializeapp()
Catch ex As Exception
MsgBox("could not initialize")
End Try
addprofileoptions()
Bgworker.RunWorkerAsync()
If globvar_autostartgame = True Then
startgame()
End If
globaltimer()
updatemainwin()
End Sub
Private Sub Bgworker_DoWork(sender As Object, e As DoWorkEventArgs) Handles Bgworker.DoWork
getAPIdataFromWeb()
End Sub
Public Sub updatemainwin()
updateglobalstate()
lblTitle.Content = globvar_applicationname & " " & globvar_applicationversion
txtGameWindowName.Text = globvar_gamewindowname
txtPathToGame.Text = globvar_pathtogame
chkAutoStartGame.IsChecked = globvar_autostartgame
If globvar_autostartgame = True Then
txtPathToGame.IsEnabled = True
btnBrowsePathToGame.IsEnabled = True
Else
txtPathToGame.IsEnabled = False
btnBrowsePathToGame.IsEnabled = False
End If
If globvar_enableoverlay = True Then
notifywin.Show()
overlaywin.Show()
notifywin.screenmessage()
overlaywin.OL_Update()
chkEnableOverlay.IsChecked = True
Else
chkEnableOverlay.IsChecked = False
overlaywin.Hide()
notifywin.Hide()
End If
overlaywin.OL_Update()
notifywin.screenmessage()
'binds
txtKeyForward.Text = bind_forward
txtKeyUse.Text = bind_use
txtKeyWhistle.Text = bind_whistle
cmbAttackBind.SelectedIndex = bind_attack
'MsgBox(globvar_eventmessage)
End Sub
Private Sub globaltimer()
Dim globaltick As New System.Windows.Threading.DispatcherTimer()
AddHandler globaltick.Tick, AddressOf dispatcherTimer_Tick
globaltick.Interval = TimeSpan.FromSeconds(0.1)
globaltick.Start()
End Sub
Dim gltick As Integer = 0
Dim glticks As Integer = 0
Dim gltickm As Integer = 0
Dim gltickh As Integer = 0
Public Sub dispatcherTimer_Tick(ByVal sender As Object, ByVal e As EventArgs)
gltick = gltick + 1
'action every tick (10times second)
action_tick()
If gltick = 10 Then
glticks = glticks + 1
gltick = 0
'action every second
action_ticks()
End If
If glticks = 60 Then
gltickm = gltickm + 1
glticks = 0
'action every minute
action_tickm()
End If
If gltickm = 60 Then
gltickh = gltickh + 1
gltickm = 0
'action every hour
action_tickh()
End If
End Sub
Private Sub action_tick()
updatecounter()
If globvar_autowalkstate = True Then
AppActivate(globvar_gamewindowname)
'keypress(keys.VK_W)
'Dim tempkc = getkeycode(txtKeyForward.Text)
'Dim vkeycode As Integer = getkeycode(txtKeyForward.Text) And &HFF
'MsgBox(tempkc & vbCrLf & ConvertCharToVirtualKey(txtKeyWalk.Text))
keycodepress(ConvertCharToVirtualKey(txtKeyForward.Text))
End If
If globvar_matehelperstate = True Then
AppActivate(globvar_gamewindowname)
keycodepress(ConvertCharToVirtualKey(txtKeyWhistle.Text))
End If
End Sub
Private Sub action_ticks()
'Watch for Keypresses to toggle functions
If GetAsyncKeyState(keys.VK_F5) <> 0 Then
toggleautowalk()
End If
If GetAsyncKeyState(keys.VK_F6) <> 0 Then
togglematehelper()
End If
If GetAsyncKeyState(keys.VK_LMENU) <> 0 Then
togglemainwin()
End If
End Sub
Private Sub action_tickm()
Bgworker.RunWorkerAsync()
updatemainwin()
End Sub
Private Sub action_tickh()
End Sub
Public Sub toggleautowalk()
If globvar_autowalkstate = False Then
globvar_autowalkstate = True
'overlaywin.toggleautowalkbutton(True)
overlaywin.OL_Update()
Else
globvar_autowalkstate = False
overlaywin.OL_Update()
'overlaywin.toggleautowalkbutton(False)
'keyrelease(keys.VK_W)
keycoderelease(ConvertCharToVirtualKey(txtKeyForward.Text))
End If
updateglobalstate()
End Sub
Public Sub togglematehelper()
If globvar_matehelperstate = False Then
globvar_matehelperstate = True
overlaywin.OL_Update()
Else
globvar_matehelperstate = False
overlaywin.OL_Update()
keycoderelease(ConvertCharToVirtualKey(txtKeyWhistle.Text))
End If
updateglobalstate()
End Sub
Public Sub togglemainwin()
Me.Topmost = True
Me.Topmost = False
End Sub
Private Sub updatecounter()
Dim counter As String
counter = String.Format(gltickh.ToString("00")) & ":" & String.Format(gltickm.ToString("00")) & ":" & String.Format(glticks.ToString("00")) & "." & gltick
lblCounter.Content = counter
End Sub
Private Sub txtGameWindowName_TextChanged(sender As Object, e As TextChangedEventArgs) Handles txtGameWindowName.TextChanged
globvar_gamewindowname = txtGameWindowName.Text
End Sub
Private Sub Button_Click(sender As Object, e As RoutedEventArgs) Handles btnsave.Click
writeoptions()
End Sub
Public Sub initializeapp()
'check if config file is already there
Try
If Not System.IO.File.Exists("config.ini") Then
createconfig()
End If
Catch ex As Exception
MsgBox("Could not create config file")
End Try
Try
readoptions()
Catch ex As Exception
MsgBox("Could not read options")
End Try
End Sub
'creates default config file
Private Sub createconfig()
Dim OptionsList As New List(Of String)
OptionsList.Add("[General]")
OptionsList.Add("Applicationname=Arkh!")
OptionsList.Add("Applicationversion=1.0")
OptionsList.Add("GameWindowName=ARK: Survival Evolved")
OptionsList.Add("PathToGame=E:\Games\SteamLibrary\steamapps\common\ARK\ShooterGame\Binaries\Win64")
OptionsList.Add("EnableOverlay=True")
OptionsList.Add("AutoStartGame=False")
OptionsList.Add("[Keys]")
OptionsList.Add("[Binds]")
OptionsList.Add("Forward=w")
OptionsList.Add("Use=e")
OptionsList.Add("WhistleStop=u")
OptionsList.Add("AttackBind=0")
File.WriteAllLines("config.ini", OptionsList.ToArray())
' Dim writelines() As String = {"[General]", "globvar_applicationname=""ArkH!!""", "globvar_applicationversion=""1.0""", "globvar_gamewindowname=""ARK: Survival Evolved""", "globvar_pathtogame=""""", "globvar_autostartgame=""FALSE""", "[Keys]", "keys_autowalk=""F5""", "keys_matehelper=""F6""", "keys_autofeed=""F7""", "keys_autoeat=""F8""", "keys_autodrink=""F9""", "keys_autoattack=""F10""", "keys_autogather=""F11""", "keys_showhide=""F3""", "keys_overlay=""F4""", "keys_starttimer=""F2""", "keys_switchprofile=""F1""", "[Bindings]", "bind_use=""e""", "bind_attack=""mbutton""", "bind_forward=""w""", "bind_whistle=""u"""}
' Using outputfile As New StreamWriter("config.ini")
' For Each line As String In writelines
' outputfile.WriteLine(line)
' Next
' End Using
End Sub
Public Sub readoptions()
Dim ioFile As New StreamReader("config.ini")
Dim ioLines As String = ""
ioLines = ioFile.ReadToEnd
ioFile.Close()
ioFile.Dispose()
Dim seperatelines() As String = ioLines.Split(CChar(vbCrLf))
Dim max As Integer = UBound(seperatelines)
For mycounter = 0 To max - 1
If seperatelines(mycounter).Contains("[") = True And
seperatelines(mycounter).Contains("]") = True Then
ElseIf seperatelines(mycounter).Contains(";") = True Then
Else
If seperatelines(mycounter).Contains("=") = True Then
Dim parts() As String = seperatelines(mycounter).Split("=")
If parts(0).Contains("GameWindowName") = True Then
globvar_gamewindowname = parts(1)
ElseIf parts(0).Contains("Applicationname") = True Then
globvar_applicationname = parts(1)
ElseIf parts(0).Contains("Applicationversion") = True Then
globvar_applicationversion = parts(1)
ElseIf parts(0).Contains("PathToGame") = True Then
globvar_pathtogame = parts(1)
ElseIf parts(0).Contains("AutoStartGame") = True Then
globvar_autostartgame = stringtobool(parts(1))
ElseIf parts(0).Contains("EnableOverlay") = True Then
globvar_enableoverlay = stringtobool(parts(1))
ElseIf parts(0).Contains("Forward") = True Then
bind_forward = parts(1)
ElseIf parts(0).Contains("Use") = True Then
bind_use = parts(1)
ElseIf parts(0).Contains("WhistleStop") = True Then
bind_whistle = parts(1)
ElseIf parts(0).Contains("AttackBind") = True Then
bind_attack = parts(1)
End If
End If
End If
Next
End Sub
Public Sub writeoptions()
Dim optionslist As New List(Of String)
optionslist.Add("[General]")
optionslist.Add("Applicationname=" & globvar_applicationname)
optionslist.Add("Applicationversion=" & globvar_applicationversion)
optionslist.Add("GameWindowName=" & globvar_gamewindowname)
optionslist.Add("PathToGame=" & globvar_pathtogame)
optionslist.Add("AutoStartGame=" & booltostring(globvar_autostartgame))
optionslist.Add("EnableOverlay=" & booltostring(globvar_enableoverlay))
optionslist.Add("[Keys]")
optionslist.Add("[Binds")
optionslist.Add("Forward=" & bind_forward)
optionslist.Add("Use=" & bind_use)
optionslist.Add("WhistleStop=" & bind_whistle)
optionslist.Add("AttackBind=" & bind_attack)
File.WriteAllLines("config.ini", optionslist.ToArray())
End Sub
Private Sub chkAutoStartGame_Checked(sender As Object, e As RoutedEventArgs) Handles chkAutoStartGame.Checked
If chkAutoStartGame.IsChecked = True Then
globvar_autostartgame = True
Else
globvar_autostartgame = False
End If
updatemainwin()
writeoptions()
End Sub
Private Sub chkAutoStartGame_IsEnabledChanged(sender As Object, e As DependencyPropertyChangedEventArgs) Handles chkAutoStartGame.IsEnabledChanged
updatemainwin()
End Sub
Private Sub chkAutoStartGame_Unchecked(sender As Object, e As RoutedEventArgs) Handles chkAutoStartGame.Unchecked
globvar_autostartgame = False
updatemainwin()
writeoptions()
End Sub
Private Sub txtPathToGame_TextChanged(sender As Object, e As TextChangedEventArgs) Handles txtPathToGame.TextChanged
globvar_pathtogame = txtPathToGame.Text
End Sub
Private Sub MainWindow_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
writeoptions()
overlaywin.Close()
notifywin.Close()
End Sub
Private Sub btnSetDefault_Click(sender As Object, e As RoutedEventArgs) Handles btnSetDefault.Click
createconfig()
readoptions()
updatemainwin()
End Sub
Private Sub chkEnableOverlay_Checked(sender As Object, e As RoutedEventArgs) Handles chkEnableOverlay.Checked
globvar_enableoverlay = True
overlaywin.Show()
End Sub
Private Sub chkEnableOverlay_Unchecked(sender As Object, e As RoutedEventArgs) Handles chkEnableOverlay.Unchecked
globvar_enableoverlay = False
overlaywin.Hide()
End Sub
Private Function getkeycode(ByVal s As String) As keys
Dim kc As KeyConverter = New KeyConverter()
Try
Return CType(kc.ConvertFromString(s), keys)
Catch
Return Nothing
End Try
End Function
Public Shared Function ConvertCharToVirtualKey(ch As Char) As keys
Dim vkey As Short = VkKeyScan(ch)
Dim retval As keys = DirectCast(vkey And &HFF, keys)
Dim modifiers As Integer = vkey >> 8
If (modifiers And 1) <> 0 Then
retval = retval Or keys.VK_SHIFT
End If
If (modifiers And 2) <> 0 Then
retval = retval Or keys.VK_CONTROL
End If
Return retval
End Function
<System.Runtime.InteropServices.DllImport("user32.dll")>
Private Shared Function VkKeyScan(ch As Char) As Short
End Function
Private Sub txtKeyForward_TextChanged(sender As Object, e As TextChangedEventArgs) Handles txtKeyForward.TextChanged
bind_forward = txtKeyForward.Text
End Sub
Private Sub cmbAttackBind_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles cmbAttackBind.SelectionChanged
bind_attack = cmbAttackBind.SelectedIndex
End Sub
Private Sub txtKeyUse_TextChanged(sender As Object, e As TextChangedEventArgs) Handles txtKeyUse.TextChanged
bind_use = txtKeyUse.Text
End Sub
Private Sub txtKeyWhistle_TextChanged(sender As Object, e As TextChangedEventArgs) Handles txtKeyWhistle.TextChanged
bind_whistle = txtKeyWhistle.Text
End Sub
Private Sub addprofileoptions()
cmbProfileSelect.Items.Clear()
cmbProfileSelect.Items.Add("Achatina")
cmbProfileSelect.Items.Add("Allosaurus")
cmbProfileSelect.Items.Add("Alpha Carno")
cmbProfileSelect.Items.Add("Ammonite")
cmbProfileSelect.Items.Add("Anglerfish")
cmbProfileSelect.Items.Add("Ankylosaurus")
cmbProfileSelect.Items.Add("Araneo")
cmbProfileSelect.Items.Add("Archaeopteryx")
cmbProfileSelect.Items.Add("Argentavis")
cmbProfileSelect.Items.Add("Arthropluera")
cmbProfileSelect.Items.Add("Baryonyx")
cmbProfileSelect.Items.Add("Basilosaurus")
cmbProfileSelect.Items.Add("Beelzebufo")
cmbProfileSelect.Items.Add("BunnyDodo")
cmbProfileSelect.Items.Add("BunnyOviraptor")
cmbProfileSelect.Items.Add("Brontosaurus")
cmbProfileSelect.Items.Add("Broodmother Lysrix")
cmbProfileSelect.Items.Add("Chalicotherium")
cmbProfileSelect.Items.Add("Carbonemys")
cmbProfileSelect.Items.Add("Carnotaurus")
cmbProfileSelect.Items.Add("Castoroides")
cmbProfileSelect.Items.Add("Cnidaria")
cmbProfileSelect.Items.Add("Coelacanth")
cmbProfileSelect.Items.Add("Compy")
cmbProfileSelect.Items.Add("Daeodon")
cmbProfileSelect.Items.Add("Deathworm")
cmbProfileSelect.Items.Add("Dilophosaur")
cmbProfileSelect.Items.Add("Dimetrodon")
cmbProfileSelect.Items.Add("Dimorphodon")
cmbProfileSelect.Items.Add("Diplocaulus")
cmbProfileSelect.Items.Add("Diplodocus")
cmbProfileSelect.Items.Add("Direbear")
cmbProfileSelect.Items.Add("Direwolf")
cmbProfileSelect.Items.Add("Dodo")
cmbProfileSelect.Items.Add("DodoRex")
cmbProfileSelect.Items.Add("Dodo Wyvern")
cmbProfileSelect.Items.Add("Doedicurus")
cmbProfileSelect.Items.Add("Dragon")
cmbProfileSelect.Items.Add("Dung Beetle")
cmbProfileSelect.Items.Add("Dunkleosteus")
cmbProfileSelect.Items.Add("Electrophorus")
cmbProfileSelect.Items.Add("Equus")
cmbProfileSelect.Items.Add("Unicorn")
cmbProfileSelect.Items.Add("Eurypterid")
cmbProfileSelect.Items.Add("Gallimimus")
cmbProfileSelect.Items.Add("Giant Bee")
cmbProfileSelect.Items.Add("Giganotosaurus")
cmbProfileSelect.Items.Add("Gigantopithecus")
cmbProfileSelect.Items.Add("Griffin")
cmbProfileSelect.Items.Add("Hesperornis")
cmbProfileSelect.Items.Add("Human (Male)")
cmbProfileSelect.Items.Add("Human (Female)")
cmbProfileSelect.Items.Add("Hyaenodon")
cmbProfileSelect.Items.Add("Ichthyornis")
cmbProfileSelect.Items.Add("Ichthyosaurus")
cmbProfileSelect.Items.Add("Iguanodon")
cmbProfileSelect.Items.Add("Jerboa")
cmbProfileSelect.Items.Add("Skeletal Jerboa")
cmbProfileSelect.Items.Add("Jug Bug")
cmbProfileSelect.Items.Add("Oil Jug Bug")
cmbProfileSelect.Items.Add("Water Jug Bug")
cmbProfileSelect.Items.Add("Kairuku")
cmbProfileSelect.Items.Add("Kaprosuchus")
cmbProfileSelect.Items.Add("Kentrosaurus")
cmbProfileSelect.Items.Add("Leech")
cmbProfileSelect.Items.Add("Diseased Leech")
cmbProfileSelect.Items.Add("Leedsichthys")
cmbProfileSelect.Items.Add("Liopleurodon")
cmbProfileSelect.Items.Add("Lymantria")
cmbProfileSelect.Items.Add("Lystrosaurus")
cmbProfileSelect.Items.Add("Mammoth")
cmbProfileSelect.Items.Add("Manta")
cmbProfileSelect.Items.Add("Manticore")
cmbProfileSelect.Items.Add("Mantis")
cmbProfileSelect.Items.Add("Megalania")
cmbProfileSelect.Items.Add("Megaloceros")
cmbProfileSelect.Items.Add("Megalodon")
cmbProfileSelect.Items.Add("Megalosaurus")
cmbProfileSelect.Items.Add("Meganeura")
cmbProfileSelect.Items.Add("Megapithecus")
cmbProfileSelect.Items.Add("Megatherium")
cmbProfileSelect.Items.Add("Mesopithecus")
cmbProfileSelect.Items.Add("Microraptor")
cmbProfileSelect.Items.Add("Morellatops")
cmbProfileSelect.Items.Add("Mosasaurus")
cmbProfileSelect.Items.Add("Moschops")
cmbProfileSelect.Items.Add("Onychonycteris")
cmbProfileSelect.Items.Add("Oviraptor")
cmbProfileSelect.Items.Add("Ovis")
cmbProfileSelect.Items.Add("Pachy")
cmbProfileSelect.Items.Add("Pachyrhinosaurus")
cmbProfileSelect.Items.Add("Paraceratherium")
cmbProfileSelect.Items.Add("Parasaurolophus")
cmbProfileSelect.Items.Add("Pegomastax")
cmbProfileSelect.Items.Add("Pelagornis")
cmbProfileSelect.Items.Add("Phiomia")
cmbProfileSelect.Items.Add("Piranha")
cmbProfileSelect.Items.Add("Plesiosaur")
cmbProfileSelect.Items.Add("Procoptodon")
cmbProfileSelect.Items.Add("Pteranodon")
cmbProfileSelect.Items.Add("Pulmonoscorpius")
cmbProfileSelect.Items.Add("Purlovia")
cmbProfileSelect.Items.Add("Quetzalcoatlus")
cmbProfileSelect.Items.Add("Raptor")
cmbProfileSelect.Items.Add("Rex")
cmbProfileSelect.Items.Add("Rock Elemental")
cmbProfileSelect.Items.Add("Rubble Golem")
cmbProfileSelect.Items.Add("Sabertooth")
cmbProfileSelect.Items.Add("Sabertooth Salmon")
cmbProfileSelect.Items.Add("Sarco")
cmbProfileSelect.Items.Add("Skeletal Bronto")
cmbProfileSelect.Items.Add("Skeletal Carnotaurus")
cmbProfileSelect.Items.Add("Skeletal Giganotosaurus")
cmbProfileSelect.Items.Add("Skeletal Quetzal")
cmbProfileSelect.Items.Add("Skeletal Raptor")
cmbProfileSelect.Items.Add("Skeletal Rex")
cmbProfileSelect.Items.Add("Skeletal Stego")
cmbProfileSelect.Items.Add("Skeletal Trike")
cmbProfileSelect.Items.Add("Spino")
cmbProfileSelect.Items.Add("Stegosaurus")
cmbProfileSelect.Items.Add("Tapejara")
cmbProfileSelect.Items.Add("Terror Bird")
cmbProfileSelect.Items.Add("Therizinosaur")
cmbProfileSelect.Items.Add("Thorny Dragon")
cmbProfileSelect.Items.Add("Thylacoleo")
cmbProfileSelect.Items.Add("Titanoboa")
cmbProfileSelect.Items.Add("Titanomyrma")
cmbProfileSelect.Items.Add("Titanomyrma")
cmbProfileSelect.Items.Add("Titanosaur")
cmbProfileSelect.Items.Add("Triceratops")
cmbProfileSelect.Items.Add("Trilobite")
cmbProfileSelect.Items.Add("Troodon")
cmbProfileSelect.Items.Add("Turkey")
cmbProfileSelect.Items.Add("Super Turkey")
cmbProfileSelect.Items.Add("Tusoteuthis")
cmbProfileSelect.Items.Add("Vulture")
cmbProfileSelect.Items.Add("Wyvern")
cmbProfileSelect.Items.Add("Fire Wyvern")
cmbProfileSelect.Items.Add("Lightning Wyvern")
cmbProfileSelect.Items.Add("Poison Wyvern")
cmbProfileSelect.Items.Add("Ice Wyvern")
cmbProfileSelect.Items.Add("Bone Fire Wyvern")
cmbProfileSelect.Items.Add("Dodo Wyvern")
cmbProfileSelect.Items.Add("Zombie Fire Wyvern")
cmbProfileSelect.Items.Add("Zombie Lightning Wyvern")
cmbProfileSelect.Items.Add("Zombie Poison Wyvern")
cmbProfileSelect.Items.Add("Woolly Rhino")
cmbProfileSelect.Items.Add("Yeti")
cmbProfileSelect.Items.Add("Yutyrannus")
cmbProfileSelect.Items.Add("Zomdodo")
End Sub
Private Sub btnExit_Click(sender As Object, e As RoutedEventArgs) Handles btnExit.Click
Me.Close()
End Sub
End Class

View File

@ -0,0 +1,59 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
Imports System.Globalization
Imports System.Resources
Imports System.Windows
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die einer Assembly zugeordnet sind.
' Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("ArkH")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("ArkH")>
<Assembly: AssemblyCopyright("Copyright © 2017")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(false)>
'Um mit dem Erstellen lokalisierbarer Anwendungen zu beginnen, legen Sie
'<UICulture>ImCodeVerwendeteKultur</UICulture> in der VBPROJ-Datei
'in einer <PropertyGroup> fest. Wenn Sie in den Quelldateien beispielsweise Deutsch
'(Deutschland) verwenden, legen Sie <UICulture> auf "de-DE" fest. Heben Sie dann die Auskommentierung
'des nachstehenden NeutralResourceLanguage-Attributs auf. Aktualisieren Sie "en-US" in der nachstehenden Zeile,
'sodass es mit der UICulture-Einstellung in der Projektdatei übereinstimmt.
'<Assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)>
'Das ThemeInfo-Attribut beschreibt, wo Sie designspezifische und generische Ressourcenwörterbücher finden.
'1. Parameter: Speicherort der designspezifischen Ressourcenwörterbücher
'(wird verwendet, wenn eine Ressource auf der Seite nicht gefunden wird,
' oder in den Anwendungsressourcen-Wörterbüchern nicht gefunden werden kann.)
'2. Parameter: Speicherort des generischen Ressourcenwörterbuchs
'(wird verwendet, wenn eine Ressource auf der Seite nicht gefunden wird,
'in der Anwendung sowie in den designspezifischen Ressourcenwörterbüchern nicht gefunden werden kann)
<Assembly: ThemeInfo(ResourceDictionaryLocation.None, ResourceDictionaryLocation.SourceAssembly)>
'Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird.
<Assembly: Guid("78b8f0c5-1bee-4c2a-89ac-ced781325255")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@ -0,0 +1,121 @@
#If _MyType <> "Empty" Then
Namespace My
''' <summary>
''' Modul zum Definieren der im My-Namespace für WPF verfügbaren Eigenschaften
''' </summary>
''' <remarks></remarks>
<Global.Microsoft.VisualBasic.HideModuleName()> _
Module MyWpfExtension
Private s_Computer As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Devices.Computer)
Private s_User As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.ApplicationServices.User)
Private s_Windows As New ThreadSafeObjectProvider(Of MyWindows)
Private s_Log As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Logging.Log)
''' <summary>
''' Gibt das Anwendungsobjekt für die ausgeführte Anwendung zurück.
''' </summary>
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
Friend ReadOnly Property Application() As Application
Get
Return CType(Global.System.Windows.Application.Current, Application)
End Get
End Property
''' <summary>
''' Gibt Informationen über den Hostcomputer zurück.
''' </summary>
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
Friend ReadOnly Property Computer() As Global.Microsoft.VisualBasic.Devices.Computer
Get
Return s_Computer.GetInstance()
End Get
End Property
''' <summary>
''' Gibt Informationen über den aktuellen Benutzer zurück. Wenn Sie die Anwendung mit den aktuellen Windows-
''' Anmeldeinformationen ausführen möchten, rufen Sie My.User.InitializeWithWindowsUser() auf.
''' </summary>
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
Friend ReadOnly Property User() As Global.Microsoft.VisualBasic.ApplicationServices.User
Get
Return s_User.GetInstance()
End Get
End Property
''' <summary>
''' Gibt das Anwendungsprotokoll zurück. Die Listener können in der Konfigurationsdatei der Anwendung konfiguriert werden.
''' </summary>
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
Friend ReadOnly Property Log() As Global.Microsoft.VisualBasic.Logging.Log
Get
Return s_Log.GetInstance()
End Get
End Property
''' <summary>
''' Gibt die im Projekt definierte Windows-Sammlung zurück.
''' </summary>
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
Friend ReadOnly Property Windows() As MyWindows
<Global.System.Diagnostics.DebuggerHidden()> _
Get
Return s_Windows.GetInstance()
End Get
End Property
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Never)> _
<Global.Microsoft.VisualBasic.MyGroupCollection("System.Windows.Window", "Create__Instance__", "Dispose__Instance__", "My.MyWpfExtenstionModule.Windows")> _
Friend NotInheritable Class MyWindows
<Global.System.Diagnostics.DebuggerHidden()> _
Private Shared Function Create__Instance__(Of T As {New, Global.System.Windows.Window})(ByVal Instance As T) As T
If Instance Is Nothing Then
If s_WindowBeingCreated IsNot Nothing Then
If s_WindowBeingCreated.ContainsKey(GetType(T)) = True Then
Throw New Global.System.InvalidOperationException("The window cannot be accessed via My.Windows from the Window constructor.")
End If
Else
s_WindowBeingCreated = New Global.System.Collections.Hashtable()
End If
s_WindowBeingCreated.Add(GetType(T), Nothing)
Return New T()
s_WindowBeingCreated.Remove(GetType(T))
Else
Return Instance
End If
End Function
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1822:MarkMembersAsStatic")> _
<Global.System.Diagnostics.DebuggerHidden()> _
Private Sub Dispose__Instance__(Of T As Global.System.Windows.Window)(ByRef instance As T)
instance = Nothing
End Sub
<Global.System.Diagnostics.DebuggerHidden()> _
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Never)> _
Public Sub New()
MyBase.New()
End Sub
<Global.System.ThreadStatic()> Private Shared s_WindowBeingCreated As Global.System.Collections.Hashtable
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)> Public Overrides Function Equals(ByVal o As Object) As Boolean
Return MyBase.Equals(o)
End Function
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)> Public Overrides Function GetHashCode() As Integer
Return MyBase.GetHashCode
End Function
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1822:MarkMembersAsStatic")> _
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)> _
Friend Overloads Function [GetType]() As Global.System.Type
Return GetType(MyWindows)
End Function
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)> Public Overrides Function ToString() As String
Return MyBase.ToString
End Function
End Class
End Module
End Namespace
Partial Class Application
Inherits Global.System.Windows.Application
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1822:MarkMembersAsStatic")> _
Friend ReadOnly Property Info() As Global.Microsoft.VisualBasic.ApplicationServices.AssemblyInfo
<Global.System.Diagnostics.DebuggerHidden()> _
Get
Return New Global.Microsoft.VisualBasic.ApplicationServices.AssemblyInfo(Global.System.Reflection.Assembly.GetExecutingAssembly())
End Get
End Property
End Class
#End If

62
ArkH/My Project/Resources.Designer.vb generated Normal file
View File

@ -0,0 +1,62 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:$clrversion$
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My.Resources
'This class was auto-generated by the StronglyTypedResourceBuilder
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
'''<summary>
''' A strongly-typed resource class, for looking up localized strings, etc.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Returns the cached ResourceManager instance used by this class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("$safeprojectname$.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Overrides the current thread's CurrentUICulture property for all
''' resource lookups using this strongly typed resource class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set(ByVal value As Global.System.Globalization.CultureInfo)
resourceCulture = value
End Set
End Property
End Module
End Namespace

View File

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

73
ArkH/My Project/Settings.Designer.vb generated Normal file
View File

@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
#Region "My.Settings Auto-Save Functionality"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.ArkH.My.MySettings
Get
Return Global.ArkH.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

15
ArkH/Notification.xaml Normal file
View File

@ -0,0 +1,15 @@
<Window x:Class="Notification"
AllowsTransparency="True" WindowStyle="None" Background="Transparent" Topmost="True" ShowInTaskbar="false"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:ArkH"
mc:Ignorable="d"
Title="Notification" Height="400" Width="1920">
<Grid>
<Label x:Name="lblNotification" Content="Label" Margin="10" Foreground="#FF24D807" HorizontalContentAlignment="Center" FontSize="24"/>
</Grid>
</Window>

12
ArkH/Notification.xaml.vb Normal file
View File

@ -0,0 +1,12 @@
Public Class Notification
Public Sub screenmessage()
lblNotification.Content = globvar_eventmessage
End Sub
Private Sub Notification_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
Me.Left = 0
Me.Top = 0
End Sub
End Class

17
ArkH/Overlay.xaml Normal file
View File

@ -0,0 +1,17 @@
<Window x:Class="Overlay"
AllowsTransparency="True" WindowStyle="None" Background="Transparent" Topmost="True" ShowInTaskbar="false"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:ArkH"
mc:Ignorable="d"
Title="Overlay" Height="462.91" Width="181.967">
<Grid>
<StackPanel x:Name="stackOL">
<Label x:Name="lblTitle" Content="Label"/>
</StackPanel>
</Grid>
</Window>

87
ArkH/Overlay.xaml.vb Normal file
View File

@ -0,0 +1,87 @@
Public Class Overlay
Dim lblHelp As New Label
Private btnarray(7) As Button
Private Sub Overlay_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
Me.Left = 10
Me.Top = 10
For i As Integer = 0 To btnarray.Length - 1
btnarray(i) = New Button
btnarray(i).Content = selectbtnname(i)
btnarray(i).Opacity = 20%
btnarray(i).Height = 50
Next
'redraw()
OL_Update()
End Sub
Public Sub OL_Update()
stackOL.Children.Clear()
'Dim labeltitle As New Label
'labeltitle.Content = globvar_applicationname & " " & globvar_applicationversion
'labeltitle.FontSize = 18
' labeltitle.HorizontalContentAlignment = HorizontalAlignment.Center
lblTitle.FontSize = 18
lblTitle.Content = globvar_applicationname & " " & globvar_applicationversion
'stackOL.Children.Add(labeltitle)
stackOL.Children.Add(lblTitle)
Dim lblHelp As New Label()
lblHelp.Content = "AutoWalk: F5" & vbCrLf & "MateStop: F6" & vbCrLf & "Autofeed: F7" & vbCrLf & "AutoEat: F8" & vbCrLf & "AutoGather/PetHeal: F9" & vbCrLf & "AutoAttack: F10" & vbCrLf & "AutoDrink: F11"
lblHelp.FontSize = 9
updateglobalstate()
If globvar_globalstate = False Then
stackOL.Children.Add(lblHelp)
End If
If globvar_autowalkstate = True Then
stackOL.Children.Add(btnarray(0))
End If
If globvar_matehelperstate = True Then
stackOL.Children.Add(btnarray(1))
End If
'MsgBox(globvar_globalstate & vbCrLf & globvar_autowalkstate)
End Sub
Private Function selectbtnname(ByVal nrbtn As Integer)
Dim btntitle As String = ""
Select Case nrbtn
Case 0
btntitle = "AutoWalk (F5)"
Case 1
btntitle = "MateHelper (F6)"
Case 2
btntitle = "AutoFeed (F7)"
Case 3
btntitle = "AutoEat (F8)"
Case 4
btntitle = "AutoGather / PetHeal (F9)"
Case 5
btntitle = "AutoAttack (F10)"
Case 6
btntitle = "AutoDrink (F11)"
End Select
Return btntitle
End Function
End Class

49
ArkH/PressKeys.vb Normal file
View File

@ -0,0 +1,49 @@
Imports System.Runtime.InteropServices
Imports ArkH.MainWindow
Module PressKeys
<DllImport("user32.dll")>
Public Sub keybd_event(bVk As Byte, bScan As Byte, dwFlags As UInteger, dwExtraInfo As UInteger)
End Sub
'these are virtual key codes for keys
'Const VK_UP As Integer = &H26
Const VK_UP As Integer = &H57
'up key
'Const VK_DOWN As Integer = &H28
'down key
'Const VK_LEFT As Integer = &H25
'Const VK_RIGHT As Integer = &H27
Const KEYEVENTF_KEYUP As UInteger = &H2
Const KEYEVENTF_EXTENDEDKEY As UInteger = &H1
Dim state As Boolean = False
Public Function keypress(ByVal key As keys) As Integer
'Press the key
'MsgBox("Test")
AppActivate(globvar_gamewindowname)
keybd_event(CByte(key), 0, KEYEVENTF_EXTENDEDKEY Or 0, 0)
Return 0
End Function
Public Function keyrelease(ByVal key As keys) As Integer
'Release the key
AppActivate(globvar_gamewindowname)
keybd_event(CByte(key), 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
Return 0
End Function
Public Function keycodepress(ByVal keycode As Integer)
AppActivate(globvar_gamewindowname)
keybd_event(keycode, 0, KEYEVENTF_EXTENDEDKEY Or 0, 0)
Return 0
End Function
Public Function keycoderelease(ByVal keycode As Integer)
AppActivate(globvar_gamewindowname)
keybd_event(keycode, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
Return 0
End Function
End Module

View File

@ -0,0 +1,10 @@
To apply the Infragistics WPF MetroDark theme to your WPF application, paste the following code into your App.xaml
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes/MetroDark/MetroDark.MSControls.Core.Implicit.xaml" />
<ResourceDictionary Source="Themes/MetroDark/MetroDark.MSControls.Toolkit.Implicit.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

View File

@ -0,0 +1,964 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d">
<!-- ********************************* RESOURCES ********************************* -->
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Styles.WPF.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- ********************************* BRUSHES ********************************* -->
<!-- Slider Brushes -->
<SolidColorBrush x:Key="SliderThumbBackgroundBrush" Color="{StaticResource Color_005}" />
<SolidColorBrush x:Key="SliderThumbHoverBackgroundBrush" Color="{StaticResource Color_002}" />
<SolidColorBrush x:Key="SliderThumbPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="SliderThumbDisabledBackgroundBrush" Color="{StaticResource Color_005}" />
<SolidColorBrush x:Key="SliderTrackDisabledOverlayBackgroundBrush" Color="{StaticResource Color_008}" />
<SolidColorBrush x:Key="SliderThumbFocusedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="SliderTrackBackgroundBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="SliderSelectionRangeBackgroundBrush" Color="{StaticResource Color_024}" />
<!-- GridSplitter Brushes -->
<SolidColorBrush x:Key="GridSplitterBackgroundBrush" Color="{StaticResource Color_008}" />
<SolidColorBrush x:Key="GridSplitterBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="GridSplitterHoverBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="GridSplitterHoverBorderBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="GridSplitterPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="GridSplitterFocusedBorderBrush" Color="{StaticResource Color_024}" />
<!-- ProgressBar Brushes -->
<SolidColorBrush x:Key="ProgressBarBackgroundBrush" Color="{StaticResource Color_005}" />
<SolidColorBrush x:Key="ProgressBarForegroundBrush" Color="{StaticResource Color_024}" />
<LinearGradientBrush x:Key="ProgressBarIndeterminateBackgroundBrush" EndPoint="0,1" MappingMode="Absolute" SpreadMethod="Repeat" StartPoint="20,1" Opacity="0.8">
<LinearGradientBrush.Transform>
<TransformGroup>
<TranslateTransform X="0" />
<SkewTransform AngleX="-30" />
</TransformGroup>
</LinearGradientBrush.Transform>
<GradientStop Color="{StaticResource Color_023}" Offset="0.249" />
<GradientStop Color="{StaticResource Color_024}" Offset=".25" />
<GradientStop Color="{StaticResource Color_024}" Offset="0.75" />
<GradientStop Color="{StaticResource Color_023}" Offset="0.751" />
</LinearGradientBrush>
<!-- Tooltip Brushes -->
<SolidColorBrush x:Key="TooltipBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="TooltipBorderBrush" Color="{StaticResource Color_004}" />
<!-- Expander Brushes -->
<SolidColorBrush x:Key="ExpanderButtonBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="ExpanderButtonBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="ExpanderButtonHoverBackgroundBrush" Color="{StaticResource Color_007}" />
<SolidColorBrush x:Key="ExpanderButtonHoverBorderBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="ExpanderButtonPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ExpanderButtonPressedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ExpanderArrowHoverBorderBrush" Color="{StaticResource Color_002}" />
<SolidColorBrush x:Key="ExpanderArrowPressedBorderBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="ExpanderDisabledForegroundBrush" Color="{StaticResource Color_007}" />
<SolidColorBrush x:Key="ExpanderDisabledBackgroundBrush" Color="{StaticResource Color_007}" />
<SolidColorBrush x:Key="ExpanderBackgroundBrush" Color="{StaticResource Color_009}" />
<!-- GroupBox Brushes -->
<SolidColorBrush x:Key="GroupBoxBorderBrush" Color="{StaticResource Color_003}" />
<!-- PassWordBox Brushes -->
<SolidColorBrush x:Key="PasswordBoxForegroundBrush" Color="{StaticResource Color_024}" />
<!-- ********************************* TextBlock Style ********************************* -->
<Style x:Key="TextBlockStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="FontSize" Value="13.333" />
<Setter Property="FontFamily" Value="Segoe UI" />
</Style>
<!-- ********************************* Label Style ********************************* -->
<Style x:Key="LabelStyle" TargetType="{x:Type Label}">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="13.333" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
</Style>
<!-- ********************************* SliderRepeatButton Style ********************************* -->
<Style x:Key="SliderRepeatButtonStyle" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="Focusable" Value="false" />
<Setter Property="IsTabStop" Value="false" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{StaticResource TransparentBrush}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Slider Horizontal Thumb Style ********************************* -->
<Style x:Key="HSliderThumbStyle" TargetType="{x:Type Thumb}">
<Setter Property="Background" Value="{StaticResource SliderThumbBackgroundBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="MinHeight" Value="12" />
<Setter Property="MinWidth" Value="8" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Grid>
<Ellipse x:Name="ThumbBackground" Fill="{TemplateBinding Background}" Width="16" Height="16" />
<Ellipse x:Name="FocusedVisualElement" Stroke="{StaticResource SliderThumbFocusedBorderBrush}" Width="16" Height="16" StrokeThickness="2" Opacity="0" />
<Ellipse x:Name="DisabledVisualElement" Fill="{StaticResource DisabledVisualElement}" Width="16" Height="16" Opacity="0" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ThumbBackground" Property="Fill" Value="{StaticResource SliderThumbHoverBackgroundBrush}" />
</Trigger>
<Trigger Property="IsMouseCaptured" Value="True">
<Setter TargetName="ThumbBackground" Property="Fill" Value="{StaticResource SliderThumbPressedBackgroundBrush}" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter TargetName="DisabledVisualElement" Property="Opacity" Value="1" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Slider Vertical Thumb Style ********************************* -->
<Style x:Key="VSliderThumbStyle" TargetType="{x:Type Thumb}">
<Setter Property="Background" Value="{StaticResource SliderThumbBackgroundBrush}" />
<Setter Property="MinHeight" Value="8" />
<Setter Property="MinWidth" Value="12" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Grid>
<Ellipse x:Name="ThumbBackground" Fill="{TemplateBinding Background}" Width="16" Height="16" />
<Ellipse x:Name="FocusedVisualElement" Stroke="{StaticResource SliderThumbFocusedBorderBrush}" Width="16" Height="16" StrokeThickness="2" Opacity="0" />
<Ellipse x:Name="DisabledVisualElement" Fill="{StaticResource DisabledVisualElement}" Width="16" Height="16" Opacity="0" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ThumbBackground" Property="Fill" Value="{StaticResource SliderThumbHoverBackgroundBrush}" />
</Trigger>
<Trigger Property="IsMouseCaptured" Value="True">
<Setter TargetName="ThumbBackground" Property="Fill" Value="{StaticResource SliderThumbPressedBackgroundBrush}" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter TargetName="DisabledVisualElement" Property="Opacity" Value="1" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Slider Style ********************************* -->
<Style x:Key="SliderStyle" TargetType="{x:Type Slider}">
<Setter Property="Background" Value="Transparent" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Slider}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver" />
<VisualState x:Name="Disabled" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" MinHeight="{TemplateBinding MinHeight}" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TickBar x:Name="TopTick" Fill="{TemplateBinding Foreground}" Height="6" Placement="Top" Grid.Row="0" Visibility="Collapsed" />
<TickBar x:Name="BottomTick" Fill="{TemplateBinding Foreground}" Height="6" Placement="Bottom" Grid.Row="2" Visibility="Collapsed" />
<Border x:Name="TrackBackground" Background="{StaticResource SliderTrackBackgroundBrush}" Height="6" Grid.Row="1" VerticalAlignment="center">
<Canvas Margin="-6,-1">
<Rectangle x:Name="PART_SelectionRange" Fill="{StaticResource SliderSelectionRangeBackgroundBrush}" Height="6" Width="0" Visibility="Hidden" />
</Canvas>
</Border>
<Track x:Name="PART_Track" Grid.Row="1">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static Slider.DecreaseLarge}" Style="{StaticResource SliderRepeatButtonStyle}" />
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static Slider.IncreaseLarge}" Style="{StaticResource SliderRepeatButtonStyle}" />
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb x:Name="Thumb" Style="{StaticResource HSliderThumbStyle}" />
</Track.Thumb>
</Track>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="TickPlacement" Value="TopLeft">
<Setter Property="Visibility" TargetName="TopTick" Value="Visible" />
<Setter Property="Style" TargetName="Thumb" Value="{StaticResource HSliderThumbStyle}" />
<Setter Property="Margin" TargetName="TrackBackground" Value="5,2,5,0" />
</Trigger>
<Trigger Property="TickPlacement" Value="BottomRight">
<Setter Property="Visibility" TargetName="BottomTick" Value="Visible" />
<Setter Property="Style" TargetName="Thumb" Value="{StaticResource HSliderThumbStyle}" />
<Setter Property="Margin" TargetName="TrackBackground" Value="5,0,5,2" />
</Trigger>
<Trigger Property="TickPlacement" Value="Both">
<Setter Property="Visibility" TargetName="TopTick" Value="Visible" />
<Setter Property="Visibility" TargetName="BottomTick" Value="Visible" />
</Trigger>
<Trigger Property="IsSelectionRangeEnabled" Value="true">
<Setter Property="Visibility" TargetName="PART_SelectionRange" Value="Visible" />
</Trigger>
<Trigger Property="IsKeyboardFocused" Value="true">
<Setter Property="Foreground" TargetName="Thumb" Value="{StaticResource SliderThumbFocusedBorderBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="Orientation" Value="Vertical">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Slider}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition MinWidth="{TemplateBinding MinWidth}" Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TickBar x:Name="TopTick" Grid.Column="0" Fill="{TemplateBinding Foreground}" Placement="Left" Visibility="Collapsed" Width="6" />
<TickBar x:Name="BottomTick" Grid.Column="2" Fill="{TemplateBinding Foreground}" Placement="Right" Visibility="Collapsed" Width="6" />
<Border x:Name="TrackBackground" Background="{StaticResource SliderTrackBackgroundBrush}" Grid.Column="1" HorizontalAlignment="center" Width="6">
<Canvas Margin="-1,-6">
<Rectangle x:Name="PART_SelectionRange" Fill="{StaticResource SliderSelectionRangeBackgroundBrush}" Visibility="Hidden" Width="6" />
</Canvas>
</Border>
<Track x:Name="PART_Track" Grid.Column="1">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static Slider.DecreaseLarge}" Style="{StaticResource SliderRepeatButtonStyle}" />
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static Slider.IncreaseLarge}" Style="{StaticResource SliderRepeatButtonStyle}" />
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb x:Name="Thumb" Style="{StaticResource VSliderThumbStyle}" />
</Track.Thumb>
</Track>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="TickPlacement" Value="TopLeft">
<Setter Property="Visibility" TargetName="TopTick" Value="Visible" />
<Setter Property="Style" TargetName="Thumb" Value="{StaticResource VSliderThumbStyle}" />
<Setter Property="Margin" TargetName="TrackBackground" Value="2,5,0,5" />
</Trigger>
<Trigger Property="TickPlacement" Value="BottomRight">
<Setter Property="Visibility" TargetName="BottomTick" Value="Visible" />
<Setter Property="Style" TargetName="Thumb" Value="{StaticResource VSliderThumbStyle}" />
<Setter Property="Margin" TargetName="TrackBackground" Value="0,5,2,5" />
</Trigger>
<Trigger Property="TickPlacement" Value="Both">
<Setter Property="Visibility" TargetName="TopTick" Value="Visible" />
<Setter Property="Visibility" TargetName="BottomTick" Value="Visible" />
</Trigger>
<Trigger Property="IsSelectionRangeEnabled" Value="true">
<Setter Property="Visibility" TargetName="PART_SelectionRange" Value="Visible" />
</Trigger>
<Trigger Property="IsKeyboardFocused" Value="true">
<Setter Property="Foreground" TargetName="Thumb" Value="{StaticResource SliderThumbFocusedBorderBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
<!-- ********************************* RepeatButton Style ********************************* -->
<Style x:Key="RepeatButtonStyle" TargetType="{x:Type RepeatButton}">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Padding" Value="10,0,10,2" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="MinWidth" Value="30" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Grid SnapsToDevicePixels="True">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Fill">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Stroke">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonHoverBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Fill">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonPressedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Stroke">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonPressedBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="DisabledVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="FocusedVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="Bd" Fill="{StaticResource ButtonBackgroundBrush}" Stroke="{StaticResource ButtonBorderBrush}" StrokeThickness="1" />
<ContentControl x:Name="ContentControl" Foreground="{TemplateBinding Foreground}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
<ContentPresenter x:Name="contentPresenter" />
</ContentControl>
<Rectangle x:Name="FocusedVisualElement" Stroke="{StaticResource ButtonPressedBorderBrush}" Visibility="Collapsed" StrokeThickness="2" />
<Rectangle x:Name="DisabledVisualElement" Fill="{StaticResource DisabledVisualElement}" Visibility="Collapsed" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************** GridSplitter Style **********************************-->
<Style x:Key="GridSplitterStyle" TargetType="{x:Type GridSplitter}">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource GridSplitterBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource GridSplitterBorderBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="PreviewStyle">
<Setter.Value>
<Style TargetType="Control">
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<Rectangle Fill="{StaticResource GridSplitterPressedBackgroundBrush}" Opacity="0.8" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Setter.Value>
</Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid>
<Border x:Name="border" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}" Background="{TemplateBinding Background}" MinHeight="8" MinWidth="8">
<Grid>
<StackPanel x:Name="HGrip" Height="8" VerticalAlignment="Center" HorizontalAlignment="Center" Orientation="Vertical">
<Rectangle Fill="{StaticResource GlyphBackgroundBrush}" Height="1" Margin="1,2,1,1" StrokeThickness="0" Width="20" />
<Rectangle Fill="{StaticResource GlyphBackgroundBrush}" Height="1" Margin="1,1,1,2" StrokeThickness="0" Width="20" />
</StackPanel>
<StackPanel x:Name="VGrip" Width="8" VerticalAlignment="Center" HorizontalAlignment="Center" Orientation="Horizontal" Visibility="Collapsed">
<Rectangle Fill="{StaticResource GlyphBackgroundBrush}" Height="20" Margin="2,1,1,1" StrokeThickness="0" Width="1" />
<Rectangle Fill="{StaticResource GlyphBackgroundBrush}" Height="20" Margin="1,1,2,1" StrokeThickness="0" Width="1" />
</StackPanel>
</Grid>
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="HorizontalAlignment" Value="Stretch">
<Setter TargetName="HGrip" Property="Visibility" Value="Visible" />
<Setter TargetName="VGrip" Property="Visibility" Value="Collapsed" />
</Trigger>
<Trigger Property="VerticalAlignment" Value="Stretch">
<Setter TargetName="VGrip" Property="Visibility" Value="Visible" />
<Setter TargetName="HGrip" Property="Visibility" Value="Collapsed" />
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background" Value="{StaticResource GridSplitterHoverBackgroundBrush}" />
<Setter TargetName="border" Property="BorderBrush" Value="{StaticResource GridSplitterHoverBorderBrush}" />
</Trigger>
<Trigger Property="IsFocused" Value="True">
<Setter TargetName="border" Property="BorderBrush" Value="{StaticResource GridSplitterFocusedBorderBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************** ProgressBar Style **********************************-->
<Style x:Key="ProgressBarStyle" TargetType="{x:Type ProgressBar}">
<Setter Property="Foreground" Value="{StaticResource ProgressBarForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource ProgressBarBackgroundBrush}" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ProgressBar}">
<Grid x:Name="TemplateRoot" SnapsToDevicePixels="true">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Determinate" />
<VisualState x:Name="Indeterminate">
<Storyboard RepeatBehavior="Forever">
<DoubleAnimation Duration="00:00:.5" From="0" To="20" Storyboard.TargetProperty="(Shape.Fill).(LinearGradientBrush.Transform).(TransformGroup.Children)[0].X" Storyboard.TargetName="IndeterminateGradientFill" />
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border x:Name="ProgressBarTrack" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" />
<Rectangle x:Name="PART_Track" Margin="{TemplateBinding BorderThickness}" />
<Decorator x:Name="PART_Indicator" HorizontalAlignment="Left" Margin="{TemplateBinding BorderThickness}">
<Grid x:Name="Foreground">
<Rectangle x:Name="Indicator" Fill="{TemplateBinding Foreground}" />
</Grid>
</Decorator>
<Grid x:Name="IndeterminateRoot" Visibility="Collapsed">
<Rectangle x:Name="IndeterminateSolidFill" Fill="{TemplateBinding Foreground}" Margin="{TemplateBinding BorderThickness}" Opacity="1" RenderTransformOrigin="0.5,0.5" StrokeThickness="0" />
<Rectangle x:Name="IndeterminateGradientFill" Fill="{StaticResource ProgressBarIndeterminateBackgroundBrush}" Margin="{TemplateBinding BorderThickness}" StrokeThickness="1" />
</Grid>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="Orientation" Value="Vertical">
<Setter Property="LayoutTransform" TargetName="TemplateRoot">
<Setter.Value>
<RotateTransform Angle="-90" />
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsIndeterminate" Value="true">
<Setter Property="Visibility" TargetName="Indicator" Value="Collapsed" />
<Setter Property="Visibility" TargetName="IndeterminateRoot" Value="Visible" />
</Trigger>
<Trigger Property="IsIndeterminate" Value="false">
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************** PasswordBox Style **********************************-->
<Style x:Key="PasswordBoxStyle" TargetType="{x:Type PasswordBox}">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="13.333" />
<Setter Property="Foreground" Value="{StaticResource PasswordBoxForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource TextBoxBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource TextBoxBorderBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="6,4" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="SelectionBrush" Value="{StaticResource TextBoxFocusedBrush}" />
<Setter Property="PasswordChar" Value="●" />
<Setter Property="KeyboardNavigation.TabNavigation" Value="None" />
<Setter Property="AllowDrop" Value="true" />
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="ScrollViewer.PanningMode" Value="VerticalFirst" />
<Setter Property="Stylus.IsFlicksEnabled" Value="False" />
<Setter Property="FlowDirection" Value="LeftToRight" />
<Setter Property="CaretBrush" Value="{StaticResource CaretForegroundBrush}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type PasswordBox}">
<Grid>
<Border Background="{TemplateBinding Background}" x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" />
<Border x:Name="DisabledVisualElement" BorderBrush="{StaticResource DisabledVisualElement}" BorderThickness="{TemplateBinding BorderThickness}" Background="{StaticResource DisabledVisualElement}" IsHitTestVisible="False" Opacity="0" />
<Border x:Name="ReadOnlyVisualElement" Background="{StaticResource TextBoxReadOnlyBackgroundBrush}" Opacity="0" />
<Border>
<ScrollViewer x:Name="PART_ContentHost" />
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="1" TargetName="DisabledVisualElement" />
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="{StaticResource TextBoxHoverBorderBrush}" TargetName="Bd" />
</Trigger>
<Trigger Property="IsFocused" Value="True">
<Setter Property="BorderBrush" Value="{StaticResource TextBoxFocusedBrush}" TargetName="Bd" />
</Trigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsReadOnly, RelativeSource={RelativeSource Self}}" Value="True" />
<Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="True" />
</MultiDataTrigger.Conditions>
<Setter Property="Opacity" Value="1" TargetName="ReadOnlyVisualElement" />
</MultiDataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ToolTip Style ********************************* -->
<Style x:Key="{x:Type ToolTip}" TargetType="ToolTip">
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource TooltipBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource TooltipBorderBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="10,7" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ToolTip">
<Grid>
<Rectangle Stroke="{TemplateBinding BorderBrush}" Fill="{TemplateBinding Background}" StrokeThickness="{TemplateBinding BorderThickness}" />
<StackPanel Orientation="Horizontal" d:LayoutOverrides="Width, Height">
<ContentPresenter Margin="{TemplateBinding Padding}" Content="{TemplateBinding Content}" />
</StackPanel>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Expander Right Style ********************************* -->
<Style x:Key="ExpanderRightHeaderStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Border Padding="{TemplateBinding Padding}">
<Grid Background="{StaticResource TransparentBrush}" SnapsToDevicePixels="False">
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid>
<Grid.LayoutTransform>
<TransformGroup>
<TransformGroup.Children>
<TransformCollection>
<RotateTransform Angle="-90" />
</TransformCollection>
</TransformGroup.Children>
</TransformGroup>
</Grid.LayoutTransform>
<Rectangle x:Name="rectangle" Width="30" Height="30" Fill="{StaticResource ExpanderButtonBackgroundBrush}" HorizontalAlignment="Center" Stroke="{StaticResource ExpanderButtonBorderBrush}" VerticalAlignment="Center" />
<Path x:Name="arrow" Width="10" Height="6" Fill="{StaticResource GlyphBackgroundBrush}" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Stretch="Fill" RenderTransformOrigin="0.5, 0.5" />
</Grid>
<ContentPresenter HorizontalAlignment="Center" Margin="0,4,0,0" Grid.Row="1" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Stretch" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter Property="Data" TargetName="arrow" Value="M3.4,-4.4 L6.8,3.9 3.9566912E-07,3.9 z" />
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowHoverBorderBrush}" />
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowPressedBorderBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Expander Up Style ********************************* -->
<Style x:Key="ExpanderUpHeaderStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Border Padding="{TemplateBinding Padding}">
<Grid Background="{StaticResource TransparentBrush}" SnapsToDevicePixels="False">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid>
<Grid.LayoutTransform>
<TransformGroup>
<TransformGroup.Children>
<TransformCollection>
<RotateTransform Angle="180" />
</TransformCollection>
</TransformGroup.Children>
</TransformGroup>
</Grid.LayoutTransform>
<Rectangle x:Name="rectangle" Width="30" Height="30" Fill="{StaticResource ExpanderButtonBackgroundBrush}" HorizontalAlignment="Center" Stroke="{StaticResource ExpanderButtonBorderBrush}" VerticalAlignment="Center" />
<Path x:Name="arrow" Width="10" Height="6" Fill="{StaticResource GlyphBackgroundBrush}" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Stretch="Fill" RenderTransformOrigin="0.5, 0.5" />
</Grid>
<ContentPresenter Grid.Column="1" HorizontalAlignment="Stretch" Margin="4,0,0,0" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Center" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter Property="Data" TargetName="arrow" Value="M3.4,-4.4 L6.8,3.9 3.9566912E-07,3.9 z" />
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowHoverBorderBrush}" />
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowPressedBorderBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Expander Left Style ********************************* -->
<Style x:Key="ExpanderLeftHeaderStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Border Padding="{TemplateBinding Padding}">
<Grid Background="{StaticResource TransparentBrush}" SnapsToDevicePixels="False">
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid>
<Grid.LayoutTransform>
<TransformGroup>
<TransformGroup.Children>
<TransformCollection>
<RotateTransform Angle="90" />
</TransformCollection>
</TransformGroup.Children>
</TransformGroup>
</Grid.LayoutTransform>
<Rectangle x:Name="rectangle" Width="30" Height="30" Fill="{StaticResource ExpanderButtonBackgroundBrush}" HorizontalAlignment="Center" Stroke="{StaticResource ExpanderButtonBorderBrush}" VerticalAlignment="Center" />
<Path x:Name="arrow" Width="10" Height="6" Fill="{StaticResource GlyphBackgroundBrush}" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Stretch="Fill" RenderTransformOrigin="0.5, 0.5" />
</Grid>
<ContentPresenter Grid.Row="1" HorizontalAlignment="Center" Margin="0,4,0,0" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Stretch" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter Property="Data" TargetName="arrow" Value="M3.4,-4.4 L6.8,3.9 3.9566912E-07,3.9 z" />
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowHoverBorderBrush}" />
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowPressedBorderBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Expander Down Style ********************************* -->
<Style x:Key="ExpanderDownHeaderStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Border Padding="{TemplateBinding Padding}">
<Grid Background="{StaticResource TransparentBrush}" SnapsToDevicePixels="False">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle x:Name="rectangle" Width="30" Height="30" Fill="{StaticResource ExpanderButtonBackgroundBrush}" HorizontalAlignment="Center" Stroke="{StaticResource ExpanderButtonBorderBrush}" VerticalAlignment="Center" />
<Path x:Name="arrow" Width="10" Height="6" Fill="{StaticResource GlyphBackgroundBrush}" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Stretch="Fill" RenderTransformOrigin="0.5, 0.5" />
<ContentPresenter Grid.Column="1" HorizontalAlignment="Stretch" Margin="4,0,0,0" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Center" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter Property="Data" TargetName="arrow" Value="M3.4,-4.4 L6.8,3.9 3.9566912E-07,3.9 z" />
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonHoverBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowHoverBorderBrush}" />
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBackgroundBrush}" />
<Setter Property="Stroke" TargetName="rectangle" Value="{StaticResource ExpanderButtonPressedBorderBrush}" />
<Setter Property="Fill" TargetName="arrow" Value="{StaticResource ExpanderArrowPressedBorderBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Expander Style ********************************* -->
<Style x:Key="ExpanderStyle" TargetType="{x:Type Expander}">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Background" Value="{StaticResource ExpanderBackgroundBrush}" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="2" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="VerticalContentAlignment" Value="Stretch" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Expander}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="3" SnapsToDevicePixels="true">
<DockPanel>
<ToggleButton x:Name="HeaderSite" ContentTemplate="{TemplateBinding HeaderTemplate}" ContentTemplateSelector="{TemplateBinding HeaderTemplateSelector}" Content="{TemplateBinding Header}" DockPanel.Dock="Top" Foreground="{TemplateBinding Foreground}" FontWeight="{TemplateBinding FontWeight}" FontStyle="{TemplateBinding FontStyle}" FontStretch="{TemplateBinding FontStretch}" FontSize="{TemplateBinding FontSize}" FontFamily="{TemplateBinding FontFamily}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" IsChecked="{Binding IsExpanded, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Margin="1" MinWidth="0" MinHeight="0" Padding="{TemplateBinding Padding}" Style="{StaticResource ExpanderDownHeaderStyle}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" />
<ContentPresenter x:Name="ExpandSite" DockPanel.Dock="Bottom" Focusable="false" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" Visibility="Collapsed" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" />
</DockPanel>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsExpanded" Value="true">
<Setter Property="Visibility" TargetName="ExpandSite" Value="Visible" />
</Trigger>
<Trigger Property="ExpandDirection" Value="Right">
<Setter Property="DockPanel.Dock" TargetName="ExpandSite" Value="Right" />
<Setter Property="DockPanel.Dock" TargetName="HeaderSite" Value="Left" />
<Setter Property="Style" TargetName="HeaderSite" Value="{StaticResource ExpanderRightHeaderStyle}" />
</Trigger>
<Trigger Property="ExpandDirection" Value="Up">
<Setter Property="DockPanel.Dock" TargetName="ExpandSite" Value="Top" />
<Setter Property="DockPanel.Dock" TargetName="HeaderSite" Value="Bottom" />
<Setter Property="Style" TargetName="HeaderSite" Value="{StaticResource ExpanderUpHeaderStyle}" />
</Trigger>
<Trigger Property="ExpandDirection" Value="Left">
<Setter Property="DockPanel.Dock" TargetName="ExpandSite" Value="Left" />
<Setter Property="DockPanel.Dock" TargetName="HeaderSite" Value="Right" />
<Setter Property="Style" TargetName="HeaderSite" Value="{StaticResource ExpanderLeftHeaderStyle}" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{StaticResource ExpanderDisabledForegroundBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ToggleButton Style ********************************* -->
<Style x:Key="ToggleButtonStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Padding" Value="10,0,10,2" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="MinWidth" Value="30" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Fill">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Stroke">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonHoverBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Fill">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonPressedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Stroke">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonPressedBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="DisabledVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="CheckStates">
<VisualState x:Name="Checked">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="checked">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Unchecked" />
<VisualState x:Name="Indeterminate" />
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="FocusedVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="Bd" Fill="{StaticResource ButtonBackgroundBrush}" Stroke="{StaticResource ButtonBorderBrush}" StrokeThickness="1" />
<Rectangle x:Name="checked" Fill="{StaticResource ButtonPressedBackgroundBrush}" Stroke="{StaticResource ButtonPressedBorderBrush}" StrokeThickness="1" Visibility="Collapsed" />
<ContentControl x:Name="contentControl" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Foreground="{TemplateBinding Foreground}">
<ContentPresenter x:Name="contentPresenter" />
</ContentControl>
<ContentControl x:Name="contentControl1" Visibility="Collapsed" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Foreground="{StaticResource ForegroundBrush}">
<ContentPresenter x:Name="contentPresenter1" />
</ContentControl>
<Rectangle x:Name="FocusedVisualElement" Stroke="{StaticResource ButtonPressedBorderBrush}" Visibility="Collapsed" StrokeThickness="2" />
<Rectangle x:Name="DisabledVisualElement" Fill="{StaticResource DisabledVisualElement}" Visibility="Collapsed" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* GroupBox Style ********************************* -->
<BorderGapMaskConverter x:Key="BorderGapMaskConverter" />
<Style x:Key="GroupBoxStyle" TargetType="{x:Type GroupBox}">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource GroupBoxBorderBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="5" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupBox}">
<Grid SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="6" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="6" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="6" />
</Grid.RowDefinitions>
<Border BorderBrush="{StaticResource TransparentBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Grid.ColumnSpan="4" Grid.Column="0" Grid.Row="1" Grid.RowSpan="3" />
<Border x:Name="Header" Grid.Column="1" Padding="10,0,10,0" Grid.Row="0" Grid.RowSpan="2">
<ContentPresenter ContentSource="Header" Height="20" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Border>
<ContentPresenter Grid.ColumnSpan="2" Grid.Column="1" Margin="{TemplateBinding Padding}" Grid.Row="2" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
<Border Grid.ColumnSpan="4" Grid.Row="1" Grid.RowSpan="3">
<Border.OpacityMask>
<MultiBinding ConverterParameter="7" Converter="{StaticResource BorderGapMaskConverter}">
<Binding ElementName="Header" Path="ActualWidth" />
<Binding Path="ActualWidth" RelativeSource="{RelativeSource Self}" />
<Binding Path="ActualHeight" RelativeSource="{RelativeSource Self}" />
</MultiBinding>
</Border.OpacityMask>
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
</Border>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!--********************** Implicit Styles *********************** -->
<Style BasedOn="{StaticResource ButtonStyle}" TargetType="{x:Type Button}" />
<Style BasedOn="{StaticResource ScrollBarStyle}" TargetType="{x:Type ScrollBar}" />
<Style BasedOn="{StaticResource ScrollViewerStyle}" TargetType="{x:Type ScrollViewer}" />
<Style BasedOn="{StaticResource ComboBoxStyle}" TargetType="{x:Type ComboBox}" />
<Style BasedOn="{StaticResource ComboBoxItemStyle}" TargetType="{x:Type ComboBoxItem}" />
<Style BasedOn="{StaticResource TextBoxStyle}" TargetType="{x:Type TextBox}" />
<Style BasedOn="{StaticResource ListBoxStyle}" TargetType="{x:Type ListBox}" />
<Style BasedOn="{StaticResource ListBoxItemStyle}" TargetType="{x:Type ListBoxItem}" />
<Style BasedOn="{StaticResource CheckBoxStyle}" TargetType="CheckBox">
<!-- Adding setter for VerticalContentAlignment to target default behavior of MS check box. -->
<Setter Property="VerticalContentAlignment" Value="Top" />
</Style>
<Style BasedOn="{StaticResource RadioButtonStyle}" TargetType="{x:Type RadioButton}" />
<Style BasedOn="{StaticResource LabelStyle}" TargetType="{x:Type Label}" />
<Style BasedOn="{StaticResource SliderStyle}" TargetType="{x:Type Slider}" />
<Style BasedOn="{StaticResource RepeatButtonStyle}" TargetType="{x:Type RepeatButton}" />
<Style BasedOn="{StaticResource GridSplitterStyle}" TargetType="{x:Type GridSplitter}" />
<Style BasedOn="{StaticResource ProgressBarStyle}" TargetType="{x:Type ProgressBar}" />
<Style BasedOn="{StaticResource PasswordBoxStyle}" TargetType="{x:Type PasswordBox}" />
<Style BasedOn="{StaticResource ExpanderStyle}" TargetType="{x:Type Expander}" />
<Style BasedOn="{StaticResource ToggleButtonStyle}" TargetType="{x:Type ToggleButton}" />
<Style BasedOn="{StaticResource GroupBoxStyle}" TargetType="{x:Type GroupBox}" />
</ResourceDictionary>

View File

@ -0,0 +1,934 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:inputToolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Input.Toolkit"
xmlns:inputToolkitPrimitives="clr-namespace:System.Windows.Controls.Primitives;assembly=System.Windows.Controls.Input.Toolkit"
xmlns:layoutToolkitPrimitives="clr-namespace:System.Windows.Controls.Primitives;assembly=System.Windows.Controls.Layout.Toolkit"
xmlns:layoutToolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Layout.Toolkit"
xmlns:vsm="clr-namespace:System.Windows;assembly=WPFToolkit"
mc:Ignorable="d">
<!-- ********************************* RESOURCES ********************************* -->
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Styles.WPF.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- ********************************* BRUSHES ********************************* -->
<!-- Rating Brushes -->
<SolidColorBrush x:Key="RatingReadOnlyBackgroundBrush" Color="{StaticResource Color_013}" />
<SolidColorBrush x:Key="RatingReadOnlyBorderBrush" Color="{StaticResource Color_013}" />
<SolidColorBrush x:Key="RatingDisabledBackgroundBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="RatingDisabledBorderBrush" Color="{StaticResource Color_013}" />
<!-- RatingItem Brushes -->
<SolidColorBrush x:Key="RatingItemBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="RatingItemBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="RatingItemHoverBackgroundBrush" Color="{StaticResource Color_023}" />
<SolidColorBrush x:Key="RatingItemHoverBorderBrush" Color="{StaticResource Color_023}" />
<SolidColorBrush x:Key="RatingItemActiveBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="RatingItemActiveBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="RatingItemReadOnlyBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="RatingItemReadOnlyBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="RatingItemDisabledBackgroundBrush" Color="{StaticResource Color_008}" />
<SolidColorBrush x:Key="RatingItemDisabledBorderBrush" Color="{StaticResource Color_005}" />
<!-- Accordion Brushes -->
<SolidColorBrush x:Key="AccordionBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="AccordionBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="AccordionItemBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="AccordionButtonBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="AccordionButtonBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="AccordionButtonHoverBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="AccordionButtonHoverBorderBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="AccordionButtonPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="AccordionButtonPressedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="AccordionButtonExpandedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="AccordionButtonExpandedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="AccordionArrowBackgroundBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="AccordionArrowExpandedBackgroundBrush" Color="{StaticResource Color_009}" />
<!--********************************** RatingItem Style **********************************-->
<Style x:Key="RatingItemStyle" TargetType="{x:Type inputToolkit:RatingItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type inputToolkit:RatingItem}">
<Grid Background="{TemplateBinding Background}" Width="30" Margin="2 0">
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Border BorderThickness="0" Background="{StaticResource TransparentBrush}" />
<Rectangle Fill="{StaticResource TransparentBrush}" Margin="-2 0" />
<Path x:Name="DefaultRatingItem" Data="M15,0 L18.6,11.373603 L30,11.459046 L20.824955,18.573566 L24.270519,30 L15,23.023449 L5.7294912,30 L9.1750822,18.573566 L0,11.459046 L11.399999,11.373603 z" Opacity="1" Stretch="Fill" Fill="{StaticResource RatingItemBackgroundBrush}" Stroke="{StaticResource RatingItemBorderBrush}" StrokeThickness="0.4" StrokeLineJoin="Round" UseLayoutRounding="False" VerticalAlignment="Stretch" />
<inputToolkitPrimitives:LinearClipper ExpandDirection="Right" RatioVisible="{TemplateBinding DisplayValue}">
<Path Data="M15,0 L18.6,11.373603 L30,11.459046 L20.824955,18.573566 L24.270519,30 L15,23.023449 L5.7294912,30 L9.1750822,18.573566 L0,11.459046 L11.399999,11.373603 z" Fill="{TemplateBinding Foreground}" Opacity="1" Stretch="Fill" Stroke="{x:Null}" StrokeLineJoin="Round" UseLayoutRounding="False" VerticalAlignment="Stretch" />
</inputToolkitPrimitives:LinearClipper>
<Path x:Name="MouseOverRatingItem" Data="M15,0 L18.6,11.373603 L30,11.459046 L20.824955,18.573566 L24.270519,30 L15,23.023449 L5.7294912,30 L9.1750822,18.573566 L0,11.459046 L11.399999,11.373603 z" Fill="{StaticResource RatingItemHoverBackgroundBrush}" Opacity="0" Stretch="Fill" Stroke="{StaticResource RatingItemHoverBorderBrush}" StrokeThickness="0.4" StrokeLineJoin="Round" UseLayoutRounding="False" VerticalAlignment="Stretch" />
<Path x:Name="PressedRatingItem" Data="M15,0 L18.6,11.373603 L30,11.459046 L20.824955,18.573566 L24.270519,30 L15,23.023449 L5.7294912,30 L9.1750822,18.573566 L0,11.459046 L11.399999,11.373603 z" Fill="{StaticResource RatingItemActiveBackgroundBrush}" Opacity="0" Stretch="Fill" Stroke="{StaticResource RatingItemActiveBorderBrush}" StrokeLineJoin="Round" UseLayoutRounding="False" VerticalAlignment="Stretch" />
<Path x:Name="ReadOnlyRatingItem" Data="M15,0 L18.6,11.373603 L30,11.459046 L20.824955,18.573566 L24.270519,30 L15,23.023449 L5.7294912,30 L9.1750822,18.573566 L0,11.459046 L11.399999,11.373603 z" Fill="{StaticResource RatingItemReadOnlyBackgroundBrush}" IsHitTestVisible="False" Opacity="0" Stretch="Fill" Stroke="{StaticResource RatingItemReadOnlyBorderBrush}" StrokeThickness="0.4" StrokeLineJoin="Round" UseLayoutRounding="False" VerticalAlignment="Stretch" />
<Path x:Name="DisabledRatingItemBackground" Data="M15,0 L18.6,11.373603 L30,11.459046 L20.824955,18.573566 L24.270519,30 L15,23.023449 L5.7294912,30 L9.1750822,18.573566 L0,11.459046 L11.399999,11.373603 z" Fill="{StaticResource RatingItemDisabledBackgroundBrush}" Opacity="0" Stretch="Fill" Stroke="{StaticResource RatingItemDisabledBorderBrush}" StrokeLineJoin="Round" UseLayoutRounding="False" VerticalAlignment="Stretch" />
<inputToolkitPrimitives:LinearClipper x:Name="DisabledRatingItem" ExpandDirection="Right" Opacity="0" RatioVisible="{TemplateBinding DisplayValue}">
<Path Data="M15,0 L18.6,11.373603 L30,11.459046 L20.824955,18.573566 L24.270519,30 L15,23.023449 L5.7294912,30 L9.1750822,18.573566 L0,11.459046 L11.399999,11.373603 z" Fill="{StaticResource RatingItemDisabledBackgroundBrush}" Opacity="1" Stretch="Fill" Stroke="{StaticResource RatingItemDisabledBorderBrush}" StrokeLineJoin="Round" UseLayoutRounding="False" VerticalAlignment="Stretch" />
</inputToolkitPrimitives:LinearClipper>
<ContentPresenter x:Name="Content" Cursor="{TemplateBinding Cursor}" ContentTemplate="{TemplateBinding ContentTemplate}" HorizontalAlignment="Left" Margin="{TemplateBinding Padding}" Grid.Row="1" Grid.RowSpan="2" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Opacity" Value="1" TargetName="MouseOverRatingItem" />
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Opacity" Value="1" TargetName="PressedRatingItem" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="1" TargetName="DisabledRatingItem" />
<Setter Property="Opacity" Value="1" TargetName="DisabledRatingItemBackground" />
</Trigger>
<Trigger Property="IsReadOnly" Value="True">
<Setter Property="Opacity" Value="0.7" TargetName="ReadOnlyRatingItem" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************** Rating Style **********************************-->
<Style x:Key="RatingStyle" TargetType="{x:Type inputToolkit:Rating}">
<Setter Property="Foreground" Value="{StaticResource RatingItemActiveBackgroundBrush}" />
<Setter Property="Background" Value="{StaticResource TransparentBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource TransparentBrush}" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="ItemContainerStyle" Value="{StaticResource RatingItemStyle}" />
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel IsItemsHost="True" Orientation="Horizontal" />
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type inputToolkit:Rating}">
<Grid x:Name="Root">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}">
<ItemsPresenter />
</Border>
<Border x:Name="ReadOnlyVisualElement" BorderBrush="{StaticResource RatingReadOnlyBorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{StaticResource RatingReadOnlyBackgroundBrush}" IsHitTestVisible="False" Opacity="0" />
<Border x:Name="DisabledVisualElement" BorderBrush="{StaticResource RatingDisabledBorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{StaticResource RatingDisabledBackgroundBrush}" IsHitTestVisible="False" Opacity="0" />
<Rectangle x:Name="FocusVisualElement" IsHitTestVisible="false" RadiusY="1" RadiusX="1" StrokeThickness="1" Visibility="Collapsed" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsReadOnly" Value="True">
<Setter Property="Opacity" Value="0.03" TargetName="ReadOnlyVisualElement" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* AccordionButton Style ********************************* -->
<Style x:Key="AccordionButtonStyle" TargetType="layoutToolkitPrimitives:AccordionButton">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Foreground" Value="{StaticResource LightForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource AccordionButtonBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource AccordionButtonBorderBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="5,7" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="HorizontalContentAlignment" Value="Center" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="IsTabStop" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="layoutToolkitPrimitives:AccordionButton">
<Grid Background="{StaticResource TransparentBrush}" Margin="{TemplateBinding Padding}">
<vsm:VisualStateManager.VisualStateGroups>
<vsm:VisualStateGroup x:Name="ExpandDirectionStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="0" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="ExpandDown">
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="cd0" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>Auto</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="cd1" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00" Storyboard.TargetName="arrow" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" To="-90" />
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="ExpandUp">
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="cd0" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="cd1" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>Auto</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00" Storyboard.TargetName="arrow" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" To="90" />
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="ExpandLeft">
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="rd0" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>Auto</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="rd1" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="LayoutTransform">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<TransformGroup>
<RotateTransform Angle="90" />
</TransformGroup>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00" Storyboard.TargetName="arrow" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" To="0" />
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="ExpandRight">
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="icon" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="rd0" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="rd1" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>Auto</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="0" Duration="0" Storyboard.TargetName="header" Storyboard.TargetProperty="LayoutTransform">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<TransformGroup>
<RotateTransform Angle="-90" />
</TransformGroup>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00" Storyboard.TargetName="arrow" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" To="180" />
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="ExpansionStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="0" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="Collapsed">
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00.3" To="0" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" Storyboard.TargetName="icon" />
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="Expanded">
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00.3" To="90" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" Storyboard.TargetName="icon" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Path.Fill)" Storyboard.TargetName="arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AccordionArrowExpandedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="ExpandedBackground">
<SplineDoubleKeyFrame KeyTime="00:00:00" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="CheckStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="00:00:00" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="Checked" />
<vsm:VisualState x:Name="Unchecked" />
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="CommonStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="0" />
<vsm:VisualTransition From="MouseOver" GeneratedDuration="00:00:00.1" To="Normal" />
<vsm:VisualTransition GeneratedDuration="00:00:00.1" To="MouseOver" />
<vsm:VisualTransition GeneratedDuration="00:00:00.1" To="Pressed" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="Normal" />
<vsm:VisualState x:Name="MouseOver">
<Storyboard>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="MouseOverBackground">
<SplineDoubleKeyFrame KeyTime="00:00:00" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="Pressed">
<Storyboard>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="PressedBackground">
<SplineDoubleKeyFrame KeyTime="00:00:00" Value="1" />
</DoubleAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Path.Fill)" Storyboard.TargetName="arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AccordionArrowExpandedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="Disabled">
<Storyboard />
</vsm:VisualState>
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="FocusStates">
<vsm:VisualState x:Name="Focused" />
<vsm:VisualState x:Name="Unfocused" />
</vsm:VisualStateGroup>
</vsm:VisualStateManager.VisualStateGroups>
<Border>
<Grid>
<Border x:Name="Background" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Height="Auto" Margin="0" VerticalAlignment="Stretch" />
<Border x:Name="ExpandedBackground" BorderBrush="{StaticResource AccordionButtonExpandedBorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{StaticResource AccordionButtonExpandedBackgroundBrush}" Height="Auto" Margin="0" Opacity="0" VerticalAlignment="Stretch" />
<Border x:Name="MouseOverBackground" BorderBrush="{StaticResource AccordionButtonHoverBorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{StaticResource AccordionButtonHoverBackgroundBrush}" Height="Auto" Margin="0" Opacity="0" VerticalAlignment="Stretch" />
<Border x:Name="PressedBackground" BorderBrush="{StaticResource AccordionButtonPressedBorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{StaticResource AccordionButtonPressedBackgroundBrush}" Height="Auto" Margin="0" Opacity="0" VerticalAlignment="Stretch" />
<Grid Background="{StaticResource TransparentBrush}">
<Grid.ColumnDefinitions>
<ColumnDefinition x:Name="cd0" Width="Auto" />
<ColumnDefinition x:Name="cd1" Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition x:Name="rd0" Height="Auto" />
<RowDefinition x:Name="rd1" Height="Auto" />
</Grid.RowDefinitions>
<Grid x:Name="icon" Grid.Column="0" HorizontalAlignment="Center" Height="19" Grid.Row="0" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Center" Width="19">
<Grid.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="-90" />
<TranslateTransform />
</TransformGroup>
</Grid.RenderTransform>
<Path x:Name="arrow" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z" Stretch="Uniform" Height="4" HorizontalAlignment="Center" Margin="0,0,0,0" RenderTransformOrigin="0.5,0.5" Fill="{StaticResource AccordionArrowBackgroundBrush}" VerticalAlignment="Center" Width="Auto">
<Path.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform />
<TranslateTransform />
</TransformGroup>
</Path.RenderTransform>
</Path>
</Grid>
<ContentControl x:Name="contentControl" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="6,6,6,0" Grid.Column="1" Grid.Row="0" Grid.RowSpan="1">
<ContentPresenter x:Name="header" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" />
</ContentControl>
</Grid>
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ExpandableContentControl Style ********************************* -->
<Style x:Key="ExpandableContentControlStyle" TargetType="layoutToolkitPrimitives:ExpandableContentControl">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="13.333" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Padding" Value="15,7" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Top" />
<Setter Property="IsEnabled" Value="true" />
<Setter Property="Cursor" Value="Arrow" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="layoutToolkitPrimitives:ExpandableContentControl">
<ContentPresenter x:Name="ContentSite" Cursor="{TemplateBinding Cursor}" ContentTemplate="{TemplateBinding ContentTemplate}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* AccordionItem Style ********************************* -->
<Style x:Key="AccordionItemStyle" TargetType="layoutToolkit:AccordionItem">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource AccordionItemBackgroundBrush}" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Margin" Value="0" />
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Top" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="AccordionButtonStyle" Value="{StaticResource AccordionButtonStyle}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="layoutToolkit:AccordionItem">
<Grid Background="{TemplateBinding Background}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalAlignment}">
<vsm:VisualStateManager.VisualStateGroups>
<vsm:VisualStateGroup x:Name="CommonStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="0" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="Normal" />
<vsm:VisualState x:Name="Pressed" />
<vsm:VisualState x:Name="MouseOver" />
<vsm:VisualState x:Name="Disabled" />
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="FocusStates">
<vsm:VisualState x:Name="Focused" />
<vsm:VisualState x:Name="Unfocused" />
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="ExpansionStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="0" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="Collapsed">
<Storyboard x:Name="AccordionItemCollapsedStoryboard">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(layoutToolkitPrimitives:ExpandableContentControl.Percentage)">
<SplineDoubleKeyFrame KeyTime="00:00:00.3" KeySpline="0.2,0,0,1" Value="0" />
</DoubleAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="00:00:00.3" Duration="00:00:00" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(UIElement.Visibility)">
<DiscreteObjectKeyFrame KeyTime="00:00:00">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="Expanded">
<Storyboard x:Name="AccordionItemExpandedStoryboard">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(layoutToolkitPrimitives:ExpandableContentControl.Percentage)">
<SplineDoubleKeyFrame KeyTime="00:00:00.3" KeySpline="0.2,0,0,1" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="LockedStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="0" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="Locked">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="IsEnabled">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Boolean>False</sys:Boolean>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="Unlocked">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="IsEnabled">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Boolean>True</sys:Boolean>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="ExpandDirectionStates">
<vsm:VisualStateGroup.Transitions>
<vsm:VisualTransition GeneratedDuration="0" />
</vsm:VisualStateGroup.Transitions>
<vsm:VisualState x:Name="ExpandDown">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="rd1" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="cd0" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="ExpandUp">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="rd0" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="cd0" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="ExpandLeft">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="(Grid.ColumnSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.ColumnSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="(Grid.RowSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>2</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.RowSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>2</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="rd0" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="cd0" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="ExpandRight">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="(Grid.ColumnSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.ColumnSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpanderButton" Storyboard.TargetProperty="(Grid.RowSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>2</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.RowSpan)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>2</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.Row)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>0</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="(Grid.Column)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Int32>1</sys:Int32>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="rd0" Storyboard.TargetProperty="Height">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="cd1" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
</vsm:VisualStateManager.VisualStateGroups>
<Border x:Name="Background" Padding="{TemplateBinding Padding}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" x:Name="rd0" />
<RowDefinition Height="Auto" x:Name="rd1" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" x:Name="cd0" />
<ColumnDefinition Width="Auto" x:Name="cd1" />
</Grid.ColumnDefinitions>
<layoutToolkitPrimitives:AccordionButton Name="ExpanderButton" Content="{TemplateBinding Header}" ContentTemplate="{TemplateBinding HeaderTemplate}" IsChecked="{TemplateBinding IsSelected}" IsTabStop="True" Grid.Row="0" Padding="0,0,0,0" Margin="0,0,0,0" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalAlignment}" />
<layoutToolkitPrimitives:ExpandableContentControl Name="ExpandSite" Grid.Row="1" IsTabStop="False" Percentage="0" RevealMode="{TemplateBinding ExpandDirection}" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Margin="0,0,0,0" FontFamily="{TemplateBinding FontFamily}" FontSize="{TemplateBinding FontSize}" FontStretch="{TemplateBinding FontStretch}" FontStyle="{TemplateBinding FontStyle}" FontWeight="{TemplateBinding FontWeight}" Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalAlignment}" Style="{StaticResource ExpandableContentControlStyle}" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Accordion Style ********************************* -->
<Style x:Key="AccordionStyle" TargetType="layoutToolkit:Accordion">
<Setter Property="BorderBrush" Value="{StaticResource AccordionBorderBrush}" />
<Setter Property="Background" Value="{StaticResource AccordionBackgroundBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="0" />
<Setter Property="Margin" Value="0" />
<Setter Property="HorizontalAlignment" Value="Left" />
<Setter Property="VerticalAlignment" Value="Top" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Top" />
<Setter Property="Cursor" Value="Arrow" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel VerticalAlignment="Top" />
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="layoutToolkit:Accordion">
<Grid x:Name="Root">
<vsm:VisualStateManager.VisualStateGroups>
<vsm:VisualStateGroup x:Name="CommonStates">
<vsm:VisualState x:Name="Normal" />
<vsm:VisualState x:Name="Pressed" />
<vsm:VisualState x:Name="MouseOver" />
<vsm:VisualState x:Name="Disabled" />
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="FocusStates">
<vsm:VisualState x:Name="Focused" />
<vsm:VisualState x:Name="Unfocused" />
</vsm:VisualStateGroup>
</vsm:VisualStateManager.VisualStateGroups>
<Border x:Name="Border" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}">
<ScrollViewer BorderBrush="{StaticResource TransparentBrush}" BorderThickness="0" Background="{x:Null}" HorizontalScrollBarVisibility="Disabled" IsTabStop="False" Margin="0" Padding="0" VerticalScrollBarVisibility="Disabled">
<ItemsPresenter />
</ScrollViewer>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* AutoCompleteBox Style ********************************* -->
<Style x:Key="AutoCompleteBoxStyle" TargetType="{x:Type inputToolkit:AutoCompleteBox}">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource TextBoxBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource TextBoxBorderBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="6,4" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="MinWidth" Value="90" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="TextBoxStyle" Value="{StaticResource TextBoxStyle}" />
<Setter Property="Validation.ErrorTemplate" Value="{StaticResource ValidationToolTipTemplate}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type inputToolkit:AutoCompleteBox}">
<Grid Opacity="{TemplateBinding Opacity}">
<vsm:VisualStateManager.VisualStateGroups>
<vsm:VisualStateGroup x:Name="ValidationStates">
<vsm:VisualState x:Name="Valid"/>
<vsm:VisualState x:Name="InvalidUnfocused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="ValidationErrorElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="InvalidFocused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="ValidationErrorElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="IsOpen" Storyboard.TargetName="validationTooltip">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<sys:Boolean>True</sys:Boolean>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
</vsm:VisualStateManager.VisualStateGroups>
<TextBox x:Name="Text" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Foreground="{TemplateBinding Foreground}" IsTabStop="True" Margin="0" Padding="{TemplateBinding Padding}" Style="{TemplateBinding TextBoxStyle}" />
<Border x:Name="ValidationErrorElement" BorderBrush="{StaticResource ValidationErrorElement}" BorderThickness="{TemplateBinding BorderThickness}" Visibility="Collapsed">
<ToolTipService.ToolTip>
<ToolTip x:Name="validationTooltip" DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}" Placement="Right" PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}" Template="{StaticResource ValidationToolTipTemplate}"/>
</ToolTipService.ToolTip>
<Grid Background="Transparent" HorizontalAlignment="Right" Height="12" Margin="1,-4,-4,0" VerticalAlignment="Top" Width="12">
<Path Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z" Fill="{StaticResource ValidationErrorElement}" Margin="1,3,0,0" />
<Path Data="M 0,0 L2,0 L 8,6 L8,8" Fill="{StaticResource LightForegroundBrush}" Margin="1,3,0,0" />
</Grid>
</Border>
<Popup x:Name="Popup" AllowsTransparency="True">
<Grid Opacity="{TemplateBinding Opacity}">
<Border x:Name="PopupBorder" BorderThickness="0" HorizontalAlignment="Stretch">
<Border.RenderTransform>
<TranslateTransform X="1" Y="1" />
</Border.RenderTransform>
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="0" HorizontalAlignment="Stretch" Opacity="1.0" Padding="0">
<Border.RenderTransform>
<TransformGroup>
<TranslateTransform X="-1" Y="-1" />
</TransformGroup>
</Border.RenderTransform>
<ListBox x:Name="Selector" BorderThickness="0" Background="{TemplateBinding Background}" Foreground="{TemplateBinding Foreground}" ScrollViewer.HorizontalScrollBarVisibility="Auto" ItemTemplate="{TemplateBinding ItemTemplate}" ItemContainerStyle="{TemplateBinding ItemContainerStyle}" ScrollViewer.VerticalScrollBarVisibility="Auto" />
</Border>
</Border>
</Grid>
</Popup>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="Validation.HasError" Value="True">
<Setter TargetName="ValidationErrorElement" Property="Visibility" Value="Visible" />
<Setter TargetName="validationTooltip" Property="IsHitTestVisible" Value="True" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="Validation.HasError" Value="True" />
<Condition Property="IsKeyboardFocusWithin" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="ValidationErrorElement" Property="Visibility" Value="Visible" />
<Setter TargetName="validationTooltip" Property="IsOpen" Value="True" />
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!--********************** Implicit Styles *********************** -->
<Style BasedOn="{StaticResource RatingItemStyle}" TargetType="{x:Type inputToolkit:RatingItem}" />
<Style BasedOn="{StaticResource RatingStyle}" TargetType="{x:Type inputToolkit:Rating}" />
<Style BasedOn="{StaticResource AccordionButtonStyle}" TargetType="layoutToolkitPrimitives:AccordionButton" />
<Style BasedOn="{StaticResource AccordionItemStyle}" TargetType="layoutToolkit:AccordionItem" />
<Style BasedOn="{StaticResource AccordionStyle}" TargetType="layoutToolkit:Accordion" />
<Style BasedOn="{StaticResource AutoCompleteBoxStyle}" TargetType="{x:Type inputToolkit:AutoCompleteBox}" />
</ResourceDictionary>

View File

@ -0,0 +1,769 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:System="clr-namespace:System;assembly=mscorlib" mc:Ignorable="d">
<!-- ********************************* COLORS ********************************* -->
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Theme.Colors.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- ********************************* BRUSHES ********************************* -->
<SolidColorBrush x:Key="ForegroundBrush" Color="{StaticResource Color_002}" />
<SolidColorBrush x:Key="LightForegroundBrush" Color="{StaticResource Color_001}" />
<SolidColorBrush x:Key="TransparentBrush" Color="{StaticResource Color_016}" />
<SolidColorBrush x:Key="DisabledVisualElement" Color="{StaticResource Color_009}" Opacity="0.6" />
<SolidColorBrush x:Key="ValidationErrorElement" Color="{StaticResource Color_028}" />
<SolidColorBrush x:Key="CaretForegroundBrush" Color="{StaticResource Color_022}" />
<!-- Scrollbar/ScrollViewer Brushes -->
<SolidColorBrush x:Key="HScrollbarThumbBackgroundBrush" Color="{StaticResource Color_005}" />
<SolidColorBrush x:Key="VScrollbarThumbBackgroundBrush" Color="{StaticResource Color_005}" />
<SolidColorBrush x:Key="ScrollbarPageButtonArrowBackgroundBrush" Color="{StaticResource Color_005}" />
<SolidColorBrush x:Key="ScrollbarPageButtonArrowPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ScrollbarPageButtonArrowHoverBackgroundBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="ScrollbarPageButtonArrowDisabledBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="VScrollbarThumbHoverBackgroundBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="HScrollbarThumbHoverBackgroundBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="VScrollbarThumbPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="HScrollbarThumbPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="VScrollbarThumbDisabledBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="HScrollbarThumbDisabledBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ScrollbarDisabledBackgroundBrush" Color="{StaticResource Color_008}" />
<SolidColorBrush x:Key="ScrollbarBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="ScrollViewerCornerBackgroundBrush" Color="{StaticResource Color_009}"/>
<!-- ComboBox Brushes -->
<SolidColorBrush x:Key="ComboBoxBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="ComboBoxBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ComboBoxReadOnlyBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ComboBoxHoverBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ComboBoxHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="ComboBoxFocusedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ComboBoxDisabledBackgroundBrush" Color="{StaticResource Color_009}" Opacity="0.6" />
<SolidColorBrush x:Key="PopupBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="PopupBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ComboBoxReadOnlyBackgroundBrush" Color="{StaticResource Color_064}" />
<!-- Need to change color or delete -->
<!-- TextBox Brushes -->
<SolidColorBrush x:Key="TextBoxBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="TextBoxBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="TextBoxHoverBackgroundBrush" Color="{StaticResource Color_008}" />
<SolidColorBrush x:Key="TextBoxHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="TextBoxFocusedBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="TextBoxReadOnlyBackgroundBrush" Color="{StaticResource Color_007}" />
<SolidColorBrush x:Key="TextBoxSelectionBackgroundBrush" Color="{StaticResource Color_024}" Opacity="0.4" />
<SolidColorBrush x:Key="TextBoxSelectionForegroundBrush" Color="{StaticResource Color_025}" />
<!-- Button Brushes -->
<SolidColorBrush x:Key="ButtonBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="ButtonBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ButtonHoverBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ButtonHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="ButtonPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ButtonPressedBorderBrush" Color="{StaticResource Color_024}" />
<!-- ComboBoxItem Brushes -->
<SolidColorBrush x:Key="ComboBoxItemHoverBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ComboBoxItemHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="ComboBoxItemPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ComboBoxItemPressedBorderBrush" Color="{StaticResource Color_024}" />
<!-- ComboBoxToggleButton Brushes -->
<SolidColorBrush x:Key="ComboBoxToggleButtonBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="ComboBoxToggleButtonBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ComboBoxToggleButtonHoverBackgroundBrush" Color="{StaticResource Color_008}" />
<SolidColorBrush x:Key="ComboBoxToggleButtonHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="ComboBoxToggleButtonPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ComboBoxToggleButtonDropDownSeparatorBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ComboBoxToggleButtonPressedBorderBrush" Color="{StaticResource Color_024}" />
<!-- ListBox Brushes -->
<SolidColorBrush x:Key="ListBoxBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="ListBoxBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ListBoxItemHoverBackgroundBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="ListBoxItemHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="ListBoxItemPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ListBoxItemPressedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="ListBoxItemBackgroundBrush" Color="{StaticResource Color_016}" />
<!-- Need to change color or delete -->
<SolidColorBrush x:Key="ListBoxItemBorderBrush" Color="{StaticResource Color_016}" />
<!-- Need to change color or delete -->
<SolidColorBrush x:Key="ListBoxItemSelectedBackgroundBrush" Color="{StaticResource Color_024}" />
<!-- Need to change color or delete -->
<SolidColorBrush x:Key="ListBoxItemSelectedBorderBrush" Color="{StaticResource Color_024}" />
<!-- Need to change color or delete -->
<!-- CheckBox Brushes -->
<SolidColorBrush x:Key="CheckBoxBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="CheckBoxHoverBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="CheckBoxPressedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="CheckBoxFocusedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="CheckBoxInvalidUnfocusedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="CheckBoxInvalidFocusedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="CheckBoxBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="CheckBoxHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="CheckBoxPressedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="CheckBoxFocusedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="CheckBoxInvalidUnfocusedBorderBrush" Color="{StaticResource Color_029}" />
<SolidColorBrush x:Key="CheckBoxInvalidFocusedBorderBrush" Color="{StaticResource Color_028}" />
<SolidColorBrush x:Key="CheckBoxIndeterminateCheckBackgroundBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="CheckBoxCheckBackgroundBrush" Color="{StaticResource Color_024}" />
<!-- RadioButton Brushes -->
<SolidColorBrush x:Key="RadioButtonBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="RadioButtonHoverBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="RadioButtonPressedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="RadioButtonFocusedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="RadioButtonInvalidUnfocusedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="RadioButtonInvalidFocusedBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="RadioButtonBorderBrush" Color="{StaticResource Color_006}" />
<SolidColorBrush x:Key="RadioButtonHoverBorderBrush" Color="{StaticResource Color_004}" />
<SolidColorBrush x:Key="RadioButtonPressedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="RadioButtonFocusedBorderBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="RadioButtonInvalidUnfocusedBorderBrush" Color="{StaticResource Color_029}" />
<SolidColorBrush x:Key="RadioButtonInvalidFocusedBorderBrush" Color="{StaticResource Color_028}" />
<SolidColorBrush x:Key="RadioButtonCheckBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="RadioButtonIndeterminateCheckBackgroundBrush" Color="{StaticResource Color_004}" />
<!-- Visual Glyphs brushes -->
<SolidColorBrush x:Key="GlyphBackgroundBrush" Color="{StaticResource Color_003}" />
<SolidColorBrush x:Key="GlyphHoverBackgroundBrush" Color="{StaticResource Color_002}" />
<SolidColorBrush x:Key="GlyphPressedBackgroundBrush" Color="{StaticResource Color_024}" />
<SolidColorBrush x:Key="GlyphDisabledBackgroundBrush" Color="{StaticResource Color_005}" />
<!-- ValidationToolTip Brushes -->
<SolidColorBrush x:Key="ValidationToolTipTemplateShadowBrush" Color="{StaticResource Color_003}" />
<!-- ToolTip Brushes -->
<SolidColorBrush x:Key="TooltipBackgroundBrush" Color="{StaticResource Color_009}" />
<SolidColorBrush x:Key="TooltipBorderBrush" Color="{StaticResource Color_006}" />
<!-- ******************************************************** SL-WPF SHARED INLINE CONTROLS RESOURCES ***********************************************************
*********************************************************************************************************************************************************************** -->
<!-- ********************************* ValidationToolTip Template ********************************* -->
<ControlTemplate x:Key="ValidationToolTipTemplate">
<Grid x:Name="Root" Margin="5,0" Opacity="0" RenderTransformOrigin="0,0">
<Grid.RenderTransform>
<TranslateTransform x:Name="xform" X="-25" />
</Grid.RenderTransform>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="OpenStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0" />
<VisualTransition GeneratedDuration="0:0:0.2" To="Open">
<Storyboard>
<DoubleAnimation Duration="0:0:0.2" To="0" Storyboard.TargetProperty="X" Storyboard.TargetName="xform">
<DoubleAnimation.EasingFunction>
<BackEase Amplitude=".3" EasingMode="EaseOut" />
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
<DoubleAnimation Duration="0:0:0.2" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="Root" />
</Storyboard>
</VisualTransition>
</VisualStateGroup.Transitions>
<VisualState x:Name="Closed">
<Storyboard>
<DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="Root" />
</Storyboard>
</VisualState>
<VisualState x:Name="Open">
<Storyboard>
<DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="X" Storyboard.TargetName="xform" />
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="Root" />
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="4,4,-4,-4" Opacity="0.02" />
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="3,3,-3,-3" Opacity="0.08" />
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="2,2,-2,-2" Opacity="0.15" />
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="1,1,-1,-1" Opacity="0.21" />
<Border Background="{StaticResource ValidationErrorElement}" />
<Border>
<TextBlock Foreground="{StaticResource LightForegroundBrush}" MaxWidth="250" Margin="8,4,8,4" TextWrapping="Wrap" Text="{Binding (Validation.Errors)[0].ErrorContent}" UseLayoutRounding="false" />
</Border>
</Grid>
</ControlTemplate>
<!-- ********************************* ComboBoxToggleButton Style ********************************* -->
<Style x:Key="ComboBoxToggleButtonStyle" TargetType="ToggleButton">
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource ComboBoxToggleButtonBorderBrush}" />
<Setter Property="Background" Value="{StaticResource ComboBoxToggleButtonBackgroundBrush}"/>
<Setter Property="MinWidth" Value="30" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="2" />
<Setter Property="Cursor" Value="Hand" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ToggleButton">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource GlyphHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Bd">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ComboBoxToggleButtonHoverBackgroundBrush}"/>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Stroke" Storyboard.TargetName="Bd">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ComboBoxToggleButtonHoverBorderBrush}"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource GlyphPressedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource GlyphDisabledBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="CheckStates">
<VisualState x:Name="Checked">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="ArrowSelected">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Unchecked" />
<VisualState x:Name="Indeterminate" />
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused" />
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="30" />
</Grid.ColumnDefinitions>
<Rectangle x:Name="Bd" Fill="{TemplateBinding Background}" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}" Grid.ColumnSpan="2" />
<Grid Grid.Column="1">
<Rectangle Width="1" Fill="{StaticResource ComboBoxToggleButtonDropDownSeparatorBackgroundBrush}" HorizontalAlignment="Left" Margin="-1,5,0,5" />
<Path x:Name="Arrow" Width="10" Height="6" Fill="{StaticResource GlyphBackgroundBrush}" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Stretch="Fill" />
<Path x:Name="ArrowSelected" Width="10" Height="6" Visibility="Collapsed" Fill="{StaticResource GlyphPressedBackgroundBrush}" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Stretch="Fill" />
</Grid>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ComboBoxItem Style ********************************* -->
<Style x:Key="ComboBoxItemStyle" TargetType="ComboBoxItem">
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Padding" Value="6,0" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Background" Value="{StaticResource TransparentBrush}" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ComboBoxItem">
<Grid Background="{TemplateBinding Background}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="fillColor" />
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="DisabledVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="SelectionStates">
<VisualState x:Name="Unselected" />
<VisualState x:Name="Selected">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="CheckedBd">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="SelectedUnfocused" />
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="FocusVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
<VisualStateGroup x:Name="LayoutStates">
<VisualState x:Name="AfterLoaded" />
<VisualState x:Name="BeforeLoaded" />
<VisualState x:Name="BeforeUnloaded" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="{StaticResource TransparentBrush}" />
<Rectangle x:Name="fillColor" Fill="{StaticResource ComboBoxItemHoverBackgroundBrush}" IsHitTestVisible="False" Opacity="0" Stroke="{StaticResource ComboBoxItemHoverBorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}" />
<Rectangle x:Name="CheckedBd" Fill="{StaticResource ComboBoxItemPressedBackgroundBrush}" IsHitTestVisible="False" Visibility="Collapsed" Stroke="{StaticResource ComboBoxItemPressedBorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}" />
<ContentControl x:Name="contentControl" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Foreground="{TemplateBinding Foreground}">
<ContentPresenter x:Name="contentPresenter" />
</ContentControl>
<ContentControl x:Name="contentControl1" Visibility="Collapsed" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Foreground="{StaticResource ForegroundBrush}">
<ContentPresenter x:Name="contentPresenter1" />
</ContentControl>
<Rectangle x:Name="FocusVisualElement" Stroke="{StaticResource ComboBoxItemPressedBackgroundBrush}" Visibility="Collapsed" StrokeThickness="2" />
<Rectangle x:Name="DisabledVisualElement" Fill="{StaticResource DisabledVisualElement}" Visibility="Collapsed" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ListBoxItem Style ********************************* -->
<Style x:Key="ListBoxItemStyle" TargetType="ListBoxItem">
<Setter Property="Background" Value="{StaticResource TransparentBrush}" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Padding" Value="6,2" />
<Setter Property="Margin" Value="0" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Fill">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ListBoxItemHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Stroke">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ListBoxItemHoverBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="DisabledVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="SelectionStates">
<VisualState x:Name="Unselected" />
<VisualState x:Name="Selected">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="BgSelected">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="SelectedUnfocused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="BgSelected">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl1">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="FocusedVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="Bd" Fill="{TemplateBinding Background}" />
<Rectangle x:Name="BgSelected" Fill="{StaticResource ListBoxItemSelectedBackgroundBrush}" Stroke="{StaticResource ListBoxItemSelectedBorderBrush}" Visibility="Collapsed" />
<ContentControl x:Name="contentControl" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Foreground="{TemplateBinding Foreground}">
<ContentPresenter x:Name="contentPresenter" />
</ContentControl>
<ContentControl x:Name="contentControl1" Visibility="Collapsed" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Margin="{TemplateBinding Padding}" Foreground="{StaticResource ForegroundBrush}">
<ContentPresenter x:Name="contentPresenter1" />
</ContentControl>
<Rectangle x:Name="FocusedVisualElement" IsHitTestVisible="False" Visibility="Collapsed" Stroke="{StaticResource ListBoxItemPressedBorderBrush}" StrokeThickness="2" />
<Rectangle x:Name="DisabledVisualElement" Fill="{StaticResource DisabledVisualElement}" Visibility="Collapsed" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************** CheckBoxStyle **********************************-->
<Style x:Key="CheckBoxStyle" TargetType="CheckBox">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Padding" Value="6,0,0,0" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="MinWidth" Value="30" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="CheckBox">
<Grid VerticalAlignment="{TemplateBinding VerticalContentAlignment}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="hover" />
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="pressed" />
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="0" To=".55" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="contentPresenter" />
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="disabled" />
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="CheckStates">
<VisualState x:Name="Checked">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="checkBox" />
</Storyboard>
</VisualState>
<VisualState x:Name="Unchecked" />
<VisualState x:Name="Indeterminate">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="IndeterminateCheck" />
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="focused" />
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
<VisualStateGroup x:Name="ValidationStates">
<VisualState x:Name="Valid" />
<VisualState x:Name="InvalidUnfocused">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="invalidUnfocused" />
</Storyboard>
</VisualState>
<VisualState x:Name="InvalidFocused">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="invalidFocused" />
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle Fill="{StaticResource TransparentBrush}" />
<Rectangle x:Name="normal" Opacity="1" Stroke="{StaticResource CheckBoxBorderBrush}" StrokeThickness="1" Fill="{StaticResource CheckBoxBackgroundBrush}" Width="18" Height="18" />
<Rectangle x:Name="hover" Stroke="{StaticResource CheckBoxHoverBorderBrush}" StrokeThickness="1" Fill="{StaticResource CheckBoxHoverBackgroundBrush}" Opacity="0" Width="18" Height="18" />
<Rectangle x:Name="pressed" Opacity="0" Stroke="{StaticResource CheckBoxPressedBorderBrush}" StrokeThickness="1" Fill="{StaticResource CheckBoxPressedBackgroundBrush}" Width="18" Height="18" />
<Rectangle x:Name="focused" Opacity="0" Stroke="{StaticResource CheckBoxFocusedBorderBrush}" StrokeThickness="1" Fill="{StaticResource CheckBoxFocusedBackgroundBrush}" Width="18" Height="18" />
<Rectangle x:Name="invalidUnfocused" Opacity="0" Stroke="{StaticResource CheckBoxInvalidUnfocusedBackgroundBrush}" StrokeThickness="1" Fill="{StaticResource CheckBoxInvalidUnfocusedBackgroundBrush}" Width="18" Height="18" />
<Rectangle x:Name="invalidFocused" Opacity="0" Stroke="{StaticResource CheckBoxInvalidFocusedBorderBrush}" StrokeThickness="1" Fill="{StaticResource CheckBoxInvalidFocusedBackgroundBrush}" Width="18" Height="18" />
<Path x:Name="checkBox" Height="10" Width="12" Stretch="Fill" Opacity="0" Data="M 1145.607177734375,430 C1145.607177734375,430 1141.449951171875,435.0772705078125 1141.449951171875,435.0772705078125 1141.449951171875,435.0772705078125 1139.232177734375,433.0999755859375 1139.232177734375,433.0999755859375 1139.232177734375,433.0999755859375 1138,434.5538330078125 1138,434.5538330078125 1138,434.5538330078125 1141.482177734375,438 1141.482177734375,438 1141.482177734375,438 1141.96875,437.9375 1141.96875,437.9375 1141.96875,437.9375 1147,431.34619140625 1147,431.34619140625 1147,431.34619140625 1145.607177734375,430 1145.607177734375,430 z" Fill="{StaticResource CheckBoxCheckBackgroundBrush}" UseLayoutRounding="False" />
<Rectangle x:Name="IndeterminateCheck" Fill="{StaticResource CheckBoxIndeterminateCheckBackgroundBrush}" Height="3" Width="8" Opacity="0" />
<Rectangle x:Name="disabled" Opacity="0" StrokeThickness="1" Fill="{StaticResource DisabledVisualElement}" Width="18" Height="18" />
<ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="1" Margin="{TemplateBinding Padding}" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************** RadioButton Style **********************************-->
<Style x:Key="RadioButtonStyle" TargetType="RadioButton">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Padding" Value="6,0,0,0" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="MinWidth" Value="20" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="hover" />
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="pressed" />
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="0" To=".55" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="contentPresenter" />
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="disabled" />
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="CheckStates">
<VisualState x:Name="Checked">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="Checked1" />
</Storyboard>
</VisualState>
<VisualState x:Name="Unchecked" />
<VisualState x:Name="Indeterminate" />
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="focused" />
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
<VisualStateGroup x:Name="ValidationStates">
<VisualState x:Name="Valid" />
<VisualState x:Name="InvalidUnfocused">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="invalidUnfocused" />
</Storyboard>
</VisualState>
<VisualState x:Name="InvalidFocused">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="invalidFocused" />
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="18" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle Fill="{StaticResource TransparentBrush}" Margin="-6,0" />
<Ellipse x:Name="normal" Opacity="1" Stroke="{StaticResource RadioButtonBorderBrush}" StrokeThickness="1" Fill="{StaticResource RadioButtonBackgroundBrush}" Width="18" Height="18" />
<Ellipse x:Name="hover" Stroke="{StaticResource RadioButtonHoverBorderBrush}" StrokeThickness="1" Fill="{StaticResource RadioButtonHoverBackgroundBrush}" Opacity="0" Width="18" Height="18" />
<Ellipse x:Name="pressed" Opacity="0" Stroke="{StaticResource RadioButtonPressedBorderBrush}" StrokeThickness="1" Fill="{StaticResource RadioButtonPressedBackgroundBrush}" Width="18" Height="18" />
<Ellipse x:Name="focused" Opacity="0" Stroke="{StaticResource RadioButtonFocusedBorderBrush}" StrokeThickness="1" Fill="{StaticResource RadioButtonFocusedBackgroundBrush}" Width="18" Height="18" />
<Ellipse x:Name="invalidUnfocused" Opacity="0" Stroke="{StaticResource RadioButtonInvalidUnfocusedBorderBrush}" StrokeThickness="1" Fill="{StaticResource RadioButtonInvalidUnfocusedBackgroundBrush}" Width="18" Height="18" />
<Ellipse x:Name="invalidFocused" Opacity="0" Stroke="{StaticResource RadioButtonInvalidFocusedBorderBrush}" StrokeThickness="1" Fill="{StaticResource RadioButtonInvalidFocusedBackgroundBrush}" Width="18" Height="18" />
<Ellipse x:Name="Checked1" Fill="{StaticResource RadioButtonCheckBackgroundBrush}" Opacity="0" Width="10" Height="10" />
<ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="1" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" />
<Ellipse x:Name="disabled" Opacity="0" StrokeThickness="1" Fill="{StaticResource DisabledVisualElement}" Width="18" Height="18" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ButtonStyle ********************************* -->
<Style x:Key="ButtonStyle" TargetType="Button">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="Padding" Value="10,0,10,2" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="MinWidth" Value="30" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Fill">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Stroke">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonHoverBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Fill">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonPressedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Bd" Storyboard.TargetProperty="Stroke">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ButtonPressedBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="DisabledVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="FocusedVisualElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="Bd" Fill="{StaticResource ButtonBackgroundBrush}" Stroke="{StaticResource ButtonBorderBrush}" StrokeThickness="1" />
<ContentControl x:Name="ContentControl" Foreground="{TemplateBinding Foreground}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
<ContentPresenter x:Name="contentPresenter" />
</ContentControl>
<Rectangle x:Name="FocusedVisualElement" Stroke="{StaticResource ButtonPressedBorderBrush}" Visibility="Collapsed" StrokeThickness="2" />
<Rectangle x:Name="DisabledVisualElement" Fill="{StaticResource DisabledVisualElement}" Visibility="Collapsed" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>

View File

@ -0,0 +1,827 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:System="clr-namespace:System;assembly=mscorlib" mc:Ignorable="d">
<!-- ********************************* RESOURCES ********************************* -->
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Theme.Colors.xaml" />
<ResourceDictionary Source="Styles.Shared.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- ******************************************************** WPF SPECIFIC INLINE-CONTROLS RESOURCES ***********************************************************
*********************************************************************************************************************************************************************** -->
<!-- ********************************* ScrollBarButton Style ********************************* -->
<Style x:Key="ScrollBarButtonStyle" TargetType="{x:Type RepeatButton}">
<Setter Property="MinWidth" Value="30" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Padding" Value="0" />
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="Focusable" Value="false" />
<Setter Property="IsTabStop" Value="false" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Grid x:Name="grid1">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ScrollbarPageButtonArrowHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ScrollbarPageButtonArrowPressedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Arrow">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ScrollbarPageButtonArrowDisabledBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="{StaticResource TransparentBrush}" Margin="-5" />
<Path x:Name="Arrow" Data="F1 M 541.537,173.589L 531.107,173.589L 536.322,167.49L 541.537,173.589 Z " Height="6" Stretch="Uniform" Width="10" Fill="{StaticResource ScrollbarPageButtonArrowBackgroundBrush}" Margin="{TemplateBinding Padding}" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ScrollBarPageButton Style ********************************* -->
<Style x:Key="ScrollBarPageButtonStyle" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="Focusable" Value="false" />
<Setter Property="IsTabStop" Value="false" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver" />
<VisualState x:Name="Pressed" />
<VisualState x:Name="Disabled" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Rectangle>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Horizontal ScrollBarThumb Style ********************************* -->
<Style x:Key="HScrollBarThumbStyle" TargetType="{x:Type Thumb}">
<Setter Property="MinWidth" Value="20" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="IsTabStop" Value="false" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Grid Margin="0">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Thumb">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource HScrollbarThumbHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Thumb">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource HScrollbarThumbPressedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Thumb">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource HScrollbarThumbDisabledBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="{StaticResource TransparentBrush}" Margin="-5" />
<Rectangle x:Name="Thumb" Margin="1" Fill="{StaticResource HScrollbarThumbBackgroundBrush}" Height="8" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* Vertical ScrollbarThumb Style ********************************* -->
<Style x:Key="VScrollBarThumbStyle" TargetType="{x:Type Thumb}">
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="MinWidth" Value="30" />
<Setter Property="MinHeight" Value="20" />
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Grid x:Name="grid" Height="Auto" Width="Auto">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Thumb">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource VScrollbarThumbHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Thumb">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource VScrollbarThumbPressedBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Fill" Storyboard.TargetName="Thumb">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource VScrollbarThumbDisabledBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="{StaticResource TransparentBrush}" Margin="-5" />
<Rectangle x:Name="Thumb" Fill="{StaticResource VScrollbarThumbBackgroundBrush}" Width="8" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ScrollBar Style ********************************* -->
<Style x:Key="ScrollBarStyle" TargetType="{x:Type ScrollBar}">
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false" />
<Setter Property="Stylus.IsFlicksEnabled" Value="false" />
<Setter Property="Width" Value="30" />
<Setter Property="MinWidth" Value="30" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" SnapsToDevicePixels="true">
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="0.00001*" />
<RowDefinition Height="30" />
</Grid.RowDefinitions>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0:0:0.3" />
</VisualStateGroup.Transitions>
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver" />
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="repeatButton">
<EasingDoubleKeyFrame KeyTime="0" Value="0.6" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="repeatButton1">
<EasingDoubleKeyFrame KeyTime="0" Value="0.6" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="thumb">
<EasingDoubleKeyFrame KeyTime="0" Value="0" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Grid.RowSpan="3" Fill="{StaticResource ScrollbarBackgroundBrush}" Margin="0" />
<RepeatButton x:Name="repeatButton" Command="{x:Static ScrollBar.LineUpCommand}" IsEnabled="True" Style="{StaticResource ScrollBarButtonStyle}" HorizontalAlignment="Center" />
<Track x:Name="PART_Track" IsDirectionReversed="true" IsEnabled="True" Grid.Row="1">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageUpCommand}" Style="{StaticResource ScrollBarPageButtonStyle}" />
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageDownCommand}" Style="{StaticResource ScrollBarPageButtonStyle}" />
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb x:Name="thumb" Style="{StaticResource VScrollBarThumbStyle}" HorizontalAlignment="Center" Width="30" />
</Track.Thumb>
</Track>
<RepeatButton x:Name="repeatButton1" Command="{x:Static ScrollBar.LineDownCommand}" IsEnabled="True" Grid.Row="2" Style="{StaticResource ScrollBarButtonStyle}" RenderTransformOrigin="0.5,0.5" HorizontalAlignment="Center">
<RepeatButton.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="180" />
<TranslateTransform />
</TransformGroup>
</RepeatButton.RenderTransform>
</RepeatButton>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="Orientation" Value="Horizontal">
<Setter Property="Width" Value="Auto" />
<Setter Property="MinWidth" Value="0" />
<Setter Property="Height" Value="30" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />
<ColumnDefinition Width="0.00001*" />
<ColumnDefinition Width="30" />
</Grid.ColumnDefinitions>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0:0:0.3" />
</VisualStateGroup.Transitions>
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="repeatButton">
<EasingDoubleKeyFrame KeyTime="0" Value="1" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="repeatButton1">
<EasingDoubleKeyFrame KeyTime="0" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Grid.ColumnSpan="5" Fill="{StaticResource ScrollbarBackgroundBrush}" />
<RepeatButton x:Name="repeatButton" Command="{x:Static ScrollBar.LineLeftCommand}" IsEnabled="True" Style="{DynamicResource ScrollBarButtonStyle}" Opacity="1" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Center">
<RepeatButton.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="-90" />
<TranslateTransform />
</TransformGroup>
</RepeatButton.RenderTransform>
</RepeatButton>
<Track x:Name="PART_Track" Grid.Column="1" IsEnabled="True">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageLeftCommand}" Style="{StaticResource ScrollBarPageButtonStyle}" />
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageRightCommand}" Style="{StaticResource ScrollBarPageButtonStyle}" />
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource HScrollBarThumbStyle}" VerticalAlignment="Center" Height="30" />
</Track.Thumb>
</Track>
<RepeatButton x:Name="repeatButton1" Grid.Column="2" Command="{x:Static ScrollBar.LineRightCommand}" IsEnabled="True" Style="{DynamicResource ScrollBarButtonStyle}" Opacity="1" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Center">
<RepeatButton.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</RepeatButton.RenderTransform>
</RepeatButton>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
<!-- ********************************* ScrollViewer Style ********************************* -->
<Style x:Key="ScrollViewerStyle" TargetType="{x:Type ScrollViewer}">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Top" />
<Setter Property="VerticalScrollBarVisibility" Value="Auto" />
<Setter Property="Padding" Value="0" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Grid x:Name="Grid">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" CanContentScroll="{TemplateBinding CanContentScroll}" CanHorizontallyScroll="False" CanVerticallyScroll="False" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="0" Margin="{TemplateBinding Padding}" Grid.Row="0" />
<Rectangle Grid.Column="1" Fill="{StaticResource ScrollViewerCornerBackgroundBrush}" Grid.Row="1"/>
<ScrollBar x:Name="PART_VerticalScrollBar" AutomationProperties.AutomationId="VerticalScrollBar" Cursor="Arrow" Grid.Column="1" Maximum="{TemplateBinding ScrollableHeight}" Minimum="0" Grid.Row="0" Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}" Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportHeight}" Style="{StaticResource ScrollBarStyle}" />
<ScrollBar x:Name="PART_HorizontalScrollBar" AutomationProperties.AutomationId="HorizontalScrollBar" Cursor="Arrow" Grid.Column="0" Maximum="{TemplateBinding ScrollableWidth}" Minimum="0" Orientation="Horizontal" Grid.Row="1" Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}" Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportWidth}" Style="{StaticResource ScrollBarStyle}" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* TextBoxValidationToolTip Template ********************************* -->
<ControlTemplate x:Key="TextBoxValidationToolTipTemplate">
<Grid x:Name="Root" Margin="5,0" Opacity="0" RenderTransformOrigin="0,0">
<Grid.RenderTransform>
<TranslateTransform x:Name="xform" X="-25" />
</Grid.RenderTransform>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="OpenStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0" />
<VisualTransition GeneratedDuration="0:0:0.2" To="Open">
<Storyboard>
<DoubleAnimation Duration="0:0:0.2" To="0" Storyboard.TargetProperty="X" Storyboard.TargetName="xform">
<DoubleAnimation.EasingFunction>
<BackEase Amplitude=".3" EasingMode="EaseOut" />
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
<DoubleAnimation Duration="0:0:0.2" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="Root" />
</Storyboard>
</VisualTransition>
</VisualStateGroup.Transitions>
<VisualState x:Name="Closed">
<Storyboard>
<DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="Root" />
</Storyboard>
</VisualState>
<VisualState x:Name="Open">
<Storyboard>
<DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="X" Storyboard.TargetName="xform" />
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="Root" />
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="4,4,-4,-4" Opacity="0.02" />
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="3,3,-3,-3" Opacity="0.08" />
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="2,2,-2,-2" Opacity="0.15" />
<Border Background="{StaticResource ValidationToolTipTemplateShadowBrush}" Margin="1,1,-1,-1" Opacity="0.21" />
<Border Background="{StaticResource ValidationErrorElement}" />
<Border>
<TextBlock Foreground="{StaticResource LightForegroundBrush}" MaxWidth="250" Margin="8,4,8,4" TextWrapping="Wrap" Text="{Binding (Validation.Errors).CurrentItem.ErrorContent}" UseLayoutRounding="false" />
</Border>
</Grid>
</ControlTemplate>
<!-- ********************************* ComboBoxEditableTextBox Style ********************************* -->
<Style x:Key="ComboBoxEditableTextBoxStyle" TargetType="{x:Type TextBox}">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="AllowDrop" Value="true" />
<Setter Property="MinWidth" Value="0" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Padding" Value="6,4" />
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="SelectionBrush" Value="{StaticResource TextBoxFocusedBrush}" />
<Setter Property="SelectionOpacity" Value="0.4" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBox}">
<ScrollViewer Style="{StaticResource ScrollViewerStyle}" x:Name="PART_ContentHost" Background="Transparent" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="PART_ContentHost">
<EasingDoubleKeyFrame KeyTime="0" Value="0.3" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="ReadOnly" />
<VisualState x:Name="MouseOver" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</ScrollViewer>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ComboBoxEditable Template ********************************* -->
<ControlTemplate x:Key="ComboBoxEditableTemplate" TargetType="{x:Type ComboBox}">
<Grid x:Name="MainGrid" SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="hover">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="disabled">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Unfocused" />
<VisualState x:Name="Focused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="focused">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="FocusedDropDown">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="focused">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="normal" Fill="{StaticResource ComboBoxBackgroundBrush}" Stroke="{StaticResource ComboBoxBorderBrush}" StrokeThickness="1" Grid.ColumnSpan="2" />
<Rectangle x:Name="hover" Fill="{StaticResource ComboBoxHoverBackgroundBrush}" Stroke="{StaticResource ComboBoxHoverBorderBrush}" StrokeThickness="1" Visibility="Collapsed" Grid.ColumnSpan="2" />
<Popup x:Name="PART_Popup" AllowsTransparency="true" Grid.ColumnSpan="2" IsOpen="{Binding IsDropDownOpen, RelativeSource={RelativeSource TemplatedParent}}" Margin="1" PopupAnimation="{DynamicResource {x:Static SystemParameters.ComboBoxPopupAnimationKey}}" Placement="Bottom">
<Border x:Name="DropDownBorder" HorizontalAlignment="Stretch" Background="{StaticResource PopupBackgroundBrush}" BorderBrush="{StaticResource PopupBorderBrush}" BorderThickness="1" MaxHeight="{TemplateBinding MaxDropDownHeight}" MinWidth="{Binding ActualWidth, ElementName=MainGrid}" CornerRadius="2">
<ScrollViewer x:Name="DropDownScrollViewer" Style="{StaticResource ScrollViewerStyle}">
<Grid RenderOptions.ClearTypeHint="Enabled">
<Canvas HorizontalAlignment="Left" Height="0" VerticalAlignment="Top" Width="0">
<Rectangle x:Name="OpaqueRect" Fill="{Binding Background, ElementName=DropDownBorder}" Height="{Binding ActualHeight, ElementName=DropDownBorder}" Width="{Binding ActualWidth, ElementName=DropDownBorder}" />
</Canvas>
<ItemsPresenter x:Name="ItemsPresenter" KeyboardNavigation.DirectionalNavigation="Contained" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Grid>
</ScrollViewer>
</Border>
</Popup>
<ToggleButton BorderBrush="{TemplateBinding BorderBrush}" Background="{TemplateBinding Background}" Grid.Column="0" IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Style="{StaticResource ComboBoxToggleButtonStyle}" />
<TextBox x:Name="PART_EditableTextBox" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" IsReadOnly="{Binding IsReadOnly, RelativeSource={RelativeSource TemplatedParent}}" Style="{StaticResource ComboBoxEditableTextBoxStyle}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" Margin="0,0,31,0" />
<Rectangle x:Name="focused" Stroke="{StaticResource ComboBoxFocusedBorderBrush}" StrokeThickness="1" Visibility="Collapsed" Grid.ColumnSpan="2" />
<Rectangle x:Name="disabled" Fill="{StaticResource ComboBoxDisabledBackgroundBrush}" Visibility="Collapsed" Grid.ColumnSpan="2" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="HasItems" Value="false">
<Setter Property="Height" TargetName="DropDownBorder" Value="95" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
<!-- ********************************* ComboBox Style ********************************* -->
<Style x:Key="ComboBoxStyle" TargetType="{x:Type ComboBox}">
<Setter Property="Padding" Value="6,1,6,3" />
<Setter Property="Margin" Value="0" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource TransparentBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource ComboBoxBorderBrush}" />
<Setter Property="ItemContainerStyle" Value="{StaticResource ComboBoxItemStyle}" />
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto" />
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
<Setter Property="ScrollViewer.CanContentScroll" Value="true" />
<Setter Property="ScrollViewer.PanningMode" Value="Both" />
<Setter Property="Stylus.IsFlicksEnabled" Value="False" />
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ComboBox}">
<Grid x:Name="MainGrid" SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition MinWidth="30" Width="0" />
</Grid.ColumnDefinitions>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="hover">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Foreground" Storyboard.TargetName="contentControl">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource LightForegroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="disabled">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Unfocused" />
<VisualState x:Name="Focused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="focused">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="FocusedDropDown">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="focused">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="normal" Fill="{StaticResource ComboBoxBackgroundBrush}" Stroke="{StaticResource ComboBoxBorderBrush}" StrokeThickness="1" Grid.ColumnSpan="2" />
<Rectangle x:Name="hover" Fill="{StaticResource ComboBoxHoverBackgroundBrush}" Stroke="{StaticResource ComboBoxHoverBorderBrush}" StrokeThickness="1" Visibility="Collapsed" Grid.ColumnSpan="2" />
<Popup x:Name="PART_Popup" AllowsTransparency="true" Grid.ColumnSpan="2" IsOpen="{Binding IsDropDownOpen, RelativeSource={RelativeSource TemplatedParent}}" Margin="1" PopupAnimation="{DynamicResource {x:Static SystemParameters.ComboBoxPopupAnimationKey}}" Placement="Bottom">
<Border x:Name="DropDownBorder" HorizontalAlignment="Stretch" Background="{StaticResource PopupBackgroundBrush}" BorderBrush="{StaticResource PopupBorderBrush}" BorderThickness="1" MaxHeight="{TemplateBinding MaxDropDownHeight}" MinWidth="{Binding ActualWidth, ElementName=MainGrid}" CornerRadius="2">
<ScrollViewer x:Name="DropDownScrollViewer" Style="{StaticResource ScrollViewerStyle}">
<Grid RenderOptions.ClearTypeHint="Enabled">
<Canvas HorizontalAlignment="Left" Height="0" VerticalAlignment="Top" Width="0">
<Rectangle x:Name="OpaqueRect" Fill="{Binding Background, ElementName=DropDownBorder}" Height="{Binding ActualHeight, ElementName=DropDownBorder}" Width="{Binding ActualWidth, ElementName=DropDownBorder}" />
</Canvas>
<ItemsPresenter x:Name="ItemsPresenter" KeyboardNavigation.DirectionalNavigation="Contained" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Grid>
</ScrollViewer>
</Border>
</Popup>
<ToggleButton BorderBrush="{TemplateBinding BorderBrush}" Background="{TemplateBinding Background}" Grid.ColumnSpan="2" IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Style="{StaticResource ComboBoxToggleButtonStyle}" />
<ContentControl x:Name="contentControl" Foreground="{TemplateBinding Foreground}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" IsHitTestVisible="false" >
<ContentPresenter ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}" ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}" Content="{TemplateBinding SelectionBoxItem}" ContentStringFormat="{TemplateBinding SelectionBoxItemStringFormat}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" />
</ContentControl>
<Rectangle x:Name="focused" Stroke="{StaticResource ComboBoxFocusedBorderBrush}" StrokeThickness="1" Visibility="Collapsed" Grid.ColumnSpan="2" />
<Rectangle x:Name="disabled" Fill="{StaticResource ComboBoxDisabledBackgroundBrush}" Visibility="Collapsed" Grid.ColumnSpan="2" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="HasItems" Value="false">
<Setter Property="Height" TargetName="DropDownBorder" Value="95" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="Background" Value="{StaticResource ComboBoxBackgroundBrush}" />
</Trigger>
<Trigger Property="IsGrouping" Value="true">
<Setter Property="ScrollViewer.CanContentScroll" Value="false" />
</Trigger>
<Trigger Property="ScrollViewer.CanContentScroll" SourceName="DropDownScrollViewer" Value="false">
<Setter Property="Canvas.Top" TargetName="OpaqueRect" Value="{Binding VerticalOffset, ElementName=DropDownScrollViewer}" />
<Setter Property="Canvas.Left" TargetName="OpaqueRect" Value="{Binding HorizontalOffset, ElementName=DropDownScrollViewer}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsEditable" Value="true">
<Setter Property="IsTabStop" Value="false" />
<Setter Property="Padding" Value="0" />
<Setter Property="Template" Value="{StaticResource ComboBoxEditableTemplate}" />
</Trigger>
</Style.Triggers>
</Style>
<!-- ********************************* TextBox Style ********************************* -->
<Style x:Key="TextBoxStyle" TargetType="TextBox">
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="FontSize" Value="14.667" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="Background" Value="{StaticResource TextBoxBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource TextBoxBorderBrush}" />
<Setter Property="MinHeight" Value="30" />
<Setter Property="Padding" Value="6,3" />
<Setter Property="SelectionBrush" Value="{StaticResource TextBoxFocusedBrush}" />
<Setter Property="Validation.ErrorTemplate" Value="{StaticResource TextBoxValidationToolTipTemplate}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TextBox">
<Grid x:Name="RootElement" SnapsToDevicePixels="True">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="Border">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource TextBoxHoverBorderBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Background" Storyboard.TargetName="Border">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource TextBoxHoverBackgroundBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="DisabledVisualElement" />
</Storyboard>
</VisualState>
<VisualState x:Name="ReadOnly">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="ReadOnlyVisualElement" />
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="FocusVisualElement" />
</Storyboard>
</VisualState>
<VisualState x:Name="Unfocused">
<Storyboard>
<DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="FocusVisualElement" />
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="ValidationStates">
<VisualState x:Name="Valid" />
<VisualState x:Name="InvalidUnfocused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="ValidationErrorElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="InvalidFocused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="ValidationErrorElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="IsOpen" Storyboard.TargetName="validationTooltip">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<System:Boolean>True</System:Boolean>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border x:Name="Border" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Opacity="1">
<Grid>
<Border x:Name="ReadOnlyVisualElement" Background="{StaticResource TextBoxReadOnlyBackgroundBrush}" Opacity="0" />
<ScrollViewer x:Name="PART_ContentHost" BorderThickness="0" IsTabStop="False" Padding="{TemplateBinding Padding}" />
</Grid>
</Border>
<Border x:Name="DisabledVisualElement" BorderBrush="{StaticResource DisabledVisualElement}" BorderThickness="{TemplateBinding BorderThickness}" Background="{StaticResource DisabledVisualElement}" IsHitTestVisible="False" Opacity="0" />
<Border x:Name="FocusVisualElement" BorderBrush="{StaticResource TextBoxFocusedBrush}" BorderThickness="{TemplateBinding BorderThickness}" IsHitTestVisible="False" Opacity="0" />
<Border x:Name="ValidationErrorElement" BorderBrush="{StaticResource ValidationErrorElement}" BorderThickness="{TemplateBinding BorderThickness}" Visibility="Collapsed">
<ToolTipService.ToolTip>
<ToolTip x:Name="validationTooltip" DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}" Placement="Right" PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}" Template="{StaticResource TextBoxValidationToolTipTemplate}"/>
</ToolTipService.ToolTip>
<Grid Background="Transparent" HorizontalAlignment="Right" Height="12" Margin="1,-4,-4,0" VerticalAlignment="Top" Width="12">
<Path Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z" Fill="{StaticResource ValidationErrorElement}" Margin="1,3,0,0" />
<Path Data="M 0,0 L2,0 L 8,6 L8,8" Fill="{StaticResource LightForegroundBrush}" Margin="1,3,0,0" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ********************************* ListBox Style ********************************* -->
<Style x:Key="ListBoxStyle" TargetType="ListBox">
<Setter Property="Padding" Value="0" />
<Setter Property="Background" Value="{StaticResource ListBoxBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource ListBoxBorderBrush}" />
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Top" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="ItemContainerStyle" Value="{StaticResource ListBoxItemStyle}" />
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto" />
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBox">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="ValidationStates">
<VisualState x:Name="Valid" />
<VisualState x:Name="InvalidUnfocused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="ValidationErrorElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="InvalidFocused">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="ValidationErrorElement">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="IsOpen" Storyboard.TargetName="validationTooltip">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<System:Boolean>True</System:Boolean>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}" Background="{TemplateBinding Background}">
<ScrollViewer x:Name="ScrollViewer" BorderThickness="0" Padding="{TemplateBinding Padding}" Style="{StaticResource ScrollViewerStyle}">
<ItemsPresenter />
</ScrollViewer>
</Border>
<Border x:Name="ValidationErrorElement" BorderBrush="{StaticResource ValidationErrorElement}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="2" Visibility="Collapsed">
<ToolTipService.ToolTip>
<ToolTip x:Name="validationTooltip" DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}" Placement="Right" PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}" Template="{StaticResource ValidationToolTipTemplate}">
<ToolTip.Triggers>
<EventTrigger RoutedEvent="Canvas.Loaded">
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="IsHitTestVisible" Storyboard.TargetName="validationTooltip">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<System:Boolean>true</System:Boolean>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</ToolTip.Triggers>
</ToolTip>
</ToolTipService.ToolTip>
<Grid Background="{StaticResource TransparentBrush}" HorizontalAlignment="Right" Height="10" Margin="0,-4,-4,0" VerticalAlignment="Top" Width="10">
<Path Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z" Fill="{StaticResource ValidationErrorElement}" Margin="-1,3,0,0" />
<Path Data="M 0,0 L2,0 L 8,6 L8,8" Fill="{StaticResource LightForegroundBrush}" Margin="-1,3,0,0" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>

View File

@ -0,0 +1,104 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d">
<!-- ********************************** THEME BRUSHES - For Color Tuner **********************************-->
<SolidColorBrush x:Key="Brush01" Color="#FF00AADE" />
<SolidColorBrush x:Key="Brush02" Color="White" />
<SolidColorBrush x:Key="Brush03" Color="#FFC6C6C6" />
<SolidColorBrush x:Key="Brush04" Color="#FF565656" />
<SolidColorBrush x:Key="Brush05" Color="#FF333333" />
<!-- ********************************** THEME COLORS **********************************-->
<!--Base Colors-->
<Color x:Key="Color_000">#FF282828</Color>
<Color x:Key="Color_001">#FFFFFFFF</Color>
<Color x:Key="Color_002">#FFBABABA</Color>
<Color x:Key="Color_003">#FF858585</Color>
<Color x:Key="Color_004">#FF747474</Color>
<Color x:Key="Color_005">#FF565656</Color>
<Color x:Key="Color_006">#FF454545</Color>
<Color x:Key="Color_007">#FF333333</Color>
<Color x:Key="Color_008">#FF292929</Color>
<Color x:Key="Color_009">#FF181818</Color>
<!--Transparent and Whites with transparency-->
<Color x:Key="Color_010">#E5FFFFFF</Color>
<!--90% White-->
<Color x:Key="Color_011">#BFFFFFFF</Color>
<!--75% White-->
<Color x:Key="Color_012">#99FFFFFF</Color>
<!--60% White-->
<Color x:Key="Color_013">#72FFFFFF</Color>
<!--45% White-->
<Color x:Key="Color_014">#4CFFFFFF</Color>
<!--30% White-->
<Color x:Key="Color_015">#26FFFFFF</Color>
<!--15% White-->
<Color x:Key="Color_016">#00FFFFFF</Color>
<!--0% White-->
<!--Blacks and grays with transparency-->
<Color x:Key="Color_069">#E5000000</Color>
<!--90% Black-->
<Color x:Key="Color_070">#BF000000</Color>
<!--75% Black-->
<Color x:Key="Color_017">#99000000</Color>
<!--60% Black-->
<Color x:Key="Color_018">#72000000</Color>
<!--45% Black-->
<Color x:Key="Color_019">#4C000000</Color>
<!--30% Black-->
<Color x:Key="Color_020">#26000000</Color>
<!--15% Black-->
<Color x:Key="Color_021">#00000000</Color>
<!--0% Black-->
<Color x:Key="Color_022">#66E2E2E2</Color>
<!--Theme Accent colors -->
<Color x:Key="Color_023">#FF0086AF</Color>
<Color x:Key="Color_024">#FF00AADE</Color>
<Color x:Key="Color_025">#FF80D5EF</Color>
<Color x:Key="Color_026">#FFB2E1EF</Color>
<Color x:Key="Color_027">#2600AADE</Color>
<!--Theme Error colors -->
<Color x:Key="Color_028">#FFD0284C</Color>
<Color x:Key="Color_029">#FFF55E7F</Color>
<Color x:Key="Color_030">#FFFFCAD5</Color>
<!--Colors for Chart Series-->
<Color x:Key="Color_035">#FF006481</Color>
<Color x:Key="Color_037">#FF8A9B0F</Color>
<Color x:Key="Color_038">#FF3E4700</Color>
<Color x:Key="Color_040">#FFF14D0F</Color>
<Color x:Key="Color_041">#FF8D2E00</Color>
<Color x:Key="Color_043">#FF81106B</Color>
<Color x:Key="Color_044">#FF410135</Color>
<Color x:Key="Color_046">#FFFCA910</Color>
<Color x:Key="Color_047">#FF8D4902</Color>
<Color x:Key="Color_049">#FF037A54</Color>
<Color x:Key="Color_050">#FF003F2A</Color>
<Color x:Key="Color_052">#FF154D85</Color>
<Color x:Key="Color_053">#FF02284D</Color>
<Color x:Key="Color_055">#FF543511</Color>
<Color x:Key="Color_056">#FF211303</Color>
<Color x:Key="Color_058">#FF89806D</Color>
<Color x:Key="Color_059">#FF393225</Color>
<Color x:Key="Color_061">#FF58458B</Color>
<Color x:Key="Color_062">#FF211347</Color>
<Color x:Key="Color_063">#7FB9B9B9</Color>
<Color x:Key="Color_064">#33565656</Color>
<Color x:Key="Color_065">#7F3F3F3F</Color>
<Color x:Key="Color_066">#FF686868</Color>
<Color x:Key="Color_067">#8000AADE</Color>
<Color x:Key="Color_068">#CC3F3F3F</Color>
<!-- ********************************** BULLETGRAPH/LINEARGAUGE COLORS **********************************-->
<Color x:Key="Color_071">#FF0092BE</Color>
<Color x:Key="Color_072">#FF00AADE</Color>
<Color x:Key="Color_073">#FF2BB9E5</Color>
<Color x:Key="Color_074">#FF55C8EB</Color>
<Color x:Key="Color_075">#FF80D7F2</Color>
</ResourceDictionary>

23
ArkH/config.ini Normal file
View File

@ -0,0 +1,23 @@
[General]
globvar_applicationname="ArkH!!!"
globvar_applicationversion="1.0"
globvar_gamewindowname="ARK: Survival Evolved"
globvar_pathtogame=""
globvar_autostartgame="FALSE"
[Keys]
keys_autowalk="F5"
keys_matehelper="F6"
keys_autofeed="F7"
keys_autoeat="F8"
keys_autodrink="F9"
keys_autoattack="F10"
keys_autogather="F11"
keys_showhide="F3"
keys_overlay="F4"
keys_starttimer="F2"
keys_switchprofile="F1"
[Bindings]
bind_use="e"
bind_attack="mbutton"
bind_forward="w"
bind_whistle="u"

83
ArkH/globvars.vb Normal file
View File

@ -0,0 +1,83 @@
Module globvars
Public globvar_applicationname As String
Public globvar_applicationversion As String
Public globvar_gamewindowname As String
Public globvar_pathtogame As String
Public globvar_autostartgame As Boolean
Public globvar_enableoverlay As Boolean
Public globvar_gamerunning As Boolean
'keys
Public keys_autowalk
Public keys_matehelper
Public keys_autofeed
Public keys_autoeat
Public keys_autodrink
Public keys_autoattack
Public keys_autogather
Public keys_showhide
Public keys_overlay
Public keys_starttimer
Public keys_switchprofile
'keybinds
Public bind_use
Public bind_attack
Public bind_forward
Public bind_whistle
'state
Public globvar_autowalkstate = False
Public globvar_matehelperstate = False
Public globvar_autofeedstate = False
Public globvar_autoeatstate = False
Public globvar_autodrinkstate = False
Public globvar_autoattackstate = False
Public globvar_autogatherstate = False
Public globvar_globalstate = False
Public globvar_APIversion As String
Public globvar_APistatus As String
Public globvar_APInews As String
Public globvar_serverlist As String
Public globvar_eventactive As Boolean
Public globvar_eventmessage As String = ""
Public Sub updateglobalstate()
If globvar_autowalkstate = False Then
If globvar_matehelperstate = False Then
If globvar_autofeedstate = False Then
If globvar_autoeatstate = False Then
If globvar_autodrinkstate = False Then
If globvar_autoattackstate = False Then
If globvar_autogatherstate = False Then
globvar_globalstate = False
Else
globvar_globalstate = True
End If
Else
globvar_globalstate = True
End If
Else
globvar_globalstate = True
End If
Else
globvar_globalstate = True
End If
Else
globvar_globalstate = True
End If
Else
globvar_globalstate = True
End If
Else
globvar_globalstate = True
End If
End Sub
End Module

BIN
ArkH/mYdLixs.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

4
ArkH/packages.config Normal file
View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Infragistics.Themes.MetroDark.Wpf" version="1.0.0" targetFramework="net452" />
</packages>