aboutsummaryrefslogtreecommitdiff
path: root/src/widgets/playerlistwidget.cpp
diff options
context:
space:
mode:
authorSalanto <62221668+Salanto@users.noreply.github.com>2024-08-25 16:31:16 +0200
committerGitHub <noreply@github.com>2024-08-25 16:31:16 +0200
commit552ccc38d6d5cc0c4956267616cbc3cf9c06d528 (patch)
tree0d65d52b40ff5f45c2a5f6748c3f90337f7d3694 /src/widgets/playerlistwidget.cpp
parent50204ec2e265373452c1b4ff4eb2b8dafbb516e8 (diff)
Update PlayerList to work more akin to WebAO (#1039)
* Add Playerlist label formatter to account for missing args * Make it less of a visual atrocity
Diffstat (limited to 'src/widgets/playerlistwidget.cpp')
-rw-r--r--src/widgets/playerlistwidget.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/widgets/playerlistwidget.cpp b/src/widgets/playerlistwidget.cpp
index c72b74ae..1dabe157 100644
--- a/src/widgets/playerlistwidget.cpp
+++ b/src/widgets/playerlistwidget.cpp
@@ -73,6 +73,10 @@ void PlayerListWidget::updatePlayer(const PlayerUpdate &update)
void PlayerListWidget::setAuthenticated(bool f_state)
{
m_is_authenticated = f_state;
+ for (const PlayerData &data : qAsConst(m_player_map))
+ {
+ updatePlayer(data.id, false);
+ }
}
void PlayerListWidget::onCustomContextMenuRequested(const QPoint &pos)
@@ -159,7 +163,7 @@ void PlayerListWidget::updatePlayer(int playerId, bool updateIcon)
return;
}
- item->setText(data.name.isEmpty() ? QObject::tr("Unnamed Player") : data.name);
+ item->setText(formatLabel(data));
if (data.character.isEmpty())
{
item->setToolTip(QString());
@@ -179,3 +183,12 @@ void PlayerListWidget::updatePlayer(int playerId, bool updateIcon)
item->setIcon(QIcon(ao_app->get_image_suffix(ao_app->get_character_path(data.character, "char_icon"), true)));
}
}
+
+QString PlayerListWidget::formatLabel(const PlayerData &data)
+{
+ if (m_is_authenticated)
+ {
+ return QString("%1 %2 %3").arg(data.character, data.character_name, data.name).simplified();
+ }
+ return QString("%1 %2").arg(data.character, data.character_name).simplified();
+}