diff --git a/src/Mod/Part/Gui/ViewProviderBoolean.cpp b/src/Mod/Part/Gui/ViewProviderBoolean.cpp index e4cac431a408..b440f276c558 100644 --- a/src/Mod/Part/Gui/ViewProviderBoolean.cpp +++ b/src/Mod/Part/Gui/ViewProviderBoolean.cpp @@ -244,6 +244,11 @@ bool ViewProviderMultiFuse::canDragObjects() const return true; } +bool ViewProviderMultiFuse::canDragObject(App::DocumentObject* obj) const +{ + return obj->getTypeId().isDerivedFrom(Part::Feature::getClassTypeId()); +} + void ViewProviderMultiFuse::dragObject(App::DocumentObject* obj) { Part::MultiFuse* pBool = static_cast(getObject()); @@ -262,6 +267,11 @@ bool ViewProviderMultiFuse::canDropObjects() const return true; } +bool ViewProviderMultiFuse::canDropObject(App::DocumentObject* obj) const +{ + return obj->getTypeId().isDerivedFrom(Part::Feature::getClassTypeId()); +} + void ViewProviderMultiFuse::dropObject(App::DocumentObject* obj) { Part::MultiFuse* pBool = static_cast(getObject()); @@ -363,6 +373,11 @@ bool ViewProviderMultiCommon::canDragObjects() const return true; } +bool ViewProviderMultiCommon::canDragObject(App::DocumentObject* obj) const +{ + return obj->getTypeId().isDerivedFrom(Part::Feature::getClassTypeId()); +} + void ViewProviderMultiCommon::dragObject(App::DocumentObject* obj) { Part::MultiCommon* pBool = static_cast(getObject()); @@ -381,6 +396,11 @@ bool ViewProviderMultiCommon::canDropObjects() const return true; } +bool ViewProviderMultiCommon::canDropObject(App::DocumentObject* obj) const +{ + return obj->getTypeId().isDerivedFrom(Part::Feature::getClassTypeId()); +} + void ViewProviderMultiCommon::dropObject(App::DocumentObject* obj) { Part::MultiCommon* pBool = static_cast(getObject()); diff --git a/src/Mod/Part/Gui/ViewProviderBoolean.h b/src/Mod/Part/Gui/ViewProviderBoolean.h index f3a0f09cd0ba..3c379309abab 100644 --- a/src/Mod/Part/Gui/ViewProviderBoolean.h +++ b/src/Mod/Part/Gui/ViewProviderBoolean.h @@ -65,8 +65,10 @@ class PartGuiExport ViewProviderMultiFuse : public ViewProviderPart /// drag and drop bool canDragObjects() const; + bool canDragObject(App::DocumentObject*) const; void dragObject(App::DocumentObject*); bool canDropObjects() const; + bool canDropObject(App::DocumentObject*) const; void dropObject(App::DocumentObject*); }; @@ -89,8 +91,10 @@ class PartGuiExport ViewProviderMultiCommon : public ViewProviderPart /// drag and drop bool canDragObjects() const; + bool canDragObject(App::DocumentObject*) const; void dragObject(App::DocumentObject*); bool canDropObjects() const; + bool canDropObject(App::DocumentObject*) const; void dropObject(App::DocumentObject*); };