diff --git a/src/MaaWpfGui/Configuration/GUI.cs b/src/MaaWpfGui/Configuration/GUI.cs index 70a8e3f856..f2a893ad83 100644 --- a/src/MaaWpfGui/Configuration/GUI.cs +++ b/src/MaaWpfGui/Configuration/GUI.cs @@ -25,6 +25,8 @@ namespace MaaWpfGui.Configuration public bool UseNotify { get; set; } = true; + public bool InvertNullFunction { get; set; } = false; + public string Localization { get; set; } = LocalizationHelper.DefaultLanguage; public bool MinimizeToTray { get; set; } = false; diff --git a/src/MaaWpfGui/ViewModels/UI/TaskQueueViewModel.cs b/src/MaaWpfGui/ViewModels/UI/TaskQueueViewModel.cs index 640d9de7d1..a5fea9fa47 100644 --- a/src/MaaWpfGui/ViewModels/UI/TaskQueueViewModel.cs +++ b/src/MaaWpfGui/ViewModels/UI/TaskQueueViewModel.cs @@ -1103,7 +1103,7 @@ namespace MaaWpfGui.ViewModels.UI { if (item.IsCheckedWithNull == null) { - item.IsChecked = false; + item.IsChecked = GuiSettingsUserControlModel.Instance.InvertNullFunction; } } } @@ -1292,7 +1292,7 @@ namespace MaaWpfGui.ViewModels.UI int count = 0; foreach (var item in TaskItemViewModels) { - if (item.IsChecked == false) + if (item.IsChecked == false || (GuiSettingsUserControlModel.Instance.InvertNullFunction && item.IsCheckedWithNull == null)) { continue; } @@ -1354,6 +1354,10 @@ namespace MaaWpfGui.ViewModels.UI _runningState.SetIdle(true); Instances.AsstProxy.AsstStop(); SetStopped(); + if (GuiSettingsUserControlModel.Instance.InvertNullFunction) + { + ResetTaskSelection(); + } return; } @@ -1845,8 +1849,7 @@ namespace MaaWpfGui.ViewModels.UI { var toolToCraft = ReclamationTask.ReclamationToolToCraft.Split(';', ';').Select(s => s.Trim()); - - _ = int.TryParse(ReclamationTask.ReclamationMode, out var mode); + _ = int.TryParse(SettingsViewModel.ReclamationTask.ReclamationMode, out var mode); return Instances.AsstProxy.AsstAppendReclamation( toolToCraft.ToArray(), diff --git a/src/MaaWpfGui/ViewModels/UserControl/Settings/GuiSettingsUserControlModel.cs b/src/MaaWpfGui/ViewModels/UserControl/Settings/GuiSettingsUserControlModel.cs index f4ffbd30ca..6621d1c4d6 100644 --- a/src/MaaWpfGui/ViewModels/UserControl/Settings/GuiSettingsUserControlModel.cs +++ b/src/MaaWpfGui/ViewModels/UserControl/Settings/GuiSettingsUserControlModel.cs @@ -157,6 +157,15 @@ public class GuiSettingsUserControlModel : PropertyChangedBase } } + public bool InvertNullFunction + { + get => ConfigFactory.Root.GUI.InvertNullFunction; + set + { + ConfigFactory.Root.GUI.InvertNullFunction = value; + } + } + public List LogItemDateFormatStringList { get; } = [ "HH:mm:ss", diff --git a/src/MaaWpfGui/Views/UserControl/Settings/GuiSettingsUserControl.xaml b/src/MaaWpfGui/Views/UserControl/Settings/GuiSettingsUserControl.xaml index a935128c03..11c311411a 100644 --- a/src/MaaWpfGui/Views/UserControl/Settings/GuiSettingsUserControl.xaml +++ b/src/MaaWpfGui/Views/UserControl/Settings/GuiSettingsUserControl.xaml @@ -60,6 +60,10 @@ Margin="10" Content="{DynamicResource WindowTitleScrollable}" IsChecked="{Binding WindowTitleScrollable}" /> +