## Uses of Interface
java.awt.dnd.DragSourceListener

- Packages that use DragSourceListener
  Package | Description
  --- | ---
  java.awt.dnd | Drag and Drop is a direct manipulation gesture found in many Graphical User Interface systems that provides a mechanism to transfer information between two entities logically associated with presentation elements in the GUI.

- - ### Uses of DragSourceListener in java.awt.dnd

    Classes in java.awt.dnd that implement DragSourceListener
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DragSourceAdapter` | An abstract adapter class for receiving drag source events.
    `class` | `DragSourceContext` | The `DragSourceContext` class is responsible for managing the initiator side of the Drag and Drop protocol.

    Methods in java.awt.dnd that return DragSourceListener
    Modifier and Type | Method | Description
    --- | --- | ---
    `DragSourceListener[]` | DragSource.`getDragSourceListeners()` | Gets all the `DragSourceListener`s registered with this `DragSource`.

    Methods in java.awt.dnd with parameters of type DragSourceListener
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | DragSource.`addDragSourceListener​(DragSourceListener dsl)` | Adds the specified `DragSourceListener` to this `DragSource` to receive drag source events during drag operations initiated with this `DragSource`.
    `void` | DragSourceContext.`addDragSourceListener​(DragSourceListener dsl)` | Add a `DragSourceListener` to this `DragSourceContext` if one has not already been added.
    `protected DragSourceContext` | DragSource.`createDragSourceContext​(DragGestureEvent dgl, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable t, DragSourceListener dsl)` | Creates the `DragSourceContext` to handle the current drag operation.
    `void` | DragSource.`removeDragSourceListener​(DragSourceListener dsl)` | Removes the specified `DragSourceListener` from this `DragSource`.
    `void` | DragSourceContext.`removeDragSourceListener​(DragSourceListener dsl)` | Removes the specified `DragSourceListener` from this `DragSourceContext`.
    `void` | DragGestureEvent.`startDrag​(Cursor dragCursor, Transferable transferable, DragSourceListener dsl)` | Starts the drag given the initial `Cursor` to display, the `Transferable` object, and the `DragSourceListener` to use.
    `void` | DragGestureEvent.`startDrag​(Cursor dragCursor, Image dragImage, Point imageOffset, Transferable transferable, DragSourceListener dsl)` | Start the drag given the initial `Cursor` to display, a drag `Image`, the offset of the `Image`, the `Transferable` object, and the `DragSourceListener` to use.
    `void` | DragSource.`startDrag​(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl)` | Start a drag, given the `DragGestureEvent` that initiated the drag, the initial `Cursor` to use, the `Transferable` subject data of the drag, and the `DragSourceListener`.
    `void` | DragSource.`startDrag​(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap)` | Start a drag, given the `DragGestureEvent` that initiated the drag, the initial `Cursor` to use, the `Transferable` subject data of the drag, the `DragSourceListener`, and the `FlavorMap`.
    `void` | DragSource.`startDrag​(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point dragOffset, Transferable transferable, DragSourceListener dsl)` | Start a drag, given the `DragGestureEvent` that initiated the drag, the initial `Cursor` to use, the `Image` to drag, the offset of the `Image` origin from the hotspot of the `Cursor` at the instant of the trigger, the subject data of the drag, and the `DragSourceListener`.
    `void` | DragSource.`startDrag​(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap)` | Start a drag, given the `DragGestureEvent` that initiated the drag, the initial `Cursor` to use, the `Image` to drag, the offset of the `Image` origin from the hotspot of the `Cursor` at the instant of the trigger, the `Transferable` subject data of the drag, the `DragSourceListener`, and the `FlavorMap`.

    Constructors in java.awt.dnd with parameters of type DragSourceListener
    Constructor | Description
    --- | ---
    `DragSourceContext​(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point offset, Transferable t, DragSourceListener dsl)` | Called from `DragSource`, this constructor creates a new `DragSourceContext` given the `DragSourceContextPeer` for this Drag, the `DragGestureEvent` that triggered the Drag, the initial `Cursor` to use for the Drag, an (optional) `Image` to display while the Drag is taking place, the offset of the `Image` origin from the hotspot at the instant of the triggering event, the `Transferable` subject data, and the `DragSourceListener` to use during the Drag and Drop operation.