public abstract class CommonDragAdapterAssistant extends Object
CommonDragAdapter
by providing new TransferTypes and the
logic to handle setting up the transfer data. Clients must extend this class
as part of the org.eclipse.ui.navigator.viewer/dragAssistant
extension. By default, the Common Navigator supports
LocalSelectionTransfer
and PluginTransfer
.
Clients may extend this class.
Constructor and Description |
---|
CommonDragAdapterAssistant() |
Modifier and Type | Method and Description |
---|---|
void |
dragFinished(DragSourceEvent anEvent,
IStructuredSelection aSelection)
Allows the drag assistant to do any necessary cleanup after the drop operation
is done.
|
void |
dragStart(DragSourceEvent anEvent,
IStructuredSelection aSelection)
Allows the drag assistant indicate it wants to participate in the drag operation.
|
INavigatorContentService |
getContentService() |
Shell |
getShell() |
abstract Transfer[] |
getSupportedTransferTypes()
Extra TransferTypes allow the Navigator to generate different kinds of
payloads for DND clients.
|
void |
setContentService(INavigatorContentService aContentService)
Accept and remember the content service this assistant is associated
with.
|
abstract boolean |
setDragData(DragSourceEvent anEvent,
IStructuredSelection aSelection)
Set the value of the
Event.data field using the given selection. |
public abstract Transfer[] getSupportedTransferTypes()
CommonDragAdapter
supports LocalSelectionTransfer
and PluginTransfer
.
CommonDragAdapterAssistants can extend the available TransferTypes that a
Common Navigator Viewer can generate. Clients should return the set of
Transfer Types they support. When a drop event occurs, the available drag
assistants will be searched for a enabled assistants for the
DragSourceEvent
. Only if the drop event occurs will
setDragData(DragSourceEvent, IStructuredSelection)
be called. If
the drop event is cancelled,
setDragData(DragSourceEvent, IStructuredSelection)
will not be
called.
public abstract boolean setDragData(DragSourceEvent anEvent, IStructuredSelection aSelection)
Event.data
field using the given selection.
Clients will only have an opportunity to set the drag data if they have
returned a matching Transfer Type from
getSupportedTransferTypes()
for the
DragSourceEvent.dataType
.
Clients will only have an opportunity to set the data when the drop event occurs. If the drop operation is cancelled, then this method will not be called.
anEvent
- The event object should have its Event.data
field set
to a value that matches a supported TransferData
type.aSelection
- The current selection from the viewer.public void dragStart(DragSourceEvent anEvent, IStructuredSelection aSelection)
DragSourceListener.dragStart(DragSourceEvent)
time.anEvent
- The event object should return doit = true if it wants to participate
in the drag and set doit = false if it does not want to further
participate.aSelection
- The current selection from the viewer.public void dragFinished(DragSourceEvent anEvent, IStructuredSelection aSelection)
DragSourceListener.dragFinished(DragSourceEvent)
time. This is called on the same assistant that was called for the set data.anEvent
- The event object should have its Event.data
field set
to a value that matches a supported TransferData
type.aSelection
- The current selection from the viewer.public final void setContentService(INavigatorContentService aContentService)
aContentService
- public INavigatorContentService getContentService()
public final Shell getShell()
Copyright (c) 2000, 2015 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.