Mercurial > hg > orthanc-stone
comparison Samples/Qt/Scene2DInteractor.cpp @ 881:a8cd3755db21 am-dev
wip
author | Alain Mazy <alain@mazy.be> |
---|---|
date | Tue, 09 Jul 2019 11:41:16 +0200 |
parents | 12b591d5d63c |
children | 30268a0cafca |
comparison
equal
deleted
inserted
replaced
880:9953f16c304d | 881:a8cd3755db21 |
---|---|
1 #include "Scene2DInteractor.h" | 1 #include "Scene2DInteractor.h" |
2 | |
3 #include "../../Framework/Scene2D/PanSceneTracker.h" | |
4 #include "../../Framework/Scene2D/ZoomSceneTracker.h" | |
2 | 5 |
3 | 6 |
4 namespace OrthancStone | 7 namespace OrthancStone |
5 { | 8 { |
6 | 9 |
7 } | 10 } |
8 | 11 |
9 using namespace OrthancStone; | 12 using namespace OrthancStone; |
10 | 13 |
11 | 14 |
12 void BasicScene2DInteractor::OnMouseEvent(const GuiAdapterMouseEvent& event) | 15 void BasicScene2DInteractor::OnMouseEvent(const GuiAdapterMouseEvent& event, const PointerEvent& pointerEvent) |
13 { | 16 { |
17 if (currentTracker_.get() != NULL) | |
18 { | |
19 currentTracker_->PointerMove(pointerEvent); | |
20 } | |
21 else | |
22 { | |
23 if (event.button == GUIADAPTER_MOUSEBUTTON_LEFT) | |
24 { | |
25 } | |
26 else if (event.button == GUIADAPTER_MOUSEBUTTON_MIDDLE) | |
27 { | |
28 currentTracker_.reset(new PanSceneTracker(viewportController_, pointerEvent)); | |
29 } | |
30 else if (event.button == GUIADAPTER_MOUSEBUTTON_RIGHT) | |
31 { | |
32 // TODO: need a pointer to compositor currentTracker_.reset(new ZoomSceneTracker(viewportController_, pointerEvent, viewportController_->)); | |
33 } | |
34 } | |
14 | 35 |
15 } | 36 } |
16 | 37 |
17 | 38 |