summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2020-04-13 15:50:27 +0200
committerGravatar Robert C. Helling <helling@atdotde.de>2020-05-04 10:42:07 +0200
commit9bbd8b8169480f124d81b9cd4d05064ac664ae0d (patch)
treebd7a3c0e9748dff3e865006799de503f4c4005e9
parent4f5621c4c6acc3a1dbc1dbdc1267a222dcf66854 (diff)
downloadsubsurface-9bbd8b8169480f124d81b9cd4d05064ac664ae0d.tar.gz
desktop: remove unused if-branch in MainWindow::editCurrentDive()
MainWindow::editCurrentDive() used to be a general function to enter edit mode. Nowadays, this is only called for one very specific case, namely editing the profile of a manually added dive. Therefore, we can remove the if-branch that dealt with planned dives. Moreover, we can do the test right at the beginning and remove a warning message for duplicate "edition", as this is not possible anymore. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
-rw-r--r--desktop-widgets/mainwindow.cpp30
1 files changed, 10 insertions, 20 deletions
diff --git a/desktop-widgets/mainwindow.cpp b/desktop-widgets/mainwindow.cpp
index 0f7078c68..116e19c95 100644
--- a/desktop-widgets/mainwindow.cpp
+++ b/desktop-widgets/mainwindow.cpp
@@ -1668,31 +1668,21 @@ void MainWindow::on_actionImportDiveSites_triggered()
void MainWindow::editCurrentDive()
{
- if (!current_dive)
+ // We only allow editing of the profile for manually added dives.
+ if (!current_dive || !same_string(current_dive->dc.model, "manually added dive"))
return;
- if (mainTab->isEditing() || DivePlannerPointsModel::instance()->currentMode() != DivePlannerPointsModel::NOTHING) {
- QMessageBox::warning(this, tr("Warning"), tr("Please, first finish the current edition before trying to do another."));
+ // This shouldn't be possible, but let's make sure no weird "double editing" takes place.
+ if (mainTab->isEditing() || DivePlannerPointsModel::instance()->currentMode() != DivePlannerPointsModel::NOTHING)
return;
- }
- struct dive *d = current_dive;
- QString defaultDC(d->dc.model);
+ disableShortcuts();
DivePlannerPointsModel::instance()->clear();
- if (defaultDC == "manually added dive") {
- disableShortcuts();
- DivePlannerPointsModel::instance()->setPlanMode(DivePlannerPointsModel::ADD);
- graphics->setAddState();
- setApplicationState(ApplicationState::EditDive);
- DivePlannerPointsModel::instance()->loadFromDive(d);
- mainTab->enableEdition();
- } else if (defaultDC == "planned dive") {
- disableShortcuts();
- DivePlannerPointsModel::instance()->setPlanMode(DivePlannerPointsModel::PLAN);
- setApplicationState(ApplicationState::EditPlannedDive);
- DivePlannerPointsModel::instance()->loadFromDive(d);
- mainTab->enableEdition();
- }
+ DivePlannerPointsModel::instance()->setPlanMode(DivePlannerPointsModel::ADD);
+ graphics->setAddState();
+ setApplicationState(ApplicationState::EditDive);
+ DivePlannerPointsModel::instance()->loadFromDive(current_dive);
+ mainTab->enableEdition();
}
void MainWindow::turnOffNdlTts()