39 lines
1.1 KiB
C++
39 lines
1.1 KiB
C++
#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();
|
|
}
|