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