}
else
aValid = false;
- aSelectAttr->setValue(ObjectPtr(), GeomShapePtr(), true);
+ //aSelectAttr->setValue(ObjectPtr(), GeomShapePtr(), true);
}
else {
ResultPtr aResult = aFeature->firstResult();
if (!aValid) {
// Clear attribute if it still has selection
AttributePtr anAttr = attribute();
- anAttr->reset();
+ std::string aType = anAttr->attributeType();
+ if (aType == ModelAPI_AttributeSelection::typeId()) {
+ AttributeSelectionPtr aSelectAttr =
+ std::dynamic_pointer_cast<ModelAPI_AttributeSelection>(anAttr);
+ aSelectAttr->removeTemporaryValues();
+ }
}
return aValid;
}