Salome HOME
Fix for issue #1174
[modules/shaper.git] / src / ModuleBase / ModuleBase_WidgetFileSelector.cpp
index a18f059399419bb5d9d2d2f351e17270a628eef3..dbe8e8ce30411823c8863bd989e56b5b2585101d 100644 (file)
@@ -88,7 +88,9 @@ bool ModuleBase_WidgetFileSelector::restoreValueCustom()
   AttributeStringPtr aStringAttr = aData->string(attributeID());
 
   bool isBlocked = myPathField->blockSignals(true);
-  myPathField->setText(QString::fromStdString(aStringAttr->value()));
+  QString aNewText = QString::fromStdString(aStringAttr->value());
+  if( myPathField->text() != aNewText )
+    myPathField->setText( aNewText );
   myPathField->blockSignals(isBlocked);
 
   return true;
@@ -162,12 +164,11 @@ QStringList ModuleBase_WidgetFileSelector::getValidatorFormats() const
   SessionPtr aMgr = ModelAPI_Session::get();
   ModelAPI_ValidatorsFactory* aFactory = aMgr->validators();
 
-  std::list<ModelAPI_Validator*> allValidators;
-  std::list<std::list<std::string> > allArguments;
-  aFactory->validators(myFeature->getKind(), myAttributeID, allValidators, allArguments);
+  ModelAPI_ValidatorsFactory::Validators allValidators;
+  aFactory->validators(myFeature->getKind(), myAttributeID, allValidators);
 
   QStringList aResult;
-  std::list<std::string> anArgumentList = allArguments.front();
+  std::list<std::string> anArgumentList = allValidators.front().second;
   std::list<std::string>::const_iterator it = anArgumentList.begin();
   for (; it != anArgumentList.end(); ++it) {
     QString aFormat = QString::fromStdString(*it);