Mercurial > hg > orthanc-stone
comparison Framework/Widgets/IWorldSceneInteractor.h @ 327:8716176ff7f0 am-2
added support for arrow keys
author | am@osimis.io |
---|---|
date | Tue, 16 Oct 2018 15:25:21 +0200 |
parents | 300d8b8c48b3 |
children | 885f0a5eaa49 |
comparison
equal
deleted
inserted
replaced
326:612238b3f3e8 | 327:8716176ff7f0 |
---|---|
11 * | 11 * |
12 * This program is distributed in the hope that it will be useful, but | 12 * This program is distributed in the hope that it will be useful, but |
13 * WITHOUT ANY WARRANTY; without even the implied warranty of | 13 * WITHOUT ANY WARRANTY; without even the implied warranty of |
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
15 * Affero General Public License for more details. | 15 * Affero General Public License for more details. |
16 * | 16 * |
17 * You should have received a copy of the GNU Affero General Public License | 17 * You should have received a copy of the GNU Affero General Public License |
18 * along with this program. If not, see <http://www.gnu.org/licenses/>. | 18 * along with this program. If not, see <http://www.gnu.org/licenses/>. |
19 **/ | 19 **/ |
20 | 20 |
21 | 21 |
27 #include "../StoneEnumerations.h" | 27 #include "../StoneEnumerations.h" |
28 #include "../Viewport/IStatusBar.h" | 28 #include "../Viewport/IStatusBar.h" |
29 | 29 |
30 namespace OrthancStone | 30 namespace OrthancStone |
31 { | 31 { |
32 class WorldSceneWidget; | 32 class WorldSceneWidget; |
33 | 33 |
34 class IWorldSceneInteractor : public boost::noncopyable | 34 class IWorldSceneInteractor : public boost::noncopyable |
35 { | |
36 public: | |
37 virtual ~IWorldSceneInteractor() | |
38 { | 35 { |
39 } | 36 public: |
40 | 37 virtual ~IWorldSceneInteractor() |
41 virtual IWorldSceneMouseTracker* CreateMouseTracker(WorldSceneWidget& widget, | 38 { |
42 const ViewportGeometry& view, | 39 } |
43 MouseButton button, | |
44 KeyboardModifiers modifiers, | |
45 double x, | |
46 double y, | |
47 IStatusBar* statusBar) = 0; | |
48 | 40 |
49 virtual void MouseOver(CairoContext& context, | 41 virtual IWorldSceneMouseTracker* CreateMouseTracker(WorldSceneWidget& widget, |
50 WorldSceneWidget& widget, | 42 const ViewportGeometry& view, |
51 const ViewportGeometry& view, | 43 MouseButton button, |
52 double x, | 44 KeyboardModifiers modifiers, |
53 double y, | 45 double x, |
54 IStatusBar* statusBar) = 0; | 46 double y, |
47 IStatusBar* statusBar) = 0; | |
55 | 48 |
56 virtual void MouseWheel(WorldSceneWidget& widget, | 49 virtual void MouseOver(CairoContext& context, |
57 MouseWheelDirection direction, | 50 WorldSceneWidget& widget, |
58 KeyboardModifiers modifiers, | 51 const ViewportGeometry& view, |
59 IStatusBar* statusBar) = 0; | 52 double x, |
53 double y, | |
54 IStatusBar* statusBar) = 0; | |
60 | 55 |
61 virtual void KeyPressed(WorldSceneWidget& widget, | 56 virtual void MouseWheel(WorldSceneWidget& widget, |
62 char key, | 57 MouseWheelDirection direction, |
63 KeyboardModifiers modifiers, | 58 KeyboardModifiers modifiers, |
64 IStatusBar* statusBar) = 0; | 59 IStatusBar* statusBar) = 0; |
65 }; | 60 |
61 virtual void KeyPressed(WorldSceneWidget& widget, | |
62 KeyboardKeys key, | |
63 char keyChar, | |
64 KeyboardModifiers modifiers, | |
65 IStatusBar* statusBar) = 0; | |
66 }; | |
66 } | 67 } |