Mercurial > hg > orthanc-stone
comparison OrthancStone/Sources/Viewport/DefaultViewportInteractor.cpp @ 1606:874e178f34e9
- ViewportController now has weak ptr to Viewport
- Measuring tools + related commands and all trackers now store only a weak_ptr to the Viewport and lock() on demand for usage
- LayerHolder and FixedPoint aligner store only a weak_ptr to the Viewport, too
- Fixed float/double warning in GrayscaleWindowingSceneTracker
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Wed, 28 Oct 2020 20:14:34 +0100 |
parents | 8563ea5d8ae4 |
children | 9ac2a65d4172 |
comparison
equal
deleted
inserted
replaced
1605:b3c439d96d3e | 1606:874e178f34e9 |
---|---|
29 #include <OrthancException.h> | 29 #include <OrthancException.h> |
30 | 30 |
31 namespace OrthancStone | 31 namespace OrthancStone |
32 { | 32 { |
33 IFlexiblePointerTracker* DefaultViewportInteractor::CreateTrackerInternal( | 33 IFlexiblePointerTracker* DefaultViewportInteractor::CreateTrackerInternal( |
34 boost::shared_ptr<IViewport> viewport, | 34 boost::weak_ptr<IViewport> viewport, |
35 MouseAction action, | 35 MouseAction action, |
36 const PointerEvent& event, | 36 const PointerEvent& event, |
37 unsigned int viewportWidth, | 37 unsigned int viewportWidth, |
38 unsigned int viewportHeight) | 38 unsigned int viewportHeight) |
39 { | 39 { |
60 } | 60 } |
61 } | 61 } |
62 | 62 |
63 | 63 |
64 IFlexiblePointerTracker* DefaultViewportInteractor::CreateTracker( | 64 IFlexiblePointerTracker* DefaultViewportInteractor::CreateTracker( |
65 boost::shared_ptr<IViewport> viewport, | 65 boost::weak_ptr<IViewport> viewport, |
66 const PointerEvent& event, | 66 const PointerEvent& event, |
67 unsigned int viewportWidth, | 67 unsigned int viewportWidth, |
68 unsigned int viewportHeight) | 68 unsigned int viewportHeight) |
69 { | 69 { |
70 MouseAction action; | 70 MouseAction action; |
71 | 71 |
72 switch (event.GetMouseButton()) | 72 switch (event.GetMouseButton()) |
73 { | 73 { |