Class GalleryTreeViewer
- 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 GalleryTreeViewer
extends org.eclipse.jface.viewers.AbstractTreeViewer
Gallery
control.
This class is not intended to be subclassed outside the viewer framework. It is designed to be instantiated with a pre-existing Nebula Gallery control and configured with a domain-specific content provider, label provider, element filter (optional), and element sorter (optional).
SWT.VIRTUAL is currently unsupported
THIS VIEWER SHOULD BE CONSIDERED AS ALPHA
- Since:
- Dec 5, 2007
-
Nested Class Summary
-
Field Summary
Fields Modifier and Type Field Description protected Gallery
gallery
protected boolean
preservingSelection
true if we are inside a preservingSelection() call -
Constructor Summary
Constructors Constructor Description GalleryTreeViewer(Gallery gallery)
Creates a gallery viewer on the given gallery control.GalleryTreeViewer(org.eclipse.swt.widgets.Composite parent)
Creates a gallery viewer on a newly-created gallery control under the given parent.GalleryTreeViewer(org.eclipse.swt.widgets.Composite parent, int style)
Creates a gallery viewer on a newly-created gallery 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()
void
editElement(java.lang.Object element, int column)
protected org.eclipse.swt.widgets.Item
getChild(org.eclipse.swt.widgets.Widget widget, int index)
protected org.eclipse.swt.widgets.Item[]
getChildren(org.eclipse.swt.widgets.Widget widget)
protected org.eclipse.swt.widgets.Widget
getColumnViewerOwner(int columnIndex)
org.eclipse.swt.widgets.Control
getControl()
protected boolean
getExpanded(org.eclipse.swt.widgets.Item item)
Gallery
getGallery()
Returns this gallery viewer's gallery.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
setAutoExpandLevel(int level)
void
setChildCount(java.lang.Object elementOrTreePath, int count)
For a GalleryViewer with a gallery with the VIRTUAL style bit set, set the number of children of the given element or tree path.void
setContentProvider(org.eclipse.jface.viewers.IContentProvider provider)
Gallery expects contents to have exactly 2 levels of hierarchy, with groups as the root elements and image thumbnails as direct children of the groups.protected void
setExpanded(org.eclipse.swt.widgets.Item item, boolean expand)
protected 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, doGetColumnCount, doUpdateItem, doUpdateItem, expandAll, expandAll, expandToLevel, expandToLevel, expandToLevel, expandToLevel, fireTreeCollapsed, fireTreeExpanded, getAutoExpandLevel, 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, setExpandedElements, setExpandedState, setExpandedTreePaths, setExpandPreCheckFilters, setSelectionToWidget, setSelectionToWidget, updateChildren, updatePlus
Methods inherited from class org.eclipse.jface.viewers.ColumnViewer
applyEditorValue, cancelEditing, checkBusy, 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
-
Field Details
-
gallery
-
preservingSelection
protected boolean preservingSelectiontrue if we are inside a preservingSelection() call
-
-
Constructor Details
-
GalleryTreeViewer
public GalleryTreeViewer(org.eclipse.swt.widgets.Composite parent)Creates a gallery viewer on a newly-created gallery control under the given parent. The gallery control is created using the SWT style bitsMULTI, 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
-
GalleryTreeViewer
public GalleryTreeViewer(org.eclipse.swt.widgets.Composite parent, int style)Creates a gallery viewer on a newly-created gallery control under the given parent. The gallery 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 gallery.
-
GalleryTreeViewer
Creates a gallery viewer on the given gallery control. The viewer has no input, no content provider, a default label provider, no sorter, and no filters.- Parameters:
gallery
- the gallery control
-
-
Method Details
-
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
- See Also:
AbstractTreeViewer.addTreeListener(org.eclipse .swt.widgets.Control, org.eclipse.swt.events.TreeListener)
-
getChild
protected org.eclipse.swt.widgets.Item getChild(org.eclipse.swt.widgets.Widget widget, int index)- Overrides:
getChild
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.getChild(org.eclipse.swt .widgets.Widget, int)
-
getChildren
protected org.eclipse.swt.widgets.Item[] getChildren(org.eclipse.swt.widgets.Widget widget)- Specified by:
getChildren
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.getChildren(org.eclipse. swt.widgets.Widget)
-
getColumnViewerOwner
protected org.eclipse.swt.widgets.Widget getColumnViewerOwner(int columnIndex)- Overrides:
getColumnViewerOwner
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
- See Also:
AbstractTreeViewer.getExpanded(org.eclipse. swt.widgets.Item)
-
getItemCount
protected int getItemCount(org.eclipse.swt.widgets.Control control)- Specified by:
getItemCount
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.getItemCount(org.eclipse .swt.widgets.Control)
-
getItemCount
protected int getItemCount(org.eclipse.swt.widgets.Item item)- Specified by:
getItemCount
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.getItemCount(org.eclipse .swt.widgets.Item)
-
getItems
protected org.eclipse.swt.widgets.Item[] getItems(org.eclipse.swt.widgets.Item item)- Specified by:
getItems
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.getItems(org.eclipse.swt .widgets.Item)
-
getParentItem
protected org.eclipse.swt.widgets.Item getParentItem(org.eclipse.swt.widgets.Item item)- Specified by:
getParentItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.getParentItem(org.eclipse .swt.widgets.Item)
-
getSelection
protected org.eclipse.swt.widgets.Item[] getSelection(org.eclipse.swt.widgets.Control control)- Specified by:
getSelection
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.getSelection(org.eclipse .swt.widgets.Control)
-
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
- See Also:
AbstractTreeViewer.newItem(org.eclipse.swt. widgets.Widget, int, int)
-
removeAll
protected void removeAll(org.eclipse.swt.widgets.Control control)- Specified by:
removeAll
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.removeAll(org.eclipse.swt .widgets.Control)
-
setAutoExpandLevel
public void setAutoExpandLevel(int level)- Overrides:
setAutoExpandLevel
in classorg.eclipse.jface.viewers.AbstractTreeViewer
-
setContentProvider
public void setContentProvider(org.eclipse.jface.viewers.IContentProvider provider)Gallery expects contents to have exactly 2 levels of hierarchy, with groups as the root elements and image thumbnails as direct children of the groups. This method accepts ITreeContentProvider and ITreePathContentProvider as-is, and relies on the providers to return contents with the correct structure.
This method also accepts IStructuredContentProvider and wraps it in a FlatTreeContentProvider with an empty string as the root node. If you need a different root node, construct your own FlatTreeContentProvider and pass it here. If you want the Gallery to suppress the collapsable group header, call
getGallery().setGroupRenderer(new NoGroupRenderer());
- Overrides:
setContentProvider
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
- See Also:
AbstractTreeViewer.setExpanded(org.eclipse. swt.widgets.Item, boolean)
-
setSelection
protected void setSelection(java.util.List items)- Specified by:
setSelection
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.setSelection(java.util.List)
-
showItem
protected void showItem(org.eclipse.swt.widgets.Item item)- Specified by:
showItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
AbstractTreeViewer.showItem(org.eclipse.swt .widgets.Item)
-
getControl
public org.eclipse.swt.widgets.Control getControl()- Specified by:
getControl
in classorg.eclipse.jface.viewers.Viewer
- See Also:
Viewer.getControl()
-
getGallery
Returns this gallery viewer's gallery.- Returns:
- the gallery 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
-
setChildCount
public void setChildCount(java.lang.Object elementOrTreePath, int count)For a GalleryViewer with a gallery with the VIRTUAL style bit set, set the number of children of the given element or tree path. To set the number of children of the invisible root of the gallery, you can pass the input object or an empty tree path.- Parameters:
elementOrTreePath
- the element, or tree pathcount
-- Since:
- 3.2
-
getViewerRowFromItem
protected org.eclipse.jface.viewers.ViewerRow getViewerRowFromItem(org.eclipse.swt.widgets.Widget item)- Overrides:
getViewerRowFromItem
in classorg.eclipse.jface.viewers.AbstractTreeViewer
- See Also:
org.eclipse.jface.viewers.ColumnViewer#getRowPartFromItem(org.eclipse .swt.widgets.Widget)
-
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
-
editElement
public void editElement(java.lang.Object element, int column)- Overrides:
editElement
in classorg.eclipse.jface.viewers.ColumnViewer
-