JavaTM 2 Platform
Std. Ed. v1.4.0

java.awt.dnd
Class DropTargetDropEvent

java.lang.Object
  |
  +--java.util.EventObject
        |
        +--java.awt.dnd.DropTargetEvent
              |
              +--java.awt.dnd.DropTargetDropEvent
All Implemented Interfaces:
Serializable

public class DropTargetDropEvent
extends DropTargetEvent

The DropTargetDropEvent is delivered via the DropTargetListener drop() method.

The DropTargetDropEvent reports the source drop actions and the user drop action that reflect the current state of the drag-and-drop 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-and-drop 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 of DnDConstants that represents the selected drop action if this drop action is supported by the drag source or DnDConstants.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 for DnDConstants.ACTION_MOVE, then for DnDConstants.ACTION_COPY, then for DnDConstants.ACTION_LINK and the user drop action is the first constant found. If no constant is found the user drop action is DnDConstants.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
DropTargetDropEvent(DropTargetContext dtc, Point cursorLocn, int dropAction, int srcActions)
          Construct a DropTargetDropEvent given the DropTargetContext for this operation, the location of the drag Cursor's hotspot in the Component's coordinates, the currently selected user drop action, and the current set of actions supported by the source.
DropTargetDropEvent(DropTargetContext dtc, Point cursorLocn, int dropAction, int srcActions, boolean isLocal)
          Construct a DropTargetEvent given the DropTargetContext for this operation, the location of the drag Cursor's hotspot in the Component's coordinates, the currently selected user drop action, the current set of actions supported by the source, and a boolean indicating if the source is in the same JVM as the target.
 
Method Summary
 void acceptDrop(int dropAction)
          accept the drop, using the specified action.
 void dropComplete(boolean success)
          This method notifies the DragSource that the drop transfer(s) are completed.
 DataFlavor[] getCurrentDataFlavors()
          This method returns the current DataFlavors.
 List getCurrentDataFlavorsAsList()
          This method returns the currently available DataFlavors as a java.util.List.
 int getDropAction()
          This method returns the user drop action.
 Point getLocation()
          This method returns a Point indicating the Cursor's current location in the Component's coordinates.
 int getSourceActions()
          This method returns the source drop actions.
 Transferable getTransferable()
          This method returns the Transferable object associated with the drop.
 boolean isDataFlavorSupported(DataFlavor df)
          This method returns a boolean indicating if the specified DataFlavor is available from the source.
 boolean isLocalTransfer()
          This method returns an int indicating if the source is in the same JVM as the target.
 void rejectDrop()
          reject the Drop.
 
Methods inherited from class java.awt.dnd.DropTargetEvent
getDropTargetContext
 
Methods inherited from class java.util.EventObject
getSource, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DropTargetDropEvent

public DropTargetDropEvent(DropTargetContext dtc,
                           Point cursorLocn,
                           int dropAction,
                           int srcActions)
Construct a DropTargetDropEvent given the DropTargetContext for this operation, the location of the drag Cursor's hotspot in the Component's coordinates, the currently selected user drop action, and the current set of actions supported by the source. By default, this constructor assumes that the target is not in the same virtual machine as the source; that is, isLocalTransfer() will return false.

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 of DnDConstants.

DropTargetDropEvent

public DropTargetDropEvent(DropTargetContext dtc,
                           Point cursorLocn,
                           int dropAction,
                           int srcActions,
                           boolean isLocal)
Construct a DropTargetEvent given the DropTargetContext for this operation, the location of the drag Cursor's hotspot in the Component's coordinates, the currently selected user drop action, the current set of actions supported by the source, and a boolean indicating if the source is in the same JVM as the target.

Parameters:
dtc - The DropTargetContext for this operation
cursorLocn - The location of the "Drag" Cursor's hotspot in Component's coordinates
dropAction - the user drop action.
srcActions - the source drop actions.
Throws:
NullPointerException - if cursorLocn is null
IllegalArgumentException - if dropAction is not one of DnDConstants.
Method Detail

getLocation

public Point getLocation()
This method returns a Point indicating the Cursor's current location in the Component's coordinates.

Returns:
the current Cursor location in Component's coords.

getCurrentDataFlavors

public DataFlavor[] getCurrentDataFlavors()
This method returns the current DataFlavors.

Returns:
current DataFlavors

getCurrentDataFlavorsAsList

public List getCurrentDataFlavorsAsList()
This method returns the currently available DataFlavors as a java.util.List.

Returns:
the currently available DataFlavors as a java.util.List

isDataFlavorSupported

public boolean isDataFlavorSupported(DataFlavor df)
This method returns a boolean indicating if the specified DataFlavor is available from the source.

Parameters:
df - the DataFlavor to test

Returns:
if the DataFlavor specified is available from the source

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 actions.

getTransferable

public Transferable getTransferable()
This method returns the Transferable object associated with the drop.

Returns:
the Transferable associated with the drop

acceptDrop

public void acceptDrop(int dropAction)
accept the drop, using the specified action.

Parameters:
dropAction - the specified action

rejectDrop

public void rejectDrop()
reject the Drop.


dropComplete

public void dropComplete(boolean success)
This method notifies the DragSource that the drop transfer(s) are completed.

Parameters:
success - a boolean indicating that the drop transfer(s) are completed.

isLocalTransfer

public boolean isLocalTransfer()
This method returns an int indicating if the source is in the same JVM as the target.

Returns:
if the Source is in the same JVM

JavaTM 2 Platform
Std. Ed. v1.4.0

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.