#include <ModelAPI_AttributeSelection.h>
#include <ModelAPI_AttributeSelectionList.h>
#include <ModelAPI_AttributeRefList.h>
-
+#include <ModelAPI_Validator.h>
+#include <ModelAPI_Session.h>
#include <GeomValidators_Tools.h>
updateShapes();
}
-bool PartSet_OperationPrs::dependOn(const ObjectPtr& theResult)
+/*bool PartSet_OperationPrs::dependOn(const ObjectPtr& theResult)
{
return myFeatureShapes.contains(theResult);
-}
+}*/
void PartSet_OperationPrs::updateShapes()
{
if (!myFeature.get())
return;
+ ModelAPI_ValidatorsFactory* aValidators = ModelAPI_Session::get()->validators();
+
QList<GeomShapePtr> aShapes;
std::list<AttributePtr> anAttributes = myFeature->data()->attributes("");
std::list<AttributePtr>::const_iterator anIt = anAttributes.begin(), aLast = anAttributes.end();
if (!isSelectionAttribute(anAttribute))
continue;
+ if (!aValidators->isCase(myFeature, anAttribute->id()))
+ continue; // this attribute is not participated in the current case
+
std::string anAttrType = anAttribute->attributeType();
if (anAttrType == ModelAPI_AttributeSelectionList::typeId()) {
void setFeature(const FeaturePtr& theFeature);
/// Returns true if the presentation
- bool dependOn(const ObjectPtr& theObject);
+ //bool dependOn(const ObjectPtr& theObject);
// Recompute internal list of shaped dependent on the current feature
void updateShapes();