Mercurial > hg > orthanc-stone
comparison OrthancStone/Sources/Scene2DViewport/EditLineMeasureTracker.cpp @ 1791:9b650ab68d4c
replaced unneeded use of boost::share_ptr for MeasureCommand mementos by std::unique_ptr
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 17 May 2021 16:11:17 +0200 |
parents | 9ac2a65d4172 |
children | 3889ae96d2e9 |
comparison
equal
deleted
inserted
replaced
1790:b325761e0bd3 | 1791:9b650ab68d4c |
---|---|
54 ScenePoint2D scenePos = e.GetMainPosition().Apply( | 54 ScenePoint2D scenePos = e.GetMainPosition().Apply( |
55 scene.GetCanvasToSceneTransform()); | 55 scene.GetCanvasToSceneTransform()); |
56 | 56 |
57 ScenePoint2D delta = scenePos - GetOriginalClickPosition(); | 57 ScenePoint2D delta = scenePos - GetOriginalClickPosition(); |
58 | 58 |
59 boost::shared_ptr<LineMeasureToolMemento> memento = | 59 const LineMeasureToolMemento& memento = |
60 boost::dynamic_pointer_cast<LineMeasureToolMemento>(command_->mementoOriginal_); | 60 dynamic_cast<const LineMeasureToolMemento&>(command_->GetMementoOriginal()); |
61 | |
62 ORTHANC_ASSERT(memento.get() != NULL); | |
63 | 61 |
64 switch (modifiedZone_) | 62 switch (modifiedZone_) |
65 { | 63 { |
66 case LineMeasureTool::LineHighlightArea_Start: | 64 case LineMeasureTool::LineHighlightArea_Start: |
67 { | 65 { |
68 ScenePoint2D newStart = memento->start_ + delta; | 66 ScenePoint2D newStart = memento.start_ + delta; |
69 GetCommand()->SetStart(newStart); | 67 GetCommand()->SetStart(newStart); |
70 } | 68 break; |
71 break; | 69 } |
72 case LineMeasureTool::LineHighlightArea_End: | 70 |
73 { | 71 case LineMeasureTool::LineHighlightArea_End: |
74 ScenePoint2D newEnd = memento->end_ + delta; | 72 { |
75 GetCommand()->SetEnd(newEnd); | 73 ScenePoint2D newEnd = memento.end_ + delta; |
76 } | 74 GetCommand()->SetEnd(newEnd); |
77 break; | 75 break; |
78 case LineMeasureTool::LineHighlightArea_Segment: | 76 } |
79 { | 77 |
80 ScenePoint2D newStart = memento->start_ + delta; | 78 case LineMeasureTool::LineHighlightArea_Segment: |
81 ScenePoint2D newEnd = memento->end_ + delta; | 79 { |
82 GetCommand()->SetStart(newStart); | 80 ScenePoint2D newStart = memento.start_ + delta; |
83 GetCommand()->SetEnd(newEnd); | 81 ScenePoint2D newEnd = memento.end_ + delta; |
84 } | 82 GetCommand()->SetStart(newStart); |
85 break; | 83 GetCommand()->SetEnd(newEnd); |
86 default: | 84 break; |
87 LOG(WARNING) << "Warning: please retry the measuring tool editing operation!"; | 85 } |
88 break; | 86 |
87 default: | |
88 LOG(WARNING) << "Warning: please retry the measuring tool editing operation!"; | |
89 break; | |
89 } | 90 } |
90 } | 91 } |
91 | 92 |
92 void EditLineMeasureTracker::PointerUp(const PointerEvent& e) | 93 void EditLineMeasureTracker::PointerUp(const PointerEvent& e) |
93 { | 94 { |
104 { | 105 { |
105 boost::shared_ptr<EditLineMeasureCommand> ret = boost::dynamic_pointer_cast<EditLineMeasureCommand>(command_); | 106 boost::shared_ptr<EditLineMeasureCommand> ret = boost::dynamic_pointer_cast<EditLineMeasureCommand>(command_); |
106 ORTHANC_ASSERT(ret.get() != NULL, "Internal error in EditLineMeasureTracker::GetCommand()"); | 107 ORTHANC_ASSERT(ret.get() != NULL, "Internal error in EditLineMeasureTracker::GetCommand()"); |
107 return ret; | 108 return ret; |
108 } | 109 } |
109 | |
110 } | 110 } |