/*
- * Sixth 3D engine. Copyright ©2012-2018, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 3 of the GNU Lesser General Public License
- * or later as published by the Free Software Foundation.
- *
+ * Sixth 3D engine. Author: Svjatoslav Agejenko.
+ * This project is released under Creative Commons Zero (CC0) license.
*/
-
package eu.svjatoslav.sixth.e3d.gui.humaninput;
+/**
+ * Interface that allows to handle mouse events.
+ */
public interface MouseInteractionController {
/**
* Called when mouse is clicked on component.
+ *
* @return <code>true</code> if view update is needed as a consequence of this mouse click.
*/
- boolean mouseClicked();
+ boolean mouseClicked(int button);
/**
* Called when mouse gets over given component.
+ *
* @return <code>true</code> if view update is needed as a consequence of this mouse enter.
*/
boolean mouseEntered();
/**
* Called when mouse leaves screen area occupied by component.
+ *
* @return <code>true</code> if view update is needed as a consequence of this mouse exit.
*/
boolean mouseExited();