44 lines
1.1 KiB
C++
44 lines
1.1 KiB
C++
#include "usersviewmodel.h"
|
|
|
|
#include "services/beerservice.h"
|
|
|
|
UsersViewModel::UsersViewModel(QObject *parent)
|
|
: QObject{parent}
|
|
{
|
|
connect(this, &UsersViewModel::selectedUserChanged, this, [this]() {
|
|
BeerService::instance()->connectSrv(m_selectedUser);
|
|
});
|
|
|
|
setSelectedUser(m_settings.selectedUserId());
|
|
|
|
connect(&m_usersModel, &AbstractModel::dataChanged, this, &UsersViewModel::usersChanged);
|
|
connect(&m_usersModel, &AbstractModel::dataChanged, this, &UsersViewModel::selectedUserNameChanged);
|
|
}
|
|
|
|
QVariantList UsersViewModel::users() const
|
|
{
|
|
return m_usersModel.users();
|
|
}
|
|
|
|
QString UsersViewModel::selectedUser() const
|
|
{
|
|
return m_selectedUser;
|
|
}
|
|
|
|
void UsersViewModel::setSelectedUser(const QString &newSelectedUser)
|
|
{
|
|
if (m_selectedUser == newSelectedUser) {
|
|
return;
|
|
}
|
|
|
|
m_selectedUser = newSelectedUser;
|
|
m_settings.setSelectedUserId(m_selectedUser);
|
|
emit selectedUserChanged();
|
|
emit selectedUserNameChanged();
|
|
}
|
|
|
|
QString UsersViewModel::selectedUserName() const
|
|
{
|
|
return m_usersModel.userName(m_selectedUser);
|
|
}
|