- QList<ObjectPtr> aObjects = aSelMgr->selection()->selectedObjects();
- if (aObjects.size() == 1) {
- PluginManagerPtr aMgr = ModelAPI_PluginManager::get();
- ObjectPtr aObject = aObjects.first();
+ QObjectPtrList aObjects = aSelMgr->selection()->selectedObjects();
+ int aSelected = aObjects.size();
+ if (aSelected > 0) {
+ SessionPtr aMgr = ModelAPI_Session::get();
+ XGUI_Displayer* aDisplayer = myWorkshop->displayer();
+ bool hasResult = false;
+ bool hasFeature = false;
+ foreach(ObjectPtr aObj, aObjects)
+ {
+ FeaturePtr aFeature = std::dynamic_pointer_cast<ModelAPI_Feature>(aObj);
+ ResultPtr aResult = std::dynamic_pointer_cast<ModelAPI_Result>(aObj);
+ if (aResult)
+ hasResult = true;
+ if (aFeature)
+ hasFeature = true;
+ if (hasFeature && hasResult) // && hasGroup)
+ break;
+ }