public class DefaultTreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode> extends java.lang.Object implements TreeCheckingModel<E>
| Modifier and Type | Field and Description |
|---|---|
protected WebCheckBoxTree<E> |
checkBoxTree
Checkbox tree which uses this checking model.
|
protected java.util.List<CheckStateChangeListener<E>> |
checkStateChangeListeners
Checkbox tree check state change listeners.
|
protected java.util.Map<E,CheckState> |
nodeCheckStates
Node check states cache.
|
| Constructor and Description |
|---|
DefaultTreeCheckingModel(WebCheckBoxTree<E> checkBoxTree) |
| Modifier and Type | Method and Description |
|---|---|
void |
addCheckStateChangeListener(CheckStateChangeListener listener)
Adds check state change listener.
|
void |
checkAll()
Checks all tree nodes.
|
void |
checkingModeChanged(boolean recursive)
Notifies model about checking mode change.
|
protected void |
filterOutChildNodes(java.util.List<E> nodes)
Filters out all nodes which are children of other nodes presented in the list.
|
void |
fireCheckStateChanged(java.util.List<CheckStateChange<E>> stateChanges)
Informs about single or multiply check state changes.
|
protected java.util.List<E> |
getAllNodesForState(CheckState state,
boolean optimize)
Returns list of nodes for the specified state.
|
WebCheckBoxTree<E> |
getCheckBoxTree()
Returns checkbox tree which uses this checking model.
|
java.util.List<E> |
getCheckedNodes(boolean optimize)
Returns list of checked nodes.
|
CheckState |
getCheckState(E node)
Returns specified tree node check state.
|
java.util.List<E> |
getMixedNodes()
Returns list of nodes in mixed state.
|
protected CheckState |
getNextState(CheckState checkState)
Returns next check state for check invertion action.
|
void |
invertCheck(java.util.Collection<E> nodes)
Inverts tree nodes check.
|
void |
invertCheck(E node)
Inverts tree node check.
|
protected boolean |
isChildNode(E node,
E childOf)
Returns whether the specified node is a child of another node or some of its child nodes or not.
|
void |
removeCheckStateChangeListener(CheckStateChangeListener listener)
Removes check state change listener.
|
protected void |
repaintTreeNodes(java.util.List<E> nodes)
Repaints specified tree nodes.
|
protected void |
repaintVisibleTreeRect()
Repaints visible tree rect.
|
void |
setCheckBoxTree(WebCheckBoxTree<E> checkBoxTree)
Sets checkbox tree which uses this checking model.
|
void |
setChecked(java.util.Collection<E> nodes,
boolean checked)
Sets specified nodes state to checked.
|
void |
setChecked(E node,
boolean checked)
Sets whether the specified tree node is checked or not.
|
protected void |
setCheckedImpl(E node,
boolean checked,
java.util.List<E> toUpdate,
java.util.List<CheckStateChange<E>> changes)
Sets whether the specified tree node is checked or not.
|
void |
uncheckAll()
Unchecks all tree nodes.
|
protected void |
updateChildNodesState(E node,
CheckState newState,
java.util.List<E> toUpdate,
java.util.List<CheckStateChange<E>> changes)
Updates child nodes check state.
|
protected void |
updateNodeState(E node,
CheckState newState,
java.util.List<E> toUpdate)
Updates single node check state.
|
protected void |
updateParentStates(E node,
java.util.List<E> toUpdate,
java.util.List<CheckStateChange<E>> changes)
Updates parent nodes check states.
|
protected WebCheckBoxTree<E extends javax.swing.tree.DefaultMutableTreeNode> checkBoxTree
protected java.util.Map<E extends javax.swing.tree.DefaultMutableTreeNode,CheckState> nodeCheckStates
protected java.util.List<CheckStateChangeListener<E extends javax.swing.tree.DefaultMutableTreeNode>> checkStateChangeListeners
public DefaultTreeCheckingModel(WebCheckBoxTree<E> checkBoxTree)
checkBoxTree - checkbox tree which uses this checking model.public WebCheckBoxTree<E> getCheckBoxTree()
public void setCheckBoxTree(WebCheckBoxTree<E> checkBoxTree)
checkBoxTree - checkbox tree which uses this checking model.public java.util.List<E> getCheckedNodes(boolean optimize)
TreeCheckingModelgetCheckedNodes in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>optimize - whether should optimize the resulting list by removing checked node children or notpublic java.util.List<E> getMixedNodes()
TreeCheckingModelgetMixedNodes in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>protected java.util.List<E> getAllNodesForState(CheckState state, boolean optimize)
state - check stateoptimize - whether should optimize selected nodes or notpublic void setChecked(java.util.Collection<E> nodes, boolean checked)
TreeCheckingModelsetChecked in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>nodes - nodes to checkchecked - whether the specified tree nodes should be checked or notpublic CheckState getCheckState(E node)
TreeCheckingModelgetCheckState in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>node - tree node to processpublic void setChecked(E node, boolean checked)
TreeCheckingModelsetChecked in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>node - tree node to processchecked - whether the specified tree node should be checked or notprotected void setCheckedImpl(E node, boolean checked, java.util.List<E> toUpdate, java.util.List<CheckStateChange<E>> changes)
node - tree node to processchecked - whether the specified tree node is checked or nottoUpdate - list of nodes for later updatechanges - list to collect state changes intoprotected void updateParentStates(E node, java.util.List<E> toUpdate, java.util.List<CheckStateChange<E>> changes)
node - node to start checking parents fromtoUpdate - list of nodes for later updatechanges - list to collect state changes intoprotected void updateChildNodesState(E node, CheckState newState, java.util.List<E> toUpdate, java.util.List<CheckStateChange<E>> changes)
node - parent nodenewState - new check statetoUpdate - list of nodes for later updatechanges - list to collect state changes intoprotected void updateNodeState(E node, CheckState newState, java.util.List<E> toUpdate)
node - node to updatenewState - new check statetoUpdate - list of nodes for later updatepublic void invertCheck(E node)
TreeCheckingModelinvertCheck in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>node - tree node to processpublic void invertCheck(java.util.Collection<E> nodes)
TreeCheckingModelinvertCheck in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>nodes - list of tree nodes to processpublic void uncheckAll()
TreeCheckingModeluncheckAll in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>public void checkAll()
TreeCheckingModelcheckAll in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>protected CheckState getNextState(CheckState checkState)
checkState - current check statepublic void checkingModeChanged(boolean recursive)
TreeCheckingModelcheckingModeChanged in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>recursive - whether checked or unchecked node children should be checked or unchecked recursively or notprotected void filterOutChildNodes(java.util.List<E> nodes)
nodes - list of nodes to filterprotected boolean isChildNode(E node, E childOf)
node - node to processchildOf - node to compare parent nodes withprotected void repaintVisibleTreeRect()
protected void repaintTreeNodes(java.util.List<E> nodes)
nodes - tree nodes to repaintpublic void addCheckStateChangeListener(CheckStateChangeListener listener)
TreeCheckingModeladdCheckStateChangeListener in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>listener - check state change listener to addpublic void removeCheckStateChangeListener(CheckStateChangeListener listener)
TreeCheckingModelremoveCheckStateChangeListener in interface TreeCheckingModel<E extends javax.swing.tree.DefaultMutableTreeNode>listener - check state change listener to removepublic void fireCheckStateChanged(java.util.List<CheckStateChange<E>> stateChanges)
stateChanges - check state changes list