net.sourceforge.java.util.gui.jface.viewers
Class ContainerCheckedTreeViewer

java.lang.Object
  extended byorg.eclipse.jface.viewers.Viewer
      extended byorg.eclipse.jface.viewers.ContentViewer
          extended byorg.eclipse.jface.viewers.StructuredViewer
              extended byorg.eclipse.jface.viewers.AbstractTreeViewer
                  extended byorg.eclipse.jface.viewers.TreeViewer
                      extended byorg.eclipse.jface.viewers.CheckboxTreeViewer
                          extended bynet.sourceforge.java.util.gui.jface.viewers.ContainerCheckedTreeViewer
All Implemented Interfaces:
ICheckable, IInputProvider, IInputSelectionProvider, IPostSelectionProvider, ISelectionProvider

public class ContainerCheckedTreeViewer
extends CheckboxTreeViewer

CheckboxTreeViewer with special behaviour of the checked / gray state on container (non-leaf) nodes: The grayed state is used to visualize the checked state of its children. Containers are checked and non-gray if all contained leafs are checked. The container is grayed if some but not all leafs are checked.


Nested Class Summary
 
Nested classes inherited from class org.eclipse.jface.viewers.TreeViewer
 
Nested classes inherited from class org.eclipse.jface.viewers.AbstractTreeViewer
 
Nested classes inherited from class org.eclipse.jface.viewers.StructuredViewer
StructuredViewer.ColorAndFontCollector, StructuredViewer.ColorAndFontCollectorWithProviders
 
Field Summary
 
Fields inherited from class org.eclipse.jface.viewers.CheckboxTreeViewer
 
Fields inherited from class org.eclipse.jface.viewers.TreeViewer
 
Fields inherited from class org.eclipse.jface.viewers.AbstractTreeViewer
ALL_LEVELS
 
Fields inherited from class org.eclipse.jface.viewers.StructuredViewer
 
Fields inherited from class org.eclipse.jface.viewers.ContentViewer
 
Fields inherited from class org.eclipse.jface.viewers.Viewer
WIDGET_DATA_KEY
 
Constructor Summary
ContainerCheckedTreeViewer(Composite parent)
          Constructor for ContainerCheckedTreeViewer.
ContainerCheckedTreeViewer(Composite parent, int style)
          Constructor for ContainerCheckedTreeViewer.
ContainerCheckedTreeViewer(Tree tree)
          Constructor for ContainerCheckedTreeViewer.
 
Method Summary
private  void collectChildren(Object element, ArrayList result)
           
protected  void doCheckStateChanged(Object element)
           
 Object[] getCheckedElements()
           
private  void initializeItem(TreeItem item)
          The item has expanded.
private  void initViewer()
           
 boolean setChecked(Object element, boolean state)
           
 void setCheckedElements(Object[] elements)
           
protected  void setExpanded(Item item, boolean expand)
           
private  void updateChildrenItems(TreeItem parent)
          Updates the check state of all created children
private  void updateParentItems(TreeItem item)
          Updates the check / gray state of all parent items
 
Methods inherited from class org.eclipse.jface.viewers.CheckboxTreeViewer
addCheckStateListener, fireCheckStateChanged, getChecked, getGrayed, getGrayedElements, handleDoubleSelect, handleSelect, preservingSelection, removeCheckStateListener, setAllChecked, setGrayChecked, setGrayed, setGrayedElements, setParentsGrayed, setSubtreeChecked
 
Methods inherited from class org.eclipse.jface.viewers.TreeViewer
addTreeListener, assertContentProviderType, buildLabel, cancelEditing, createChildren, doUpdateItem, editElement, getCellEditors, getCellModifier, getChild, getChildren, getColumnProperties, getControl, getExpanded, getItem, getItemCount, getItemCount, getItems, getLabelProvider, getParentElement, getParentItem, getRawChildren, getSelection, getTree, hookControl, internalAdd, internalRefreshStruct, isCellEditorActive, isExpandable, isSameSelection, mapElement, newItem, removeAll, replace, setCellEditors, setCellModifier, setChildCount, setColumnProperties, setLabelProvider, setSelection, showItem
 
Methods inherited from class org.eclipse.jface.viewers.AbstractTreeViewer
add, add, addSelectionListener, addTreeListener, associate, collapseAll, collapseToLevel, createTreeItem, disassociate, doFindInputItem, doFindItem, doUpdateItem, expandAll, expandToLevel, expandToLevel, fireTreeCollapsed, fireTreeExpanded, getAutoExpandLevel, getExpandedElements, getExpandedState, getExpandedTreePaths, getFilteredChildren, getNextItem, getPreviousItem, getSelection, getSelectionFromWidget, getSortedChildren, getTreePathFromItem, getVisibleExpandedElements, handleTreeCollapse, handleTreeExpand, indexForElement, inputChanged, insert, internalCollapseToLevel, internalExpand, internalExpandToLevel, internalGetWidgetToSelect, internalRefresh, internalRefresh, internalRefresh, internalRemove, internalRemove, labelProviderChanged, remove, remove, remove, removeTreeListener, reveal, scrollDown, scrollUp, setAutoExpandLevel, setContentProvider, setExpandedElements, setExpandedState, setExpandedTreePaths, setSelectionToWidget, setSelectionToWidget, updateChildren, updatePlus
 
Methods inherited from class org.eclipse.jface.viewers.StructuredViewer
addDoubleClickListener, addDragSupport, addDropSupport, addFilter, addOpenListener, addPostSelectionChangedListener, assertElementsNotNull, equals, filter, findItem, findItems, fireDoubleClick, fireOpen, firePostSelectionChanged, getColorAndFontCollector, getComparator, getComparer, getFilters, getRoot, getSorter, handleInvalidSelection, handleLabelProviderChanged, handleOpen, handlePostSelect, hasFilters, internalUpdate, needsRefilter, refresh, refresh, refresh, refresh, refreshItem, removeDoubleClickListener, removeFilter, removeOpenListener, removePostSelectionChangedListener, resetFilters, setComparator, setComparer, setInput, setSelection, setSorter, setUseHashlookup, testFindItem, testFindItems, unmapAllElements, unmapElement, unmapElement, update, update, updateItem, updateSelection, usingElementMap
 
Methods inherited from class org.eclipse.jface.viewers.ContentViewer
getContentProvider, getInput, handleDispose
 
Methods inherited from class org.eclipse.jface.viewers.Viewer
addHelpListener, addSelectionChangedListener, fireHelpRequested, fireSelectionChanged, getData, handleHelpRequest, removeHelpListener, removeSelectionChangedListener, setData, setSelection
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.jface.viewers.ISelectionProvider
addSelectionChangedListener, removeSelectionChangedListener, setSelection
 

Constructor Detail

ContainerCheckedTreeViewer

public ContainerCheckedTreeViewer(Composite parent)
Constructor for ContainerCheckedTreeViewer.

See Also:
CheckboxTreeViewer.CheckboxTreeViewer(Composite)

ContainerCheckedTreeViewer

public ContainerCheckedTreeViewer(Composite parent,
                                  int style)
Constructor for ContainerCheckedTreeViewer.

See Also:
CheckboxTreeViewer.CheckboxTreeViewer(Composite,int)

ContainerCheckedTreeViewer

public ContainerCheckedTreeViewer(Tree tree)
Constructor for ContainerCheckedTreeViewer.

See Also:
CheckboxTreeViewer.CheckboxTreeViewer(Tree)
Method Detail

initViewer

private void initViewer()

doCheckStateChanged

protected void doCheckStateChanged(Object element)

initializeItem

private void initializeItem(TreeItem item)
The item has expanded. Updates the checked state of its children.


updateChildrenItems

private void updateChildrenItems(TreeItem parent)
Updates the check state of all created children


updateParentItems

private void updateParentItems(TreeItem item)
Updates the check / gray state of all parent items


setChecked

public boolean setChecked(Object element,
                          boolean state)

setCheckedElements

public void setCheckedElements(Object[] elements)

setExpanded

protected void setExpanded(Item item,
                           boolean expand)

getCheckedElements

public Object[] getCheckedElements()

collectChildren

private void collectChildren(Object element,
                             ArrayList result)