usersmodel.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef USERSMODEL_H
  2. #define USERSMODEL_H
  3. #include <QObject>
  4. #include <QVariantMap>
  5. #include "services/settingsservice.h"
  6. class UsersModel : public QObject
  7. {
  8. Q_OBJECT
  9. Q_PROPERTY(QString entity READ entity CONSTANT)
  10. Q_PROPERTY(QVariantList users READ users NOTIFY usersChanged)
  11. Q_PROPERTY(QString selectedUser READ selectedUser WRITE setSelectedUser NOTIFY selectedUserChanged)
  12. Q_PROPERTY(QString selectedUserName READ selectedUserName NOTIFY selectedUserNameChanged)
  13. public:
  14. explicit UsersModel(QObject *parent = nullptr);
  15. QString entity() const;
  16. QVariantList users() const;
  17. QString selectedUser() const;
  18. void setSelectedUser(const QString &newSelectedUser);
  19. QString selectedUserName() const;
  20. public slots:
  21. void created(const QVariant &data);
  22. void modified(const QVariant &data);
  23. void deleted(const QVariant &data);
  24. void received(const QVariant &data);
  25. void connected(const QVariant &data);
  26. void disconnected(const QVariant &data);
  27. signals:
  28. void usersChanged();
  29. void selectedUserChanged();
  30. void selectedUserNameChanged();
  31. private:
  32. QVariantMap m_users;
  33. QString m_selectedUser;
  34. SettingsService m_settings;
  35. };
  36. #endif // USERSMODEL_H