mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-21 00:09:19 +02:00
Merge branch 'master' into gfx-work
This commit is contained in:
427
translation.cpp
427
translation.cpp
@@ -14,11 +14,434 @@ http://mozilla.org/MPL/2.0/.
|
||||
#include "stdafx.h"
|
||||
#include "translation.h"
|
||||
|
||||
#include "Globals.h"
|
||||
|
||||
namespace locale {
|
||||
|
||||
void
|
||||
init() {
|
||||
// TODO: import localized strings from localization files
|
||||
std::unordered_map<std::string, std::vector<std::string>> stringmap;
|
||||
|
||||
stringmap.insert(
|
||||
{ "en",
|
||||
{
|
||||
"Driving Aid",
|
||||
"Throttle: %2d+%d %c%s",
|
||||
" Speed: %d km/h (limit %d km/h%s)%s",
|
||||
", new limit: %d km/h in %.1f km",
|
||||
" Grade: %.1f%%%%",
|
||||
"Brakes: %4.1f+%-2.0f%c%s",
|
||||
" Pressure: %.2f kPa (train pipe: %.2f kPa)",
|
||||
"!ALERTER! ",
|
||||
"!SHP!",
|
||||
" Loading/unloading in progress (%d s left)",
|
||||
" Another vehicle ahead (distance: %.1f m)",
|
||||
|
||||
"Timetable",
|
||||
"Time: %d:%02d:%02d",
|
||||
"(no timetable)",
|
||||
|
||||
"Transcripts",
|
||||
|
||||
"Simulation Paused",
|
||||
"Resume",
|
||||
"Quit",
|
||||
|
||||
"Name: %s%s\nLoad: %.0f %s\nStatus: %s%s\nCouplers:\n front: %s\n rear: %s",
|
||||
", owned by: ",
|
||||
"none",
|
||||
"Devices: %c%c%c%c%c%c%c%c%c%c%c%c%c%c%s%s\nPower transfers: %.0f@%.0f%s%s%s%.0f@%.0f",
|
||||
" radio: ",
|
||||
" oil pressure: ",
|
||||
"Controllers:\n master: %d(%d), secondary: %s\nEngine output: %.1f, current: %.0f\nRevolutions:\n engine: %.0f, motors: %.0f, ventilators: %.0f, fans: %.0f+%.0f",
|
||||
" (shunt mode)",
|
||||
"\nTemperatures:\n engine: %.2f, oil: %.2f, water: %.2f%c%.2f",
|
||||
"Brakes:\n train: %.2f, independent: %.2f, delay: %s, load flag: %d\nBrake cylinder pressures:\n train: %.2f, independent: %.2f, status: 0x%.2x\nPipe pressures:\n brake: %.2f (hat: %.2f), main: %.2f, control: %.2f\nTank pressures:\n auxiliary: %.2f, main: %.2f, control: %.2f",
|
||||
" pantograph: %.2f%cMT",
|
||||
"Forces:\n tractive: %.1f, brake: %.1f, friction: %.2f%s\nAcceleration:\n tangential: %.2f, normal: %.2f (path radius: %s)\nVelocity: %.2f, distance traveled: %.2f\nPosition: [%.2f, %.2f, %.2f]",
|
||||
|
||||
"expand",
|
||||
"Loading",
|
||||
"Loading scenery",
|
||||
"Quit simulation?",
|
||||
"Yes",
|
||||
"No",
|
||||
"General",
|
||||
"Debug mode",
|
||||
"Quit",
|
||||
"Tools",
|
||||
"Logging to log.txt",
|
||||
"Screenshot",
|
||||
"Windows"
|
||||
"Log",
|
||||
"Map",
|
||||
"Mode windows",
|
||||
|
||||
"master controller",
|
||||
"second controller",
|
||||
"shunt mode power",
|
||||
"reverser",
|
||||
"train brake",
|
||||
"independent brake",
|
||||
"manual brake",
|
||||
"emergency brake",
|
||||
"brake acting speed",
|
||||
"brake acting speed: cargo",
|
||||
"brake acting speed: rapid",
|
||||
"motor overload relay threshold",
|
||||
"water pump",
|
||||
"water pump breaker",
|
||||
"water heater",
|
||||
"water heater breaker",
|
||||
"water circuits link",
|
||||
"fuel pump",
|
||||
"oil pump",
|
||||
"line breaker",
|
||||
"line breaker",
|
||||
"alerter",
|
||||
"independent brake releaser",
|
||||
"sandbox",
|
||||
"wheelspin brake",
|
||||
"horn",
|
||||
"low tone horn",
|
||||
"high tone horn",
|
||||
"whistle",
|
||||
"motor overload relay reset",
|
||||
"converter overload relay reset",
|
||||
"motor connectors",
|
||||
"left door",
|
||||
"right door",
|
||||
"left door",
|
||||
"right door",
|
||||
"left door",
|
||||
"right door",
|
||||
"all doors",
|
||||
"departure signal",
|
||||
"upper headlight",
|
||||
"left headlight",
|
||||
"right headlight",
|
||||
"headlights dimmer",
|
||||
"left marker light",
|
||||
"right marker light",
|
||||
"light pattern",
|
||||
"rear upper headlight",
|
||||
"rear left headlight",
|
||||
"rear right headlight",
|
||||
"rear left marker light",
|
||||
"rear right marker light",
|
||||
"compressor",
|
||||
"local compressor",
|
||||
"converter",
|
||||
"local converter",
|
||||
"converter",
|
||||
"line breaker",
|
||||
"radio",
|
||||
"radio channel",
|
||||
"radio channel",
|
||||
"radio channel",
|
||||
"radiostop test",
|
||||
"radiostop",
|
||||
"pantograph A",
|
||||
"pantograph B",
|
||||
"pantograph A",
|
||||
"pantograph B",
|
||||
"all pantographs",
|
||||
"selected pantograph",
|
||||
"selected pantograph",
|
||||
"pantograph compressor",
|
||||
"pantograph 3 way valve",
|
||||
"heating",
|
||||
"braking indicator",
|
||||
"door locking",
|
||||
"current indicator source",
|
||||
"instrument light",
|
||||
"dashboard light",
|
||||
"timetable light",
|
||||
"interior light",
|
||||
"interior light dimmer",
|
||||
"battery",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part",
|
||||
"interactive part"
|
||||
}
|
||||
} );
|
||||
|
||||
stringmap.insert(
|
||||
{ "pl",
|
||||
{
|
||||
u8"Pomocnik",
|
||||
u8"Nastawnik: %2d+%d %c%s",
|
||||
u8" Prędkość: %d km/h (limit %d km/h%s)%s",
|
||||
u8", nowy limit: %d km/h za %.1f km",
|
||||
u8" Pochylenie: %.1f%%%%",
|
||||
u8"Hamulce: %4.1f+%-2.0f%c%s",
|
||||
u8" Ciśnienie: %.2f kPa (przewód główny: %.2f kPa)",
|
||||
u8"!CZUWAK! ",
|
||||
u8"!SHP!",
|
||||
u8" Wsiadanie/wysiadanie pasażerów (do zakończenia %d s)",
|
||||
u8" Inny pojazd na drodze (odległość: %.1f m)",
|
||||
|
||||
u8"Rozkład jazdy",
|
||||
u8"Godzina: %d:%02d:%02d",
|
||||
u8"(brak rozkładu)",
|
||||
|
||||
u8"Transkrypcje",
|
||||
|
||||
u8"Symulacja wstrzymana",
|
||||
u8"Wznów",
|
||||
u8"Zakończ",
|
||||
|
||||
u8"Nazwa: %s%s\nŁadunek: %.0f %s\nStatus: %s%s\nSprzęgi:\n przedni: %s\n tylny: %s",
|
||||
u8", wlaściciel: ",
|
||||
u8"wolny",
|
||||
u8"Urządzenia: %c%c%c%c%c%c%c%c%c%c%c%c%c%c%s%s\nPrzepływ prądu: %.0f@%.0f%s%s%s%.0f@%.0f",
|
||||
u8" radio: ",
|
||||
u8" cisń. oleju: ",
|
||||
u8"Nastawniki:\n glówny: %d(%d), dodatkowy: %s\nMoc silnika: %.1f, prąd silnika: %.0f\nObroty:\n silnik: %.0f, motory: %.0f, went.silnika: %.0f, went.chłodnicy: %.0f+%.0f",
|
||||
u8" (tryb manewrowy)",
|
||||
u8"\nTemperatury:\n silnik: %.2f, olej: %.2f, woda: %.2f%c%.2f",
|
||||
u8"Hamulce:\n zespolony: %.2f, pomocniczy: %.2f, nastawa: %s, ładunek: %d\nCiśnienie w cylindrach:\n zespolony: %.2f, pomocniczy: %.2f, status: 0x%.2x\nCiśnienia w przewodach:\n główny: %.2f (kapturek: %.2f), zasilający: %.2f, kontrolny: %.2f\nCiśnienia w zbiornikach:\n pomocniczy: %.2f, główny: %.2f, sterujący: %.2f",
|
||||
u8" pantograf: %.2f%cZG",
|
||||
u8"Siły:\n napędna: %.1f, hamowania: %.1f, tarcie: %.2f%s\nPrzyśpieszenia:\n styczne: %.2f, normalne: %.2f (promień: %s)\nPrędkość: %.2f, pokonana odleglość: %.2f\nPozycja: [%.2f, %.2f, %.2f]",
|
||||
|
||||
u8"rozszerz",
|
||||
u8"Ładowanie",
|
||||
u8"Wczytywanie scenerii",
|
||||
u8"Zakończyć symulację?",
|
||||
u8"Tak",
|
||||
u8"Nie",
|
||||
u8"Ogólne",
|
||||
u8"Tryb debug",
|
||||
u8"Wyjdź",
|
||||
u8"Narzędzia",
|
||||
u8"Logowanie do log.txt",
|
||||
u8"Zrzut ekranu",
|
||||
u8"Okna",
|
||||
u8"Log",
|
||||
u8"Mapa",
|
||||
u8"Okna trybu",
|
||||
|
||||
u8"nastawnik",
|
||||
u8"nastawnik dodatkowy",
|
||||
u8"sterowanie analogowe",
|
||||
u8"nastawnik jazdy",
|
||||
u8"hamulec zespolony",
|
||||
u8"hamulec pomocniczy",
|
||||
u8"hamulec ręczny",
|
||||
u8"hamulec bezpieczeństwa",
|
||||
u8"nastawa hamulca",
|
||||
u8"nastawa hamulca: towarowy",
|
||||
u8"nastawa hamulca: pośpieszny",
|
||||
u8"zakres prądu rozruchu",
|
||||
u8"pompa wody",
|
||||
u8"wyłącznik samoczynny pompy wody",
|
||||
u8"podgrzewacz wody",
|
||||
u8"wyłącznik samoczynny podgrzewacza wody",
|
||||
u8"zawór połaczenia obiegow wody",
|
||||
u8"pompa paliwa",
|
||||
u8"pompa oleju",
|
||||
u8"wyłącznik szybki",
|
||||
u8"wyłącznik szybki",
|
||||
u8"czuwak",
|
||||
u8"odluźniacz",
|
||||
u8"piasecznica",
|
||||
u8"hamulec przeciwpoślizgowy",
|
||||
u8"syrena",
|
||||
u8"syrena (ton niski)",
|
||||
u8"syrena (ton wysoki)",
|
||||
u8"gwizdawka",
|
||||
u8"przekaźnik nadmiarowy motorów trakcyjnych",
|
||||
u8"przekaźnik nadmiarowy przetwornicy",
|
||||
u8"styczniki liniowe",
|
||||
u8"drzwi lewe",
|
||||
u8"drzwi prawe",
|
||||
u8"drzwi lewe",
|
||||
u8"drzwi prawe",
|
||||
u8"drzwi lewe",
|
||||
u8"drzwi prawe",
|
||||
u8"drzwi",
|
||||
u8"sygnal odjazdu",
|
||||
u8"reflektor gorny",
|
||||
u8"reflektor lewy",
|
||||
u8"reflektor prawy",
|
||||
u8"przyciemnienie reflektórow",
|
||||
u8"sygnal lewy",
|
||||
u8"sygnal prawy",
|
||||
u8"programator świateł",
|
||||
u8"tylny reflektor górny",
|
||||
u8"tylny reflektor lewy",
|
||||
u8"tylny reflektor prawy",
|
||||
u8"tylny sygnal lewy",
|
||||
u8"tylny sygnal prawy",
|
||||
u8"sprężarka",
|
||||
u8"sprężarka lokalna",
|
||||
u8"przetwornica",
|
||||
u8"przetwornica lokalna",
|
||||
u8"przetwornica",
|
||||
u8"wyłącznik szybki",
|
||||
u8"radio",
|
||||
u8"kanał radia",
|
||||
u8"kanał radia",
|
||||
u8"kanał radia",
|
||||
u8"test radiostopu",
|
||||
u8"radiostop",
|
||||
u8"pantograf A",
|
||||
u8"pantograf B",
|
||||
u8"pantograf A",
|
||||
u8"pantograf B",
|
||||
u8"wszystkie pantografy",
|
||||
u8"wybrany pantograf",
|
||||
u8"wybrany pantograf",
|
||||
u8"sprężarka pantografow",
|
||||
u8"kurek trójdrogowy pantografow",
|
||||
u8"ogrzewanie pociągu",
|
||||
u8"sygnalizacja hamowania",
|
||||
u8"sygnalizacja blokady drzwi",
|
||||
u8"prądy drugiego członu",
|
||||
u8"oświetlenie przyrządow",
|
||||
u8"oświetlenie pulpitu",
|
||||
u8"oświetlenie rozkładu jazdy",
|
||||
u8"oświetlenie kabiny",
|
||||
u8"przyciemnienie oświetlenia kabiny",
|
||||
u8"bateria",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy",
|
||||
u8"element ruchomy"
|
||||
}
|
||||
} );
|
||||
|
||||
auto lookup { stringmap.find( Global.asLang ) };
|
||||
if( lookup == stringmap.end() ) {
|
||||
lookup = stringmap.find( "en" );
|
||||
}
|
||||
|
||||
locale::strings = lookup->second;
|
||||
|
||||
// prepare cab controls translation table
|
||||
{
|
||||
std::vector<std::string> cabcontrols = {
|
||||
"mainctrl:",
|
||||
"scndctrl:",
|
||||
"shuntmodepower:",
|
||||
"dirkey:",
|
||||
"brakectrl:",
|
||||
"localbrake:",
|
||||
"manualbrake:",
|
||||
"alarmchain:",
|
||||
"brakeprofile_sw:",
|
||||
"brakeprofileg_sw:",
|
||||
"brakeprofiler_sw:",
|
||||
"maxcurrent_sw:",
|
||||
"waterpump_sw:",
|
||||
"waterpumpbreaker_sw:",
|
||||
"waterheater_sw:",
|
||||
"waterheaterbreaker_sw:",
|
||||
"watercircuitslink_sw:",
|
||||
"fuelpump_sw:",
|
||||
"oilpump_sw:",
|
||||
"main_off_bt:",
|
||||
"main_on_bt:",
|
||||
"security_reset_bt:",
|
||||
"releaser_bt:",
|
||||
"sand_bt:",
|
||||
"antislip_bt:",
|
||||
"horn_bt:",
|
||||
"hornlow_bt:",
|
||||
"hornhigh_bt:",
|
||||
"whistle_bt:",
|
||||
"fuse_bt:",
|
||||
"converterfuse_bt:",
|
||||
"stlinoff_bt:",
|
||||
"door_left_sw:",
|
||||
"door_right_sw:",
|
||||
"doorlefton_sw:",
|
||||
"doorrighton_sw:",
|
||||
"doorleftoff_sw:",
|
||||
"doorrightoff_sw:",
|
||||
"dooralloff_sw:",
|
||||
"departure_signal_bt:",
|
||||
"upperlight_sw:",
|
||||
"leftlight_sw:",
|
||||
"rightlight_sw:",
|
||||
"dimheadlights_sw:",
|
||||
"leftend_sw:",
|
||||
"rightend_sw:",
|
||||
"lights_sw:",
|
||||
"rearupperlight_sw:",
|
||||
"rearleftlight_sw:",
|
||||
"rearrightlight_sw:",
|
||||
"rearleftend_sw:",
|
||||
"rearrightend_sw:",
|
||||
"compressor_sw:",
|
||||
"compressorlocal_sw:",
|
||||
"converter_sw:",
|
||||
"converterlocal_sw:",
|
||||
"converteroff_sw:",
|
||||
"main_sw:",
|
||||
"radio_sw:",
|
||||
"radiochannel_sw:",
|
||||
"radiochannelprev_sw:",
|
||||
"radiochannelnext_sw:",
|
||||
"radiotest_sw:",
|
||||
"radiostop_sw:",
|
||||
"pantfront_sw:",
|
||||
"pantrear_sw:",
|
||||
"pantfrontoff_sw:",
|
||||
"pantrearoff_sw:",
|
||||
"pantalloff_sw:",
|
||||
"pantselected_sw:",
|
||||
"pantselectedoff_sw:",
|
||||
"pantcompressor_sw:",
|
||||
"pantcompressorvalve_sw:",
|
||||
"trainheating_sw:",
|
||||
"signalling_sw:",
|
||||
"door_signalling_sw:",
|
||||
"nextcurrent_sw:",
|
||||
"instrumentlight_sw:",
|
||||
"dashboardlight_sw:",
|
||||
"timetablelight_sw:",
|
||||
"cablight_sw:",
|
||||
"cablightdim_sw:",
|
||||
"battery_sw:",
|
||||
"universal0:",
|
||||
"universal1:",
|
||||
"universal2:",
|
||||
"universal3:",
|
||||
"universal4:",
|
||||
"universal5:",
|
||||
"universal6:",
|
||||
"universal7:",
|
||||
"universal8:",
|
||||
"universal9:"
|
||||
};
|
||||
|
||||
std::size_t stringidx { string::cab_mainctrl };
|
||||
for( auto const &cabcontrol : cabcontrols ) {
|
||||
m_cabcontrols.insert( { cabcontrol, strings[ stringidx++ ] } );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
std::string
|
||||
label_cab_control( std::string const &Label ) {
|
||||
|
||||
if( Label.empty() ) { return ""; }
|
||||
|
||||
auto const lookup = m_cabcontrols.find( Label );
|
||||
return (
|
||||
lookup != m_cabcontrols.end() ?
|
||||
@@ -26,6 +449,10 @@ label_cab_control( std::string const &Label ) {
|
||||
"" );
|
||||
}
|
||||
|
||||
std::vector<std::string> strings;
|
||||
|
||||
std::unordered_map<std::string, std::string> m_cabcontrols;
|
||||
|
||||
} // namespace locale
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user