Class HandlyOutlinePage

  • 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
    Direct Known Subclasses:
    HandlyXtextOutlinePage

    public abstract class HandlyOutlinePage
    extends CommonOutlinePage
    implements IContentAdapterProvider
    A partial implementation of Handly-based outline page pre-wired with contributions that are common to a typical outline. In particular, it provides support for linking with editor and lexical sorting functionality.
    • Constructor Detail

      • HandlyOutlinePage

        public HandlyOutlinePage()
    • Method Detail

      • init

        public void init​(org.eclipse.ui.IEditorPart editor)
        Description copied from interface: ICommonOutlinePage
        Initializes this outline page with its corresponding editor. This method should be called by the editor shortly after page construction. Specifically, it must be called before the page's control is created.
        Specified by:
        init in interface ICommonOutlinePage
        Overrides:
        init in class CommonOutlinePage
        Parameters:
        editor - the editor which created this outline page (not null)
      • computeInput

        protected java.lang.Object computeInput()
        Computes the input element for the outline page's tree viewer.

        This implementation uses the input element provider to obtain an IElement corresponding to the editor input and returns an outline element corresponding to the IElement, as determined by the content adapter.

        Specified by:
        computeInput in class CommonOutlinePage
        Returns:
        the input element (may be null)
      • getInputElementProvider

        protected abstract IInputElementProvider getInputElementProvider()
        Returns the input element provider for this outline page.
        Returns:
        the input element provider for this outline page
      • addOutlineContributions

        protected void addOutlineContributions()
        Hook to add contributions to this outline page.

        Default implementation adds contributions that are common to a typical outline, including collapse-all, link-with-editor, and sorting support. Subclasses may extend this method.

      • addCollapseAllSupport

        protected void addCollapseAllSupport()
        Adds collapse-all support.

        Default implementation adds a CollapseAllActionContribution. Subclasses may override this method. In particular, if collapse-all support is not needed, this method may be overridden to do nothing.

      • addSortingSupport

        protected void addSortingSupport()
        Adds sorting support.

        Default implementation adds a LexicalSortActionContribution and a LexicalSortContribution. Subclasses may override this method. In particular, if sorting support is not needed, this method may be overridden to do nothing.

      • addElementChangeListener

        protected abstract void addElementChangeListener​(IElementChangeListener listener)
        Registers the given element change listener with the underlying model.
        Parameters:
        listener - never null
      • removeElementChangeListener

        protected abstract void removeElementChangeListener​(IElementChangeListener listener)
        Removes the given element change listener from the underlying model.
        Parameters:
        listener - never null
      • elementChanged

        protected void elementChanged​(IElementChangeEvent event)
        Notifies that this outline page is affected in some way by the given element change event.

        Note: This method may be called in any thread. The event object (and the deltas within it) is valid only for the duration of the invocation of this method.

        Default implementation schedules a full refresh of this outline page's tree viewer in the UI thread.

        Parameters:
        event - never null