* use NameIndex in GetPropInfos

git-svn-id: trunk@2004 -
This commit is contained in:
peter 2005-12-20 10:35:08 +00:00
parent ff1f800de5
commit 6238b1a917

View File

@ -600,6 +600,7 @@ Var
TP : PPropInfo; TP : PPropInfo;
Count : Longint; Count : Longint;
begin begin
repeat
TD:=GetTypeData(TypeInfo); TD:=GetTypeData(TypeInfo);
// Get this objects TOTAL published properties count // Get this objects TOTAL published properties count
TP:=aligntoptr(PPropInfo(aligntoptr((@TD^.UnitName+Length(TD^.UnitName)+1)))); TP:=aligntoptr(PPropInfo(aligntoptr((@TD^.UnitName+Length(TD^.UnitName)+1))));
@ -609,16 +610,14 @@ begin
tp:=aligntoptr(tp); tp:=aligntoptr(tp);
While Count>0 do While Count>0 do
begin begin
PropList^[0]:=TP; PropList^[TP^.NameIndex]:=TP;
Inc(Pointer(PropList),SizeOf(Pointer));
// Point to TP next propinfo record. // Point to TP next propinfo record.
// Located at Name[Length(Name)+1] ! // Located at Name[Length(Name)+1] !
TP:=aligntoptr(PPropInfo(pointer(@TP^.Name)+PByte(@TP^.Name)^+1)); TP:=aligntoptr(PPropInfo(pointer(@TP^.Name)+PByte(@TP^.Name)^+1));
Dec(Count); Dec(Count);
end; end;
// recursive call for parent info. TypeInfo:=TD^.Parentinfo;
If TD^.Parentinfo<>Nil then until TypeInfo=nil;
GetPropInfos (TD^.ParentInfo,PropList);
end; end;
Procedure InsertProp (PL : PProplist;PI : PPropInfo; Count : longint); Procedure InsertProp (PL : PProplist;PI : PPropInfo; Count : longint);