Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.28 KB | None | 0 0
  1. #ifndef MDBRELEASESMODEL_H
  2. #define MDBRELEASESMODEL_H
  3.  
  4. #include <QAbstractTableModel>
  5. #include <QDomDocument>
  6.  
  7. class MDBReleasesModel : public QAbstractTableModel
  8. {
  9. Q_OBJECT
  10. friend class MDBReleasesModelSorter;
  11.  
  12. public:
  13. enum CustomRole
  14. {
  15. ReleaseIdRole = Qt::UserRole
  16. };
  17.  
  18. MDBReleasesModel( QObject* parent = 0 );
  19. virtual ~MDBReleasesModel();
  20.  
  21. virtual int columnCount( const QModelIndex& parent = QModelIndex() ) const;
  22. virtual int rowCount( const QModelIndex& parent = QModelIndex() ) const;
  23. virtual QVariant data( const QModelIndex& index, int role = Qt::DisplayRole ) const;
  24. virtual QVariant headerData( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const;
  25. virtual void sort( int column, Qt::SortOrder order = Qt::AscendingOrder );
  26.  
  27. void clear();
  28.  
  29. void setDocument( const QDomDocument& document );
  30. QDomDocument document() const;
  31.  
  32. protected:
  33. QDomDocument mDocument;
  34. QDomNodeList mReleases;
  35. QHash<int, int> mSortMapping; // row, native row
  36.  
  37. static QVariant nodeValue( const QDomNode& node, int column );
  38.  
  39. virtual int nodeCount( const QDomDocument& document = QDomDocument() ) const {}
  40. virtual QDomNode node( const QModelIndex& index ) const {}
  41. virtual QVariant nodeData( const QDomNode& node, int column, int role ) const {}
  42. };
  43.  
  44. #endif // MDBRELEASESMODEL_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement