diff --git a/src/libs/vtools/dialogs/tools/dialogalongline.cpp b/src/libs/vtools/dialogs/tools/dialogalongline.cpp index be87b34b4..635aca309 100644 --- a/src/libs/vtools/dialogs/tools/dialogalongline.cpp +++ b/src/libs/vtools/dialogs/tools/dialogalongline.cpp @@ -161,9 +161,6 @@ void DialogAlongLine::DeployFormulaTextEdit() //--------------------------------------------------------------------------------------------------------------------- DialogAlongLine::~DialogAlongLine() { - VContainer *locData = const_cast (data); - locData->RemoveVariable(currentLength); - delete ui; } diff --git a/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp b/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp index eec2e4cc1..737a4ef2c 100644 --- a/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp +++ b/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp @@ -92,9 +92,6 @@ DialogSeamAllowance::DialogSeamAllowance(const VContainer *data, const quint32 & //--------------------------------------------------------------------------------------------------------------------- DialogSeamAllowance::~DialogSeamAllowance() { - VContainer *locData = const_cast (data); - locData->RemoveVariable(currentSeamAllowance); - delete ui; } diff --git a/src/libs/vtools/dialogs/tools/dialogtool.cpp b/src/libs/vtools/dialogs/tools/dialogtool.cpp index b0d71b549..9eb92ce49 100644 --- a/src/libs/vtools/dialogs/tools/dialogtool.cpp +++ b/src/libs/vtools/dialogs/tools/dialogtool.cpp @@ -1108,6 +1108,11 @@ void DialogTool::SetAssociatedTool(VAbstractTool *tool) { associatedTool = tool; SetToolId(tool->getId()); + data = tool->getData(); + if (not vis.isNull()) + { + vis->SetData(data); + } } else { diff --git a/src/libs/vtools/visualization/visualization.cpp b/src/libs/vtools/visualization/visualization.cpp index c20ece212..50bcb6954 100644 --- a/src/libs/vtools/visualization/visualization.cpp +++ b/src/libs/vtools/visualization/visualization.cpp @@ -120,6 +120,18 @@ void Visualization::setMainColor(const QColor &value) InitPen(); } +//--------------------------------------------------------------------------------------------------------------------- +const VContainer *Visualization::GetData() const +{ + return data; +} + +//--------------------------------------------------------------------------------------------------------------------- +void Visualization::SetData(const VContainer *data) +{ + this->data = data; +} + //--------------------------------------------------------------------------------------------------------------------- void Visualization::SetFactor(qreal factor) { diff --git a/src/libs/vtools/visualization/visualization.h b/src/libs/vtools/visualization/visualization.h index 15b2d0ee3..e87319595 100644 --- a/src/libs/vtools/visualization/visualization.h +++ b/src/libs/vtools/visualization/visualization.h @@ -59,6 +59,9 @@ public: virtual void VisualMode(const quint32 &pointId); void setMainColor(const QColor &value); + const VContainer *GetData() const; + void SetData(const VContainer *data); + Mode GetMode() const; void SetMode(const Mode &value);