Fix a crash after removing all buildsteps.

This commit is contained in:
dt
2009-07-27 16:37:06 +02:00
parent 52145e0b98
commit 7335c28106

View File

@@ -266,7 +266,11 @@ void BuildStepsPage::stepMoveUp(int pos)
void BuildStepsPage::updateBuildStepButtonsState() void BuildStepsPage::updateBuildStepButtonsState()
{ {
int pos = m_ui->buildSettingsList->currentIndex().row(); int pos = m_ui->buildSettingsList->currentIndex().row();
if (pos == -1) {
m_ui->buildStepRemoveToolButton->setEnabled(false);
m_ui->buildStepUpToolButton->setEnabled(false);
m_ui->buildStepDownToolButton->setEnabled(false);
} else {
const QList<BuildStep *> &steps = m_clean ? m_pro->cleanSteps() : m_pro->buildSteps(); const QList<BuildStep *> &steps = m_clean ? m_pro->cleanSteps() : m_pro->buildSteps();
m_ui->buildStepRemoveToolButton->setEnabled(!steps.at(pos)->immutable()); m_ui->buildStepRemoveToolButton->setEnabled(!steps.at(pos)->immutable());
bool enableUp = pos>0 && !(steps.at(pos)->immutable() && steps.at(pos-1)->immutable()); bool enableUp = pos>0 && !(steps.at(pos)->immutable() && steps.at(pos-1)->immutable());
@@ -274,4 +278,5 @@ void BuildStepsPage::updateBuildStepButtonsState()
bool enableDown = pos < (m_ui->buildSettingsList->invisibleRootItem()->childCount() - 1) && bool enableDown = pos < (m_ui->buildSettingsList->invisibleRootItem()->childCount() - 1) &&
!(steps.at(pos)->immutable() && steps.at(pos+1)->immutable()); !(steps.at(pos)->immutable() && steps.at(pos+1)->immutable());
m_ui->buildStepDownToolButton->setEnabled(enableDown); m_ui->buildStepDownToolButton->setEnabled(enableDown);
}
} }