diff --git a/ZuneModCore/Mods/FeaturesOverrideMod.cs b/ZuneModCore/Mods/FeaturesOverrideMod.cs index 53925ed..5418349 100644 --- a/ZuneModCore/Mods/FeaturesOverrideMod.cs +++ b/ZuneModCore/Mods/FeaturesOverrideMod.cs @@ -63,9 +63,9 @@ namespace ZuneModCore.Mods public override Task Apply() { - return Task.FromResult(true); + // TODO: Use user choices from AbstractUI foreach (AbstractUIElement uiElem in OptionsUI.Items) - if (uiElem is AbstractBooleanUIElement boolElem && boolElem.State) + if (uiElem is AbstractBooleanUIElement boolElem)// && boolElem.State) SetFeatureOverride(boolElem.Id, true); return Task.FromResult(true); diff --git a/ZuneModCore/Mods/WebservicesMod.cs b/ZuneModCore/Mods/WebservicesMod.cs index 063f48d..ba3314b 100644 --- a/ZuneModCore/Mods/WebservicesMod.cs +++ b/ZuneModCore/Mods/WebservicesMod.cs @@ -31,12 +31,12 @@ namespace ZuneModCore.Mods public override IReadOnlyList? DependentMods => null; - public override async Task Apply() + public override Task Apply() { // Open ZuneServices.dll FileInfo zsDllInfo = new(Path.Combine(ZuneInstallDir, "ZuneService.dll")); if (!zsDllInfo.Exists) - return false; + return Task.FromResult(true); using FileStream zsDll = zsDllInfo.Open(FileMode.Open); using BinaryWriter zsDllWriter = new(zsDll); using BinaryReader zsDllReader = new(zsDll); @@ -45,7 +45,7 @@ namespace ZuneModCore.Mods zsDllReader.BaseStream.Position = 0x12C824; var versionBytes = zsDllReader.ReadBytes(ZUNE_4_8_VERSION_BYTES.Length * 2); if (versionBytes[0] != '4' || versionBytes[2] != '.' || versionBytes[4] != '8') - return false; + return Task.FromResult(true); // Patch ZuneServices.dll to use zunes.tk instead of zune.net zsDllReader.BaseStream.Position = ZUNESERVICES_ENDPOINTS_BLOCK_OFFSET; @@ -53,7 +53,7 @@ namespace ZuneModCore.Mods endpointBlock = endpointBlock.Replace("zune.net", "zunes.tk"); byte[] endpointBytes = System.Text.Encoding.Unicode.GetBytes(endpointBlock); if (endpointBytes.Length != ZUNESERVICES_ENDPOINTS_BLOCK_LENGTH) - return false; + return Task.FromResult(false); zsDllWriter.Seek(ZUNESERVICES_ENDPOINTS_BLOCK_OFFSET, SeekOrigin.Begin); zsDllWriter.Write(endpointBytes); @@ -69,7 +69,7 @@ namespace ZuneModCore.Mods SetFeatureOverride("Social", true); SetFeatureOverride("Videos", true); - return true; + return Task.FromResult(true); } public override Task Reset() diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractBooleanUIElementPresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractBooleanUIElementPresenter.cs deleted file mode 100644 index cd24bc5..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractBooleanUIElementPresenter.cs +++ /dev/null @@ -1,17 +0,0 @@ -using OwlCore.AbstractUI.Models; -using System.Windows; -using System.Windows.Controls; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractBooleanUIElementPresenter : Control - { - static AbstractBooleanUIElementPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractBooleanUIElementPresenter), new FrameworkPropertyMetadata(typeof(AbstractBooleanUIElementPresenter))); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractButtonPresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractButtonPresenter.cs deleted file mode 100644 index f85f23a..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractButtonPresenter.cs +++ /dev/null @@ -1,20 +0,0 @@ -using OwlCore.AbstractUI.Models; -using System.Windows; -using System.Windows.Controls; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractButtonPresenter : Control - { - /// - /// Creates a new instance of . - /// - public AbstractButtonPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractButtonPresenter), new FrameworkPropertyMetadata(typeof(AbstractButtonPresenter))); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractDataListPresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractDataListPresenter.cs deleted file mode 100644 index e45ed4d..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractDataListPresenter.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractDataListPresenter : Control - { - static AbstractDataListPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractDataListPresenter), new FrameworkPropertyMetadata(typeof(AbstractDataListPresenter))); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractMultiChoicePresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractMultiChoicePresenter.cs deleted file mode 100644 index cb3b4d8..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractMultiChoicePresenter.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractMultiChoicePresenter : Control - { - static AbstractMultiChoicePresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractMultiChoicePresenter), new FrameworkPropertyMetadata(typeof(AbstractMultiChoicePresenter))); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractMutableDataListPresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractMutableDataListPresenter.cs deleted file mode 100644 index d8a308c..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractMutableDataListPresenter.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractMutableDataListPresenter : Control - { - static AbstractMutableDataListPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractMutableDataListPresenter), new FrameworkPropertyMetadata(typeof(AbstractMutableDataListPresenter))); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractProgessUIElementPresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractProgessUIElementPresenter.cs deleted file mode 100644 index 09d97f3..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractProgessUIElementPresenter.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractProgessUIElementPresenter : Control - { - static AbstractProgessUIElementPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractProgessUIElementPresenter), new FrameworkPropertyMetadata(typeof(AbstractProgessUIElementPresenter))); - } - } -} diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractRichTextBlockPresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractRichTextBlockPresenter.cs deleted file mode 100644 index 13f7d18..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractRichTextBlockPresenter.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractRichTextBlockPresenter : Control - { - static AbstractRichTextBlockPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractRichTextBlockPresenter), new FrameworkPropertyMetadata(typeof(AbstractRichTextBlockPresenter))); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractTextBoxPresenter.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractTextBoxPresenter.cs deleted file mode 100644 index adf0d62..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractTextBoxPresenter.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// A control that displays an . - /// - public sealed partial class AbstractTextBoxPresenter : Control - { - static AbstractTextBoxPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractTextBoxPresenter), new FrameworkPropertyMetadata(typeof(AbstractTextBoxPresenter))); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractUIGroupItemTemplateSelector.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractUIGroupItemTemplateSelector.cs deleted file mode 100644 index f24f985..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractUIGroupItemTemplateSelector.cs +++ /dev/null @@ -1,109 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.ViewModels; -using Microsoft.Toolkit.Diagnostics; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// The template selector used to display Abstract UI elements. Use this to define your own custom styles for each control. You may specify the existing, default styles for those you don't want to override. - /// - public class AbstractUIGroupItemTemplateSelector : DataTemplateSelector - { - /// - /// Creates a new instance of . - /// - public AbstractUIGroupItemTemplateSelector() - { - object textBoxTemplate = new Themes.AbstractTextBoxStyle()["DefaultAbstractTextBoxTemplate"]; - if (textBoxTemplate == null) - ThrowHelper.ThrowArgumentNullException(nameof(textBoxTemplate)); - - object dataListTemplate = new Themes.AbstractDataListStyle()["DefaultAbstractDataListTemplate"]; - if (dataListTemplate == null) - ThrowHelper.ThrowArgumentNullException(nameof(dataListTemplate)); - - object mutableDataListTemplate = new Themes.AbstractMutableDataListStyle()["DefaultAbstractMutableDataListTemplate"]; - if (mutableDataListTemplate == null) - ThrowHelper.ThrowArgumentNullException(nameof(mutableDataListTemplate)); - - object buttonTemplate = new Themes.AbstractButtonStyle()["DefaultAbstractButtonTemplate"]; - if (buttonTemplate == null) - ThrowHelper.ThrowArgumentNullException(nameof(buttonTemplate)); - - object multiChoiceTemplate = new Themes.AbstractMultiChoiceUIElementStyle()["DefaultAbstractMultipleChoiceTemplate"]; - if (multiChoiceTemplate == null) - ThrowHelper.ThrowArgumentNullException(nameof(multiChoiceTemplate)); - - object booleanTemplate = new Themes.AbstractBooleanUIElementStyle()["DefaultAbstractBooleanUIElementTemplate"]; - if (booleanTemplate == null) - ThrowHelper.ThrowArgumentNullException(nameof(booleanTemplate)); - - object progressTemplate = new Themes.AbstractProgressUIElementStyle()["DefaultAbstractProgressUIElementTemplate"]; - if (progressTemplate == null) - ThrowHelper.ThrowArgumentNullException(nameof(progressTemplate)); - - TextBoxTemplate = (DataTemplate)textBoxTemplate; - DataListTemplate = (DataTemplate)dataListTemplate; - ButtonTemplate = (DataTemplate)buttonTemplate; - MutableDataListTemplate = (DataTemplate)mutableDataListTemplate; - MultiChoiceTemplate = (DataTemplate)multiChoiceTemplate; - BooleanTemplate = (DataTemplate)booleanTemplate; - ProgressTemplate = (DataTemplate)progressTemplate; - } - - /// - /// The data template used to display an . - /// - public DataTemplate TextBoxTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate DataListTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate MutableDataListTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate ButtonTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate BooleanTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate ProgressTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate MultiChoiceTemplate { get; set; } - - /// - public override DataTemplate SelectTemplate(object item, DependencyObject container) - { - System.Diagnostics.Debug.WriteLine($"{item.GetType()} template selecting for {nameof(AbstractUIGroupItemTemplateSelector)}"); - - return item switch - { - AbstractTextBoxViewModel _ => TextBoxTemplate, - AbstractDataListViewModel _ => DataListTemplate, - AbstractButtonViewModel _ => ButtonTemplate, - AbstractMutableDataListViewModel _ => MutableDataListTemplate, - AbstractMultiChoiceUIElementViewModel _ => MultiChoiceTemplate, - AbstractBooleanViewModel _ => BooleanTemplate, - AbstractProgressUIElement _ => ProgressTemplate, - _ => base.SelectTemplate(item, container) - }; - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Controls/AbstractUIGroupPresenter.xaml.cs b/ZuneModdingHelper/AbstractUI/Controls/AbstractUIGroupPresenter.xaml.cs deleted file mode 100644 index d81b34a..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/AbstractUIGroupPresenter.xaml.cs +++ /dev/null @@ -1,117 +0,0 @@ -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.ViewModels; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// Displays a group of abstract UI elements. - /// - public sealed partial class AbstractUIGroupPresenter : Control - { - private bool _dataContextBeingSet; - - /// - /// Backing property for . - /// - public static readonly DependencyProperty ViewModelProperty = - DependencyProperty.Register(nameof(ViewModel), typeof(AbstractUIElementGroupViewModel), typeof(AbstractUIGroupPresenter), new PropertyMetadata(null, (d, e) => ((AbstractUIGroupPresenter)d).OnViewModelChanged())); - - /// - /// Backing property for . - /// - public static readonly DependencyProperty TemplateSelectorProperty = - DependencyProperty.Register(nameof(TemplateSelector), typeof(DataTemplateSelector), typeof(AbstractUIGroupPresenter), new PropertyMetadata(null)); - - /// - /// The ViewModel for this UserControl. - /// - public AbstractUIElementGroupViewModel? ViewModel - { - get => (AbstractUIElementGroupViewModel)GetValue(ViewModelProperty); - set => SetValue(ViewModelProperty, value); - } - - /// - /// The template selector used to display Abstract UI elements. Use this to define your own custom styles for each control. You may specify the existing, default styles for those you don't want to override. - /// - public DataTemplateSelector? TemplateSelector - { - get => (DataTemplateSelector)GetValue(TemplateSelectorProperty); - set => SetValue(TemplateSelectorProperty, value); - } - - /// - /// Creates a new instance of . - /// - public AbstractUIGroupPresenter() - { - AttachEvents(); - } - - static AbstractUIGroupPresenter() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(AbstractUIGroupPresenter), new FrameworkPropertyMetadata(typeof(AbstractUIGroupPresenter))); - } - - private void AttachEvents() - { - Loaded += OnLoaded; - - DataContextChanged += OnDataContextChanged; - } - - private void DetachEvents() - { - DataContextChanged -= OnDataContextChanged; - } - - private void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs e) - { - if (_dataContextBeingSet) - return; - - _dataContextBeingSet = true; - - if (DataContext is AbstractUIElementGroup elementGroup) - ViewModel = new AbstractUIElementGroupViewModel(elementGroup); - - if (DataContext is AbstractUIElementGroupViewModel elementGroupViewModel) - ViewModel = elementGroupViewModel; - - _dataContextBeingSet = false; - } - - private void OnLoaded(object sender, RoutedEventArgs e) - { - Loaded -= OnLoaded; - Unloaded += OnUnloaded; - } - - private void OnUnloaded(object sender, RoutedEventArgs e) - { - Unloaded -= OnUnloaded; - - DetachEvents(); - } - - /// - /// Raised when the changes. - /// - public void OnViewModelChanged() - { - if (_dataContextBeingSet) - return; - - _dataContextBeingSet = true; - DataContext = ViewModel; - _dataContextBeingSet = false; - - if (GetTemplateChild("GroupItemsControl") is ItemsControl ic) - { - ic.ItemsSource = ViewModel.Items; - } - } - } -} diff --git a/ZuneModdingHelper/AbstractUI/Controls/CustomControl1.cs b/ZuneModdingHelper/AbstractUI/Controls/CustomControl1.cs deleted file mode 100644 index 519f2da..0000000 --- a/ZuneModdingHelper/AbstractUI/Controls/CustomControl1.cs +++ /dev/null @@ -1,54 +0,0 @@ -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 ZuneModdingHelper.AbstractUI.Controls -{ - /// - /// Follow steps 1a or 1b and then 2 to use this custom control in a XAML file. - /// - /// Step 1a) Using this custom control in a XAML file that exists in the current project. - /// Add this XmlNamespace attribute to the root element of the markup file where it is - /// to be used: - /// - /// xmlns:MyNamespace="clr-namespace:ZuneModdingHelper.AbstractUI.Controls" - /// - /// - /// Step 1b) Using this custom control in a XAML file that exists in a different project. - /// Add this XmlNamespace attribute to the root element of the markup file where it is - /// to be used: - /// - /// xmlns:MyNamespace="clr-namespace:ZuneModdingHelper.AbstractUI.Controls;assembly=ZuneModdingHelper.AbstractUI.Controls" - /// - /// You will also need to add a project reference from the project where the XAML file lives - /// to this project and Rebuild to avoid compilation errors: - /// - /// Right click on the target project in the Solution Explorer and - /// "Add Reference"->"Projects"->[Browse to and select this project] - /// - /// - /// Step 2) - /// Go ahead and use your control in the XAML file. - /// - /// - /// - /// - public class CustomControl1 : Control - { - static CustomControl1() - { - DefaultStyleKeyProperty.OverrideMetadata(typeof(CustomControl1), new FrameworkPropertyMetadata(typeof(CustomControl1))); - } - } -} diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractBooleanUIElementStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractBooleanUIElementStyle.xaml deleted file mode 100644 index aa93dfc..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractBooleanUIElementStyle.xaml +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractBooleanUIElementStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractBooleanUIElementStyle.xaml.cs deleted file mode 100644 index 186e470..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractBooleanUIElementStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractBooleanUIElementStyle : ResourceDictionary - { - public AbstractBooleanUIElementStyle() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonStyle.xaml deleted file mode 100644 index 8c53466..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonStyle.xaml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonStyle.xaml.cs deleted file mode 100644 index 7131405..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractButtonStyle : ResourceDictionary - { - public AbstractButtonStyle() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonTemplateSelector.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonTemplateSelector.cs deleted file mode 100644 index b18194f..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractButtonTemplateSelector.cs +++ /dev/null @@ -1,68 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.Models; -using OwlCore.AbstractUI.ViewModels; -using Microsoft.Toolkit.Diagnostics; -using ZuneModdingHelper.AbstractUI.Controls; -using System.Windows.Data; -using System.Globalization; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - /// - /// Selects the template that is used for an based on the . - /// - public class AbstractButtonTemplateSelector : IValueConverter - { - /// - /// The data template used to a display an with a generic style. - /// - public Style? GenericStyle { get; set; } - - /// - /// The data template used to a display an with a confirmation style. - /// - public Style? ConfirmStyle { get; set; } - - /// - /// The data template used to a display an with a deletion style. - /// - public Style? DeleteStyle { get; set; } - - /// - public object Convert(object value, Type targetType, object parameter, string language) - { - var type = AbstractButtonType.Generic; - - if (value is AbstractButtonType vType) - type = vType; - if (value is AbstractButtonViewModel buttonViewModel) - type = buttonViewModel.Type; - else if (value is AbstractButton button) - type = button.Type; - - return type switch - { - AbstractButtonType.Generic => GenericStyle ?? ThrowHelper.ThrowArgumentNullException - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractDataListStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractDataListStyle.xaml.cs deleted file mode 100644 index b9ec1b2..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractDataListStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractDataListStyle : ResourceDictionary - { - public AbstractDataListStyle() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractDataListTypeTemplateSelector.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractDataListTypeTemplateSelector.cs deleted file mode 100644 index 4fb66d0..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractDataListTypeTemplateSelector.cs +++ /dev/null @@ -1,53 +0,0 @@ -using System; -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.ViewModels; -using Microsoft.Toolkit.Diagnostics; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - /// - /// Selects the template that is used for an based on the . - /// - public class AbstractDataListTypeTemplateSelector : DataTemplateSelector - { - /// - /// The data template used to display an . - /// - public DataTemplate? GridTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate? ListTemplate { get; set; } - - - - /// - public override DataTemplate SelectTemplate(object item, DependencyObject container) - { - if (item is AbstractMutableDataListViewModel mutableViewModel) - { - return mutableViewModel.PreferredDisplayMode switch - { - AbstractDataListPreferredDisplayMode.Grid => GridTemplate ?? ThrowHelper.ThrowArgumentNullException(), - AbstractDataListPreferredDisplayMode.List => ListTemplate ?? ThrowHelper.ThrowArgumentNullException(), - _ => throw new NotImplementedException(), - }; - } - - if (item is AbstractDataListViewModel viewModel) - { - return viewModel.PreferredDisplayMode switch - { - AbstractDataListPreferredDisplayMode.Grid => GridTemplate ?? ThrowHelper.ThrowArgumentNullException(), - AbstractDataListPreferredDisplayMode.List => ListTemplate ?? ThrowHelper.ThrowArgumentNullException(), - _ => throw new NotImplementedException(), - }; - } - - return base.SelectTemplate(item, container); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceTypeTemplateSelector.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceTypeTemplateSelector.cs deleted file mode 100644 index 2623949..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceTypeTemplateSelector.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using System.Windows; -using System.Windows.Controls; -using OwlCore.AbstractUI.ViewModels; -using Microsoft.Toolkit.Diagnostics; -using OwlCore.AbstractUI.Models; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - /// - /// Selects the template that is used for an based on the . - /// - public class AbstractMultiChoiceTypeTemplateSelector : DataTemplateSelector - { - /// - /// The data template used to display an . - /// - public DataTemplate? ComboBoxTemplate { get; set; } - - /// - /// The data template used to display an . - /// - public DataTemplate? RadioButtonTemplate { get; set; } - - /// - public override DataTemplate SelectTemplate(object item, DependencyObject container) - { - if (item is AbstractMultiChoiceUIElementViewModel viewModel) - { - return viewModel.PreferredDisplayMode switch - { - AbstractMultiChoicePreferredDisplayMode.Dropdown => ComboBoxTemplate ?? ThrowHelper.ThrowArgumentNullException(), - AbstractMultiChoicePreferredDisplayMode.RadioButtons => RadioButtonTemplate ?? ThrowHelper.ThrowArgumentNullException(), - _ => throw new NotImplementedException(), - }; - } - - return base.SelectTemplate(item, container); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceUIElementStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceUIElementStyle.xaml deleted file mode 100644 index 7945454..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceUIElementStyle.xaml +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceUIElementStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceUIElementStyle.xaml.cs deleted file mode 100644 index 4e5cc35..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractMultiChoiceUIElementStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractMultiChoiceUIElementStyle : ResourceDictionary - { - public AbstractMultiChoiceUIElementStyle() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractMutableDataListStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractMutableDataListStyle.xaml deleted file mode 100644 index 2cb0822..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractMutableDataListStyle.xaml +++ /dev/null @@ -1,192 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractMutableDataListStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractMutableDataListStyle.xaml.cs deleted file mode 100644 index 7e0678f..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractMutableDataListStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractMutableDataListStyle : ResourceDictionary - { - public AbstractMutableDataListStyle() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractProgressUIElementStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractProgressUIElementStyle.xaml deleted file mode 100644 index b13daa1..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractProgressUIElementStyle.xaml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractProgressUIElementStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractProgressUIElementStyle.xaml.cs deleted file mode 100644 index ee96451..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractProgressUIElementStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractProgressUIElementStyle : ResourceDictionary - { - public AbstractProgressUIElementStyle() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractRichTextBlockStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractRichTextBlockStyle.xaml deleted file mode 100644 index 3def781..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractRichTextBlockStyle.xaml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractRichTextBlockStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractRichTextBlockStyle.xaml.cs deleted file mode 100644 index 07df333..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractRichTextBlockStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractRichTextBlockStyle : ResourceDictionary - { - public AbstractRichTextBlockStyle() - { - InitializeComponent(); - } - } -} diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractTextBoxStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractTextBoxStyle.xaml deleted file mode 100644 index 80d3ba0..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractTextBoxStyle.xaml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractTextBoxStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractTextBoxStyle.xaml.cs deleted file mode 100644 index ddf4b15..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractTextBoxStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractTextBoxStyle : ResourceDictionary - { - public AbstractTextBoxStyle() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractUIGroupPresenterStyle.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractUIGroupPresenterStyle.xaml deleted file mode 100644 index 76c7021..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractUIGroupPresenterStyle.xaml +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractUIGroupPresenterStyle.xaml.cs b/ZuneModdingHelper/AbstractUI/Themes/AbstractUIGroupPresenterStyle.xaml.cs deleted file mode 100644 index b3945b8..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractUIGroupPresenterStyle.xaml.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Windows; - -namespace ZuneModdingHelper.AbstractUI.Themes -{ - public sealed partial class AbstractUIGroupPresenterStyle : ResourceDictionary - { - public AbstractUIGroupPresenterStyle() - { - InitializeComponent(); - } - } -} diff --git a/ZuneModdingHelper/AbstractUI/Themes/AbstractUIResources.xaml b/ZuneModdingHelper/AbstractUI/Themes/AbstractUIResources.xaml deleted file mode 100644 index 9c2dcc0..0000000 --- a/ZuneModdingHelper/AbstractUI/Themes/AbstractUIResources.xaml +++ /dev/null @@ -1,12 +0,0 @@ - - - 24 - - 16 - Light - 0.5 - - \ No newline at end of file diff --git a/ZuneModdingHelper/AbstractUIGroupDialog.xaml b/ZuneModdingHelper/AbstractUIGroupDialog.xaml index c40bee8..8eac160 100644 --- a/ZuneModdingHelper/AbstractUIGroupDialog.xaml +++ b/ZuneModdingHelper/AbstractUIGroupDialog.xaml @@ -4,25 +4,15 @@ xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:ZuneModdingHelper" - xmlns:absui="clr-namespace:ZuneModdingHelper.AbstractUI.Controls" mc:Ignorable="d" Title="Options" Height="450" Width="800" WindowStyle="ToolWindow"> - - - - - - - - + -