QString HYDROData_Tool::GenerateObjectName( const Handle(HYDROData_Document)& theDoc,
const QString& thePrefix,
- const QStringList& theUsedNames )
+ const QStringList& theUsedNames,
+ const bool theIsTryToUsePurePrefix )
{
QStringList aNamesList( theUsedNames );
QString aName;
- int anId = 1;
- while( anId < 1000 )
- {
- aName = QString( "%1_%2" ).arg( thePrefix ).arg( QString::number( anId++ ) );
+ if ( theIsTryToUsePurePrefix && !aNamesList.contains( thePrefix ) ) {
+ aName = thePrefix;
+ } else {
+ int anId = 1;
+ while( anId < 1000 )
+ {
+ aName = QString( "%1_%2" ).arg( thePrefix ).arg( QString::number( anId++ ) );
- // check that there are no other objects with the same name in the document
- if ( !aNamesList.contains( aName ) )
- break;
+ // check that there are no other objects with the same name in the document
+ if ( !aNamesList.contains( aName ) )
+ break;
+ }
}
return aName;
* \param theModule module
* \param thePrefix name prefix
* \param theUsedNames list of already used names
+ * \param theIsTryToUsePurePrefix if true - the prefix will be returned if the name equal to the prefix is not busy
* \return generated name
*/
static QString GenerateObjectName( const Handle(HYDROData_Document)& theDoc,
const QString& thePrefix,
- const QStringList& theUsedNames = QStringList() );
+ const QStringList& theUsedNames = QStringList(),
+ const bool theIsTryToUsePurePrefix = false );
/**
* \brief Find the data object with the specified name.