Class DropTargetDragEvent
- java.lang.Object
-
- java.util.EventObject
-
- java.awt.dnd.DropTargetEvent
-
- java.awt.dnd.DropTargetDragEvent
-
- All Implemented Interfaces:
- Serializable
public class DropTargetDragEvent extends DropTargetEvent
TheDropTargetDragEvent
is delivered to aDropTargetListener
via its dragEnter() and dragOver() methods.The
DropTargetDragEvent
reports the source drop actions and the user drop action that reflect the current state of the drag operation.Source drop actions is a bitwise mask of
DnDConstants
that represents the set of drop actions supported by the drag source for this drag operation.User drop action depends on the drop actions supported by the drag source and the drop action selected by the user. The user can select a drop action by pressing modifier keys during the drag operation:
Ctrl + Shift -> ACTION_LINK Ctrl -> ACTION_COPY Shift -> ACTION_MOVE
If the user selects a drop action, the user drop action is one ofDnDConstants
that represents the selected drop action if this drop action is supported by the drag source orDnDConstants.ACTION_NONE
if this drop action is not supported by the drag source.If the user doesn't select a drop action, the set of
DnDConstants
that represents the set of drop actions supported by the drag source is searched forDnDConstants.ACTION_MOVE
, then forDnDConstants.ACTION_COPY
, then forDnDConstants.ACTION_LINK
and the user drop action is the first constant found. If no constant is found the user drop action isDnDConstants.ACTION_NONE
.- Since:
- 1.2
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class java.awt.dnd.DropTargetEvent
context
-
Fields inherited from class java.util.EventObject
source
-
-
Constructor Summary
Constructors Constructor and Description DropTargetDragEvent(DropTargetContext dtc, Point cursorLocn, int dropAction, int srcActions)
Construct aDropTargetDragEvent
given theDropTargetContext
for this operation, the location of the "Drag"Cursor
's hotspot in theComponent
's coordinates, the user drop action, and the source drop actions.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description void
acceptDrag(int dragOperation)
Accepts the drag.DataFlavor[]
getCurrentDataFlavors()
This method returns the currentDataFlavor
s from theDropTargetContext
.List<DataFlavor>
getCurrentDataFlavorsAsList()
This method returns the currentDataFlavor
s as ajava.util.List
int
getDropAction()
This method returns the user drop action.Point
getLocation()
This method returns aPoint
indicating theCursor
's current location within theComponent'
s coordinates.int
getSourceActions()
This method returns the source drop actions.Transferable
getTransferable()
This method returns the Transferable object that represents the data associated with the current drag operation.boolean
isDataFlavorSupported(DataFlavor df)
This method returns aboolean
indicating if the specifiedDataFlavor
is supported.void
rejectDrag()
Rejects the drag as a result of examining either thedropAction
or the availableDataFlavor
types.-
Methods inherited from class java.awt.dnd.DropTargetEvent
getDropTargetContext
-
Methods inherited from class java.util.EventObject
getSource, toString
-
-
-
-
Constructor Detail
DropTargetDragEvent
public DropTargetDragEvent(DropTargetContext dtc, Point cursorLocn, int dropAction, int srcActions)
Construct aDropTargetDragEvent
given theDropTargetContext
for this operation, the location of the "Drag"Cursor
's hotspot in theComponent
's coordinates, the user drop action, and the source drop actions.- Parameters:
-
dtc
- The DropTargetContext for this operation -
cursorLocn
- The location of the "Drag" Cursor's hotspot in Component coordinates -
dropAction
- The user drop action -
srcActions
- The source drop actions - Throws:
-
NullPointerException
- if cursorLocn is null -
IllegalArgumentException
- if dropAction is not one ofDnDConstants
. -
IllegalArgumentException
- if srcActions is not a bitwise mask ofDnDConstants
. -
IllegalArgumentException
- if dtc isnull
.
-
Method Detail
getLocation
public Point getLocation()
This method returns aPoint
indicating theCursor
's current location within theComponent'
s coordinates.- Returns:
-
the current cursor location in
Component
's coords.
getCurrentDataFlavors
public DataFlavor[] getCurrentDataFlavors()
This method returns the currentDataFlavor
s from theDropTargetContext
.- Returns:
- current DataFlavors from the DropTargetContext
getCurrentDataFlavorsAsList
public List<DataFlavor> getCurrentDataFlavorsAsList()
This method returns the currentDataFlavor
s as ajava.util.List
- Returns:
-
a
java.util.List
of the CurrentDataFlavor
s
isDataFlavorSupported
public boolean isDataFlavorSupported(DataFlavor df)
This method returns aboolean
indicating if the specifiedDataFlavor
is supported.- Parameters:
-
df
- theDataFlavor
to test - Returns:
- if a particular DataFlavor is supported
getSourceActions
public int getSourceActions()
This method returns the source drop actions.- Returns:
- the source drop actions
getDropAction
public int getDropAction()
This method returns the user drop action.- Returns:
- the user drop action
getTransferable
public Transferable getTransferable()
This method returns the Transferable object that represents the data associated with the current drag operation.- Returns:
- the Transferable associated with the drag operation
- Throws:
-
InvalidDnDOperationException
- if the data associated with the drag operation is not available - Since:
- 1.5
acceptDrag
public void acceptDrag(int dragOperation)
Accepts the drag. This method should be called from aDropTargetListeners
dragEnter
,dragOver
, anddropActionChanged
methods if the implementation wishes to accept an operation from the srcActions other than the one selected by the user as represented by thedropAction
.- Parameters:
-
dragOperation
- the operation accepted by the target
rejectDrag
public void rejectDrag()
Rejects the drag as a result of examining either thedropAction
or the availableDataFlavor
types.
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.