[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [labplot] src: improved code for storing vector names in import
From: Stefan Gerlach <null () kde ! org>
Date: 2017-06-30 19:14:52
Message-ID: E1dR1NU-0002pd-4z () code ! kde ! org
[Download RAW message or body]
Git commit 60335a8af577fd97d94869f2e674258c674da02d by Stefan Gerlach.
Committed on 30/06/2017 at 19:14.
Pushed by sgerlach into branch 'master'.
improved code for storing vector names in import
M +7 -14 src/backend/datasources/filters/AsciiFilter.cpp
M +1 -2 src/backend/datasources/filters/AsciiFilter.h
M +1 -2 src/backend/datasources/filters/AsciiFilterPrivate.h
M +1 -1 src/kdefrontend/datasources/ImportFileWidget.cpp
https://commits.kde.org/labplot/60335a8af577fd97d94869f2e674258c674da02d
diff --git a/src/backend/datasources/filters/AsciiFilter.cpp \
b/src/backend/datasources/filters/AsciiFilter.cpp index 4e7e8b6b..710d8fe1 100644
--- a/src/backend/datasources/filters/AsciiFilter.cpp
+++ b/src/backend/datasources/filters/AsciiFilter.cpp
@@ -292,13 +292,10 @@ bool AsciiFilter::simplifyWhitespacesEnabled() const {
}
void AsciiFilter::setVectorNames(const QString s) {
- d->vectorNames = s.simplified();
+ d->vectorNames = s.simplified().split(' ');
}
-/*QString AsciiFilter::vectorNames() const {
+QStringList AsciiFilter::vectorNames() const {
return d->vectorNames;
-}*/
-QStringList AsciiFilter::vectorNameList() const {
- return d->vectorNameList;
}
QVector<AbstractColumn::ColumnMode> AsciiFilter::columnModes() {
@@ -403,14 +400,10 @@ int AsciiFilterPrivate::prepareDeviceToRead(QIODevice& device) \
{ DEBUG("headerEnabled = " << headerEnabled);
if (headerEnabled) { // use first line to name vectors
- vectorNameList = firstLineStringList;
+ vectorNames = firstLineStringList;
startRow++;
- } else {
- // create vector names out of the space separated vectorNames-string, if not empty
- if (!vectorNames.isEmpty())
- vectorNameList = vectorNames.split(' ');
}
- QDEBUG("vector names =" << vectorNameList);
+ QDEBUG("vector names =" << vectorNames);
// set range to read
if (endColumn == -1)
@@ -520,7 +513,7 @@ QVector<QStringList> \
AsciiFilterPrivate::readDataFromDevice(QIODevice& device, A QVector<void*> \
dataContainer; // pointers to the actual data containers if (dataSource)
columnOffset = dataSource->prepareImport(dataContainer, importMode, m_actualRows - \
startRow + 1,
- m_actualCols, vectorNameList, columnModes);
+ m_actualCols, vectorNames, columnModes);
// Read the data
int currentRow = 0; // indexes the position in the vector(column)
@@ -661,7 +654,7 @@ void AsciiFilter::save(QXmlStreamWriter* writer) const {
writer->writeAttribute( "separatingCharacter", d->separatingCharacter );
writer->writeAttribute( "autoMode", QString::number(d->autoModeEnabled) );
writer->writeAttribute( "header", QString::number(d->headerEnabled) );
- writer->writeAttribute( "vectorNames", d->vectorNames);
+ writer->writeAttribute( "vectorNames", d->vectorNames.join(' '));
writer->writeAttribute( "skipEmptyParts", QString::number(d->skipEmptyParts) );
writer->writeAttribute( "simplifyWhitespaces", \
QString::number(d->simplifyWhitespacesEnabled) ); writer->writeAttribute( \
"transposed", QString::number(d->transposed) ); @@ -709,7 +702,7 @@ bool \
AsciiFilter::load(XmlStreamReader* reader) { d->headerEnabled = str.toInt();
str = attribs.value("vectorNames").toString();
- d->vectorNames = str; //may be empty
+ d->vectorNames = str.split(' '); //may be empty
str = attribs.value("simplifyWhitespaces").toString();
if (str.isEmpty())
diff --git a/src/backend/datasources/filters/AsciiFilter.h \
b/src/backend/datasources/filters/AsciiFilter.h index 51cbf0ff..d775cb14 100644
--- a/src/backend/datasources/filters/AsciiFilter.h
+++ b/src/backend/datasources/filters/AsciiFilter.h
@@ -83,8 +83,7 @@ public:
bool isTransposed() const;
void setVectorNames(const QString);
-// QString vectorNames() const;
- QStringList vectorNameList() const;
+ QStringList vectorNames() const;
QVector<AbstractColumn::ColumnMode> columnModes();
void setStartRow(const int);
diff --git a/src/backend/datasources/filters/AsciiFilterPrivate.h \
b/src/backend/datasources/filters/AsciiFilterPrivate.h index 169f3d06..91cf1148 \
100644
--- a/src/backend/datasources/filters/AsciiFilterPrivate.h
+++ b/src/backend/datasources/filters/AsciiFilterPrivate.h
@@ -57,8 +57,7 @@ public:
bool skipEmptyParts;
bool simplifyWhitespacesEnabled;
bool transposed;
- QString vectorNames; // TODO: we need only one of them
- QStringList vectorNameList;
+ QStringList vectorNames;
QVector<AbstractColumn::ColumnMode> columnModes;
int startRow;
int endRow;
diff --git a/src/kdefrontend/datasources/ImportFileWidget.cpp \
b/src/kdefrontend/datasources/ImportFileWidget.cpp index 6d070c9a..b07322d2 100644
--- a/src/kdefrontend/datasources/ImportFileWidget.cpp
+++ b/src/kdefrontend/datasources/ImportFileWidget.cpp
@@ -893,7 +893,7 @@ void ImportFileWidget::refreshPreview() {
AsciiFilter *filter = (AsciiFilter *)this->currentFileFilter();
importedStrings = filter->readDataFromFile(fileName, nullptr, \
AbstractFileFilter::Replace, lines); tmpTableWidget = twPreview;
- vectorNameList = filter->vectorNameList();
+ vectorNameList = filter->vectorNames();
columnModes = filter->columnModes();
break;
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic