Add default datetime format for workbook
This commit is contained in:
@@ -42,9 +42,7 @@ int main()
|
||||
xlsx.write(row, col, row+col);
|
||||
xlsx.setColumn(8, 15, 5.0, format4);
|
||||
|
||||
QXlsx::Format *format5 = xlsx.createFormat();
|
||||
format5->setNumberFormatIndex(22);
|
||||
xlsx.write("A5", QDate(2013, 8, 29), format5);
|
||||
xlsx.write("A5", QDate(2013, 8, 29));
|
||||
|
||||
QXlsx::Format *format6 = xlsx.createFormat();
|
||||
format6->setPatternBackgroundColor(QColor(Qt::gray));
|
||||
|
||||
@@ -51,6 +51,7 @@ WorkbookPrivate::WorkbookPrivate(Workbook *q) :
|
||||
|
||||
strings_to_numbers_enabled = false;
|
||||
date1904 = false;
|
||||
defaultDateFormat = QStringLiteral("dd/mm/yyyy hh:mm");
|
||||
activesheet = 0;
|
||||
firstsheet = 0;
|
||||
table_count = 0;
|
||||
@@ -105,6 +106,19 @@ bool Workbook::isStringsToNumbersEnabled() const
|
||||
return d->strings_to_numbers_enabled;
|
||||
}
|
||||
|
||||
QString Workbook::defaultDateFormat() const
|
||||
{
|
||||
Q_D(const Workbook);
|
||||
return d->defaultDateFormat;
|
||||
|
||||
}
|
||||
|
||||
void Workbook::setDefaultDateFormat(const QString &format)
|
||||
{
|
||||
Q_D(Workbook);
|
||||
d->defaultDateFormat = format;
|
||||
}
|
||||
|
||||
void Workbook::defineName(const QString &name, const QString &formula)
|
||||
{
|
||||
|
||||
|
||||
@@ -63,6 +63,8 @@ public:
|
||||
void setDate1904(bool date1904);
|
||||
bool isStringsToNumbersEnabled() const;
|
||||
void setStringsToNumbersEnabled(bool enable=true);
|
||||
QString defaultDateFormat() const;
|
||||
void setDefaultDateFormat(const QString &format);
|
||||
|
||||
private:
|
||||
friend class Package;
|
||||
|
||||
@@ -48,6 +48,7 @@ public:
|
||||
|
||||
bool strings_to_numbers_enabled;
|
||||
bool date1904;
|
||||
QString defaultDateFormat;
|
||||
|
||||
int x_window;
|
||||
int y_window;
|
||||
|
||||
@@ -421,6 +421,10 @@ int Worksheet::writeDateTime(int row, int column, const QDateTime &dt, Format *f
|
||||
if (d->checkDimensions(row, column))
|
||||
return -1;
|
||||
|
||||
if (!format) {
|
||||
format = d->workbook->createFormat();
|
||||
format->setNumberFormat(d->workbook->defaultDateFormat());
|
||||
}
|
||||
d->cellTable[row][column] = QSharedPointer<XlsxCellData>(new XlsxCellData(dt, XlsxCellData::DateTime, format));
|
||||
d->workbook->styles()->addFormat(format);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user