Skip to content

Commit 4bb6243

Browse files
committed
Merge pull request #1740 from Hosch250/SettingsTweaks
Make code inspection settings update without reordering
2 parents 2a08d2f + 5cdd196 commit 4bb6243

File tree

2 files changed

+8
-13
lines changed

2 files changed

+8
-13
lines changed

RetailCoder.VBE/UI/Settings/InspectionSettings.xaml.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
11
using System;
2-
using System.Collections.Generic;
32
using System.Linq;
43
using System.Windows.Controls;
54
using Rubberduck.Inspections;
6-
using Rubberduck.Settings;
7-
using Rubberduck.UI.Controls;
8-
using Rubberduck.UI.Settings.Converters;
95

106
namespace Rubberduck.UI.Settings
117
{
@@ -35,9 +31,7 @@ private void GroupingGrid_CellEditEnding(object sender, DataGridCellEditEndingEv
3531
var severities = Enum.GetValues(typeof(CodeInspectionSeverity)).Cast<CodeInspectionSeverity>();
3632
var selectedSeverity = severities.Single(s => RubberduckUI.ResourceManager.GetString("CodeInspectionSeverity_" + s) == selectedSeverityName);
3733

38-
var changedSetting = (CodeInspectionSetting) e.Row.Item;
39-
40-
((InspectionSettingsViewModel) ViewModel).UpdateCollection(changedSetting.Name, selectedSeverity);
34+
((InspectionSettingsViewModel) ViewModel).UpdateCollection(selectedSeverity);
4135
}
4236
}
4337
}

RetailCoder.VBE/UI/Settings/InspectionSettingsViewModel.cs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,16 @@ public InspectionSettingsViewModel(Configuration config)
1919
}
2020
}
2121

22-
public void UpdateCollection(string name, CodeInspectionSeverity severity)
22+
public void UpdateCollection(CodeInspectionSeverity severity)
2323
{
24+
// commit UI edit
25+
var item = (CodeInspectionSetting)InspectionSettings.CurrentEditItem;
2426
InspectionSettings.CommitEdit();
25-
var changedItem = _inspectionSettings.SourceCollection.Cast<CodeInspectionSetting>().First(f => f.Name == name);
2627

27-
InspectionSettings.Remove(changedItem);
28-
29-
changedItem.Severity = severity;
30-
InspectionSettings.AddNewItem(changedItem);
28+
// update the collection
29+
InspectionSettings.EditItem(item);
30+
item.Severity = severity;
31+
InspectionSettings.CommitEdit();
3132
}
3233

3334
private ListCollectionView _inspectionSettings;

0 commit comments

Comments
 (0)