Das soll nicht das Problem sein.
Alle Stellen an denen die Stringliste selbst manipuliert wird:
Delphi-Quellcode:
constructor TExtendedItem.Create(Collection: TCollection);
begin
inherited create(Collection);
fdescription:= TStringlist.create;
fitem := NIL;
fwaschanged := FALSE;
end;
destructor TExtendedItem.Destroy;
begin
freeAndNil(fdescription);
inherited;
end;
procedure TExtendedItem.Assign(Source: TPersistent);
begin
if (source is TExtendedItem) then
begin
fdescription.Assign(TExtendedItem(source).fdescription);
fwaschanged := TRUE;
end
else
inherited assign(source);
end;
procedure TExtendedItem.SetDescription(const Value: TStrings);
begin
fdescription.assign(Value);
fwaschanged := true;
end;
Für die Collection:
Delphi-Quellcode:
constructor TExtendedItems.Create(AMenu: TExtendedMenu);
begin
Inherited Create(TExtendedItem);
fExtendedMenu := AMenu;
end;