procedure TPics.PutPic(index:
Integer; Pic: TPicture);
begin
inherited Put(index,
Pic);
end;
function TPics.GetPic(index:
Integer): TPicture;
begin
result :=
TPicture(inherited Get(index));
end;
Personally, I think the Put()
method is very scary, since it can easily lead to memory leaks when the list
holds the only pointer to an object. In other words, I usually make the Items
property read only.
----- Original Message -----
Sent:
Tuesday, 25 February 2003 10:50
Subject: [DUG]:
Using TList
Is the below declaration of a
TList that holds TPictures?
TPics =
class(TList)
private
procedure
PutPic(index: Integer; Pic: TPicture);
function
GetPic(index: Integer): TPicture;
public
property
Items[Index: Integer]: TPicture read GetPic write PutPic;
default;
function
Add(Pic: TPicture): integer;
function
Remove(Pic: TPicture): integer;
function
IndexOf(Pic: TPicture): Integer;
procedure
Insert(Index: Integer; Pic: TPicture);
end;
implementation
procedure TPics.PutPic(index:
Integer; Pic: TPicture);
begin
inherited Put(index,
pointer(Pic));
end;
function TPics.GetPic(index:
Integer): TPicture;
begin
result :=
TPicture(pointer(inherited items[index]));
end;
function TPics.Add(Pic:
TPicture): Integer;
begin
result := inherited
add(Pic);
end;
function TPics.Remove(Pic:
TPicture): Integer;
begin
result := inherited
remove(Pic);
end;
function TPics.IndexOf(Pic:
TPicture): Integer;
begin
result := inherited
indexOf(Pic);
end;
procedure TPics.Insert(Index:
Integer; Pic: TPicture);
begin
inherited insert(index,
Pic);
end;
thanks
Jay