Package org.eclipse.handly.xtext.ui.outline

## Class HandlyXtextOutlinePage

- java.lang.Object
- - org.eclipse.ui.part.Page
  - - org.eclipse.handly.ui.outline.CommonOutlinePage
    - - org.eclipse.handly.ui.outline.HandlyOutlinePage
      - - org.eclipse.handly.xtext.ui.outline.HandlyXtextOutlinePage

- All Implemented Interfaces:
    `IContentAdapterProvider`, `ICommonOutlinePage`, `org.eclipse.jface.viewers.ISelectionProvider`, `org.eclipse.ui.part.IPage`, `org.eclipse.ui.part.IPageBookViewPage`, `org.eclipse.ui.views.contentoutline.IContentOutlinePage`, `org.eclipse.xtext.ui.editor.IXtextEditorAware`

      public abstract class HandlyXtextOutlinePage
      extends HandlyOutlinePage
      implements org.eclipse.xtext.ui.editor.IXtextEditorAware

  A partial implementation of Handly-based outline page for Xtext editor.

  Note that this class relies on the language-specific implementation of `IInputElementProvider` being available through injection. The activation of linking with editor and lexical sorting for the outline is governed by the injected `LinkWithEditorPreference` and `LexicalSortPreference`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.eclipse.handly.ui.outline.CommonOutlinePage

      `CommonOutlinePage.OutlineTreeViewer`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `HandlyXtextOutlinePage()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected IInputElementProvider` | `getInputElementProvider()` | Returns the input element provider for this outline page.
    `IBooleanPreference` | `getLexicalSortPreference()` | Returns lexical sort preference for this outline page.
    `IBooleanPreference` | `getLinkWithEditorPreference()` | Returns link-with-editor preference for this outline page.
    `void` | `setEditor​(org.eclipse.xtext.ui.editor.XtextEditor editor)` |
    `void` | `setInputElementProvider​(IInputElementProvider provider)` |

    - ### Methods inherited from class org.eclipse.handly.ui.outline.HandlyOutlinePage

      `addCollapseAllSupport, addElementChangeListener, addLinkWithEditorSupport, addOutlineContributions, addSortingSupport, computeInput, elementChanged, getContentAdapter, init, removeElementChangeListener`

    - ### Methods inherited from class org.eclipse.handly.ui.outline.CommonOutlinePage

      `addInputChangeListener, addOutlineContribution, addSelectionChangedListener, createControl, createTreeViewer, dispose, editorInputChanged, getContentProvider, getControl, getEditor, getLabelProvider, getSelection, getTreeViewer, init, initDecorationContext, isAutoExpandable, refresh, registerGlobalActions, removeInputChangeListener, removeOutlineContribution, removeSelectionChangedListener, setFocus, setSelection, shouldUseHashlookup`

    - ### Methods inherited from class org.eclipse.ui.part.Page

      `getSite, makeContributions, setActionBars`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.eclipse.ui.part.IPage

      `setActionBars`

    - ### Methods inherited from interface org.eclipse.ui.part.IPageBookViewPage

      `getSite`

- - ### Constructor Detail

    - #### HandlyXtextOutlinePage

          public HandlyXtextOutlinePage()

  - ### Method Detail

    - #### setInputElementProvider

          @Inject
          public void setInputElementProvider​(IInputElementProvider provider)

    - #### getInputElementProvider

          protected IInputElementProvider getInputElementProvider()

      Description copied from class: `HandlyOutlinePage`
      Returns the input element provider for this outline page.
      Specified by:
        `getInputElementProvider` in class `HandlyOutlinePage`
      Returns:
        the input element provider for this outline page

    - #### getLinkWithEditorPreference

          public IBooleanPreference getLinkWithEditorPreference()

      Description copied from interface: `ICommonOutlinePage`
      Returns link-with-editor preference for this outline page.
      Specified by:
        `getLinkWithEditorPreference` in interface `ICommonOutlinePage`
      Returns:
        link-with-editor preference for this outline page, or `null` if the outline page does not support linking with editor

    - #### getLexicalSortPreference

          public IBooleanPreference getLexicalSortPreference()

      Description copied from interface: `ICommonOutlinePage`
      Returns lexical sort preference for this outline page.
      Specified by:
        `getLexicalSortPreference` in interface `ICommonOutlinePage`
      Returns:
        lexical sort preference for this outline page, or `null` if the outline page does not support lexical sorting

    - #### setEditor

          public void setEditor​(org.eclipse.xtext.ui.editor.XtextEditor editor)

      Specified by:
        `setEditor` in interface `org.eclipse.xtext.ui.editor.IXtextEditorAware`