This tries to detect the date format when initially reading a CSV file
for importing.

Signed-off-by: Miika Turkia <[email protected]>
---
 desktop-widgets/divelogimportdialog.cpp | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/desktop-widgets/divelogimportdialog.cpp 
b/desktop-widgets/divelogimportdialog.cpp
index 5747f36..c99810a 100644
--- a/desktop-widgets/divelogimportdialog.cpp
+++ b/desktop-widgets/divelogimportdialog.cpp
@@ -493,8 +493,14 @@ void DiveLogImportDialog::loadFileContents(int value, 
whatChanged triggeredBy)
                }
        }
        if (triggeredBy == INITIAL || (triggeredBy == KNOWNTYPES && value == 
MANUAL) || triggeredBy == SEPARATOR) {
+               int count = -1;
+               QString line = f.readLine().trimmed();
+               QStringList columns;
+               if (line.length() > 0)
+                       columns = line.split(separator);
                // now try and guess the columns
                Q_FOREACH (QString columnText, currColumns) {
+                       count++;
                        /*
                         * We have to skip the conversion of 2 to ₂ for APD Log
                         * viewer as that would mess up the sensor numbering. We
@@ -513,6 +519,15 @@ void DiveLogImportDialog::loadFileContents(int value, 
whatChanged triggeredBy)
                                provider->removeRow(idx);
                                headers.append(foundHeading);
                                matchedSome = true;
+                               if (foundHeading == QString::fromLatin1("Date") 
&& columns.count() >= count) {
+                                       QString date = columns.at(count);
+                                       if (date.contains('-')) {
+                                               
ui->DateFormat->setCurrentText("yyyy-mm-dd");
+
+                                       } else if (date.contains('/')) {
+                                               
ui->DateFormat->setCurrentText("mm/dd/yyyy");
+                                       }
+                               }
                        } else {
                                headers.append("");
                        }
-- 
2.5.0

_______________________________________________
subsurface mailing list
[email protected]
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface

Reply via email to