-class PostCaptureModelItem : public QObject {
- Q_OBJECT
-
- Q_PROPERTY(QString type READ type NOTIFY typeChanged);
- Q_PROPERTY(QUrl url READ url NOTIFY urlChanged);
- Q_PROPERTY(QString created READ created NOTIFY createdChanged);
- Q_PROPERTY(QString title READ title NOTIFY titleChanged);
- Q_PROPERTY(QString fileName READ fileName NOTIFY fileNameChanged);
- Q_PROPERTY(QString mimeType READ mimeType NOTIFY mimeTypeChanged);
- Q_PROPERTY(bool available READ available NOTIFY availableChanged);
- Q_PROPERTY(QString lastModified READ lastModified NOTIFY lastModifiedChanged);
- Q_PROPERTY(unsigned trackerId READ trackerId CONSTANT);
- Q_PROPERTY(bool favorite READ favorite WRITE setFavorite NOTIFY favoriteChanged);
-
-public:
- PostCaptureModelItem(const QSparqlResultRow& row, QObject *parent = 0);
-
- ~PostCaptureModelItem() {
-
- }
-
- void update(PostCaptureModelItem *other);
-
- QString type() const;
- QUrl url() const;
- QString created() const;
- QString title() const;
- QString fileName() const;
- QString mimeType() const;
- bool available() const;
- QString lastModified() const;
- unsigned trackerId() const;
-
- void setFavorite(bool add);
- bool favorite() const;
-
-signals:
- void typeChanged();
- void urlChanged();
- void createdChanged();
- void titleChanged();
- void fileNameChanged();
- void mimeTypeChanged();
- void availableChanged();
- void lastModifiedChanged();
- void favoriteChanged();
-
-private:
- QString formatDateTime(const QDateTime& dt) const;
- QVariant value(const QString& id, const QVariant& def = QVariant()) const;
-
- QVariantMap m_data;
-};
-