aboutsummaryrefslogtreecommitdiffstats
path: root/qt-ui/mainwindow.cpp
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2013-09-22 22:24:28 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-09-22 22:24:28 -0700
commitdba16202c498d4432bc20181b0084f54b7abdba1 (patch)
tree1d7153e619313453e7f57142620ad3f1fa454284 /qt-ui/mainwindow.cpp
parent6ce5704435a761aeb7a8b7cb7bc9049ed3ee4ac9 (diff)
downloadsubsurface-dba16202c498d4432bc20181b0084f54b7abdba1.tar.gz
Correctly handle empty dive list after delete
Things need to be cleared out and disabled. But fixing this bug leaves another issue - while the newly selected dive after a delete acts as if it was selected, it doesn't show up as selected in the dive list. Reported-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/mainwindow.cpp')
-rw-r--r--qt-ui/mainwindow.cpp25
1 files changed, 14 insertions, 11 deletions
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index 9fa4a35dc..cb65b3dd2 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -134,6 +134,19 @@ void MainWindow::on_actionSaveAs_triggered()
{
file_save_as();
}
+
+void MainWindow::cleanUpEmpty()
+{
+ ui->InfoWidget->clearStats();
+ ui->InfoWidget->clearInfo();
+ ui->InfoWidget->clearEquipment();
+ ui->InfoWidget->updateDiveInfo(-1);
+ ui->ProfileWidget->clear();
+ ui->ListWidget->reload(DiveTripModel::TREE);
+ ui->globe->reload();
+ setTitle(MWTF_DEFAULT);
+}
+
void MainWindow::on_actionClose_triggered()
{
if (unsaved_changes() && (askSaveChanges() == FALSE))
@@ -146,17 +159,7 @@ void MainWindow::on_actionClose_triggered()
/* clear the selection and the statistics */
selected_dive = -1;
- //WARNING: Port this to Qt.
- //process_selected_dives();
-
- ui->InfoWidget->clearStats();
- ui->InfoWidget->clearInfo();
- ui->InfoWidget->clearEquipment();
- ui->InfoWidget->updateDiveInfo(-1);
- ui->ProfileWidget->clear();
- ui->ListWidget->reload(DiveTripModel::TREE);
- ui->globe->reload();
- setTitle(MWTF_DEFAULT);
+ cleanUpEmpty();
mark_divelist_changed(FALSE);
clear_events();