# HG changeset patch # User Sebastien Jodogne # Date 1791288991 -7200 # Node ID 94d3f2c6fcfe6d9a967a873ac74460e26b10b193 # Parent ed5785f0f7c0ab6aaa482302c89fed7a6f2b0895 refactoring FixedPointAligner diff -r ed5785f0f7c0 -r 94d3f2c6fcfe OrthancStone/Sources/Scene2D/Internals/FixedPointAligner.cpp --- a/OrthancStone/Sources/Scene2D/Internals/FixedPointAligner.cpp Tue Oct 06 10:12:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/Internals/FixedPointAligner.cpp Tue Oct 06 14:16:31 2026 +0200 @@ -23,26 +23,24 @@ #include "FixedPointAligner.h" -#include - namespace OrthancStone { namespace Internals { - FixedPointAligner::FixedPointAligner(const ViewportController& controller, + FixedPointAligner::FixedPointAligner(const Scene2D& scene, const ScenePoint2D& p) : canvas_(p) { - pivot_ = canvas_.Apply(controller.GetCanvasToSceneTransform()); + pivot_ = canvas_.Apply(scene.GetCanvasToSceneTransform()); } - void FixedPointAligner::Apply(ViewportController& controller) + void FixedPointAligner::Apply(Scene2D& scene) { - ScenePoint2D p = canvas_.Apply(controller.GetCanvasToSceneTransform()); + const ScenePoint2D p = canvas_.Apply(scene.GetCanvasToSceneTransform()); - controller.SetSceneToCanvasTransform( + scene.SetSceneToCanvasTransform( AffineTransform2D::Combine( - controller.GetSceneToCanvasTransform(), + scene.GetSceneToCanvasTransform(), AffineTransform2D::CreateOffset(p.GetX() - pivot_.GetX(), p.GetY() - pivot_.GetY()))); } diff -r ed5785f0f7c0 -r 94d3f2c6fcfe OrthancStone/Sources/Scene2D/Internals/FixedPointAligner.h --- a/OrthancStone/Sources/Scene2D/Internals/FixedPointAligner.h Tue Oct 06 10:12:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/Internals/FixedPointAligner.h Tue Oct 06 14:16:31 2026 +0200 @@ -22,7 +22,8 @@ #pragma once -#include "../../Scene2DViewport/ViewportController.h" +#include "../../Scene2D/Scene2D.h" +#include "../../Scene2D/ScenePoint2D.h" namespace OrthancStone { @@ -37,10 +38,10 @@ ScenePoint2D canvas_; public: - FixedPointAligner(const ViewportController& controller, + FixedPointAligner(const Scene2D& scene, const ScenePoint2D& p); - void Apply(ViewportController& controller); + void Apply(Scene2D& scene); }; } } diff -r ed5785f0f7c0 -r 94d3f2c6fcfe OrthancStone/Sources/Scene2D/RotateSceneTracker.cpp --- a/OrthancStone/Sources/Scene2D/RotateSceneTracker.cpp Tue Oct 06 10:12:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/RotateSceneTracker.cpp Tue Oct 06 14:16:31 2026 +0200 @@ -38,7 +38,7 @@ if (locker.IsValid()) { - aligner_.reset(new Internals::FixedPointAligner(locker.GetController(), click_)); + aligner_.reset(new Internals::FixedPointAligner(locker.GetController().GetScene(), click_)); originalSceneToCanvas_ = locker.GetController().GetSceneToCanvasTransform(); } } @@ -72,7 +72,7 @@ AffineTransform2D::Combine( AffineTransform2D::CreateRotation(a - referenceAngle_), originalSceneToCanvas_)); - aligner_->Apply(locker.GetController()); + aligner_->Apply(locker.GetController().GetScene()); locker.Invalidate(); } } diff -r ed5785f0f7c0 -r 94d3f2c6fcfe OrthancStone/Sources/Scene2D/ZoomSceneTracker.cpp --- a/OrthancStone/Sources/Scene2D/ZoomSceneTracker.cpp Tue Oct 06 10:12:07 2026 +0200 +++ b/OrthancStone/Sources/Scene2D/ZoomSceneTracker.cpp Tue Oct 06 14:16:31 2026 +0200 @@ -43,7 +43,7 @@ if (canvasHeight > 3) { normalization_ = 1.0 / static_cast(canvasHeight - 1); - aligner_.reset(new Internals::FixedPointAligner(locker.GetController(), event.GetMainPosition())); + aligner_.reset(new Internals::FixedPointAligner(locker.GetController().GetScene(), event.GetMainPosition())); } } } @@ -87,7 +87,7 @@ AffineTransform2D::Combine( AffineTransform2D::CreateScaling(zoom, zoom), originalSceneToCanvas_)); - aligner_->Apply(locker.GetController()); + aligner_->Apply(locker.GetController().GetScene()); locker.Invalidate(); } }