bool ModuleBase_WidgetMultiSelector::setSelection(QList<ModuleBase_ViewerPrsPtr>& theValues,
const bool theToValidate)
{
+ AttributeSelectionListPtr aSelectionListAttr;
+ if (attribute()->attributeType() == ModelAPI_AttributeSelectionList::typeId())
+ aSelectionListAttr = std::dynamic_pointer_cast<ModelAPI_AttributeSelectionList>(attribute());
+ if (aSelectionListAttr.get())
+ aSelectionListAttr->cashValues(true);
+
/// remove unused objects from the model attribute.
/// It should be performed before new attributes append.
removeUnusedAttributeObjects(theValues);
//emit valuesChanged();
//}
+ if (aSelectionListAttr.get())
+ aSelectionListAttr->cashValues(false);
+
theValues.clear();
if (!anInvalidValues.empty())
theValues.append(anInvalidValues);