comparison OrthancStone/Sources/Scene2DViewport/EditAngleMeasureTracker.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
59 ScenePoint2D scenePos = e.GetMainPosition().Apply( 59 ScenePoint2D scenePos = e.GetMainPosition().Apply(
60 scene.GetCanvasToSceneTransform()); 60 scene.GetCanvasToSceneTransform());
61 61
62 ScenePoint2D delta = scenePos - GetOriginalClickPosition(); 62 ScenePoint2D delta = scenePos - GetOriginalClickPosition();
63 63
64 boost::shared_ptr<AngleMeasureToolMemento> memento = 64 const AngleMeasureToolMemento& memento =
65 boost::dynamic_pointer_cast<AngleMeasureToolMemento>(command_->mementoOriginal_); 65 dynamic_cast<const AngleMeasureToolMemento&>(command_->GetMementoOriginal());
66
67 ORTHANC_ASSERT(memento.get() != NULL);
68 66
69 switch (modifiedZone_) 67 switch (modifiedZone_)
70 { 68 {
71 case AngleMeasureTool::AngleHighlightArea_Center: 69 case AngleMeasureTool::AngleHighlightArea_Center:
72 { 70 {
73 ScenePoint2D newCenter = memento->center_ + delta; 71 ScenePoint2D newCenter = memento.center_ + delta;
74 GetCommand()->SetCenter(newCenter); 72 GetCommand()->SetCenter(newCenter);
73 break;
75 } 74 }
76 break; 75
77 case AngleMeasureTool::AngleHighlightArea_Side1: 76 case AngleMeasureTool::AngleHighlightArea_Side1:
78 case AngleMeasureTool::AngleHighlightArea_Side2: 77 case AngleMeasureTool::AngleHighlightArea_Side2:
79 { 78 {
80 ScenePoint2D newCenter = memento->center_ + delta; 79 ScenePoint2D newCenter = memento.center_ + delta;
81 ScenePoint2D newSide1End = memento->side1End_ + delta; 80 ScenePoint2D newSide1End = memento.side1End_ + delta;
82 ScenePoint2D newSide2End = memento->side2End_ + delta; 81 ScenePoint2D newSide2End = memento.side2End_ + delta;
83 GetCommand()->SetCenter(newCenter); 82 GetCommand()->SetCenter(newCenter);
84 GetCommand()->SetSide1End(newSide1End); 83 GetCommand()->SetSide1End(newSide1End);
85 GetCommand()->SetSide2End(newSide2End); 84 GetCommand()->SetSide2End(newSide2End);
85 break;
86 } 86 }
87 break; 87
88 case AngleMeasureTool::AngleHighlightArea_Side1End: 88 case AngleMeasureTool::AngleHighlightArea_Side1End:
89 { 89 {
90 ScenePoint2D newSide1End = memento->side1End_ + delta; 90 ScenePoint2D newSide1End = memento.side1End_ + delta;
91 GetCommand()->SetSide1End(newSide1End); 91 GetCommand()->SetSide1End(newSide1End);
92 break;
92 } 93 }
93 break; 94
94 case AngleMeasureTool::AngleHighlightArea_Side2End: 95 case AngleMeasureTool::AngleHighlightArea_Side2End:
95 { 96 {
96 ScenePoint2D newSide2End = memento->side2End_ + delta; 97 ScenePoint2D newSide2End = memento.side2End_ + delta;
97 GetCommand()->SetSide2End(newSide2End); 98 GetCommand()->SetSide2End(newSide2End);
99 break;
98 } 100 }
99 break; 101
100 default: 102 default:
101 LOG(WARNING) << "Warning: please retry the measuring tool editing operation!"; 103 LOG(WARNING) << "Warning: please retry the measuring tool editing operation!";
102 break; 104 break;
103 } 105 }
104 } 106 }