#include "usersviewmodel.h" #include "services/settingsservice.h" UsersViewModel::UsersViewModel(QObject *parent) : QObject{parent} { connect(&m_usersModel, &BaseModel::dataChanged, this, &UsersViewModel::usersChanged); connect(&m_usersModel, &BaseModel::dataChanged, this, &UsersViewModel::selectedUserNameChanged); connect(settings(), &SettingsService::selectedUserIdChanged, this, &UsersViewModel::selectedUserChanged); connect(settings(), &SettingsService::selectedUserIdChanged, this, &UsersViewModel::selectedUserNameChanged); } QVariantList UsersViewModel::users() const { return m_usersModel.users(); } QString UsersViewModel::selectedUser() const { return settings()->selectedUserId(); } void UsersViewModel::setSelectedUser(const QString &newSelectedUser) { settings()->setSelectedUserId(newSelectedUser); } QString UsersViewModel::selectedUserName() const { return m_usersModel.itemProperty(selectedUser(), "name").toString(); } SettingsService *UsersViewModel::settings() const { return SettingsService::instance(); }