Package org.eclipse.handly.ui.quickoutline

## Class OutlinePopup.OutlineTreeViewer

- java.lang.Object
- - org.eclipse.jface.viewers.Viewer
  - - org.eclipse.jface.viewers.ContentViewer
    - - org.eclipse.jface.viewers.StructuredViewer
      - - org.eclipse.jface.viewers.ColumnViewer
        - - org.eclipse.jface.viewers.AbstractTreeViewer
          - - org.eclipse.jface.viewers.TreeViewer
            - - org.eclipse.handly.ui.quickoutline.OutlinePopup.OutlineTreeViewer

- All Implemented Interfaces:
    `org.eclipse.jface.viewers.IInputProvider`, `org.eclipse.jface.viewers.IInputSelectionProvider`, `org.eclipse.jface.viewers.IPostSelectionProvider`, `org.eclipse.jface.viewers.ISelectionProvider`
  Direct Known Subclasses:
    `FilteringOutlinePopup.FilteringOutlineTreeViewer`
  Enclosing class:
    OutlinePopup

      protected class OutlinePopup.OutlineTreeViewer
      extends org.eclipse.jface.viewers.TreeViewer

  A tree viewer for the `OutlinePopup`.
  See Also:
    `OutlinePopup.createTreeViewer(Composite)`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.eclipse.jface.viewers.StructuredViewer

      `org.eclipse.jface.viewers.StructuredViewer.ColorAndFontCollector, org.eclipse.jface.viewers.StructuredViewer.ColorAndFontCollectorWithProviders`

  - ### Field Summary

    - ### Fields inherited from class org.eclipse.jface.viewers.AbstractTreeViewer

      `ALL_LEVELS`

    - ### Fields inherited from class org.eclipse.jface.viewers.Viewer

      `WIDGET_DATA_KEY`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `OutlineTreeViewer​(org.eclipse.swt.widgets.Tree tree)` | Creates a new tree viewer on the given tree control.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected boolean` | `canExpand​(org.eclipse.swt.widgets.TreeItem item)` | Returns whether the given tree item can be expanded from `expandXXX` methods.
    `protected void` | `internalExpandToLevel​(org.eclipse.swt.widgets.Widget node, int level)` |

    - ### Methods inherited from class org.eclipse.jface.viewers.TreeViewer

      `addTreeListener, assertContentProviderType, createViewerEditor, disassociate, doGetColumnCount, editElement, getChild, getChildren, getColumnViewerOwner, getControl, getExpanded, getItemAt, getItemCount, getItemCount, getItems, getLabelProvider, getParentElement, getParentItem, getRawChildren, getSelection, getTree, getViewerRowFromItem, handleTreeCollapse, handleTreeExpand, hookControl, internalAdd, internalInitializeTree, internalRefreshStruct, isExpandable, mapElement, newItem, remove, removeAll, replace, setChildCount, setContentProvider, setExpanded, setHasChildren, setSelection, setSelection, showItem, updatePlus`

    - ### Methods inherited from class org.eclipse.jface.viewers.AbstractTreeViewer

      `add, add, addSelectionListener, addTreeListener, associate, buildLabel, collapseAll, collapseToLevel, createChildren, createTreeItem, doFindInputItem, doFindItem, doUpdateItem, doUpdateItem, expandAll, expandAll, expandToLevel, expandToLevel, expandToLevel, expandToLevel, fireTreeCollapsed, fireTreeExpanded, getAutoExpandLevel, getChildren, getExpandedElements, getExpandedState, getExpandedTreePaths, getNextItem, getPreviousItem, getSelection, getSelectionFromWidget, getSortedChildren, getStructuredSelection, getTreePathFromItem, getVisibleExpandedElements, handleDoubleSelect, indexForElement, inputChanged, insert, internalCollapseToLevel, internalExpand, internalFindItems, internalGetWidgetToSelect, internalIsInputOrEmptyPath, internalRefresh, internalRefresh, internalRefresh, internalRemove, internalRemove, isSameSelection, labelProviderChanged, remove, remove, remove, removeTreeListener, reveal, scrollDown, scrollUp, setAutoExpandLevel, setExpandedElements, setExpandedState, setExpandedTreePaths, setExpandPreCheckFilters, setSelectionToWidget, setSelectionToWidget, updateChildren`

    - ### 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, needsRefilter, preservingSelection, refresh, refresh, refreshItem, removeDoubleClickListener, removeFilter, removeOpenListener, removePostSelectionChangedListener, resetFilters, setComparator, setComparer, setFilters, setInput, setSorter, setUseHashlookup, testFindItem, testFindItems, unmapAllElements, unmapElement, unmapElement, update, updateItem, updateSelection, usingElementMap`

    - ### Methods inherited from class org.eclipse.jface.viewers.ContentViewer

      `getContentProvider, getInput`

    - ### 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

    - #### OutlineTreeViewer

          public OutlineTreeViewer​(org.eclipse.swt.widgets.Tree tree)

      Creates a new tree viewer on the given tree control. Sets auto-expand level to `ALL_LEVELS`.
      Parameters:
        `tree` - the tree control (not `null`)

  - ### Method Detail

    - #### internalExpandToLevel

          protected void internalExpandToLevel​(org.eclipse.swt.widgets.Widget node,
                                               int level)

      Overrides:
        `internalExpandToLevel` in class `org.eclipse.jface.viewers.AbstractTreeViewer`

    - #### canExpand

          protected boolean canExpand​(org.eclipse.swt.widgets.TreeItem item)

      Returns whether the given tree item can be expanded from `expandXXX` methods.

      `OutlineTreeViewer` implementation of this method simply delegates to `OutlinePopup.isAutoExpandable(TreeItem)`. Subclasses may extend.

      Parameters:
        `item` - the tree item (never `null`)
      Returns:
        `true` if the given item can be expanded; `false` if it is to be collapsed