Package org.eclipse.handly.ui.outline

# Class OutlineDragAndDropContribution

java.lang.Object
org.eclipse.handly.ui.outline.OutlineContribution
org.eclipse.handly.ui.outline.OutlineDragAndDropContribution

All Implemented Interfaces:
  `IOutlineContribution`

public abstract class OutlineDragAndDropContribution extends OutlineContribution
An abstract base class for outline drag-and-drop contributions.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `OutlineDragAndDropContribution()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected abstract ViewerDragSupport`
  `createDragSupport()`
  Returns a ready to start instance of `ViewerDragSupport` for the outline page.
  `protected abstract ViewerDropSupport`
  `createDropSupport()`
  Returns a ready to start instance of `ViewerDropSupport` for the outline page.
  `void`
  `dispose()`
  Disposes of this contribution.
  `void`
  `init(ICommonOutlinePage outlinePage)`
  Initializes this contribution.

  ### Methods inherited from class org.eclipse.handly.ui.outline.OutlineContribution

  `getOutlinePage`

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

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

- ## Constructor Details

  - ### OutlineDragAndDropContribution

    public OutlineDragAndDropContribution()

- ## Method Details

  - ### init

    public void init(ICommonOutlinePage outlinePage)
    Initializes this contribution. This method is called after the outline page's tree viewer has been created.

    This method may be extended by subclasses. Subclasses must call the superclass implementation.

    `OutlineDragAndDropContribution` extends this method to add `drag` and `drop` support to the outline. The `feedback enablement` for the drop support is governed by the `lexical sort` preference.

    Specified by:
      `init` in interface `IOutlineContribution`
    Overrides:
      `init` in class `OutlineContribution`
    Parameters:
      `outlinePage` - the contribution's outline page (never `null`)

  - ### dispose

    public void dispose()
    Description copied from class: `OutlineContribution`
    Disposes of this contribution. Implementors should clean up any resources associated with this contribution. Note that there is no guarantee that `init()` has been called. This method has no effect if this contribution has already been disposed.

    This method may be extended by subclasses. Subclasses must call the superclass implementation.

    Specified by:
      `dispose` in interface `IOutlineContribution`
    Overrides:
      `dispose` in class `OutlineContribution`

  - ### createDragSupport

    protected abstract ViewerDragSupport createDragSupport()
    Returns a ready to start instance of `ViewerDragSupport` for the outline page.
    Returns:
      a ready to start instance of `ViewerDragSupport` (not `null`)

  - ### createDropSupport

    protected abstract ViewerDropSupport createDropSupport()
    Returns a ready to start instance of `ViewerDropSupport` for the outline page.
    Returns:
      a ready to start instance of `ViewerDropSupport` (not `null`)