Move Windows font overrides away from translations

Determine which font to use with a dedicated function instead
This commit is contained in:
Alexander Babikov
2024-03-20 16:48:09 +05:00
parent 8e06b5449f
commit ae7d4454cb
27 changed files with 24 additions and 144 deletions

View File

@@ -625,12 +625,6 @@ msgstr "Dispositiu ISABugger"
msgid "POST card"
msgstr "Targeta POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Zařízení ISABugger"
msgid "POST card"
msgstr "Karta pro kódy POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger-Gerät"
msgid "POST card"
msgstr "POST-Code-Karte"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger device"
msgid "POST card"
msgstr "POST card"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger device"
msgid "POST card"
msgstr "POST card"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Dispositivo ISABugger"
msgid "POST card"
msgstr "Tarjeta POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger-laite"
msgid "POST card"
msgstr "POST-kortti"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Dispositif ISABugger"
msgid "POST card"
msgstr "Carte POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Uređaj ISABugger"
msgid "POST card"
msgstr "Kartica POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger eszköz"
msgid "POST card"
msgstr "POST kártya"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Dispositivo ISABugger"
msgid "POST card"
msgstr "Scheda POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABuggerデバイス"
msgid "POST card"
msgstr "POSTカード"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Meiryo UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger 장치"
msgid "POST card"
msgstr "POST 카드"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Malgun Gothic"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Urządzenie ISABugger"
msgid "POST card"
msgstr "Karta POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Dispositivo ISABugger"
msgid "POST card"
msgstr "Placa de diagnóstico"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Dispositivo ISABugger"
msgid "POST card"
msgstr "Placa POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -712,12 +712,6 @@ msgstr "Карта POST"
msgid "86Box Unit Tester"
msgstr "Модульный Тестер 86Box"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Zariadenie ISABugger"
msgid "POST card"
msgstr "Karta pre kódy POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Naprava ISABugger"
msgid "POST card"
msgstr "Kartica POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger cihazı"
msgid "POST card"
msgstr "POST kartı"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "Пристрій ISABugger"
msgid "POST card"
msgstr "Карта POST"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Segoe UI"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger 设备"
msgid "POST card"
msgstr "自检 (POST) 卡"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Microsoft YaHei"
msgid "86Box"
msgstr "86Box"

View File

@@ -625,12 +625,6 @@ msgstr "ISABugger 裝置"
msgid "POST card"
msgstr "自檢 (POST) 卡"
msgid "FONT_SIZE"
msgstr "9"
msgid "FONT_NAME"
msgstr "Microsoft JhengHei"
msgid "86Box"
msgstr "86Box"

View File

@@ -191,9 +191,7 @@ main(int argc, char *argv[])
fprintf(stderr, "Qt: version %s, platform \"%s\"\n", qVersion(), QApplication::platformName().toUtf8().data());
ProgSettings::loadTranslators(&app);
#ifdef Q_OS_WINDOWS
auto font_name = QObject::tr("FONT_NAME");
auto font_size = QObject::tr("FONT_SIZE");
QApplication::setFont(QFont(font_name, font_size.toInt()));
QApplication::setFont(QFont(ProgSettings::getFontName(lang_id), 9));
SetCurrentProcessExplicitAppUserModelID(L"86Box.86Box");
#endif

View File

@@ -1919,9 +1919,7 @@ MainWindow::changeEvent(QEvent *event)
{
#ifdef Q_OS_WINDOWS
if (event->type() == QEvent::LanguageChange) {
auto font_name = tr("FONT_NAME");
auto font_size = tr("FONT_SIZE");
QApplication::setFont(QFont(font_name, font_size.toInt()));
QApplication::setFont(QFont(ProgSettings::getFontName(lang_id), 9));
}
#endif
QWidget::changeEvent(event);

View File

@@ -153,6 +153,25 @@ ProgSettings::on_pushButton_released()
ui->comboBox->setCurrentIndex(0);
}
#ifdef Q_OS_WINDOWS
/* Return the standard font name on Windows, which is overridden per-language
to prevent CJK fonts with embedded bitmaps being chosen as a fallback. */
QString
ProgSettings::getFontName(uint32_t lcid)
{
if (lcid == 0x0804) /* zh-CN */
return "Microsoft YaHei";
else if (lcid == 0x0404) /* zh-TW */
return "Microsoft JhengHei";
else if (lcid == 0x0411) /* ja-JP */
return "Meiryo UI";
else if (lcid == 0x0412) /* ko-KR */
return "Malgun Gothic";
else
return "Segoe UI";
}
#endif
void
ProgSettings::loadTranslators(QObject *parent)
{

View File

@@ -16,6 +16,9 @@ public:
~ProgSettings();
static QString getIconSetPath();
static QIcon loadIcon(QString file);
#ifdef Q_OS_WINDOWS
static QString getFontName(uint32_t lcid);
#endif
static void loadTranslators(QObject *parent = nullptr);
static void reloadStrings();
class CustomTranslator : public QTranslator {