unit _TreeElement; interface type TTreeElement = class protected FConnectionID: Integer; function GetChildCount: Integer; virtual; abstract; function GetChild(ID: Integer): TTreeElement; virtual; abstract; function GetCaption: String; virtual; abstract; function GetType: String; virtual; abstract; public property ConnectionID: Integer read FConnectionID; property ChildCount: Integer read GetChildCount; property Child[ID: Integer]: TTreeElement read GetChild; property Caption: String read GetCaption; property VType: String read GetType; end; implementation end.