javax.swing.plaf.basic
Class BasicDragGestureRecognizer

java.lang.Object
  extended byjavax.swing.plaf.basic.BasicDragGestureRecognizer
All Implemented Interfaces:
EventListener, MouseListener, MouseMotionListener
Direct Known Subclasses:
BasicListUI.ListDragGestureRecognizer, BasicTableUI.TableDragGestureRecognizer, BasicTextUI.TextDragGestureRecognizer, BasicTreeUI.TreeDragGestureRecognizer

class BasicDragGestureRecognizer
extends Object
implements MouseListener, MouseMotionListener

Default drag gesture recognition for drag operations performed by classses that have a dragEnabled property. The gesture for a drag in this package is a mouse press over a selection followed by some movement by enough pixels to keep it from being treated as a click.

Author:
Timothy Prinzing

Field Summary
private static boolean checkedMotionThreshold
           
private  MouseEvent dndArmedEvent
           
private static int motionThreshold
           
 
Constructor Summary
(package private) BasicDragGestureRecognizer()
           
 
Method Summary
protected  JComponent getComponent(MouseEvent e)
           
private static int getMotionThreshold()
           
private  TransferHandler getTransferHandler(MouseEvent e)
           
protected  boolean isDragPossible(MouseEvent e)
          Determines if the following are true: the press event is located over a selection the dragEnabled property is true A TranferHandler is installed This is implemented to check for a TransferHandler.
protected  int mapDragOperationFromModifiers(MouseEvent e)
           
 void mouseClicked(MouseEvent e)
          Invoked when the mouse button has been clicked (pressed and released) on a component.
 void mouseDragged(MouseEvent e)
          Invoked when a mouse button is pressed on a component and then dragged.
 void mouseEntered(MouseEvent e)
          Invoked when the mouse enters a component.
 void mouseExited(MouseEvent e)
          Invoked when the mouse exits a component.
 void mouseMoved(MouseEvent e)
          Invoked when the mouse cursor has been moved onto a component but no buttons have been pushed.
 void mousePressed(MouseEvent e)
          Invoked when a mouse button has been pressed on a component.
 void mouseReleased(MouseEvent e)
          Invoked when a mouse button has been released on a component.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

dndArmedEvent

private MouseEvent dndArmedEvent

motionThreshold

private static int motionThreshold

checkedMotionThreshold

private static boolean checkedMotionThreshold
Constructor Detail

BasicDragGestureRecognizer

BasicDragGestureRecognizer()
Method Detail

getMotionThreshold

private static int getMotionThreshold()

mapDragOperationFromModifiers

protected int mapDragOperationFromModifiers(MouseEvent e)

mouseClicked

public void mouseClicked(MouseEvent e)
Description copied from interface: MouseListener
Invoked when the mouse button has been clicked (pressed and released) on a component.

Specified by:
mouseClicked in interface MouseListener

mousePressed

public void mousePressed(MouseEvent e)
Description copied from interface: MouseListener
Invoked when a mouse button has been pressed on a component.

Specified by:
mousePressed in interface MouseListener

mouseReleased

public void mouseReleased(MouseEvent e)
Description copied from interface: MouseListener
Invoked when a mouse button has been released on a component.

Specified by:
mouseReleased in interface MouseListener

mouseEntered

public void mouseEntered(MouseEvent e)
Description copied from interface: MouseListener
Invoked when the mouse enters a component.

Specified by:
mouseEntered in interface MouseListener

mouseExited

public void mouseExited(MouseEvent e)
Description copied from interface: MouseListener
Invoked when the mouse exits a component.

Specified by:
mouseExited in interface MouseListener

mouseDragged

public void mouseDragged(MouseEvent e)
Description copied from interface: MouseMotionListener
Invoked when a mouse button is pressed on a component and then dragged. MOUSE_DRAGGED events will continue to be delivered to the component where the drag originated until the mouse button is released (regardless of whether the mouse position is within the bounds of the component).

Due to platform-dependent Drag&Drop implementations, MOUSE_DRAGGED events may not be delivered during a native Drag&Drop operation.

Specified by:
mouseDragged in interface MouseMotionListener

mouseMoved

public void mouseMoved(MouseEvent e)
Description copied from interface: MouseMotionListener
Invoked when the mouse cursor has been moved onto a component but no buttons have been pushed.

Specified by:
mouseMoved in interface MouseMotionListener

getTransferHandler

private TransferHandler getTransferHandler(MouseEvent e)

isDragPossible

protected boolean isDragPossible(MouseEvent e)
Determines if the following are true:

This is implemented to check for a TransferHandler. Subclasses should perform the remaining conditions.


getComponent

protected JComponent getComponent(MouseEvent e)