abstractmodel.h 633 B

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef ABSTRACTMODEL_H
  2. #define ABSTRACTMODEL_H
  3. #include <QObject>
  4. #include <QVariantMap>
  5. class BeerService;
  6. class AbstractModel : public QObject
  7. {
  8. Q_OBJECT
  9. Q_PROPERTY(QString entity READ entity CONSTANT)
  10. public:
  11. explicit AbstractModel(QObject *parent = nullptr);
  12. virtual QString entity() const = 0;
  13. public slots:
  14. void created(const QVariant &data);
  15. void modified(const QVariant &data);
  16. void deleted(const QVariant &data);
  17. void received(const QVariant &data);
  18. signals:
  19. void dataChanged();
  20. protected:
  21. BeerService *service() const;
  22. QVariantMap m_data;
  23. };
  24. #endif // ABSTRACTMODEL_H