Package be.ugent.caagt.swirl.mouse

Provides mouse overlay panels which enable different mouse 'tools' to be associated with a single panel.

See:
          Description

Interface Summary
MouseHandler Handles certain types of mouse events and provides visual feedback.
 

Class Summary
MouseOverlay Invisible component which overlays another component in order to handle mouse operations for it.
MouseTool Wraps a list of mouse handlers for use with a MouseOverlay.
NullMouseHandler Mouse handler that does not perform any action.
 

Package be.ugent.caagt.swirl.mouse Description

Provides mouse overlay panels which enable different mouse 'tools' to be associated with a single panel. Useful when mouse actions differ according to context: clicking on a graphical object and dragging it activates one tool, while clicking (and dragging) on the panel but not on an object activates another tool (which for instance displays a selection rectangle). This allows a complicated mouse listener to be split into several independent classes.

A group of related mouse actions should be implemented as a subclass of MouseHandler. A set of mouse handlers can be registered with a single MouseTool which must then be associated to a MouseOverlay. Finally, this panel should be added as a child to a given component and will then track all mouse actions for that component.