listview_ad.cpp 787 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #include "listview_ad.h"
  2. Listview_ad::Listview_ad(QObject *parent)
  3. : QAbstractListModel(parent)
  4. {
  5. }
  6. void Listview_ad::setData(const QVariantList &data)
  7. {
  8. beginResetModel();
  9. m_data = data;
  10. endResetModel();
  11. }
  12. int Listview_ad::rowCount(const QModelIndex &parent) const
  13. {
  14. Q_UNUSED(parent)
  15. return m_data.count();
  16. }
  17. QVariant Listview_ad::data(const QModelIndex &index, int role) const
  18. {
  19. if (!index.isValid())
  20. return QVariant();
  21. if (role == Qt::DisplayRole || role == Qt::EditRole)
  22. return m_data.at(index.row()).toMap()["header"];
  23. return QVariant();
  24. }
  25. QHash<int, QByteArray> Listview_ad::roleNames() const
  26. {
  27. QHash<int, QByteArray> roles;
  28. roles[Qt::DisplayRole] = "display";
  29. roles[Qt::EditRole] = "edit";
  30. return roles;
  31. }