javax.swing.tree.TreeModelpublic class MaskTreeModel
extends java.lang.Object
implements javax.swing.tree.TreeModel
It's intended for use with a static base model. It ought to work for a base model which sends TreeModelEvents, but that hasn't been tested, and it doesn't translate the events very cleverly to downstream listeners.
| Modifier and Type | Class | Description |
|---|---|---|
static interface |
MaskTreeModel.Mask |
Defines node inclusion in a masked tree.
|
| Constructor | Description |
|---|---|
MaskTreeModel(javax.swing.tree.TreeModel base,
boolean includeDescendants) |
Constructor.
|
| Modifier and Type | Method | Description |
|---|---|---|
void |
addTreeModelListener(javax.swing.event.TreeModelListener lnr) |
|
javax.swing.tree.TreeModel |
getBaseModel() |
Returns the underlying, unmasked, model.
|
java.lang.Object |
getChild(java.lang.Object parent,
int index) |
|
int |
getChildCount(java.lang.Object parent) |
|
int |
getIndexOfChild(java.lang.Object parent,
java.lang.Object child) |
|
MaskTreeModel.Mask |
getMask() |
Returns the currently active mask.
|
int |
getNodeCount() |
Returns the total number of nodes in this model.
|
java.lang.Object |
getRoot() |
|
boolean |
isLeaf(java.lang.Object node) |
|
void |
removeTreeModelListener(javax.swing.event.TreeModelListener lnr) |
|
void |
setBaseModel(javax.swing.tree.TreeModel base) |
Sets the underlying, unmasked, model.
|
void |
setMask(MaskTreeModel.Mask mask) |
Sets the mask for defning inclusion of nodes in the base model.
|
void |
valueForPathChanged(javax.swing.tree.TreePath path,
java.lang.Object newValue) |
public MaskTreeModel(javax.swing.tree.TreeModel base,
boolean includeDescendants)
base - underlying tree modelincludeDescendants - if true, all descendants of an included node
are automatically includedpublic java.lang.Object getRoot()
getRoot in interface javax.swing.tree.TreeModelpublic boolean isLeaf(java.lang.Object node)
isLeaf in interface javax.swing.tree.TreeModelpublic int getChildCount(java.lang.Object parent)
getChildCount in interface javax.swing.tree.TreeModelpublic java.lang.Object getChild(java.lang.Object parent,
int index)
getChild in interface javax.swing.tree.TreeModelpublic int getIndexOfChild(java.lang.Object parent,
java.lang.Object child)
getIndexOfChild in interface javax.swing.tree.TreeModelpublic void valueForPathChanged(javax.swing.tree.TreePath path,
java.lang.Object newValue)
valueForPathChanged in interface javax.swing.tree.TreeModelpublic void addTreeModelListener(javax.swing.event.TreeModelListener lnr)
addTreeModelListener in interface javax.swing.tree.TreeModelpublic void removeTreeModelListener(javax.swing.event.TreeModelListener lnr)
removeTreeModelListener in interface javax.swing.tree.TreeModelpublic javax.swing.tree.TreeModel getBaseModel()
public void setBaseModel(javax.swing.tree.TreeModel base)
base - new base modelpublic MaskTreeModel.Mask getMask()
public void setMask(MaskTreeModel.Mask mask)
isIncluded always returns true).
If the supplied mask matches the previously installed
one by equality, no action is performed. So it's not essential
that mask implementations implement equals/hashCode, but it may be
beneficial.
mask - new mask, or null for full inclusionpublic int getNodeCount()
Copyright © 2018 Central Laboratory of the Research Councils. All Rights Reserved.