@@ -3,6 +3,7 @@ fn main() {
|
||||
println!("cargo::rerun-if-changed=retroachievements");
|
||||
println!("cargo::rerun-if-changed=src/compat");
|
||||
println!("cargo::rerun-if-changed=data/translations");
|
||||
println!("cargo::rerun-if-changed=data/ui");
|
||||
|
||||
#[cfg(feature = "gui")]
|
||||
{
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gopher64\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: 2026-05-11 12:00+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: German\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr "Spenden (über GitHub)"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr "Lokales Spiel"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr "Controller-Konfiguration"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr "Netplay"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr "Cheats"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr "RetroAchievements"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr "Über"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr "Fehler"
|
||||
@@ -107,45 +107,40 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr "Keine Cheats verfügbar"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr "Aktiviert"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr "Profil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr "Controller-Konfiguration"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr "Eingabeprofil konfigurieren"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgstr "Port"
|
||||
msgid "Controller Settings"
|
||||
msgstr "Controller-Einstellungen"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr "Aktiviert"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "VRU emulieren"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr "Profil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgstr "Controller"
|
||||
msgid "Controller Assignment"
|
||||
msgstr "Controller-Zuweisung"
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
msgctxt "InputProfileDialog"
|
||||
@@ -486,62 +481,75 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr "Unterstützte Spiele anzeigen"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr "Auflösung:"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr "SSAA-Herunterskalierung"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr "Pixelgenaue Skalierung"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr "Vollbild"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr "16:9 (gestreckt)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr "VSync"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr "CRT-Shader anwenden"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr "N64-CPU übertakten (kann Fehler verursachen)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr "Expansion Pak deaktivieren"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr "UNFLoader emulieren"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "VRU emulieren"
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
msgstr "Was möchten Sie sagen?"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Port"
|
||||
#~ msgstr "Port"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Controller"
|
||||
#~ msgstr "Controller"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gopher64\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: 2026-05-11 12:00+0000\n"
|
||||
"Last-Translator: Gemini\n"
|
||||
"Language-Team: Spanish (Spain)\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr "Donar (a través de GitHub)"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr "Juego local"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr "Config. del mando"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr "Netplay"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr "Trucos"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr "RetroAchievements"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr "Ajustes"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr "Acerca de"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr "Error"
|
||||
@@ -107,45 +107,40 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr "No hay trucos disponibles"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr "Activado"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr "Perfil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr "Configuración del mando"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr "Configurar perfil de entrada"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgstr "Puerto"
|
||||
msgid "Controller Settings"
|
||||
msgstr "Ajustes del mando"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr "Activado"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Emular VRU"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr "Perfil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgstr "Mando"
|
||||
msgid "Controller Assignment"
|
||||
msgstr "Asignación del mando"
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
msgctxt "InputProfileDialog"
|
||||
@@ -485,62 +480,75 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr "Ver juegos compatibles"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr "Ajustes"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr "Resolución:"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr "Reducción de escala SSAA"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr "Escalado por enteros"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr "Pantalla completa"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr "Pantalla ancha (estirado)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr "Sincronización vertical (VSync)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr "Aplicar sombreador CRT"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr "Overclock CPU N64 (puede causar errores)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr "Desactivar Expansion Pak"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr "Emular UNFLoader"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Emular VRU"
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
msgstr "¿Qué te gustaría decir?"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Port"
|
||||
#~ msgstr "Puerto"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Controller"
|
||||
#~ msgstr "Mando"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gopher64\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: 2026-05-11 12:00+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: French (France)\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr "Faire un don (via GitHub)"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr "Jeu local"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr "Configuration manette"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr "Netplay"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr "Triche"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr "RetroAchievements"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr "Paramètres"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr "À propos"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr "Erreur"
|
||||
@@ -107,45 +107,40 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr "Aucune triche disponible"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr "Activé"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr "Profil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr "Configuration de la manette"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr "Configurer le profil d'entrée"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgstr "Port"
|
||||
msgid "Controller Settings"
|
||||
msgstr "Paramètres de la manette"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr "Activé"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Émuler le VRU"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr "Profil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgstr "Manette"
|
||||
msgid "Controller Assignment"
|
||||
msgstr "Attribution de la manette"
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
msgctxt "InputProfileDialog"
|
||||
@@ -488,62 +483,75 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr "Voir les jeux pris en charge"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr "Paramètres"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr "Résolution :"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr "Réduction SSAA"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr "Mise à l'échelle par entiers"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr "Plein écran"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr "Écran large (étiré)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr "Synchro verticale"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr "Appliquer le filtre CRT"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr "Surcharger le CPU N64 (risque de bugs)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr "Désactiver l'Expansion Pak"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr "Émuler UNFLoader"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Émuler le VRU"
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
msgstr "Que souhaitez-vous dire ?"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Port"
|
||||
#~ msgstr "Port"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Controller"
|
||||
#~ msgstr "Manette"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr ""
|
||||
@@ -107,44 +107,39 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgid "Controller Settings"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgid "Controller Assignment"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
@@ -483,61 +478,66 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gopher64\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: 2026-05-11 12:00+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Japanese\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr "GitHubで寄付"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr "ローカルゲーム"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr "コントローラー設定"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr "ネットプレイ"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr "チート"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr "RetroAchievements"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr "設定"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr "バージョン情報"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr "エラー"
|
||||
@@ -107,45 +107,40 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr "利用できるチートはありません"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr "有効"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr "プロファイル"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr "コントローラー設定"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr "入力プロファイルを設定"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgstr "ポート"
|
||||
msgid "Controller Settings"
|
||||
msgstr "コントローラー詳細設定"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr "有効"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "VRUをエミュレート"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr "プロファイル"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgstr "コントローラー"
|
||||
msgid "Controller Assignment"
|
||||
msgstr "コントローラー割り当て"
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
msgctxt "InputProfileDialog"
|
||||
@@ -485,62 +480,75 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr "対応ゲームを表示"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr "設定"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr "解像度:"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr "SSAAダウンスケール"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr "整数倍スケーリング"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr "全画面表示"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr "ワイド画面(伸ばす)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr "垂直同期(VSync)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr "CRTシェーダーを適用"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr "N64のCPUをオーバークロック(不具合の原因になることがあります)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr "拡張パックを無効にする"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr "UNFLoaderをエミュレート"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "VRUをエミュレート"
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
msgstr "何と言いますか?"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Port"
|
||||
#~ msgstr "ポート"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Controller"
|
||||
#~ msgstr "コントローラー"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gopher64\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: 2026-05-11 12:00+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Dutch (Netherlands)\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr "Doneren (via GitHub)"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr "Lokaal spel"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr "Controllerconfiguratie"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr "Netplay"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr "Cheats"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr "RetroAchievements"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr "Instellingen"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr "Over"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr "Fout"
|
||||
@@ -107,45 +107,40 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr "Geen cheats beschikbaar"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr "Ingeschakeld"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr "Profiel"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr "Controllerconfiguratie"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr "Invoerprofiel configureren"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgstr "Poort"
|
||||
msgid "Controller Settings"
|
||||
msgstr "Controllerinstellingen"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr "Ingeschakeld"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "VRU emuleren"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr "Profiel"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgstr "Controller"
|
||||
msgid "Controller Assignment"
|
||||
msgstr "Controllertoewijzing"
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
msgctxt "InputProfileDialog"
|
||||
@@ -486,62 +481,75 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr "Ondersteunde spellen bekijken"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr "Instellingen"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr "Resolutie:"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr "SSAA-downscaling"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr "Schalen in hele getallen"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr "Volledig scherm"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr "Breedbeeld (uitgerekt)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr "VSync"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr "CRT-shader toepassen"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr "N64-CPU overklokken (kan bugs veroorzaken)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr "Expansion Pak uitschakelen"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr "UNFLoader emuleren"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "VRU emuleren"
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
msgstr "Wat wil je zeggen?"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Port"
|
||||
#~ msgstr "Poort"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Controller"
|
||||
#~ msgstr "Controller"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: 2026-05-11 18:11-3000\n"
|
||||
"Last-Translator: EDUARDO CARVALHO <eduardotcarvalho@gmail.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr "Doações (via GitHub)"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr "Jogo Local"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr "Configurar Controle"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr "Netplay"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr "Trapaças"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr "RetroAchievements"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr "Configurações"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr "Sobre"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr "Erro"
|
||||
@@ -107,45 +107,40 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr "Sem trapaças disponíveis"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr "Habilitado"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr "Perfil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr "Configurar Controles"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr "Configurar Perfil de Controle"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgstr "Entrada"
|
||||
msgid "Controller Settings"
|
||||
msgstr "Configurações do controle"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr "Habilitado"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Emular VRU"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr "Perfil"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgstr "Controle"
|
||||
msgid "Controller Assignment"
|
||||
msgstr "Atribuição do controle"
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
msgctxt "InputProfileDialog"
|
||||
@@ -487,62 +482,75 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr "Ver Jogos com Suporte"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr "Configurações"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr "Resolução:"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr "Redução de SSAA"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr "Proporção Íntegra"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr "Tela Cheia"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr "Widescreen (esticar)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr "VSync"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr "Aplicar filtro de CRT"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr "Overclock da CPU do N64 (pode causar bugs)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr "Desabilitar Expansion Pak"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr "Emular UNFLoader"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Emular VRU"
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
msgstr "O que você quer falar?"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Port"
|
||||
#~ msgstr "Entrada"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Controller"
|
||||
#~ msgstr "Controle"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gopher64\n"
|
||||
"POT-Creation-Date: 2026-05-14 14:53+0000\n"
|
||||
"POT-Creation-Date: 2026-05-19 06:44+0000\n"
|
||||
"PO-Revision-Date: 2026-05-11 12:00+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Russian\n"
|
||||
@@ -47,42 +47,42 @@ msgctxt "About"
|
||||
msgid "Donate (via GitHub)"
|
||||
msgstr "Пожертвовать (через GitHub)"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:95
|
||||
#: src/ui/gui/appwindow.slint:103
|
||||
msgctxt "Menu"
|
||||
msgid "Local Game"
|
||||
msgstr "Локальная игра"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:96
|
||||
#: src/ui/gui/appwindow.slint:107
|
||||
msgctxt "Menu"
|
||||
msgid "Controller Config"
|
||||
msgstr "Настройка контроллера"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:97
|
||||
#: src/ui/gui/appwindow.slint:111
|
||||
msgctxt "Menu"
|
||||
msgid "Netplay"
|
||||
msgstr "Сетевая игра"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:98
|
||||
#: src/ui/gui/appwindow.slint:115
|
||||
msgctxt "Menu"
|
||||
msgid "Cheats"
|
||||
msgstr "Читы"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:99
|
||||
#: src/ui/gui/appwindow.slint:119
|
||||
msgctxt "Menu"
|
||||
msgid "RetroAchievements"
|
||||
msgstr "RetroAchievements"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:100
|
||||
#: src/ui/gui/appwindow.slint:123
|
||||
msgctxt "Menu"
|
||||
msgid "Settings"
|
||||
msgstr "Настройки"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:101
|
||||
#: src/ui/gui/appwindow.slint:127
|
||||
msgctxt "Menu"
|
||||
msgid "About"
|
||||
msgstr "О программе"
|
||||
|
||||
#: src/ui/gui/appwindow.slint:195
|
||||
#: src/ui/gui/appwindow.slint:248
|
||||
msgctxt "ErrorDialog"
|
||||
msgid "Error"
|
||||
msgstr "Ошибка"
|
||||
@@ -107,45 +107,40 @@ msgctxt "Cheats"
|
||||
msgid "No Cheats Available"
|
||||
msgstr "Читы недоступны"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:26
|
||||
#: src/ui/gui/controller_page.slint:80
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Enabled"
|
||||
msgstr "Включено"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:93
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:107
|
||||
msgctxt "ControllerSettingsGrid"
|
||||
msgid "Profile"
|
||||
msgstr "Профиль"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:157
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller Configuration"
|
||||
msgstr "Настройка контроллера"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:37
|
||||
#: src/ui/gui/controller_page.slint:168
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Configure Input Profile"
|
||||
msgstr "Настроить профиль ввода"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:49
|
||||
#: src/ui/gui/controller_page.slint:176
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Port"
|
||||
msgstr "Порт"
|
||||
msgid "Controller Settings"
|
||||
msgstr "Настройки контроллера"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:60
|
||||
#: src/ui/gui/controller_page.slint:186
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Enabled"
|
||||
msgstr "Включено"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:73
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Эмулировать VRU"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:87
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Transfer Pak"
|
||||
msgstr "Transfer Pak"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:101
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Profile"
|
||||
msgstr "Профиль"
|
||||
|
||||
#: src/ui/gui/controller_page.slint:117
|
||||
msgctxt "ControllerConfig"
|
||||
msgid "Controller"
|
||||
msgstr "Контроллер"
|
||||
msgid "Controller Assignment"
|
||||
msgstr "Назначение контроллера"
|
||||
|
||||
#: src/ui/gui/input_profile.slint:10
|
||||
msgctxt "InputProfileDialog"
|
||||
@@ -485,62 +480,75 @@ msgctxt "RetroAchievements"
|
||||
msgid "View Supported Games"
|
||||
msgstr "Просмотреть поддерживаемые игры"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:22
|
||||
#: src/ui/gui/settings_page.slint:23
|
||||
msgctxt "Settings"
|
||||
msgid "Settings"
|
||||
msgstr "Настройки"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:29
|
||||
#: src/ui/gui/settings_page.slint:30
|
||||
msgctxt "Settings"
|
||||
msgid "Resolution:"
|
||||
msgstr "Разрешение:"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:45
|
||||
#: src/ui/gui/settings_page.slint:46
|
||||
msgctxt "Settings"
|
||||
msgid "SSAA downscaling"
|
||||
msgstr "SSAA даунскейлинг"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:56
|
||||
#: src/ui/gui/settings_page.slint:57
|
||||
msgctxt "Settings"
|
||||
msgid "Integer Scaling"
|
||||
msgstr "Целочисленное масштабирование"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:67
|
||||
#: src/ui/gui/settings_page.slint:68
|
||||
msgctxt "Settings"
|
||||
msgid "Fullscreen"
|
||||
msgstr "Полноэкранный режим"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:78
|
||||
#: src/ui/gui/settings_page.slint:79
|
||||
msgctxt "Settings"
|
||||
msgid "Widescreen (stretch)"
|
||||
msgstr "Широкоэкранный режим (растянуто)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:89
|
||||
#: src/ui/gui/settings_page.slint:90
|
||||
msgctxt "Settings"
|
||||
msgid "VSync"
|
||||
msgstr "Вертикальная синхронизация"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:100
|
||||
#: src/ui/gui/settings_page.slint:101
|
||||
msgctxt "Settings"
|
||||
msgid "Apply CRT shader"
|
||||
msgstr "Применить шейдер ЭЛТ"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:115
|
||||
#: src/ui/gui/settings_page.slint:116
|
||||
msgctxt "Settings"
|
||||
msgid "Overclock N64 CPU (may cause bugs)"
|
||||
msgstr "Разгон процессора N64 (может вызвать ошибки)"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:126
|
||||
#: src/ui/gui/settings_page.slint:127
|
||||
msgctxt "Settings"
|
||||
msgid "Disable Expansion Pak"
|
||||
msgstr "Отключить Expansion Pak"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:137
|
||||
#: src/ui/gui/settings_page.slint:138
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate UNFLoader"
|
||||
msgstr "Эмулировать UNFLoader"
|
||||
|
||||
#: src/ui/gui/settings_page.slint:149
|
||||
msgctxt "Settings"
|
||||
msgid "Emulate VRU"
|
||||
msgstr "Эмулировать VRU"
|
||||
|
||||
#: src/ui/gui/vru_dialog.slint:7
|
||||
msgctxt "VruDialog"
|
||||
msgid "What Would You Like To Say?"
|
||||
msgstr "Что вы хотите сказать?"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Port"
|
||||
#~ msgstr "Порт"
|
||||
|
||||
#~ msgctxt "ControllerConfig"
|
||||
#~ msgid "Controller"
|
||||
#~ msgstr "Контроллер"
|
||||
|
||||
|
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M440-280h80v-240h-80v240Zm68.5-331.5Q520-623 520-640t-11.5-28.5Q497-680 480-680t-28.5 11.5Q440-657 440-640t11.5 28.5Q463-600 480-600t28.5-11.5ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z"/></svg>
|
||||
|
After Width: | Height: | Size: 553 B |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M280-120v-80h160v-124q-49-11-87.5-41.5T296-442q-75-9-125.5-65.5T120-640v-40q0-33 23.5-56.5T200-760h80v-80h400v80h80q33 0 56.5 23.5T840-680v40q0 76-50.5 132.5T664-442q-18 46-56.5 76.5T520-324v124h160v80H280Zm0-408v-152h-80v40q0 38 22 68.5t58 43.5Zm285 93q35-35 35-85v-240H360v240q0 50 35 85t85 35q50 0 85-35Zm115-93q36-13 58-43.5t22-68.5v-40h-80v152Zm-200-52Z"/></svg>
|
||||
|
After Width: | Height: | Size: 483 B |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M480-160v-80h320v80H480ZM220-320l-56-56 183-184-183-184 56-56 240 240-240 240Z"/></svg>
|
||||
|
After Width: | Height: | Size: 203 B |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M189-160q-60 0-102.5-43T42-307q0-9 1-18t3-18l84-336q14-54 57-87.5t98-33.5h390q55 0 98 33.5t57 87.5l84 336q2 9 3.5 18.5T919-306q0 61-43.5 103.5T771-160q-42 0-78-22t-54-60l-28-58q-5-10-15-15t-21-5H385q-11 0-21 5t-15 15l-28 58q-18 38-54 60t-78 22Zm3-80q19 0 34.5-10t23.5-27l28-57q15-31 44-48.5t63-17.5h190q34 0 63 18t45 48l28 57q8 17 23.5 27t34.5 10q28 0 48-18.5t21-46.5q0 1-2-19l-84-335q-7-27-28-44t-49-17H285q-28 0-49.5 17T208-659l-84 335q-2 6-2 18 0 28 20.5 47t49.5 19Zm376.5-291.5Q580-543 580-560t-11.5-28.5Q557-600 540-600t-28.5 11.5Q500-577 500-560t11.5 28.5Q523-520 540-520t28.5-11.5Zm80-80Q660-623 660-640t-11.5-28.5Q637-680 620-680t-28.5 11.5Q580-657 580-640t11.5 28.5Q603-600 620-600t28.5-11.5Zm0 160Q660-463 660-480t-11.5-28.5Q637-520 620-520t-28.5 11.5Q580-497 580-480t11.5 28.5Q603-440 620-440t28.5-11.5Zm80-80Q740-543 740-560t-11.5-28.5Q717-600 700-600t-28.5 11.5Q660-577 660-560t11.5 28.5Q683-520 700-520t28.5-11.5Zm-367 63Q370-477 370-490v-40h40q13 0 21.5-8.5T440-560q0-13-8.5-21.5T410-590h-40v-40q0-13-8.5-21.5T340-660q-13 0-21.5 8.5T310-630v40h-40q-13 0-21.5 8.5T240-560q0 13 8.5 21.5T270-530h40v40q0 13 8.5 21.5T340-460q13 0 21.5-8.5ZM480-480Z"/></svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M240-200h120v-240h240v240h120v-360L480-740 240-560v360Zm-80 80v-480l320-240 320 240v480H520v-240h-80v240H160Zm320-350Z"/></svg>
|
||||
|
After Width: | Height: | Size: 243 B |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M260-160q-91 0-155.5-63T40-377q0-78 47-139t123-78q25-92 100-149t170-57q117 0 198.5 81.5T760-520q69 8 114.5 59.5T920-340q0 75-52.5 127.5T740-160H260Zm0-80h480q42 0 71-29t29-71q0-42-29-71t-71-29h-60v-80q0-83-58.5-141.5T480-720q-83 0-141.5 58.5T280-520h-20q-58 0-99 41t-41 99q0 58 41 99t99 41Zm220-240Z"/></svg>
|
||||
|
After Width: | Height: | Size: 424 B |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="m370-80-16-128q-13-5-24.5-12T307-235l-119 50L78-375l103-78q-1-7-1-13.5v-27q0-6.5 1-13.5L78-585l110-190 119 50q11-8 23-15t24-12l16-128h220l16 128q13 5 24.5 12t22.5 15l119-50 110 190-103 78q1 7 1 13.5v27q0 6.5-2 13.5l103 78-110 190-118-50q-11 8-23 15t-24 12L590-80H370Zm70-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z"/></svg>
|
||||
|
After Width: | Height: | Size: 771 B |
@@ -66,8 +66,8 @@ export component AppWindow inherits Window {
|
||||
in-out property disable_expansion_pak <=> SettingsData.disable_expansion_pak;
|
||||
in-out property resolution <=> SettingsData.resolution;
|
||||
in-out property emulate_usb <=> SettingsData.emulate_usb;
|
||||
in-out property emulate_vru <=> SettingsData.emulate_vru;
|
||||
in-out property rom_dir <=> SettingsData.rom_dir;
|
||||
in-out property emulate_vru <=> ControllerData.emulate_vru;
|
||||
in-out property controller_enabled <=> ControllerData.controller_enabled;
|
||||
in-out property controller_changed <=> ControllerData.controller_changed;
|
||||
in-out property transferpak <=> ControllerData.transferpak;
|
||||
@@ -83,26 +83,66 @@ export component AppWindow inherits Window {
|
||||
in-out property cheat_game_name <=> CheatsData.cheat_game_name;
|
||||
in-out property cheat_game_crc <=> CheatsData.cheat_game_crc;
|
||||
in-out property cheats <=> CheatsData.cheats;
|
||||
preferred-width: 700px;
|
||||
preferred-height: 500px;
|
||||
|
||||
private property <bool> is-portrait: root.width < root.height;
|
||||
private property <length> bar-thickness: 56px;
|
||||
|
||||
min-width: 320px;
|
||||
min-height: 240px;
|
||||
preferred-width: 600px;
|
||||
preferred-height: 600px;
|
||||
title: "Gopher64";
|
||||
icon: @image-url("../../../data/icon/gopher64.png");
|
||||
|
||||
HorizontalLayout {
|
||||
side-bar := SideBar {
|
||||
title: "Gopher64";
|
||||
model: [
|
||||
@tr("Menu" => "Local Game"),
|
||||
@tr("Menu" => "Controller Config"),
|
||||
@tr("Menu" => "Netplay"),
|
||||
@tr("Menu" => "Cheats"),
|
||||
@tr("Menu" => "RetroAchievements"),
|
||||
@tr("Menu" => "Settings"),
|
||||
@tr("Menu" => "About")
|
||||
];
|
||||
}
|
||||
side-bar := SideBar {
|
||||
portrait: root.is-portrait;
|
||||
title: "Gopher64";
|
||||
model: [
|
||||
{
|
||||
icon: @image-url("../../../data/ui/icons/local_game.svg"),
|
||||
label: @tr("Menu" => "Local Game"),
|
||||
},
|
||||
{
|
||||
icon: @image-url("../../../data/ui/icons/controller.svg"),
|
||||
label: @tr("Menu" => "Controller Config"),
|
||||
},
|
||||
{
|
||||
icon: @image-url("../../../data/ui/icons/netplay.svg"),
|
||||
label: @tr("Menu" => "Netplay"),
|
||||
},
|
||||
{
|
||||
icon: @image-url("../../../data/ui/icons/cheats.svg"),
|
||||
label: @tr("Menu" => "Cheats"),
|
||||
},
|
||||
{
|
||||
icon: @image-url("../../../data/ui/icons/achievements.svg"),
|
||||
label: @tr("Menu" => "RetroAchievements"),
|
||||
},
|
||||
{
|
||||
icon: @image-url("../../../data/ui/icons/settings.svg"),
|
||||
label: @tr("Menu" => "Settings"),
|
||||
},
|
||||
{
|
||||
icon: @image-url("../../../data/ui/icons/about.svg"),
|
||||
label: @tr("Menu" => "About"),
|
||||
},
|
||||
];
|
||||
x: 0;
|
||||
y: root.is-portrait ? parent.height - root.bar-thickness : 0;
|
||||
width: root.is-portrait ? parent.width : root.bar-thickness;
|
||||
height: root.is-portrait ? root.bar-thickness : parent.height;
|
||||
}
|
||||
|
||||
content-area := Rectangle {
|
||||
clip: true;
|
||||
x: root.is-portrait ? 0 : root.bar-thickness;
|
||||
y: 0;
|
||||
width: root.is-portrait ? parent.width : parent.width - root.bar-thickness;
|
||||
height: root.is-portrait ? parent.height - root.bar-thickness : parent.height;
|
||||
|
||||
if(side-bar.current-item == 0): LocalGame {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
open_rom_button_clicked => {
|
||||
open_rom_button_clicked();
|
||||
}
|
||||
@@ -117,6 +157,8 @@ export component AppWindow inherits Window {
|
||||
}
|
||||
}
|
||||
if(side-bar.current-item == 1): ControllerConfig {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
input_profile_button_clicked => {
|
||||
input_profile_button_clicked();
|
||||
}
|
||||
@@ -128,6 +170,8 @@ export component AppWindow inherits Window {
|
||||
}
|
||||
}
|
||||
if(side-bar.current-item == 2): Netplay {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
create_session_button_clicked => {
|
||||
create_session_button_clicked();
|
||||
}
|
||||
@@ -142,6 +186,8 @@ export component AppWindow inherits Window {
|
||||
}
|
||||
}
|
||||
if(side-bar.current-item == 3): Cheats {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
cheats_select_rom_clicked(rom_dir) => {
|
||||
cheats_select_rom_clicked(rom_dir);
|
||||
}
|
||||
@@ -153,6 +199,8 @@ export component AppWindow inherits Window {
|
||||
}
|
||||
}
|
||||
if(side-bar.current-item == 4): RetroAchievements {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
ra_button_clicked(password) => {
|
||||
ra_button_clicked(password);
|
||||
}
|
||||
@@ -166,8 +214,13 @@ export component AppWindow inherits Window {
|
||||
ra_show_profile_clicked();
|
||||
}
|
||||
}
|
||||
if(side-bar.current-item == 5): Settings { }
|
||||
if(side-bar.current-item == 5): Settings {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
if(side-bar.current-item == 6): About {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
wiki_button_clicked => {
|
||||
wiki_button_clicked();
|
||||
}
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
// Copyright © SixtyFPS GmbH <info@slint.dev>
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
import { Switch, ComboBox, Button, HorizontalBox, VerticalBox, GroupBox } from "std-widgets.slint";
|
||||
import { Switch, ComboBox, Button, VerticalBox, GroupBox } from "std-widgets.slint";
|
||||
import { Page } from "page.slint";
|
||||
import { State } from "localgame_page.slint";
|
||||
|
||||
export global ControllerData {
|
||||
in-out property <bool> emulate_vru;
|
||||
in-out property <[bool]> controller_enabled;
|
||||
in-out property <[bool]> transferpak;
|
||||
in-out property <[string]> gb_rom_paths;
|
||||
@@ -19,9 +18,141 @@ export global ControllerData {
|
||||
in-out property <[bool]> controller_changed;
|
||||
}
|
||||
|
||||
component ControllerPortLabel inherits Text {
|
||||
height: 32px;
|
||||
width: 36px;
|
||||
vertical-alignment: center;
|
||||
horizontal-alignment: center;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
component ControllerFieldHeader inherits Text {
|
||||
height: 28px;
|
||||
horizontal-alignment: left;
|
||||
vertical-alignment: center;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
component ControllerSettingsColumn inherits VerticalLayout {
|
||||
in property <string> title;
|
||||
in property <length> content-min-width: 0px;
|
||||
spacing: 6px;
|
||||
alignment: start;
|
||||
horizontal-stretch: 0;
|
||||
min-width: content-min-width > header.preferred-width ? content-min-width : header.preferred-width;
|
||||
|
||||
header := ControllerFieldHeader {
|
||||
text: root.title;
|
||||
}
|
||||
|
||||
@children
|
||||
}
|
||||
|
||||
component ControllerSettingsCell inherits HorizontalLayout {
|
||||
height: 32px;
|
||||
alignment: start;
|
||||
|
||||
@children
|
||||
}
|
||||
|
||||
component ControllerSettingsGrid inherits HorizontalLayout {
|
||||
callback transferpak_toggled(int, bool);
|
||||
|
||||
spacing: 12px;
|
||||
alignment: start;
|
||||
|
||||
VerticalLayout {
|
||||
spacing: 6px;
|
||||
alignment: start;
|
||||
horizontal-stretch: 0;
|
||||
|
||||
Rectangle {
|
||||
width: 36px;
|
||||
height: 28px;
|
||||
}
|
||||
|
||||
for player[index] in [0, 1, 2, 3]: ControllerPortLabel {
|
||||
text: index + 1;
|
||||
}
|
||||
}
|
||||
|
||||
ControllerSettingsColumn {
|
||||
title: @tr("ControllerSettingsGrid" => "Enabled");
|
||||
|
||||
for player[index] in [0, 1, 2, 3]: ControllerSettingsCell {
|
||||
Switch {
|
||||
checked: ControllerData.controller_enabled[index];
|
||||
toggled => {
|
||||
ControllerData.controller_enabled[index] = self.checked;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ControllerSettingsColumn {
|
||||
title: @tr("ControllerSettingsGrid" => "Transfer Pak");
|
||||
|
||||
for player[index] in [0, 1, 2, 3]: ControllerSettingsCell {
|
||||
Switch {
|
||||
checked: ControllerData.transferpak[index];
|
||||
toggled => {
|
||||
ControllerData.transferpak[index] = self.checked;
|
||||
root.transferpak_toggled(index, self.checked);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ControllerSettingsColumn {
|
||||
title: @tr("ControllerSettingsGrid" => "Profile");
|
||||
content-min-width: 150px;
|
||||
|
||||
for player[index] in [0, 1, 2, 3]: ControllerSettingsCell {
|
||||
ComboBox {
|
||||
horizontal-stretch: 0;
|
||||
min-width: self.preferred-width > 150px ? self.preferred-width : 150px;
|
||||
model: ControllerData.input_profiles;
|
||||
current-index: ControllerData.selected_profile_binding[index];
|
||||
selected => {
|
||||
ControllerData.selected_profile_binding[index] = self.current-index;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
component ControllerAssignmentGrid inherits VerticalLayout {
|
||||
spacing: 6px;
|
||||
alignment: start;
|
||||
|
||||
for player[index] in [0, 1, 2, 3]: HorizontalLayout {
|
||||
spacing: 8px;
|
||||
alignment: start;
|
||||
|
||||
ControllerPortLabel {
|
||||
text: index + 1;
|
||||
}
|
||||
|
||||
HorizontalLayout {
|
||||
alignment: start;
|
||||
|
||||
ComboBox {
|
||||
horizontal-stretch: 0;
|
||||
min-width: self.preferred-width > 300px ? self.preferred-width : 300px;
|
||||
model: ControllerData.controller_names;
|
||||
current-index: ControllerData.selected_controller[index];
|
||||
selected => {
|
||||
ControllerData.selected_controller[index] = self.current-index;
|
||||
ControllerData.controller_changed[index] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export component ControllerConfig inherits Page {
|
||||
callback input_profile_button_clicked;
|
||||
callback transferpak_toggled(int,bool);
|
||||
callback transferpak_toggled(int, bool);
|
||||
callback controller_window_created;
|
||||
title: @tr("Controller Configuration");
|
||||
|
||||
@@ -30,105 +161,31 @@ export component ControllerConfig inherits Page {
|
||||
}
|
||||
|
||||
VerticalBox {
|
||||
spacing: 8px;
|
||||
alignment: start;
|
||||
HorizontalBox {
|
||||
alignment: start;
|
||||
Button {
|
||||
text: @tr("Configure Input Profile");
|
||||
enabled: !State.game_running;
|
||||
clicked => {
|
||||
input_profile_button_clicked();
|
||||
|
||||
Button {
|
||||
text: @tr("Configure Input Profile");
|
||||
enabled: !State.game_running;
|
||||
clicked => {
|
||||
input_profile_button_clicked();
|
||||
}
|
||||
}
|
||||
|
||||
GroupBox {
|
||||
title: @tr("Controller Settings");
|
||||
|
||||
ControllerSettingsGrid {
|
||||
transferpak_toggled(index, enabled) => {
|
||||
root.transferpak_toggled(index, enabled);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle { }
|
||||
GroupBox {
|
||||
title: @tr("Controller Assignment");
|
||||
|
||||
HorizontalBox {
|
||||
GroupBox {
|
||||
title: @tr("Port");
|
||||
VerticalLayout {
|
||||
alignment: space-between;
|
||||
for player in [0, 1, 2, 3]: Text {
|
||||
text: player + 1;
|
||||
vertical-alignment: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GroupBox {
|
||||
title: @tr("Enabled");
|
||||
VerticalLayout {
|
||||
alignment: space-between;
|
||||
for player in [0, 1, 2, 3]: Switch {
|
||||
checked: ControllerData.controller_enabled[player];
|
||||
toggled => {
|
||||
ControllerData.controller_enabled[player] = self.checked;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GroupBox {
|
||||
title: @tr("Emulate VRU");
|
||||
VerticalLayout {
|
||||
alignment: space-between;
|
||||
for valid in [false, false, false, true]: Switch {
|
||||
enabled: valid;
|
||||
checked: valid && ControllerData.emulate_vru;
|
||||
toggled => {
|
||||
ControllerData.emulate_vru = self.checked;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GroupBox {
|
||||
title: @tr("Transfer Pak");
|
||||
VerticalLayout {
|
||||
alignment: space-between;
|
||||
for player in [0, 1, 2, 3]: Switch {
|
||||
checked: ControllerData.transferpak[player];
|
||||
toggled => {
|
||||
ControllerData.transferpak[player] = self.checked;
|
||||
transferpak_toggled(player,self.checked);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GroupBox {
|
||||
title: @tr("Profile");
|
||||
horizontal-stretch: 0.25;
|
||||
VerticalLayout {
|
||||
alignment: space-between;
|
||||
for player in [0, 1, 2, 3]: ComboBox {
|
||||
model: ControllerData.input_profiles;
|
||||
min-width: self.preferred-width > 150px ? self.preferred-width : 150px;
|
||||
current-index: ControllerData.selected_profile_binding[player];
|
||||
selected => {
|
||||
ControllerData.selected_profile_binding[player] = self.current-index;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GroupBox {
|
||||
title: @tr("Controller");
|
||||
horizontal-stretch: 0.75;
|
||||
VerticalLayout {
|
||||
alignment: space-between;
|
||||
for player in [0, 1, 2, 3]: ComboBox {
|
||||
model: ControllerData.controller_names;
|
||||
min-width: self.preferred-width > 300px ? self.preferred-width : 300px;
|
||||
current-index: ControllerData.selected_controller[player];
|
||||
selected => {
|
||||
ControllerData.selected_controller[player] = self.current-index;
|
||||
ControllerData.controller_changed[player] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
ControllerAssignmentGrid { }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Copyright © SixtyFPS GmbH <info@slint.dev>
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
import { Switch, GridBox, ListView, ScrollView, HorizontalBox, VerticalBox, Palette } from "std-widgets.slint";
|
||||
import { ScrollView, HorizontalBox, VerticalBox } from "std-widgets.slint";
|
||||
|
||||
export component Page inherits VerticalBox {
|
||||
in property <string> title: "title";
|
||||
@@ -15,9 +15,17 @@ export component Page inherits VerticalBox {
|
||||
text <=> root.title;
|
||||
}
|
||||
|
||||
// Spacer
|
||||
Rectangle { }
|
||||
}
|
||||
|
||||
@children
|
||||
ScrollView {
|
||||
vertical-stretch: 1;
|
||||
|
||||
VerticalBox {
|
||||
padding: 8px;
|
||||
alignment: start;
|
||||
|
||||
@children
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ export global SettingsData {
|
||||
in-out property <bool> disable_expansion_pak;
|
||||
in-out property <int> resolution;
|
||||
in-out property <bool> emulate_usb;
|
||||
in-out property <bool> emulate_vru;
|
||||
in-out property <string> rom_dir;
|
||||
}
|
||||
|
||||
@@ -141,5 +142,16 @@ export component Settings inherits Page {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
HorizontalBox {
|
||||
alignment: start;
|
||||
Switch {
|
||||
text: @tr("Emulate VRU");
|
||||
checked: SettingsData.emulate_vru;
|
||||
toggled => {
|
||||
SettingsData.emulate_vru = self.checked;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,19 +1,79 @@
|
||||
// Copyright © SixtyFPS GmbH <info@slint.dev>
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
import { HorizontalBox, VerticalBox, Palette } from "std-widgets.slint";
|
||||
import { Palette } from "std-widgets.slint";
|
||||
|
||||
export struct SideBarEntry {
|
||||
icon: image,
|
||||
label: string,
|
||||
}
|
||||
|
||||
component SideBarButton inherits Rectangle {
|
||||
in property <bool> selected;
|
||||
in property <bool> has-focus;
|
||||
in property <image> icon;
|
||||
|
||||
callback clicked <=> touch.clicked;
|
||||
|
||||
width: 48px;
|
||||
height: 48px;
|
||||
border-radius: 8px;
|
||||
|
||||
highlight := Rectangle {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: parent.border-radius;
|
||||
background: Palette.control-background;
|
||||
opacity: 0;
|
||||
|
||||
animate opacity { duration: 150ms; }
|
||||
}
|
||||
|
||||
icon-display := Image {
|
||||
source: root.icon;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
colorize: Palette.foreground;
|
||||
x: (parent.width - self.width) / 2;
|
||||
y: (parent.height - self.height) / 2;
|
||||
|
||||
animate colorize { duration: 150ms; }
|
||||
}
|
||||
|
||||
touch := TouchArea {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
states [
|
||||
selected when root.selected: {
|
||||
highlight.opacity: 1;
|
||||
highlight.background: Palette.accent-background;
|
||||
icon-display.colorize: Palette.accent-foreground;
|
||||
}
|
||||
pressed when touch.pressed && !root.selected: {
|
||||
highlight.opacity: 0.55;
|
||||
}
|
||||
hover when touch.has-hover && !root.selected: {
|
||||
highlight.opacity: 0.4;
|
||||
}
|
||||
focused when root.has-focus && !root.selected: {
|
||||
highlight.opacity: 0.4;
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
component SideBarItem inherits Rectangle {
|
||||
in property <int> tab-index;
|
||||
in property <bool> selected;
|
||||
in property <bool> has-focus;
|
||||
in-out property <string> text <=> label.text;
|
||||
in property <image> icon;
|
||||
in property <string> label;
|
||||
|
||||
callback clicked <=> touch.clicked;
|
||||
callback clicked <=> button.clicked;
|
||||
|
||||
min-height: l.preferred-height;
|
||||
accessible-role: tab;
|
||||
accessible-label: root.text;
|
||||
accessible-label: root.label;
|
||||
accessible-item-index: root.tab-index;
|
||||
accessible-item-selectable: true;
|
||||
accessible-item-selected: root.selected;
|
||||
@@ -21,124 +81,128 @@ component SideBarItem inherits Rectangle {
|
||||
self.clicked();
|
||||
}
|
||||
|
||||
states [
|
||||
pressed when touch.pressed: {
|
||||
state.opacity: 0.8;
|
||||
}
|
||||
hover when touch.has-hover: {
|
||||
state.opacity: 0.6;
|
||||
}
|
||||
selected when root.selected: {
|
||||
state.opacity: 1;
|
||||
}
|
||||
focused when root.has-focus: {
|
||||
state.opacity: 0.8;
|
||||
}
|
||||
]
|
||||
|
||||
state := Rectangle {
|
||||
opacity: 0;
|
||||
background: Palette.background;
|
||||
|
||||
animate opacity { duration: 150ms; }
|
||||
}
|
||||
|
||||
l := HorizontalBox {
|
||||
y: (parent.height - self.height) / 2;
|
||||
spacing: 0px;
|
||||
|
||||
label := Text {
|
||||
vertical-alignment: center;
|
||||
accessible-role: none;
|
||||
}
|
||||
}
|
||||
|
||||
touch := TouchArea {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
button := SideBarButton {
|
||||
icon: root.icon;
|
||||
selected: root.selected;
|
||||
has-focus: root.has-focus;
|
||||
}
|
||||
}
|
||||
|
||||
export component SideBar inherits Rectangle {
|
||||
in property <[string]> model: [];
|
||||
in property <string> title <=> label.text;
|
||||
out property <int> current-item: 0;
|
||||
out property <int> current-focused: fs.has-focus ? fs.focused-tab : -1; // The currently focused tab
|
||||
in property <[SideBarEntry]> model: [];
|
||||
in property <string> title: "Gopher64";
|
||||
in property <bool> portrait;
|
||||
in-out property <int> current-item: 0;
|
||||
out property <int> current-focused: fs.has-focus ? fs.focused-tab : -1;
|
||||
|
||||
width: 180px;
|
||||
forward-focus: fs;
|
||||
|
||||
Rectangle {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: Palette.background.darker(0.2);
|
||||
}
|
||||
|
||||
VerticalBox {
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
alignment: start;
|
||||
|
||||
label := Text {
|
||||
font-size: 16px;
|
||||
horizontal-alignment: center;
|
||||
fs := FocusScope {
|
||||
key-pressed(event) => {
|
||||
if (event.text == "\n") {
|
||||
root.current-item = root.current-focused;
|
||||
return accept;
|
||||
}
|
||||
if (root.portrait) {
|
||||
if (event.text == Key.LeftArrow) {
|
||||
self.focused-tab = Math.max(self.focused-tab - 1, 0);
|
||||
return accept;
|
||||
}
|
||||
if (event.text == Key.RightArrow) {
|
||||
self.focused-tab = Math.min(self.focused-tab + 1, root.model.length - 1);
|
||||
return accept;
|
||||
}
|
||||
} else {
|
||||
if (event.text == Key.UpArrow) {
|
||||
self.focused-tab = Math.max(self.focused-tab - 1, 0);
|
||||
return accept;
|
||||
}
|
||||
if (event.text == Key.DownArrow) {
|
||||
self.focused-tab = Math.min(self.focused-tab + 1, root.model.length - 1);
|
||||
return accept;
|
||||
}
|
||||
}
|
||||
return reject;
|
||||
}
|
||||
|
||||
navigation := VerticalLayout {
|
||||
alignment: start;
|
||||
vertical-stretch: 0;
|
||||
accessible-role: tab-list;
|
||||
accessible-delegate-focus: root.current-focused >= 0 ? root.current-focused : root.current-item;
|
||||
accessible-label: root.title;
|
||||
accessible-item-count: root.model.length;
|
||||
|
||||
fs := FocusScope {
|
||||
key-pressed(event) => {
|
||||
if (event.text == "\n") {
|
||||
root.current-item = root.current-focused;
|
||||
return accept;
|
||||
}
|
||||
if (event.text == Key.UpArrow) {
|
||||
self.focused-tab = Math.max(self.focused-tab - 1, 0);
|
||||
return accept;
|
||||
}
|
||||
if (event.text == Key.DownArrow) {
|
||||
self.focused-tab = Math.min(self.focused-tab + 1, root.model.length - 1);
|
||||
return accept;
|
||||
}
|
||||
return reject;
|
||||
}
|
||||
|
||||
key-released(event) => {
|
||||
if (event.text == " ") {
|
||||
root.current-item = root.current-focused;
|
||||
return accept;
|
||||
}
|
||||
return reject;
|
||||
}
|
||||
|
||||
property <int> focused-tab: 0;
|
||||
|
||||
x: 0;
|
||||
width: 0; // Do not react on clicks
|
||||
key-released(event) => {
|
||||
if (event.text == " ") {
|
||||
root.current-item = root.current-focused;
|
||||
return accept;
|
||||
}
|
||||
return reject;
|
||||
}
|
||||
|
||||
for item[index] in root.model: SideBarItem {
|
||||
property <int> focused-tab: 0;
|
||||
|
||||
width: 0;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
// Bottom bar in portrait: icons in a row, centered vertically in the bar.
|
||||
portrait-strip := HorizontalLayout {
|
||||
visible: root.portrait;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 4px;
|
||||
spacing: 4px;
|
||||
alignment: space-evenly;
|
||||
|
||||
accessible-role: tab-list;
|
||||
accessible-delegate-focus: root.current-focused >= 0 ? root.current-focused : root.current-item;
|
||||
accessible-label: root.title;
|
||||
accessible-item-count: root.model.length;
|
||||
|
||||
for item[index] in root.model: VerticalLayout {
|
||||
alignment: center;
|
||||
|
||||
SideBarItem {
|
||||
clicked => {
|
||||
root.current-item = index;
|
||||
}
|
||||
|
||||
tab-index: index;
|
||||
has-focus: index == root.current-focused;
|
||||
text: item;
|
||||
icon: item.icon;
|
||||
label: item.label;
|
||||
selected: index == root.current-item;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
VerticalLayout {
|
||||
bottom := VerticalBox {
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
// Left rail in landscape: icons in a column, centered horizontally in the bar.
|
||||
landscape-strip := VerticalLayout {
|
||||
visible: !root.portrait;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 4px;
|
||||
spacing: 4px;
|
||||
alignment: space-evenly;
|
||||
|
||||
@children
|
||||
accessible-role: tab-list;
|
||||
accessible-delegate-focus: root.current-focused >= 0 ? root.current-focused : root.current-item;
|
||||
accessible-label: root.title;
|
||||
accessible-item-count: root.model.length;
|
||||
|
||||
for item[index] in root.model: HorizontalLayout {
|
||||
alignment: center;
|
||||
|
||||
SideBarItem {
|
||||
clicked => {
|
||||
root.current-item = index;
|
||||
}
|
||||
|
||||
tab-index: index;
|
||||
has-focus: index == root.current-focused;
|
||||
icon: item.icon;
|
||||
label: item.label;
|
||||
selected: index == root.current-item;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -729,7 +729,7 @@ pub fn configure_input_profile(
|
||||
initial_state: 0,
|
||||
};
|
||||
|
||||
let image_bytes = include_bytes!("../../data/controller.png");
|
||||
let image_bytes = include_bytes!("../../data/ui/controller.png");
|
||||
let image = unsafe {
|
||||
sdl3_image_sys::image::IMG_LoadPNG_IO(sdl3_sys::everything::SDL_IOFromConstMem(
|
||||
image_bytes.as_ptr() as *const std::ffi::c_void,
|
||||
@@ -740,7 +740,7 @@ pub fn configure_input_profile(
|
||||
unsafe { sdl3_sys::surface::SDL_DestroySurface(image) };
|
||||
let text_engine = unsafe { sdl3_ttf_sys::ttf::TTF_CreateRendererTextEngine(renderer) };
|
||||
let font = unsafe {
|
||||
let font_bytes = include_bytes!("../../data/RobotoMono-Regular.ttf");
|
||||
let font_bytes = include_bytes!("../../data/ui/RobotoMono-Regular.ttf");
|
||||
sdl3_ttf_sys::ttf::TTF_OpenFontIO(
|
||||
sdl3_sys::everything::SDL_IOFromConstMem(
|
||||
font_bytes.as_ptr() as *const std::ffi::c_void,
|
||||
|
||||
@@ -102,7 +102,7 @@ pub fn init(device: &mut device::Device) {
|
||||
let gfx_info = build_gfx_info(device);
|
||||
|
||||
unsafe {
|
||||
let font_bytes = include_bytes!("../../data/RobotoMono-Regular.ttf");
|
||||
let font_bytes = include_bytes!("../../data/ui/RobotoMono-Regular.ttf");
|
||||
rdp_init(
|
||||
device.ui.video.window as *mut std::ffi::c_void,
|
||||
gfx_info,
|
||||
|
||||