comparison OrthancStone/Sources/Scene2DViewport/LineMeasureTool.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 462d7a0e064e
children fe5c7311a7fd
comparison
equal deleted inserted replaced
1790:b325761e0bd3 1791:9b650ab68d4c
176 { 176 {
177 return NULL; 177 return NULL;
178 } 178 }
179 } 179 }
180 180
181 boost::shared_ptr<MeasureToolMemento> LineMeasureTool::GetMemento() const 181 MeasureToolMemento* LineMeasureTool::CreateMemento() const
182 { 182 {
183 boost::shared_ptr<LineMeasureToolMemento> memento(new LineMeasureToolMemento()); 183 std::unique_ptr<LineMeasureToolMemento> memento(new LineMeasureToolMemento());
184 memento->start_ = start_; 184 memento->start_ = start_;
185 memento->end_ = end_; 185 memento->end_ = end_;
186 return memento; 186 return memento.release();
187 } 187 }
188 188
189 void LineMeasureTool::SetMemento( 189 void LineMeasureTool::SetMemento(const MeasureToolMemento& mementoBase)
190 boost::shared_ptr<MeasureToolMemento> mementoBase) 190 {
191 { 191 const LineMeasureToolMemento& memento = dynamic_cast<const LineMeasureToolMemento&>(mementoBase);
192 boost::shared_ptr<LineMeasureToolMemento> memento = 192 start_ = memento.start_;
193 boost::dynamic_pointer_cast<LineMeasureToolMemento>(mementoBase); 193 end_ = memento.end_;
194
195 ORTHANC_ASSERT(memento.get() != NULL, "Internal error: wrong (or bad) memento");
196
197 start_ = memento->start_;
198 end_ = memento->end_;
199 RefreshScene(); 194 RefreshScene();
200 } 195 }
201 196
202 void LineMeasureTool::RefreshScene() 197 void LineMeasureTool::RefreshScene()
203 { 198 {