Class GridTreeViewer
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.
-
Constructor Summary
ConstructorDescriptionGridTreeViewer
(Grid grid) Creates a grid tree viewer on the given grid control.GridTreeViewer
(Composite parent) Creates a grid tree viewer on a newly-created grid control under the given parent.GridTreeViewer
(Composite parent, int style) Creates a grid tree viewer on a newly-created grid control under the given parent. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addTreeListener
(Control control, TreeListener listener) protected ColumnViewerEditor
protected int
Returns the number of columns of this viewer.protected void
doUpdateItem
(Item item, Object element) boolean
protected Item[]
protected Widget
getColumnViewerOwner
(int columnIndex) protected boolean
getExpanded
(Item item) getGrid()
Returns the underlyingGrid
Control.protected Item
protected int
getItemCount
(Control control) protected int
getItemCount
(Item item) protected Item[]
protected Item
getParentItem
(Item item) protected Item[]
getSelection
(Control control) protected ViewerRow
getViewerRowFromItem
(Widget item) protected Item
void
Removes the element at the specified index of the parent.protected void
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
(Item item, boolean expand) void
setRowHeaderLabelProvider
(CellLabelProvider rowHeaderLabelProvider) Label provider used by calculate the row header textprotected void
setSelection
(List items) protected void
-
Constructor Details
-
GridTreeViewer
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
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
-
createViewerEditor
protected ColumnViewerEditor createViewerEditor() -
addTreeListener
-
getChildren
-
getExpanded
-
getItemCount
-
getItemCount
-
getItems
-
getParentItem
-
getSelection
-
newItem
-
removeAll
-
setExpanded
-
setSelection
-
showItem
-
getControl
-
getViewerRowFromItem
-
getColumnViewerOwner
-
doGetColumnCount
protected int doGetColumnCount()Returns the number of columns of this viewer.- 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:
-
doUpdateItem
-
remove
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(CellLabelProvider rowHeaderLabelProvider) Label provider used by calculate the row header text- Parameters:
rowHeaderLabelProvider
- the provider
-