From 35b8a4f404de3297cb8d126654e0ec37245a7537 Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Sun, 23 Sep 2018 12:53:35 +0200 Subject: Core: split process_dives() in post-import and post-load versions process_dives() is used to post-process the dive table after loading or importing. The first parameter states whether this was after load or import. Especially in the light of undo, load and import are fundamentally different things. Notably, that latter should be undo-able, whereas the former is not. Therefore, as a first step to make import undo-able, split the function in two versions and remove the first parameter. It turns out the the load-version is very light. It only sets the DC nicknames and sorts the dive-table. There seems to be no reason to merge dives. Signed-off-by: Berthold Stoeger --- desktop-widgets/divelogimportdialog.cpp | 2 +- desktop-widgets/downloadfromdivecomputer.cpp | 4 ++-- desktop-widgets/mainwindow.cpp | 10 +++++----- desktop-widgets/subsurfacewebservices.cpp | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) (limited to 'desktop-widgets') diff --git a/desktop-widgets/divelogimportdialog.cpp b/desktop-widgets/divelogimportdialog.cpp index edb93b9fd..967330277 100644 --- a/desktop-widgets/divelogimportdialog.cpp +++ b/desktop-widgets/divelogimportdialog.cpp @@ -947,7 +947,7 @@ void DiveLogImportDialog::on_buttonBox_accepted() } } - process_dives(true, false); + process_imported_dives(false); MainWindow::instance()->refreshDisplay(); } diff --git a/desktop-widgets/downloadfromdivecomputer.cpp b/desktop-widgets/downloadfromdivecomputer.cpp index c34b9a824..c040575fc 100644 --- a/desktop-widgets/downloadfromdivecomputer.cpp +++ b/desktop-widgets/downloadfromdivecomputer.cpp @@ -499,8 +499,8 @@ void DownloadFromDCWidget::on_ok_clicked() dive = get_dive(dive_table.nr - 1); if (dive != NULL) { uniqId = get_dive(dive_table.nr - 1)->id; - process_dives(true, preferDownloaded()); - // after process_dives does any merging or resorting needed, we need + process_imported_dives(preferDownloaded()); + // after process_imported_dives does any merging or resorting needed, we need // to recreate the model for the dive list so we can select the newest dive MainWindow::instance()->recreateDiveList(); idx = get_idx_by_uniq_id(uniqId); diff --git a/desktop-widgets/mainwindow.cpp b/desktop-widgets/mainwindow.cpp index af22991a2..e4583a58e 100644 --- a/desktop-widgets/mainwindow.cpp +++ b/desktop-widgets/mainwindow.cpp @@ -616,7 +616,7 @@ void MainWindow::on_actionCloudstorageopen_triggered() QByteArray fileNamePtr = QFile::encodeName(filename); if (!parse_file(fileNamePtr.data(), &dive_table)) setCurrentFile(fileNamePtr.data()); - process_dives(false, false); + process_loaded_dives(); hideProgressBar(); refreshDisplay(); } @@ -1737,7 +1737,7 @@ void MainWindow::importFiles(const QStringList fileNames) fileNamePtr = QFile::encodeName(fileNames.at(i)); parse_file(fileNamePtr.data(), &dive_table); } - process_dives(true, false); + process_imported_dives(false); refreshDisplay(); } @@ -1767,7 +1767,7 @@ void MainWindow::importTxtFiles(const QStringList fileNames) DiveLogImportDialog *diveLogImport = new DiveLogImportDialog(csvFiles, this); diveLogImport->show(); } - process_dives(true, false); + process_imported_dives(false); refreshDisplay(); } @@ -1789,7 +1789,7 @@ void MainWindow::loadFiles(const QStringList fileNames) } hideProgressBar(); updateRecentFiles(); - process_dives(false, false); + process_loaded_dives(); refreshDisplay(); @@ -1827,7 +1827,7 @@ void MainWindow::on_actionImportDiveLog_triggered() if (csvFiles.size()) { DiveLogImportDialog *diveLogImport = new DiveLogImportDialog(csvFiles, this); diveLogImport->show(); - process_dives(true, false); + process_imported_dives(false); refreshDisplay(); } diff --git a/desktop-widgets/subsurfacewebservices.cpp b/desktop-widgets/subsurfacewebservices.cpp index 0d4d62bac..2dd39bffd 100644 --- a/desktop-widgets/subsurfacewebservices.cpp +++ b/desktop-widgets/subsurfacewebservices.cpp @@ -768,7 +768,7 @@ void DivelogsDeWebServices::buttonClicked(QAbstractButton *button) } /* parse file and import dives */ parse_file(QFile::encodeName(zipFile.fileName()), &dive_table); - process_dives(true, false); + process_imported_dives(false); MainWindow::instance()->refreshDisplay(); /* store last entered user/pass in config */ -- cgit v1.2.3-70-g09d2