d5f1f0868885d6a0b364f71feed1385de566b6a7
[sixth-3d.git] / src / main / java / eu / svjatoslav / sixth / e3d / gui / humaninput / MouseInteractionController.java
1 /*
2  * Sixth 3D engine. Author: Svjatoslav Agejenko. 
3  * This project is released under Creative Commons Zero (CC0) license.
4  */
5 package eu.svjatoslav.sixth.e3d.gui.humaninput;
6
7 /**
8  * Interface that allows to handle mouse events.
9  */
10 public interface MouseInteractionController {
11
12     /**
13      * Called when mouse is clicked on component.
14      * @return <code>true</code> if view update is needed as a consequence of this mouse click.
15      */
16     boolean mouseClicked(int button);
17
18     /**
19      * Called when mouse gets over given component.
20      * @return <code>true</code> if view update is needed as a consequence of this mouse enter.
21      */
22     boolean mouseEntered();
23
24     /**
25      * Called when mouse leaves screen area occupied by component.
26      * @return <code>true</code> if view update is needed as a consequence of this mouse exit.
27      */
28     boolean mouseExited();
29
30 }