diff --git a/Wabbajack/Converters/EqualsToBoolConverter.cs b/Wabbajack/Converters/EqualsToBoolConverter.cs
new file mode 100644
index 00000000..1fd143f7
--- /dev/null
+++ b/Wabbajack/Converters/EqualsToBoolConverter.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Data;
+
+namespace Wabbajack
+{
+ public class EqualsToBoolConverter : IValueConverter
+ {
+ public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ return object.Equals(value, parameter);
+ }
+
+ public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ return parameter;
+ }
+ }
+}
diff --git a/Wabbajack/Resources/MO2Button.png b/Wabbajack/Resources/MO2Button.png
new file mode 100644
index 00000000..ac97254e
Binary files /dev/null and b/Wabbajack/Resources/MO2Button.png differ
diff --git a/Wabbajack/Resources/VortexButton.png b/Wabbajack/Resources/VortexButton.png
new file mode 100644
index 00000000..ee4978cc
Binary files /dev/null and b/Wabbajack/Resources/VortexButton.png differ
diff --git a/Wabbajack/Themes/Styles.xaml b/Wabbajack/Themes/Styles.xaml
index 558363dd..b9cb0511 100644
--- a/Wabbajack/Themes/Styles.xaml
+++ b/Wabbajack/Themes/Styles.xaml
@@ -12,6 +12,7 @@
+
#121212
diff --git a/Wabbajack/View Models/CompilerVM.cs b/Wabbajack/View Models/CompilerVM.cs
index 3362eb0b..7ac9fd1a 100644
--- a/Wabbajack/View Models/CompilerVM.cs
+++ b/Wabbajack/View Models/CompilerVM.cs
@@ -13,6 +13,12 @@ using Wabbajack.Lib;
namespace Wabbajack
{
+ public enum CompilerType
+ {
+ MO2,
+ Vortex
+ }
+
public class CompilerVM : ViewModel
{
public MainWindowVM MWVM { get; }
@@ -54,6 +60,9 @@ namespace Wabbajack
public IReactiveCommand BeginCommand { get; }
+ [Reactive]
+ public CompilerType SelectedCompilerType { get; set; }
+
public CompilerVM(MainWindowVM mainWindowVM, string source)
{
this.MWVM = mainWindowVM;
diff --git a/Wabbajack/BorderFadeDownView.xaml b/Wabbajack/Views/BorderFadeDownView.xaml
similarity index 100%
rename from Wabbajack/BorderFadeDownView.xaml
rename to Wabbajack/Views/BorderFadeDownView.xaml
diff --git a/Wabbajack/BorderFadeDownView.xaml.cs b/Wabbajack/Views/BorderFadeDownView.xaml.cs
similarity index 100%
rename from Wabbajack/BorderFadeDownView.xaml.cs
rename to Wabbajack/Views/BorderFadeDownView.xaml.cs
diff --git a/Wabbajack/Views/CompilerView.xaml b/Wabbajack/Views/CompilerView.xaml
index b8c5550e..db94a316 100644
--- a/Wabbajack/Views/CompilerView.xaml
+++ b/Wabbajack/Views/CompilerView.xaml
@@ -60,7 +60,7 @@
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ TextAlignment="Center"
+ ToolTip="The MO2 modlist.txt file you want to use as your source" />
+ FontSize="14"
+ ToolTip="The MO2 modlist.txt file you want to use as your source" />
+ TextAlignment="Center"
+ ToolTip="The folder where MO2 downloads your mods." />
+ FontSize="14"
+ ToolTip="The folder where MO2 downloads your mods." />
+
+
diff --git a/Wabbajack/Views/RadioButtonView.xaml b/Wabbajack/Views/RadioButtonView.xaml
new file mode 100644
index 00000000..dd704842
--- /dev/null
+++ b/Wabbajack/Views/RadioButtonView.xaml
@@ -0,0 +1,67 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Wabbajack/Views/RadioButtonView.xaml.cs b/Wabbajack/Views/RadioButtonView.xaml.cs
new file mode 100644
index 00000000..dfda9a8d
--- /dev/null
+++ b/Wabbajack/Views/RadioButtonView.xaml.cs
@@ -0,0 +1,57 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+
+namespace Wabbajack
+{
+ ///
+ /// Interaction logic for ImageRadioButtonView.xaml
+ ///
+ public partial class ImageRadioButtonView : UserControl
+ {
+ public bool IsChecked
+ {
+ get => (bool)GetValue(IsCheckedProperty);
+ set => SetValue(IsCheckedProperty, value);
+ }
+ public static readonly DependencyProperty IsCheckedProperty = DependencyProperty.Register(nameof(IsChecked), typeof(bool), typeof(ImageRadioButtonView),
+ new FrameworkPropertyMetadata(default(bool), FrameworkPropertyMetadataOptions.BindsTwoWayByDefault));
+
+ public BitmapImage Image
+ {
+ get => (BitmapImage)GetValue(ImageProperty);
+ set => SetValue(ImageProperty, value);
+ }
+ public static readonly DependencyProperty ImageProperty = DependencyProperty.Register(nameof(Image), typeof(BitmapImage), typeof(ImageRadioButtonView),
+ new FrameworkPropertyMetadata(default(BitmapImage)));
+
+ public ICommand Command
+ {
+ get => (ICommand)GetValue(CommandProperty);
+ set => SetValue(CommandProperty, value);
+ }
+ public static readonly DependencyProperty CommandProperty = DependencyProperty.Register(nameof(Command), typeof(ICommand), typeof(ImageRadioButtonView),
+ new FrameworkPropertyMetadata(default(ICommand)));
+
+ public ImageRadioButtonView()
+ {
+ InitializeComponent();
+ }
+
+ private void Button_Click(object sender, RoutedEventArgs e)
+ {
+ this.IsChecked = true;
+ }
+ }
+}
diff --git a/Wabbajack/Wabbajack.csproj b/Wabbajack/Wabbajack.csproj
index 8fd62a5d..d9b44eac 100644
--- a/Wabbajack/Wabbajack.csproj
+++ b/Wabbajack/Wabbajack.csproj
@@ -161,11 +161,15 @@
MSBuild:Compile
Designer
-
+
+
BorderFadeDownView.xaml
+
+ RadioButtonView.xaml
+
BeginButton.xaml
@@ -216,7 +220,11 @@
TextViewer.xaml
-
+
+ Designer
+ MSBuild:Compile
+
+
Designer
MSBuild:Compile
@@ -450,5 +458,9 @@
+
+
+
+
\ No newline at end of file