From: mzn Date: Wed, 20 Nov 2013 07:41:15 +0000 (+0000) Subject: Add possibility to generate name without indexes. X-Git-Tag: BR_hydro_v_0_3_1~47 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=eaad2c710b0ddd11943e059aee40d8a6c2623804;p=modules%2Fhydro.git Add possibility to generate name without indexes. --- diff --git a/src/HYDROData/HYDROData_Tool.cxx b/src/HYDROData/HYDROData_Tool.cxx index c217725a..fee6e110 100644 --- a/src/HYDROData/HYDROData_Tool.cxx +++ b/src/HYDROData/HYDROData_Tool.cxx @@ -68,7 +68,8 @@ void HYDROData_Tool::SetMustBeUpdatedImages( QString HYDROData_Tool::GenerateObjectName( const Handle(HYDROData_Document)& theDoc, const QString& thePrefix, - const QStringList& theUsedNames ) + const QStringList& theUsedNames, + const bool theIsTryToUsePurePrefix ) { QStringList aNamesList( theUsedNames ); @@ -89,14 +90,18 @@ QString HYDROData_Tool::GenerateObjectName( const Handle(HYDROData_Document)& th 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; diff --git a/src/HYDROData/HYDROData_Tool.h b/src/HYDROData/HYDROData_Tool.h index 5b550ca2..a1fc8337 100644 --- a/src/HYDROData/HYDROData_Tool.h +++ b/src/HYDROData/HYDROData_Tool.h @@ -32,11 +32,13 @@ public: * \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.