+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);
+ //TODO(sbh): extract as separate method
+ if(allArguments.empty())
+ return QStringList();
+ std::list<std::string> anArgumentList = allArguments.front();
+ std::list<std::string>::const_iterator it = anArgumentList.begin();
+ QStringList aResult;
+ for (; it != anArgumentList.end(); ++it) {
+ std::string anArg = *it;
+ int aSepPos = anArg.find(":");
+ if (aSepPos == std::string::npos) {
+ continue;
+ }
+ QString aFormat = QString::fromStdString(anArg.substr(0, aSepPos));
+ aFormat = aFormat.toUpper();
+ aResult.append(aFormat);
+ }
+ return aResult;
+}