diff 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
line wrap: on
line diff
--- a/Samples/Qt/Scene2DInteractor.cpp	Fri Jul 05 15:33:02 2019 +0200
+++ b/Samples/Qt/Scene2DInteractor.cpp	Tue Jul 09 11:41:16 2019 +0200
@@ -1,5 +1,8 @@
 #include "Scene2DInteractor.h"
 
+#include "../../Framework/Scene2D/PanSceneTracker.h"
+#include "../../Framework/Scene2D/ZoomSceneTracker.h"
+
 
 namespace OrthancStone
 {
@@ -9,8 +12,26 @@
 using namespace OrthancStone;
 
 
-void BasicScene2DInteractor::OnMouseEvent(const GuiAdapterMouseEvent& event)
+void BasicScene2DInteractor::OnMouseEvent(const GuiAdapterMouseEvent& event, const PointerEvent& pointerEvent)
 {
+  if (currentTracker_.get() != NULL)
+  {
+    currentTracker_->PointerMove(pointerEvent);
+  }
+  else
+  {
+    if (event.button == GUIADAPTER_MOUSEBUTTON_LEFT)
+    {
+    }
+    else if (event.button == GUIADAPTER_MOUSEBUTTON_MIDDLE)
+    {
+      currentTracker_.reset(new PanSceneTracker(viewportController_, pointerEvent));
+    }
+    else if (event.button == GUIADAPTER_MOUSEBUTTON_RIGHT)
+    {
+     // TODO: need a pointer to compositor currentTracker_.reset(new ZoomSceneTracker(viewportController_, pointerEvent, viewportController_->));
+    }
+  }
 
 }