TLinkedTree
From Ultibo.org
Return to Unit UltiboClasses
Description
To be documented
Class definitions
TLinkedTree = class(TObject)
Note: A Tree of TTreeObjects with automatic Prev/Next etc Links
Linked Tree which does not Free nodes on Destroy | |
constructor Create;
|
|
destructor Destroy; override;
|
|
private
| |
FCount:Integer;
|
|
FFirst:TTreeObject;
|
|
FLast:TTreeObject;
|
|
function GetCount:Integer;
|
|
function Link(AValue,AParent:TTreeObject):Boolean;
|
|
function LinkEx(APrev,AValue,AParent:TTreeObject):Boolean;
|
|
function Unlink(AValue:TTreeObject):Boolean;
|
|
public
| |
property Count:Integer read GetCount;
|
|
property Root:TTreeObject read FFirst;
|
|
property First:TTreeObject read FFirst;
|
|
property Last:TTreeObject read FLast;
|
|
function Add(AValue,AParent:TTreeObject):Boolean; virtual;
|
|
function Remove(AValue:TTreeObject):Boolean; virtual;
|
|
function Insert(APrev,AValue,AParent:TTreeObject):Boolean; virtual;
|
|
procedure Move(AValue,AParent:TTreeObject); virtual;
|
|
procedure Clear; virtual;
|
|
function FirstChild(AParent:TTreeObject):TTreeObject;
|
|
function LastChild(AParent:TTreeObject):TTreeObject;
|
Function declarations
constructor TLinkedTree.Create;
Description: To be documented
Note | None documented |
---|
destructor TLinkedTree.Destroy;
Description: To be documented
Note | None documented |
---|
function TLinkedTree.GetCount:Integer;
Description: To be documented
Note | None documented |
---|
function TLinkedTree.Link(AValue,AParent:TTreeObject):Boolean;
Description: To be documented
Note | None documented |
---|
function TLinkedTree.LinkEx(APrev,AValue,AParent:TTreeObject):Boolean;
Description: Link AValue after APrev Sibling and Adjust FirstChild/LastChild/Prev/Next
Note | If APrev is nil then Link as first child in parent or first value if Parent is nil |
---|
function TLinkedTree.Unlink(AValue:TTreeObject):Boolean;
Description: To be documented
Note | None documented |
---|
function TLinkedTree.Add(AValue,AParent:TTreeObject):Boolean;
Description: Add AValue to List and Link with Parent and Siblings
Note | None documented |
---|
function TLinkedTree.Remove(AValue:TTreeObject):Boolean;
Description: Unlink AValue from Parent and Siblings, Remove from List
Note | None documented |
---|
function TLinkedTree.Insert(APrev,AValue,AParent:TTreeObject):Boolean;
Description: To be documented
Note | None documented |
---|
procedure TLinkedTree.Move(AValue,AParent:TTreeObject);
Description: To be documented
Note | None documented |
---|
procedure TLinkedTree.Clear;
Description: To be documented
Note | None documented |
---|
function TLinkedTree.FirstChild(AParent:TTreeObject):TTreeObject;
Description: To be documented
Note | None documented |
---|
function TLinkedTree.LastChild(AParent:TTreeObject):TTreeObject;
Description: To be documented
Note | None documented |
---|
Return to Unit Reference