function getlastchild(): tyunode;
function getnext: tyunode;
function getprev: tyunode;
function getfirstbrother(): tyunode;
function getlastbrother(): tyunode;
procedure moveto(destination: tyunode; mode: tyunodeattachmode);
procedure delete();
property level: integer read getlevel;
property parent: tyunode read getparent;
destructor destroy();override;
end;
tyutree = class(tobject)
private
ffirstnode: tyunode;
public
function add(brother: tyunode):tyunode;
function addfirst(brother: tyunode):tyunode;
function addchild(parent: tyunode):tyunode;
function addchildfirst(parent: tyunode):tyunode;
function insert(brother: tyunode):tyunode;