28 changed files with 318 additions and 269 deletions
@ -0,0 +1,83 @@ |
|||
/****************************************************************************
|
|||
** Copyright (c) 2013-2014 Debao Zhang <hello@debao.me> |
|||
** All right reserved. |
|||
** |
|||
** Permission is hereby granted, free of charge, to any person obtaining |
|||
** a copy of this software and associated documentation files (the |
|||
** "Software"), to deal in the Software without restriction, including |
|||
** without limitation the rights to use, copy, modify, merge, publish, |
|||
** distribute, sublicense, and/or sell copies of the Software, and to |
|||
** permit persons to whom the Software is furnished to do so, subject to |
|||
** the following conditions: |
|||
** |
|||
** The above copyright notice and this permission notice shall be |
|||
** included in all copies or substantial portions of the Software. |
|||
** |
|||
** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
|||
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
|||
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
|||
** NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE |
|||
** LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION |
|||
** OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
|||
** WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
|||
** |
|||
****************************************************************************/ |
|||
|
|||
#include "xlsxooxmlfile.h" |
|||
#include "xlsxooxmlfile_p.h" |
|||
|
|||
#include <QBuffer> |
|||
#include <QByteArray> |
|||
|
|||
QT_BEGIN_NAMESPACE_XLSX |
|||
|
|||
OOXmlFilePrivate::OOXmlFilePrivate(OOXmlFile *q) |
|||
:q_ptr(q) |
|||
{ |
|||
|
|||
} |
|||
|
|||
/*!
|
|||
* \internal |
|||
* |
|||
* \class OOXmlFile |
|||
* |
|||
* Base class of all the ooxml part file. |
|||
*/ |
|||
|
|||
OOXmlFile::OOXmlFile() |
|||
:d_ptr(new OOXmlFilePrivate(this)) |
|||
{ |
|||
} |
|||
|
|||
OOXmlFile::OOXmlFile(OOXmlFilePrivate *d) |
|||
:d_ptr(d) |
|||
{ |
|||
|
|||
} |
|||
|
|||
OOXmlFile::~OOXmlFile() |
|||
{ |
|||
delete d_ptr; |
|||
} |
|||
|
|||
QByteArray OOXmlFile::saveToXmlData() const |
|||
{ |
|||
QByteArray data; |
|||
QBuffer buffer(&data); |
|||
buffer.open(QIODevice::WriteOnly); |
|||
saveToXmlFile(&buffer); |
|||
|
|||
return data; |
|||
} |
|||
|
|||
bool OOXmlFile::loadFromXmlData(const QByteArray &data) |
|||
{ |
|||
QBuffer buffer; |
|||
buffer.setData(data); |
|||
buffer.open(QIODevice::ReadOnly); |
|||
|
|||
return loadFromXmlFile(&buffer); |
|||
} |
|||
|
|||
QT_END_NAMESPACE_XLSX |
@ -0,0 +1,58 @@ |
|||
/****************************************************************************
|
|||
** Copyright (c) 2013-2014 Debao Zhang <hello@debao.me> |
|||
** All right reserved. |
|||
** |
|||
** Permission is hereby granted, free of charge, to any person obtaining |
|||
** a copy of this software and associated documentation files (the |
|||
** "Software"), to deal in the Software without restriction, including |
|||
** without limitation the rights to use, copy, modify, merge, publish, |
|||
** distribute, sublicense, and/or sell copies of the Software, and to |
|||
** permit persons to whom the Software is furnished to do so, subject to |
|||
** the following conditions: |
|||
** |
|||
** The above copyright notice and this permission notice shall be |
|||
** included in all copies or substantial portions of the Software. |
|||
** |
|||
** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
|||
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
|||
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
|||
** NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE |
|||
** LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION |
|||
** OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
|||
** WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
|||
** |
|||
****************************************************************************/ |
|||
|
|||
#ifndef QXLSX_XLSXOOXMLFILE_H |
|||
#define QXLSX_XLSXOOXMLFILE_H |
|||
|
|||
#include "xlsxglobal.h" |
|||
|
|||
class QIODevice; |
|||
class QByteArray; |
|||
|
|||
QT_BEGIN_NAMESPACE_XLSX |
|||
|
|||
class OOXmlFilePrivate; |
|||
|
|||
class Q_XLSX_EXPORT OOXmlFile |
|||
{ |
|||
public: |
|||
virtual ~OOXmlFile(); |
|||
|
|||
virtual void saveToXmlFile(QIODevice *device) const = 0; |
|||
virtual bool loadFromXmlFile(QIODevice *device) = 0; |
|||
|
|||
virtual QByteArray saveToXmlData() const; |
|||
virtual bool loadFromXmlData(const QByteArray &data); |
|||
|
|||
protected: |
|||
OOXmlFile(); |
|||
OOXmlFile(OOXmlFilePrivate *d); |
|||
|
|||
OOXmlFilePrivate *d_ptr; |
|||
}; |
|||
|
|||
QT_END_NAMESPACE_XLSX |
|||
|
|||
#endif // QXLSX_XLSXOOXMLFILE_H
|
@ -0,0 +1,56 @@ |
|||
/****************************************************************************
|
|||
** Copyright (c) 2013-2014 Debao Zhang <hello@debao.me> |
|||
** All right reserved. |
|||
** |
|||
** Permission is hereby granted, free of charge, to any person obtaining |
|||
** a copy of this software and associated documentation files (the |
|||
** "Software"), to deal in the Software without restriction, including |
|||
** without limitation the rights to use, copy, modify, merge, publish, |
|||
** distribute, sublicense, and/or sell copies of the Software, and to |
|||
** permit persons to whom the Software is furnished to do so, subject to |
|||
** the following conditions: |
|||
** |
|||
** The above copyright notice and this permission notice shall be |
|||
** included in all copies or substantial portions of the Software. |
|||
** |
|||
** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
|||
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
|||
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
|||
** NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE |
|||
** LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION |
|||
** OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
|||
** WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
|||
** |
|||
****************************************************************************/ |
|||
|
|||
#ifndef XLSXOOXMLFILE_P_H |
|||
#define XLSXOOXMLFILE_P_H |
|||
|
|||
//
|
|||
// W A R N I N G
|
|||
// -------------
|
|||
//
|
|||
// This file is not part of the Qt Xlsx API. It exists for the convenience
|
|||
// of the Qt Xlsx. This header file may change from
|
|||
// version to version without notice, or even be removed.
|
|||
//
|
|||
// We mean it.
|
|||
//
|
|||
|
|||
#include "xlsxooxmlfile.h" |
|||
|
|||
QT_BEGIN_NAMESPACE_XLSX |
|||
|
|||
class XLSX_AUTOTEST_EXPORT OOXmlFilePrivate |
|||
{ |
|||
Q_DECLARE_PUBLIC(OOXmlFile) |
|||
|
|||
public: |
|||
OOXmlFilePrivate(OOXmlFile *q); |
|||
|
|||
OOXmlFile *q_ptr; |
|||
}; |
|||
|
|||
QT_END_NAMESPACE_XLSX |
|||
|
|||
#endif // XLSXOOXMLFILE_P_H
|
Loading…
Reference in new issue