2012-03-31 5 views
3

Ich versuche einige Delphi 7-Code zu refaktorieren. Eine der Prozeduren, die ich verschieben möchte, verwendet einen Datentyp namens TLVColumn (erscheint als Spaltenüberschrift TListView). Wenn ich jedoch die Methode verschiebe, erhalte ich einen nicht deklarierten Bezeichnerfehler, vermutlich weil ich den Import, der TLVColumn definiert, nicht in die neue Einheit kopiert habe. Die Unit, von der ich diese Methode verwende, enthält über 7000 Codezeilen und mehr als 50 Klassen. Gibt es einen effizienteren Weg als Versuch und Irrtum, zufällige Importe zu kopieren, um herauszufinden, welcher Import für eine bestimmte Klasse erforderlich ist? (Vor allem die Einfuhren, die von Delphi-Bibliotheken sind und nicht von meinem eigenen Code-Basis ...)Wie kann man identifizieren, wo ein Bezeichner zum Refactoring in Delphi 7 definiert ist?

+0

(Installieren Sie GExpert und) Führen Sie eine Grep-Suche über alle Projekteinheiten und gegebenenfalls im Stamm aller Quellordner aus. Wenn Sie nach 'TLVColumn = class suchen (' Sie sollten die Deklaration ziemlich schnell finden. –

+3

Wie wäre es mit ctrl + Klick über den Bezeichner? – RRUZ

Antwort

6

Bevor das Verfahren zu bewegen drücken Sie einfach ctrl + Linksklick über die Kennung und die IDE wird an das Gerät navigieren, in dem declarated wird.

+1

Hmmm, das funktioniert für einige von ihnen, die, die in meiner Codebasis sind Delphi-Bibliotheken scheint es nicht zu arbeiten. Aber "Browse Symbol at Cursor" im Rechtsklick-Menü scheint an den anderen zu arbeiten. –