ModeSelectionView revamped

This commit is contained in:
Justin Swanson 2019-11-28 02:00:43 -06:00
parent 86efb24ec8
commit a38a5b1503
12 changed files with 666 additions and 104 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

View File

@ -10,7 +10,6 @@
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Steel.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseDark.xaml" />
<ResourceDictionary Source="Themes\Styles.xaml" />
</ResourceDictionary.MergedDictionaries>

View File

@ -1,6 +1,8 @@
using System;
using System.Linq;
using System.Reflection;
using System.Windows;
using MahApps.Metro;
using Wabbajack.Common;
namespace Wabbajack
@ -26,5 +28,23 @@ namespace Wabbajack
ExtensionManager.Associate(appPath);
}
}
protected override void OnStartup(StartupEventArgs e)
{
// add custom accent and theme resource dictionaries to the ThemeManager
// you should replace MahAppsMetroThemesSample with your application name
// and correct place where your custom accent lives
ThemeManager.AddAccent("MahappsOverride", new Uri("pack://application:,,,/Wabbajack;component/Themes/MahappStyleOverride.xaml"));
// get the current app style (theme and accent) from the application
Tuple<AppTheme, Accent> theme = ThemeManager.DetectAppStyle(Application.Current);
//// now change app style to the custom accent and current theme
//ThemeManager.ChangeAppStyle(Application.Current,
// ThemeManager.GetAccent("MahappsOverride"),
// ThemeManager.AppThemes.First(x => x.Name.Equals("BaseDark")));
base.OnStartup(e);
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

View File

@ -0,0 +1,118 @@
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:options="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options"
mc:Ignorable="options">
<Color x:Key="HighlightColor">#3700B3</Color>
<Color x:Key="AccentBaseColor">#FF3700B3</Color>
<!-- 80% -->
<Color x:Key="AccentColor">#CC3700B3</Color>
<!-- 60% -->
<Color x:Key="AccentColor2">#993700B3</Color>
<!-- 40% -->
<Color x:Key="AccentColor3">#663700B3</Color>
<!-- 20% -->
<Color x:Key="AccentColor4">#333700B3</Color>
<!-- re-set brushes too -->
<SolidColorBrush
x:Key="HighlightBrush"
options:Freeze="True"
Color="{StaticResource HighlightColor}" />
<SolidColorBrush
x:Key="AccentBaseColorBrush"
options:Freeze="True"
Color="{StaticResource AccentBaseColor}" />
<SolidColorBrush
x:Key="AccentColorBrush"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<SolidColorBrush
x:Key="AccentColorBrush2"
options:Freeze="True"
Color="{StaticResource AccentColor2}" />
<SolidColorBrush
x:Key="AccentColorBrush3"
options:Freeze="True"
Color="{StaticResource AccentColor3}" />
<SolidColorBrush
x:Key="AccentColorBrush4"
options:Freeze="True"
Color="{StaticResource AccentColor4}" />
<SolidColorBrush
x:Key="WindowTitleColorBrush"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<LinearGradientBrush x:Key="ProgressBrush" options:Freeze="True" StartPoint="1.002,0.5" EndPoint="0.001,0.5">
<GradientStop Offset="0" Color="{StaticResource HighlightColor}" />
<GradientStop Offset="1" Color="{StaticResource AccentColor3}" />
</LinearGradientBrush>
<SolidColorBrush
x:Key="CheckmarkFill"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<SolidColorBrush
x:Key="RightArrowFill"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<Color x:Key="IdealForegroundColor">White</Color>
<SolidColorBrush
x:Key="IdealForegroundColorBrush"
options:Freeze="True"
Color="{StaticResource IdealForegroundColor}" />
<SolidColorBrush
x:Key="IdealForegroundDisabledBrush"
options:Freeze="True"
Opacity="0.4"
Color="{StaticResource IdealForegroundColor}" />
<SolidColorBrush
x:Key="AccentSelectedColorBrush"
options:Freeze="True"
Color="{StaticResource IdealForegroundColor}" />
<!-- DataGrid brushes -->
<SolidColorBrush
x:Key="MetroDataGrid.HighlightBrush"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<SolidColorBrush
x:Key="MetroDataGrid.HighlightTextBrush"
options:Freeze="True"
Color="{StaticResource IdealForegroundColor}" />
<SolidColorBrush
x:Key="MetroDataGrid.MouseOverHighlightBrush"
options:Freeze="True"
Color="{StaticResource AccentColor3}" />
<SolidColorBrush
x:Key="MetroDataGrid.FocusBorderBrush"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<SolidColorBrush
x:Key="MetroDataGrid.InactiveSelectionHighlightBrush"
options:Freeze="True"
Color="{StaticResource AccentColor2}" />
<SolidColorBrush
x:Key="MetroDataGrid.InactiveSelectionHighlightTextBrush"
options:Freeze="True"
Color="{StaticResource IdealForegroundColor}" />
<SolidColorBrush
x:Key="MahApps.Metro.Brushes.ToggleSwitchButton.OnSwitchBrush.Win10"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<SolidColorBrush
x:Key="MahApps.Metro.Brushes.ToggleSwitchButton.OnSwitchMouseOverBrush.Win10"
options:Freeze="True"
Color="{StaticResource AccentColor2}" />
<SolidColorBrush
x:Key="MahApps.Metro.Brushes.ToggleSwitchButton.ThumbIndicatorCheckedBrush.Win10"
options:Freeze="True"
Color="{StaticResource IdealForegroundColor}" />
</ResourceDictionary>

View File

@ -1,4 +1,4 @@
<ResourceDictionary
<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"
@ -6,6 +6,7 @@
xmlns:local="clr-namespace:Wabbajack"
xmlns:mahapps="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:options="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options"
mc:Ignorable="d">
<!-- Converters -->
@ -38,12 +39,53 @@
<Color x:Key="Secondary">#03DAC6</Color>
<Color x:Key="DarkSecondary">#0e8f83</Color>
<Color x:Key="DarkerSecondary">#095952</Color>
<Color x:Key="OffWhiteSeconday">#cef0ed</Color>
<Color x:Key="LightSecondary">#8cede5</Color>
<Color x:Key="Complementary">#C7FC86</Color>
<Color x:Key="Analogous1">#868CFC</Color>
<Color x:Key="Analogous2">#F686FC</Color>
<Color x:Key="Triadic1">#FC86C7</Color>
<Color x:Key="Triadic2">#FCBB86</Color>
<!-- Mahapps overrides -->
<Color x:Key="AccentBaseColor">#FF3700B3</Color>
<!-- 80% -->
<Color x:Key="AccentColor">#CC3700B3</Color>
<!-- 60% -->
<Color x:Key="AccentColor2">#993700B3</Color>
<!-- 40% -->
<Color x:Key="AccentColor3">#663700B3</Color>
<!-- 20% -->
<Color x:Key="AccentColor4">#333700B3</Color>
<SolidColorBrush
x:Key="HighlightBrush"
options:Freeze="True"
Color="{StaticResource HighlightColor}" />
<SolidColorBrush
x:Key="AccentBaseColorBrush"
options:Freeze="True"
Color="{StaticResource AccentBaseColor}" />
<SolidColorBrush
x:Key="AccentColorBrush"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<SolidColorBrush
x:Key="AccentColorBrush2"
options:Freeze="True"
Color="{StaticResource AccentColor2}" />
<SolidColorBrush
x:Key="AccentColorBrush3"
options:Freeze="True"
Color="{StaticResource AccentColor3}" />
<SolidColorBrush
x:Key="AccentColorBrush4"
options:Freeze="True"
Color="{StaticResource AccentColor4}" />
<SolidColorBrush
x:Key="WindowTitleColorBrush"
options:Freeze="True"
Color="{StaticResource AccentColor}" />
<!-- Brushes -->
<SolidColorBrush x:Key="YellowBrush" Color="{StaticResource Yellow}" />
<SolidColorBrush x:Key="GreenBrush" Color="{StaticResource Green}" />
@ -63,6 +105,8 @@
<SolidColorBrush x:Key="SecondaryBrush" Color="{StaticResource Secondary}" />
<SolidColorBrush x:Key="DarkSecondaryBrush" Color="{StaticResource DarkSecondary}" />
<SolidColorBrush x:Key="DarkerSecondaryBrush" Color="{StaticResource DarkerSecondary}" />
<SolidColorBrush x:Key="OffWhiteSecondayBrush" Color="{StaticResource OffWhiteSeconday}" />
<SolidColorBrush x:Key="LightSecondaryBrush" Color="{StaticResource LightSecondary}" />
<SolidColorBrush x:Key="ComplementaryBrush" Color="{StaticResource Complementary}" />
<SolidColorBrush x:Key="Analogous1Brush" Color="{StaticResource Analogous1}" />
<SolidColorBrush x:Key="Analogous2Brush" Color="{StaticResource Analogous2}" />

View File

@ -26,7 +26,7 @@ namespace Wabbajack
public MainWindowVM MWVM { get; }
public BitmapImage WabbajackLogo { get; } = UIUtils.BitmapImageFromResource("Wabbajack.Resources.Wabba_Mouth.png");
public BitmapImage WabbajackLogo { get; } = UIUtils.BitmapImageFromStream(Application.GetResourceStream(new Uri("pack://application:,,,/Wabbajack;component/Resources/Wabba_Mouth_No_Text.png")).Stream);
private readonly ObservableAsPropertyHelper<ModListVM> _modList;
public ModListVM ModList => _modList.Value;

View File

@ -169,7 +169,7 @@
Grid.Column="0"
Grid.ColumnSpan="5"
Margin="5"
Fill="{StaticResource WindowBackgroundBrush}" />
Fill="#121212" />
<Grid
Grid.Row="2"
Grid.Column="0"

View File

@ -5,7 +5,6 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:icon="http://metro.mahapps.com/winfx/xaml/iconpacks"
xmlns:local="clr-namespace:Wabbajack"
xmlns:mahapps="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DataContext="{d:DesignInstance local:InstallerVM}"
d:DesignHeight="500"

View File

@ -3,111 +3,486 @@
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:icon="http://metro.mahapps.com/winfx/xaml/iconpacks"
xmlns:local="clr-namespace:Wabbajack"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DataContext="{d:DesignInstance local:ModeSelectionVM}"
d:DesignHeight="450"
d:DesignWidth="800"
d:DesignHeight="700"
d:DesignWidth="1000"
mc:Ignorable="d">
<Grid Margin="20">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="150" />
<RowDefinition Height="*" />
<RowDefinition Height="70" />
<RowDefinition Height="70" />
<RowDefinition Height="70" />
<RowDefinition Height="3*" />
<RowDefinition Height="1*" />
<RowDefinition Height="15" />
</Grid.RowDefinitions>
<Image
<Viewbox
Name="Banner"
Grid.Row="0"
Grid.ColumnSpan="3"
Margin="2,0,2,0"
Source="../Resources/banner_small_dark.png"
Stretch="Uniform" />
<local:LinksView
Grid.Row="0"
Height="40"
HorizontalAlignment="Right"
VerticalAlignment="Top" />
<ListBox
Grid.Row="1"
Grid.ColumnSpan="3"
ItemsSource="{Binding ModLists}"
ScrollViewer.CanContentScroll="False"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
SelectedItem="{Binding Path=SelectedModList, Mode=TwoWay}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300" />
<ColumnDefinition Width="20" />
<ColumnDefinition Width="200" />
<ColumnDefinition Width="200" />
<ColumnDefinition Width="200" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="20" />
<RowDefinition Height="15" />
<RowDefinition Height="150" />
<RowDefinition Height="20" />
</Grid.RowDefinitions>
<Image
Grid.Row="0"
Grid.RowSpan="4"
Grid.Column="0"
Source="{Binding Links.ImageUri}" />
<TextBlock
Grid.Row="0"
Grid.Column="2"
FontSize="20"
Text="{Binding Title}" />
<TextBlock
Grid.Row="1"
Grid.Column="2"
Text="{Binding Author}" />
<TextBlock
Grid.Row="1"
Grid.Column="4"
HorizontalAlignment="Right"
Text="{Binding GameName}"
TextAlignment="Right" />
<TextBlock
Grid.Row="2"
Grid.Column="2"
Grid.ColumnSpan="3"
HorizontalAlignment="Left"
VerticalAlignment="Top"
Text="{Binding Description}"
TextWrapping="Wrap" />
<Button Grid.Row="3" Grid.Column="2">More Info</Button>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Button
Name="InstallModlist"
Grid.Row="2"
Grid.ColumnSpan="3"
Margin="2"
Command="{Binding DownloadAndInstallCommand}">
<TextBlock FontSize="40">Download and Install</TextBlock>
</Button>
<Button
Name="InstallFromList"
Grid.Row="3"
Grid.ColumnSpan="3"
Margin="2"
Command="{Binding InstallCommand}">
<TextBlock FontSize="40">Install from Disk</TextBlock>
</Button>
<Button
Name="CreateModlist"
Grid.Row="4"
Grid.ColumnSpan="3"
Margin="2"
Command="{Binding CompileCommand}">
<TextBlock FontSize="40">Create a ModList</TextBlock>
</Button>
Grid.RowSpan="3"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Stretch="UniformToFill">
<Image Margin="40,20,40,240" Source="../Resources/Wabba_Mouth.png" />
</Viewbox>
<Grid Grid.Row="1" Margin="5,15">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Button
Grid.Row="1"
Grid.Column="0"
Margin="15,0"
Background="Transparent"
BorderBrush="Transparent"
ClipToBounds="False">
<Button.Template>
<ControlTemplate TargetType="Button">
<Border Background="{TemplateBinding Background}">
<ContentPresenter />
</Border>
</ControlTemplate>
</Button.Template>
<Grid ClipToBounds="False">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Viewbox Grid.Row="1">
<Grid>
<Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
ClipToBounds="False"
Foreground="{StaticResource PrimaryVariantBrush}"
Kind="CloudDownloadAltSolid"
Opacity="0.6" />
<Grid.Style>
<Style TargetType="Grid">
<Setter Property="Effect">
<Setter.Value>
<BlurEffect Radius="50" />
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<Setter Property="Effect">
<Setter.Value>
<BlurEffect Radius="75" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
</Grid>
<Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
ClipToBounds="False"
Foreground="{StaticResource SecondaryBrush}"
Kind="CloudDownloadAltSolid" />
<Grid.Effect>
<BlurEffect Radius="25" />
</Grid.Effect>
<Grid.Resources>
<Style TargetType="Grid">
<Setter Property="Opacity" Value="0" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="Opacity"
To="0.6"
Duration="0:0:0.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="Opacity"
To="0"
Duration="0:0:4.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Resources>
</Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
Kind="CloudDownloadAltSolid">
<icon:PackIconFontAwesome.Style>
<Style TargetType="icon:PackIconFontAwesome">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetProperty="(icon:PackIconFontAwesome.Foreground).(SolidColorBrush.Color)"
To="{StaticResource LightSecondary}"
Duration="0:0:2.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetProperty="(icon:PackIconFontAwesome.Foreground).(SolidColorBrush.Color)"
To="{StaticResource ForegroundColor}"
Duration="0:0:4.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</icon:PackIconFontAwesome.Style>
</icon:PackIconFontAwesome>
</Grid>
</Viewbox>
<TextBlock
Grid.Row="2"
HorizontalAlignment="Center"
VerticalAlignment="Top"
FontSize="25"
Text="Browse Modlists">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Opacity" Value="0.2" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<Setter Property="Opacity" Value="1" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</Grid>
</Button>
<Button
Grid.Row="1"
Grid.Column="1"
Margin="15,0"
Background="Transparent"
BorderBrush="Transparent"
ClipToBounds="False"
Command="{Binding InstallCommand}">
<Button.Template>
<ControlTemplate TargetType="Button">
<Border Background="{TemplateBinding Background}">
<ContentPresenter />
</Border>
</ControlTemplate>
</Button.Template>
<Grid ClipToBounds="False">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Viewbox Grid.Row="1">
<Grid>
<Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
ClipToBounds="False"
Foreground="{StaticResource PrimaryVariantBrush}"
Kind="HddSolid"
Opacity="0.6" />
<Grid.Style>
<Style TargetType="Grid">
<Setter Property="Effect">
<Setter.Value>
<BlurEffect Radius="50" />
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<Setter Property="Effect">
<Setter.Value>
<BlurEffect Radius="75" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
</Grid>
<Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
ClipToBounds="False"
Foreground="{StaticResource SecondaryBrush}"
Kind="HddSolid" />
<Grid.Effect>
<BlurEffect Radius="25" />
</Grid.Effect>
<Grid.Resources>
<Style TargetType="Grid">
<Setter Property="Opacity" Value="0" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="Opacity"
To="0.6"
Duration="0:0:0.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="Opacity"
To="0"
Duration="0:0:4.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Resources>
</Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
Kind="HddSolid">
<icon:PackIconFontAwesome.Style>
<Style TargetType="icon:PackIconFontAwesome">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetProperty="(icon:PackIconFontAwesome.Foreground).(SolidColorBrush.Color)"
To="{StaticResource LightSecondary}"
Duration="0:0:2.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetProperty="(icon:PackIconFontAwesome.Foreground).(SolidColorBrush.Color)"
To="{StaticResource ForegroundColor}"
Duration="0:0:4.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</icon:PackIconFontAwesome.Style>
</icon:PackIconFontAwesome>
</Grid>
</Viewbox>
<TextBlock
Grid.Row="2"
HorizontalAlignment="Center"
VerticalAlignment="Top"
FontSize="25"
Text="Install From Disk">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Opacity" Value="0.2" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<Setter Property="Opacity" Value="1" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</Grid>
</Button>
<Button
Grid.Row="1"
Grid.Column="2"
Margin="15,0"
Background="Transparent"
BorderBrush="Transparent"
ClipToBounds="False"
Command="{Binding CompileCommand}">
<Button.Template>
<ControlTemplate TargetType="Button">
<Border Background="{TemplateBinding Background}">
<ContentPresenter />
</Border>
</ControlTemplate>
</Button.Template>
<Grid ClipToBounds="False">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Viewbox Grid.Row="1">
<Grid>
<Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
ClipToBounds="False"
Foreground="{StaticResource PrimaryVariantBrush}"
Kind="PlusCircleSolid"
Opacity="0.6" />
<Grid.Style>
<Style TargetType="Grid">
<Setter Property="Effect">
<Setter.Value>
<BlurEffect Radius="50" />
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<Setter Property="Effect">
<Setter.Value>
<BlurEffect Radius="75" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
</Grid>
<Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
ClipToBounds="False"
Foreground="{StaticResource SecondaryBrush}"
Kind="PlusCircleSolid" />
<Grid.Effect>
<BlurEffect Radius="25" />
</Grid.Effect>
<Grid.Resources>
<Style TargetType="Grid">
<Setter Property="Opacity" Value="0" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="Opacity"
To="0.6"
Duration="0:0:0.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="Opacity"
To="0"
Duration="0:0:4.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Resources>
</Grid>
<icon:PackIconFontAwesome
Width="140"
Height="140"
Margin="0,0,0,10"
HorizontalAlignment="Center"
Kind="PlusCircleSolid">
<icon:PackIconFontAwesome.Style>
<Style TargetType="icon:PackIconFontAwesome">
<Setter Property="Foreground" Value="{StaticResource ForegroundBrush}" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetProperty="(icon:PackIconFontAwesome.Foreground).(SolidColorBrush.Color)"
To="{StaticResource LightSecondary}"
Duration="0:0:2.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetProperty="(icon:PackIconFontAwesome.Foreground).(SolidColorBrush.Color)"
To="{StaticResource ForegroundColor}"
Duration="0:0:4.0" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</icon:PackIconFontAwesome.Style>
</icon:PackIconFontAwesome>
</Grid>
</Viewbox>
<TextBlock
Grid.Row="2"
HorizontalAlignment="Center"
VerticalAlignment="Top"
FontSize="25"
Text="Create a Modlist">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Opacity" Value="0.2" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType={x:Type Button}}}" Value="True">
<Setter Property="Opacity" Value="1" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</Grid>
</Button>
</Grid>
</Grid>
</UserControl>

View File

@ -239,6 +239,10 @@
<Compile Include="Views\Compilers\VortexCompilerConfigView.xaml.cs">
<DependentUpon>VortexCompilerConfigView.xaml</DependentUpon>
</Compile>
<Page Include="Themes\MahappStyleOverride.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Views\LinksView.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
@ -474,7 +478,7 @@
</PackageReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Resources\Wabba_Mouth.png" />
<Resource Include="Resources\Wabba_Mouth.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\MO2Button.png" />
@ -488,5 +492,8 @@
<Resource Include="Resources\Icons\github.png" />
<Resource Include="Resources\Icons\patreon.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\Wabba_Mouth_No_Text.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>