From 79e81d70ec009a99354676bff1aaa36fc5707233 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava Date: Tue, 6 Jan 2015 16:21:50 -0200 Subject: Implement LoadFileContents This will get the first 10 lines of data, try to separate them using the separator specified, and then try to make things display correctly on the table. Signed-off-by: Tomaz Canabrava Signed-off-by: Dirk Hohndel --- qt-ui/divelogimportdialog.cpp | 17 ++++++++++++++--- qt-ui/divelogimportdialog.h | 1 + 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/qt-ui/divelogimportdialog.cpp b/qt-ui/divelogimportdialog.cpp index 41144b81c..541485d51 100644 --- a/qt-ui/divelogimportdialog.cpp +++ b/qt-ui/divelogimportdialog.cpp @@ -195,8 +195,8 @@ DiveLogImportDialog::DiveLogImportDialog(QStringList fn, QWidget *parent) : QDia ColumnNameProvider *provider = new ColumnNameProvider(this); ui->avaliableColumns->setModel(provider); - ColumnNameResult *result = new ColumnNameResult(this); - ui->tableView->setModel(result); + resultModel = new ColumnNameResult(this); + ui->tableView->setModel(resultModel); loadFileContents(); @@ -214,7 +214,18 @@ DiveLogImportDialog::~DiveLogImportDialog() void DiveLogImportDialog::loadFileContents() { QFile f(fileNames.first()); - + QList fileColumns; + QStringList currColumns; + + f.open(QFile::ReadOnly); + int rows = 0; + while (rows < 10 || !f.atEnd()) { + QString currLine = f.readLine(); + currColumns = currLine.split( ui->CSVSeparator->currentText() ); + fileColumns.append(currColumns); + rows += 1; + } + resultModel->setColumnValues(fileColumns); } #define VALUE_IF_CHECKED(x) (ui->x->isEnabled() ? ui->x->value() - 1 : -1) diff --git a/qt-ui/divelogimportdialog.h b/qt-ui/divelogimportdialog.h index bca7ecc36..b5eaa906d 100644 --- a/qt-ui/divelogimportdialog.h +++ b/qt-ui/divelogimportdialog.h @@ -88,6 +88,7 @@ private: Ui::DiveLogImportDialog *ui; QList specialCSV; int column; + ColumnNameResult *resultModel; struct CSVAppConfig { QString name; -- cgit v1.2.3-70-g09d2