Skip to content

Commit 4ae1a71

Browse files
committed
Introduced generic type for default settings.
1 parent 5a1a74b commit 4ae1a71

File tree

6 files changed

+20
-38
lines changed

6 files changed

+20
-38
lines changed

RetailCoder.VBE/Rubberduck.csproj

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -373,8 +373,7 @@
373373
<Compile Include="RubberduckGuid.cs" />
374374
<Compile Include="RubberduckProgId.cs" />
375375
<Compile Include="Settings\CodeInspectionConfigProvider.cs" />
376-
<Compile Include="Settings\DefaultHotkeySettings.cs" />
377-
<Compile Include="Settings\DefaultToDoMarkers.cs" />
376+
<Compile Include="Settings\DefaultSettings.cs" />
378377
<Compile Include="Settings\GeneralConfigProvider.cs" />
379378
<Compile Include="Settings\HotkeySettings.cs" />
380379
<Compile Include="Settings\HotkeyConfigProvider.cs" />

RetailCoder.VBE/Settings/DefaultHotkeySettings.cs

Lines changed: 0 additions & 17 deletions
This file was deleted.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
using System.Collections.Generic;
2+
using System.Linq;
3+
4+
namespace Rubberduck.Settings
5+
{
6+
public class DefaultSettings<T>
7+
{
8+
public IEnumerable<T> Defaults { get; }
9+
10+
public DefaultSettings()
11+
{
12+
var properties = typeof(Properties.Settings).GetProperties().Where(prop => prop.PropertyType == typeof(T));
13+
14+
Defaults = properties.Select(prop => prop.GetValue(Properties.Settings.Default)).Cast<T>();
15+
}
16+
}
17+
}

RetailCoder.VBE/Settings/DefaultToDoMarkers.cs

Lines changed: 0 additions & 17 deletions
This file was deleted.

RetailCoder.VBE/Settings/HotkeyConfigProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public class HotkeyConfigProvider : IConfigProvider<HotkeySettings>
1111
public HotkeyConfigProvider(IPersistanceService<HotkeySettings> persister)
1212
{
1313
_persister = persister;
14-
_defaultHotkeys = new DefaultHotkeySettings().Hotkeys;
14+
_defaultHotkeys = new DefaultSettings<HotkeySetting>().Defaults;
1515
}
1616

1717
public HotkeySettings Create()

RetailCoder.VBE/Settings/ToDoListConfigProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public class ToDoListConfigProvider : IConfigProvider<ToDoListSettings>
1111
public ToDoListConfigProvider(IPersistanceService<ToDoListSettings> persister)
1212
{
1313
_persister = persister;
14-
_defaultMarkers = new DefaultToDoMarkers().Markers;
14+
_defaultMarkers = new DefaultSettings<ToDoMarker>().Defaults;
1515
}
1616

1717
public ToDoListSettings Create()

0 commit comments

Comments
 (0)