* insertbefore added

This commit is contained in:
peter 2003-09-29 20:52:50 +00:00
parent 522e06bf43
commit 409b982075

View File

@ -78,6 +78,8 @@ interface
procedure Clear;
{ inserts an Item }
procedure Insert(Item:TLinkedListItem);
{ inserts an Item before Loc }
procedure InsertBefore(Item,Loc : TLinkedListItem);
{ inserts an Item after Loc }
procedure InsertAfter(Item,Loc : TLinkedListItem);
{ concats an Item }
@ -476,6 +478,20 @@ end;
end;
procedure TLinkedList.InsertBefore(Item,Loc : TLinkedListItem);
begin
Item.Previous:=Loc.Previous;
Item.Next:=Loc;
Loc.Previous:=Item;
if assigned(Item.Previous) then
Item.Previous.Next:=Item
else
{ if we've no next item, we've to adjust FFist }
FFirst:=Item;
inc(FCount);
end;
procedure TLinkedList.InsertAfter(Item,Loc : TLinkedListItem);
begin
Item.Next:=Loc.Next;
@ -1868,7 +1884,10 @@ end;
end.
{
$Log$
Revision 1.24 2003-09-24 13:02:10 marco
Revision 1.25 2003-09-29 20:52:50 peter
* insertbefore added
Revision 1.24 2003/09/24 13:02:10 marco
* (Peter) patch to fix snapshot
Revision 1.23 2003/06/09 12:19:34 peter