#ifndef MYLISTMODEL_H #define MYLISTMODEL_H #include struct MyStruct; class MyListModel : public QAbstractListModel { Q_OBJECT Q_DISABLE_COPY(MyListModel) public: enum Role : int { Data = Qt::UserRole + 1, DateCreated, DateModified, Name, Icon, ID }; public: explicit MyListModel(QObject *parent = nullptr); ~MyListModel() override; // Basic functionality: int rowCount(const QModelIndex &parent = QModelIndex()) const override; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override; QHash roleNames() const override; void setMyStructs(const QList &structs); private: QList m_myStructs; }; #endif // MYLISTMODEL_H