]> Pileus Git - ~andy/gtk/commitdiff
On Win32, look explicitly for LANG, LC_ALL and LC_CTYPE, and if not found,
authorTor Lillqvist <tml@iki.fi>
Thu, 19 Sep 2002 23:29:30 +0000 (23:29 +0000)
committerTor Lillqvist <tml@src.gnome.org>
Thu, 19 Sep 2002 23:29:30 +0000 (23:29 +0000)
2002-09-20  Tor Lillqvist  <tml@iki.fi>

* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
locale name in the form Swedish_Finland for sv_FI.

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkmain.c

index df96433763ba1e46e3e59ad6bb0517962ed6f883..93f35fbb7bdc2be812aa814fe921b05ebb961230 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2002-09-20  Tor Lillqvist  <tml@iki.fi>
 
+       * gtk/gtkmain.c (gtk_get_default_language): On Win32, look
+       explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
+       g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
+       locale name in the form Swedish_Finland for sv_FI.
+
        * gdk/gdkfont.h: Delete leftover declarations of the obsolete
        Win32-only functions gdk_font_full_name_get() and
        gdk_font_full_name_free().
index df96433763ba1e46e3e59ad6bb0517962ed6f883..93f35fbb7bdc2be812aa814fe921b05ebb961230 100644 (file)
@@ -1,5 +1,10 @@
 2002-09-20  Tor Lillqvist  <tml@iki.fi>
 
+       * gtk/gtkmain.c (gtk_get_default_language): On Win32, look
+       explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
+       g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
+       locale name in the form Swedish_Finland for sv_FI.
+
        * gdk/gdkfont.h: Delete leftover declarations of the obsolete
        Win32-only functions gdk_font_full_name_get() and
        gdk_font_full_name_free().
index df96433763ba1e46e3e59ad6bb0517962ed6f883..93f35fbb7bdc2be812aa814fe921b05ebb961230 100644 (file)
@@ -1,5 +1,10 @@
 2002-09-20  Tor Lillqvist  <tml@iki.fi>
 
+       * gtk/gtkmain.c (gtk_get_default_language): On Win32, look
+       explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
+       g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
+       locale name in the form Swedish_Finland for sv_FI.
+
        * gdk/gdkfont.h: Delete leftover declarations of the obsolete
        Win32-only functions gdk_font_full_name_get() and
        gdk_font_full_name_free().
index df96433763ba1e46e3e59ad6bb0517962ed6f883..93f35fbb7bdc2be812aa814fe921b05ebb961230 100644 (file)
@@ -1,5 +1,10 @@
 2002-09-20  Tor Lillqvist  <tml@iki.fi>
 
+       * gtk/gtkmain.c (gtk_get_default_language): On Win32, look
+       explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
+       g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
+       locale name in the form Swedish_Finland for sv_FI.
+
        * gdk/gdkfont.h: Delete leftover declarations of the obsolete
        Win32-only functions gdk_font_full_name_get() and
        gdk_font_full_name_free().
index df96433763ba1e46e3e59ad6bb0517962ed6f883..93f35fbb7bdc2be812aa814fe921b05ebb961230 100644 (file)
@@ -1,5 +1,10 @@
 2002-09-20  Tor Lillqvist  <tml@iki.fi>
 
+       * gtk/gtkmain.c (gtk_get_default_language): On Win32, look
+       explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
+       g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
+       locale name in the form Swedish_Finland for sv_FI.
+
        * gdk/gdkfont.h: Delete leftover declarations of the obsolete
        Win32-only functions gdk_font_full_name_get() and
        gdk_font_full_name_free().
index df96433763ba1e46e3e59ad6bb0517962ed6f883..93f35fbb7bdc2be812aa814fe921b05ebb961230 100644 (file)
@@ -1,5 +1,10 @@
 2002-09-20  Tor Lillqvist  <tml@iki.fi>
 
+       * gtk/gtkmain.c (gtk_get_default_language): On Win32, look
+       explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
+       g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
+       locale name in the form Swedish_Finland for sv_FI.
+
        * gdk/gdkfont.h: Delete leftover declarations of the obsolete
        Win32-only functions gdk_font_full_name_get() and
        gdk_font_full_name_free().
index 0c46deb3dd87fc94c8721980382451c0851d87b9..66417a63ceb2400e8f33112b8bb044c4da645640 100644 (file)
@@ -1032,7 +1032,37 @@ gtk_get_default_language (void)
   PangoLanguage *result;
   gchar *p;
   
+#ifdef G_OS_WIN32
+  /* Somebody might try to set the locale for this process using the
+   * LANG or LC_ environment variables. The Microsoft C library
+   * doesn't know anything about them. You set the locale in the
+   * Control Panel. Setting these env vars won't have any affect on
+   * locale-dependent C library functions like ctime. But just for
+   * kicks, do obey LC_ALL, LANG and LC_CTYPE in GTK. (This also makes
+   * it easier to test GTK and Pango in various default languages, you
+   * don't have to clickety-click in the Control Panel, you can simply
+   * start the program with LC_ALL=something on the command line.)
+   */
+  p = getenv ("LC_ALL");
+  if (p != NULL)
+    lang = g_strdup (p);
+  else
+    {
+      p = getenv ("LANG");
+      if (p != NULL)
+       lang = g_strdup (p);
+      else
+       {
+         p = getenv ("LC_CTYPE");
+         if (p != NULL)
+           lang = g_strdup (p);
+         else
+           lang = g_win32_getlocale ();
+       }
+    }
+#else
   lang = g_strdup (setlocale (LC_CTYPE, NULL));
+#endif
   p = strchr (lang, '.');
   if (p)
     *p = '\0';