* src/libvlc.[ch]: removed --translation to avoid breaking compatibility
authorEric Petit <titer@videolan.org>
Sat, 10 May 2003 13:40:37 +0000 (13:40 +0000)
committerEric Petit <titer@videolan.org>
Sat, 10 May 2003 13:40:37 +0000 (13:40 +0000)
 with old config files; --language is now a string_from_list you can use
 to specify the language (default is auto-detection).

src/libvlc.c
src/libvlc.h

index 9ed877f..23c15a0 100644 (file)
@@ -2,7 +2,7 @@
  * libvlc.c: main libvlc source
  *****************************************************************************
  * Copyright (C) 1998-2002 VideoLAN
  * libvlc.c: main libvlc source
  *****************************************************************************
  * Copyright (C) 1998-2002 VideoLAN
- * $Id: libvlc.c,v 1.84 2003/05/08 15:58:44 gbazin Exp $
+ * $Id: libvlc.c,v 1.85 2003/05/10 13:40:37 titer Exp $
  *
  * Authors: Vincent Seguin <seguin@via.ecp.fr>
  *          Samuel Hocevar <sam@zoy.org>
  *
  * Authors: Vincent Seguin <seguin@via.ecp.fr>
  *          Samuel Hocevar <sam@zoy.org>
@@ -212,7 +212,7 @@ int VLC_Init( int i_object, int i_argc, char *ppsz_argv[] )
     char *       p_tmp;
     char *       psz_modules;
     char *       psz_parser;
     char *       p_tmp;
     char *       psz_modules;
     char *       psz_parser;
-    char *       psz_translation;
+    char *       psz_language;
     vlc_bool_t   b_exit = VLC_FALSE;
     vlc_t *      p_vlc;
     module_t    *p_help_module;
     vlc_bool_t   b_exit = VLC_FALSE;
     vlc_t *      p_vlc;
     module_t    *p_help_module;
@@ -331,11 +331,12 @@ int VLC_Init( int i_object, int i_argc, char *ppsz_argv[] )
     config_LoadConfigFile( p_vlc, "main" );
     config_LoadCmdLine( p_vlc, &i_argc, ppsz_argv, VLC_TRUE );
 
     config_LoadConfigFile( p_vlc, "main" );
     config_LoadCmdLine( p_vlc, &i_argc, ppsz_argv, VLC_TRUE );
 
-    psz_translation = config_GetPsz( p_vlc, "translation" );
-    if( psz_translation && *psz_translation )
+    /* Check if the user specified a custom language */
+    psz_language = config_GetPsz( p_vlc, "language" );
+    if( psz_language && *psz_language && strcmp( psz_language, "auto" ) )
     {
         /* Reset the default domain */
     {
         /* Reset the default domain */
-        SetLanguage( psz_translation );
+        SetLanguage( psz_language );
 
         /* Translate "C" to the language code: "fr", "en_GB", "nl", "ru"... */
         msg_Dbg( p_vlc, "translation test: code is \"%s\"", _("C") );
 
         /* Translate "C" to the language code: "fr", "en_GB", "nl", "ru"... */
         msg_Dbg( p_vlc, "translation test: code is \"%s\"", _("C") );
@@ -347,6 +348,7 @@ int VLC_Init( int i_object, int i_argc, char *ppsz_argv[] )
         module_LoadMain( &libvlc );
         config_LoadCmdLine( p_vlc, &i_argc, ppsz_argv, VLC_TRUE );
     }
         module_LoadMain( &libvlc );
         config_LoadCmdLine( p_vlc, &i_argc, ppsz_argv, VLC_TRUE );
     }
+    if( psz_language ) free( psz_language );
 #endif
 
     /*
 #endif
 
     /*
index 79a6614..49398c7 100644 (file)
@@ -2,7 +2,7 @@
  * libvlc.h: main libvlc header
  *****************************************************************************
  * Copyright (C) 1998-2002 VideoLAN
  * libvlc.h: main libvlc header
  *****************************************************************************
  * Copyright (C) 1998-2002 VideoLAN
- * $Id: libvlc.h,v 1.63 2003/05/08 15:58:44 gbazin Exp $
+ * $Id: libvlc.h,v 1.64 2003/05/10 13:40:37 titer Exp $
  *
  * Authors: Vincent Seguin <seguin@via.ecp.fr>
  *          Samuel Hocevar <sam@zoy.org>
  *
  * Authors: Vincent Seguin <seguin@via.ecp.fr>
  *          Samuel Hocevar <sam@zoy.org>
@@ -27,6 +27,8 @@
 
 static char *ppsz_sout_acodec[] = { "", "mpeg1", "mpeg2", "mpeg4", "vorbis", NULL };
 static char *ppsz_sout_vcodec[] = { "", "mpeg1", "mpeg2", "mpeg4", NULL };
 
 static char *ppsz_sout_acodec[] = { "", "mpeg1", "mpeg2", "mpeg4", "vorbis", NULL };
 static char *ppsz_sout_vcodec[] = { "", "mpeg1", "mpeg2", "mpeg4", NULL };
+static char *ppsz_language[] = { "auto", "de", "en_GB", "fr", "it",
+                                 "ja", "nl", "no", "pl", "ru", "sv" };
 
 /*****************************************************************************
  * Configuration options for the main program. Each module will also separatly
 
 /*****************************************************************************
  * Configuration options for the main program. Each module will also separatly
@@ -55,12 +57,10 @@ static char *ppsz_sout_vcodec[] = { "", "mpeg1", "mpeg2", "mpeg4", NULL };
 #define QUIET_LONGTEXT N_( \
     "This options turns off all warning and information messages.")
 
 #define QUIET_LONGTEXT N_( \
     "This options turns off all warning and information messages.")
 
-#define TRANSLATION_TEXT N_("Translation")
-#define TRANSLATION_LONGTEXT N_( \
-    "This option allows you to set the language of the interface or disable " \
-    "the translation alltogether " \
-    "(e.g. 'C' (for disable), 'fr', 'de', 'en_GB', ...). " \
-    "The system language is auto-detected if nothing is specified here." )
+#define LANGUAGE_TEXT N_("Language")
+#define LANGUAGE_LONGTEXT N_( "This option allows you to set the language " \
+    "of the interface. The system language is auto-detected if \"auto\" is " \
+    "specified here." )
 
 #define COLOR_TEXT N_("Color messages")
 #define COLOR_LONGTEXT N_( \
 
 #define COLOR_TEXT N_("Color messages")
 #define COLOR_LONGTEXT N_( \
@@ -446,7 +446,7 @@ vlc_module_begin();
     add_integer_with_short( "verbose", 'v', -1, NULL,
                             VERBOSE_TEXT, VERBOSE_LONGTEXT, VLC_FALSE );
     add_bool_with_short( "quiet", 'q', 0, NULL, QUIET_TEXT, QUIET_LONGTEXT, VLC_TRUE );
     add_integer_with_short( "verbose", 'v', -1, NULL,
                             VERBOSE_TEXT, VERBOSE_LONGTEXT, VLC_FALSE );
     add_bool_with_short( "quiet", 'q', 0, NULL, QUIET_TEXT, QUIET_LONGTEXT, VLC_TRUE );
-    add_string( "translation", NULL, NULL, TRANSLATION_TEXT, TRANSLATION_LONGTEXT, VLC_FALSE );
+    add_string_from_list( "language", "auto", ppsz_language, NULL, LANGUAGE_TEXT, LANGUAGE_LONGTEXT, VLC_FALSE );
     add_bool( "color", 0, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE );
     add_bool( "advanced", 0, NULL, ADVANCED_TEXT, ADVANCED_LONGTEXT, VLC_FALSE );
     add_string( "search-path", NULL, NULL, INTF_PATH_TEXT, INTF_PATH_LONGTEXT, VLC_TRUE );
     add_bool( "color", 0, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE );
     add_bool( "advanced", 0, NULL, ADVANCED_TEXT, ADVANCED_LONGTEXT, VLC_FALSE );
     add_string( "search-path", NULL, NULL, INTF_PATH_TEXT, INTF_PATH_LONGTEXT, VLC_TRUE );