List of usage examples for javax.swing JComponent getTransferHandler
public TransferHandler getTransferHandler()
transferHandler
property. From source file:org.photovault.swingui.PhotoCollectionThumbView.java
protected void handleDnDDragEvent(MouseEvent e) { //Don't bother to drag if no photo is selected if (selection.isEmpty()) { return;// w w w . j a v a 2 s .co m } if (firstMouseEvent != null) { log.debug("considering drag"); e.consume(); //If they are holding down the control key, COPY rather than MOVE int ctrlMask = InputEvent.CTRL_DOWN_MASK; int action = e.isControlDown() ? TransferHandler.COPY : TransferHandler.MOVE; int dx = Math.abs(e.getX() - firstMouseEvent.getX()); int dy = Math.abs(e.getY() - firstMouseEvent.getY()); //Arbitrarily define a 5-pixel shift as the //official beginning of a drag. if (dx > 5 || dy > 5) { log.debug("Start a drag"); //This is a drag, not a click. JComponent c = (JComponent) e.getSource(); //Tell the transfer handler to initiate the drag. TransferHandler handler = c.getTransferHandler(); handler.exportAsDrag(c, firstMouseEvent, action); firstMouseEvent = null; } } }