From 3872c80a9e6190a58cf57a0509d2438e6c8002a1 Mon Sep 17 00:00:00 2001 From: iZePlayz <69536095+iZePlayzYT@users.noreply.github.com> Date: Thu, 20 Nov 2025 21:57:20 +0100 Subject: [PATCH] moved chat settings to a new sub menu in options --- .cursorignore | 1 + lang/Czech.ini | 25 ++++++++------- lang/Dutch.ini | 25 ++++++++------- lang/English.ini | 25 ++++++++------- lang/French.ini | 25 ++++++++------- lang/German.ini | 25 ++++++++------- lang/Italian.ini | 25 ++++++++------- lang/Japanese.ini | 25 ++++++++------- lang/Polish.ini | 25 ++++++++------- lang/Portuguese.ini | 25 ++++++++------- lang/Russian.ini | 25 ++++++++------- lang/Spanish.ini | 25 ++++++++------- src/pc/djui/djui_panel_chat.c | 53 +++++++++++++++++++++++++++++++ src/pc/djui/djui_panel_chat.h | 6 ++++ src/pc/djui/djui_panel_controls.c | 27 ---------------- src/pc/djui/djui_panel_options.c | 2 ++ 16 files changed, 216 insertions(+), 148 deletions(-) create mode 100644 .cursorignore create mode 100644 src/pc/djui/djui_panel_chat.c create mode 100644 src/pc/djui/djui_panel_chat.h diff --git a/.cursorignore b/.cursorignore new file mode 100644 index 000000000..6f9f00ff4 --- /dev/null +++ b/.cursorignore @@ -0,0 +1 @@ +# Add directories or file patterns to ignore during indexing (e.g. foo/ or *.csv) diff --git a/lang/Czech.ini b/lang/Czech.ini index f712b1930..bc054f3e5 100644 --- a/lang/Czech.ini +++ b/lang/Czech.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Debug Errors" MISC_TITLE = "JINE" PAUSE_IN_SINGLEPLAYER = "Pauza v hře s jedním hráčem" DISABLE_POPUPS = "Vypnout vyskakovací okna" -USE_STANDARD_KEY_BINDINGS_CHAT = "Použít ovládání chatu Terminal/CMD" -CHAT_WIDTH = "Šířka chatu" -CHAT_WIDTH_TINY = "Drobná" -CHAT_WIDTH_VERY_SMALL = "Velmi malá" -CHAT_WIDTH_SMALL = "Malá" -CHAT_WIDTH_NORMAL = "Normální" -CHAT_WIDTH_BIG = "Velká" -CHAT_WIDTH_VERY_BIG = "Velmi velká" -CHAT_WIDTH_HUGE = "Obrovská" -CHAT_CHAR_COUNTER = "Zobrazit počitadlo znaků chatu" -DISABLE_CHAT_WHEN_CLOSED = "Skrýt chat, když je zavřený" MENU_OPTIONS = "Nastavení hlavního menu" INFORMATION = "Informace" DEBUG = "Debug" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Povolit kompatibilitu sm64ex-coop" R_BUTTON = "Tlačítko R - Možnosti" L_BUTTON = "Tlačítko L - Znovu načíst aktivní mody" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Použít ovládání chatu Terminal/CMD" +CHAT_WIDTH = "Šířka chatu" +CHAT_SIZE_TINY = "Drobná" +CHAT_SIZE_VERY_SMALL = "Velmi malá" +CHAT_SIZE_SMALL = "Malá" +CHAT_SIZE_NORMAL = "Normální" +CHAT_SIZE_BIG = "Velká" +CHAT_SIZE_VERY_BIG = "Velmi velká" +CHAT_SIZE_HUGE = "Obrovská" +CHAT_CHAR_COUNTER = "Zobrazit počitadlo znaků chatu" +DISABLE_CHAT_WHEN_CLOSED = "Skrýt chat, když je zavřený" + [INFORMATION] INFORMATION_TITLE = "INFORMACE" CHANGELOG = "Záznam změn" @@ -356,6 +358,7 @@ OPTIONS = "NASTAVENI" PLAYER = "Hráč" CAMERA = "Kamera" CONTROLS = "Ovládání" +CHAT = "Chat" DISPLAY = "Video" SOUND = "Zvuk" MISC = "Jiné" diff --git a/lang/Dutch.ini b/lang/Dutch.ini index 169a26920..b67324f3e 100644 --- a/lang/Dutch.ini +++ b/lang/Dutch.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Debug Errors" MISC_TITLE = "MISC" PAUSE_IN_SINGLEPLAYER = "Pauzeer in een speler" DISABLE_POPUPS = "Popups uitzetten" -USE_STANDARD_KEY_BINDINGS_CHAT = "Terminal/CMD Chatbox besturingen gebruiken" -CHAT_WIDTH = "Chatbreedte" -CHAT_WIDTH_TINY = "Zeer klein" -CHAT_WIDTH_VERY_SMALL = "Erg klein" -CHAT_WIDTH_SMALL = "Klein" -CHAT_WIDTH_NORMAL = "Normaal" -CHAT_WIDTH_BIG = "Groot" -CHAT_WIDTH_VERY_BIG = "Zeer groot" -CHAT_WIDTH_HUGE = "Enorm" -CHAT_CHAR_COUNTER = "Chat-tekensteller weergeven" -DISABLE_CHAT_WHEN_CLOSED = "Chat verbergen wanneer gesloten" MENU_OPTIONS = "Menu Instellingen" INFORMATION = "Informatie" DEBUG = "Debug" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Schakel sm64ex-coop compatibiliteit in" R_BUTTON = "R-knop - Opties" L_BUTTON = "L-knop - Actieve mods opnieuw laden" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Terminal/CMD Chatbox besturingen gebruiken" +CHAT_WIDTH = "Chatbreedte" +CHAT_SIZE_TINY = "Zeer klein" +CHAT_SIZE_VERY_SMALL = "Erg klein" +CHAT_SIZE_SMALL = "Klein" +CHAT_SIZE_NORMAL = "Normaal" +CHAT_SIZE_BIG = "Groot" +CHAT_SIZE_VERY_BIG = "Zeer groot" +CHAT_SIZE_HUGE = "Enorm" +CHAT_CHAR_COUNTER = "Chat-tekensteller weergeven" +DISABLE_CHAT_WHEN_CLOSED = "Chat verbergen wanneer gesloten" + [INFORMATION] INFORMATION_TITLE = "INFORMATIE" CHANGELOG = "Wijzigingenlogboek" @@ -359,6 +361,7 @@ CONTROLS = "Controles" DISPLAY = "Weergave" SOUND = "Geluid" MISC = "Misc" +CHAT = "Chat" USER_FOLDER = "Gebruikersmap openen" APPDATA = "Open AppData" diff --git a/lang/English.ini b/lang/English.ini index 9dc2446d4..dda40313d 100644 --- a/lang/English.ini +++ b/lang/English.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Debug Errors" MISC_TITLE = "MISC" PAUSE_IN_SINGLEPLAYER = "Pause In Singleplayer" DISABLE_POPUPS = "Disable Popups" -USE_STANDARD_KEY_BINDINGS_CHAT = "Use Terminal/CMD Chatbox Controls" -CHAT_WIDTH = "Chat Width" -CHAT_WIDTH_TINY = "Tiny" -CHAT_WIDTH_VERY_SMALL = "Very Small" -CHAT_WIDTH_SMALL = "Small" -CHAT_WIDTH_NORMAL = "Normal" -CHAT_WIDTH_BIG = "Big" -CHAT_WIDTH_VERY_BIG = "Very Big" -CHAT_WIDTH_HUGE = "Huge" -CHAT_CHAR_COUNTER = "Show Chat Character Counter" -DISABLE_CHAT_WHEN_CLOSED = "Hide Chat When Closed" MENU_OPTIONS = "Menu Options" INFORMATION = "Info" DEBUG = "Debug" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Enable sm64ex-coop Compatibility" R_BUTTON = "R Button - Options" L_BUTTON = "L Button - Reload Active Mods" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Use Terminal/CMD Chatbox Controls" +CHAT_WIDTH = "Chat Width" +CHAT_SIZE_TINY = "Tiny" +CHAT_SIZE_VERY_SMALL = "Very Small" +CHAT_SIZE_SMALL = "Small" +CHAT_SIZE_NORMAL = "Normal" +CHAT_SIZE_BIG = "Big" +CHAT_SIZE_VERY_BIG = "Very Big" +CHAT_SIZE_HUGE = "Huge" +CHAT_CHAR_COUNTER = "Show Chat Character Counter" +DISABLE_CHAT_WHEN_CLOSED = "Hide Chat When Closed" + [INFORMATION] INFORMATION_TITLE = "INFO" CHANGELOG = "Changelog" @@ -356,6 +358,7 @@ OPTIONS = "OPTIONS" PLAYER = "Player" CAMERA = "Camera" CONTROLS = "Controls" +CHAT = "Chat" DISPLAY = "Display" SOUND = "Sound" MISC = "Misc" diff --git a/lang/French.ini b/lang/French.ini index 515483825..721238ac1 100644 --- a/lang/French.ini +++ b/lang/French.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Erreurs de Débogage" MISC_TITLE = "AUTRES" PAUSE_IN_SINGLEPLAYER = "Pause en Solo" DISABLE_POPUPS = "Désactiver les Pop-ups" -USE_STANDARD_KEY_BINDINGS_CHAT = "Utiliser les contrôles de chat Terminal/CMD" -CHAT_WIDTH = "Largeur du chat" -CHAT_WIDTH_TINY = "Minuscule" -CHAT_WIDTH_VERY_SMALL = "Très petite" -CHAT_WIDTH_SMALL = "Petite" -CHAT_WIDTH_NORMAL = "Normale" -CHAT_WIDTH_BIG = "Grande" -CHAT_WIDTH_VERY_BIG = "Très grande" -CHAT_WIDTH_HUGE = "Énorme" -CHAT_CHAR_COUNTER = "Afficher le compteur de caractères du chat" -DISABLE_CHAT_WHEN_CLOSED = "Masquer le chat lorsqu'il est fermé" MENU_OPTIONS = "Options du menu" INFORMATION = "Information" DEBUG = "Débogage" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Activer la compatibilité sm64ex-coop" R_BUTTON = "Bouton R - Options" L_BUTTON = "Bouton L - Recharger les mods actifs" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Utiliser les contrôles de chat Terminal/CMD" +CHAT_WIDTH = "Largeur du chat" +CHAT_SIZE_TINY = "Minuscule" +CHAT_SIZE_VERY_SMALL = "Très petite" +CHAT_SIZE_SMALL = "Petite" +CHAT_SIZE_NORMAL = "Normale" +CHAT_SIZE_BIG = "Grande" +CHAT_SIZE_VERY_BIG = "Très grande" +CHAT_SIZE_HUGE = "Énorme" +CHAT_CHAR_COUNTER = "Afficher le compteur de caractères du chat" +DISABLE_CHAT_WHEN_CLOSED = "Masquer le chat lorsqu'il est fermé" + [INFORMATION] INFORMATION_TITLE = "INFORMATION" CHANGELOG = "Notes de mise à jour" @@ -356,6 +358,7 @@ OPTIONS = "OPTIONS" PLAYER = "Joueur" CAMERA = "Caméra" CONTROLS = "Contrôles" +CHAT = "Chat" DISPLAY = "Affichage" SOUND = "Audio" MISC = "Autres Paramètres" diff --git a/lang/German.ini b/lang/German.ini index 1b7c79807..43b11d89e 100644 --- a/lang/German.ini +++ b/lang/German.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Debug Fehler" MISC_TITLE = "SONSTIGES" PAUSE_IN_SINGLEPLAYER = "Pause im Einzelspieler" DISABLE_POPUPS = "Pop-ups deaktivieren" -USE_STANDARD_KEY_BINDINGS_CHAT = "Terminal/CMD Chatbox-Steuerung verwenden" -CHAT_WIDTH = "Chatbreite" -CHAT_WIDTH_TINY = "Winzig" -CHAT_WIDTH_VERY_SMALL = "Sehr klein" -CHAT_WIDTH_SMALL = "Klein" -CHAT_WIDTH_NORMAL = "Normal" -CHAT_WIDTH_BIG = "Groß" -CHAT_WIDTH_VERY_BIG = "Sehr groß" -CHAT_WIDTH_HUGE = "Riesig" -CHAT_CHAR_COUNTER = "Chat-Zeichenzähler anzeigen" -DISABLE_CHAT_WHEN_CLOSED = "Verstecke Chat wenn geschlossen" MENU_OPTIONS = "Menüoptionen" INFORMATION = "Info" DEBUG = "Debug" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Aktiviere sm64ex-coop Kompatibilität" R_BUTTON = "R-Taste - Optionen" L_BUTTON = "L-Taste - Aktive Mods neu laden" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Terminal/CMD Chatbox-Steuerung verwenden" +CHAT_WIDTH = "Chatbreite" +CHAT_SIZE_TINY = "Winzig" +CHAT_SIZE_VERY_SMALL = "Sehr klein" +CHAT_SIZE_SMALL = "Klein" +CHAT_SIZE_NORMAL = "Normal" +CHAT_SIZE_BIG = "Groß" +CHAT_SIZE_VERY_BIG = "Sehr groß" +CHAT_SIZE_HUGE = "Riesig" +CHAT_CHAR_COUNTER = "Chat-Zeichenzähler anzeigen" +DISABLE_CHAT_WHEN_CLOSED = "Verstecke Chat wenn geschlossen" + [INFORMATION] INFORMATION_TITLE = "INFORMATION" CHANGELOG = "Änderungsprotokoll" @@ -356,6 +358,7 @@ OPTIONS = "OPTIONEN" PLAYER = "Spieler" CAMERA = "Kamera" CONTROLS = "Steuerung" +CHAT = "Chat" DISPLAY = "Anzeige" SOUND = "Sound" MISC = "Sonstiges" diff --git a/lang/Italian.ini b/lang/Italian.ini index 5de5c378d..4e591e293 100644 --- a/lang/Italian.ini +++ b/lang/Italian.ini @@ -320,17 +320,6 @@ DEBUG_ERRORS = "Errori di debug" MISC_TITLE = "VARIE" PAUSE_IN_SINGLEPLAYER = "Pausa in Giocatore Singolo" DISABLE_POPUPS = "Disabilita Popup" -USE_STANDARD_KEY_BINDINGS_CHAT = "Usa controlli chat Terminale/CMD" -CHAT_WIDTH = "Larghezza chat" -CHAT_WIDTH_TINY = "Minuscola" -CHAT_WIDTH_VERY_SMALL = "Molto piccola" -CHAT_WIDTH_SMALL = "Piccola" -CHAT_WIDTH_NORMAL = "Normale" -CHAT_WIDTH_BIG = "Grande" -CHAT_WIDTH_VERY_BIG = "Molto grande" -CHAT_WIDTH_HUGE = "Enorme" -CHAT_CHAR_COUNTER = "Mostra contatore caratteri della chat" -DISABLE_CHAT_WHEN_CLOSED = "Nascondi chat quando è chiusa" MENU_OPTIONS = "Opzioni Menù" INFORMATION = "Informazione" DEBUG = "Debug" @@ -339,6 +328,19 @@ COOP_COMPATIBILITY = "Abilita la compatibilità con sm64ex-coop" R_BUTTON = "Pulsante R - Opzioni" L_BUTTON = "Pulsante L - Ricarica Mod Attive" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Usa controlli chat Terminale/CMD" +CHAT_WIDTH = "Larghezza chat" +CHAT_SIZE_TINY = "Minuscola" +CHAT_SIZE_VERY_SMALL = "Molto piccola" +CHAT_SIZE_SMALL = "Piccola" +CHAT_SIZE_NORMAL = "Normale" +CHAT_SIZE_BIG = "Grande" +CHAT_SIZE_VERY_BIG = "Molto grande" +CHAT_SIZE_HUGE = "Enorme" +CHAT_CHAR_COUNTER = "Mostra contatore caratteri della chat" +DISABLE_CHAT_WHEN_CLOSED = "Nascondi chat quando è chiusa" + [INFORMATION] INFORMATION_TITLE = "INFO" CHANGELOG = "Registro delle modifiche" @@ -354,6 +356,7 @@ OPTIONS = "OPZIONI" PLAYER = "Giocatore" CAMERA = "Telecamera" CONTROLS = "Comandi" +CHAT = "Chat" DISPLAY = "Grafica" SOUND = "Audio" MISC = "Varie" diff --git a/lang/Japanese.ini b/lang/Japanese.ini index ff085530c..e12694a6b 100644 --- a/lang/Japanese.ini +++ b/lang/Japanese.ini @@ -323,17 +323,6 @@ DEBUG_ERRORS = "デバッグのエラー" MISC_TITLE = "MISC" PAUSE_IN_SINGLEPLAYER = "ソロプレイでの一時停止" DISABLE_POPUPS = "ポップアップを無効にする" -USE_STANDARD_KEY_BINDINGS_CHAT = "ターミナル/CMDチャットボックスコントロールを使用" -CHAT_WIDTH = "チャット幅" -CHAT_WIDTH_TINY = "とても小さい" -CHAT_WIDTH_VERY_SMALL = "かなり小さい" -CHAT_WIDTH_SMALL = "小さい" -CHAT_WIDTH_NORMAL = "標準" -CHAT_WIDTH_BIG = "大きい" -CHAT_WIDTH_VERY_BIG = "とても大きい" -CHAT_WIDTH_HUGE = "巨大" -CHAT_CHAR_COUNTER = "チャットの文字数カウンターを表示" -DISABLE_CHAT_WHEN_CLOSED = "閉じているときはチャットを隠す" MENU_OPTIONS = "メニューの設定" INFORMATION = "情報" DEBUG = "デバッグ" @@ -342,6 +331,19 @@ COOP_COMPATIBILITY = "sm64ex-coopとの互換性を有効にする" R_BUTTON = "Rボタン - 設定" L_BUTTON = "Lボタン - アクティブなMODを再読み込み" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "ターミナル/CMDチャットボックスコントロールを使用" +CHAT_WIDTH = "チャット幅" +CHAT_SIZE_TINY = "とても小さい" +CHAT_SIZE_VERY_SMALL = "かなり小さい" +CHAT_SIZE_SMALL = "小さい" +CHAT_SIZE_NORMAL = "標準" +CHAT_SIZE_BIG = "大きい" +CHAT_SIZE_VERY_BIG = "とても大きい" +CHAT_SIZE_HUGE = "巨大" +CHAT_CHAR_COUNTER = "チャットの文字数カウンターを表示" +DISABLE_CHAT_WHEN_CLOSED = "閉じているときはチャットを隠す" + [INFORMATION] INFORMATION_TITLE = "INFO" CHANGELOG = "変更履歴" @@ -357,6 +359,7 @@ OPTIONS = "OPTIONS" PLAYER = "プレイヤー" CAMERA = "カメラ" CONTROLS = "操作" +CHAT = "チャット" DISPLAY = "ディスプレイ" SOUND = "サウンド" MISC = "その他" diff --git a/lang/Polish.ini b/lang/Polish.ini index 3a21bfcec..fcd055e9d 100644 --- a/lang/Polish.ini +++ b/lang/Polish.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Błędy z Debugowania" MISC_TITLE = "POZOSTAŁE OPCJE" PAUSE_IN_SINGLEPLAYER = "Pauza w Trybie Pojedynczego Gracza" DISABLE_POPUPS = "Wyłącz Dymki Powiadomień" -USE_STANDARD_KEY_BINDINGS_CHAT = "Użyj sterowania czatu Terminal/CMD" -CHAT_WIDTH = "Szerokość czatu" -CHAT_WIDTH_TINY = "Maleńka" -CHAT_WIDTH_VERY_SMALL = "Bardzo mała" -CHAT_WIDTH_SMALL = "Mała" -CHAT_WIDTH_NORMAL = "Normalna" -CHAT_WIDTH_BIG = "Duża" -CHAT_WIDTH_VERY_BIG = "Bardzo duża" -CHAT_WIDTH_HUGE = "Ogromna" -CHAT_CHAR_COUNTER = "Pokaż licznik znaków czatu" -DISABLE_CHAT_WHEN_CLOSED = "Ukryj czat, gdy jest zamknięty" MENU_OPTIONS = "Opcje Menu" INFORMATION = "Informacja" DEBUG = "Debugowanie" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Włącz kompatybilność z sm64ex-coop" R_BUTTON = "Przycisk R - Opcje" L_BUTTON = "Przycisk L - Przeładuj aktywne mody" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Użyj sterowania czatu Terminal/CMD" +CHAT_WIDTH = "Szerokość czatu" +CHAT_SIZE_TINY = "Maleńka" +CHAT_SIZE_VERY_SMALL = "Bardzo mała" +CHAT_SIZE_SMALL = "Mała" +CHAT_SIZE_NORMAL = "Normalna" +CHAT_SIZE_BIG = "Duża" +CHAT_SIZE_VERY_BIG = "Bardzo duża" +CHAT_SIZE_HUGE = "Ogromna" +CHAT_CHAR_COUNTER = "Pokaż licznik znaków czatu" +DISABLE_CHAT_WHEN_CLOSED = "Ukryj czat, gdy jest zamknięty" + [INFORMATION] INFORMATION_TITLE = "INFORMACJA" CHANGELOG = "Rejestr Zmian" @@ -356,6 +358,7 @@ OPTIONS = "OPCJE" PLAYER = "Gracz" CAMERA = "Kamera" CONTROLS = "Sterowanie" +CHAT = "Czat" DISPLAY = "Wyświetlanie" SOUND = "Dźwięk" MISC = "Pozostałe Opcje" diff --git a/lang/Portuguese.ini b/lang/Portuguese.ini index 566d1d2b7..1ea910d15 100644 --- a/lang/Portuguese.ini +++ b/lang/Portuguese.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Erros de debug" MISC_TITLE = "OUTROS" PAUSE_IN_SINGLEPLAYER = "Pausar com apenas um jogador" DISABLE_POPUPS = "Desativar pop-ups" -USE_STANDARD_KEY_BINDINGS_CHAT = "Usar controles de chat Terminal/CMD" -CHAT_WIDTH = "Largura do chat" -CHAT_WIDTH_TINY = "Minúsculo" -CHAT_WIDTH_VERY_SMALL = "Muito pequena" -CHAT_WIDTH_SMALL = "Pequena" -CHAT_WIDTH_NORMAL = "Normal" -CHAT_WIDTH_BIG = "Grande" -CHAT_WIDTH_VERY_BIG = "Muito grande" -CHAT_WIDTH_HUGE = "Enorme" -CHAT_CHAR_COUNTER = "Mostrar contador de caracteres do chat" -DISABLE_CHAT_WHEN_CLOSED = "Ocultar chat quando fechado" MENU_OPTIONS = "Opções de menu" INFORMATION = "Informações" DEBUG = "Debug" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Ativar a compatibilidade com sm64ex-coop" R_BUTTON = "Botão R - Opções" L_BUTTON = "Botão L - Recarregar mods ativos" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Usar controles de chat Terminal/CMD" +CHAT_WIDTH = "Largura do chat" +CHAT_SIZE_TINY = "Minúsculo" +CHAT_SIZE_VERY_SMALL = "Muito pequena" +CHAT_SIZE_SMALL = "Pequena" +CHAT_SIZE_NORMAL = "Normal" +CHAT_SIZE_BIG = "Grande" +CHAT_SIZE_VERY_BIG = "Muito grande" +CHAT_SIZE_HUGE = "Enorme" +CHAT_CHAR_COUNTER = "Mostrar contador de caracteres do chat" +DISABLE_CHAT_WHEN_CLOSED = "Ocultar chat quando fechado" + [INFORMATION] INFORMATION_TITLE = "INFORMAÇÃO" CHANGELOG = "Registro de alterações" @@ -356,6 +358,7 @@ OPTIONS = "OPÇÕES" PLAYER = "Jogador" CAMERA = "Câmera" CONTROLS = "Controles" +CHAT = "Chat" DISPLAY = "Vídeo" SOUND = "Som" MISC = "Outros" diff --git a/lang/Russian.ini b/lang/Russian.ini index 8f474904f..2a711e3a0 100644 --- a/lang/Russian.ini +++ b/lang/Russian.ini @@ -321,17 +321,6 @@ DEBUG_ERRORS = "Ошибки отладки" MISC_TITLE = "MISC" PAUSE_IN_SINGLEPLAYER = "Пауза в одиночной игре" DISABLE_POPUPS = "Отключить всплывающие окна" -USE_STANDARD_KEY_BINDINGS_CHAT = "Использовать управление чатом Terminal/CMD" -CHAT_WIDTH = "Ширина чата" -CHAT_WIDTH_TINY = "Крошечная" -CHAT_WIDTH_VERY_SMALL = "Очень маленькая" -CHAT_WIDTH_SMALL = "Маленькая" -CHAT_WIDTH_NORMAL = "Обычная" -CHAT_WIDTH_BIG = "Большая" -CHAT_WIDTH_VERY_BIG = "Очень большая" -CHAT_WIDTH_HUGE = "Огромная" -CHAT_CHAR_COUNTER = "Показывать счётчик символов чата" -DISABLE_CHAT_WHEN_CLOSED = "Скрывать чат, когда он закрыт" MENU_OPTIONS = "Параметры меню" INFORMATION = "Информация" DEBUG = "Отладка" @@ -340,6 +329,19 @@ COOP_COMPATIBILITY = "Включить совместимость sm64ex-coop" R_BUTTON = "Кнопка R - Опции" L_BUTTON = "Кнопка L - Перезагрузить активные моды" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Использовать управление чатом Terminal/CMD" +CHAT_WIDTH = "Ширина чата" +CHAT_SIZE_TINY = "Крошечная" +CHAT_SIZE_VERY_SMALL = "Очень маленькая" +CHAT_SIZE_SMALL = "Маленькая" +CHAT_SIZE_NORMAL = "Обычная" +CHAT_SIZE_BIG = "Большая" +CHAT_SIZE_VERY_BIG = "Очень большая" +CHAT_SIZE_HUGE = "Огромная" +CHAT_CHAR_COUNTER = "Показывать счётчик символов чата" +DISABLE_CHAT_WHEN_CLOSED = "Скрывать чат, когда он закрыт" + [INFORMATION] INFORMATION_TITLE = "INFORMATION" CHANGELOG = "Журнал изменений" @@ -355,6 +357,7 @@ OPTIONS = "OPTIONS" PLAYER = "Игрок" CAMERA = "Камера" CONTROLS = "Управление" +CHAT = "Чат" DISPLAY = "Дисплей" SOUND = "Звук" MISC = "Разное" diff --git a/lang/Spanish.ini b/lang/Spanish.ini index 7e422eaf6..0aa0191a2 100644 --- a/lang/Spanish.ini +++ b/lang/Spanish.ini @@ -322,17 +322,6 @@ DEBUG_ERRORS = "Errores de Depuración" MISC_TITLE = "OTROS" PAUSE_IN_SINGLEPLAYER = "Pausa en modo de un jugador" DISABLE_POPUPS = "Deshabilitar mensajes emergentes" -USE_STANDARD_KEY_BINDINGS_CHAT = "Usar controles de chat Terminal/CMD" -CHAT_WIDTH = "Ancho del chat" -CHAT_WIDTH_TINY = "Minúsculo" -CHAT_WIDTH_VERY_SMALL = "Muy pequeño" -CHAT_WIDTH_SMALL = "Pequeño" -CHAT_WIDTH_NORMAL = "Normal" -CHAT_WIDTH_BIG = "Grande" -CHAT_WIDTH_VERY_BIG = "Muy grande" -CHAT_WIDTH_HUGE = "Enorme" -CHAT_CHAR_COUNTER = "Mostrar contador de caracteres del chat" -DISABLE_CHAT_WHEN_CLOSED = "Ocultar chat cuando esté cerrado" MENU_OPTIONS = "Opciones del menú" INFORMATION = "Información" DEBUG = "Depuración" @@ -341,6 +330,19 @@ COOP_COMPATIBILITY = "Habilitar la compatibilidad con sm64ex-coop" R_BUTTON = "Botón R - Opciones" L_BUTTON = "Botón L - Recargar mods activos" +[CHAT_OPTIONS] +USE_STANDARD_KEY_BINDINGS_CHAT = "Usar controles de chat Terminal/CMD" +CHAT_WIDTH = "Ancho del chat" +CHAT_SIZE_TINY = "Minúsculo" +CHAT_SIZE_VERY_SMALL = "Muy pequeño" +CHAT_SIZE_SMALL = "Pequeño" +CHAT_SIZE_NORMAL = "Normal" +CHAT_SIZE_BIG = "Grande" +CHAT_SIZE_VERY_BIG = "Muy grande" +CHAT_SIZE_HUGE = "Enorme" +CHAT_CHAR_COUNTER = "Mostrar contador de caracteres del chat" +DISABLE_CHAT_WHEN_CLOSED = "Ocultar chat cuando esté cerrado" + [INFORMATION] INFORMATION_TITLE = "INFORMACIÓN" CHANGELOG = "Registro de\ncambios" @@ -356,6 +358,7 @@ OPTIONS = "OPCIONES" PLAYER = "Jugador" CAMERA = "Cámara" CONTROLS = "Controles" +CHAT = "Chat" DISPLAY = "Pantalla" SOUND = "Sonido" MISC = "Otros" diff --git a/src/pc/djui/djui_panel_chat.c b/src/pc/djui/djui_panel_chat.c new file mode 100644 index 000000000..80d09ce4f --- /dev/null +++ b/src/pc/djui/djui_panel_chat.c @@ -0,0 +1,53 @@ +#include "djui.h" +#include "djui_panel.h" +#include "djui_panel_menu.h" +#include "pc/utils/misc.h" +#include "pc/configfile.h" + +void djui_panel_chat_create(struct DjuiBase* caller) { + struct DjuiThreePanel* panel = djui_panel_menu_create(DLANG(OPTIONS, CHAT), false); + struct DjuiBase* body = djui_three_panel_get_body(panel); + { + djui_checkbox_create(body, DLANG(CHAT_OPTIONS, USE_STANDARD_KEY_BINDINGS_CHAT), &configUseStandardKeyBindingsChat, NULL); + + djui_checkbox_create(body, DLANG(CHAT_OPTIONS, CHAT_CHAR_COUNTER), &configChatCharCounter, NULL); + djui_checkbox_create(body, DLANG(CHAT_OPTIONS, DISABLE_CHAT_WHEN_CLOSED), &configDisableChatWhenClosed, NULL); + + static unsigned int sChatWidthIndex = 3; + switch (configChatWidth) { + case 500: sChatWidthIndex = 0; break; + case 600: sChatWidthIndex = 1; break; + case 700: sChatWidthIndex = 2; break; + case 800: sChatWidthIndex = 3; break; + case 900: sChatWidthIndex = 4; break; + case 1000: sChatWidthIndex = 5; break; + case 1100: sChatWidthIndex = 6; break; + default: sChatWidthIndex = 3; break; + } + + char* chatWidthChoices[] = { + DLANG(CHAT_OPTIONS, CHAT_SIZE_TINY), + DLANG(CHAT_OPTIONS, CHAT_SIZE_VERY_SMALL), + DLANG(CHAT_OPTIONS, CHAT_SIZE_SMALL), + DLANG(CHAT_OPTIONS, CHAT_SIZE_NORMAL), + DLANG(CHAT_OPTIONS, CHAT_SIZE_BIG), + DLANG(CHAT_OPTIONS, CHAT_SIZE_VERY_BIG), + DLANG(CHAT_OPTIONS, CHAT_SIZE_HUGE) + }; + void on_CHAT_SIZE_change(UNUSED struct DjuiBase* b) { + unsigned int idx = sChatWidthIndex; + unsigned int widths[] = { 500, 600, 700, 800, 900, 1000, 1100 }; + configChatWidth = widths[idx]; + if (gDjuiChatBox != NULL) { + djui_base_set_size(&gDjuiChatBox->base, configChatWidth, gDjuiChatBox->base.height.value); + } + } + djui_selectionbox_create(body, DLANG(CHAT_OPTIONS, CHAT_WIDTH), chatWidthChoices, 7, &sChatWidthIndex, on_CHAT_SIZE_change); + + djui_button_create(body, DLANG(MENU, BACK), DJUI_BUTTON_STYLE_BACK, djui_panel_menu_back); + } + + djui_panel_add(caller, panel, NULL); +} + + diff --git a/src/pc/djui/djui_panel_chat.h b/src/pc/djui/djui_panel_chat.h new file mode 100644 index 000000000..2aec51a3f --- /dev/null +++ b/src/pc/djui/djui_panel_chat.h @@ -0,0 +1,6 @@ +#pragma once +#include "djui.h" + +void djui_panel_chat_create(struct DjuiBase* caller); + + diff --git a/src/pc/djui/djui_panel_controls.c b/src/pc/djui/djui_panel_controls.c index d86e72b88..784858ce1 100644 --- a/src/pc/djui/djui_panel_controls.c +++ b/src/pc/djui/djui_panel_controls.c @@ -40,33 +40,6 @@ void djui_panel_controls_create(struct DjuiBase* caller) { #ifndef HANDHELD djui_checkbox_create(body, DLANG(CONTROLS, DISABLE_GAMEPADS), &configDisableGamepads, NULL); #endif - djui_checkbox_create(body, DLANG(MISC, USE_STANDARD_KEY_BINDINGS_CHAT), &configUseStandardKeyBindingsChat, NULL); - - djui_checkbox_create(body, DLANG(MISC, CHAT_CHAR_COUNTER), &configChatCharCounter, NULL); - djui_checkbox_create(body, DLANG(MISC, DISABLE_CHAT_WHEN_CLOSED), &configDisableChatWhenClosed, NULL); - - static unsigned int sChatWidthIndex = 3; - switch (configChatWidth) { - case 500: sChatWidthIndex = 0; break; - case 600: sChatWidthIndex = 1; break; - case 700: sChatWidthIndex = 2; break; - case 800: sChatWidthIndex = 3; break; - case 900: sChatWidthIndex = 4; break; - case 1000: sChatWidthIndex = 5; break; - case 1100: sChatWidthIndex = 6; break; - default: sChatWidthIndex = 3; break; - } - - char* chatWidthChoices[] = { DLANG(MISC, CHAT_WIDTH_TINY), DLANG(MISC, CHAT_WIDTH_VERY_SMALL), DLANG(MISC, CHAT_WIDTH_SMALL), DLANG(MISC, CHAT_WIDTH_NORMAL), DLANG(MISC, CHAT_WIDTH_BIG), DLANG(MISC, CHAT_WIDTH_VERY_BIG), DLANG(MISC, CHAT_WIDTH_HUGE) }; - void on_chat_width_change(UNUSED struct DjuiBase* b) { - unsigned int idx = sChatWidthIndex; - unsigned int widths[] = {500,600,700,800,900,1000,1100}; - configChatWidth = widths[idx]; - if (gDjuiChatBox != NULL) { - djui_base_set_size(&gDjuiChatBox->base, configChatWidth, gDjuiChatBox->base.height.value); - } - } - djui_selectionbox_create(body, DLANG(MISC, CHAT_WIDTH), chatWidthChoices, 7, &sChatWidthIndex, on_chat_width_change); #ifdef HAVE_SDL2 int numJoys = SDL_NumJoysticks(); diff --git a/src/pc/djui/djui_panel_options.c b/src/pc/djui/djui_panel_options.c index 37e8ea1bd..7f833bf31 100644 --- a/src/pc/djui/djui_panel_options.c +++ b/src/pc/djui/djui_panel_options.c @@ -3,6 +3,7 @@ #include "djui_panel_player.h" #include "djui_panel_camera.h" #include "djui_panel_controls.h" +#include "djui_panel_chat.h" #include "djui_panel_display.h" #include "djui_panel_sound.h" #include "djui_panel_misc.h" @@ -30,6 +31,7 @@ void djui_panel_options_create(struct DjuiBase* caller) { } djui_button_create(body, DLANG(OPTIONS, CAMERA), DJUI_BUTTON_STYLE_NORMAL, djui_panel_camera_create); djui_button_create(body, DLANG(OPTIONS, CONTROLS), DJUI_BUTTON_STYLE_NORMAL, djui_panel_controls_create); + djui_button_create(body, DLANG(OPTIONS, CHAT), DJUI_BUTTON_STYLE_NORMAL, djui_panel_chat_create); djui_button_create(body, DLANG(OPTIONS, DISPLAY), DJUI_BUTTON_STYLE_NORMAL, djui_panel_display_create); djui_button_create(body, DLANG(OPTIONS, SOUND), DJUI_BUTTON_STYLE_NORMAL, djui_panel_sound_create); djui_button_create(body, DLANG(OPTIONS, MISC), DJUI_BUTTON_STYLE_NORMAL, djui_panel_misc_create);