From fa8d809268b2381c1c5a4bc3a66bff94ceef327a Mon Sep 17 00:00:00 2001 From: donovaly Date: Tue, 3 Mar 2020 23:21:09 +0100 Subject: [PATCH] CanDelete is necessary for dimensions - therefore revert commit bd0bf690b53f8355400278a127524029d225dffb. - handle balloons the same way - fix line ending in ViewProviderProjGroupItem.cpp --- src/Mod/TechDraw/Gui/ViewProviderBalloon.cpp | 8 ++++++++ src/Mod/TechDraw/Gui/ViewProviderBalloon.h | 1 + src/Mod/TechDraw/Gui/ViewProviderDimension.cpp | 8 ++++++++ src/Mod/TechDraw/Gui/ViewProviderDimension.h | 1 + src/Mod/TechDraw/Gui/ViewProviderProjGroupItem.cpp | 4 ++-- 5 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/Mod/TechDraw/Gui/ViewProviderBalloon.cpp b/src/Mod/TechDraw/Gui/ViewProviderBalloon.cpp index faf3f1e30c..3f9943b036 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderBalloon.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderBalloon.cpp @@ -180,3 +180,11 @@ void ViewProviderBalloon::handleChangedPropertyType(Base::XMLReader &reader, con LineWidth.setValue(LineWidthProperty.getValue()); } } + +bool ViewProviderBalloon::canDelete(App::DocumentObject *obj) const +{ + // deletions of a balloon object doesn't destroy anything + // thus we can pass this action + Q_UNUSED(obj) + return true; +} \ No newline at end of file diff --git a/src/Mod/TechDraw/Gui/ViewProviderBalloon.h b/src/Mod/TechDraw/Gui/ViewProviderBalloon.h index 00ea42c7d7..fd9cb6ad27 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderBalloon.h +++ b/src/Mod/TechDraw/Gui/ViewProviderBalloon.h @@ -60,6 +60,7 @@ public: virtual bool setEdit(int ModNum); virtual void unsetEdit(int ModNum); virtual bool doubleClicked(void); + virtual bool canDelete(App::DocumentObject* obj) const; virtual TechDraw::DrawViewBalloon* getViewObject() const; diff --git a/src/Mod/TechDraw/Gui/ViewProviderDimension.cpp b/src/Mod/TechDraw/Gui/ViewProviderDimension.cpp index fab6b5a652..7d77bd6217 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderDimension.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderDimension.cpp @@ -221,3 +221,11 @@ void ViewProviderDimension::handleChangedPropertyType(Base::XMLReader &reader, c LineWidth.setValue(LineWidthProperty.getValue()); } } + +bool ViewProviderDimension::canDelete(App::DocumentObject *obj) const +{ + // deletions of dimension objects don't destroy anything + // thus we can pass this action + Q_UNUSED(obj) + return true; +} diff --git a/src/Mod/TechDraw/Gui/ViewProviderDimension.h b/src/Mod/TechDraw/Gui/ViewProviderDimension.h index 480f03c560..73cfa72100 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderDimension.h +++ b/src/Mod/TechDraw/Gui/ViewProviderDimension.h @@ -80,6 +80,7 @@ public: double prefFontSize() const; double prefWeight() const; int prefStandardAndStyle() const; + virtual bool canDelete(App::DocumentObject* obj) const; protected: virtual void handleChangedPropertyType(Base::XMLReader &reader, const char *TypeName, App::Property * prop); diff --git a/src/Mod/TechDraw/Gui/ViewProviderProjGroupItem.cpp b/src/Mod/TechDraw/Gui/ViewProviderProjGroupItem.cpp index e0e68f080c..ead48314ff 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderProjGroupItem.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderProjGroupItem.cpp @@ -43,7 +43,7 @@ #include #include -#include +#include #include #include "ViewProviderProjGroupItem.h" @@ -153,7 +153,7 @@ bool ViewProviderProjGroupItem::onDelete(const std::vector &) bool isAnchor = false; // get the item and group - TechDraw::DrawProjGroupItem* dpgi = static_cast(getViewObject()); + TechDraw::DrawProjGroupItem* dpgi = static_cast(getViewObject()); TechDraw::DrawProjGroup* dpg = dpgi->getPGroup(); // get the projection TechDraw::DrawProjGroupItem* proj = getObject();