org.apache.myfaces.custom.tree

Class HtmlTree

Implemented Interfaces:
TreeModelListener

public class HtmlTree
extends HtmlPanelGroup
implements TreeModelListener

Tree implementation based on javax.swing.JTree.

The tree model is assigned by using a value binding named model and is not stored in view state.

A hierarchy of HtmlTreeNodeobjects is used to represent the current expanded state of the tree. The root node is held as a faces named rootNode.

Version:
$Revision: 169651 $ $Date: 2005-05-11 18:14:23 +0200 (Wed, 11 May 2005) $
Author:
Oliver Rossmueller

Field Summary

static int
DEFAULT_EXPIRE_LISTENERS

Constructor Summary

HtmlTree()
Default constructor.

Method Summary

void
addToModelListeners()
void
addTreeSelectionListener(TreeSelectionListener listener)
void
collapseAll()
void
collapsePath(TreePath path, FacesContext context)
Ensures that the node identified by the specified path is collapsed and viewable.
String
createUniqueId(FacesContext context)
void
decode(FacesContext context)
void
encodeBegin(FacesContext context)
void
encodeEnd(FacesContext context)
boolean
equals(Object obj)
void
expandAll()
void
expandPath(TreePath path, FacesContext context)
Ensures that the node identified by the specified path is expanded and viewable.
String
getColumnClasses()
static String
getDefaultImagePath(String relativePathInResourceFolder)
long
getExpireListeners()
String
getFamily()
String
getIconChildFirst()
String
getIconChildLast()
String
getIconChildMiddle()
String
getIconClass()
String
getIconLine()
String
getIconNodeClose()
String
getIconNodeCloseFirst()
String
getIconNodeCloseLast()
String
getIconNodeCloseMiddle()
String
getIconNodeOpen()
String
getIconNodeOpenFirst()
String
getIconNodeOpenLast()
String
getIconNodeOpenMiddle()
String
getIconNoline()
IconProvider
getIconProvider()
TreeModel
getModel(FacesContext context)
String
getNodeClass()
HtmlTreeNode
getRootNode()
String
getRowClasses()
String
getSelectedNodeClass()
TreePath
getSelectionPath()
String
getStyleClass()
String
getVar()
int
hashCode()
boolean
isExpanded(TreePath path, FacesContext context)
void
processDecodes(FacesContext context)
void
processUpdates(FacesContext context)
void
processValidators(FacesContext context)
void
restoreItemStates(FacesContext facesContext, UIViewRoot previousRoot)
void
restoreState(FacesContext context, Object state)
Object
saveState(FacesContext context)
void
selectionChanged(HtmlTreeNode node)
void
setColumnClasses(String columnClasses)
void
setExpireListeners(long expireListeners)
void
setIconChildFirst(String iconChildFirst)
void
setIconChildLast(String iconChildLast)
void
setIconChildMiddle(String iconChildMiddle)
void
setIconClass(String iconClass)
void
setIconLine(String iconLine)
void
setIconNodeClose(String iconNodeClose)
void
setIconNodeCloseFirst(String iconNodeCloseFirst)
void
setIconNodeCloseLast(String iconNodeCloseLast)
void
setIconNodeCloseMiddle(String iconNodeCloseMiddle)
void
setIconNodeOpen(String iconNodeOpen)
void
setIconNodeOpenFirst(String iconNodeOpenFirst)
void
setIconNodeOpenLast(String iconNodeOpenLast)
void
setIconNodeOpenMiddle(String iconNodeOpenMiddle)
void
setIconNoline(String iconNoline)
void
setIconProvider(IconProvider iconProvider)
void
setNodeClass(String nodeClass)
void
setRowClasses(String rowClasses)
void
setSelectedNodeClass(String selectedNodeClass)
void
setStyleClass(String styleClass)
void
setVar(String var)
void
treeNodesChanged(TreeModelEvent e)
Invoked after a node (or a set of siblings) has changed in some way.
void
treeNodesInserted(TreeModelEvent e)
Invoked after nodes have been inserted into the tree.

Use e.getPath() to get the parent of the new node(s).

void
treeNodesRemoved(TreeModelEvent e)
Invoked after nodes have been removed from the tree.
void
treeStructureChanged(TreeModelEvent e)
Invoked after the tree has drastically changed structure from a given node down.

Field Details

DEFAULT_EXPIRE_LISTENERS

public static final int DEFAULT_EXPIRE_LISTENERS
Field Value:
28800000

Constructor Details

HtmlTree

public HtmlTree()
Default constructor.

Method Details

addToModelListeners

public void addToModelListeners()

addTreeSelectionListener

public void addTreeSelectionListener(TreeSelectionListener listener)

collapseAll

public void collapseAll()

collapsePath

public void collapsePath(TreePath path,
                         FacesContext context)
Ensures that the node identified by the specified path is collapsed and viewable.
Parameters:
path - the TreePath identifying a node

createUniqueId

public String createUniqueId(FacesContext context)

decode

public void decode(FacesContext context)

encodeBegin

public void encodeBegin(FacesContext context)
            throws IOException

encodeEnd

public void encodeEnd(FacesContext context)
            throws IOException

equals

public boolean equals(Object obj)

expandAll

public void expandAll()

expandPath

public void expandPath(TreePath path,
                       FacesContext context)
Ensures that the node identified by the specified path is expanded and viewable. If the last item in the path is a leaf, this will have no effect.
Parameters:
path - the TreePath identifying a node

getColumnClasses

public String getColumnClasses()
Returns:
Returns the columnClasses.

getDefaultImagePath

public static String getDefaultImagePath(String relativePathInResourceFolder)

getExpireListeners

public long getExpireListeners()

getFamily

public String getFamily()

getIconChildFirst

public String getIconChildFirst()

getIconChildLast

public String getIconChildLast()

getIconChildMiddle

public String getIconChildMiddle()

getIconClass

public String getIconClass()

getIconLine

public String getIconLine()

getIconNodeClose

public String getIconNodeClose()

getIconNodeCloseFirst

public String getIconNodeCloseFirst()

getIconNodeCloseLast

public String getIconNodeCloseLast()

getIconNodeCloseMiddle

public String getIconNodeCloseMiddle()

getIconNodeOpen

public String getIconNodeOpen()

getIconNodeOpenFirst

public String getIconNodeOpenFirst()

getIconNodeOpenLast

public String getIconNodeOpenLast()

getIconNodeOpenMiddle

public String getIconNodeOpenMiddle()

getIconNoline

public String getIconNoline()

getIconProvider

public IconProvider getIconProvider()

getModel

public TreeModel getModel(FacesContext context)

getNodeClass

public String getNodeClass()

getRootNode

public HtmlTreeNode getRootNode()

getRowClasses

public String getRowClasses()
Returns:
Returns the rowClasses.

getSelectedNodeClass

public String getSelectedNodeClass()
Returns:
Returns the selectedNodeClass.

getSelectionPath

public TreePath getSelectionPath()

getStyleClass

public String getStyleClass()

getVar

public String getVar()
Returns:
Returns the var.

hashCode

public int hashCode()

isExpanded

public boolean isExpanded(TreePath path,
                          FacesContext context)

processDecodes

public void processDecodes(FacesContext context)

processUpdates

public void processUpdates(FacesContext context)

processValidators

public void processValidators(FacesContext context)

restoreItemStates

public void restoreItemStates(FacesContext facesContext,
                              UIViewRoot previousRoot)

restoreState

public void restoreState(FacesContext context,
                         Object state)

saveState

public Object saveState(FacesContext context)

selectionChanged

public void selectionChanged(HtmlTreeNode node)

setColumnClasses

public void setColumnClasses(String columnClasses)
Parameters:
columnClasses - The columnClasses to set.

setExpireListeners

public void setExpireListeners(long expireListeners)

setIconChildFirst

public void setIconChildFirst(String iconChildFirst)

setIconChildLast

public void setIconChildLast(String iconChildLast)

setIconChildMiddle

public void setIconChildMiddle(String iconChildMiddle)

setIconClass

public void setIconClass(String iconClass)

setIconLine

public void setIconLine(String iconLine)

setIconNodeClose

public void setIconNodeClose(String iconNodeClose)

setIconNodeCloseFirst

public void setIconNodeCloseFirst(String iconNodeCloseFirst)

setIconNodeCloseLast

public void setIconNodeCloseLast(String iconNodeCloseLast)

setIconNodeCloseMiddle

public void setIconNodeCloseMiddle(String iconNodeCloseMiddle)

setIconNodeOpen

public void setIconNodeOpen(String iconNodeOpen)

setIconNodeOpenFirst

public void setIconNodeOpenFirst(String iconNodeOpenFirst)

setIconNodeOpenLast

public void setIconNodeOpenLast(String iconNodeOpenLast)

setIconNodeOpenMiddle

public void setIconNodeOpenMiddle(String iconNodeOpenMiddle)

setIconNoline

public void setIconNoline(String iconNoline)

setIconProvider

public void setIconProvider(IconProvider iconProvider)

setNodeClass

public void setNodeClass(String nodeClass)

setRowClasses

public void setRowClasses(String rowClasses)
Parameters:
rowClasses - The rowClasses to set.

setSelectedNodeClass

public void setSelectedNodeClass(String selectedNodeClass)
Parameters:
selectedNodeClass - The selectedNodeClass to set.

setStyleClass

public void setStyleClass(String styleClass)

setVar

public void setVar(String var)
Parameters:
var - The var to set.

treeNodesChanged

public void treeNodesChanged(TreeModelEvent e)
Invoked after a node (or a set of siblings) has changed in some way. The node(s) have not changed locations in the tree or altered their children arrays, but other attributes have changed and may affect presentation. Example: the name of a file has changed, but it is in the same location in the file system.

To indicate the root has changed, childIndices and children will be null.

Use e.getPath() to get the parent of the changed node(s). e.getChildIndices() returns the index(es) of the changed node(s).

Specified by:
treeNodesChanged in interface TreeModelListener

treeNodesInserted

public void treeNodesInserted(TreeModelEvent e)
Invoked after nodes have been inserted into the tree.

Use e.getPath() to get the parent of the new node(s). e.getChildIndices() returns the index(es) of the new node(s) in ascending order.

Specified by:
treeNodesInserted in interface TreeModelListener

treeNodesRemoved

public void treeNodesRemoved(TreeModelEvent e)
Invoked after nodes have been removed from the tree. Note that if a subtree is removed from the tree, this method may only be invoked once for the root of the removed subtree, not once for each individual set of siblings removed.

Use e.getPath() to get the former parent of the deleted node(s). e.getChildIndices() returns, in ascending order, the index(es) the node(s) had before being deleted.

Specified by:
treeNodesRemoved in interface TreeModelListener

treeStructureChanged

public void treeStructureChanged(TreeModelEvent e)
Invoked after the tree has drastically changed structure from a given node down. If the path returned by e.getPath() is of length one and the first element does not identify the current root node the first element should become the new root of the tree.

Use e.getPath() to get the path to the node. e.getChildIndices() returns null.

Specified by:
treeStructureChanged in interface TreeModelListener