diff options
author | Miika Turkia <miika.turkia@gmail.com> | 2015-07-22 18:06:29 +0300 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-07-22 11:21:43 -0700 |
commit | ac4871c699d56d7d2163c4cc22dfd154e8cf7342 (patch) | |
tree | a950cab1f47d5429827b988f42870213ffd958e8 /qt-ui/divelogimportdialog.cpp | |
parent | bf45eddceb2f0cb694f8f907d16cdbc6a36fa3fe (diff) | |
download | subsurface-ac4871c699d56d7d2163c4cc22dfd154e8cf7342.tar.gz |
Import sensor values for autodetected APD files
If APD Log Viewer format is automatically detected, we should set the
sensor values to be imported properly. These need to be added to the
firstline and since we convert the number 2 from column headers to
subscript, this step must be skipped for the APD import.
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/divelogimportdialog.cpp')
-rw-r--r-- | qt-ui/divelogimportdialog.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/qt-ui/divelogimportdialog.cpp b/qt-ui/divelogimportdialog.cpp index ad28f28b3..7eb3f48f6 100644 --- a/qt-ui/divelogimportdialog.cpp +++ b/qt-ui/divelogimportdialog.cpp @@ -448,7 +448,7 @@ void DiveLogImportDialog::loadFileContents(int value, whatChanged triggeredBy) // Special handling for APD Log Viewer if ((triggeredBy == KNOWNTYPES && value == APD) || (triggeredBy == INITIAL && fileNames.first().endsWith(".apd", Qt::CaseInsensitive))) { apd=true; - firstLine = "Sample time\tSample depth\tSample setpoint\t\t\t\tSample pO₂\t\t\t\t\t\t\t\t\tSample temperature\t\tSample CNS\tSample stopdepth"; + firstLine = "Sample time\tSample depth\tSample setpoint\tSample sensor1 pO₂\tSample sensor2 pO₂\tSample sensor3 pO₂\tSample pO₂\t\t\t\t\t\t\t\t\tSample temperature\t\tSample CNS\tSample stopdepth"; blockSignals(true); ui->CSVSeparator->setCurrentText(tr("Tab")); if (triggeredBy == INITIAL && fileNames.first().contains(".apd", Qt::CaseInsensitive)) @@ -479,10 +479,18 @@ void DiveLogImportDialog::loadFileContents(int value, whatChanged triggeredBy) if (triggeredBy == INITIAL || (triggeredBy == KNOWNTYPES && value == MANUAL) || triggeredBy == SEPARATOR) { // now try and guess the columns Q_FOREACH (QString columnText, currColumns) { - columnText.replace("\"", ""); - columnText.replace("number", "#", Qt::CaseInsensitive); - columnText.replace("2", "₂", Qt::CaseInsensitive); - columnText.replace("cylinder", "cyl.", Qt::CaseInsensitive); + /* + * We have to skip the conversion of 2 to ₂ for APD Log + * viewer as that would mess up the sensor numbering. We + * also know that the column headers do not need this + * conversion. + */ + if (triggeredBy == KNOWNTYPES && value != APD) { + columnText.replace("\"", ""); + columnText.replace("number", "#", Qt::CaseInsensitive); + columnText.replace("2", "₂", Qt::CaseInsensitive); + columnText.replace("cylinder", "cyl.", Qt::CaseInsensitive); + } int idx = provider->mymatch(columnText); if (idx >= 0) { QString foundHeading = provider->data(provider->index(idx, 0), Qt::DisplayRole).toString(); |