Skip to content

Commit

Permalink
Translatable Compatibility Status (shadps4-emu#2304)
Browse files Browse the repository at this point in the history
* qt_gui: Made compatibility status translatable

* Translations: Added English and Spanish translation for compatibility status
  • Loading branch information
pablodrake authored Feb 1, 2025
1 parent 84c27ee commit 83671eb
Show file tree
Hide file tree
Showing 5 changed files with 75 additions and 8 deletions.
19 changes: 19 additions & 0 deletions src/qt_gui/compatibility_info.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -260,3 +260,22 @@ void CompatibilityInfoClass::ExtractCompatibilityInfo(QByteArray response) {

return;
}

const QString CompatibilityInfoClass::GetCompatStatusString(const CompatibilityStatus status) {
switch (status) {
case CompatibilityStatus::Unknown:
return tr("Unknown");
case CompatibilityStatus::Nothing:
return tr("Nothing");
case CompatibilityStatus::Boots:
return tr("Boots");
case CompatibilityStatus::Menus:
return tr("Menus");
case CompatibilityStatus::Ingame:
return tr("Ingame");
case CompatibilityStatus::Playable:
return tr("Playable");
default:
return tr("Unknown");
}
}
8 changes: 1 addition & 7 deletions src/qt_gui/compatibility_info.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,13 +69,6 @@ class CompatibilityInfoClass : public QObject {
{QStringLiteral("os-windows"), OSType::Win32},
};

inline static const std::unordered_map<CompatibilityStatus, QString> CompatStatusToString = {
{CompatibilityStatus::Unknown, QStringLiteral("Unknown")},
{CompatibilityStatus::Nothing, QStringLiteral("Nothing")},
{CompatibilityStatus::Boots, QStringLiteral("Boots")},
{CompatibilityStatus::Menus, QStringLiteral("Menus")},
{CompatibilityStatus::Ingame, QStringLiteral("Ingame")},
{CompatibilityStatus::Playable, QStringLiteral("Playable")}};
inline static const std::unordered_map<OSType, QString> OSTypeToString = {
{OSType::Linux, QStringLiteral("os-linux")},
{OSType::macOS, QStringLiteral("os-macOS")},
Expand All @@ -87,6 +80,7 @@ class CompatibilityInfoClass : public QObject {
void UpdateCompatibilityDatabase(QWidget* parent = nullptr, bool forced = false);
bool LoadCompatibilityFile();
CompatibilityEntry GetCompatibilityInfo(const std::string& serial);
const QString GetCompatStatusString(const CompatibilityStatus status);
void ExtractCompatibilityInfo(QByteArray response);
static bool WaitForReply(QNetworkReply* reply);
QNetworkReply* FetchPage(int page_num);
Expand Down
2 changes: 1 addition & 1 deletion src/qt_gui/game_list_frame.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ void GameListFrame::SetCompatibilityItem(int row, int column, CompatibilityEntry
QLabel* dotLabel = new QLabel("", widget);
dotLabel->setPixmap(circle_pixmap);

QLabel* label = new QLabel(m_compat_info->CompatStatusToString.at(entry.status), widget);
QLabel* label = new QLabel(m_compat_info->GetCompatStatusString(entry.status), widget);

label->setStyleSheet("color: white; font-size: 16px; font-weight: bold;");

Expand Down
27 changes: 27 additions & 0 deletions src/qt_gui/translations/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1414,4 +1414,31 @@
<translation>TB</translation>
</message>
</context>
<context>
<name>CompatibilityInfoClass</name>
<message>
<source>Unknown</source>
<translation>Unknown</translation>
</message>
<message>
<source>Nothing</source>
<translation>Nothing</translation>
</message>
<message>
<source>Boots</source>
<translation>Boots</translation>
</message>
<message>
<source>Menus</source>
<translation>Menus</translation>
</message>
<message>
<source>Ingame</source>
<translation>Ingame</translation>
</message>
<message>
<source>Playable</source>
<translation>Playable</translation>
</message>
</context>
</TS>
27 changes: 27 additions & 0 deletions src/qt_gui/translations/es_ES.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1405,4 +1405,31 @@
<translation>TB</translation>
</message>
</context>
<context>
<name>CompatibilityInfoClass</name>
<message>
<source>Unknown</source>
<translation>Desconocido</translation>
</message>
<message>
<source>Nothing</source>
<translation>Nada</translation>
</message>
<message>
<source>Boots</source>
<translation>Inicia</translation>
</message>
<message>
<source>Menus</source>
<translation>Menús</translation>
</message>
<message>
<source>Ingame</source>
<translation>En el juego</translation>
</message>
<message>
<source>Playable</source>
<translation>Jugable</translation>
</message>
</context>
</TS>

0 comments on commit 83671eb

Please sign in to comment.