Fix server columns being totally invisible

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
This commit is contained in:
TheKodeToad
2025-12-12 12:07:19 +00:00
parent c10681831c
commit 7baac92f56

View File

@@ -312,37 +312,33 @@ class ServersModel : public QAbstractListModel {
switch (role) { switch (role) {
case Qt::DecorationRole: { case Qt::DecorationRole: {
switch (column) { if (column == 0) {
case 0: { auto& bytes = m_servers[row].m_icon;
auto& bytes = m_servers[row].m_icon; if (bytes.size()) {
if (bytes.size()) { QPixmap px;
QPixmap px; if (px.loadFromData(bytes))
if (px.loadFromData(bytes)) return QIcon(px);
return QIcon(px);
}
return QIcon::fromTheme("unknown_server");
} }
return QIcon::fromTheme("unknown_server");
} else {
return QVariant();
}
}
case Qt::DisplayRole:
switch (column) {
case 0:
return m_servers[row].m_name;
case 1: case 1:
return m_servers[row].m_address; return m_servers[row].m_address;
default: case 2:
return QVariant();
}
case 2:
if (role == Qt::DisplayRole) {
if (m_servers[row].m_currentPlayers) { if (m_servers[row].m_currentPlayers) {
return *m_servers[row].m_currentPlayers; return *m_servers[row].m_currentPlayers;
} else { } else {
return "..."; return "...";
} }
} else { default:
return QVariant(); return QVariant();
} }
}
case Qt::DisplayRole:
if (column == 0)
return m_servers[row].m_name;
else
return QVariant();
case ServerPtrRole: case ServerPtrRole:
if (column == 0) if (column == 0)
return QVariant::fromValue<void*>((void*)&m_servers[row]); return QVariant::fromValue<void*>((void*)&m_servers[row]);