com.smartgwt.client.widgets.tree
Class TreeNode

java.lang.Object
  extended by com.smartgwt.client.core.JsObject
      extended by com.smartgwt.client.core.DataClass
          extended by com.smartgwt.client.core.RefDataClass
              extended by com.smartgwt.client.data.Record
                  extended by com.smartgwt.client.widgets.grid.ListGridRecord
                      extended by com.smartgwt.client.widgets.tree.TreeNode
Direct Known Subclasses:
PaletteNode

public class TreeNode
extends ListGridRecord

Every node in the tree is represented by a TreeNode object which is an object literal with a set of properties that configure the node.

When a Tree is supplied as data to TreeGrid, you can also set properties from ListGridRecord on the TreeNode (e.g. setting enabled:false on the node).


Field Summary
 
Fields inherited from class com.smartgwt.client.core.RefDataClass
id
 
Fields inherited from class com.smartgwt.client.core.DataClass
factoryCreated, factoryProperties
 
Fields inherited from class com.smartgwt.client.core.JsObject
jsObj
 
Constructor Summary
TreeNode()
           
TreeNode(com.google.gwt.core.client.JavaScriptObject jsObj)
           
TreeNode(java.lang.String name)
          Constructor
TreeNode(java.lang.String name, TreeNode... children)
          Constructor
 
Method Summary
 java.lang.Boolean getCanAcceptDrop()
          Governs whether dragged data (typically other treeNodes) may be dropped over this node.
 java.lang.Boolean getCanDrag()
          Governs whether this node can be dragged.
 java.lang.Boolean getEnabled()
          Default property name denoting whether this record is enabled.
 java.lang.String getIcon()
          This Property allows the developer to customize the icon displayed next to a node.
 java.lang.String getName()
          Provides a name for the node that is unique among its immediate siblings, thus allowing a unique path to be used to identify the node, similar to a file system.
static TreeNode getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)
           
 java.lang.Boolean getShowDropIcon()
          For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether a drop state icon should be displayed when the user drop-hovers over this folder.
Set node.showDropIcon to true to show the drop state icon, or false to suppress this.
If not specified, this behavior is determined by showCustomIconDrop for this node.
 java.lang.Boolean getShowOpenIcon()
          For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether an open state icon should be displayed when the folder is open.
 java.lang.String getTitle()
          The title of the node as it should appear next to the node icon in the Tree.
 void setCanAcceptDrop(java.lang.Boolean canAcceptDrop)
          Governs whether dragged data (typically other treeNodes) may be dropped over this node.
 void setCanDrag(java.lang.Boolean canDrag)
          Governs whether this node can be dragged.
 void setChildren(TreeNode[] children)
          For trees with the modelType "children", this property specifies the children of this TreeNode.
 void setEnabled(java.lang.Boolean enabled)
          Default property name denoting whether this record is enabled.
 void setIcon(java.lang.String icon)
          This Property allows the developer to customize the icon displayed next to a node.
 void setID(java.lang.String id)
          For trees with modelType "parent", this property specifies the unique ID of this node.
 void setIsFolder(boolean isFolder)
          Set to true to explicitly mark this node as a folder.
 void setName(java.lang.String name)
          Provides a name for the node that is unique among its immediate siblings, thus allowing a unique path to be used to identify the node, similar to a file system.
 void setParentID(java.lang.String parentID)
          For trees with modelType "parent", this property specifies unique parent ID of this node.
 void setShowDropIcon(java.lang.Boolean showDropIcon)
          For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether a drop state icon should be displayed when the user drop-hovers over this folder.
Set node.showDropIcon to true to show the drop state icon, or false to suppress this.
If not specified, this behavior is determined by showCustomIconDrop for this node.
 void setShowOpenIcon(java.lang.Boolean showOpenIcon)
          For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether an open state icon should be displayed when the folder is open.
 void setTitle(java.lang.String title)
          The title of the node as it should appear next to the node icon in the Tree.
 
Methods inherited from class com.smartgwt.client.widgets.grid.ListGridRecord
get_baseStyle, get_canEdit, get_canRemove, getBackgroundComponent, getCanExpand, getCanSelect, getCustomStyle, getDetailDS, getIncludeInSummary, getIsGridSummary, getIsGroupSummary, getIsSeparator, getLinkText, getSingleCellValue, set_baseStyle, set_canEdit, set_canRemove, setBackgroundComponent, setCanExpand, setCanSelect, setCustomStyle, setDetailDS, setIncludeInSummary, setIsGridSummary, setIsGroupSummary, setIsSeparator, setLinkText, setSingleCellValue
 
Methods inherited from class com.smartgwt.client.data.Record
convertToRecordArray, copyAttributes, copyAttributesInto, getAttributeAsRecordArray, getAttributeAsRecordList, isARecord, toMap
 
Methods inherited from class com.smartgwt.client.core.RefDataClass
getRef, getRef, internalSetID
 
Methods inherited from class com.smartgwt.client.core.DataClass
applyFactoryProperties, doAddHandler, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsDoubleArray, getAttributeAsFloat, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated
 
Methods inherited from class com.smartgwt.client.core.JsObject
equals, getJsObj, hashCode, isCreated, setJavaScriptObject, setJsObj
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TreeNode

public TreeNode()

TreeNode

public TreeNode(com.google.gwt.core.client.JavaScriptObject jsObj)

TreeNode

public TreeNode(java.lang.String name)
Constructor

Parameters:
name - the name

TreeNode

public TreeNode(java.lang.String name,
                TreeNode... children)
Constructor

Parameters:
name - the name
children - the children nodes
Method Detail

getOrCreateRef

public static TreeNode getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

setCanAcceptDrop

public void setCanAcceptDrop(java.lang.Boolean canAcceptDrop)
Governs whether dragged data (typically other treeNodes) may be dropped over this node. Only has an effect if this node is displayed in a TreeGrid where canAcceptDroppedRecords, canReorderRecords or canReparentNodes is true.

Note : This is an advanced setting

Overrides:
setCanAcceptDrop in class ListGridRecord
Parameters:
canAcceptDrop - Default value is null

getCanAcceptDrop

public java.lang.Boolean getCanAcceptDrop()
Governs whether dragged data (typically other treeNodes) may be dropped over this node. Only has an effect if this node is displayed in a TreeGrid where canAcceptDroppedRecords, canReorderRecords or canReparentNodes is true.

Overrides:
getCanAcceptDrop in class ListGridRecord
Returns:
Boolean

setCanDrag

public void setCanDrag(java.lang.Boolean canDrag)
Governs whether this node can be dragged. Only has an effect if this node is displayed in a TreeGrid where canDragRecordsOut, canReorderRecords or canReparentNodes is true.

Note : This is an advanced setting

Overrides:
setCanDrag in class ListGridRecord
Parameters:
canDrag - Default value is null

getCanDrag

public java.lang.Boolean getCanDrag()
Governs whether this node can be dragged. Only has an effect if this node is displayed in a TreeGrid where canDragRecordsOut, canReorderRecords or canReparentNodes is true.

Overrides:
getCanDrag in class ListGridRecord
Returns:
Boolean

setEnabled

public void setEnabled(java.lang.Boolean enabled)
Default property name denoting whether this record is enabled. Property name may be modified for some grid via recordEnabledProperty.

Overrides:
setEnabled in class ListGridRecord
Parameters:
enabled - Default value is null
See Also:
Disabled rows Example

getEnabled

public java.lang.Boolean getEnabled()
Default property name denoting whether this record is enabled. Property name may be modified for some grid via recordEnabledProperty.

Overrides:
getEnabled in class ListGridRecord
Returns:
Boolean
See Also:
Disabled rows Example

setIcon

public void setIcon(java.lang.String icon)
This Property allows the developer to customize the icon displayed next to a node. Set node.icon to the URL of the desired icon to display and it will be shown instead of the standard nodeIcon for this node.
Note that if showOpenIcon and/or showDropIcon is true for this node, customized icons for folder nodes will be appended with the openIconSuffix or dropIconSuffix suffixes on state change as with the standard folderIcon for this treeGrid. Also note that for custom folder icons, the closedIconSuffix will never be appended.

You can change the name of this property by setting customIconProperty.

Parameters:
icon - See SCImgURL . Default value is null

getIcon

public java.lang.String getIcon()
This Property allows the developer to customize the icon displayed next to a node. Set node.icon to the URL of the desired icon to display and it will be shown instead of the standard nodeIcon for this node.
Note that if showOpenIcon and/or showDropIcon is true for this node, customized icons for folder nodes will be appended with the openIconSuffix or dropIconSuffix suffixes on state change as with the standard folderIcon for this treeGrid. Also note that for custom folder icons, the closedIconSuffix will never be appended.

You can change the name of this property by setting customIconProperty.

Returns:
See SCImgURL

setName

public void setName(java.lang.String name)
Provides a name for the node that is unique among its immediate siblings, thus allowing a unique path to be used to identify the node, similar to a file system. See Tree.getPath.

If the nameProperty is not set on a given node, the id will be used instead. If this is also missing, Tree.getName and Tree.getPath will auto-generate a unique name for you. Thus names are not required, but if the dataset you are using already has usable names for each node, using them can make APIs such as Tree.find more useful. Alternatively, if your dataset has unique ids consider providing those as id.

If a value provided for the nameProperty of a node (e.g. node.name) is not a string, it will be converted to a string by the Tree via ""+value.

This property is also used as the default title for the node (see Tree.getTitle) if title is not specified.

Note: the name of this property can be changed by setting nameProperty.

Parameters:
name - Default value is null, but see below
See Also:
Tree.setNameProperty(java.lang.String), Tree.setPathDelim(java.lang.String), Tree.getPath(com.smartgwt.client.widgets.tree.TreeNode), Tree.getTitle(com.smartgwt.client.widgets.tree.TreeNode)

getName

public java.lang.String getName()
Provides a name for the node that is unique among its immediate siblings, thus allowing a unique path to be used to identify the node, similar to a file system. See Tree.getPath.

If the nameProperty is not set on a given node, the id will be used instead. If this is also missing, Tree.getName and Tree.getPath will auto-generate a unique name for you. Thus names are not required, but if the dataset you are using already has usable names for each node, using them can make APIs such as Tree.find more useful. Alternatively, if your dataset has unique ids consider providing those as id.

If a value provided for the nameProperty of a node (e.g. node.name) is not a string, it will be converted to a string by the Tree via ""+value.

This property is also used as the default title for the node (see Tree.getTitle) if title is not specified.

Note: the name of this property can be changed by setting nameProperty.

Returns:
String
See Also:
Tree.getNameProperty(), Tree.getPathDelim(), Tree.getPath(com.smartgwt.client.widgets.tree.TreeNode), Tree.getTitle(com.smartgwt.client.widgets.tree.TreeNode)

setShowDropIcon

public void setShowDropIcon(java.lang.Boolean showDropIcon)
For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether a drop state icon should be displayed when the user drop-hovers over this folder.
Set node.showDropIcon to true to show the drop state icon, or false to suppress this.
If not specified, this behavior is determined by showCustomIconDrop for this node.

You can change the name of this property by setting customIconDropProperty.

Note : This is an advanced setting

Parameters:
showDropIcon - Default value is false
See Also:
TreeGrid.setCustomIconProperty(java.lang.String), TreeGrid.setShowCustomIconDrop(java.lang.Boolean)

getShowDropIcon

public java.lang.Boolean getShowDropIcon()
For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether a drop state icon should be displayed when the user drop-hovers over this folder.
Set node.showDropIcon to true to show the drop state icon, or false to suppress this.
If not specified, this behavior is determined by showCustomIconDrop for this node.

You can change the name of this property by setting customIconDropProperty.

Returns:
Boolean
See Also:
TreeGrid.getCustomIconProperty(), TreeGrid.getShowCustomIconDrop()

setShowOpenIcon

public void setShowOpenIcon(java.lang.Boolean showOpenIcon)
For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether an open state icon should be displayed when the folder is open. Set node.showOpenIcon to true to show the open state icons, or false to suppress this.
If not specified, this behavior is determined by showCustomIconOpen for this node.

You can change the name of this property by setting customIconOpenProperty.

Note : This is an advanced setting

Parameters:
showOpenIcon - Default value is false
See Also:
TreeGrid.setCustomIconProperty(java.lang.String), TreeGrid.setShowCustomIconOpen(java.lang.Boolean)

getShowOpenIcon

public java.lang.Boolean getShowOpenIcon()
For folder nodes showing custom icons (set via icon), this property allows the developer to specify on a per-node basis whether an open state icon should be displayed when the folder is open. Set node.showOpenIcon to true to show the open state icons, or false to suppress this.
If not specified, this behavior is determined by showCustomIconOpen for this node.

You can change the name of this property by setting customIconOpenProperty.

Returns:
Boolean
See Also:
TreeGrid.getCustomIconProperty(), TreeGrid.getShowCustomIconOpen()

setTitle

public void setTitle(java.lang.String title)
The title of the node as it should appear next to the node icon in the Tree. If left unset, the value of name is used by default. See the description in Tree.getTitle for full details.

Note: the name of this property can be changed by setting titleProperty.

Parameters:
title - Default value is null
See Also:
Tree.setTitleProperty(java.lang.String), Tree.getTitle(com.smartgwt.client.widgets.tree.TreeNode)

getTitle

public java.lang.String getTitle()
The title of the node as it should appear next to the node icon in the Tree. If left unset, the value of name is used by default. See the description in Tree.getTitle for full details.

Note: the name of this property can be changed by setting titleProperty.

Returns:
String
See Also:
Tree.getTitleProperty(), Tree.getTitle(com.smartgwt.client.widgets.tree.TreeNode)

setID

public void setID(java.lang.String id)
For trees with modelType "parent", this property specifies the unique ID of this node. The unique ID of a node, together with the unique ID of its parent (see parentId) is used by Tree.linkNodes(com.smartgwt.client.widgets.tree.TreeNode[]) to link a list of nodes into a tree.

Note: the name of this property can be changed by setting idField.

Parameters:
id - id Default value is null

setParentID

public void setParentID(java.lang.String parentID)
For trees with modelType "parent", this property specifies unique parent ID of this node. The unique ID of a node, together with the unique ID of its parent is used by Tree.linkNodes(com.smartgwt.client.widgets.tree.TreeNode[]) to link a list of nodes into a tree.

Note: the name of this property can be changed by setting parentIdField.

Parameters:
parentId - parentId Default value is null

setIsFolder

public void setIsFolder(boolean isFolder)
Set to true to explicitly mark this node as a folder. See Tree.isFolder(com.smartgwt.client.widgets.tree.TreeNode) for a full description of how the Tree determines whether a node is a folder or not.

Note: the name of this property can be changed by setting isFolderProperty.

Parameters:
isFolder - isFolder Default value is null

setChildren

public void setChildren(TreeNode[] children)
For trees with the modelType "children", this property specifies the children of this TreeNode.

Note: the name of this property can be changed by setting childrenProperty

Parameters:
children - children Default value is null