mirror of
https://github.com/fralx/LimeReport.git
synced 2024-12-23 16:22:58 +03:00
0fca7169d3
except those placed in 3rdparty directories.
30 lines
791 B
C++
30 lines
791 B
C++
#ifndef XMLMODEL_H
|
|
#define XMLMODEL_H
|
|
|
|
#include <QAbstractItemModel>
|
|
#include <QDomDocument>
|
|
#include <QVector>
|
|
|
|
class XmlModel: public QAbstractItemModel {
|
|
public:
|
|
XmlModel(QByteArray* data = 0);
|
|
void setXMLData(QByteArray* data);
|
|
void parseHeaders();
|
|
QModelIndex index(int row, int column, const QModelIndex& parent) const;
|
|
QModelIndex parent(const QModelIndex& child) const;
|
|
int rowCount(const QModelIndex& parent) const;
|
|
int columnCount(const QModelIndex& parent) const;
|
|
QVariant data(const QModelIndex& index, int role) const;
|
|
QVariant headerData(int section, Qt::Orientation orientation, int role) const;
|
|
|
|
private:
|
|
void initModel();
|
|
|
|
private:
|
|
QDomDocument m_doc;
|
|
QDomNode m_items;
|
|
QVector<QString> m_fields;
|
|
};
|
|
|
|
#endif // XMLMODEL_H
|