diff --git a/tools/vabstracttool.cpp b/tools/vabstracttool.cpp index e6b656efc..61709d7b5 100644 --- a/tools/vabstracttool.cpp +++ b/tools/vabstracttool.cpp @@ -136,6 +136,14 @@ const VContainer *VAbstractTool::getData()const{ return &data; } +void VAbstractTool::RemoveAllChild(QDomElement &domElement){ + if ( domElement.hasChildNodes() ){ + while ( domElement.childNodes().length() >= 1 ){ + domElement.removeChild( domElement.firstChild() ); + } + } +} + void VAbstractTool::LineCoefficients(const QLineF &line, qreal *a, qreal *b, qreal *c){ //коефіцієнти для рівняння відрізку *a = line.p2().y() - line.p1().y(); diff --git a/tools/vabstracttool.h b/tools/vabstracttool.h index 0982bc64c..fc7d1e809 100644 --- a/tools/vabstracttool.h +++ b/tools/vabstracttool.h @@ -55,6 +55,7 @@ protected: void AddAttribute(QDomElement &domElement, const QString &name, const QString &value); const VContainer *getData() const; virtual void RemoveReferens(){} + void RemoveAllChild(QDomElement &domElement); private: Q_DISABLE_COPY(VAbstractTool) }; diff --git a/tools/vtooldetail.cpp b/tools/vtooldetail.cpp index 559180c76..81a9a3fbd 100644 --- a/tools/vtooldetail.cpp +++ b/tools/vtooldetail.cpp @@ -296,11 +296,7 @@ void VToolDetail::FullUpdateFromGui(int result){ domElement.setAttribute("supplement", QString().setNum(det.getSupplement())); domElement.setAttribute("closed", QString().setNum(det.getClosed())); domElement.setAttribute("width", QString().setNum(det.getWidth())); - if ( domElement.hasChildNodes() ){ - while ( domElement.childNodes().length() >= 1 ){ - domElement.removeChild( domElement.firstChild() ); - } - } + RemoveAllChild(domElement); for(qint32 i = 0; i < det.CountNode(); ++i){ AddNode(domElement, det[i]); }