diff --git a/.gitignore b/.gitignore index 184e594bb..c1b36b8b5 100755 --- a/.gitignore +++ b/.gitignore @@ -60,3 +60,4 @@ logs/* Pipfile* env desktop.ini +assets/controller/* diff --git a/TSH.exe b/TSH.exe index 296b1fe21..dd7a63c5a 100644 Binary files a/TSH.exe and b/TSH.exe differ diff --git a/src/Helpers/TSHControllerHelper.py b/src/Helpers/TSHControllerHelper.py new file mode 100644 index 000000000..6e481cba5 --- /dev/null +++ b/src/Helpers/TSHControllerHelper.py @@ -0,0 +1,152 @@ +import re +import unicodedata +from qtpy.QtCore import * +from qtpy.QtGui import * +from qtpy.QtWidgets import * +import requests +import os +import shutil +import traceback +import zipfile +from .TSHDictHelper import deep_get +from ..TournamentDataProvider import TournamentDataProvider +from .TSHLocaleHelper import TSHLocaleHelper +import json +from loguru import logger +import glob + + +class TSHControllerHelperSignals(QObject): + controllersUpdated = Signal() + + +class TSHControllerHelper(QObject): + instance: "TSHControllerHelper" = None + + signals = TSHControllerHelperSignals() + + def __init__(self) -> None: + super().__init__() + self.controller_list = {} + self.controllerModel = QStandardItemModel() + + self.UpdateControllerFile() + self.BuildControllerTree() + self.UpdateControllerModel() + + + def UpdateControllerFile(self): + try: + url = 'https://github.com/Wolfy76700/ControllerDatabase/archive/refs/heads/main.zip' + r = requests.get(url, allow_redirects=True) + + with open('./assets/controller.zip.tmp', 'wb') as zip_file: + zip_file.write(r.content) + + try: + # Extract ZIP + if os.path.exists("./assets/controller_tmp"): + shutil.rmtree("./assets/controller_tmp") + with zipfile.ZipFile('./assets/controller.zip.tmp', 'r') as zip_file: + os.mkdir('./assets/controller_tmp') + zip_file.extractall('./assets/controller_tmp') + + # Remove ZIP + os.remove('./assets/controller.zip.tmp') + + # Move directory + if os.path.exists("./assets/controller"): + shutil.rmtree("./assets/controller") + os.rename( + './assets/controller_tmp', + './assets/controller' + ) + + logger.info("Controller files updated") + except: + logger.error("Controller files download failed") + except Exception as e: + logger.error( + "Could not update /assets/controller: "+str(e)) + + def BuildControllerTree(self): + controller_list = {} + list_controller_directories = glob.glob("./assets/controller/ControllerDatabase-main/*/*/*/") + for controller_directory in list_controller_directories: + if os.path.exists(f"{controller_directory}/config.json"): + split = controller_directory.split("/") + controller_id = f"{split[-4]}/{split[-3]}/{split[-2]}" + print(f"Loading: {controller_id}") + with open(f"{controller_directory}/config.json", "rt", encoding="utf-8") as config_file: + config_json = json.loads(config_file.read()) + if os.path.exists(f"{"/".join(split[:-2])}/config.json"): + with open(f"{"/".join(split[:-2])}/config.json", "rt", encoding="utf-8") as manufacturer_file: + manufacturer = json.loads(manufacturer_file.read()).get("name") + print(f"Manufacturer: {manufacturer}") + else: + manufacturer = None + + if os.path.exists(f"{"/".join(split[:-3])}/config.json"): + with open(f"{"/".join(split[:-3])}/config.json", "rt", encoding="utf-8") as controller_type_file: + controller_type = json.loads(controller_type_file.read()).get("name") + print(f"Type: {controller_type}") + else: + controller_type = None + + if os.path.exists(f"{controller_directory}/image.png"): + icon_path = f"{controller_directory}/image.png" + else: + icon_path = None + + controller_json = { + "name": config_json.get("name"), + "manufacturer": manufacturer, + "type": controller_type, + "icon_path": icon_path, + "config_path": f"{controller_directory}/config.json" + } + controller_list[controller_id] = controller_json + self.controller_list = controller_list + + + def UpdateControllerModel(self): + try: + self.controllerModel = QStandardItemModel() + + # Add one empty + item = QStandardItem("") + self.controllerModel.appendRow(item) + + for c in self.controller_list.keys(): + item = QStandardItem() + item.setData(c, Qt.ItemDataRole.EditRole) + print(c) + + data = { + "name": self.controller_list[c].get("name"), + "manufacturer": self.controller_list[c].get("manufacturer"), + "type": self.controller_list[c].get("type"), + "codename": c + } + + + data["icon_path"] = self.controller_list[c].get("icon_path") + if data["icon_path"]: + item.setIcon(QIcon(QPixmap.fromImage(QImage(data["icon_path"]))) + ) + else: + item.setIcon(QIcon(QPixmap.fromImage(QImage('./assets/icons/cancel.svg'))) + ) + + if self.controller_list[c].get("name") != c: + item.setData( + f'{self.controller_list[c].get("name")}', Qt.ItemDataRole.EditRole) + + item.setData(data, Qt.ItemDataRole.UserRole) + self.controllerModel.appendRow(item) + + self.controllerModel.sort(0) + except: + logger.error(traceback.format_exc()) + +TSHControllerHelper.instance = TSHControllerHelper() diff --git a/src/TSHPlayerDB.py b/src/TSHPlayerDB.py index f8cb8b0a0..a08c3878e 100644 --- a/src/TSHPlayerDB.py +++ b/src/TSHPlayerDB.py @@ -22,7 +22,7 @@ class TSHPlayerDB: database = {} model: QStandardItemModel = None fieldnames = ["prefix", "gamerTag", "name", "twitter", - "country_code", "state_code", "mains", "pronoun", "custom_textbox"] # Please always add the new fields at the end of the list + "country_code", "state_code", "mains", "pronoun", "custom_textbox", "controller"] # Please always add the new fields at the end of the list modelLock = Lock() def LoadDB(): diff --git a/src/TSHScoreboardPlayerWidget.py b/src/TSHScoreboardPlayerWidget.py index fe4bda4d3..49e87d5c7 100644 --- a/src/TSHScoreboardPlayerWidget.py +++ b/src/TSHScoreboardPlayerWidget.py @@ -8,6 +8,7 @@ from .Helpers.TSHCountryHelper import TSHCountryHelper from .StateManager import StateManager from .TSHGameAssetManager import TSHGameAssetManager +from .Helpers.TSHControllerHelper import TSHControllerHelper from .TSHPlayerDB import TSHPlayerDB from .TSHTournamentDataProvider import TSHTournamentDataProvider from .Helpers.TSHLocaleHelper import TSHLocaleHelper @@ -54,10 +55,12 @@ def __init__(self, index=0, teamNumber=0, path="", scoreboardNumber=1, customNam uic.loadUi(TSHResolve("src/layout/TSHScoreboardPlayer.ui"), self) + self.LoadControllers() + custom_textbox_layout = QHBoxLayout() self.custom_textbox = QPlainTextEdit() custom_textbox_layout.addWidget(self.custom_textbox) - self.layout().addLayout(custom_textbox_layout, 98, 0, 1, 3) + self.layout().addLayout(custom_textbox_layout, 98, 2, 1, 1) self.custom_textbox.setObjectName("custom_textbox") self.custom_textbox.setPlaceholderText(QApplication.translate("app", "Additional information")) self.custom_textbox.textChanged.connect( @@ -526,6 +529,46 @@ def SwapCharacters(self, index1: int, index2: int): StateManager.ReleaseSaving() + def LoadControllers(self): + try: + if TSHControllerHelper.instance.controllerModel == None: + TSHControllerHelper.BuildControllerTree() + TSHControllerHelper.UpdateControllerModel() + + controller_layout = QVBoxLayout() + + controller_label = QLabel() + controller_layout.addWidget(controller_label) + controller_label.setText(QApplication.translate("app", "Controller").upper()) + controller_label.setStyleSheet("QLabel{font-weight: bold; font-size: 8pt;}") + controller_label.setObjectName("controllerLabel") + + self.controller = QComboBox() + + controller_layout.addWidget(self.controller) + self.layout().addLayout(controller_layout, 97, 2, 1, 1) + + self.controller.setObjectName("controller") + self.controller.setEditable(True) + self.controller.completer().setFilterMode(Qt.MatchFlag.MatchContains) + self.controller.completer().setCompletionMode(QCompleter.PopupCompletion) + self.controller.completer().popup().setMinimumWidth(250) + self.controller.setIconSize(QSize(24, 24)) + self.controller.setFixedHeight(32) + self.controller.setMinimumWidth(60) + # self.controller.setMaximumWidth(120) + self.controller.setFont( + QFont(self.controller.font().family(), 9)) + self.controller.setModel( + TSHControllerHelper.instance.controllerModel) + view = QListView() + view.setIconSize(QSize(24, 24)) + self.controller.setView(view) + + except Exception as e: + logger.error(traceback.format_exc()) + exit() + def LoadCountries(self): try: if TSHCountryHelper.countryModel == None: @@ -743,6 +786,19 @@ def SetData(self, data, dontLoadFromDB=False, clear=True, no_mains=False): if stateElement.currentIndex() != stateIndex: stateElement.setCurrentIndex(stateIndex) + if data.get("controller"): + controllerElement: QComboBox = self.findChild( + QComboBox, "controller") + controllerIndex = 0 + for i in range(controllerElement.model().rowCount()): + item = controllerElement.model().item(i).data(Qt.ItemDataRole.UserRole) + if item: + if data.get("controller") == item.get("codename"): + controllerIndex = i + break + if controllerElement.currentIndex() != controllerIndex: + controllerElement.setCurrentIndex(controllerIndex) + if data.get("mains") and no_mains != True: if type(data.get("mains")) == list: for element in self.character_elements: @@ -858,6 +914,10 @@ def SavePlayerToDB(self): if self.findChild(QComboBox, "state").currentData(Qt.ItemDataRole.UserRole): playerData["state_code"] = self.findChild( QComboBox, "state").currentData(Qt.ItemDataRole.UserRole).get("code") + + if self.findChild(QComboBox, "controller").currentData(Qt.ItemDataRole.UserRole): + playerData["controller"] = self.findChild( + QComboBox, "controller").currentData(Qt.ItemDataRole.UserRole).get("codename") TSHPlayerDB.AddPlayers([playerData], overwrite=True) diff --git a/src/TSHScoreboardWidget.py b/src/TSHScoreboardWidget.py index 1890079b1..bedf0e82b 100644 --- a/src/TSHScoreboardWidget.py +++ b/src/TSHScoreboardWidget.py @@ -223,6 +223,7 @@ def __init__(self, scoreboardNumber=1, *args): ["Location", ["locationLabel", "state", "country"]], ["Characters", ["characters"]], ["Pronouns", ["pronoun", "pronounLabel"]], + ["Controller", ["controller", "controllerLabel"]], ["Additional information", ["custom_textbox"]], ] self.elements[0][0] = QApplication.translate("app", "Real Name") @@ -230,7 +231,8 @@ def __init__(self, scoreboardNumber=1, *args): self.elements[2][0] = QApplication.translate("app", "Location") self.elements[3][0] = QApplication.translate("app", "Characters") self.elements[4][0] = QApplication.translate("app", "Pronouns") - self.elements[5][0] = QApplication.translate("app", "Additional information") + self.elements[5][0] = QApplication.translate("app", "Controller") + self.elements[6][0] = QApplication.translate("app", "Additional information") for element in self.elements: action: QAction = self.eyeBt.menu().addAction(element[0]) action.setCheckable(True) diff --git a/src/TournamentStreamHelper.py b/src/TournamentStreamHelper.py index 615d2c220..93cba5328 100755 --- a/src/TournamentStreamHelper.py +++ b/src/TournamentStreamHelper.py @@ -119,6 +119,7 @@ def flush(self): from .StateManager import StateManager from .SettingsManager import SettingsManager from .Helpers.TSHCountryHelper import TSHCountryHelper +from .Helpers.TSHControllerHelper import TSHControllerHelper from .TSHScoreboardManager import TSHScoreboardManager from .TSHThumbnailSettingsWidget import TSHThumbnailSettingsWidget from src.TSHAssetDownloader import TSHAssetDownloader diff --git a/src/i18n/TSH_de.ts b/src/i18n/TSH_de.ts index b3605fc1c..f65535be8 100644 --- a/src/i18n/TSH_de.ts +++ b/src/i18n/TSH_de.ts @@ -4,7 +4,7 @@ About - + About Über @@ -693,7 +693,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings @@ -749,7 +749,7 @@ p, li { white-space: pre-wrap; } app - + Player List Spielerliste @@ -820,7 +820,7 @@ p, li { white-space: pre-wrap; } - + Update @@ -831,29 +831,29 @@ p, li { white-space: pre-wrap; } Speichern unter - + The program will now close. Das Programm wird nun geschlossen. - + Thumbnail Settings Thumbnail-Einstellungen - + Bracket - + Tournament Info Turnierdaten - - + + Scoreboard Manager @@ -864,74 +864,74 @@ p, li { white-space: pre-wrap; } - + Commentary Kommentar - + Additional Notes - + Set tournament Turnier auswählen - - - + + + Load tournament and sets from StartGG user Turnier und Sets von StartGG-User laden - + Always on top Immer im Vordergrund halten - - + + Check for updates Auf Updates prüfen - + Download assets Assets herunterladen - + Light mode Heller Modus - + Toggle widgets Widgets ein- und ausschalten - - + + Migrate Layout - + Program Language Sprache des Programms - + System language Systemsprache - + Update download complete. The program will extract the update upon closing. @@ -940,8 +940,8 @@ p, li { white-space: pre-wrap; } Sprache für Exportiertes - - + + Same as program language gleich der Programmsprache @@ -954,166 +954,166 @@ p, li { white-space: pre-wrap; } Standardsprache Turnierphasenbezeichnung geändert. - + Game Asset Language - + Game Asset Language changed successfully. - + Tournament term language - + Tournament term language changed successfully. - + A new window has been opened in your default webbrowser. - + Help - + Open the Wiki - + Look for Help on the forum - + Report a bug - + Ask for Help on Discord - + Contribute to the Asset Database - + Number of Scoreboards - + Modify Tab Name - + Failed to fetch version from github: - + Updater - + New version available: Neue Version verfügbar: - + Update to latest version? Auf neueste Version updaten? - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES ACHTUNG! FÜR /layout/ WIRD EIN BACKUP ERSTELLT, ALLE ANDEREN VERZEICHNISSE WERDEN ÜBERSCHRIEBEN - + Change Tab Title - + Scoreboard Number - + Set Tab Title - + Migrate Scoreboard Layout - + File Path - + Find File... - + Open Layout Javascript File - + Javascript File - + Migration Complete - + Layout Migration has completed! - + Close Window - - + + Cancel Abbrechen - - + + Downloading update... Update wird heruntergeladen... - + Please ensure the layout folder or its contents aren't open in another application before closing this window. @@ -1122,7 +1122,7 @@ p, li { white-space: pre-wrap; } Update ausgeführt. - + Info Info @@ -1131,12 +1131,12 @@ p, li { white-space: pre-wrap; } Update durchgeführt! Das Programm wird beendet. - + You're already using the latest version Die neuese Version ist bereits installiert - + Update available! Update verfügbar! @@ -1150,7 +1150,7 @@ p, li { white-space: pre-wrap; } Name des Spiels - + Program language changed successfully. Sprache erfolgreich geändert. @@ -1310,7 +1310,7 @@ p, li { white-space: pre-wrap; } - + @@ -1323,29 +1323,29 @@ p, li { white-space: pre-wrap; } Set auswählen - - + + Additional information - - + + Save new player Neuen Spieler speichern - + Delete player entry Spielereintrag löschen - + Clear Zurücksetzen - + Update player Spielereintrag aktualisieren @@ -1354,7 +1354,7 @@ p, li { white-space: pre-wrap; } Punkte - + Stage @@ -1370,37 +1370,37 @@ p, li { white-space: pre-wrap; } - + Real Name Klarname - + Twitter Twitter - + Location Staat/Region - + Characters Charaktere - + Pronouns Pronomen - - + + Load set Set laden @@ -1409,18 +1409,18 @@ p, li { white-space: pre-wrap; } aktuelles Stream-Set laden - - + + TEAM {0} TEAM {0} - - - - - - + + + + + + Warning ACHTUNG @@ -1431,37 +1431,43 @@ p, li { white-space: pre-wrap; } - + + + Controller + + + + Stream URL - + Track sets from a stream or station - + TSH - Bluesky - + The post has successfully been sent to account {0} - + Load set from {0} Set von {0} laden - + Load user set ({0}) User-Set {0} laden - + Load user set User-Set laden @@ -1583,24 +1589,24 @@ p, li { white-space: pre-wrap; } punctuation - + ( - + ) - + [ - + ] @@ -1747,18 +1753,18 @@ p, li { white-space: pre-wrap; } thumb_app - + TSH - Thumbnail - + The thumbnail has been generated here: Thumbnail wurde erstellt: - + The video title and description have also been generated. @@ -1784,17 +1790,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: - + Retry - + Cancel Abbrechen diff --git a/src/i18n/TSH_en.ts b/src/i18n/TSH_en.ts index d533d154d..586e142c3 100644 --- a/src/i18n/TSH_en.ts +++ b/src/i18n/TSH_en.ts @@ -4,7 +4,7 @@ About - + About @@ -688,7 +688,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings @@ -744,7 +744,7 @@ p, li { white-space: pre-wrap; } app - + Player List @@ -800,7 +800,7 @@ p, li { white-space: pre-wrap; } - + Update @@ -826,40 +826,40 @@ p, li { white-space: pre-wrap; } - - - - - - + + + + + + Warning - + The program will now close. - + Thumbnail Settings - + Bracket - + Tournament Info - - + + Scoreboard Manager @@ -870,296 +870,296 @@ p, li { white-space: pre-wrap; } - + Stage - + Commentary - + Additional Notes - + Set tournament - - - + + + Load tournament and sets from StartGG user - + Always on top - - + + Check for updates - + Download assets - + Light mode - + Toggle widgets - - + + Migrate Layout - + Program Language - + Program language changed successfully. - + System language - + Game Asset Language - + Game Asset Language changed successfully. - - + + Same as program language - + Tournament term language - + Tournament term language changed successfully. - + A new window has been opened in your default webbrowser. - + Help - + Open the Wiki - + Look for Help on the forum - + Report a bug - + Ask for Help on Discord - + Contribute to the Asset Database - + Number of Scoreboards - + Modify Tab Name - + Failed to fetch version from github: - + Updater - + New version available: - + Update to latest version? - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES - + Change Tab Title - + Scoreboard Number - + Set Tab Title - + Migrate Scoreboard Layout - + File Path - + Find File... - + Open Layout Javascript File - + Javascript File - + Migration Complete - + Layout Migration has completed! - + Close Window - - + + Cancel - - + + Downloading update... - + Update download complete. The program will extract the update upon closing. - + Please ensure the layout folder or its contents aren't open in another application before closing this window. - + Info - + You're already using the latest version - + Update available! - - + + Additional information - - + + Save new player - + Delete player entry - + Clear - + @@ -1167,7 +1167,7 @@ p, li { white-space: pre-wrap; } - + Update player @@ -1183,31 +1183,31 @@ p, li { white-space: pre-wrap; } - + Real Name - + Twitter - + Location - + Characters - + Pronouns @@ -1217,49 +1217,55 @@ p, li { white-space: pre-wrap; } - + + + Controller + + + + Stream URL - - + + Load set - + Track sets from a stream or station - - + + TEAM {0} - + TSH - Bluesky - + The post has successfully been sent to account {0} - + Load set from {0} - + Load user set ({0}) - + Load user set @@ -1534,24 +1540,24 @@ p, li { white-space: pre-wrap; } punctuation - + ( - + ) - + [ - + ] @@ -1730,18 +1736,18 @@ p, li { white-space: pre-wrap; } thumb_app - + TSH - Thumbnail - + The thumbnail has been generated here: - + The video title and description have also been generated. @@ -1767,17 +1773,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: - + Retry - + Cancel diff --git a/src/i18n/TSH_es.ts b/src/i18n/TSH_es.ts index 86bd7babc..18e92eea7 100644 --- a/src/i18n/TSH_es.ts +++ b/src/i18n/TSH_es.ts @@ -4,7 +4,7 @@ About - + About Acerca de @@ -698,7 +698,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings @@ -754,7 +754,7 @@ p, li { white-space: pre-wrap; } app - + Player List Lista de Jugadores @@ -830,35 +830,35 @@ p, li { white-space: pre-wrap; } - + Update Actualizar - + Thumbnail Settings Configuración de Miniaturas - + The program will now close. El programa está a punto de cerrar - + Bracket - + Tournament Info Información del torneo - - + + Scoreboard Manager @@ -869,74 +869,74 @@ p, li { white-space: pre-wrap; } Marcador - + Commentary Comentario - + Additional Notes - + Set tournament Establecer torneo - - - + + + Load tournament and sets from StartGG user Cargar torneo y sets de usuario de StartGG - + Always on top Siempre arriba - - + + Check for updates Buscar actualizaciones - + Download assets Descargar archivos - + Light mode Modo claro - + Toggle widgets Habilitar/Deshabilitar widgets - - + + Migrate Layout - + Program Language Idioma del programa - + System language Idioma del sistema - + Update download complete. The program will extract the update upon closing. @@ -945,8 +945,8 @@ p, li { white-space: pre-wrap; } Exportar idioma - - + + Same as program language Igual al idioma del programa @@ -959,166 +959,166 @@ p, li { white-space: pre-wrap; } Idioma de nombre de fase modificado con éxito. - + Game Asset Language - + Game Asset Language changed successfully. - + Tournament term language - + Tournament term language changed successfully. - + A new window has been opened in your default webbrowser. - + Help - + Open the Wiki - + Look for Help on the forum - + Report a bug - + Ask for Help on Discord - + Contribute to the Asset Database - + Number of Scoreboards - + Modify Tab Name - + Failed to fetch version from github: No se pudo obtener la versión de github: - + Updater Actualizador - + New version available: Nueva versión disponible: - + Update to latest version? ¿Actualizar a la última versión? - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES NOTA: REALIZARÁ UNA COPIA DE SEGURIDAD DE /layout/ Y SOBRESCRIBIRÁ LOS DATOS EN TODOS LOS DEMÁS DIRECTORIOS - + Change Tab Title - + Scoreboard Number - + Set Tab Title - + Migrate Scoreboard Layout - + File Path - + Find File... - + Open Layout Javascript File - + Javascript File - + Migration Complete - + Layout Migration has completed! - + Close Window - - + + Cancel Cancelar - - + + Downloading update... Descargando actualización... - + Please ensure the layout folder or its contents aren't open in another application before closing this window. @@ -1127,7 +1127,7 @@ p, li { white-space: pre-wrap; } Actualización completada - + Info Info @@ -1136,12 +1136,12 @@ p, li { white-space: pre-wrap; } Actualizacion completa. El programa se cerrará ahora. - + You're already using the latest version Ya estás usando la última versión - + Update available! ¡Actualización disponible! @@ -1159,7 +1159,7 @@ p, li { white-space: pre-wrap; } Nombre del juego - + Program language changed successfully. El idioma del programa ha sido cambiado exitosamente @@ -1324,29 +1324,29 @@ p, li { white-space: pre-wrap; } Seleccione un set - - + + Additional information - - + + Save new player Guardar nuevo jugador - + Delete player entry Eliminar jugador - + Clear Borrar - + @@ -1354,7 +1354,7 @@ p, li { white-space: pre-wrap; } Jugador {0} - + Update player Actualizar jugador @@ -1363,7 +1363,7 @@ p, li { white-space: pre-wrap; } Marcador - + Stage @@ -1379,37 +1379,37 @@ p, li { white-space: pre-wrap; } - + Real Name Nombre Real - + Twitter - + Location Localidad - + Characters Personajes - + Pronouns Pronombres - - + + Load set Cargar set @@ -1418,18 +1418,18 @@ p, li { white-space: pre-wrap; } Cargar set actual desde el stream - - + + TEAM {0} EQUIPO {0} - - - - - - + + + + + + Warning Aviso @@ -1440,37 +1440,43 @@ p, li { white-space: pre-wrap; } - + + + Controller + + + + Stream URL - + Track sets from a stream or station - + TSH - Bluesky - + The post has successfully been sent to account {0} - + Load set from {0} Cargar set de {0} - + Load user set ({0}) Cargar set de usuario ({0}) - + Load user set Cargar set de usuario @@ -1596,23 +1602,23 @@ p, li { white-space: pre-wrap; } punctuation - + [ - + ] - + ( - + ) @@ -1770,18 +1776,18 @@ p, li { white-space: pre-wrap; } Falta la tag del jugador {0} - + TSH - Thumbnail - + The thumbnail has been generated here: La miniatura se generó aquí: - + The video title and description have also been generated. @@ -1797,17 +1803,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: - + Retry - + Cancel Cancelar diff --git a/src/i18n/TSH_fr.qm b/src/i18n/TSH_fr.qm index 9f8dd51ec..c09c1e4a8 100644 Binary files a/src/i18n/TSH_fr.qm and b/src/i18n/TSH_fr.qm differ diff --git a/src/i18n/TSH_fr.ts b/src/i18n/TSH_fr.ts index e14b3680a..dbef51ac0 100644 --- a/src/i18n/TSH_fr.ts +++ b/src/i18n/TSH_fr.ts @@ -4,7 +4,7 @@ About - + About À propos du programme @@ -693,7 +693,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings Paramètres @@ -749,18 +749,18 @@ p, li { white-space: pre-wrap; } app - + Thumbnail Settings Paramètres de la miniature - + Bracket Arbre - + Tournament Info Info Tournoi @@ -771,19 +771,19 @@ p, li { white-space: pre-wrap; } Tableau des scores - + Commentary Commentateurs - + Player List Liste de joueurs - + Set tournament Définir le tournoi @@ -792,36 +792,36 @@ p, li { white-space: pre-wrap; } Charger le set d'un utilisateur Start.gg - + Always on top Toujours visible - - + + Check for updates Vérifier les mises à jour - + Download assets Télécharger des ressources - + Light mode Mode clair - + Toggle widgets Activer des gadgets - - - + + + Load tournament and sets from StartGG user Charger un tournoi et des sets depuis un utilisateur StartGG @@ -830,7 +830,7 @@ p, li { white-space: pre-wrap; } Échec de la récupération de la version depuis Github - + Updater Mise à jour @@ -839,7 +839,7 @@ p, li { white-space: pre-wrap; } Nouvelle version disponible : - + Update to latest version? Voulez-vous installer la nouvelle version ? @@ -848,7 +848,7 @@ p, li { white-space: pre-wrap; } NOTE : CRÉERA UNE COPIE DU DOSSIER /layout/ ET ÉCRASERA LES DONNÉES PRÉSENTES DANS /assets/ - + Update Mettre à jour @@ -858,49 +858,49 @@ p, li { white-space: pre-wrap; } Téléchargement de la mise à jour... - - + + Cancel Annuler - - + + Downloading update... Téléchargement de la mise à jour... - + Failed to fetch version from github: Échec de la récupération de la version depuis Github : - + The program will now close. Le programme va maintenant se fermer. - - + + Scoreboard Manager Tableaux des scores - + Additional Notes Notes - - + + Migrate Layout Migrer des graphismes externes - + Program Language Langue du programme @@ -909,7 +909,7 @@ p, li { white-space: pre-wrap; } La langue du programme a été modifiée. - + System language Langue système @@ -922,28 +922,28 @@ p, li { white-space: pre-wrap; } La langue d'export a été changée. - - + + Same as program language Identique à la langue du programme - + Number of Scoreboards Nombre de tableaux des scores - + Modify Tab Name Renommer un tableau - + New version available: Nouvelle version disponible : - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES NOTE : CRÉERA UNE COPIE DU DOSSIER /layout/ ET ÉCRASERA LES DONNÉES PRÉSENTES DANS LES AUTRES RÉPERTOIRES @@ -952,12 +952,12 @@ p, li { white-space: pre-wrap; } Mise à jour réussie. Le programme va maintenant se fermer. - + You're already using the latest version Vous utilisez déjà la dernière version du programme - + Update available! Mise à jour disponible ! @@ -970,7 +970,7 @@ p, li { white-space: pre-wrap; } Nom du jeu - + Program language changed successfully. La langue du programme a été modifiée. @@ -987,122 +987,122 @@ p, li { white-space: pre-wrap; } La langue par défaut des noms de phase a été modifiée. - + Game Asset Language Langue de la terminologie du jeu - + Game Asset Language changed successfully. La langue de la terminologie du jeu a été modifiée. - + Tournament term language Langue de la terminologie de tournoi - + Tournament term language changed successfully. La langue de la terminologie de tournoi a été modifiée. - + A new window has been opened in your default webbrowser. Une nouvelle fenêtre a été ouverte dans votre navigateur web par défaut. - + Help Aide (Anglais) - + Open the Wiki Ouvrir le Wiki - + Look for Help on the forum Demander de l'aide sur le Forum - + Report a bug Ouvrir un bug - + Ask for Help on Discord Demander de l'aide sur Discord - + Contribute to the Asset Database Contribuer aux ressources - + Change Tab Title Modifier le nom d’un tableau des scores - + Scoreboard Number Numéro du tableau des scores - + Set Tab Title Modifier le nom - + Migrate Scoreboard Layout Migrer des graphismes externes (Tableau des scores) - + File Path Chemin du fichier - + Find File... Explorer - + Open Layout Javascript File Ouvrir un fichier Javascript - + Javascript File Fichier code source Javascript - + Migration Complete Migration terminée - + Layout Migration has completed! La migration a été effectuée avec succès ! - + Close Window Fermer la fenêtre - + Update download complete. The program will extract the update upon closing. Le téléchargement de la mise à jour est terminé. Celle-ci sera installée lors de la fermeture du programme. - + Please ensure the layout folder or its contents aren't open in another application before closing this window. Veuillez vérifier que le dossier layout et son contenu ne sont pas ouverts dans une autre application avant de fermer cette fenêtre. @@ -1111,7 +1111,7 @@ p, li { white-space: pre-wrap; } Mise à jour réussie. - + Info Information @@ -1240,29 +1240,29 @@ p, li { white-space: pre-wrap; } Copier le texte - - + + Additional information Informations supplémentaires - - + + Save new player Sauvegarder le joueur - + Delete player entry Supprimer le joueur - + Clear Effacer - + @@ -1270,7 +1270,7 @@ p, li { white-space: pre-wrap; } Joueur {0} - + Update player Mettre à jour le joueur @@ -1309,7 +1309,7 @@ p, li { white-space: pre-wrap; } Score - + Stage Stage @@ -1333,13 +1333,19 @@ p, li { white-space: pre-wrap; } Envoyer un post sur Bluesky - + + + Controller + Manette + + + Stream URL URL du stream - - + + Load set Charger un set @@ -1352,49 +1358,49 @@ p, li { white-space: pre-wrap; } Suivre les matchs d’un poste de jeu - - + + TEAM {0} ÉQUIPE {0} - - - - - - + + + + + + Warning Attention - + Track sets from a stream or station Suivre les matchs en cours sur un stream ou un poste de jeu - + TSH - Bluesky TSH - Bluesky - + The post has successfully been sent to account {0} Le post a été envoyé sur le compte {0} - + Load set from {0} Charger un set depuis {0} - + Load user set ({0}) Charger le set de l'utilisateur {0} - + Load user set Charger un set utilisateur @@ -1509,31 +1515,31 @@ p, li { white-space: pre-wrap; } - + Real Name Nom Réel - + Twitter Twitter - + Location Lieu - + Characters Personnages - + Pronouns Pronoms @@ -1643,23 +1649,23 @@ p, li { white-space: pre-wrap; } punctuation - + [ [ - + ] ] - + ( ( - + ) ) @@ -1821,18 +1827,18 @@ p, li { white-space: pre-wrap; } Miniature sauvegardée sous {0}/{1}.png et {0}/{1}.jpg - + TSH - Thumbnail TSH - Miniature - + The thumbnail has been generated here: La miniature a été enregistrée à l'emplacement suivant : - + The video title and description have also been generated. Le titre et la description de la vidéo ont également été générés. @@ -1848,17 +1854,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: Une erreur est survenue lors de la copie du dossier layout : - + Retry Réessayer - + Cancel Annuler diff --git a/src/i18n/TSH_it.ts b/src/i18n/TSH_it.ts index f5ca88ec0..fb10869a6 100644 --- a/src/i18n/TSH_it.ts +++ b/src/i18n/TSH_it.ts @@ -4,7 +4,7 @@ About - + About A proposito dell'applicazione @@ -688,7 +688,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings @@ -744,40 +744,40 @@ p, li { white-space: pre-wrap; } app - - - - - - + + + + + + Warning Avvertimento - + The program will now close. - + Thumbnail Settings Impostazioni delle miniature - + Bracket - + Tournament Info - - + + Scoreboard Manager @@ -788,281 +788,281 @@ p, li { white-space: pre-wrap; } Tabellone - + Stage Scenario - + Commentary Commentatori - + Player List Elenco di giocatori - + Additional Notes - + Set tournament - - - + + + Load tournament and sets from StartGG user - + Always on top - - + + Check for updates - + Download assets - + Light mode - + Toggle widgets - - + + Migrate Layout - + Program Language Lingua dell'applicazione - + Program language changed successfully. - + System language Lingua del sistema - + Game Asset Language Lingua delle risorse dei giochi - + Game Asset Language changed successfully. - - + + Same as program language Identica alla lingua dell'applicazione - + Tournament term language Lingua della terminologia di torneo - + Tournament term language changed successfully. - + A new window has been opened in your default webbrowser. - + Help Aiuto (Inglese) - + Open the Wiki Aprire il Wiki - + Look for Help on the forum - + Report a bug Segnalare un bug - + Ask for Help on Discord Chiedere aiuto su Discord - + Contribute to the Asset Database Contribuire alla base di risorse - + Number of Scoreboards - + Modify Tab Name - + Failed to fetch version from github: - + Updater Aggiornatore - + New version available: È disponibile una nuova versione: - + Update to latest version? Si vuole installare la nuova versione? - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES - + Change Tab Title - + Scoreboard Number - + Set Tab Title - + Migrate Scoreboard Layout - + File Path - + Find File... - + Open Layout Javascript File - + Javascript File - + Migration Complete - + Layout Migration has completed! - + Close Window - + Update Aggiornare - - + + Cancel Annulare - - + + Downloading update... Scaricamento dell'aggiornamento... - + Update download complete. The program will extract the update upon closing. - + Please ensure the layout folder or its contents aren't open in another application before closing this window. - + Info Informazioni - + You're already using the latest version - + Update available! È disponibile una nuova versione! @@ -1193,29 +1193,29 @@ p, li { white-space: pre-wrap; } - - + + Additional information - - + + Save new player - + Delete player entry - + Clear - + @@ -1223,7 +1223,7 @@ p, li { white-space: pre-wrap; } Giocatore {0} - + Update player Aggionare il giocatore @@ -1269,31 +1269,31 @@ p, li { white-space: pre-wrap; } - + Real Name Nome legale - + Twitter - + Location - + Characters Personaggi - + Pronouns @@ -1303,49 +1303,55 @@ p, li { white-space: pre-wrap; } - + + + Controller + + + + Stream URL - - + + Load set - + Track sets from a stream or station - - + + TEAM {0} - + TSH - Bluesky - + The post has successfully been sent to account {0} - + Load set from {0} - + Load user set ({0}) - + Load user set @@ -1534,24 +1540,24 @@ p, li { white-space: pre-wrap; } punctuation - + ( - + ) - + [ - + ] @@ -1698,18 +1704,18 @@ p, li { white-space: pre-wrap; } thumb_app - + TSH - Thumbnail TSH - Miniatura - + The thumbnail has been generated here: - + The video title and description have also been generated. @@ -1735,17 +1741,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: - + Retry - + Cancel Annulare diff --git a/src/i18n/TSH_ja.ts b/src/i18n/TSH_ja.ts index d730c424c..018a0ae34 100644 --- a/src/i18n/TSH_ja.ts +++ b/src/i18n/TSH_ja.ts @@ -4,7 +4,7 @@ About - + About このプログラムについて @@ -701,7 +701,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings @@ -757,19 +757,19 @@ p, li { white-space: pre-wrap; } app - + Thumbnail Settings サムネイルの設定 - + Tournament Info 大会情報 - - + + Scoreboard Manager @@ -780,73 +780,73 @@ p, li { white-space: pre-wrap; } スコアボード - + Commentary 解説 - + Player List プレイヤーリスト - + Set tournament 大会を選ぶ - - - + + + Load tournament and sets from StartGG user 大会と対戦データをStartGGからロードする - + Always on top 常に手前に表示 - - + + Check for updates 更新情報を調べる - + Download assets アセットをダウンロードする - + Light mode ライトモード - + Toggle widgets ツールの表示 - + Program Language プログラムの表示言語 - + System language システムの表示言語と同じにする - + Update download complete. The program will extract the update upon closing. - + Please ensure the layout folder or its contents aren't open in another application before closing this window. @@ -855,38 +855,38 @@ p, li { white-space: pre-wrap; } エクスポート物の言語 - - + + Same as program language プログラムの表示言語と同じにする - + A new window has been opened in your default webbrowser. 既定のウェブブラウザで新しいウィンドウが開きました。 - + Help ヘルプ - + Open the Wiki ウィキを開く - + Report a bug バグを報告する - + Ask for Help on Discord ディスコードで質問する - + Contribute to the Asset Database アセットデータベースに貢献する @@ -895,7 +895,7 @@ p, li { white-space: pre-wrap; } 更新が完了しました。 - + Info このプログラムについて @@ -905,22 +905,22 @@ p, li { white-space: pre-wrap; } アセットパック名 - + Updater アップデータ - + The program will now close. プログラムを閉じます。 - + Bracket トーナメント表 - + Program language changed successfully. プログラムの表示言語を変更しました。 @@ -929,144 +929,144 @@ p, li { white-space: pre-wrap; } エクスポート物の言語を変更しました。 - + Update to latest version? 最新のバージョンに更新しますか? - + Update アップデート - - + + Cancel キャンセル - - + + Downloading update... アップデートをダウンロードしています… - + Failed to fetch version from github: 最新のバージョンをGitHubから読み込むのに失敗しました - + Additional Notes - - + + Migrate Layout - + Game Asset Language ゲームアセットの言語 - + Game Asset Language changed successfully. ゲームアセットの言語を変更しました。 - + Tournament term language トーナメント用語の言語 - + Tournament term language changed successfully. トーナメント用語の言語を変更しました - + Look for Help on the forum - + Number of Scoreboards - + Modify Tab Name - + New version available: 新しいバージョンがあります - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES 注意:/layout/に入っているファイルは保存されますが、他のディレクトリのデータは上書きされます - + Change Tab Title - + Scoreboard Number - + Set Tab Title - + Migrate Scoreboard Layout - + File Path - + Find File... - + Open Layout Javascript File - + Javascript File - + Migration Complete - + Layout Migration has completed! - + Close Window @@ -1075,12 +1075,12 @@ p, li { white-space: pre-wrap; } 更新が完了しました。ソフトを閉じます。 - + You're already using the latest version このソフトはすでに最新のバージョンです - + Update available! アップデートがあります! @@ -1212,29 +1212,29 @@ p, li { white-space: pre-wrap; } - - + + Additional information - - + + Save new player プレイヤーエントリーを保存 - + Delete player entry プレイヤーエントリーを削除 - + Clear リセット - + @@ -1242,7 +1242,7 @@ p, li { white-space: pre-wrap; } プレイヤー{0} - + Update player プレイヤーエントリーを更新 @@ -1386,7 +1386,7 @@ p, li { white-space: pre-wrap; } スコア - + Stage ステージ @@ -1397,64 +1397,64 @@ p, li { white-space: pre-wrap; } - + Real Name 本名 - + Twitter ツイッター - + Location 本拠地 - + Characters 使用キャラクター - + Pronouns 代名詞 - - + + Load set 対戦データをロードする - + Track sets from a stream or station - - + + TEAM {0} チーム{0} - - - - - - + + + + + + Warning 注意 - + Load set from {0} {0}から対戦データをロードする @@ -1473,27 +1473,33 @@ p, li { white-space: pre-wrap; } - + + + Controller + + + + Stream URL - + TSH - Bluesky - + The post has successfully been sent to account {0} - + Load user set ({0}) ユーザーの対戦データ({0})をロードする - + Load user set ユーザーの対戦データをロードする @@ -1599,23 +1605,23 @@ p, li { white-space: pre-wrap; } punctuation - + [ [ - + ] ] - + ( ( - + ) ) @@ -1773,18 +1779,18 @@ p, li { white-space: pre-wrap; } プレイヤー{0}のタグがありません - + TSH - Thumbnail TSH - サムネイル - + The thumbnail has been generated here: サムネイルはここに作成されました: - + The video title and description have also been generated. @@ -1800,17 +1806,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: - + Retry - + Cancel キャンセル diff --git a/src/i18n/TSH_pt-BR.ts b/src/i18n/TSH_pt-BR.ts index 7ad3b3014..55f121ba5 100644 --- a/src/i18n/TSH_pt-BR.ts +++ b/src/i18n/TSH_pt-BR.ts @@ -4,7 +4,7 @@ About - + About Sobre @@ -700,7 +700,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings Configurações @@ -756,24 +756,24 @@ p, li { white-space: pre-wrap; } app - + Thumbnail Settings Configurações de Thumbnail - + Bracket Chave - + Tournament Info Informações do Torneio - - + + Scoreboard Manager Gerenciador de Placares @@ -784,25 +784,25 @@ p, li { white-space: pre-wrap; } Placar - + Commentary Comentário - + Player List Lista de Jogadores - + Additional Notes - + Set tournament Definir torneio @@ -811,36 +811,36 @@ p, li { white-space: pre-wrap; } Carregar set de usuário do StartGG - + Always on top Permanecer no topo - - + + Check for updates Verificar por atualizações - + Download assets Baixar conteúdo de jogos - + Light mode Modo claro - + Toggle widgets Ativar/Desativar widgets - - - + + + Load tournament and sets from StartGG user Carregar torneio e sets de usuário do StartGG @@ -849,7 +849,7 @@ p, li { white-space: pre-wrap; } Falhou em obter versão do github - + Updater Atualizador @@ -858,7 +858,7 @@ p, li { white-space: pre-wrap; } Nova atualização disponível: - + Update to latest version? Atualizar para a versão mais recente? @@ -867,7 +867,7 @@ p, li { white-space: pre-wrap; } NOTA: UM BACKUP DE /layout/ SERÁ FEITO, MAS TODOS OS DADOS EM /assets/ SERÃO SUBSTITUIDOS - + Update Atualizar @@ -885,16 +885,16 @@ p, li { white-space: pre-wrap; } Nova versão disponível - - + + Cancel Cancelar - - + + Downloading update... Baixando atualização... @@ -903,17 +903,17 @@ p, li { white-space: pre-wrap; } Baixando atualização - + Failed to fetch version from github: Falhou em obter a versão do github: - + New version available: Nova versão disponível: - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES OBS: IRÁ FAZER UM BACKUP DE /layout/ E SUBSTITUIR OS DADOS EM TODAS AS OUTRAS PASTAS @@ -922,12 +922,12 @@ p, li { white-space: pre-wrap; } Atualização completa. O programa será fechado agora. - + You're already using the latest version Você já está utilizando a última versão - + Update available! Atualização disponível! @@ -940,18 +940,18 @@ p, li { white-space: pre-wrap; } Nome do jogo - + The program will now close. O programa será fechado agora. - - + + Migrate Layout Migrar layout - + Program Language Idioma do programa @@ -960,7 +960,7 @@ p, li { white-space: pre-wrap; } Idioma do programa modificado com sucesso. - + System language Idioma do sistema @@ -973,7 +973,7 @@ p, li { white-space: pre-wrap; } Idioma de exportação modificado com sucesso. - + Program language changed successfully. Idioma do programa modificado com sucesso. @@ -982,8 +982,8 @@ p, li { white-space: pre-wrap; } Idioma de exportação modificado com sucesso. - - + + Same as program language Igual ao idioma do programa @@ -996,132 +996,132 @@ p, li { white-space: pre-wrap; } Idioma de nome de fase modificado com sucesso. - + Game Asset Language Idioma dos arquivos de jogo - + Game Asset Language changed successfully. Idioma dos arquivos de jogo alterado com sucesso. - + Tournament term language Idioma dos termos de torneio - + Tournament term language changed successfully. Idioma dos termos de torneio alterado com sucesso. - + A new window has been opened in your default webbrowser. Uma janela foi aberta no seu navegador de internet padrão. - + Help Ajuda - + Open the Wiki Abrir a Wiki - + Look for Help on the forum Procurar por ajuda no fórum - + Report a bug Reportar um bug - + Ask for Help on Discord Pedir ajuda no Discord - + Contribute to the Asset Database Contribuir para a Asset Database - + Number of Scoreboards Número de Placares - + Modify Tab Name Mudar nome da aba - + Change Tab Title Mudar título da aba - + Scoreboard Number Número de Placares - + Set Tab Title Definir título da aba - + Migrate Scoreboard Layout Migrar layout de placar - + File Path Caminho do arquivo - + Find File... Procurar arquivo... - + Open Layout Javascript File Abrir arquivo Javascript de layout - + Javascript File Arquivo Javascript - + Migration Complete Migração completa - + Layout Migration has completed! Migração de layout completa! - + Close Window Fechar janela - + Update download complete. The program will extract the update upon closing. Download da atualização completo. O programa irá fechar para extrair a atualização. - + Please ensure the layout folder or its contents aren't open in another application before closing this window. Certifique-se de que a pasta layout e seu conteúdo não estão abertos em outra aplicação antes de fechar esta janela @@ -1130,7 +1130,7 @@ p, li { white-space: pre-wrap; } Atualização completa. - + Info Informação @@ -1259,29 +1259,29 @@ p, li { white-space: pre-wrap; } Copiar texto - - + + Additional information - - + + Save new player Salvar novo jogador - + Delete player entry Deletar jogador - + Clear Limpar - + @@ -1289,7 +1289,7 @@ p, li { white-space: pre-wrap; } Jogador {0} - + Update player Atualizar jogador @@ -1441,7 +1441,7 @@ p, li { white-space: pre-wrap; } Placar - + Stage @@ -1456,64 +1456,64 @@ p, li { white-space: pre-wrap; } - + Real Name Nome Real - + Twitter - + Location Local - + Characters Personagens - + Pronouns Pronomes - - + + Load set Carregar set - + Track sets from a stream or station Seguir os sets de um stream ou uma estação - - + + TEAM {0} TIME {0} - - - - - - + + + + + + Warning Aviso - + Load set from {0} Carregar set do {0} @@ -1532,27 +1532,33 @@ p, li { white-space: pre-wrap; } Postar no Bluesky - + + + Controller + + + + Stream URL URL da transmissão - + TSH - Bluesky - + The post has successfully been sent to account {0} O post foi enviado com sucesso para a conta {0} - + Load user set ({0}) Carregar set do usuário ({0}) - + Load user set Carregar set do usuário @@ -1662,23 +1668,23 @@ p, li { white-space: pre-wrap; } punctuation - + [ [ - + ] ] - + ( ( - + ) ) @@ -1872,18 +1878,18 @@ p, li { white-space: pre-wrap; } Tag do jogador {0} não está presente - + TSH - Thumbnail - + The thumbnail has been generated here: A miniatura foi gerada aqui: - + The video title and description have also been generated. O título e a descrição para o vídeo também foram gerados. @@ -1899,17 +1905,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: Erro ao fazer backup da pasta layout: - + Retry Tentar novamente - + Cancel Cancelar diff --git a/src/i18n/TSH_zh-CN.ts b/src/i18n/TSH_zh-CN.ts index cc90825ba..b0d3eaf60 100644 --- a/src/i18n/TSH_zh-CN.ts +++ b/src/i18n/TSH_zh-CN.ts @@ -4,7 +4,7 @@ About - + About @@ -688,7 +688,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings @@ -744,40 +744,40 @@ p, li { white-space: pre-wrap; } app - - - - - - + + + + + + Warning - + The program will now close. - + Thumbnail Settings - + Bracket - + Tournament Info - - + + Scoreboard Manager @@ -788,281 +788,281 @@ p, li { white-space: pre-wrap; } - + Stage - + Commentary - + Player List - + Additional Notes - + Set tournament - - - + + + Load tournament and sets from StartGG user - + Always on top - - + + Check for updates - + Download assets - + Light mode - + Toggle widgets - - + + Migrate Layout - + Program Language 应用语言 - + Program language changed successfully. - + System language - + Game Asset Language 游戏术语语言 - + Game Asset Language changed successfully. - - + + Same as program language - + Tournament term language 比赛术语语言 - + Tournament term language changed successfully. - + A new window has been opened in your default webbrowser. - + Help 帮助 (英文) - + Open the Wiki - + Look for Help on the forum - + Report a bug - + Ask for Help on Discord - + Contribute to the Asset Database - + Number of Scoreboards - + Modify Tab Name - + Failed to fetch version from github: - + Updater - + New version available: - + Update to latest version? - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES - + Change Tab Title - + Scoreboard Number - + Set Tab Title - + Migrate Scoreboard Layout - + File Path - + Find File... - + Open Layout Javascript File - + Javascript File - + Migration Complete - + Layout Migration has completed! - + Close Window - + Update - - + + Cancel - - + + Downloading update... - + Update download complete. The program will extract the update upon closing. - + Please ensure the layout folder or its contents aren't open in another application before closing this window. - + Info - + You're already using the latest version - + Update available! @@ -1193,29 +1193,29 @@ p, li { white-space: pre-wrap; } - - + + Additional information - - + + Save new player - + Delete player entry - + Clear - + @@ -1223,7 +1223,7 @@ p, li { white-space: pre-wrap; } - + Update player @@ -1269,31 +1269,31 @@ p, li { white-space: pre-wrap; } - + Real Name - + Twitter - + Location - + Characters 角色 - + Pronouns @@ -1303,49 +1303,55 @@ p, li { white-space: pre-wrap; } - + + + Controller + + + + Stream URL - - + + Load set - + Track sets from a stream or station - - + + TEAM {0} - + TSH - Bluesky - + The post has successfully been sent to account {0} - + Load set from {0} - + Load user set ({0}) - + Load user set @@ -1534,24 +1540,24 @@ p, li { white-space: pre-wrap; } punctuation - + ( - + ) - + [ - + ] @@ -1698,18 +1704,18 @@ p, li { white-space: pre-wrap; } thumb_app - + TSH - Thumbnail TSH - 缩略图 - + The thumbnail has been generated here: - + The video title and description have also been generated. @@ -1735,17 +1741,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: - + Retry - + Cancel diff --git a/src/i18n/TSH_zh-TW.ts b/src/i18n/TSH_zh-TW.ts index e53d38483..b8a4c3e0d 100644 --- a/src/i18n/TSH_zh-TW.ts +++ b/src/i18n/TSH_zh-TW.ts @@ -4,7 +4,7 @@ About - + About @@ -688,7 +688,7 @@ p, li { white-space: pre-wrap; } Settings - + Settings @@ -744,40 +744,40 @@ p, li { white-space: pre-wrap; } app - - - - - - + + + + + + Warning - + The program will now close. - + Thumbnail Settings - + Bracket - + Tournament Info - - + + Scoreboard Manager @@ -788,281 +788,281 @@ p, li { white-space: pre-wrap; } - + Stage - + Commentary - + Player List - + Additional Notes - + Set tournament - - - + + + Load tournament and sets from StartGG user - + Always on top - - + + Check for updates - + Download assets - + Light mode - + Toggle widgets - - + + Migrate Layout - + Program Language 應用語言 - + Program language changed successfully. - + System language - + Game Asset Language 遊戲術語語言 - + Game Asset Language changed successfully. - - + + Same as program language - + Tournament term language 比賽術語語言 - + Tournament term language changed successfully. - + A new window has been opened in your default webbrowser. - + Help 幫助 (英文) - + Open the Wiki - + Look for Help on the forum - + Report a bug - + Ask for Help on Discord - + Contribute to the Asset Database - + Number of Scoreboards - + Modify Tab Name - + Failed to fetch version from github: - + Updater - + New version available: - + Update to latest version? - + NOTE: WILL BACKUP /layout/ AND OVERWRITE DATA IN ALL OTHER DIRECTORIES - + Change Tab Title - + Scoreboard Number - + Set Tab Title - + Migrate Scoreboard Layout - + File Path - + Find File... - + Open Layout Javascript File - + Javascript File - + Migration Complete - + Layout Migration has completed! - + Close Window - + Update - - + + Cancel - - + + Downloading update... - + Update download complete. The program will extract the update upon closing. - + Please ensure the layout folder or its contents aren't open in another application before closing this window. - + Info - + You're already using the latest version - + Update available! @@ -1193,29 +1193,29 @@ p, li { white-space: pre-wrap; } - - + + Additional information - - + + Save new player - + Delete player entry - + Clear - + @@ -1223,7 +1223,7 @@ p, li { white-space: pre-wrap; } - + Update player @@ -1269,31 +1269,31 @@ p, li { white-space: pre-wrap; } - + Real Name - + Twitter - + Location - + Characters 角色 - + Pronouns @@ -1303,49 +1303,55 @@ p, li { white-space: pre-wrap; } - + + + Controller + + + + Stream URL - - + + Load set - + Track sets from a stream or station - - + + TEAM {0} - + TSH - Bluesky - + The post has successfully been sent to account {0} - + Load set from {0} - + Load user set ({0}) - + Load user set @@ -1534,24 +1540,24 @@ p, li { white-space: pre-wrap; } punctuation - + ( - + ) - + [ - + ] @@ -1698,18 +1704,18 @@ p, li { white-space: pre-wrap; } thumb_app - + TSH - Thumbnail - + The thumbnail has been generated here: - + The video title and description have also been generated. @@ -1735,17 +1741,17 @@ p, li { white-space: pre-wrap; } updater - + Error while backing up the layout folder: - + Retry - + Cancel diff --git a/src/layout/TSHScoreboardPlayer.ui b/src/layout/TSHScoreboardPlayer.ui index 46c015cd6..518ab5927 100644 --- a/src/layout/TSHScoreboardPlayer.ui +++ b/src/layout/TSHScoreboardPlayer.ui @@ -168,7 +168,7 @@ - + diff --git a/test/test_eyesights.py b/test/test_eyesights.py index d2bcaec50..27acf91e0 100644 --- a/test/test_eyesights.py +++ b/test/test_eyesights.py @@ -112,4 +112,4 @@ def draw_eyesight(game, asset_pack): for game in tested_assets.keys(): for asset_pack in tested_assets[game]: - draw_eyesight(game, asset_pack) + draw_eyesight(game, asset_pack) \ No newline at end of file