Skip to content

Commit d097243

Browse files
committed
Removed all references to ProjectRepository.CodeModeul because this is going to die.
1 parent fb3e398 commit d097243

21 files changed

+132
-58
lines changed

RetailCoder.VBE/Refactorings/ImplementInterface/ImplementInterfaceRefactoring.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public void Refactor(QualifiedSelection selection)
8787

8888
if (oldSelection.HasValue)
8989
{
90-
var module = _state.ProjectsProvider.CodeModule(oldSelection.Value.QualifiedName);
90+
using (var module = _state.ProjectsProvider.Component(oldSelection.Value.QualifiedName).CodeModule)
9191
{
9292
using (var pane = module.CodePane)
9393
{

RetailCoder.VBE/Refactorings/IntroduceField/IntroduceFieldRefactoring.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,10 +89,12 @@ private void PromoteVariable(IModuleRewriter rewriter, Declaration target)
8989

9090
if (oldSelection.HasValue)
9191
{
92-
var module = _state.ProjectsProvider.CodeModule(oldSelection.Value.QualifiedName);
93-
using (var pane = module.CodePane)
92+
using (var module = _state.ProjectsProvider.Component(oldSelection.Value.QualifiedName).CodeModule)
9493
{
95-
pane.Selection = oldSelection.Value.Selection;
94+
using (var pane = module.CodePane)
95+
{
96+
pane.Selection = oldSelection.Value.Selection;
97+
}
9698
}
9799
}
98100

RetailCoder.VBE/Refactorings/RemoveParameters/RemoveParametersRefactoring.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ private void AdjustReferences(IEnumerable<IdentifierReference> references, Decla
140140
continue;
141141
}
142142

143-
var module = _projectsProvider.CodeModule(reference.QualifiedModuleName);
143+
using (var module = _projectsProvider.Component(reference.QualifiedModuleName).CodeModule)
144144
{
145145
RemoveCallArguments(argumentList, module);
146146
}

RetailCoder.VBE/Refactorings/Rename/RenameRefactoring.cs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ private bool IsValidTarget(Declaration target)
226226
}
227227
else if (target.DeclarationType.HasFlag(DeclarationType.Module))
228228
{
229-
var module = _state.ProjectsProvider.CodeModule(target.QualifiedName.QualifiedModuleName);
229+
using (var module = _state.ProjectsProvider.Component(target.QualifiedName.QualifiedModuleName).CodeModule)
230230
{
231231
if (module.IsWrappingNullReference)
232232
{
@@ -566,12 +566,14 @@ private IEnumerable<Declaration> FindEventHandlersForControl(Declaration control
566566

567567
private void CacheInitialSelection(QualifiedSelection qSelection)
568568
{
569-
var codeModule = _state.ProjectsProvider.CodeModule(qSelection.QualifiedName);
570-
using (var codePane = codeModule.CodePane)
569+
using (var codeModule = _state.ProjectsProvider.Component(qSelection.QualifiedName).CodeModule)
571570
{
572-
if (!codePane.IsWrappingNullReference)
571+
using (var codePane = codeModule.CodePane)
573572
{
574-
_initialSelection = new Tuple<ICodePane, Selection>(codePane, codePane.Selection);
573+
if (!codePane.IsWrappingNullReference)
574+
{
575+
_initialSelection = new Tuple<ICodePane, Selection>(codePane, codePane.Selection);
576+
}
575577
}
576578
}
577579
}

RetailCoder.VBE/Refactorings/ReorderParameters/ReorderParametersRefactoring.cs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,6 @@ private void AdjustReferences(IEnumerable<IdentifierReference> references)
125125
{
126126
foreach (var reference in references.Where(item => item.Context != _model.TargetDeclaration.Context))
127127
{
128-
var module = _projectsProvider.CodeModule(reference.QualifiedModuleName);
129128
VBAParser.ArgumentListContext argumentList = null;
130129
var callStmt = reference.Context.GetAncestor<VBAParser.CallStmtContext>();
131130
if (callStmt != null)
@@ -142,8 +141,15 @@ private void AdjustReferences(IEnumerable<IdentifierReference> references)
142141
}
143142
}
144143

145-
if (argumentList == null) { continue; }
146-
RewriteCall(argumentList, module);
144+
if (argumentList == null)
145+
{
146+
continue;
147+
}
148+
149+
using (var module = _projectsProvider.Component(reference.QualifiedModuleName).CodeModule)
150+
{
151+
RewriteCall(argumentList, module);
152+
}
147153
}
148154
}
149155

RetailCoder.VBE/UI/CodeExplorer/Commands/PrintCommand.cs

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using System.Collections.Generic;
23
using System.Drawing;
34
using System.Drawing.Printing;
45
using System.IO;
@@ -33,7 +34,10 @@ protected override bool EvaluateCanExecute(object parameter)
3334

3435
try
3536
{
36-
return _projectsProvider.CodeModule(node.Declaration.QualifiedName.QualifiedModuleName).CountOfLines != 0;
37+
using (var codeModule = _projectsProvider.Component(node.Declaration.QualifiedName.QualifiedModuleName).CodeModule)
38+
{
39+
return codeModule.CountOfLines != 0;
40+
}
3741
}
3842
catch (COMException)
3943
{
@@ -50,9 +54,12 @@ protected override void OnExecute(object parameter)
5054
var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Rubberduck",
5155
qualifiedComponentName.ComponentName + ".txt");
5256

53-
var codeModule = _projectsProvider.CodeModule(qualifiedComponentName);
54-
var text = codeModule.GetLines(1, codeModule.CountOfLines)
55-
.Split(new[] {Environment.NewLine}, StringSplitOptions.None).ToList();
57+
List<string> text;
58+
using (var codeModule = _projectsProvider.Component(qualifiedComponentName).CodeModule)
59+
{
60+
text = codeModule.GetLines(1, codeModule.CountOfLines)
61+
.Split(new[] {Environment.NewLine}, StringSplitOptions.None).ToList();
62+
}
5663

5764
var printDoc = new PrintDocument { DocumentName = path };
5865
using (var pd = new PrintDialog

RetailCoder.VBE/UI/Command/AddTestMethodCommand.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using Rubberduck.Parsing.Symbols;
66
using Rubberduck.Parsing.VBA;
77
using Rubberduck.UnitTesting;
8+
using Rubberduck.VBEditor;
89
using Rubberduck.VBEditor.SafeComWrappers.Abstract;
910

1011
namespace Rubberduck.UI.Command
@@ -58,11 +59,7 @@ protected override bool EvaluateCanExecute(object parameter)
5859
{
5960
using( var activePaneCodeModule = activeCodePane.CodeModule)
6061
{
61-
return testModules.Any(a =>
62-
{
63-
var module = _state.ProjectsProvider.CodeModule(a.QualifiedName.QualifiedModuleName);
64-
return module.Equals(activePaneCodeModule);
65-
});
62+
return testModules.Any(a => HasEqualCodeModule(a.QualifiedName.QualifiedModuleName, activePaneCodeModule));
6663
}
6764
}
6865
}
@@ -84,7 +81,7 @@ protected override void OnExecute(object parameter)
8481
using (var module = pane.CodeModule)
8582
{
8683
var declaration = _state.GetTestModules()
87-
.FirstOrDefault(f => _state.ProjectsProvider.CodeModule(f.QualifiedName.QualifiedModuleName).Equals(module));
84+
.FirstOrDefault(f => HasEqualCodeModule(f.QualifiedName.QualifiedModuleName, module));
8885

8986
if (declaration != null)
9087
{
@@ -101,6 +98,14 @@ protected override void OnExecute(object parameter)
10198
_state.OnParseRequested(this);
10299
}
103100

101+
private bool HasEqualCodeModule(QualifiedModuleName module, ICodeModule otherCodeModule)
102+
{
103+
using (var codeModule = _state.ProjectsProvider.Component(module).CodeModule)
104+
{
105+
return codeModule.Equals(otherCodeModule);
106+
}
107+
}
108+
104109
private string GetNextTestMethodName(IVBComponent component)
105110
{
106111
var names = component.GetTests(_vbe, _state).Select(test => test.Declaration.IdentifierName);

RetailCoder.VBE/UI/Command/AddTestMethodExpectedErrorCommand.cs

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using Rubberduck.Parsing.Symbols;
66
using Rubberduck.Parsing.VBA;
77
using Rubberduck.UnitTesting;
8+
using Rubberduck.VBEditor;
89
using Rubberduck.VBEditor.SafeComWrappers.Abstract;
910

1011
namespace Rubberduck.UI.Command
@@ -68,7 +69,7 @@ protected override bool EvaluateCanExecute(object parameter)
6869
{
6970
using(var selectedModule = component.CodeModule)
7071
{
71-
return testModules.Any(a => _state.ProjectsProvider.CodeModule(a.QualifiedName.QualifiedModuleName).Equals(selectedModule));
72+
return testModules.Any(a => HasEqualCodeModule(a.QualifiedName.QualifiedModuleName, selectedModule));
7273
}
7374
}
7475
}
@@ -79,6 +80,14 @@ protected override bool EvaluateCanExecute(object parameter)
7980
}
8081
}
8182

83+
private bool HasEqualCodeModule(QualifiedModuleName module, ICodeModule otherCodeModule)
84+
{
85+
using (var codeModule = _state.ProjectsProvider.Component(module).CodeModule)
86+
{
87+
return codeModule.Equals(otherCodeModule);
88+
}
89+
}
90+
8291
protected override void OnExecute(object parameter)
8392
{
8493
using (var pane = _vbe.ActiveCodePane)
@@ -92,8 +101,10 @@ protected override void OnExecute(object parameter)
92101
{
93102
var declaration = _state.GetTestModules().FirstOrDefault(f =>
94103
{
95-
var thisModule = _state.ProjectsProvider.CodeModule(f.QualifiedName.QualifiedModuleName);
96-
return thisModule.Equals(activeModule);
104+
using (var thisModule = _state.ProjectsProvider.Component(f.QualifiedName.QualifiedModuleName).CodeModule)
105+
{
106+
return thisModule.Equals(activeModule);
107+
}
97108
});
98109

99110
if (declaration != null)

RetailCoder.VBE/UI/Command/FindAllImplementationsCommand.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
using Rubberduck.Parsing.VBA;
1111
using Rubberduck.UI.Command.MenuItems;
1212
using Rubberduck.UI.Controls;
13+
using Rubberduck.VBEditor;
1314
using Rubberduck.VBEditor.SafeComWrappers.Abstract;
1415

1516
namespace Rubberduck.UI.Command
@@ -156,14 +157,22 @@ private SearchResultsViewModel CreateViewModel(Declaration target)
156157
new SearchResultItem(
157158
declaration.ParentScopeDeclaration,
158159
new NavigateCodeEventArgs(declaration.QualifiedName.QualifiedModuleName, declaration.Selection),
159-
_state.ProjectsProvider.CodeModule(declaration.QualifiedName.QualifiedModuleName).GetLines(declaration.Selection.StartLine, 1).Trim()));
160+
GetModuleLine(declaration.QualifiedName.QualifiedModuleName, declaration.Selection.StartLine)));
160161

161162
var viewModel = new SearchResultsViewModel(_navigateCommand,
162163
string.Format(RubberduckUI.SearchResults_AllImplementationsTabFormat, target.IdentifierName), target, results);
163164

164165
return viewModel;
165166
}
166167

168+
private string GetModuleLine(QualifiedModuleName module, int line)
169+
{
170+
using (var codeModule = _state.ProjectsProvider.Component(module).CodeModule)
171+
{
172+
return codeModule.GetLines(line, 1).Trim();
173+
}
174+
}
175+
167176
private Declaration FindTarget(object parameter)
168177
{
169178
if (parameter is Declaration declaration)

RetailCoder.VBE/UI/Command/FindAllReferencesCommand.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,15 +152,23 @@ private SearchResultsViewModel CreateViewModel(Declaration declaration)
152152
var results = declaration.References.Distinct().Select(reference =>
153153
new SearchResultItem(
154154
reference.ParentNonScoping,
155-
new NavigateCodeEventArgs(reference.QualifiedModuleName, reference.Selection),
156-
_state.ProjectsProvider.CodeModule(reference.QualifiedModuleName).GetLines(reference.Selection.StartLine, 1).Trim()));
155+
new NavigateCodeEventArgs(reference.QualifiedModuleName, reference.Selection),
156+
GetModuleLine(reference.QualifiedModuleName, reference.Selection.StartLine)));
157157

158158
var viewModel = new SearchResultsViewModel(_navigateCommand,
159159
string.Format(RubberduckUI.SearchResults_AllReferencesTabFormat, declaration.IdentifierName), declaration, results);
160160

161161
return viewModel;
162162
}
163163

164+
private string GetModuleLine(QualifiedModuleName module, int line)
165+
{
166+
using (var codeModule = _state.ProjectsProvider.Component(module).CodeModule)
167+
{
168+
return codeModule.GetLines(line, 1).Trim();
169+
}
170+
}
171+
164172
private Declaration FindTarget(object parameter)
165173
{
166174
if (parameter is Declaration declaration)

0 commit comments

Comments
 (0)