{
if (displayName() == name)
return;
- m_displayName = name;
+ if (name == m_defaultDisplayName) {
+ m_displayName.clear();
+ } else {
+ m_displayName = name;
+ }
emit displayNameChanged();
}
emit displayNameChanged();
}
+bool ProjectConfiguration::usesDefaultDisplayName() const
+{
+ return m_displayName.isEmpty();
+}
+
QVariantMap ProjectConfiguration::toMap() const
{
QVariantMap map;
QString id() const;
QString displayName() const;
+
+ bool usesDefaultDisplayName() const;
void setDisplayName(const QString &name);
void setDefaultDisplayName(const QString &name);
foreach (const BuildConfiguration *bc, d->m_buildConfigurations)
displayNames << bc->displayName();
configurationDisplayName = Project::makeUnique(configurationDisplayName, displayNames);
- configuration->setDisplayName(configurationDisplayName);
+ if (configurationDisplayName != configuration->displayName()) {
+ if (configuration->usesDefaultDisplayName()) {
+ configuration->setDefaultDisplayName(configurationDisplayName);
+ } else {
+ configuration->setDisplayName(configurationDisplayName);
+ }
+ }
// Make sure we have a sane tool chain if at all possible
if (!configuration->toolChain()
Qt4DesktopTarget *t = new Qt4DesktopTarget(static_cast<Qt4Project *>(parent), id);
foreach (const BuildConfigurationInfo &info, infos)
- t->addQt4BuildConfiguration(msgBuildConfigurationName(info),
+ t->addQt4BuildConfiguration(msgBuildConfigurationName(info), QString(),
info.version, info.buildConfig,
info.additionalArguments, info.directory);
Qt4SimulatorTarget *t = new Qt4SimulatorTarget(static_cast<Qt4Project *>(parent), id);
foreach (const BuildConfigurationInfo &info, infos)
- t->addQt4BuildConfiguration(msgBuildConfigurationName(info), info.version, info.buildConfig,
+ t->addQt4BuildConfiguration(msgBuildConfigurationName(info), QString(), info.version, info.buildConfig,
info.additionalArguments, info.directory);
t->addDeployConfiguration(t->createDeployConfiguration(ProjectExplorer::Constants::DEFAULT_DEPLOYCONFIGURATION_ID));
Q_ASSERT(target);
foreach (const BuildConfigurationInfo &info, infos)
- target->addQt4BuildConfiguration(msgBuildConfigurationName(info),
+ target->addQt4BuildConfiguration(msgBuildConfigurationName(info), QString(),
info.version, info.buildConfig,
info.additionalArguments, info.directory);
return 0;
Qt4SymbianTarget *t = new Qt4SymbianTarget(static_cast<Qt4Project *>(parent), id);
foreach (const BuildConfigurationInfo &info, infos)
- t->addQt4BuildConfiguration(msgBuildConfigurationName(info),
+ t->addQt4BuildConfiguration(msgBuildConfigurationName(info), QString(),
info.version, info.buildConfig,
info.additionalArguments, info.directory);
return 0;
//: Debug build configuration. We recommend not translating it.
- BuildConfiguration *bc = qt4Target->addQt4BuildConfiguration(tr("%1 Debug").arg(buildConfigurationName),
+ QString defaultDebugName = tr("%1 Debug").arg(version->displayName());
+ QString customDebugName;
+ if (buildConfigurationName != version->displayName())
+ customDebugName = tr("%1 Debug").arg(buildConfigurationName);
+
+ BuildConfiguration *bc = qt4Target->addQt4BuildConfiguration(defaultDebugName, customDebugName,
version,
(version->defaultBuildConfig() | QtSupport::BaseQtVersion::DebugBuild),
QString(), QString());
if (qt4Target->id() != Constants::S60_EMULATOR_TARGET_ID) {
//: Release build configuration. We recommend not translating it.
- bc = qt4Target->addQt4BuildConfiguration(tr("%1 Release").arg(buildConfigurationName),
+ QString defaultReleaseName = tr("%1 Release").arg(version->displayName());
+ QString customReleaseName;
+ if (buildConfigurationName != version->displayName())
+ customReleaseName = tr("%1 Release").arg(buildConfigurationName);
+
+ bc = qt4Target->addQt4BuildConfiguration(defaultReleaseName, customReleaseName,
version,
(version->defaultBuildConfig() & ~QtSupport::BaseQtVersion::DebugBuild),
QString(), QString());
QtSupport::QtVersionManager *vm = QtSupport::QtVersionManager::instance();
QtSupport::BaseQtVersion *newQtVersion = vm->version(newQtVersionId);
+ if (newQtVersion) {
+ const QString qtVersionName = newQtVersion->displayName();
+ QString defaultConfigName = (m_buildConfiguration->buildType() & BuildConfiguration::Debug) ?
+ //: Name of a debug build configuration to created by a project wizard, %1 being the Qt version name. We recommend not translating it.
+ tr("%1 Debug").arg(qtVersionName) :
+ //: Name of a release build configuration to created by a project wizard, %1 being the Qt version name. We recommend not translating it.
+ tr("%1 Release").arg(qtVersionName);
+
+ // make name unique
+ QStringList displayNames;
+ foreach (const BuildConfiguration *bc, m_buildConfiguration->target()->buildConfigurations()) {
+ if (bc != m_buildConfiguration)
+ displayNames << bc->displayName();
+ }
+ defaultConfigName = Project::makeUnique(defaultConfigName, displayNames);
+
+ m_buildConfiguration->setDefaultDisplayName(defaultConfigName);
+ }
+
m_ignoreChange = true;
m_buildConfiguration->setQtVersion(newQtVersion);
m_ignoreChange = false;
+
m_ui->qtVersionComboBox->setToolTip(newQtVersion ? newQtVersion->toHtml(false) : QString());
updateShadowBuildUi();
}
}
-Qt4BuildConfiguration *Qt4BaseTarget::addQt4BuildConfiguration(QString displayName, QtSupport::BaseQtVersion *qtversion,
+Qt4BuildConfiguration *Qt4BaseTarget::addQt4BuildConfiguration(QString defaultDisplayName,
+ QString displayName, QtSupport::BaseQtVersion *qtversion,
QtSupport::BaseQtVersion::QmakeBuildConfigs qmakeBuildConfiguration,
QString additionalArguments,
QString directory)
// Add the buildconfiguration
Qt4BuildConfiguration *bc = new Qt4BuildConfiguration(this);
- bc->setDefaultDisplayName(displayName);
+ bc->setDefaultDisplayName(defaultDisplayName);
+ bc->setDisplayName(displayName);
ProjectExplorer::BuildStepList *buildSteps = bc->stepList(ProjectExplorer::Constants::BUILDSTEPS_BUILD);
ProjectExplorer::BuildStepList *cleanSteps = bc->stepList(ProjectExplorer::Constants::BUILDSTEPS_CLEAN);
// This is the same for almost all Qt4Targets
// so for now offer a convience function
+<<<<<<< HEAD
Qt4BuildConfiguration *addQt4BuildConfiguration(QString displayName,
QtSupport::BaseQtVersion *qtversion,
QtSupport::BaseQtVersion::QmakeBuildConfigs qmakeBuildConfiguration,
+=======
+ Qt4BuildConfiguration *addQt4BuildConfiguration(QString defaultDisplayName,
+ QString displayName,
+ BaseQtVersion *qtversion,
+ BaseQtVersion::QmakeBuildConfigs qmakeBuildConfiguration,
+>>>>>>> BuildConfiguration: Adapt name if Qt version changes
QString additionalArguments,
QString directory);