//----------------------------------------------------------------------------// // // // M o u s e M o n i t o r // // // //----------------------------------------------------------------------------// // <editor-fold defaultstate="collapsed" desc="hdr"> // // Copyright © Hervé Bitteur and others 2000-2013. All rights reserved. // // This software is released under the GNU General Public License. // // Goto http://kenai.com/projects/audiveris to report bugs or suggestions. // //----------------------------------------------------------------------------// // </editor-fold> package omr.ui.view; import omr.selection.MouseMovement; import java.awt.Point; import java.awt.Rectangle; /** * Interface {@code MouseMonitor} defines the entries of an entity to * be notified of mouse actions. This is ordinarily used in conjunction * with a {@link omr.ui.view.Rubber}. * * @author Hervé Bitteur */ public interface MouseMonitor { //~ Methods ---------------------------------------------------------------- /** * Contextual action (by right button click + control) of an * additional point * * @param pt the current point in model pixel coordinates * @param movement the mouse movement */ void contextAdded (Point pt, MouseMovement movement); /** * Contextual action (by right button click) * * @param pt the current point in model pixel coordinates * @param movement the mouse movement */ void contextSelected (Point pt, MouseMovement movement); /** * Selection (by left button click + control) of an additional point * * @param pt the added point in model pixel coordinates * @param movement the mouse movement */ void pointAdded (Point pt, MouseMovement movement); /** * Selection (by left button click) * * @param pt the selected point in model pixel coordinates * @param movement the mouse movement */ void pointSelected (Point pt, MouseMovement movement); /** * Selection (by left button drag) of a rectangle when mouse is * released * * @param rect the selected rectangle in model pixel coordinates * @param movement the mouse movement */ void rectangleSelected (Rectangle rect, MouseMovement movement); /** * Rectangle zoom (by shift + ctrl) at end of rectangle selection * * @param rect the rectangle in model pixel coordinates, which defines * the focus and the zoom ratio * @param movement the mouse movement */ void rectangleZoomed (Rectangle rect, MouseMovement movement); }