Skip to content

Commit bb49c4e

Browse files
committed
Fix rename bug
1 parent 68c2b0e commit bb49c4e

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

RetailCoder.VBE/Refactorings/Rename/RenamePresenter.cs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
using System;
2-
using System.Collections.Generic;
32
using System.Linq;
43
using System.Runtime.InteropServices;
5-
using System.Text.RegularExpressions;
64
using System.Windows.Forms;
75
using Antlr4.Runtime;
86
using Antlr4.Runtime.Misc;
@@ -270,7 +268,7 @@ private void RenameControl()
270268
var form = _view.Target.QualifiedName.QualifiedModuleName.Component.CodeModule;
271269
var control = ((dynamic)form.Parent.Designer).Controls(_view.Target.IdentifierName);
272270

273-
foreach (var handler in _declarations.FindEventHandlers(_view.Target))
271+
foreach (var handler in _declarations.FindEventHandlers(_view.Target).OrderByDescending(h => h.Selection.StartColumn))
274272
{
275273
var newMemberName = handler.IdentifierName.Replace(control.Name + '_', _view.NewName + '_');
276274
var module = handler.Project.VBComponents.Item(handler.ComponentName).CodeModule;
@@ -300,7 +298,7 @@ private void RenameUsages(Declaration target, string interfaceName = null)
300298
var implementations = _declarations.FindInterfaceImplementationMembers()
301299
.Where(m => m.IdentifierName == target.ComponentName + '_' + target.IdentifierName);
302300

303-
foreach (var member in implementations)
301+
foreach (var member in implementations.OrderByDescending(m => m.Selection.StartColumn))
304302
{
305303
try
306304
{
@@ -327,7 +325,7 @@ private void RenameUsages(Declaration target, string interfaceName = null)
327325
var module = grouping.Key.Component.CodeModule;
328326
foreach (var line in grouping.GroupBy(reference => reference.Selection.StartLine))
329327
{
330-
foreach (var reference in line)
328+
foreach (var reference in line.OrderByDescending(l => l.Selection.StartColumn))
331329
{
332330
var content = module.Lines[line.Key, 1];
333331
string newContent;
@@ -351,7 +349,7 @@ private void RenameUsages(Declaration target, string interfaceName = null)
351349
// renaming interface
352350
if (grouping.Any(reference => reference.Context.Parent is VBAParser.ImplementsStmtContext))
353351
{
354-
var members = _declarations.FindMembers(target);
352+
var members = _declarations.FindMembers(target).OrderByDescending(m => m.Selection.StartColumn);
355353
foreach (var member in members)
356354
{
357355
var oldMemberName = target.IdentifierName + '_' + member.IdentifierName;

0 commit comments

Comments
 (0)