Skip to content

Commit 4df9534

Browse files
committed
Merge pull request #638 from rubberduck-vba/GrammarIsFun
FindAllReferences fix, localized plural issue count fix
2 parents 9849fe6 + a98d4ba commit 4df9534

10 files changed

+158
-101
lines changed

RetailCoder.VBE/UI/AboutWindow.Designer.cs

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

RetailCoder.VBE/UI/CodeInspections/CodeInspectionsDockablePresenter.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,10 @@ private void ToggleParsingStatus(bool isParsing = true)
100100
private void Control_CopyResultsToClipboard(object sender, EventArgs e)
101101
{
102102
var results = string.Join("\n", _results.Select(FormatResultForClipboard));
103-
var text = string.Format(RubberduckUI.CodeInspections_NumberOfIssuesFound, DateTime.Now, _results.Count, (_results.Count != 1 ? "s" : string.Empty)) + results;
103+
var resource = _results.Count == 1
104+
? RubberduckUI.CodeInspections_NumberOfIssuesFound_Singular
105+
: RubberduckUI.CodeInspections_NumberOfIssuesFound_Plural;
106+
var text = string.Format(resource, DateTime.Now, _results.Count) + results;
104107

105108
Clipboard.SetText(text);
106109
}

RetailCoder.VBE/UI/CodeInspections/CodeInspectionsToolbar.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public void Initialize()
5555
Menu.SetButtonImage(_refreshButton, refreshIcon);
5656

5757
_statusButton = (CommandBarButton)_toolbar.Controls.Add(MsoControlType.msoControlButton, Temporary: true);
58-
_statusButton.Caption = string.Format(RubberduckUI.CodeInspections_NumberOfIssues, 0, "s");
58+
_statusButton.Caption = string.Format(RubberduckUI.CodeInspections_NumberOfIssues_Plural, 0);
5959
_statusButton.FaceId = 463; // Resources.Warning doesn't look good here
6060
_statusButton.Style = MsoButtonStyle.msoButtonIconAndCaption;
6161

@@ -200,7 +200,10 @@ private void _refreshButton_Click(CommandBarButton Ctrl, ref bool CancelDefault)
200200
private void OnIssuesFound(object sender, InspectorIssuesFoundEventArg e)
201201
{
202202
_issueCount = _issueCount + e.Issues.Count;
203-
_statusButton.Caption = string.Format(RubberduckUI.CodeInspections_NumberOfIssues, _issueCount, (_issueCount == 1 ? string.Empty : "s"));
203+
var resource = _issueCount == 1
204+
? RubberduckUI.CodeInspections_NumberOfIssues_Singular
205+
: RubberduckUI.CodeInspections_NumberOfIssues_Plural;
206+
_statusButton.Caption = string.Format(resource, _issueCount);
204207
}
205208

206209
private async void RefreshAsync(CancellationToken token)

RetailCoder.VBE/UI/CodeInspections/CodeInspectionsWindow.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ private void InitWindow()
6565
NextButton.Text = RubberduckUI.Next;
6666
PreviousButton.Text = RubberduckUI.Previous;
6767

68-
StatusLabel.Text = string.Format(RubberduckUI.CodeInspections_NumberOfIssues, 0, "s");
68+
StatusLabel.Text = string.Format(RubberduckUI.CodeInspections_NumberOfIssues_Plural, 0);
6969

7070
RefreshButton.ToolTipText = RubberduckUI.CodeInspections_RefreshToolTip;
7171
QuickFixButton.ToolTipText = RubberduckUI.CodeInspections_QuickFixToolTip;
@@ -123,13 +123,16 @@ public void SetIssuesStatus(int issueCount, bool completed = false)
123123
if (completed)
124124
{
125125
StatusLabel.Image = Resources.exclamation_diamond;
126-
StatusLabel.Text = string.Format(RubberduckUI.CodeInspections_NumberOfIssues, issueCount, (issueCount != 1 ? "s" : string.Empty));
126+
var resource = issueCount == 1
127+
? RubberduckUI.CodeInspections_NumberOfIssues_Singular
128+
: RubberduckUI.CodeInspections_NumberOfIssues_Plural;
129+
StatusLabel.Text = string.Format(resource, issueCount);
127130
QuickFixButton.Enabled = QuickFixButton.HasDropDownItems;
128131
}
129132
else
130133
{
131134
StatusLabel.Image = Resources.hourglass;
132-
StatusLabel.Text = string.Format(RubberduckUI.CodeInspections_InspectingIssues, RubberduckUI.CodeInspections_Inspecting, issueCount, (issueCount != 1 ? "s" : string.Empty));
135+
StatusLabel.Text = string.Format(RubberduckUI.CodeInspections_InspectingIssues_Singular, RubberduckUI.CodeInspections_Inspecting, issueCount, (issueCount != 1 ? "s" : string.Empty));
133136
}
134137
}
135138
}

RetailCoder.VBE/UI/RefactorMenu.cs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -180,9 +180,9 @@ public void FindAllReferences()
180180
var progress = new ParsingProgressPresenter();
181181
var result = progress.Parse(_parser, IDE.ActiveVBProject);
182182

183-
var declarations = result.Declarations.Items.Where(item => item.DeclarationType != DeclarationType.ModuleOption
184-
&& item.ComponentName == selection.QualifiedName.ComponentName)
185-
.ToList();
183+
var declarations = result.Declarations.Items
184+
.Where(item => item.DeclarationType != DeclarationType.ModuleOption)
185+
.ToList();
186186

187187
var target = declarations.SingleOrDefault(item =>
188188
IsSelectedDeclaration(selection, item)
@@ -368,12 +368,10 @@ private IEnumerable<Declaration> FindAllImplementationsOfMember(Declaration targ
368368

369369
private bool IsSelectedReference(QualifiedSelection selection, Declaration declaration)
370370
{
371-
var isSameProject = declaration.Project == selection.QualifiedName.Project;
372-
var isSameModule = isSameProject && declaration.QualifiedName.QualifiedModuleName.ComponentName == selection.QualifiedName.ComponentName;
373-
374371
return declaration.References.Any(r =>
375-
isSameModule &&
376-
r.Selection.ContainsFirstCharacter(selection.Selection));
372+
r.QualifiedModuleName.Project == selection.QualifiedName.Project
373+
&& r.QualifiedModuleName.ComponentName == selection.QualifiedName.ComponentName
374+
&& r.Selection.ContainsFirstCharacter(selection.Selection));
377375
}
378376

379377
private bool IsSelectedDeclaration(QualifiedSelection selection, Declaration declaration)

RetailCoder.VBE/UI/RubberduckMenu.cs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,8 @@ internal class RubberduckMenu : Menu
2929
private readonly IRubberduckParser _parser;
3030
private readonly AddIn _addIn;
3131

32-
//These need to stay in scope for their click events to fire. (32-bit only?)
33-
// ReSharper disable once NotAccessedField.Local
3432
private CommandBarButton _about;
35-
// ReSharper disable once NotAccessedField.Local
3633
private CommandBarButton _settings;
37-
// ReSharper disable once NotAccessedField.Local
3834
private CommandBarButton _sourceControl;
3935

4036
private ProjectExplorerContextMenu _projectExplorerContextMenu;

0 commit comments

Comments
 (0)