JNode

From Joomla! Documentation
(Difference between revisions)
Jump to: navigation, search
(Examples)
(Bulk upload by Doxiki2)
Line 1: Line 1:
'''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.
+
This class is available in the following Joomla versions:-
 
+
<splist showpath=notparent />
===Availability===
+
<noinclude>[[Category:Framework]][[Category:JNode]]</noinclude>
{{JVer|1.5|From Joomla 1.5}} {{JVer|1.6|Joomla 1.6}}
+
 
+
===Defined in===
+
/libraries/joomla/base/tree.php
+
 
+
===Extends===
+
* [[JObject]]
+
 
+
 
+
===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|JObject->get]] method.
+
{| class="wikitable"
+
|-
+
!Get method
+
!Set method
+
!Description
+
!Property
+
|-
+
|[[JNode/getParent|getParent]]
+
|[[JNode/setParent|setParent]]
+
|Gets/Sets the parent of the Node. The parent should also be a JNode object.
+
|<code>$_parent</code>
+
|}
+
 
+
===Other Methods===
+
{| class="wikitable"
+
|-
+
!Method name
+
!Description
+
|-
+
|[[JNode/__construct|__construct]]
+
|Constructor
+
|-
+
|[[JNode/addChild|addChild]]
+
|Adds a child to the node. Should also be a JNode object.
+
|-
+
|[[JNode/getChildren|getChildren]]
+
|Returns array of all Child-Nodes of this node
+
|-
+
|[[JNode/hasChildren|hasChildren]]
+
|Returns true, if this node has children
+
|}
+
 
+
===Importing===
+
<source lang="php">jimport( 'joomla.base.tree' );</source>
+
 
+
===See also===
+
* [http://api.joomla.org/Joomla-Framework/Base/JNode.html JNode on api.joomla.org]
+
* [[JTree]]
+
<noinclude>[[Category:Development]][[Category:Framework]][[Category:JNode]]</noinclude>
+
 
+
==Examples ==
+
 
+
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 represent the family structure 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.
+
<source lang="php">
+
$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);
+
</source>
+

Revision as of 16:29, 17 April 2011

This class is available in the following Joomla versions:-

Page "JNode" has no subpages to list.
Personal tools
Namespaces

Variants
Actions
Navigation
Joomla! Sites
Toolbox