Extensions: Group fix for python

This commit is contained in:
Stefan Tröger 2016-12-03 09:54:13 +01:00 committed by wmayer
parent 19e708879f
commit 1787a4f978
3 changed files with 8 additions and 2 deletions

View File

@ -117,7 +117,7 @@ public:
EXTENSION_PROXY_ONEARG(allowObject, pyobj);
if(result.isNone())
ExtensionT::allowObject(obj);
return ExtensionT::allowObject(obj);
if(result.isBoolean())
return result.isTrue();

View File

@ -580,9 +580,12 @@ void ViewProvider::dragObject(App::DocumentObject* obj) {
bool ViewProvider::canDropObject(App::DocumentObject* obj) const {
auto vector = getExtensionsDerivedFromType<Gui::ViewProviderExtension>();
for(Gui::ViewProviderExtension* ext : vector)
Base::Console().Message("Check extensions for drop\n");
for(Gui::ViewProviderExtension* ext : vector){
Base::Console().Message("Check extensions %s\n", ext->name());
if(ext->extensionCanDropObject(obj))
return true;
}
return false;
}

View File

@ -36,6 +36,7 @@
#include <App/DocumentObject.h>
#include <App/GroupExtension.h>
#include <App/Expression.h>
#include <Base/Console.h>
#include <QMessageBox>
using namespace Gui;
@ -76,6 +77,8 @@ bool ViewProviderGroupExtension::extensionCanDropObjects() const {
bool ViewProviderGroupExtension::extensionCanDropObject(App::DocumentObject* obj) const {
Base::Console().Message("Check ViewProviderGroupExtension");
auto* group = getExtendedViewProvider()->getObject()->getExtensionByType<App::GroupExtension>();
//we cannot drop thing of this group into it again