Debao Zhang
11 years ago
6 changed files with 153 additions and 6 deletions
@ -0,0 +1,71 @@ |
|||||
|
#include "xlsxdocument.h" |
||||
|
#include "xlsxdocument_p.h" |
||||
|
#include "xlsxworkbook.h" |
||||
|
#include "xlsxworksheet.h" |
||||
|
|
||||
|
#include <QFile> |
||||
|
|
||||
|
namespace QXlsx { |
||||
|
|
||||
|
DocumentPrivate::DocumentPrivate(Document *p) : |
||||
|
q_ptr(p), defaultPackageName(QStringLiteral("Book1")) |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
bool DocumentPrivate::loadPackage(QIODevice *device) |
||||
|
{ |
||||
|
|
||||
|
return false; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/*!
|
||||
|
\class Document |
||||
|
|
||||
|
*/ |
||||
|
|
||||
|
Document::Document(QObject *parent) : |
||||
|
QObject(parent), d_ptr(new DocumentPrivate(this)) |
||||
|
{ |
||||
|
} |
||||
|
|
||||
|
Document::Document(const QString &name, QObject *parent) : |
||||
|
QObject(parent), d_ptr(new DocumentPrivate(this)) |
||||
|
{ |
||||
|
d_ptr->packageName = name; |
||||
|
if (QFile::exists(name)) { |
||||
|
QFile xlsx(name); |
||||
|
if (xlsx.open(QFile::ReadOnly)) |
||||
|
d_ptr->loadPackage(&xlsx); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
Document::Document(QIODevice *device, QObject *parent) : |
||||
|
QObject(parent), d_ptr(new DocumentPrivate(this)) |
||||
|
{ |
||||
|
if (device && device->isReadable()) |
||||
|
d_ptr->loadPackage(device); |
||||
|
} |
||||
|
|
||||
|
bool Document::save() |
||||
|
{ |
||||
|
return false; |
||||
|
} |
||||
|
|
||||
|
bool Document::saveAs(const QString &name) |
||||
|
{ |
||||
|
return false; |
||||
|
} |
||||
|
|
||||
|
bool Document::saveAs(QIODevice *device) |
||||
|
{ |
||||
|
return false; |
||||
|
} |
||||
|
|
||||
|
Document::~Document() |
||||
|
{ |
||||
|
delete d_ptr; |
||||
|
} |
||||
|
|
||||
|
} // namespace QXlsx
|
@ -0,0 +1,35 @@ |
|||||
|
#ifndef QXLSX_XLSXDOCUMENT_H |
||||
|
#define QXLSX_XLSXDOCUMENT_H |
||||
|
|
||||
|
#include "xlsxglobal.h" |
||||
|
#include <QObject> |
||||
|
class QIODevice; |
||||
|
|
||||
|
namespace QXlsx { |
||||
|
|
||||
|
class Workbook; |
||||
|
class Worksheet; |
||||
|
class DocumentPrivate; |
||||
|
class Q_XLSX_EXPORT Document : public QObject |
||||
|
{ |
||||
|
Q_OBJECT |
||||
|
Q_DECLARE_PRIVATE(Document) |
||||
|
|
||||
|
public: |
||||
|
explicit Document(QObject *parent = 0); |
||||
|
Document(const QString &name, QObject *parent=0); |
||||
|
Document(QIODevice *device, QObject *parent=0); |
||||
|
~Document(); |
||||
|
|
||||
|
bool save(); |
||||
|
bool saveAs(const QString &name); |
||||
|
bool saveAs(QIODevice *device); |
||||
|
|
||||
|
private: |
||||
|
Q_DISABLE_COPY(Document) |
||||
|
DocumentPrivate * const d_ptr; |
||||
|
}; |
||||
|
|
||||
|
} // namespace QXlsx
|
||||
|
|
||||
|
#endif // QXLSX_XLSXDOCUMENT_H
|
@ -0,0 +1,24 @@ |
|||||
|
#ifndef XLSXDOCUMENT_P_H |
||||
|
#define XLSXDOCUMENT_P_H |
||||
|
|
||||
|
#include "xlsxdocument.h" |
||||
|
|
||||
|
namespace QXlsx { |
||||
|
|
||||
|
class DocumentPrivate |
||||
|
{ |
||||
|
Q_DECLARE_PUBLIC(Document) |
||||
|
public: |
||||
|
DocumentPrivate(Document *p); |
||||
|
|
||||
|
bool loadPackage(QIODevice *device); |
||||
|
|
||||
|
Document *q_ptr; |
||||
|
const QString defaultPackageName; //default name when package name not specified
|
||||
|
QString packageName; //name of the .xlsx file
|
||||
|
|
||||
|
}; |
||||
|
|
||||
|
} |
||||
|
|
||||
|
#endif // XLSXDOCUMENT_P_H
|
Loading…
Reference in new issue