summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/mainwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'desktop-widgets/mainwindow.cpp')
-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()