| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- #ifndef BASEMODEL_H
- #define BASEMODEL_H
- #include <QObject>
- #include <QVariantMap>
- class BeerService;
- class BaseModel : public QObject
- {
- Q_OBJECT
- Q_PROPERTY(QString entity READ entity CONSTANT)
- public:
- explicit BaseModel(const QString &entity, QObject *parent = nullptr);
- virtual ~BaseModel();
- QString entity() const;
- QVariantList items() const;
- QVariantMap item(const QString &itemId) const;
- QVariant itemProperty(const QString &itemId, const QString &propertyName, const QVariant &def = QVariant{}) const;
- void addItem(const QVariantMap &item) const;
- void deleteItem(const QString &itemId) const;
- void modifyItem(const QString &itemId, const QVariantMap &properties) const;
- public slots:
- void created(const QVariant &data);
- void modified(const QVariant &data);
- void deleted(const QVariant &data);
- void received(const QVariant &data);
- signals:
- void dataChanged();
- private:
- BeerService *service() const;
- QVariantMap m_data;
- QString m_entity;
- };
- #endif // BASEMODEL_H
|