Die ganze Funktion lautet so
Delphi-Quellcode:
procedure THauptfenster.fuelleListe(liste:tstrings; identifier,name:string);
var
temp:string;
position,i:integer;
function countspacesinfront(s:string):integer;
var
z:integer;
sx:string;
begin
sx:=s;
z:=0;
while sx[1]=' ' do begin
sx:=copy(sx,2,length(sx)-1);
inc(z);
end;
countspacesinfront:=z;
end;
begin
liste.Clear;
for i:=0 to scintilla1.Lines.Count-1 do begin
temp:=Scintilla1.lines[i];
temp:=cutby(temp);
if lowercase(copy(temp,1,length(identifier)))<>lowercase(identifier) then continue;
position:=scintilla1.positionfromline(i)+countspacesinfront(temp);
if getattribut(position)=11 then
liste.add(cutby(temp)) else
liste.add(cutby(temp)+' ('+inttostr(position)+')');
end;
end;
is a bisserl blöd weil das aus nem Projekt stammt.
Kurz zu den verwendeten Funktionen:
cutby schneidet einem String die vorderen und hinteren Leerzeichen ab und entfernt Kommentare
getattribut liest die Farbe im Quelltext aus
Der Rest dürfte klar sein...
Hab ich vielleicht bei den Compiler-Parametern einen Scheiß eingestellt?