Skip to content

Commit 3a929ac

Browse files
committed
Merge branch 'next' of https://github.com/rubberduck-vba/rubberduck into Iss388_Obsolete_DefType_statement
2 parents 3cac2cd + 3ce0920 commit 3a929ac

File tree

62 files changed

+664
-2540
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+664
-2540
lines changed

RetailCoder.VBE/Common/DeclarationExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -573,7 +573,7 @@ public static Declaration FindInterface(this IEnumerable<Declaration> declaratio
573573
{
574574
foreach (var reference in declaration.References)
575575
{
576-
var implementsStmt = ParserRuleContextHelper.GetParent<VBAParser.ImplementsStmtContext>(reference.Context);
576+
var implementsStmt = reference.Context.GetAncestor<VBAParser.ImplementsStmtContext>();
577577

578578
if (implementsStmt == null) { continue; }
579579

RetailCoder.VBE/Properties/Settings.Designer.cs

Lines changed: 33 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

RetailCoder.VBE/Properties/Settings.settings

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,5 +145,17 @@
145145
&lt;CommandTypeName&gt;TestExplorerCommand&lt;/CommandTypeName&gt;
146146
&lt;/HotkeySetting&gt;</Value>
147147
</Setting>
148+
<Setting Name="ToDoMarker_ToDo" Type="Rubberduck.Settings.ToDoMarker" Scope="Application">
149+
<Value Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
150+
&lt;ToDoMarker xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Text="TODO" /&gt;</Value>
151+
</Setting>
152+
<Setting Name="ToDoMarker_Note" Type="Rubberduck.Settings.ToDoMarker" Scope="Application">
153+
<Value Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
154+
&lt;ToDoMarker xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Text="NOTE" /&gt;</Value>
155+
</Setting>
156+
<Setting Name="ToDoMarker_Bug" Type="Rubberduck.Settings.ToDoMarker" Scope="Application">
157+
<Value Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
158+
&lt;ToDoMarker xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Text="BUG" /&gt;</Value>
159+
</Setting>
148160
</Settings>
149161
</SettingsFile>

RetailCoder.VBE/Refactorings/RemoveParameters/RemoveParametersRefactoring.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
using System.Diagnostics;
44
using System.Linq;
55
using Rubberduck.Common;
6+
using Rubberduck.Parsing;
67
using Rubberduck.Parsing.Grammar;
78
using Rubberduck.Parsing.Rewriter;
89
using Rubberduck.Parsing.Symbols;
910
using Rubberduck.Parsing.VBA;
1011
using Rubberduck.UI;
1112
using Rubberduck.VBEditor;
1213
using Rubberduck.VBEditor.SafeComWrappers.Abstract;
14+
using Antlr4.Runtime;
1315

1416
namespace Rubberduck.Refactorings.RemoveParameters
1517
{
@@ -121,7 +123,7 @@ private void AdjustReferences(IEnumerable<IdentifierReference> references, Decla
121123
foreach (var reference in references.Where(item => item.Context != method.Context))
122124
{
123125
VBAParser.ArgumentListContext argumentList = null;
124-
var callStmt = ParserRuleContextHelper.GetParent<VBAParser.CallStmtContext>(reference.Context);
126+
var callStmt = reference.Context.GetAncestor<VBAParser.CallStmtContext>();
125127
if (callStmt != null)
126128
{
127129
argumentList = CallStatement.GetArgumentList(callStmt);
@@ -130,10 +132,10 @@ private void AdjustReferences(IEnumerable<IdentifierReference> references, Decla
130132
if (argumentList == null)
131133
{
132134
var indexExpression =
133-
ParserRuleContextHelper.GetParent<VBAParser.IndexExprContext>(reference.Context);
135+
reference.Context.GetAncestor<VBAParser.IndexExprContext>();
134136
if (indexExpression != null)
135137
{
136-
argumentList = ParserRuleContextHelper.GetChild<VBAParser.ArgumentListContext>(indexExpression);
138+
argumentList = indexExpression.GetChild<VBAParser.ArgumentListContext>();
137139
}
138140
}
139141

RetailCoder.VBE/Refactorings/Rename/RenameRefactoring.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System.Linq;
22
using System.Windows.Forms;
3+
using Rubberduck.Parsing;
34
using Rubberduck.Parsing.Symbols;
45
using Rubberduck.Parsing.VBA;
56
using Rubberduck.UI;
@@ -422,7 +423,7 @@ private void RenameModule()
422423
{
423424
foreach (var reference in _model.Target.References)
424425
{
425-
var ctxt = ParserRuleContextHelper.GetParent<VBAParser.ImplementsStmtContext>(reference.Context);
426+
var ctxt = reference.Context.GetAncestor<VBAParser.ImplementsStmtContext>();
426427
if (ctxt != null)
427428
{
428429
RenameDefinedFormatMembers(_state.DeclarationFinder.FindInterfaceMembersForImplementsContext(ctxt), _appendUnderscoreFormat);

RetailCoder.VBE/Refactorings/ReorderParameters/ReorderParametersRefactoring.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using Rubberduck.Common;
2+
using Rubberduck.Parsing;
23
using Rubberduck.Parsing.Grammar;
34
using Rubberduck.Parsing.Symbols;
45
using Rubberduck.UI;
@@ -123,18 +124,18 @@ private void AdjustReferences(IEnumerable<IdentifierReference> references)
123124
{
124125
var module = reference.QualifiedModuleName.Component.CodeModule;
125126
VBAParser.ArgumentListContext argumentList = null;
126-
var callStmt = ParserRuleContextHelper.GetParent<VBAParser.CallStmtContext>(reference.Context);
127+
var callStmt = reference.Context.GetAncestor<VBAParser.CallStmtContext>();
127128
if (callStmt != null)
128129
{
129130
argumentList = CallStatement.GetArgumentList(callStmt);
130131
}
131132

132133
if (argumentList == null)
133134
{
134-
var indexExpression = ParserRuleContextHelper.GetParent<VBAParser.IndexExprContext>(reference.Context);
135+
var indexExpression = reference.Context.GetAncestor<VBAParser.IndexExprContext>();
135136
if (indexExpression != null)
136137
{
137-
argumentList = ParserRuleContextHelper.GetChild<VBAParser.ArgumentListContext>(indexExpression);
138+
argumentList = indexExpression.GetChild<VBAParser.ArgumentListContext>();
138139
}
139140
}
140141

RetailCoder.VBE/Rubberduck.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@
373373
<Compile Include="RubberduckProgId.cs" />
374374
<Compile Include="Settings\CodeInspectionConfigProvider.cs" />
375375
<Compile Include="Settings\ExperimentalFeatures.cs" />
376-
<Compile Include="Settings\DefaultHotkeySettings.cs" />
376+
<Compile Include="Settings\DefaultSettings.cs" />
377377
<Compile Include="Settings\GeneralConfigProvider.cs" />
378378
<Compile Include="Settings\HotkeySettings.cs" />
379379
<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/HotkeyConfigProvider.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,14 @@ 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()
1818
{
1919
var prototype = new HotkeySettings(_defaultHotkeys);
2020

21+
// Loaded settings don't contain defaults, so we need to use the `Settings` property to combine user settings with defaults.
2122
var loaded = _persister.Load(prototype);
2223
if (loaded != null)
2324
{

0 commit comments

Comments
 (0)