Battery "Bars" mode: localise the menu label
Replace the hardcoded "Bars" literal with a proper language string (battery_bars) so the Battery display-mode menu value is translated and voice-prompt safe. German is "Balken"; other supported languages get an appropriate term. Bumps LANGUAGE_TAG_VERSION for the struct change. Menu value voice announcement routes through the language table like any other option value (plays silence until the voice-prompt pack is rebuilt with a recording); the battery-status announce key already speaks the percentage in Bars mode. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
4ec5cfdd4c
commit
bc9e5cb655
22 changed files with 23 additions and 3 deletions
|
|
@ -345,6 +345,7 @@ const stringsTable_t catalanLanguage=
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Barres", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t croatianLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Trake", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t czechLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Pruhy", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t danishLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Bjælker", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t dutchLanguage =
|
||||||
.sms_own_id_only = "Alleen mijn ID", // MaxLen: 16
|
.sms_own_id_only = "Alleen mijn ID", // MaxLen: 16
|
||||||
.message_from = "Bericht van", // MaxLen: 16
|
.message_from = "Bericht van", // MaxLen: 16
|
||||||
.delete_message = "Bericht wissen?", // MaxLen: 16
|
.delete_message = "Bericht wissen?", // MaxLen: 16
|
||||||
|
.battery_bars = "Balken", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t englishLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Bars", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t finnishLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Palkit", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t frenchLanguage =
|
||||||
.sms_own_id_only = "Mon ID seul", // MaxLen: 16
|
.sms_own_id_only = "Mon ID seul", // MaxLen: 16
|
||||||
.message_from = "Message de", // MaxLen: 16
|
.message_from = "Message de", // MaxLen: 16
|
||||||
.delete_message = "Suppr. message?", // MaxLen: 16
|
.delete_message = "Suppr. message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Barres", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t germanLanguage =
|
||||||
.sms_own_id_only = "Nur eigene ID", // MaxLen: 16
|
.sms_own_id_only = "Nur eigene ID", // MaxLen: 16
|
||||||
.message_from = "Nachricht von", // MaxLen: 16
|
.message_from = "Nachricht von", // MaxLen: 16
|
||||||
.delete_message = "Nachricht lösch.", // MaxLen: 16
|
.delete_message = "Nachricht lösch.", // MaxLen: 16
|
||||||
|
.battery_bars = "Balken", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t hungarianLanguage=
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Sávok", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t italianLanguage =
|
||||||
.sms_own_id_only = "Solo mio ID", // MaxLen: 16
|
.sms_own_id_only = "Solo mio ID", // MaxLen: 16
|
||||||
.message_from = "Messaggio da", // MaxLen: 16
|
.message_from = "Messaggio da", // MaxLen: 16
|
||||||
.delete_message = "Elimina msg?", // MaxLen: 16
|
.delete_message = "Elimina msg?", // MaxLen: 16
|
||||||
|
.battery_bars = "Barre", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t japaneseLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Bar", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t polishLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Paski", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t portuguesBrazilLanguage =
|
||||||
.sms_own_id_only = "Só meu ID", // MaxLen: 16
|
.sms_own_id_only = "Só meu ID", // MaxLen: 16
|
||||||
.message_from = "Mensagem de", // MaxLen: 16
|
.message_from = "Mensagem de", // MaxLen: 16
|
||||||
.delete_message = "Apagar msg?", // MaxLen: 16
|
.delete_message = "Apagar msg?", // MaxLen: 16
|
||||||
|
.battery_bars = "Barras", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t portuguesLanguage =
|
||||||
.sms_own_id_only = "Só meu ID", // MaxLen: 16
|
.sms_own_id_only = "Só meu ID", // MaxLen: 16
|
||||||
.message_from = "Mensagem de", // MaxLen: 16
|
.message_from = "Mensagem de", // MaxLen: 16
|
||||||
.delete_message = "Apagar msg?", // MaxLen: 16
|
.delete_message = "Apagar msg?", // MaxLen: 16
|
||||||
|
.battery_bars = "Barras", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t romanianLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Bare", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t slovenianLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Stolpci", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t spanishLanguage =
|
||||||
.sms_own_id_only = "Solo mi ID", // MaxLen: 16
|
.sms_own_id_only = "Solo mi ID", // MaxLen: 16
|
||||||
.message_from = "Mensaje de", // MaxLen: 16
|
.message_from = "Mensaje de", // MaxLen: 16
|
||||||
.delete_message = "¿Borrar mensaje?", // MaxLen: 16
|
.delete_message = "¿Borrar mensaje?", // MaxLen: 16
|
||||||
|
.battery_bars = "Barras", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t swedishLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Staplar", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -345,6 +345,7 @@ const stringsTable_t turkishLanguage =
|
||||||
.sms_own_id_only = "My ID only", // MaxLen: 16
|
.sms_own_id_only = "My ID only", // MaxLen: 16
|
||||||
.message_from = "Message from", // MaxLen: 16
|
.message_from = "Message from", // MaxLen: 16
|
||||||
.delete_message = "Delete message?", // MaxLen: 16
|
.delete_message = "Delete message?", // MaxLen: 16
|
||||||
|
.battery_bars = "Çubuklar", // MaxLen: 16
|
||||||
};
|
};
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@
|
||||||
#else
|
#else
|
||||||
#define LANGUAGE_TAG_MAGIC_NUMBER { 'G', 'D', '7', '7' }, { 'L', 'A', 'N', 'G' } // Never change this tag.
|
#define LANGUAGE_TAG_MAGIC_NUMBER { 'G', 'D', '7', '7' }, { 'L', 'A', 'N', 'G' } // Never change this tag.
|
||||||
#endif
|
#endif
|
||||||
#define LANGUAGE_TAG_VERSION { 0x00, 0x00, 0x00, 0x06 } // Bump the version each time the language struct is changed
|
#define LANGUAGE_TAG_VERSION { 0x00, 0x00, 0x00, 0x07 } // Bump the version each time the language struct is changed
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
|
|
@ -353,6 +353,7 @@ typedef struct
|
||||||
const char sms_own_id_only[LANGUAGE_TEXTS_LENGTH];
|
const char sms_own_id_only[LANGUAGE_TEXTS_LENGTH];
|
||||||
const char message_from[LANGUAGE_TEXTS_LENGTH];
|
const char message_from[LANGUAGE_TEXTS_LENGTH];
|
||||||
const char delete_message[LANGUAGE_TEXTS_LENGTH];
|
const char delete_message[LANGUAGE_TEXTS_LENGTH];
|
||||||
|
const char battery_bars[LANGUAGE_TEXTS_LENGTH]; // "Bars" battery header display mode
|
||||||
} stringsTable_t;
|
} stringsTable_t;
|
||||||
|
|
||||||
#endif // _OPENGD77_UILANGUAGE_H_
|
#endif // _OPENGD77_UILANGUAGE_H_
|
||||||
|
|
|
||||||
|
|
@ -321,8 +321,7 @@ static void updateScreen(bool isFirstRun)
|
||||||
rightSideUnitsStr = "V";
|
rightSideUnitsStr = "V";
|
||||||
break;
|
break;
|
||||||
case BATTERY_UNIT_BARS:
|
case BATTERY_UNIT_BARS:
|
||||||
// Plain literal -> rightSideVar (voice-safe), like the Screen Dim entry above.
|
rightSideConst = currentLanguage->battery_bars;
|
||||||
snprintf(rightSideVar, SCREEN_LINE_BUFFER_SIZE, "%s", "Bars");
|
|
||||||
break;
|
break;
|
||||||
default: // BATTERY_UNIT_PERCENTAGE
|
default: // BATTERY_UNIT_PERCENTAGE
|
||||||
rightSideUnitsPrompt = PROMPT_PERCENT;
|
rightSideUnitsPrompt = PROMPT_PERCENT;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue