unit picturelistunit; {$mode objfpc}{$H+} interface uses Classes, SysUtils, ExtCtrls, Graphics; type tMyPictureList = class private content: tList; public constructor create; destructor destroy; procedure addFromFile(s: string); procedure saveLastToFile(s: string); end; implementation constructor tMyPictureList.create; begin inherited create; content:=tList.create; end; destructor tMyPictureList.destroy; begin content.clear; content.free; inherited destroy; end; procedure tMyPictureList.addFromFile(s: string); begin content.add(tPicture.create); last.loadFromFile(s); end; function tMyPictureList.last: tPicture; begin result:=items[count-1]; end; procedure tMyPictureList.delete(idx: int64); begin items[idx].free; inherited delete(idx); end; procedure tMyPictureList.add; begin inherited add(tPicture.create); end; procedure tMyPictureList.clear; var i: longint; begin for i:=0 to count-1 do items[i].free; inherited clear; end; end.