Browse Source

Refactor Cell::Number ==> Cell::Numeric

master
Debao Zhang 11 years ago
parent
commit
98b6e83004
  1. 2
      src/xlsx/xlsxcell.h
  2. 12
      src/xlsx/xlsxworksheet.cpp
  3. 2
      src/xlsx/xlsxworksheet.h

2
src/xlsx/xlsxcell.h

@ -42,7 +42,7 @@ public:
enum DataType { enum DataType {
Blank, Blank,
String, String,
Number, Numeric,
Formula, Formula,
Boolean, Boolean,
Error Error

12
src/xlsx/xlsxworksheet.cpp

@ -303,7 +303,7 @@ int Worksheet::write(int row, int column, const QVariant &value, Format *format)
//Don't convert string to number if the flag not enabled. //Don't convert string to number if the flag not enabled.
ret = writeString(row, column, value.toString(), format); ret = writeString(row, column, value.toString(), format);
} else { } else {
ret = writeNumber(row, column, value.toDouble(), format); ret = writeNumeric(row, column, value.toDouble(), format);
} }
} else if (value.type() == QMetaType::QUrl) { //url } else if (value.type() == QMetaType::QUrl) { //url
ret = writeUrl(row, column, value.toUrl(), format); ret = writeUrl(row, column, value.toUrl(), format);
@ -378,13 +378,13 @@ int Worksheet::writeString(int row, int column, const QString &value, Format *fo
return error; return error;
} }
int Worksheet::writeNumber(int row, int column, double value, Format *format) int Worksheet::writeNumeric(int row, int column, double value, Format *format)
{ {
Q_D(Worksheet); Q_D(Worksheet);
if (d->checkDimensions(row, column)) if (d->checkDimensions(row, column))
return -1; return -1;
d->cellTable[row][column] = QSharedPointer<Cell>(new Cell(value, Cell::Number, format)); d->cellTable[row][column] = QSharedPointer<Cell>(new Cell(value, Cell::Numeric, format));
d->workbook->styles()->addFormat(format); d->workbook->styles()->addFormat(format);
return 0; return 0;
} }
@ -446,7 +446,7 @@ int Worksheet::writeDateTime(int row, int column, const QDateTime &dt, Format *f
double value = datetimeToNumber(dt, d->workbook->isDate1904()); double value = datetimeToNumber(dt, d->workbook->isDate1904());
d->cellTable[row][column] = QSharedPointer<Cell>(new Cell(value, Cell::Number, format)); d->cellTable[row][column] = QSharedPointer<Cell>(new Cell(value, Cell::Numeric, format));
d->workbook->styles()->addFormat(format); d->workbook->styles()->addFormat(format);
return 0; return 0;
@ -742,7 +742,7 @@ void WorksheetPrivate::writeCellData(XmlStreamWriter &writer, int row, int col,
//cell->data: Index of the string in sharedStringTable //cell->data: Index of the string in sharedStringTable
writer.writeAttribute(QStringLiteral("t"), QStringLiteral("s")); writer.writeAttribute(QStringLiteral("t"), QStringLiteral("s"));
writer.writeTextElement(QStringLiteral("v"), cell->value().toString()); writer.writeTextElement(QStringLiteral("v"), cell->value().toString());
} else if (cell->dataType() == Cell::Number){ } else if (cell->dataType() == Cell::Numeric){
double value = cell->value().toDouble(); double value = cell->value().toDouble();
writer.writeTextElement(QStringLiteral("v"), QString::number(value, 'g', 15)); writer.writeTextElement(QStringLiteral("v"), QString::number(value, 'g', 15));
} else if (cell->dataType() == Cell::Formula) { } else if (cell->dataType() == Cell::Formula) {
@ -1145,7 +1145,7 @@ void WorksheetPrivate::readSheetData(XmlStreamReader &reader)
reader.readNextStartElement(); reader.readNextStartElement();
if (reader.name() == QLatin1String("v")) { if (reader.name() == QLatin1String("v")) {
QString value = reader.readElementText(); QString value = reader.readElementText();
Cell *data = new Cell(value ,Cell::Number, format); Cell *data = new Cell(value ,Cell::Numeric, format);
cellTable[pos.x()][pos.y()] = QSharedPointer<Cell>(data); cellTable[pos.x()][pos.y()] = QSharedPointer<Cell>(data);
} }
} }

2
src/xlsx/xlsxworksheet.h

@ -53,7 +53,7 @@ public:
int write(const QString row_column, const QVariant &value, Format *format=0); int write(const QString row_column, const QVariant &value, Format *format=0);
int write(int row, int column, const QVariant &value, Format *format=0); int write(int row, int column, const QVariant &value, Format *format=0);
int writeString(int row, int column, const QString &value, Format *format=0); int writeString(int row, int column, const QString &value, Format *format=0);
int writeNumber(int row, int column, double value, Format *format=0); int writeNumeric(int row, int column, double value, Format *format=0);
int writeFormula(int row, int column, const QString &formula, Format *format=0, double result=0); int writeFormula(int row, int column, const QString &formula, Format *format=0, double result=0);
int writeBlank(int row, int column, Format *format=0); int writeBlank(int row, int column, Format *format=0);
int writeBool(int row, int column, bool value, Format *format=0); int writeBool(int row, int column, bool value, Format *format=0);

Loading…
Cancel
Save