Mercurial > hg > orthanc-stone
comparison Samples/Qt/Scene2DInteractor.h @ 884:aad5ccf1be10 am-dev
cleanup
author | Alain Mazy <alain@mazy.be> |
---|---|
date | Tue, 09 Jul 2019 14:43:00 +0200 |
parents | 30268a0cafca |
children |
comparison
equal
deleted
inserted
replaced
883:30268a0cafca | 884:aad5ccf1be10 |
---|---|
1 #pragma once | 1 #pragma once |
2 | 2 |
3 #include "../../Framework/Scene2D/PointerEvent.h" | 3 #include "../../Applications/Generic/Scene2DInteractor.h" |
4 #include "../../Framework/Scene2DViewport/ViewportController.h" | |
5 #include "../../Framework/Scene2DViewport/IFlexiblePointerTracker.h" | 4 #include "../../Framework/Scene2DViewport/IFlexiblePointerTracker.h" |
6 #include "../../Framework/Scene2D/Internals/CompositorHelper.h" | |
7 #include "../../Applications/Generic/GuiAdapter.h" | |
8 | |
9 | |
10 namespace OrthancStone | |
11 { | |
12 | |
13 class Scene2DInteractor | |
14 { | |
15 protected: | |
16 boost::shared_ptr<ViewportController> viewportController_; | |
17 boost::shared_ptr<IFlexiblePointerTracker> currentTracker_; | |
18 boost::shared_ptr<ICompositor> compositor_; | |
19 | |
20 public: | |
21 Scene2DInteractor(boost::shared_ptr<ViewportController> viewportController) : | |
22 viewportController_(viewportController) | |
23 {} | |
24 | |
25 void SetCompositor(boost::shared_ptr<ICompositor> compositor) | |
26 { | |
27 compositor_ = compositor; | |
28 } | |
29 | |
30 virtual bool OnMouseEvent(const GuiAdapterMouseEvent& guiEvent, const PointerEvent& pointerEvent) = 0; // returns true if it has handled the event | |
31 virtual bool OnKeyboardEvent(const GuiAdapterKeyboardEvent& guiEvent) = 0; // returns true if it has handled the event | |
32 virtual bool OnWheelEvent(const GuiAdapterWheelEvent& guiEvent) = 0; // returns true if it has handled the event | |
33 | |
34 }; | |
35 } | |
36 | |
37 | |
38 | 5 |
39 | 6 |
40 class BasicScene2DInteractor : public OrthancStone::Scene2DInteractor | 7 class BasicScene2DInteractor : public OrthancStone::Scene2DInteractor |
41 { | 8 { |
9 boost::shared_ptr<OrthancStone::IFlexiblePointerTracker> currentTracker_; | |
42 public: | 10 public: |
43 BasicScene2DInteractor(boost::shared_ptr<OrthancStone::ViewportController> viewportController) : | 11 BasicScene2DInteractor(boost::shared_ptr<OrthancStone::ViewportController> viewportController) : |
44 Scene2DInteractor(viewportController) | 12 Scene2DInteractor(viewportController) |
45 {} | 13 {} |
46 | 14 |