From 6d6dfd4edc1d750ec836a8de6f8518ee94cc840a Mon Sep 17 00:00:00 2001 From: Debao Zhang Date: Sat, 4 Jan 2014 14:36:27 +0800 Subject: [PATCH] Code refactoring: add saveToXmlData() to Theme --- src/xlsx/xlsxpackage.cpp | 6 +----- src/xlsx/xlsxtheme.cpp | 8 ++++++++ src/xlsx/xlsxtheme_p.h | 1 + 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/xlsx/xlsxpackage.cpp b/src/xlsx/xlsxpackage.cpp index e267eb4..982e3c3 100644 --- a/src/xlsx/xlsxpackage.cpp +++ b/src/xlsx/xlsxpackage.cpp @@ -337,11 +337,7 @@ void Package::writeStylesFiles(ZipWriter &zipWriter) void Package::writeThemeFile(ZipWriter &zipWriter) { - QByteArray data; - QBuffer buffer(&data); - buffer.open(QIODevice::WriteOnly); - m_workbook->theme()->saveToXmlFile(&buffer); - zipWriter.addFile(QStringLiteral("xl/theme/theme1.xml"), data); + zipWriter.addFile(QStringLiteral("xl/theme/theme1.xml"), m_workbook->theme()->saveToXmlData()); } void Package::writeRootRelsFile(ZipWriter &zipWriter) diff --git a/src/xlsx/xlsxtheme.cpp b/src/xlsx/xlsxtheme.cpp index b08eb62..2029771 100755 --- a/src/xlsx/xlsxtheme.cpp +++ b/src/xlsx/xlsxtheme.cpp @@ -213,6 +213,14 @@ void Theme::saveToXmlFile(QIODevice *device) device->write(xmlData); } +QByteArray Theme::saveToXmlData() const +{ + if (xmlData.isEmpty()) + return defaultXmlData; + else + return xmlData; +} + void Theme::loadFromXmlData(const QByteArray &data) { xmlData = data; diff --git a/src/xlsx/xlsxtheme_p.h b/src/xlsx/xlsxtheme_p.h index 28a94c7..f67a4da 100755 --- a/src/xlsx/xlsxtheme_p.h +++ b/src/xlsx/xlsxtheme_p.h @@ -47,6 +47,7 @@ public: Theme(); void saveToXmlFile(QIODevice *device); + QByteArray saveToXmlData() const; void loadFromXmlData(const QByteArray &data); QByteArray xmlData;