Correctly track the 'changed' status of the equipment widgets

updateDive() cannot reset the changed status - this is called while the
dive is edited. Instead this status is reset when the user either accepts
or rejects the changes.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2014-07-15 20:33:48 -07:00
parent 327ea3aca4
commit 0cf55d7e39
2 changed files with 4 additions and 2 deletions

View file

@ -757,6 +757,8 @@ void MainTab::acceptChanges()
DivePlannerPointsModel::instance()->setPlanMode(DivePlannerPointsModel::NOTHING);
MainWindow::instance()->dive_list()->verticalScrollBar()->setSliderPosition(scrolledBy);
MainWindow::instance()->dive_list()->setFocus();
cylindersModel->changed = false;
weightModel->changed = false;
}
void MainTab::resetPallete()
@ -818,6 +820,8 @@ void MainTab::rejectChanges()
MainWindow::instance()->globe()->reload();
// show the profile and dive info
MainWindow::instance()->graphics()->replot();
cylindersModel->changed = false;
weightModel->changed = false;
cylindersModel->updateDive();
weightModel->updateDive();
}

View file

@ -312,7 +312,6 @@ void CylindersModel::updateDive()
displayed_dive.cylinder[i].manually_added))
rows = i + 1;
}
changed = false;
if (rows > 0) {
beginInsertRows(QModelIndex(), 0, rows - 1);
endInsertRows();
@ -636,7 +635,6 @@ void WeightModel::updateDive()
rows = i + 1;
}
}
changed = false;
if (rows > 0) {
beginInsertRows(QModelIndex(), 0, rows - 1);
endInsertRows();