diff --git a/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp b/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp index a76a4472cb..cca6ab97d7 100644 --- a/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp +++ b/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp @@ -158,12 +158,7 @@ bool ViewProviderTransformed::onDelete(const std::vector &s) return ViewProvider::onDelete(s); } -void ViewProviderTransformed::recomputeFeature(bool recompute) -{ - PartDesign::Transformed* pcTransformed = getObject(); - if(recompute || (pcTransformed->isError() || pcTransformed->mustExecute())) - pcTransformed->recomputeFeature(true); - +void ViewProviderTransformed::handleTranformedResult(PartDesign::Transformed* pcTransformed) { unsigned rejected = 0; TopoDS_Shape cShape = pcTransformed->rejected; TopExp_Explorer xp; @@ -209,6 +204,15 @@ void ViewProviderTransformed::recomputeFeature(bool recompute) } } +void ViewProviderTransformed::recomputeFeature(bool recompute) +{ + PartDesign::Transformed* pcTransformed = getObject(); + if(recompute || (pcTransformed->isError() || pcTransformed->mustExecute())) + pcTransformed->recomputeFeature(true); + + handleTranformedResult(pcTransformed); +} + void ViewProviderTransformed::showRejectedShape(TopoDS_Shape shape) { try { diff --git a/src/Mod/PartDesign/Gui/ViewProviderTransformed.h b/src/Mod/PartDesign/Gui/ViewProviderTransformed.h index 4927030e66..cce875cff5 100644 --- a/src/Mod/PartDesign/Gui/ViewProviderTransformed.h +++ b/src/Mod/PartDesign/Gui/ViewProviderTransformed.h @@ -26,6 +26,10 @@ #include "ViewProvider.h" +namespace PartDesign { + class Transformed; +} + namespace PartDesignGui { class TaskDlgTransformedParameters; @@ -58,6 +62,7 @@ protected: void unsetEdit(int ModNum) override; bool checkDlgOpen(TaskDlgTransformedParameters* transformedDlg); + void handleTranformedResult(PartDesign::Transformed* transformed); // node for the representation of rejected repetitions SoGroup * pcRejectedRoot{nullptr};