Mercurial > hg > orthanc-stone
changeset 2335:f845b27efc74 refactoring
breaking - non-const Scene2D in interactors/trackers
line wrap: on
line diff
--- a/Applications/Samples/Common/ISingleViewportApplicationCore.h Sun Oct 04 09:55:07 2026 +0200 +++ b/Applications/Samples/Common/ISingleViewportApplicationCore.h Sun Oct 04 11:13:59 2026 +0200 @@ -41,10 +41,7 @@ virtual IViewportInteractor* CreateMouseInteractor() = 0; - virtual bool HandleKeyDown(const IEnvironment::ILock& environmentLock, + virtual void HandleKeyDown(const IEnvironment::ILock& environmentLock, char key) = 0; - - virtual void Render(const IEnvironment::ILock& environmentLock, - IViewport::ILock& viewportLock) = 0; }; }
--- a/Applications/Samples/Common/SimpleViewerCore.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/Applications/Samples/Common/SimpleViewerCore.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -202,7 +202,7 @@ } - bool SimpleViewerCore::HandleKeyDown(const IEnvironment::ILock& environmentLock, + void SimpleViewerCore::HandleKeyDown(const IEnvironment::ILock& environmentLock, char key) { switch (key) @@ -270,22 +270,6 @@ default: break; } - - return false; // No need to repaint - } - - - void SimpleViewerCore::Render(const IEnvironment::ILock& environmentLock, - IViewport::ILock& viewportLock) - { - if (!annotations_) - { - throw Orthanc::OrthancException(Orthanc::ErrorCode_BadSequenceOfCalls); - } - else - { - annotations_->Render(viewportLock.GetController().GetScene()); - } }
--- a/Applications/Samples/Common/SimpleViewerCore.h Sun Oct 04 09:55:07 2026 +0200 +++ b/Applications/Samples/Common/SimpleViewerCore.h Sun Oct 04 11:13:59 2026 +0200 @@ -61,12 +61,9 @@ virtual IViewportInteractor* CreateMouseInteractor() ORTHANC_OVERRIDE; - virtual bool HandleKeyDown(const IEnvironment::ILock& environmentLock, + virtual void HandleKeyDown(const IEnvironment::ILock& environmentLock, char key) ORTHANC_OVERRIDE; - virtual void Render(const IEnvironment::ILock& environmentLock, - IViewport::ILock& viewportLock) ORTHANC_OVERRIDE; - public: void LoadFrameFromOrthanc(const std::string& instanceId, unsigned int frameIndex);
--- a/Applications/Samples/Sdl/SingleFrameViewer/SdlSimpleViewer.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/Applications/Samples/Sdl/SingleFrameViewer/SdlSimpleViewer.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -80,7 +80,7 @@ } - virtual bool HandleKeyDown(const IEnvironment::ILock& environmentLock, + virtual void HandleKeyDown(const IEnvironment::ILock& environmentLock, char key) ORTHANC_OVERRIDE { if (key == 'b') @@ -109,12 +109,10 @@ source.SetDicomDirSource(); oracle.Submit(environment, toto_, new ParseDicomFromFileCommand(source, "hand.dcm")); } - - return false; } else { - return SimpleViewerCore::HandleKeyDown(environmentLock, key); + SimpleViewerCore::HandleKeyDown(environmentLock, key); } } };
--- a/Applications/Samples/Sdl/SingleViewportSdlApplication.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/Applications/Samples/Sdl/SingleViewportSdlApplication.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -100,7 +100,7 @@ else { std::unique_ptr<IEnvironment::ILock> environmentLock(context->GetEnvironment().AcquireLock()); - paint = core_->HandleKeyDown(*environmentLock, s[0]); + core_->HandleKeyDown(*environmentLock, s[0]); } } } @@ -137,6 +137,7 @@ else if (interactor->HasMouseHover()) { interactor->HandleMouseHover(*viewport_, p); + viewportLock->Invalidate(); } break; } @@ -155,12 +156,6 @@ if (paint) { - { - std::unique_ptr<IEnvironment::ILock> environmentLock(context->GetEnvironment().AcquireLock()); - std::unique_ptr<IViewport::ILock> viewportLock(viewport_->Lock()); - core_->Render(*environmentLock, *viewportLock); - } - viewport_->Paint(); }
--- a/OrthancStone/Sources/Scene2D/AnnotationsSceneLayer.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/AnnotationsSceneLayer.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -1051,22 +1051,26 @@ } virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { primitive_.MovePreview(event.GetMainPosition().Apply(canvasToScene_) - sceneClick_, scene); + that_.BroadcastMessage(AnnotationChangedMessage(that_)); + that_.Render(scene); } virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { primitive_.MoveDone(event.GetMainPosition().Apply(canvasToScene_) - sceneClick_, scene); alive_ = false; + that_.BroadcastMessage(AnnotationChangedMessage(that_)); + that_.Render(scene); } virtual void PointerDown(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } @@ -1075,7 +1079,7 @@ return alive_; } - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE { //primitive_.MoveDone(ScenePoint2D(0, 0), scene); primitive_.MoveDone(sceneClick_, scene); // TODO Check this @@ -2392,7 +2396,7 @@ } virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { if (annotation_ != NULL) { @@ -2400,19 +2404,21 @@ annotation_->SignalMove(annotation_->GetHandle(1), scene); layer_.BroadcastMessage(AnnotationChangedMessage(layer_)); + layer_.Render(scene); } } virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { annotation_ = NULL; // IsAlive() becomes false layer_.BroadcastMessage(AnnotationAddedMessage(layer_)); + layer_.Render(scene); } virtual void PointerDown(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } @@ -2421,7 +2427,7 @@ return (annotation_ != NULL); } - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE { if (annotation_ != NULL) { @@ -2453,13 +2459,14 @@ } virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { if (length_ != NULL) { length_->GetHandle(1).SetCenter(event.GetMainPosition().Apply(canvasToScene_)); length_->SignalMove(length_->GetHandle(1), scene); that_.BroadcastMessage(AnnotationChangedMessage(that_)); + that_.Render(scene); } if (angle_ != NULL) @@ -2467,11 +2474,12 @@ angle_->GetHandle(2).SetCenter(event.GetMainPosition().Apply(canvasToScene_)); angle_->SignalMove(angle_->GetHandle(2), scene); that_.BroadcastMessage(AnnotationChangedMessage(that_)); + that_.Render(scene); } } virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { if (length_ != NULL) { @@ -2485,17 +2493,19 @@ length_ = NULL; that_.BroadcastMessage(AnnotationChangedMessage(that_)); + that_.Render(scene); } else { angle_ = NULL; // IsAlive() becomes false that_.BroadcastMessage(AnnotationAddedMessage(that_)); + that_.Render(scene); } } virtual void PointerDown(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } @@ -2505,7 +2515,7 @@ angle_ != NULL); } - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE { if (length_ != NULL) { @@ -2527,25 +2537,27 @@ public: CreatePixelProbeTracker(AnnotationsSceneLayer& that, const ScenePoint2D& sceneClick, - const Scene2D& scene) + Scene2D& scene) { PixelProbeAnnotation* annotation = new PixelProbeAnnotation(that, sceneClick); annotation->UpdateProbe(scene); + that.BroadcastMessage(AnnotationAddedMessage(that)); + that.Render(scene); } virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } virtual void PointerDown(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } @@ -2554,7 +2566,7 @@ return false; } - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE { } }; @@ -2572,7 +2584,7 @@ } virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { std::unique_ptr<TextAnnotationRequiredMessage> request; @@ -2585,6 +2597,7 @@ GetLayer().BroadcastMessage(AnnotationChangedMessage(GetLayer())); GetLayer().BroadcastMessage(*request); + GetLayer().Render(scene); } }; @@ -2599,17 +2612,17 @@ } virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } virtual void PointerDown(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE + Scene2D& scene) ORTHANC_OVERRIDE { } @@ -2618,7 +2631,7 @@ return false; } - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE { } }; @@ -2774,7 +2787,7 @@ bool AnnotationsSceneLayer::ClearHover() { bool needsRefresh = false; - + for (GeometricPrimitives::iterator it = primitives_.begin(); it != primitives_.end(); ++it) { assert(*it != NULL); @@ -2789,17 +2802,17 @@ } - bool AnnotationsSceneLayer::SetMouseHover(const ScenePoint2D& p, - const Scene2D& scene) + void AnnotationsSceneLayer::SetMouseHover(const ScenePoint2D& p, + Scene2D& scene) { + bool needsRefresh = false; + if (activeTool_ == Tool_None) { - return ClearHover(); + needsRefresh = ClearHover(); } else { - bool needsRefresh = false; - const ScenePoint2D s = p.Apply(scene.GetCanvasToSceneTransform()); for (GeometricPrimitives::iterator it = primitives_.begin(); it != primitives_.end(); ++it) @@ -2814,14 +2827,17 @@ (*it)->SetHover(hover); } - - return needsRefresh; + } + + if (needsRefresh) + { + Render(scene); } } IFlexiblePointerTracker* AnnotationsSceneLayer::CreateTracker(const ScenePoint2D& p, - const Scene2D& scene) + Scene2D& scene) { /** * WARNING: The created trackers must NOT keep a reference to "scene"!
--- a/OrthancStone/Sources/Scene2D/AnnotationsSceneLayer.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/AnnotationsSceneLayer.h Sun Oct 04 11:13:59 2026 +0200 @@ -171,11 +171,11 @@ bool ClearHover(); - bool SetMouseHover(const ScenePoint2D& p /* expressed in canvas coordinates */, - const Scene2D& scene); + void SetMouseHover(const ScenePoint2D& p /* expressed in canvas coordinates */, + Scene2D& scene); IFlexiblePointerTracker* CreateTracker(const ScenePoint2D& p /* expressed in canvas coordinates */, - const Scene2D& scene); + Scene2D& scene); void Serialize(Json::Value& target) const;
--- a/OrthancStone/Sources/Scene2D/GrayscaleWindowingSceneTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/GrayscaleWindowingSceneTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -155,7 +155,7 @@ } void GrayscaleWindowingSceneTracker::PointerMove(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { if (active_) { @@ -174,7 +174,7 @@ } } - void GrayscaleWindowingSceneTracker::Cancel(const Scene2D& scene) + void GrayscaleWindowingSceneTracker::Cancel(Scene2D& scene) { SetWindowing(originalCenter_, originalWidth_); }
--- a/OrthancStone/Sources/Scene2D/GrayscaleWindowingSceneTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/GrayscaleWindowingSceneTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -54,8 +54,8 @@ unsigned int canvasHeight); virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE; + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE; }; }
--- a/OrthancStone/Sources/Scene2D/MagnifyingGlassTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/MagnifyingGlassTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -62,7 +62,7 @@ void MagnifyingGlassTracker::PointerUp(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { Cancel(scene); OneGesturePointerTracker::PointerUp(event, scene); @@ -70,7 +70,7 @@ void MagnifyingGlassTracker::PointerMove(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { ViewportLocker locker(viewport_); @@ -81,7 +81,7 @@ } - void MagnifyingGlassTracker::Cancel(const Scene2D& scene) + void MagnifyingGlassTracker::Cancel(Scene2D& scene) { ViewportLocker locker(viewport_);
--- a/OrthancStone/Sources/Scene2D/MagnifyingGlassTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/MagnifyingGlassTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -46,11 +46,11 @@ const PointerEvent& event); virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE; + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE; }; }
--- a/OrthancStone/Sources/Scene2D/PanSceneTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/PanSceneTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -44,7 +44,7 @@ void PanSceneTracker::PointerMove(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { ScenePoint2D p = event.GetMainPosition().Apply(originalCanvasToScene_); @@ -61,7 +61,7 @@ } } - void PanSceneTracker::Cancel(const Scene2D& scene) + void PanSceneTracker::Cancel(Scene2D& scene) { ViewportLocker locker(viewport_);
--- a/OrthancStone/Sources/Scene2D/PanSceneTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/PanSceneTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -40,8 +40,8 @@ const PointerEvent& event); virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE; + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE; }; }
--- a/OrthancStone/Sources/Scene2D/PinchZoomTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/PinchZoomTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -65,7 +65,7 @@ void PinchZoomTracker::PointerMove(const PointerEvent &event, - const Scene2D &scene) + Scene2D &scene) { if (state_ == State_OneFinger && event.GetPositionsCount() == 2)
--- a/OrthancStone/Sources/Scene2D/PinchZoomTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/PinchZoomTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -53,16 +53,16 @@ const PointerEvent& event); virtual void PointerMove(const PointerEvent &event, - const Scene2D &scene) ORTHANC_OVERRIDE; + Scene2D &scene) ORTHANC_OVERRIDE; virtual void PointerUp(const PointerEvent &event, - const Scene2D &scene) ORTHANC_OVERRIDE + Scene2D &scene) ORTHANC_OVERRIDE { state_ = State_Dead; } virtual void PointerDown(const PointerEvent &event, - const Scene2D &scene) ORTHANC_OVERRIDE + Scene2D &scene) ORTHANC_OVERRIDE { } @@ -71,7 +71,7 @@ return state_ != State_Dead; } - virtual void Cancel(const Scene2D &scene) ORTHANC_OVERRIDE + virtual void Cancel(Scene2D &scene) ORTHANC_OVERRIDE { state_ = State_Dead; }
--- a/OrthancStone/Sources/Scene2D/RotateSceneTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/RotateSceneTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -45,7 +45,7 @@ void RotateSceneTracker::PointerMove(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { if (aligner_.get() != NULL) { @@ -80,7 +80,7 @@ } - void RotateSceneTracker::Cancel(const Scene2D& scene) + void RotateSceneTracker::Cancel(Scene2D& scene) { ViewportLocker locker(viewport_);
--- a/OrthancStone/Sources/Scene2D/RotateSceneTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/RotateSceneTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -45,8 +45,8 @@ const PointerEvent& event); virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE; + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE; }; }
--- a/OrthancStone/Sources/Scene2D/ZoomSceneTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/ZoomSceneTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -49,7 +49,7 @@ } void ZoomSceneTracker::PointerMove(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { static const double MIN_ZOOM = -4; static const double MAX_ZOOM = 4; @@ -93,7 +93,7 @@ } } - void ZoomSceneTracker::Cancel(const Scene2D& scene) + void ZoomSceneTracker::Cancel(Scene2D& scene) { ViewportLocker locker(viewport_);
--- a/OrthancStone/Sources/Scene2D/ZoomSceneTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/ZoomSceneTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -48,8 +48,8 @@ unsigned int canvasHeight); virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE; + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE; }; }
--- a/OrthancStone/Sources/Scene2DViewport/CreateAngleMeasureTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/CreateAngleMeasureTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -48,7 +48,7 @@ } void CreateAngleMeasureTracker::PointerMove(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { if (!alive_) { @@ -85,7 +85,7 @@ } void CreateAngleMeasureTracker::PointerUp(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { // TODO: the current app does not prevent multiple PointerDown AND // PointerUp to be sent to the tracker. @@ -111,7 +111,7 @@ } void CreateAngleMeasureTracker::PointerDown(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { switch (state_) {
--- a/OrthancStone/Sources/Scene2DViewport/CreateAngleMeasureTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/CreateAngleMeasureTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -46,13 +46,13 @@ ~CreateAngleMeasureTracker(); virtual void PointerMove(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerUp(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerDown(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; private: boost::shared_ptr<CreateAngleMeasureCommand> GetCommand();
--- a/OrthancStone/Sources/Scene2DViewport/CreateLineMeasureTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/CreateLineMeasureTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -49,7 +49,7 @@ } void CreateLineMeasureTracker::PointerMove(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { if (!alive_) { @@ -75,7 +75,7 @@ } void CreateLineMeasureTracker::PointerUp(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { // TODO: the current app does not prevent multiple PointerDown AND // PointerUp to be sent to the tracker. @@ -86,7 +86,7 @@ } void CreateLineMeasureTracker::PointerDown(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { LOG(WARNING) << "Additional touches (fingers, pen, mouse buttons...) " "are ignored when the line measure creation tracker is active";
--- a/OrthancStone/Sources/Scene2DViewport/CreateLineMeasureTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/CreateLineMeasureTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -46,11 +46,13 @@ ~CreateLineMeasureTracker(); virtual void PointerMove(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; + virtual void PointerUp(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; + virtual void PointerDown(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; private: boost::shared_ptr<CreateLineMeasureCommand> GetCommand();
--- a/OrthancStone/Sources/Scene2DViewport/EditAngleMeasureTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/EditAngleMeasureTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -51,7 +51,7 @@ } void EditAngleMeasureTracker::PointerMove(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { std::unique_ptr<IViewport::ILock> lock(GetViewportLock()); @@ -108,13 +108,13 @@ } void EditAngleMeasureTracker::PointerUp(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { alive_ = false; } void EditAngleMeasureTracker::PointerDown(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { LOG(WARNING) << "Additional touches (fingers, pen, mouse buttons...) " "are ignored when the edit angle tracker is active";
--- a/OrthancStone/Sources/Scene2DViewport/EditAngleMeasureTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/EditAngleMeasureTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -46,13 +46,13 @@ ~EditAngleMeasureTracker(); virtual void PointerMove(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerUp(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerDown(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; private: AngleMeasureTool::AngleHighlightArea modifiedZone_;
--- a/OrthancStone/Sources/Scene2DViewport/EditLineMeasureTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/EditLineMeasureTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -47,7 +47,7 @@ } void EditLineMeasureTracker::PointerMove(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { std::unique_ptr<IViewport::ILock> lock(GetViewportLock()); ViewportController& controller = lock->GetController(); @@ -93,13 +93,13 @@ } void EditLineMeasureTracker::PointerUp(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { alive_ = false; } void EditLineMeasureTracker::PointerDown(const PointerEvent& e, - const Scene2D& scene) + Scene2D& scene) { LOG(WARNING) << "Additional touches (fingers, pen, mouse buttons...) " "are ignored when the edit line tracker is active";
--- a/OrthancStone/Sources/Scene2DViewport/EditLineMeasureTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/EditLineMeasureTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -49,12 +49,12 @@ const PointerEvent& e); virtual void PointerMove(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerUp(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerDown(const PointerEvent& e, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; }; }
--- a/OrthancStone/Sources/Scene2DViewport/IFlexiblePointerTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/IFlexiblePointerTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -46,14 +46,14 @@ This method will be repeatedly called during user interaction */ virtual void PointerMove(const PointerEvent& event, - const Scene2D& scene) = 0; + Scene2D& scene) = 0; /** This method will be called when a touch/pointer is removed (mouse up, pen lift, finger removed...) */ virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) = 0; + Scene2D& scene) = 0; /** This method will be called when a touch/pointer is added (mouse down, @@ -66,7 +66,7 @@ PointerUp. */ virtual void PointerDown(const PointerEvent& event, - const Scene2D& scene) = 0; + Scene2D& scene) = 0; /** This method will be repeatedly called by the tracker owner (for instance, @@ -80,6 +80,6 @@ its changes to the underlying model. If the model has been modified during tracker lifetime, it must be restored to its initial value */ - virtual void Cancel(const Scene2D& scene) = 0; + virtual void Cancel(Scene2D& scene) = 0; }; }
--- a/OrthancStone/Sources/Scene2DViewport/MeasureTrackers.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/MeasureTrackers.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -42,7 +42,7 @@ return NULL; } - void CreateMeasureTracker::Cancel(const Scene2D& scene) + void CreateMeasureTracker::Cancel(Scene2D& scene) { commitResult_ = false; alive_ = false; @@ -93,7 +93,7 @@ return NULL; } - void EditMeasureTracker::Cancel(const Scene2D& scene) + void EditMeasureTracker::Cancel(Scene2D& scene) { commitResult_ = false; alive_ = false;
--- a/OrthancStone/Sources/Scene2DViewport/MeasureTrackers.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/MeasureTrackers.h Sun Oct 04 11:13:59 2026 +0200 @@ -57,7 +57,7 @@ virtual ~CreateMeasureTracker(); public: - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE; + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE; virtual bool IsAlive() const ORTHANC_OVERRIDE; }; @@ -91,7 +91,7 @@ } public: - virtual void Cancel(const Scene2D& scene) ORTHANC_OVERRIDE; + virtual void Cancel(Scene2D& scene) ORTHANC_OVERRIDE; virtual bool IsAlive() const ORTHANC_OVERRIDE; };
--- a/OrthancStone/Sources/Scene2DViewport/OneGesturePointerTracker.cpp Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/OneGesturePointerTracker.cpp Sun Oct 04 11:13:59 2026 +0200 @@ -36,7 +36,7 @@ } void OneGesturePointerTracker::PointerUp(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { // pointer up is only called for the LAST up event in case of a multi-touch // gesture @@ -51,7 +51,7 @@ } void OneGesturePointerTracker::PointerDown(const PointerEvent& event, - const Scene2D& scene) + Scene2D& scene) { // additional touches are not taken into account but we need to count // the number of active touches
--- a/OrthancStone/Sources/Scene2DViewport/OneGesturePointerTracker.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2DViewport/OneGesturePointerTracker.h Sun Oct 04 11:13:59 2026 +0200 @@ -53,10 +53,10 @@ explicit OneGesturePointerTracker(); virtual void PointerUp(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual void PointerDown(const PointerEvent& event, - const Scene2D& scene) ORTHANC_OVERRIDE; + Scene2D& scene) ORTHANC_OVERRIDE; virtual bool IsAlive() const ORTHANC_OVERRIDE; };
--- a/OrthancStone/Sources/Viewport/IViewportInteractor.h Sun Oct 04 09:55:07 2026 +0200 +++ b/OrthancStone/Sources/Viewport/IViewportInteractor.h Sun Oct 04 11:13:59 2026 +0200 @@ -34,14 +34,14 @@ { } - virtual IFlexiblePointerTracker* CreateTracker(boost::weak_ptr<IViewport> viewport, + virtual IFlexiblePointerTracker* CreateTracker(boost::weak_ptr<IViewport> viewport, // TODO Refresh - Why not reference here? const PointerEvent& event, unsigned int viewportWidth, unsigned int viewportHeight) = 0; virtual bool HasMouseHover() const = 0; - virtual void HandleMouseHover(IViewport& viewport, + virtual void HandleMouseHover(IViewport& viewport, // TODO Refresh - Why not IViewport::ILock here? const PointerEvent& event) = 0; }; }
