Example usage for java.awt.dnd DropTargetDragEvent getTransferable

List of usage examples for java.awt.dnd DropTargetDragEvent getTransferable

Introduction

In this page you can find the example usage for java.awt.dnd DropTargetDragEvent getTransferable.

Prototype

public Transferable getTransferable() 

Source Link

Document

This method returns the Transferable object that represents the data associated with the current drag operation.

Usage

From source file:org.pentaho.reporting.designer.core.util.dnd.GenericDNDHandler.java

/**
 * Called when a drag operation is ongoing, while the mouse pointer is still over the operable part of the drop site
 * for the <code>DropTarget</code> registered with this listener.
 *
 * @param dtde the <code>DropTargetDragEvent</code>
 */// www .j  ava 2  s. c om

public void dragOver(final DropTargetDragEvent dtde) {
    final Transferable transferable = dtde.getTransferable();

    for (int i = 0; i < acceptedFlavors.length; i++) {
        final DataFlavor acceptedFlavor = acceptedFlavors[i];
        if (transferable.isDataFlavorSupported(acceptedFlavor)) {
            // a transfer from the palette.
            try {
                transferData = transferable.getTransferData(acceptedFlavor);
                position = dtde.getLocation();
                flavor = acceptedFlavor;
                final int result = updateDragOver(dtde);
                if (result > 0) {
                    dtde.acceptDrag(DnDConstants.ACTION_COPY);
                } else {
                    transferData = null;
                    position = null;
                    flavor = null;
                    dtde.rejectDrag();
                }
                break;
            } catch (Exception e) {
                if (logger.isDebugEnabled()) {
                    logger.debug("ReportPanel.dragOver ", e); // NON-NLS
                }
                transferData = null;
                position = null;
                flavor = null;
                dtde.rejectDrag();
            }
        }
    }
}

From source file:tvbrowser.ui.mainframe.MainFrame.java

@Override
public void dragEnter(DropTargetDragEvent dtde) {
    File[] files = getDragDropPlugins(dtde.getCurrentDataFlavors(), dtde.getTransferable());
    if (files.length > 0) {
        dtde.acceptDrag(dtde.getDropAction());
    } else {//from   w ww . j a va  2  s.c  o m
        dtde.rejectDrag();
    }
}