Class GridTreeViewer
- All Implemented Interfaces:
org.eclipse.jface.viewers.IInputProvider
,org.eclipse.jface.viewers.IInputSelectionProvider
,org.eclipse.jface.viewers.IPostSelectionProvider
,org.eclipse.jface.viewers.ISelectionProvider
public class GridTreeViewer
extends org.eclipse.jface.viewers.AbstractTreeViewer
This class is not intended to be subclassed outside the viewer framework. It is designed to be instantiated with a pre-existing Grid control and configured with a domain-specific content provider, label provider, element filter (optional), and element sorter (optional).
Content providers for grid tree viewers must implement the
ITreeContentProvider
interface.
The current implementation does not support lazy content providers.
-
Nested Class Summary
-
Field Summary
-
Constructor Summary
Constructors Constructor Description GridTreeViewer(Grid grid)
Creates a grid tree viewer on the given grid control.GridTreeViewer(org.eclipse.swt.widgets.Composite parent)
Creates a grid tree viewer on a newly-created grid control under the given parent.GridTreeViewer(org.eclipse.swt.widgets.Composite parent, int style)
Creates a grid tree viewer on a newly-created grid control under the given parent. -
Method Summary
Modifier and Type Method Description protected void
addTreeListener(org.eclipse.swt.widgets.Control control, org.eclipse.swt.events.TreeListener listener)
protected org.eclipse.jface.viewers.ColumnViewerEditor
createViewerEditor()
protected int
doGetColumnCount()
Returns the number of columns of this viewer.protected void
doUpdateItem(org.eclipse.swt.widgets.Item item, java.lang.Object element)
boolean
getAutoPreferredHeight()
protected org.eclipse.swt.widgets.Item[]
getChildren(org.eclipse.swt.widgets.Widget o)
protected org.eclipse.swt.widgets.Widget
getColumnViewerOwner(int columnIndex)
org.eclipse.swt.widgets.Control
getControl()
protected boolean
getExpanded(org.eclipse.swt.widgets.Item item)
Grid
getGrid()
Returns the underlyingGrid
Control.protected org.eclipse.swt.widgets.Item
getItemAt(org.eclipse.swt.graphics.Point point)
protected int
getItemCount(org.eclipse.swt.widgets.Control control)
protected int
getItemCount(org.eclipse.swt.widgets.Item item)
protected org.eclipse.swt.widgets.Item[]
getItems(org.eclipse.swt.widgets.Item item)
protected org.eclipse.swt.widgets.Item
getParentItem(org.eclipse.swt.widgets.Item item)
protected org.eclipse.swt.widgets.Item[]
getSelection(org.eclipse.swt.widgets.Control control)
protected org.eclipse.jface.viewers.ViewerRow
getViewerRowFromItem(org.eclipse.swt.widgets.Widget item)
protected org.eclipse.swt.widgets.Item
newItem(org.eclipse.swt.widgets.Widget parent, int style, int index)
void
remove(java.lang.Object parentOrTreePath, int index)
Removes the element at the specified index of the parent.protected void
removeAll(org.eclipse.swt.widgets.Control control)
void
setAutoPreferredHeight(boolean autoPreferredHeight)
When set to true, this grid viewer will ensure that each of the grid's items is always automatically sized to its preferred height.protected void
setExpanded(org.eclipse.swt.widgets.Item item, boolean expand)
void
setRowHeaderLabelProvider(org.eclipse.jface.viewers.CellLabelProvider rowHeaderLabelProvider)
Label provider used by calculate the row header textprotected void
setSelection(java.util.List items)
protected void
showItem(org.eclipse.swt.widgets.Item item)
Methods inherited from class org.eclipse.jface.viewers.AbstractTreeViewer
add, add, addSelectionListener, addTreeListener, assertContentProviderType, associate, buildLabel, collapseAll, collapseToLevel, createChildren, createTreeItem, disassociate, doFindInputItem, doFindItem, doUpdateItem, expandAll, expandAll, expandToLevel, expandToLevel, expandToLevel, expandToLevel, fireTreeCollapsed, fireTreeExpanded, getAutoExpandLevel, getChild, getChildren, getExpandedElements, getExpandedState, getExpandedTreePaths, getNextItem, getParentElement, getPreviousItem, getRawChildren, getSelection, getSelectionFromWidget, getSortedChildren, getStructuredSelection, getTreePathFromItem, getVisibleExpandedElements, handleDoubleSelect, handleTreeCollapse, handleTreeExpand, hookControl, indexForElement, inputChanged, insert, internalAdd, internalCollapseToLevel, internalExpand, internalExpandToLevel, internalFindItems, internalGetWidgetToSelect, internalInitializeTree, internalIsInputOrEmptyPath, internalRefresh, internalRefresh, internalRefresh, internalRemove, internalRemove, isExpandable, isSameSelection, labelProviderChanged, remove, remove, remove, removeTreeListener, reveal, scrollDown, scrollUp, setAutoExpandLevel, setContentProvider, setExpandedElements, setExpandedState, setExpandedTreePaths, setExpandPreCheckFilters, setSelectionToWidget, setSelectionToWidget, updateChildren, updatePlus
Methods inherited from class org.eclipse.jface.viewers.ColumnViewer
applyEditorValue, cancelEditing, checkBusy, editElement, getCell, getCellEditors, getCellModifier, getColumnProperties, getColumnViewerEditor, getItem, getLabelProvider, getViewerRow, handleDispose, hookEditingSupport, isBusy, isCellEditorActive, refresh, refresh, setBusy, setCellEditors, setCellModifier, setColumnProperties, setColumnViewerEditor, setLabelProvider, triggerEditorActivationEvent, update
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, getFilteredChildren, getFilters, getRoot, getSorter, handleInvalidSelection, handleLabelProviderChanged, handleOpen, handlePostSelect, handleSelect, hasFilters, internalUpdate, mapElement, needsRefilter, preservingSelection, refresh, refresh, refreshItem, removeDoubleClickListener, removeFilter, removeOpenListener, removePostSelectionChangedListener, resetFilters, setComparator, setComparer, setFilters, setInput, setSelection, setSorter, setUseHashlookup, testFindItem, testFindItems, unmapAllElements, unmapElement, unmapElement, update, updateItem, updateSelection, usingElementMap
Methods inherited from class org.eclipse.jface.viewers.ContentViewer
getContentProvider, getInput, getLabelProvider
Methods inherited from class org.eclipse.jface.viewers.Viewer
addHelpListener, addSelectionChangedListener, fireHelpRequested, fireSelectionChanged, getData, handleHelpRequest, removeHelpListener, removeSelectionChangedListener, setData, setSelection
-
Constructor Details
-
GridTreeViewer
public GridTreeViewer(org.eclipse.swt.widgets.Composite parent)Creates a grid tree viewer on a newly-created grid control under the given parent. The grid control is created using the SWT style bitsMULTI, H_SCROLL, V_SCROLL,
andBORDER
. The viewer has no input, no content provider, a default label provider, no sorter, and no filters.- Parameters:
parent
- the parent control
-
GridTreeViewer
public GridTreeViewer(org.eclipse.swt.widgets.Composite parent, int style)Creates a grid tree viewer on a newly-created grid control under the given parent. The grid control is created using the given SWT style bits. The viewer has no input, no content provider, a default label provider, no sorter, and no filters.- Parameters:
parent
- the parent controlstyle
- the SWT style bits used to create the grid.
-
GridTreeViewer
Creates a grid tree viewer on the given grid control. The viewer has no input, no content provider, a default label provider, no sorter, and no filters.- Parameters:
grid
- the grid control
-
-
Method Details
-
getGrid
Returns the underlyingGrid
Control.- Returns:
- grid control.
-
getItemAt
protected org.eclipse.swt.widgets.Item getItemAt(org.eclipse.swt.graphics.Point point)- Overrides:
getItemAt
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
createViewerEditor
protected org.eclipse.jface.viewers.ColumnViewerEditor createViewerEditor()- Overrides:
createViewerEditor
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
addTreeListener
protected void addTreeListener(org.eclipse.swt.widgets.Control control, org.eclipse.swt.events.TreeListener listener)- Specified by:
addTreeListener
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getChildren
protected org.eclipse.swt.widgets.Item[] getChildren(org.eclipse.swt.widgets.Widget o)- Specified by:
getChildren
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getExpanded
protected boolean getExpanded(org.eclipse.swt.widgets.Item item)- Specified by:
getExpanded
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getItemCount
protected int getItemCount(org.eclipse.swt.widgets.Control control)- Specified by:
getItemCount
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getItemCount
protected int getItemCount(org.eclipse.swt.widgets.Item item)- Specified by:
getItemCount
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getItems
protected org.eclipse.swt.widgets.Item[] getItems(org.eclipse.swt.widgets.Item item)- Specified by:
getItems
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getParentItem
protected org.eclipse.swt.widgets.Item getParentItem(org.eclipse.swt.widgets.Item item)- Specified by:
getParentItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getSelection
protected org.eclipse.swt.widgets.Item[] getSelection(org.eclipse.swt.widgets.Control control)- Specified by:
getSelection
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
newItem
protected org.eclipse.swt.widgets.Item newItem(org.eclipse.swt.widgets.Widget parent, int style, int index)- Specified by:
newItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
removeAll
protected void removeAll(org.eclipse.swt.widgets.Control control)- Specified by:
removeAll
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
setExpanded
protected void setExpanded(org.eclipse.swt.widgets.Item item, boolean expand)- Specified by:
setExpanded
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
setSelection
protected void setSelection(java.util.List items)- Specified by:
setSelection
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
showItem
protected void showItem(org.eclipse.swt.widgets.Item item)- Specified by:
showItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getControl
public org.eclipse.swt.widgets.Control getControl()- Specified by:
getControl
in classorg.eclipse.jface.viewers.Viewer
-
getViewerRowFromItem
protected org.eclipse.jface.viewers.ViewerRow getViewerRowFromItem(org.eclipse.swt.widgets.Widget item)- Overrides:
getViewerRowFromItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
getColumnViewerOwner
protected org.eclipse.swt.widgets.Widget getColumnViewerOwner(int columnIndex)- Overrides:
getColumnViewerOwner
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
doGetColumnCount
protected int doGetColumnCount()Returns the number of columns of this viewer.- Overrides:
doGetColumnCount
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- Returns:
- the number of columns
-
setAutoPreferredHeight
public void setAutoPreferredHeight(boolean autoPreferredHeight)When set to true, this grid viewer will ensure that each of the grid's items is always automatically sized to its preferred height. The default is false.Since this mechanism usually leads to a grid with rows of different heights and thus to a grid with decreased performance, it should only be applied if that is intended. To set the height of all items to a specific value, use
Grid.setItemHeight(int)
instead.When a column with activated word wrapping is resized by dragging the column resizer, the items are only auto-resized properly if you use
GridViewerColumn
to create the columns.When this method is called, existing rows are not resized to their preferred height. Therefore it is suggested that this method be called before rows are populated (i.e. before setInput).
-
getAutoPreferredHeight
public boolean getAutoPreferredHeight()- Returns:
- true if this grid viewer sizes its rows to their preferred height
- See Also:
setAutoPreferredHeight(boolean)
-
doUpdateItem
protected void doUpdateItem(org.eclipse.swt.widgets.Item item, java.lang.Object element)- Overrides:
doUpdateItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
remove
public void remove(java.lang.Object parentOrTreePath, int index)Removes the element at the specified index of the parent. The selection is updated if required.- Parameters:
parentOrTreePath
- the parent element, the input element, or a tree path to the parent elementindex
- child index- Since:
- 3.3
-
setRowHeaderLabelProvider
public void setRowHeaderLabelProvider(org.eclipse.jface.viewers.CellLabelProvider rowHeaderLabelProvider)Label provider used by calculate the row header text- Parameters:
rowHeaderLabelProvider
- the provider
-