Mercurial > hg > orthanc-stone
comparison Framework/Scene2DViewport/EditAngleMeasureTracker.cpp @ 1213:86a8266b8888 broker
moving the scene from IViewport to ViewportController
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 04 Dec 2019 17:54:10 +0100 |
parents | f3bb9a6dd949 |
children | 0ca50d275b9a |
comparison
equal
deleted
inserted
replaced
1212:ab06dfdf3b75 | 1213:86a8266b8888 |
---|---|
34 ScenePoint2D scenePos = e.GetMainPosition(); | 34 ScenePoint2D scenePos = e.GetMainPosition(); |
35 | 35 |
36 boost::shared_ptr<ViewportController> controller = controllerW_.lock(); | 36 boost::shared_ptr<ViewportController> controller = controllerW_.lock(); |
37 if (controller) | 37 if (controller) |
38 { | 38 { |
39 std::auto_ptr<IViewport::ILock> lock(controller->GetViewport().Lock()); | 39 scenePos = e.GetMainPosition().Apply(controller->GetScene().GetCanvasToSceneTransform()); |
40 scenePos = e.GetMainPosition().Apply(lock->GetScene().GetCanvasToSceneTransform()); | |
41 } | 40 } |
42 | 41 |
43 modifiedZone_ = dynamic_cast<AngleMeasureTool&>(*measureTool).AngleHitTest(scenePos); | 42 modifiedZone_ = dynamic_cast<AngleMeasureTool&>(*measureTool).AngleHitTest(scenePos); |
44 | 43 |
45 command_.reset(new EditAngleMeasureCommand(measureTool, controllerW)); | 44 command_.reset(new EditAngleMeasureCommand(measureTool, controllerW)); |
53 void EditAngleMeasureTracker::PointerMove(const PointerEvent& e) | 52 void EditAngleMeasureTracker::PointerMove(const PointerEvent& e) |
54 { | 53 { |
55 boost::shared_ptr<ViewportController> controller = controllerW_.lock(); | 54 boost::shared_ptr<ViewportController> controller = controllerW_.lock(); |
56 if (controller) | 55 if (controller) |
57 { | 56 { |
58 std::auto_ptr<IViewport::ILock> lock(controller->GetViewport().Lock()); | |
59 ScenePoint2D scenePos = e.GetMainPosition().Apply( | 57 ScenePoint2D scenePos = e.GetMainPosition().Apply( |
60 lock->GetScene().GetCanvasToSceneTransform()); | 58 controller->GetScene().GetCanvasToSceneTransform()); |
61 | 59 |
62 ScenePoint2D delta = scenePos - GetOriginalClickPosition(); | 60 ScenePoint2D delta = scenePos - GetOriginalClickPosition(); |
63 | 61 |
64 boost::shared_ptr<AngleMeasureToolMemento> memento = | 62 boost::shared_ptr<AngleMeasureToolMemento> memento = |
65 boost::dynamic_pointer_cast<AngleMeasureToolMemento>(command_->mementoOriginal_); | 63 boost::dynamic_pointer_cast<AngleMeasureToolMemento>(command_->mementoOriginal_); |