org.openfaces.component.table
Class TreeTable

java.lang.Object
  extended by UIData
      extended by org.openfaces.component.OUIData
          extended by org.openfaces.component.table.AbstractTable
              extended by org.openfaces.component.table.TreeTable
All Implemented Interfaces:
FilterableComponent, OUIComponent, TableStyles

public class TreeTable
extends AbstractTable

The TreeTable component is used to display hierarchical data in a tabular format. It provides flexible configuration of the tree structure and content and supports such advanced features as sorting, interactive filtering, node selection (both multiple and single), keyboard navigation, and dynamic data loading (using Ajax). You can also specify a node preloading mode for expanding TreeTable nodes on the client or server side.


Nested Class Summary
 class TreeTable.NodeComparator
           
 
Field Summary
static java.lang.String COMPONENT_FAMILY
           
static java.lang.String COMPONENT_TYPE
           
 
Constructor Summary
TreeTable()
           
 
Method Summary
 void acceptNewExpandedRowIndexes(java.util.Set indexes)
           
 void encodeBegin(FacesContext context)
          Perform necessary actions when rendering of this component starts, before delegating to the inherited implementation which calls the associated renderer's encodeBegin method.
 void encodeChildren(FacesContext context)
           
 void encodeEnd(FacesContext context)
           
 ExpansionState getExpansionState()
           
 java.lang.String getFamily()
           
 java.lang.String getFilterAcceptedRowClass()
           
 java.lang.String getFilterAcceptedRowStyle()
           
 java.lang.String getFilterSubsidiaryRowClass()
           
 java.lang.String getFilterSubsidiaryRowStyle()
           
 int getMaxLevel()
           
 java.lang.Object getNodeData(int rowIndex)
           
 java.util.Map<java.lang.Object,NodeInfoForRow> getNodeExpansionDataMap(FacesContext context)
           
 boolean getNodeHasChildren()
           
 java.lang.String getNodeHasChildrenVar()
           
 java.lang.Object getNodeKey()
           
 java.lang.Object getNodeKey(int rowIndex)
           
 TreePath getNodeKeyPath()
           
 TreePath getNodeKeyPath(int rowIndex)
           
 int getNodeLevel()
           
 java.lang.String getNodeLevelVar()
           
 TreePath getNodePath()
           
 TreePath getNodePath(int rowIndex)
           
 java.lang.String getNodePathVar()
           
 PreloadedNodes getPreloadedNodes()
           
 int getRowIndexByClientSuffix(java.lang.String id)
           
 java.util.List getRowListForFiltering(Filter filter)
           
 int getSortLevel()
           
 java.lang.String getTextClass()
           
 java.lang.String getTextStyle()
           
 TreeStructure getTreeStructure()
           
 boolean isDataSourceEmpty()
           
 boolean isFilteringPerformed()
           
 boolean isFoldingEnabled()
           
 boolean isNodeAcceptedByFilters()
           
 boolean isNodeExpanded()
           
 boolean isNodeExpanded(TreePath keyPath)
           
 boolean isNodeInitiallyVisible()
           
 int loadSubNodes(int rowIndex)
           
 void processUpdates(FacesContext context)
           
 void restoreState(FacesContext context, java.lang.Object stateObj)
           
 java.lang.Object saveState(FacesContext context)
           
 void setExpansionState(ExpansionState expansionState)
           
 void setFilterAcceptedRowClass(java.lang.String filterAcceptedRowClass)
           
 void setFilterAcceptedRowStyle(java.lang.String filterAcceptedRowStyle)
           
 void setFilterSubsidiaryRowClass(java.lang.String filterSubsidiaryRowClass)
           
 void setFilterSubsidiaryRowStyle(java.lang.String filterSubsidiaryRowStyle)
           
 void setFoldingEnabled(boolean foldingEnabled)
           
 void setNodeExpanded(TreePath keyPath, boolean expanded)
           
 void setNodeHasChildrenVar(java.lang.String nodeHasChildrenVar)
           
 void setNodeLevelVar(java.lang.String nodeLevelVar)
           
 void setNodePathVar(java.lang.String nodePathVar)
           
 void setPreloadedNodes(PreloadedNodes preloadedNodes)
           
 void setRowIndex(int rowIndex)
          Set the current row index that methods like getRowData use.
 void setSortLevel(int sortLevel)
           
 void setTextClass(java.lang.String textClass)
           
 void setTextStyle(java.lang.String textStyle)
           
 
Methods inherited from class org.openfaces.component.table.AbstractTable
filterChanged, getAlign, getAllColumns, getAllRecordsFilterText, getApplyDefaultStyle, getAutoFilterDelay, getBgcolor, getBodyOddRowClass, getBodyOddRowStyle, getBodyRowClass, getBodyRowStyle, getBodySectionClass, getBodySectionStyle, getBorder, getCellpadding, getCellspacing, getClientId, getColumnIdVar, getColumnIndexVar, getColumnReordering, getColumnResizing, getColumnsOrder, getCommonFooterRowClass, getCommonFooterRowStyle, getCommonFooterSeparator, getCommonHeaderRowClass, getCommonHeaderRowStyle, getCommonHeaderSeparator, getDir, getEmptyRecordsFilterText, getFilteredValueByData, getFilters, getFocusedClass, getFocusedStyle, getFooterHorizSeparator, getFooterRowClass, getFooterRowStyle, getFooterSectionClass, getFooterSectionStyle, getFooterVertSeparator, getHeaderHorizSeparator, getHeaderRowClass, getHeaderRowStyle, getHeaderSectionClass, getHeaderSectionStyle, getHeaderVertSeparator, getHorizontalGridLines, getMultiFooterSeparator, getMultiHeaderSeparator, getNoDataMessage, getNoDataMessageAllowed, getNoDataRowClass, getNoDataRowStyle, getNoFilterDataMessage, getNonEmptyRecordsFilterText, getRenderedColumns, getRolloverRowClass, getRolloverRowStyle, getRules, getScrolling, getSelection, getSortableHeaderClass, getSortableHeaderRolloverClass, getSortableHeaderRolloverStyle, getSortableHeaderStyle, getSortColumnId, getSortColumnIndex, getSortedAscendingImageUrl, getSortedColumnBodyClass, getSortedColumnBodyStyle, getSortedColumnClass, getSortedColumnFooterClass, getSortedColumnFooterStyle, getSortedColumnHeaderClass, getSortedColumnHeaderStyle, getSortedColumnStyle, getSortedDescendingImageUrl, getSubHeaderRowClass, getSubHeaderRowSeparator, getSubHeaderRowStyle, getTabindex, getTotalRowCount, getUseAjax, getValue, getVerticalGridLines, getWidth, invokeBeforeProcessDecodes, invokeBeforeRenderResponse, isSortAscending, processDecodes, processRestoreState, processSaveState, processValidators, setAlign, setAllRecordsFilterText, setApplyDefaultStyle, setAutoFilterDelay, setBgcolor, setBodyOddRowClass, setBodyOddRowStyle, setBodyRowClass, setBodyRowStyle, setBodySectionClass, setBodySectionStyle, setBorder, setCellpadding, setCellspacing, setColumnIdVar, setColumnIndexVar, setColumnsOrder, setCommonFooterRowClass, setCommonFooterRowStyle, setCommonFooterSeparator, setCommonHeaderRowClass, setCommonHeaderRowStyle, setCommonHeaderSeparator, setDir, setEmptyRecordsFilterText, setFocusedClass, setFocusedStyle, setFooterHorizSeparator, setFooterRowClass, setFooterRowStyle, setFooterSectionClass, setFooterSectionStyle, setFooterVertSeparator, setHeaderHorizSeparator, setHeaderRowClass, setHeaderRowStyle, setHeaderSectionClass, setHeaderSectionStyle, setHeaderVertSeparator, setHorizontalGridLines, setId, setMultiFooterSeparator, setMultiHeaderSeparator, setNoDataMessageAllowed, setNoDataRowClass, setNoDataRowStyle, setNonEmptyRecordsFilterText, setParent, setRolloverRowClass, setRolloverRowStyle, setRules, setSelection, setSortableHeaderClass, setSortableHeaderRolloverClass, setSortableHeaderRolloverStyle, setSortableHeaderStyle, setSortAscending, setSortColumnId, setSortColumnIndex, setSortedAscendingImageUrl, setSortedColumnBodyClass, setSortedColumnBodyStyle, setSortedColumnClass, setSortedColumnFooterClass, setSortedColumnFooterStyle, setSortedColumnHeaderClass, setSortedColumnHeaderStyle, setSortedColumnStyle, setSortedDescendingImageUrl, setSubHeaderRowClass, setSubHeaderRowSeparator, setSubHeaderRowStyle, setTabindex, setUseAjax, setValue, setVerticalGridLines, setWidth, toggleSorting, toggleSorting
 
Methods inherited from class org.openfaces.component.OUIData
broadcast, getFirst, getFooter, getHeader, getOnblur, getOnclick, getOncontextmenu, getOndblclick, getOnfocus, getOnkeydown, getOnkeypress, getOnkeyup, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup, getRolloverClass, getRolloverStyle, getRowCount, getRowData, getRowIndex, getRows, getStyle, getStyleClass, getUiDataValue, getVar, isRowAvailable, isRowAvailableAfterRestoring, queueEvent, restoreDescendantComponentStates, saveDescendantComponentStates, setFirst, setFooter, setHeader, setOnblur, setOnclick, setOncontextmenu, setOndblclick, setOnfocus, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setRolloverClass, setRolloverStyle, setRows, setStyle, setStyleClass, setUiDataValue, setValueExpression, setVar
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.openfaces.component.TableStyles
getFooter, getHeader
 
Methods inherited from interface org.openfaces.component.FilterableComponent
getVar
 

Field Detail

COMPONENT_TYPE

public static final java.lang.String COMPONENT_TYPE
See Also:
Constant Field Values

COMPONENT_FAMILY

public static final java.lang.String COMPONENT_FAMILY
See Also:
Constant Field Values
Constructor Detail

TreeTable

public TreeTable()
Method Detail

getFamily

public java.lang.String getFamily()
Overrides:
getFamily in class OUIData

saveState

public java.lang.Object saveState(FacesContext context)
Overrides:
saveState in class AbstractTable

restoreState

public void restoreState(FacesContext context,
                         java.lang.Object stateObj)
Overrides:
restoreState in class AbstractTable

getRowIndexByClientSuffix

public int getRowIndexByClientSuffix(java.lang.String id)
Overrides:
getRowIndexByClientSuffix in class AbstractTable

getExpansionState

public ExpansionState getExpansionState()

setExpansionState

public void setExpansionState(ExpansionState expansionState)

isFoldingEnabled

public boolean isFoldingEnabled()

setFoldingEnabled

public void setFoldingEnabled(boolean foldingEnabled)

getPreloadedNodes

public PreloadedNodes getPreloadedNodes()

setPreloadedNodes

public void setPreloadedNodes(PreloadedNodes preloadedNodes)

getSortLevel

public int getSortLevel()

setSortLevel

public void setSortLevel(int sortLevel)

getNodeLevelVar

public java.lang.String getNodeLevelVar()

setNodeLevelVar

public void setNodeLevelVar(java.lang.String nodeLevelVar)

getNodeHasChildrenVar

public java.lang.String getNodeHasChildrenVar()

setNodeHasChildrenVar

public void setNodeHasChildrenVar(java.lang.String nodeHasChildrenVar)

getNodePathVar

public java.lang.String getNodePathVar()

setNodePathVar

public void setNodePathVar(java.lang.String nodePathVar)

getFilterAcceptedRowStyle

public java.lang.String getFilterAcceptedRowStyle()

setFilterAcceptedRowStyle

public void setFilterAcceptedRowStyle(java.lang.String filterAcceptedRowStyle)

getFilterAcceptedRowClass

public java.lang.String getFilterAcceptedRowClass()

setFilterAcceptedRowClass

public void setFilterAcceptedRowClass(java.lang.String filterAcceptedRowClass)

getFilterSubsidiaryRowStyle

public java.lang.String getFilterSubsidiaryRowStyle()

setFilterSubsidiaryRowStyle

public void setFilterSubsidiaryRowStyle(java.lang.String filterSubsidiaryRowStyle)

getFilterSubsidiaryRowClass

public java.lang.String getFilterSubsidiaryRowClass()

getTextStyle

public java.lang.String getTextStyle()

setTextStyle

public void setTextStyle(java.lang.String textStyle)

getTextClass

public java.lang.String getTextClass()

setTextClass

public void setTextClass(java.lang.String textClass)

setFilterSubsidiaryRowClass

public void setFilterSubsidiaryRowClass(java.lang.String filterSubsidiaryRowClass)

getTreeStructure

public TreeStructure getTreeStructure()

processUpdates

public void processUpdates(FacesContext context)
Overrides:
processUpdates in class AbstractTable

encodeBegin

public void encodeBegin(FacesContext context)
                 throws java.io.IOException
Description copied from class: OUIData
Perform necessary actions when rendering of this component starts, before delegating to the inherited implementation which calls the associated renderer's encodeBegin method.

Overrides:
encodeBegin in class OUIData
Throws:
java.io.IOException

encodeChildren

public void encodeChildren(FacesContext context)
                    throws java.io.IOException
Throws:
java.io.IOException

encodeEnd

public void encodeEnd(FacesContext context)
               throws java.io.IOException
Overrides:
encodeEnd in class OUIData
Throws:
java.io.IOException
See Also:
javax.faces.component.UIComponentBase#encodeEnd(javax.faces.context.FacesContext)

loadSubNodes

public int loadSubNodes(int rowIndex)

getNodeExpansionDataMap

public java.util.Map<java.lang.Object,NodeInfoForRow> getNodeExpansionDataMap(FacesContext context)

acceptNewExpandedRowIndexes

public void acceptNewExpandedRowIndexes(java.util.Set indexes)

getMaxLevel

public int getMaxLevel()

setRowIndex

public void setRowIndex(int rowIndex)
Description copied from class: OUIData
Set the current row index that methods like getRowData use.

Param rowIndex can be -1, meaning "no row".

Overrides:
setRowIndex in class OUIData

getNodeKey

public java.lang.Object getNodeKey()

getNodeKeyPath

public TreePath getNodeKeyPath()

getNodeKey

public java.lang.Object getNodeKey(int rowIndex)

getNodeData

public java.lang.Object getNodeData(int rowIndex)

getNodeLevel

public int getNodeLevel()

getNodePath

public TreePath getNodePath()

getNodePath

public TreePath getNodePath(int rowIndex)

getNodeKeyPath

public TreePath getNodeKeyPath(int rowIndex)

getNodeHasChildren

public boolean getNodeHasChildren()

isNodeExpanded

public boolean isNodeExpanded()

isNodeInitiallyVisible

public boolean isNodeInitiallyVisible()

isNodeAcceptedByFilters

public boolean isNodeAcceptedByFilters()

isFilteringPerformed

public boolean isFilteringPerformed()

isNodeExpanded

public boolean isNodeExpanded(TreePath keyPath)

setNodeExpanded

public void setNodeExpanded(TreePath keyPath,
                            boolean expanded)

getRowListForFiltering

public java.util.List getRowListForFiltering(Filter filter)

isDataSourceEmpty

public boolean isDataSourceEmpty()
Specified by:
isDataSourceEmpty in class AbstractTable


Copyright © 1998-2009 TeamDev Ltd. All Rights Reserved.