First commit for Wallet.UI Desktop
ADD
WalletWasabi.UI/Desktop/Themes/Theme.xaml
+<Style xmlns="https://github.com/avaloniaui"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:sys="clr-namespace:System;assembly=mscorlib">
+ <Style.Resources>
+ <SolidColorBrush x:Key="ThemeBackgroundBrush">#FFDDDDDD</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeBorderDarkBrush">#FF333333</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeBorderLightBrush">#FFCCCCCC</SolidColorBrush>
+ <SolidColorBrush x:Key="HighlightBrush">#FF086F9E</SolidColorBrush>
+<!--
+ <SolidColorBrush x:Key="ThemeBorderMidBrush">#FF888888</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeControlLightBrush">#FFFFFFFF</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeControlMidBrush">#FFAAAAAA</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeControlDarkBrush">#FF888888</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeForegroundBrush">#FF000000</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeForegroundLightBrush">#FF808080</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeAccentBrush">#CC119EDA</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeAccentBrush2">#99119EDA</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeAccentBrush3">#66119EDA</SolidColorBrush>
+ <SolidColorBrush x:Key="ThemeAccentBrush4">#33119EDA</SolidColorBrush>
+ <SolidColorBrush x:Key="ErrorBrush">Red</SolidColorBrush>
+ <SolidColorBrush x:Key="ErrorBrushLight">#10ff0000</SolidColorBrush>
+ <Thickness x:Key="ThemeBorderThickness">2</Thickness>
+ <sys:Double x:Key="ThemeDisabledOpacity">0.5</sys:Double>
+ <sys:Double x:Key="FontSizeSmall">10</sys:Double>
+ <sys:Double x:Key="FontSizeNormal">12</sys:Double>
+ <sys:Double x:Key="FontSizeLarge">16</sys:Double>
+-->
+ </Style.Resources>
+</Style>
\ No newline at end of file

ADD
WalletWasabi.UI/Desktop/ViewLocator.cs
+using System;
+using Avalonia.Controls;
+using Avalonia.Controls.Templates;
+using WalletWasabi.UI.Desktop.ViewModels;
+
+namespace WalletWasabi.UI.Desktop
+{
+ public class ViewLocator : IDataTemplate
+ {
+ public bool SupportsRecycling => false;
+
+ public IControl Build(object data)
+ {
+ var name = data.GetType().FullName.Replace("ViewModel", "View");
+ var type = Type.GetType(name);
+
+ if (type != null)
+ {
+ return (Control)Activator.CreateInstance(type);
+ }
+ else
+ {
+ return new TextBlock { Text = "Not Found: " + name };
+ }
+ }
+
+ public bool Match(object data)
+ {
+ return data is ViewModelBase;
+ }
+ }
+}
\ No newline at end of file

ADD
WalletWasabi.UI/Desktop/WalletWasabi.UI.Desktop.csproj
+<Project Sdk="Microsoft.NET.Sdk">
+ <PropertyGroup>
+ <OutputType>Exe</OutputType>
+ <TargetFrameworks>netcoreapp2.0</TargetFrameworks>
+ </PropertyGroup>
+ <ItemGroup>
+ <Folder Include="Models\" />
+ <Compile Update="**\*.xaml.cs">
+ <DependentUpon>%(Filename)</DependentUpon>
+ </Compile>
+ <EmbeddedResource Include="**\*.xaml">
+ <SubType>Designer</SubType>
+ </EmbeddedResource>
+ <EmbeddedResource Include="Assets\*" />
+ <Compile Condition=" '$(EnableDefaultCompileItems)' == 'true' " Update="App.xaml.cs">
+ <DependentUpon>App.xaml</DependentUpon>
+ </Compile>
+ <Compile Condition=" '$(EnableDefaultCompileItems)' == 'true' " Update="Views\MainWindow.xaml.cs">
+ <DependentUpon>Views\MainWindow.xaml</DependentUpon>
+ </Compile>
+ </ItemGroup>
+ <ItemGroup>
+ <EmbeddedResource Update="Themes/Theme.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ </EmbeddedResource>
+ <EmbeddedResource Update="Views/HeaderContentLayout.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ </EmbeddedResource>
+ </ItemGroup>
+
+ <ItemGroup>
+ <ProjectReference Include="../../WalletWasabi\WalletWasabi.csproj" />
+ </ItemGroup>
+
+ <ItemGroup>
+ <PackageReference Include="Splat" Version="3.0.0" />
+ <PackageReference Include="Avalonia" Version="0.6.1" />
+ <PackageReference Include="Avalonia.Desktop" Version="0.6.1" />
+ <PackageReference Include="Avalonia.ReactiveUI" Version="0.6.1" />
+ </ItemGroup>
+</Project>
\ No newline at end of file

First commit for Wallet.UI Desktop