Mercurial > hg > orthanc-stone
comparison Framework/Scene2DViewport/MeasureTool.cpp @ 1331:ab81ee8fce1f broker
- Viewport is not passed and stored as a shared_ptr instead
of raw reference.
- ViewportController can now be injected with an undo
stack (not a ctor param anymore, as a preparation for the
move of the undo stack to an interactor)
- Added (temp) flag to disable emscripten events registration
in the WebAssemblyViewport (because legacy client code
deals with them directly)
- Added emscripten_clear_timeout in ~WebGLViewportsRegistry
- Removed GenericToolbox::HoldingRef whose responsibility is
better served with proper callback un-registration.
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Mon, 30 Mar 2020 14:23:46 +0200 |
parents | 9b126de2cde2 |
children | 30deba7bc8e2 |
comparison
equal
deleted
inserted
replaced
1329:8d3e669f01a2 | 1331:ab81ee8fce1f |
---|---|
46 { | 46 { |
47 return enabled_; | 47 return enabled_; |
48 } | 48 } |
49 | 49 |
50 MeasureTool::MeasureTool( | 50 MeasureTool::MeasureTool( |
51 IViewport& viewport) | 51 boost::shared_ptr<IViewport> viewport) |
52 : viewport_(viewport) | 52 : viewport_(viewport) |
53 , enabled_(true) | 53 , enabled_(true) |
54 { | 54 { |
55 | 55 |
56 } | 56 } |
57 | 57 |
58 void MeasureTool::PostConstructor() | 58 void MeasureTool::PostConstructor() |
59 { | 59 { |
60 std::unique_ptr<IViewport::ILock> lock(viewport_.Lock()); | 60 std::unique_ptr<IViewport::ILock> lock(viewport_->Lock()); |
61 ViewportController& controller = lock->GetController(); | 61 ViewportController& controller = lock->GetController(); |
62 | 62 |
63 Register<ViewportController::SceneTransformChanged>( | 63 Register<ViewportController::SceneTransformChanged>( |
64 controller, | 64 controller, |
65 &MeasureTool::OnSceneTransformChanged); | 65 &MeasureTool::OnSceneTransformChanged); |