jaxx.runtime.swing.nav.tree
Class NavTreeHelper<N extends NavTreeNode<N>>

java.lang.Object
  extended by jaxx.runtime.swing.nav.NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N>,N>
      extended by jaxx.runtime.swing.nav.tree.NavTreeHelper<N>

public class NavTreeHelper<N extends NavTreeNode<N>>
extends NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N>,N>

The implementation of NavHelper base on a JTree component.

Since:
2.1
Author:
tchemit

Field Summary
 
Fields inherited from class jaxx.runtime.swing.nav.NavHelper
childLoadors, dataProvider, expandListener, selectionListener, treeModelListener
 
Constructor Summary
NavTreeHelper()
           
 
Method Summary
 void addSelectionPath(TreePath path)
           
 void addSelectionPaths(TreePath[] paths)
           
protected  DefaultTreeModel createModel(N node, Object... extraArgs)
          Register a new root node.
 void expandPath(TreePath pathToExpand)
           
 N getSelectedNode()
          Obtains the selected node of the registred tree.
 List<N> getSelectedNodes()
          Obtains the selected nodes of the registred tree.
 TreeSelectionModel getSelectionModel()
           
 AbstractNavTreeCellRenderer<DefaultTreeModel,N> getTreeCellRenderer()
          Obtains the AbstractNavTreeCellRenderer renderer of the registred tree.
 boolean isExpanded(TreePath pathToExpand)
           
 void removeSelectionPath(TreePath path)
           
 void removeSelectionPaths(TreePath[] path)
           
 void scrollPathToVisible(TreePath path)
           
 void setSelectionPath(TreePath path)
           
 void setUI(JTree tree, boolean addExpandTreeListener, boolean addOneClickSelectionListener, TreeSelectionListener listener, TreeWillExpandListener willExpandListener)
          Registers the given tree for this helper.
 
Methods inherited from class jaxx.runtime.swing.nav.NavHelper
checkModel, findNode, getBridge, getChildLoador, getChildLoadors, getDataProvider, getModel, getNode, getRootNode, getSelectedIds, getUI, insertNode, insertNode, loadAllNodes, moveNode, populateNode, refreshNode, removeNode, selectNode, selectNode, selectNodes, selectParentNode, setDataProvider, setUI, setUI, setUI, setUI, unSelectNode, unSelectNodes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NavTreeHelper

public NavTreeHelper()
Method Detail

scrollPathToVisible

public void scrollPathToVisible(TreePath path)
Specified by:
scrollPathToVisible in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

setSelectionPath

public void setSelectionPath(TreePath path)
Specified by:
setSelectionPath in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

addSelectionPaths

public void addSelectionPaths(TreePath[] paths)
Specified by:
addSelectionPaths in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

addSelectionPath

public void addSelectionPath(TreePath path)
Specified by:
addSelectionPath in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

removeSelectionPaths

public void removeSelectionPaths(TreePath[] path)
Specified by:
removeSelectionPaths in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

removeSelectionPath

public void removeSelectionPath(TreePath path)
Specified by:
removeSelectionPath in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

getSelectionModel

public TreeSelectionModel getSelectionModel()
Specified by:
getSelectionModel in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

isExpanded

public boolean isExpanded(TreePath pathToExpand)
Specified by:
isExpanded in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

expandPath

public void expandPath(TreePath pathToExpand)
Specified by:
expandPath in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>

getTreeCellRenderer

public AbstractNavTreeCellRenderer<DefaultTreeModel,N> getTreeCellRenderer()
Description copied from class: NavHelper
Obtains the AbstractNavTreeCellRenderer renderer of the registred tree.

Specified by:
getTreeCellRenderer in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>
Returns:
the renderer of the registred tree or null if no tree was registred nor the renderer is a AbstractNavTreeCellRenderer.

getSelectedNode

public N getSelectedNode()
Description copied from class: NavHelper
Obtains the selected node of the registred tree.

Specified by:
getSelectedNode in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>
Returns:
the selected tree or null if no registred tree nor selection empty.

getSelectedNodes

public List<N> getSelectedNodes()
Description copied from class: NavHelper
Obtains the selected nodes of the registred tree.

Specified by:
getSelectedNodes in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>
Returns:
the selected tree or null if no registred tree nor selection empty.

setUI

public void setUI(JTree tree,
                  boolean addExpandTreeListener,
                  boolean addOneClickSelectionListener,
                  TreeSelectionListener listener,
                  TreeWillExpandListener willExpandListener)
Description copied from class: NavHelper
Registers the given tree for this helper.

Note: as a side-effect, it will register (if required) the NavHelper.expandListener listener and (if required) the NavHelper.selectionListener. Note : as a second side-effect, it will register the given willExpandListener (if not null) for the ui and do it BEFORE the NavHelper.expandListener. The main idea here is to be able to block any expand (or collapse).

Specified by:
setUI in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>
Parameters:
tree - the tree to register
addExpandTreeListener - a flag to add expand listener
addOneClickSelectionListener - a flag to expend when selection
listener - the optional selection listener to add
willExpandListener - the optional will expand listener to add BEFORE the default expand tree listener (if he was required)

createModel

protected DefaultTreeModel createModel(N node,
                                       Object... extraArgs)
Description copied from class: NavHelper
Register a new root node.

If internal NavHelper.getModel() does not exists, creates a new one from his given root node, otherwise just set the new root on the existing model.

Note: As a side-effect, the model will be keep in field NavHelper.getModel() and the NavHelper.treeModelListener will be registred on this model.

Specified by:
createModel in class NavHelper<DefaultTreeModel,JTree,NavTreeBridge<N extends NavTreeNode<N>>,N extends NavTreeNode<N>>
Parameters:
node - the root node of the new model
extraArgs - extra args to create initial model
Returns:
the new model


Copyright © 2008-2010 CodeLutin. All Rights Reserved.