dcfef5e8ba2286868b6a2838d3e57d9fc7f0a89f
[sixth-3d.git] / src / main / java / eu / svjatoslav / sixth / e3d / gui / humaninput / UserInputHandler.java
1 /*
2  * Sixth 3D engine. Copyright ©2012-2018, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of version 3 of the GNU Lesser General Public License
6  * or later as published by the Free Software Foundation.
7  *
8  */
9
10 package eu.svjatoslav.sixth.e3d.gui.humaninput;
11
12 import eu.svjatoslav.sixth.e3d.gui.ViewPanel;
13 import eu.svjatoslav.sixth.e3d.gui.ViewRenderListener;
14
15 import java.awt.event.KeyEvent;
16
17 public interface UserInputHandler extends ViewRenderListener {
18
19     /**
20      * @return <code>true</code> if view update is needed.
21      */
22     boolean focusLost(ViewPanel viewPanel);
23
24     /**
25      * @return <code>true</code> if view update is needed.
26      */
27     boolean focusReceived(ViewPanel viewPanel);
28
29     /**
30      * @return <code>true</code> if view update is needed.
31      */
32     boolean keyPressed(KeyEvent event, ViewPanel viewPanel);
33
34     /**
35      * @return <code>true</code> if view update is needed.
36      */
37     boolean keyReleased(KeyEvent event, ViewPanel viewPanel);
38
39 }