summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar liamwhite2024-02-03 11:10:00 -0500
committerGravatar GitHub2024-02-03 11:10:00 -0500
commita3c8bb251d07f69e62b01914c5e0df88d2dad93c (patch)
treeef2ffc58a7059550d13d237de86207992833808d /src
parentMerge pull request #12851 from Calinou/multiplayer-persist-filters (diff)
parentColor player counts in the multiplayer public lobby list (diff)
downloadyuzu-a3c8bb251d07f69e62b01914c5e0df88d2dad93c.tar.gz
yuzu-a3c8bb251d07f69e62b01914c5e0df88d2dad93c.tar.xz
yuzu-a3c8bb251d07f69e62b01914c5e0df88d2dad93c.zip
Merge pull request #12852 from Calinou/multiplayer-color-player-counts
Color player counts in the multiplayer public lobby list
Diffstat (limited to '')
-rw-r--r--src/yuzu/multiplayer/lobby_p.h25
1 files changed, 21 insertions, 4 deletions
diff --git a/src/yuzu/multiplayer/lobby_p.h b/src/yuzu/multiplayer/lobby_p.h
index 068c95aca..398833e7a 100644
--- a/src/yuzu/multiplayer/lobby_p.h
+++ b/src/yuzu/multiplayer/lobby_p.h
@@ -193,12 +193,29 @@ public:
193 } 193 }
194 194
195 QVariant data(int role) const override { 195 QVariant data(int role) const override {
196 if (role != Qt::DisplayRole) { 196 switch (role) {
197 case Qt::DisplayRole: {
198 auto members = data(MemberListRole).toList();
199 return QStringLiteral("%1 / %2 ")
200 .arg(QString::number(members.size()), data(MaxPlayerRole).toString());
201 }
202 case Qt::ForegroundRole: {
203 auto members = data(MemberListRole).toList();
204 auto max_players = data(MaxPlayerRole).toInt();
205 if (members.size() >= max_players) {
206 return QBrush(QColor(255, 48, 32));
207 } else if (members.size() == (max_players - 1)) {
208 return QBrush(QColor(255, 140, 32));
209 } else if (members.size() == 0) {
210 return QBrush(QColor(128, 128, 128));
211 }
212 // FIXME: How to return a value that tells Qt not to modify the
213 // text color from the default (as if Qt::ForegroundRole wasn't overridden)?
214 return QBrush(nullptr);
215 }
216 default:
197 return LobbyItem::data(role); 217 return LobbyItem::data(role);
198 } 218 }
199 auto members = data(MemberListRole).toList();
200 return QStringLiteral("%1 / %2 ")
201 .arg(QString::number(members.size()), data(MaxPlayerRole).toString());
202 } 219 }
203 220
204 bool operator<(const QStandardItem& other) const override { 221 bool operator<(const QStandardItem& other) const override {