summaryrefslogtreecommitdiffstats
path: root/qt-ui/mainwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qt-ui/mainwindow.cpp')
-rw-r--r--qt-ui/mainwindow.cpp21
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()