From ab363bd1fc1ef8c16ad3b4e2e9ae0b3f1b54357b Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Mon, 24 Apr 2006 12:21:37 +0000 Subject: [PATCH] localizable prompt answer text --- stepmania/Themes/default/Languages/de.ini | 6 ++++-- stepmania/Themes/default/Languages/en.ini | 6 ++++-- stepmania/Themes/default/Languages/es.ini | 6 ++++-- stepmania/Themes/default/Languages/fr.ini | 8 +++++--- stepmania/Themes/default/Languages/it.ini | 6 ++++-- stepmania/Themes/default/metrics.ini | 18 ++++++------------ stepmania/src/ScreenPrompt.cpp | 22 +++++++++++++++++----- stepmania/src/ScreenPrompt.h | 4 ++-- 8 files changed, 46 insertions(+), 30 deletions(-) diff --git a/stepmania/Themes/default/Languages/de.ini b/stepmania/Themes/default/Languages/de.ini index 33f2146b70..5c4ce65aac 100644 --- a/stepmania/Themes/default/Languages/de.ini +++ b/stepmania/Themes/default/Languages/de.ini @@ -1312,8 +1312,10 @@ Enter URL=URL eingeben HelpText=&UP; &DOWN; schaltet zwischen Zeilen um &LEFT; &RIGHT; wählt Optionen an START Änderungen annehmen [ScreenPrompt] -NO=NEIN -YES=JA +No=NEIN +Yes=JA +Cancel=ABBRECHEN +OK=OK [ScreenRanking] NoScoreName=SCHRITT diff --git a/stepmania/Themes/default/Languages/en.ini b/stepmania/Themes/default/Languages/en.ini index 7477c44223..8a29680857 100644 --- a/stepmania/Themes/default/Languages/en.ini +++ b/stepmania/Themes/default/Languages/en.ini @@ -1201,8 +1201,10 @@ Enter URL=Enter URL HelpText=&UP; &DOWN; to change line &LEFT; &RIGHT; to select between options START to accept changes [ScreenPrompt] -NO=NO -YES=YES +OK=OK +No=NO +Yes=YES +Cancel=CANCEL [ScreenRanking] NoScoreName=STEP diff --git a/stepmania/Themes/default/Languages/es.ini b/stepmania/Themes/default/Languages/es.ini index 67446ada69..90d668de82 100644 --- a/stepmania/Themes/default/Languages/es.ini +++ b/stepmania/Themes/default/Languages/es.ini @@ -1238,8 +1238,10 @@ Enter URL=Introducir URL HelpText=&UP; &DOWN; para cambiar línea. &LEFT; &RIGHT; para seleccionar opciones START para aceptar cambios. [ScreenPrompt] -NO=NO -YES=SÍ +No=NO +Yes=SÍ +Cancel=CANCELAR +OK=OK [ScreenRanking] NoScoreName=PASO diff --git a/stepmania/Themes/default/Languages/fr.ini b/stepmania/Themes/default/Languages/fr.ini index ed7f395688..59961cecc2 100644 --- a/stepmania/Themes/default/Languages/fr.ini +++ b/stepmania/Themes/default/Languages/fr.ini @@ -200,7 +200,7 @@ Tree2=Tree2 [Dialog-StepMania Tools Main Menu] Change Preferences=Changer les Préférences Change the graphics API, sound API, and other settings that the game will use.=Changer l'Interface Graphiques (API), l'Interface Son (API) et les autres paramètres que le jeu utilise. -Clear Mappings=Effacer la configuration des touches +Clear Mappings=Effacer la configuration Clear Preferences=Effacer les Préférences Clear all preferences if you've made changes and the game won't start.=Effacer toutes les préférences si vous avez apporté des changements et que le jeu ne démarre pas. Create .smzip package files to share with other users.=Créer des packages .smzip pour partager avec d'autres utilisateurs. @@ -1356,8 +1356,10 @@ Enter URL=Entrez adresse URL. HelpText=&UP; &DOWN; pour changer de ligne &LEFT; &RIGHT; pour sélectionner les options DEMARRER pour accepter les changements [ScreenPrompt] -NO=NON -YES=OUI +OK=OK +No=NON +Yes=OUI +Cancel=ANNULER [ScreenRanking] NoScoreName=STEP diff --git a/stepmania/Themes/default/Languages/it.ini b/stepmania/Themes/default/Languages/it.ini index d415c3bedd..7606b500f4 100644 --- a/stepmania/Themes/default/Languages/it.ini +++ b/stepmania/Themes/default/Languages/it.ini @@ -1254,8 +1254,10 @@ Enter URL=Inserisci URL HelpText=&UP; &DOWN; per cambiare linea &LEFT; &RIGHT; per selezionare le opzioni AVVIA per accettare le modifiche [ScreenPrompt] -NO=NO -YES=SI' +OK=OK +Yes=SI' +No=NO +Cancel=CANCELLA [ScreenRanking] NoScoreName=PASSI diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index b828fa7f1c..a9f546f9b5 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -4480,34 +4480,28 @@ CursorOnCommand= CursorOffCommand= Answer1Of1X=SCREEN_CENTER_X Answer1Of1Y=SCREEN_CENTER_Y+120 -Answer1Of1OnCommand= +Answer1Of1OnCommand=maxwidth,100 Answer1Of1OffCommand= -Answer1Of1Text=OK Answer1Of2X=SCREEN_CENTER_X-50 Answer1Of2Y=SCREEN_CENTER_Y+120 -Answer1Of2OnCommand= +Answer1Of2OnCommand=maxwidth,100 Answer1Of2OffCommand= -Answer1Of2Text=YES Answer2Of2X=SCREEN_CENTER_X+50 Answer2Of2Y=SCREEN_CENTER_Y+120 -Answer2Of2OnCommand= +Answer2Of2OnCommand=maxwidth,100 Answer2Of2OffCommand= -Answer2Of2Text=NO Answer1Of3X=SCREEN_CENTER_X-170 Answer1Of3Y=SCREEN_CENTER_Y+120 -Answer1Of3OnCommand= +Answer1Of3OnCommand=maxwidth,100 Answer1Of3OffCommand= -Answer1Of3Text=YES Answer2Of3X=SCREEN_CENTER_X-20 Answer2Of3Y=SCREEN_CENTER_Y+120 -Answer2Of3OnCommand= +Answer2Of3OnCommand=maxwidth,100 Answer2Of3OffCommand= -Answer2Of3Text=NO Answer3Of3X=SCREEN_CENTER_X+150 Answer3Of3Y=SCREEN_CENTER_Y+120 -Answer3Of3OnCommand= +Answer3Of3OnCommand=maxwidth,100 Answer3Of3OffCommand= -Answer3Of3Text=CANCEL [GameState] UseNameBlacklist=0 diff --git a/stepmania/src/ScreenPrompt.cpp b/stepmania/src/ScreenPrompt.cpp index e7e6efeb8b..62468033fa 100644 --- a/stepmania/src/ScreenPrompt.cpp +++ b/stepmania/src/ScreenPrompt.cpp @@ -13,7 +13,14 @@ PromptAnswer ScreenPrompt::s_LastAnswer = ANSWER_YES; bool ScreenPrompt::s_bCancelledLast = false; -#define ANSWER_TEXT( elem ) THEME->GetString(m_sName,elem+"Text") +#define ANSWER_TEXT( s ) THEME->GetString(m_sName,s) + +static const char *PromptAnswerNames[] = { + "Yes", + "No", + "Cancel", +}; +XToString( PromptAnswer, NUM_PromptAnswer ); /* Settings: */ namespace @@ -59,7 +66,7 @@ void ScreenPrompt::Init() m_sprCursor->SetName( "Cursor" ); this->AddChild( m_sprCursor ); - for( int i=0; iGetPathF(m_sName,"answer") ); this->AddChild( &m_textAnswer[i] ); @@ -84,11 +91,16 @@ void ScreenPrompt::BeginScreen() { RString sElem = ssprintf("Answer%dOf%d", i+1, g_PromptType+1); m_textAnswer[i].SetName( sElem ); - m_textAnswer[i].SetText( ANSWER_TEXT(sElem) ); + RString sAnswer = PromptAnswerToString( (PromptAnswer)i ); + // FRAGILE + if( g_PromptType == PROMPT_OK ) + sAnswer = "OK"; + + m_textAnswer[i].SetText( ANSWER_TEXT(sAnswer) ); SET_XY_AND_ON_COMMAND( m_textAnswer[i] ); } - for( int i=g_PromptType+1; i= 0 && m_Answer < NUM_PROMPT_ANSWERS ); + ASSERT( m_Answer >= 0 && m_Answer < NUM_PromptAnswer ); PositionCursor(); diff --git a/stepmania/src/ScreenPrompt.h b/stepmania/src/ScreenPrompt.h index afd66614a8..180566f283 100644 --- a/stepmania/src/ScreenPrompt.h +++ b/stepmania/src/ScreenPrompt.h @@ -19,7 +19,7 @@ enum PromptAnswer ANSWER_YES, ANSWER_NO, ANSWER_CANCEL, - NUM_PROMPT_ANSWERS + NUM_PromptAnswer }; class ScreenPrompt : public ScreenWithMenuElements @@ -51,7 +51,7 @@ protected: BitmapText m_textQuestion; AutoActor m_sprCursor; - BitmapText m_textAnswer[NUM_PROMPT_ANSWERS]; + BitmapText m_textAnswer[NUM_PromptAnswer]; PromptAnswer m_Answer; RageSound m_sndChange;