/** * This file is protected by Copyright. * Please refer to the COPYRIGHT file distributed with this source distribution. * * This file is part of REDHAWK IDE. * * All rights reserved. This program and the accompanying materials are made available under * the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html. * */ package gov.redhawk.ui.port.nxmplot; /** * @since 3.0 */ public interface IPlotWidgetListener { /** * Called when the mouse is moved on the plot. * * @param x the x position of the mouse * @param y the y position of the mouse * @param t the t position of the mouse */ void motion(double x, double y, double t); /** * Called when the mouse is clicked on the plot. * * @param x the x position of the mouse click * @param y the y position of the mouse click * @param t the t position of the mouse click */ void click(double x, double y, double t); /** * Called when a zoomIn takes place. * * @param xmin min x position of the zoom box * @param ymin min y position of the zoom box * @param xmax max x position of the zoom box * @param ymax max y position of the zoom box * @param data the data object from the message, used for forwarding messages to other plots */ void zoomIn(double xmin, double ymin, double xmax, double ymax, Object data); /** * Called when a zoomX takes place. * * @param xmin min x position of the zoom box * @param ymin min y position of the zoom box * @param xmax max x position of the zoom box * @param ymax max y position of the zoom box * @param data the data object from the message, used for forwarding messages to other plots * @since 4.0 */ void zoomX(double xmin, double ymin, double xmax, double ymax, Object data); /** * Called when a box is dragged on the plot. * * @param xmin min x position 1 of the box * @param ymin min y position 1 of the box * @param xmax max x position 2 of the box * @param ymax max y position 2 of the box */ void dragBox(double xmin, double ymin, double xmax, double ymax); /** * Called when a zoom out is requested. * * @param x1 x position 1 of the resulting zoom out * @param y1 y position 1 of the resulting zoom out * @param x2 x position 2 of the resulting zoom out * @param y2 y position 2 of the resulting zoom out * @param data the data object from the message, used for forwarding messages to other plots */ void zoomOut(double x1, double y1, double x2, double y2, Object data); /** * Called when an unzoom is requested. * * @param x1 x position 1 of the resulting unzoom * @param y1 y position 1 of the resulting unzoom * @param x2 x position 2 of the resulting unzoom * @param y2 y position 2 of the resulting unzoom * @param data the data object from the message, used for forwarding messages to other plots * @since 4.0 */ void unzoom(double x1, double y1, double x2, double y2, Object data); /** * Called when the plot is panned. * * @param x1 x position 1 of the pan * @param y1 y position 1 of the pan * @param x2 x position 2 of the pan * @param y2 y position 2 of the pan */ void pan(double x1, double y1, double x2, double y2); }