public class PathTreeModel<C extends ApplicationContext,N extends PathTreeNode> extends javax.swing.tree.DefaultTreeModel implements ApplicationObject<C>, Resettable
TreeModel
implementation stores the PathTreeNode
s of a file system tree which is watched by a
watch-service and thus reflects any changes in the file-system immediately.Constructor and Description |
---|
PathTreeModel(PathTreeModelDriver<C> driver,
N rootTreeNode) |
Modifier and Type | Method and Description |
---|---|
protected N |
createPathTreeNode(N parent,
PathInfo childPathInfo)
Same as
createPathTreeNode(PathTreeNode, PathInfo, Comparator)
whereas the Comparator is just overtaken from the parent node. |
protected N |
createPathTreeNode(N parent,
PathInfo childPathInfo,
java.util.Comparator<PathTreeNode> comparator)
Creates the
PathTreeNode to be inserted in the tree model. |
N |
findPathTreeNode(java.nio.file.Path path) |
N |
findPathTreeNode(PathInfo pathInfo) |
javax.swing.tree.TreePath |
findTreePath(java.nio.file.Path path) |
C |
getApplicationContext() |
PathTreeNode |
getChild(java.lang.Object parent,
int index) |
int |
getChildCount(java.lang.Object parent) |
PathTreeModelDriver |
getDriver() |
int |
getIndexOfChild(java.lang.Object parent,
java.lang.Object child) |
N |
getRoot() |
boolean |
isLeaf(java.lang.Object node) |
void |
renamePath(java.nio.file.Path oldPath,
java.nio.file.Path newPath) |
void |
reset()
Resets the root node of the tree.
|
void |
setRoot(javax.swing.tree.TreeNode root) |
addTreeModelListener, asksAllowsChildren, fireTreeNodesChanged, fireTreeNodesInserted, fireTreeNodesRemoved, fireTreeStructureChanged, getListeners, getPathToRoot, getPathToRoot, getTreeModelListeners, insertNodeInto, nodeChanged, nodesChanged, nodeStructureChanged, nodesWereInserted, nodesWereRemoved, reload, reload, removeNodeFromParent, removeTreeModelListener, setAsksAllowsChildren, valueForPathChanged
public PathTreeModel(PathTreeModelDriver<C> driver, N rootTreeNode)
public C getApplicationContext()
getApplicationContext
in interface ApplicationObject<C extends ApplicationContext>
public final N getRoot()
getRoot
in interface javax.swing.tree.TreeModel
getRoot
in class javax.swing.tree.DefaultTreeModel
public PathTreeModelDriver getDriver()
public final void setRoot(javax.swing.tree.TreeNode root)
setRoot
in class javax.swing.tree.DefaultTreeModel
public final void reset()
reset
in interface Resettable
public PathTreeNode getChild(java.lang.Object parent, int index)
getChild
in interface javax.swing.tree.TreeModel
getChild
in class javax.swing.tree.DefaultTreeModel
public int getChildCount(java.lang.Object parent)
getChildCount
in interface javax.swing.tree.TreeModel
getChildCount
in class javax.swing.tree.DefaultTreeModel
public boolean isLeaf(java.lang.Object node)
isLeaf
in interface javax.swing.tree.TreeModel
isLeaf
in class javax.swing.tree.DefaultTreeModel
public int getIndexOfChild(java.lang.Object parent, java.lang.Object child)
getIndexOfChild
in interface javax.swing.tree.TreeModel
getIndexOfChild
in class javax.swing.tree.DefaultTreeModel
public final N findPathTreeNode(java.nio.file.Path path)
public final javax.swing.tree.TreePath findTreePath(java.nio.file.Path path)
protected N createPathTreeNode(N parent, PathInfo childPathInfo)
createPathTreeNode(PathTreeNode, PathInfo, Comparator)
whereas the Comparator is just overtaken from the parent node.protected N createPathTreeNode(N parent, PathInfo childPathInfo, java.util.Comparator<PathTreeNode> comparator)
PathTreeNode
to be inserted in the tree model.
This method may be overridden to create a subclass instance of PathTreeNode
.
Note that this method needs to be overridden if a special PathTreeNode is desired.public void renamePath(java.nio.file.Path oldPath, java.nio.file.Path newPath) throws java.lang.Exception
java.lang.Exception
Copyright © 2014 EsprIT-Systems. All Rights Reserved.