org.jdesktop.swingx.rollover
Class RolloverProducer

java.lang.Object
  extended by org.jdesktop.swingx.rollover.RolloverProducer
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.util.EventListener
Direct Known Subclasses:
ListRolloverProducer, TableRolloverProducer, TreeRolloverProducer

public abstract class RolloverProducer
extends java.lang.Object
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener

Mouse/Motion/Listener which maps mouse coordinates to client coordinates and stores these as client properties in the target JComponent. The exact mapping process is left to subclasses. Typically, they will map to "cell" coordinates.

Note: this class assumes that the target component is of type JComponent.

Note: this implementation is stateful, it can't be shared across different instances of a target component.

Author:
Jeanette Winzenburg

Field Summary
static java.lang.String CLICKED_KEY
          Key for client property mapped from mouse-triggered action.
static java.lang.String ROLLOVER_KEY
          Key for client property mapped from rollover events
 
Constructor Summary
RolloverProducer()
           
 
Method Summary
 void mouseClicked(java.awt.event.MouseEvent e)
          Implemented to do nothing.
 void mouseDragged(java.awt.event.MouseEvent e)
          Implemented to do nothing.
 void mouseEntered(java.awt.event.MouseEvent e)
          Implemented to map to client property rollover and fire only if client coordinate changed.
 void mouseExited(java.awt.event.MouseEvent e)
          Implemented to remove client properties rollover and clicked. if the source is a JComponent.
 void mouseMoved(java.awt.event.MouseEvent e)
          Implemented to map to client property rollover and fire only if client coordinate changed.
 void mousePressed(java.awt.event.MouseEvent e)
          Implemented to do nothing.
 void mouseReleased(java.awt.event.MouseEvent e)
          Implemented to map to client property clicked and fire always.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLICKED_KEY

public static final java.lang.String CLICKED_KEY
Key for client property mapped from mouse-triggered action. Note that the actual mouse-event which results in setting the property depends on the implementation of the concrete RolloverProducer.

See Also:
Constant Field Values

ROLLOVER_KEY

public static final java.lang.String ROLLOVER_KEY
Key for client property mapped from rollover events

See Also:
Constant Field Values
Constructor Detail

RolloverProducer

public RolloverProducer()
Method Detail

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Implemented to map to client property clicked and fire always.

Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Implemented to map to client property rollover and fire only if client coordinate changed.

Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Implemented to remove client properties rollover and clicked. if the source is a JComponent. Does nothing otherwise.

Specified by:
mouseExited in interface java.awt.event.MouseListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Implemented to do nothing.

Specified by:
mouseClicked in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Implemented to do nothing.

Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Implemented to do nothing. PENDING JW: probably should do something? Mapped coordinates will be out of synch after a drag.

Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Implemented to map to client property rollover and fire only if client coordinate changed.

Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener