#pragma once #include #include struct ArtPiece { QString filename, jsonFilename; QString title; QJsonObject object; QDate date; bool hasAltText = false; }; class ArtModel : public QAbstractTableModel { public: explicit ArtModel(const QString& definitionDirectory, const QString& assetDirectory); int rowCount(const QModelIndex &parent) const override; int columnCount(const QModelIndex &parent) const override; QVariant data(const QModelIndex &index, int role) const override; QVariant headerData(int section, Qt::Orientation orientation, int role) const override; private: void loadData(ArtPiece& piece, const QString& filename, const QString& assetFilename); QList m_artPieces; };