|
@@ -7,7 +7,7 @@
|
|
Author : Kike Pérez
|
|
Author : Kike Pérez
|
|
Version : 1.5
|
|
Version : 1.5
|
|
Created : 25/08/2018
|
|
Created : 25/08/2018
|
|
- Modified : 02/03/2020
|
|
|
|
|
|
+ Modified : 07/04/2020
|
|
|
|
|
|
This file is part of QuickLib: https://github.com/exilon/QuickLib
|
|
This file is part of QuickLib: https://github.com/exilon/QuickLib
|
|
|
|
|
|
@@ -465,6 +465,13 @@ begin
|
|
rProp := rtype2.GetProperty('List');
|
|
rProp := rtype2.GetProperty('List');
|
|
typinfo := GetTypeData(rProp.PropertyType.Handle).DynArrElType^;
|
|
typinfo := GetTypeData(rProp.PropertyType.Handle).DynArrElType^;
|
|
|
|
|
|
|
|
+ case typinfo.Kind of
|
|
|
|
+ tkChar, tkString, tkWChar, tkWString : TList<string>(aTgtList).Capacity := value.GetArrayLength;
|
|
|
|
+ tkInteger, tkInt64 : TList<Integer>(aTgtList).Capacity := value.GetArrayLength;
|
|
|
|
+ tkFloat : TList<Extended>(aTgtList).Capacity := value.GetArrayLength;
|
|
|
|
+ else TList<TObject>(aTgtList).Capacity := value.GetArrayLength;
|
|
|
|
+ end;
|
|
|
|
+
|
|
for i := 0 to value.GetArrayLength - 1 do
|
|
for i := 0 to value.GetArrayLength - 1 do
|
|
begin
|
|
begin
|
|
if typinfo.Kind = tkClass then
|
|
if typinfo.Kind = tkClass then
|
|
@@ -527,6 +534,8 @@ begin
|
|
rProp := rtype2.GetProperty('List');
|
|
rProp := rtype2.GetProperty('List');
|
|
typinfo := GetTypeData(rProp.PropertyType.Handle).DynArrElType^;
|
|
typinfo := GetTypeData(rProp.PropertyType.Handle).DynArrElType^;
|
|
|
|
|
|
|
|
+ TObjectList<TObject>(aTgtObjList).Capacity := value.GetArrayLength;
|
|
|
|
+
|
|
for i := 0 to value.GetArrayLength - 1 do
|
|
for i := 0 to value.GetArrayLength - 1 do
|
|
begin
|
|
begin
|
|
obj := typinfo.TypeData.ClassType.Create;
|
|
obj := typinfo.TypeData.ClassType.Create;
|