Import: add merge_all_trips parameter to process_imported_dives()

When importing log-files we generally want to merge trips. But
when downloading and the user chose "generate new trip", that
new trip should not be merged into existing trips.

Therefore, add a "merge_all_trips" parameter to process_imported_dives().
If false only autogenerated trips [via autogroup] will be merged.
In the future we might want to let the user choose if trips
should be merged when importing log-files.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2018-12-23 16:30:19 +01:00 committed by Dirk Hohndel
parent 1593f2ebad
commit 0dfc59f38c
10 changed files with 22 additions and 14 deletions

View file

@ -1011,7 +1011,7 @@ void DiveLogImportDialog::on_buttonBox_accepted()
}
}
process_imported_dives(&table, &trips, false, false);
process_imported_dives(&table, &trips, false, false, true);
Command::clear();
MainWindow::instance()->refreshDisplay();
}

View file

@ -525,7 +525,7 @@ void DownloadFromDCWidget::on_ok_clicked()
// remember the last downloaded dive (on most dive computers this will be the chronologically
// first new dive) and select it again after processing all the dives
int uniqId = table->dives[table->nr - 1]->id;
process_imported_dives(table, trips, preferDownloaded(), true);
process_imported_dives(table, trips, preferDownloaded(), true, false);
Command::clear();
// 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

View file

@ -1714,7 +1714,7 @@ void MainWindow::importFiles(const QStringList fileNames)
fileNamePtr = QFile::encodeName(fileNames.at(i));
parse_file(fileNamePtr.data(), &table, &trips);
}
process_imported_dives(&table, &trips, false, false);
process_imported_dives(&table, &trips, false, false, true);
Command::clear();
refreshDisplay();
}

View file

@ -771,7 +771,7 @@ void DivelogsDeWebServices::buttonClicked(QAbstractButton *button)
struct dive_table table = { 0 };
struct trip_table trips = { 0 };
parse_file(QFile::encodeName(zipFile.fileName()), &table, &trips);
process_imported_dives(&table, &trips, false, false);
process_imported_dives(&table, &trips, false, false, true);
MainWindow::instance()->refreshDisplay();
/* store last entered user/pass in config */