JNode is a class that allows you to create nodes, normaly used as "leaves" of object-trees. Often used in conjunction with the JTree class.
Get and Set Methods
Properties which do not have specific get or set methods listed here can be retrieved or set using the inherited JObject->get method.
|Get method||Set method||Description||Property|
|getParent||setParent||Gets/Sets the parent of the Node. The parent should also be a JNode object.|
|addChild||Adds a child to the node. Should also be a JNode object.|
|getChildren||Returns array of all Child-Nodes of this node|
|hasChildren||Returns true, if this node has children|
jimport( 'joomla.base.tree' );
JTree and JNode can be used to create and process simple tree structures. Let's see how this works for JNode with a simple example.
We want to create the Family Tree of the Smiths. Granny Barbara has two daughters. Stefanie and Aunti Sue. Stefanie has two children, Peter and Stewie. Auntie Sue doesn't have children.
Let's take a look how we can represent this familiy in an object tree.
$barbara = new JNode(); $stefanie = new JNode(); $sue = new JNode(); $peter = new JNode(); $stewie = new JNode(); //Granny Barbara has two children, stefanie, and sue $barbara->addChild($stefanie); $barbara->addChild($sue); /* * Sometimes we want declare parent-child relationships the other way around. * We can also do that */ $peter->setParent($stefanie); $stewie->setParent($stefanie);