diff options
Diffstat (limited to 'qt-ui/mainwindow.cpp')
-rw-r--r-- | qt-ui/mainwindow.cpp | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp index 593bbf166..c544dd812 100644 --- a/qt-ui/mainwindow.cpp +++ b/qt-ui/mainwindow.cpp @@ -36,6 +36,8 @@ #include "about.h" #include "printdialog.h" +#include "glib/gi18n.h" + static MainWindow* instance = 0; MainWindow* mainWindow() @@ -255,14 +257,25 @@ void MainWindow::on_actionEditDeviceNames_triggered() void MainWindow::on_actionAddDive_triggered() { + // clear the selection + for (int i = 0; i < dive_table.nr; i++) { + struct dive *d = get_dive(i); + if (d && d->selected) + deselect_dive(i); + } disableDcShortcuts(); DivePlannerPointsModel::instance()->setPlanMode(false); + // now cheat - create one dive that we use to store the info tab data in + struct dive *dive = alloc_dive(); + dive->when = QDateTime::currentMSecsSinceEpoch() / 1000L; + dive->dc.model = _("manually added dive"); + record_dive(dive); + select_dive(get_divenr(dive)); + ui->InfoWidget->updateDiveInfo(selected_dive); ui->stackedWidget->setCurrentIndex(1); ui->infoPane->setCurrentIndex(0); - ui->InfoWidget->clearStats(); - ui->InfoWidget->clearInfo(); - ui->InfoWidget->clearEquipment(); - ui->InfoWidget->updateDiveInfo(-1); + refreshDisplay(); + ui->InfoWidget->addDiveStarted(); } void MainWindow::on_actionRenumber_triggered() |