mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
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 <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
0ae57cfe92
commit
35b8a4f404
12 changed files with 60 additions and 49 deletions
|
@ -947,7 +947,7 @@ void DiveLogImportDialog::on_buttonBox_accepted()
|
|||
}
|
||||
}
|
||||
|
||||
process_dives(true, false);
|
||||
process_imported_dives(false);
|
||||
MainWindow::instance()->refreshDisplay();
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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();
|
||||
}
|
||||
|
||||
|
|
|
@ -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 */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue