|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectnet.sourceforge.java.util.gui.jface.viewers.dnd.TreeViewerDnDHandler
Enhances a JFace TreeViewer instance displaying
IMutableTreeElement domain objects with Drag'n Drop support.
| Field Summary | |
private IMutableTreeElement |
sourceElement
The source IMutableTreeElement of a DnD operation |
private IMutableTreeElement |
targetElement
The target IMutableTreeElement of a DnD operation |
private TreeViewer |
viewer
The TreeViewer to enhance with DnD support |
| Constructor Summary | |
TreeViewerDnDHandler(TreeViewer viewer)
Creates a new TreeViewerDnDHandler for the specified
TreeViewer.
|
|
| Method Summary | |
void |
dragEnter(DropTargetEvent event)
The cursor has entered the drop target boundaries. |
void |
dragFinished(DragSourceEvent event)
The drop has successfully completed(mouse up over a valid target) or has been terminated (such as hitting the ESC key). |
void |
dragLeave(DropTargetEvent event)
The cursor has left the drop target boundaries OR the drop has been cancelled OR the data is about to be dropped. |
void |
dragOperationChanged(DropTargetEvent event)
The operation being performed has changed (usually due to the user changing the selected modifier key(s) while dragging). |
void |
dragOver(DropTargetEvent event)
The cursor is moving over the drop target. |
void |
dragSetData(DragSourceEvent event)
The data is required from the drag source. |
void |
dragStart(DragSourceEvent event)
The user has begun the actions required to drag the widget. |
void |
drop(DropTargetEvent event)
The data is being dropped. |
void |
dropAccept(DropTargetEvent event)
The drop is about to be performed. |
boolean |
isValidTarget(Item targetItem)
Verifies if the specified Item is accepted as valid target
for a DnD operation.
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
private TreeViewer viewer
The TreeViewer to enhance with DnD support
private IMutableTreeElement sourceElement
The source IMutableTreeElement of a DnD operation
private IMutableTreeElement targetElement
The target IMutableTreeElement of a DnD operation
| Constructor Detail |
public TreeViewerDnDHandler(TreeViewer viewer)
Creates a new TreeViewerDnDHandler for the specified
TreeViewer.
viewer - the TreeViewer for which to add DnD support| Method Detail |
public void dragStart(DragSourceEvent event)
The user has begun the actions required to drag the widget. This event gives the application the chance to decide if a drag should be started.
The following fields in the DragSourceEvent apply:
dragStart in interface DragSourceListenerevent - the information associated with the drag start eventDragSourceEventpublic void dragSetData(DragSourceEvent event)
The data is required from the drag source.
The following fields in the DragSourceEvent apply:
dragSetData in interface DragSourceListenerevent - the information associated with the drag set data eventDragSourceEventpublic void dragFinished(DragSourceEvent event)
The drop has successfully completed(mouse up over a valid target) or has been terminated (such as hitting the ESC key). Perform cleanup such as removing data from the source side on a successful move operation.
The following fields in the DragSourceEvent apply:
dragFinished in interface DragSourceListenerevent - the information associated with the drag finished eventDragSourceEventpublic void dragEnter(DropTargetEvent event)
The cursor has entered the drop target boundaries.
The following fields in the DropTargetEvent apply:
The operation value is determined by the modifier keys
pressed by the user. If no keys are pressed the event.detail
field is set to DND.DROP_DEFAULT. If the application does not set the
event.detail to something other than
DND.DROP_DEFAULT the operation will be set to the platform
defined standard default.
The currentDataType is determined by the first transfer
agent specified in setTransfer() that matches a data type provided by the
drag source.
It is possible to get a DragEnter event when the drag source does not provide any matching data. In this case, the default operation is DND.DROP_NONE and the currentDataType is null.
The application can change the operation that will be performed by
modifying the detail field but the choice must be one of
the values in the operations field or DND.DROP_NONE.
The application can also change the type of data being requested by
modifying the currentDataTypes field but the value must be
one of the values in the dataTypes list.
dragEnter in interface DropTargetListenerevent - the information associated with the drag enter eventDropTargetEventpublic void dragLeave(DropTargetEvent event)
The cursor has left the drop target boundaries OR the drop has been cancelled OR the data is about to be dropped.
The following fields in the DropTargetEvent apply:
dragLeave in interface DropTargetListenerevent - the information associated with the drag leave eventDropTargetEventpublic void dragOperationChanged(DropTargetEvent event)
The operation being performed has changed (usually due to the user changing the selected modifier key(s) while dragging).
The following fields in the DropTargetEvent apply:
The operation value is determined by the modifier keys
pressed by the user. If no keys are pressed the event.detail
field is set to DND.DROP_DEFAULT. If the application does not set the
event.detail to something other than
DND.DROP_DEFAULT the operation will be set to the platform
defined standard default.
The currentDataType value is determined by the value
assigned to currentDataType in previous dragEnter and
dragOver calls.
The application can change the operation that will be performed by
modifying the detail field but the choice must be one of
the values in the operations field.
The application can also change the type of data being requested by
modifying the currentDataTypes field but the value must be
one of the values in the dataTypes list.
dragOperationChanged in interface DropTargetListenerevent - the information associated with the drag operation changed
eventDropTargetEventpublic void dragOver(DropTargetEvent event)
The cursor is moving over the drop target.
The following fields in the DropTargetEvent apply:
The operation value is determined by the value assigned to
currentDataType in previous dragEnter and dragOver calls.
The currentDataType value is determined by the value
assigned to currentDataType in previous dragEnter and
dragOver calls.
The application can change the operation that will be performed by
modifying the detail field but the choice must be one of
the values in the operations field.
The application can also change the type of data being requested by
modifying the currentDataTypes field but the value must be
one of the values in the dataTypes list.
NOTE: At this point the data field is null. On some
platforms, it is possible to obtain the data being transferred before the
transfer occurs but in most platforms this is not possible. On those
platforms where the data is available, the application can access the
data as follows:
public void dragOver(DropTargetEvent event) {
TextTransfer textTransfer = TextTransfer.getInstance();
String data = (String) textTransfer.nativeToJava(event.currentDataType);
if (data != null) {
System.out.println("Data to be dropped is (Text)" + data);
}
};
dragOver in interface DropTargetListenerevent - the information associated with the drag over eventDropTargetEventpublic void drop(DropTargetEvent event)
The data is being dropped. The data field contains java format of the data being dropped. To determine the type of the data object, refer to the documentation for the Transfer subclass specified in event.currentDataType.
The following fields in DropTargetEvent apply:
The application can refuse to perform the drop operation by setting the detail field to DND.DROP_NONE.
drop in interface DropTargetListenerevent - the information associated with the drop eventDropTargetEventpublic void dropAccept(DropTargetEvent event)
The drop is about to be performed. The drop target is given a last chance to change the nature of the drop.
The following fields in the DropTargetEvent apply:
The application can veto the drop by setting the
event.detail field to DND.DROP_NONE.
The application can change the operation that will be performed by
modifying the detail field but the choice must be one of
the values in the operations field.
The application can also change the type of data being requested by
modifying the currentDataTypes field but the value must be
one of the values in the < code>dataTypes list.
dropAccept in interface DropTargetListenerevent - the information associated with the drop accept eventDropTargetEventpublic boolean isValidTarget(Item targetItem)
Verifies if the specified Item is accepted as valid target
for a DnD operation.
targetItem - the Item to validate
true if the specified Itemis
accepted as target; false if rejected
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||