1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-28 08:48:48 +02:00

Fix resolution selection menu texts

This commit is contained in:
Ivan Savenko 2023-03-07 15:27:54 +02:00
parent 9e39e8ef11
commit d7e914d0eb
4 changed files with 19 additions and 9 deletions

View File

@ -25,7 +25,7 @@
"vcmi.systemOptions.fullscreenButton.hover" : "Vollbild",
"vcmi.systemOptions.fullscreenButton.help" : "{Fullscreen}\n\n Wenn ausgewählt wird VCMI im Vollbildmodus laufen, ansonsten im Fenstermodus",
"vcmi.systemOptions.resolutionButton.hover" : "Auflösung",
"vcmi.systemOptions.resolutionButton.hover" : "Auflösung: %wx%h",
"vcmi.systemOptions.resolutionButton.help" : "{Select resolution}\n\n Ändert die Spielauflösung. Spielneustart ist erforderlich um neue Auflösung zu übernehmen.",
"vcmi.systemOptions.resolutionMenu.hover" : "Wähle Auflösung",
"vcmi.systemOptions.resolutionMenu.help" : "Ändere die Spielauflösung.",

View File

@ -27,7 +27,7 @@
"vcmi.systemOptions.fullscreenButton.hover" : "Pełny ekran",
"vcmi.systemOptions.fullscreenButton.help" : "{Fullscreen}\n\n Po wybraniu VCMI uruchomi się w trybie pełnoekranowym, w przeciwnym wypadku uruchomi się w oknie",
"vcmi.systemOptions.resolutionButton.hover" : "Rozdzielczość",
"vcmi.systemOptions.resolutionButton.hover" : "Rozdzielczość: %wx%h",
"vcmi.systemOptions.resolutionButton.help" : "{Select resolution}\n\n Zmień rozdzielczość ekranu w grze. Restart gry jest wymagany, by zmiany zostały uwzględnione.",
"vcmi.systemOptions.resolutionMenu.hover" : "Wybierz rozdzielczość",
"vcmi.systemOptions.resolutionMenu.help" : "Zmień rozdzielczość ekranu w grze.",

View File

@ -42,7 +42,7 @@
"vcmi.systemOptions.fullscreenButton.help" : "{Повноекранний режим}\n\n Якщо обрано, VCMI буде запускатися в режимі на весь екран, інакше — віконний режим",
"vcmi.systemOptions.resolutionButton.hover" : "Роздільна здатність: %wx%h",
"vcmi.systemOptions.resolutionButton.help" : "{Роздільна здатність}\n\n Зміна розширення екрану в грі. Аби зміни набули чинності необхідно перезавантажити гру.",
"vcmi.systemOptions.resolutionMenu.hover" : "Обрати роздільну здатність екрану",
"vcmi.systemOptions.resolutionMenu.hover" : "Обрати роздільну здатність",
"vcmi.systemOptions.resolutionMenu.help" : "Змінити роздільну здатність екрану в грі.",
"vcmi.systemOptions.fullscreenFailed" : "{Повноекранний режим}\n\n Не вдалося перейти в повноекранний режим! Поточна роздільна здатність не підтримується дисплеєм!",
"vcmi.systemOptions.framerateButton.hover" : "Лічильник кадрів",

View File

@ -37,9 +37,19 @@ static void setBoolSetting(std::string group, std::string field, bool value)
entry->Bool() = value;
}
static std::string resolutionToString(int w, int h)
static std::string resolutionToEntryString( int w, int h)
{
auto string = CGI->generaltexth->translate("vcmi.systemOptions.resolutionButton.hover");
std::string string = "%wx%h";
boost::replace_all(string, "%w", std::to_string(w));
boost::replace_all(string, "%h", std::to_string(h));
return string;
}
static std::string resolutionToLabelString( int w, int h)
{
std::string string = CGI->generaltexth->translate("vcmi.systemOptions.resolutionButton.hover");
boost::replace_all(string, "%w", std::to_string(w));
boost::replace_all(string, "%h", std::to_string(h));
@ -106,7 +116,7 @@ GeneralOptionsTab::GeneralOptionsTab()
std::shared_ptr<CLabel> resolutionLabel = widget<CLabel>("resolutionLabel");
const auto & currentResolution = settings["video"]["screenRes"];
resolutionLabel->setText(resolutionToString(currentResolution["width"].Integer(), currentResolution["height"].Integer()));
resolutionLabel->setText(resolutionToLabelString(currentResolution["width"].Integer(), currentResolution["height"].Integer()));
std::shared_ptr<CToggleButton> spellbookAnimationCheckbox = widget<CToggleButton>("spellbookAnimationCheckbox");
spellbookAnimationCheckbox->setSelected(settings["video"]["spellbookAnimation"].Bool());
@ -159,7 +169,7 @@ void GeneralOptionsTab::selectGameResolution()
size_t i = 0;
for(const auto & it : selectableResolutions)
{
auto resolutionStr = resolutionToString(it.x, it.y);
auto resolutionStr = resolutionToEntryString(it.x, it.y);
if(widget<CLabel>("resolutionLabel")->getText() == resolutionStr)
currentResolutionIndex = i;
@ -189,7 +199,7 @@ void GeneralOptionsTab::setGameResolution(int index)
gameRes["width"].Float() = resolution.x;
gameRes["height"].Float() = resolution.y;
widget<CLabel>("resolutionLabel")->setText(resolutionToString(resolution.x, resolution.y));
widget<CLabel>("resolutionLabel")->setText(resolutionToLabelString(resolution.x, resolution.y));
}
void GeneralOptionsTab::setFullscreenMode(bool on)
@ -218,7 +228,7 @@ void GeneralOptionsTab::setFullscreenMode(bool on)
gameRes["width"].Float() = currentResolution.x;
gameRes["height"].Float() = currentResolution.y;
widget<CLabel>("resolutionLabel")->setText(resolutionToString(currentResolution.x, currentResolution.y));
widget<CLabel>("resolutionLabel")->setText(resolutionToLabelString(currentResolution.x, currentResolution.y));
}
}