Commit 064dadb8a1ce1715f974694bb5c545f6eee5d3eb
| |   |
| 306 | 306 | return; |
| 307 | 307 | |
| 308 | 308 | QString newDisplayName = newBuildConfiguration; |
| // Check that the internal name is not taken and use a different one otherwise |
| if (m_project->buildConfiguration(newBuildConfiguration)) { |
| int i = 2; |
| while (m_project->buildConfiguration(newBuildConfiguration + QString::number(i))) |
| ++i; |
| newBuildConfiguration += QString::number(i); |
| } |
| QStringList buildConfigurationDisplayNames; |
| foreach(BuildConfiguration *bc, m_project->buildConfigurations()) |
| buildConfigurationDisplayNames << bc->displayName(); |
| newDisplayName = Project::makeUnique(newDisplayName, buildConfigurationDisplayNames); |
|
| QStringList buildConfigurationNames; |
| foreach(BuildConfiguration *bc, m_project->buildConfigurations()) |
| buildConfigurationNames << bc->name(); |
|
| newBuildConfiguration = Project::makeUnique(newBuildConfiguration, buildConfigurationNames); |
|
| qDebug()<<"BuildSettingsWidget::cloneConfiguration source:"<<sourceConfiguration<<"to: "<<newBuildConfiguration; |
| 316 | 321 | |
| 317 | 322 | m_project->copyBuildConfiguration(sourceConfiguration, newBuildConfiguration); |
| 318 | 323 | m_project->setDisplayNameFor(m_project->buildConfiguration(newBuildConfiguration), newDisplayName); |
| |   |
| 150 | 150 | void Project::removeBuildConfiguration(BuildConfiguration *configuration) |
| 151 | 151 | { |
| 152 | 152 | //todo: this might be error prone |
| if (!buildConfigurations().contains(configuration)) |
| if (!m_buildConfigurationValues.contains(configuration)) |
| 154 | 154 | return; |
| 155 | 155 | |
| for (int i = 0; i != m_buildConfigurationValues.size(); ++i) |
| if (m_buildConfigurationValues.at(i)->name() == configuration->name()) { |
| delete m_buildConfigurationValues.at(i); |
| m_buildConfigurationValues.removeAt(i); |
| break; |
| } |
| m_buildConfigurationValues.removeOne(configuration); |
| 162 | 157 | |
| 163 | 158 | for (int i = 0; i != m_buildSteps.size(); ++i) |
| 164 | 159 | m_buildSteps.at(i)->removeBuildConfiguration(configuration->name()); |
| … | … | |
| 161 | 161 | m_cleanSteps.at(i)->removeBuildConfiguration(configuration->name()); |
| 162 | 162 | |
| 163 | 163 | emit removedBuildConfiguration(this, configuration->name()); |
| delete configuration; |
| 164 | 165 | } |
| 165 | 166 | |
| 166 | 167 | void Project::copyBuildConfiguration(const QString &source, const QString &dest) |
| |   |
| 141 | 141 | virtual QStringList includePaths(const QString &fileName) const; |
| 142 | 142 | virtual QStringList frameworkPaths(const QString &fileName) const; |
| 143 | 143 | |
| static QString makeUnique(const QString &preferedName, const QStringList &usedNames); |
| 144 | 145 | signals: |
| 145 | 146 | void fileListChanged(); |
| 146 | 147 | |
| … | … | |
| 184 | 184 | virtual bool restoreSettingsImpl(PersistentSettingsReader &reader); |
| 185 | 185 | |
| 186 | 186 | private: |
| static QString makeUnique(const QString &preferedName, const QStringList &usedNames); |
| 188 | 187 | QList<BuildStep *> m_buildSteps; |
| 189 | 188 | QList<BuildStep *> m_cleanSteps; |
| 190 | 189 | QMap<QString, QVariant> m_values; |