Skip to content

Commit 11bcbca

Browse files
committed
clean up UserModel::data
Signed-off-by: Matthieu Gallien <[email protected]>
1 parent 288d0d1 commit 11bcbca

File tree

1 file changed

+37
-26
lines changed

1 file changed

+37
-26
lines changed

src/gui/tray/usermodel.cpp

+37-26
Original file line numberDiff line numberDiff line change
@@ -956,34 +956,45 @@ int UserModel::rowCount(const QModelIndex &parent) const
956956

957957
QVariant UserModel::data(const QModelIndex &index, int role) const
958958
{
959-
if (index.row() < 0 || index.row() >= _users.count()) {
960-
return QVariant();
959+
auto result = QVariant{};
960+
switch (role)
961+
{
962+
case NameRole:
963+
result = _users[index.row()]->name();
964+
break;
965+
case ServerRole:
966+
result = _users[index.row()]->server();
967+
break;
968+
case ServerHasUserStatusRole:
969+
result = _users[index.row()]->serverHasUserStatus();
970+
break;
971+
case StatusIconRole:
972+
result = _users[index.row()]->statusIcon();
973+
break;
974+
case StatusEmojiRole:
975+
result = _users[index.row()]->statusEmoji();
976+
break;
977+
case StatusMessageRole:
978+
result = _users[index.row()]->statusMessage();
979+
break;
980+
case DesktopNotificationsAllowedRole:
981+
result = _users[index.row()]->isDesktopNotificationsAllowed();
982+
break;
983+
case AvatarRole:
984+
result = _users[index.row()]->avatarUrl();
985+
break;
986+
case IsCurrentUserRole:
987+
result = _users[index.row()]->isCurrentUser();
988+
break;
989+
case IsConnectedRole:
990+
result = _users[index.row()]->isConnected();
991+
break;
992+
case IdRole:
993+
result = index.row();
994+
break;
961995
}
962996

963-
if (role == NameRole) {
964-
return _users[index.row()]->name();
965-
} else if (role == ServerRole) {
966-
return _users[index.row()]->server();
967-
} else if (role == ServerHasUserStatusRole) {
968-
return _users[index.row()]->serverHasUserStatus();
969-
} else if (role == StatusIconRole) {
970-
return _users[index.row()]->statusIcon();
971-
} else if (role == StatusEmojiRole) {
972-
return _users[index.row()]->statusEmoji();
973-
} else if (role == StatusMessageRole) {
974-
return _users[index.row()]->statusMessage();
975-
} else if (role == DesktopNotificationsAllowedRole) {
976-
return _users[index.row()]->isDesktopNotificationsAllowed();
977-
} else if (role == AvatarRole) {
978-
return _users[index.row()]->avatarUrl();
979-
} else if (role == IsCurrentUserRole) {
980-
return _users[index.row()]->isCurrentUser();
981-
} else if (role == IsConnectedRole) {
982-
return _users[index.row()]->isConnected();
983-
} else if (role == IdRole) {
984-
return index.row();
985-
}
986-
return QVariant();
997+
return result;
987998
}
988999

9891000
QHash<int, QByteArray> UserModel::roleNames() const

0 commit comments

Comments
 (0)