#include <ModelAPI_Session.h>
#include <ModelAPI_ResultGroup.h>
+#include <ModuleBase_IModule.h>
+
#include <QAction>
#include <QContextMenuEvent>
#include <QMenu>
aMenu->addAction(action("DEACTIVATE_PART_CMD"));
else
aMenu->addAction(action("ACTIVATE_PART_CMD"));
- } else if (hasFeature) {
+ } else if (hasFeature && aObject->document() == aMgr->activeDocument()) {
aMenu->addAction(action("EDIT_CMD"));
} else {
if (aDisplayer->isVisible(aObject)) {
}
aMenu->addSeparator();
aMenu->addActions(myWorkshop->objectBrowser()->actions());
+
+ ModuleBase_IModule* aModule = myWorkshop->module();
+ if (aModule)
+ aModule->addObjectBrowserItems(aMenu);
+
if (aMenu->actions().size() > 0) {
return aMenu;
}
}
}
- aObjects.clear();
- aObjects = aSelMgr->selection()->selectedPresentations();
- if (aObjects.size() > 0) {
- bool hasFeature = true;//false;
- foreach(ObjectPtr aObject, aObjects)
- {
- ResultPtr aRes = std::dynamic_pointer_cast<ModelAPI_Result>(aObject);
- if (aRes) {
- hasFeature = true;
- }
- //FeaturePtr aFeature = std::dynamic_pointer_cast<ModelAPI_Feature>(aObject);
- //if (aFeature)
- // hasFeature = true;
- }
- if (hasFeature)
- theMenu->addAction(action("DELETE_CMD"));
- }
+ ModuleBase_IModule* aModule = myWorkshop->module();
+ if (aModule)
+ aModule->addViewerItems(theMenu);
}
void XGUI_ContextMenuMgr::connectObjectBrowser() const