#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