@@ -42,12 +42,12 @@ public FindAllReferencesCommand(INavigateCommand navigateCommand, IMessageBox me
42
42
43
43
private Declaration FindNewDeclaration ( Declaration declaration )
44
44
{
45
- return _state . AllUserDeclarations . SingleOrDefault ( item =>
46
- item . ProjectId == declaration . ProjectId &&
47
- item . ComponentName == declaration . ComponentName &&
48
- item . ParentScope == declaration . ParentScope &&
49
- item . IdentifierName == declaration . IdentifierName &&
50
- item . DeclarationType == declaration . DeclarationType ) ;
45
+ return _state . DeclarationFinder
46
+ . MatchName ( declaration . IdentifierName )
47
+ . SingleOrDefault ( d => d . ProjectId == declaration . ProjectId
48
+ && d . ComponentName == declaration . ComponentName
49
+ && d . ParentScope == declaration . ParentScope
50
+ && d . DeclarationType == declaration . DeclarationType ) ;
51
51
}
52
52
53
53
private void _state_StateChanged ( object sender , ParserStateEventArgs e )
@@ -88,7 +88,7 @@ private void UpdateTab()
88
88
89
89
protected override bool EvaluateCanExecute ( object parameter )
90
90
{
91
- if ( _state . Status != ParserState . Ready ||
91
+ if ( ( _state ? . Status ?? ParserState . None ) != ParserState . Ready ||
92
92
( _vbe . ActiveCodePane == null && ! ( _vbe . SelectedVBComponent ? . HasDesigner ?? false ) ) )
93
93
{
94
94
return false ;
@@ -102,7 +102,7 @@ protected override bool EvaluateCanExecute(object parameter)
102
102
103
103
protected override void OnExecute ( object parameter )
104
104
{
105
- if ( _state . Status != ParserState . Ready )
105
+ if ( ( _state ? . Status ?? ParserState . None ) != ParserState . Ready )
106
106
{
107
107
return ;
108
108
}
@@ -156,8 +156,7 @@ private SearchResultsViewModel CreateViewModel(Declaration declaration)
156
156
157
157
private Declaration FindTarget ( object parameter )
158
158
{
159
- var declaration = parameter as Declaration ;
160
- if ( declaration != null )
159
+ if ( parameter is Declaration declaration )
161
160
{
162
161
return declaration ;
163
162
}
@@ -174,36 +173,36 @@ private Declaration FindCodePaneTarget()
174
173
175
174
private Declaration FindFormDesignerTarget ( QualifiedModuleName ? qualifiedModuleName = null )
176
175
{
177
- var projectId = qualifiedModuleName . HasValue
178
- ? qualifiedModuleName . Value . ProjectId
179
- : _vbe . ActiveVBProject . ProjectId ;
180
-
181
- var component = qualifiedModuleName . HasValue
182
- ? qualifiedModuleName . Value . Component
183
- : _vbe . SelectedVBComponent ;
184
-
176
+ ( var projectId , var component )
177
+ = qualifiedModuleName . HasValue
178
+ ? ( qualifiedModuleName . Value . ProjectId , qualifiedModuleName . Value . Component )
179
+ : ( _vbe . ActiveVBProject . ProjectId , _vbe . SelectedVBComponent ) ;
185
180
186
181
if ( component ? . HasDesigner ?? false )
187
182
{
188
183
if ( qualifiedModuleName . HasValue )
189
184
{
190
- return _state . DeclarationFinder . MatchName ( qualifiedModuleName . Value . Name )
191
- . SingleOrDefault ( m => m . ProjectId == projectId
192
- && m . DeclarationType . HasFlag ( qualifiedModuleName . Value . ComponentType )
193
- && m . ComponentName == component . Name ) ;
185
+ return _state . DeclarationFinder
186
+ . MatchName ( qualifiedModuleName . Value . Name )
187
+ . SingleOrDefault ( m => m . ProjectId == projectId
188
+ && m . DeclarationType . HasFlag ( qualifiedModuleName . Value . ComponentType )
189
+ && m . ComponentName == component . Name ) ;
194
190
}
195
191
196
192
var selectedCount = component . SelectedControls . Count ;
197
193
if ( selectedCount > 1 ) { return null ; }
198
194
199
195
// Cannot use DeclarationType.UserForm, parser only assigns UserForms the ClassModule flag
200
- var selectedType = selectedCount == 0 ? DeclarationType . ClassModule : DeclarationType . Control ;
201
- string selectedName = selectedCount == 0 ? component . Name : component . SelectedControls [ 0 ] . Name ;
202
-
203
- return _state . DeclarationFinder . MatchName ( selectedName )
204
- . SingleOrDefault ( m => m . ProjectId == projectId
205
- && m . DeclarationType . HasFlag ( selectedType )
206
- && m . ComponentName == component . Name ) ;
196
+ ( var selectedType , var selectedName )
197
+ = selectedCount == 0
198
+ ? ( DeclarationType . ClassModule , component . Name )
199
+ : ( DeclarationType . Control , component . SelectedControls [ 0 ] . Name ) ;
200
+
201
+ return _state . DeclarationFinder
202
+ . MatchName ( selectedName )
203
+ . SingleOrDefault ( m => m . ProjectId == projectId
204
+ && m . DeclarationType . HasFlag ( selectedType )
205
+ && m . ComponentName == component . Name ) ;
207
206
}
208
207
return null ;
209
208
}
0 commit comments