#ifndef XMLMODEL_H #define XMLMODEL_H #include #include #include 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 m_fields; }; #endif // XMLMODEL_H