Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifndef MDBRELEASESMODEL_H
- #define MDBRELEASESMODEL_H
- #include <QAbstractTableModel>
- #include <QDomDocument>
- class MDBReleasesModel : public QAbstractTableModel
- {
- Q_OBJECT
- friend class MDBReleasesModelSorter;
- public:
- enum CustomRole
- {
- ReleaseIdRole = Qt::UserRole
- };
- MDBReleasesModel( QObject* parent = 0 );
- virtual ~MDBReleasesModel();
- virtual int columnCount( const QModelIndex& parent = QModelIndex() ) const;
- virtual int rowCount( const QModelIndex& parent = QModelIndex() ) const;
- virtual QVariant data( const QModelIndex& index, int role = Qt::DisplayRole ) const;
- virtual QVariant headerData( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const;
- virtual void sort( int column, Qt::SortOrder order = Qt::AscendingOrder );
- void clear();
- void setDocument( const QDomDocument& document );
- QDomDocument document() const;
- protected:
- QDomDocument mDocument;
- QDomNodeList mReleases;
- QHash<int, int> mSortMapping; // row, native row
- static QVariant nodeValue( const QDomNode& node, int column );
- virtual int nodeCount( const QDomDocument& document = QDomDocument() ) const {}
- virtual QDomNode node( const QModelIndex& index ) const {}
- virtual QVariant nodeData( const QDomNode& node, int column, int role ) const {}
- };
- #endif // MDBRELEASESMODEL_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement