Drop g[dt]k_set_locale
These functions were essentially just calling setlocale anyway. The X11 version was also setting a gdk_use_mb variable that is not used anywhere.
This commit is contained in:
@ -8,8 +8,6 @@ gdk_init
|
|||||||
gdk_init_check
|
gdk_init_check
|
||||||
gdk_parse_args
|
gdk_parse_args
|
||||||
gdk_get_display_arg_name
|
gdk_get_display_arg_name
|
||||||
gdk_set_locale
|
|
||||||
gdk_set_sm_client_id
|
|
||||||
gdk_notify_startup_complete
|
gdk_notify_startup_complete
|
||||||
gdk_notify_startup_complete_with_id
|
gdk_notify_startup_complete_with_id
|
||||||
|
|
||||||
|
@ -5282,7 +5282,6 @@ gtk_window_group_get_type
|
|||||||
<SECTION>
|
<SECTION>
|
||||||
<FILE>gtkmain</FILE>
|
<FILE>gtkmain</FILE>
|
||||||
<TITLE>General</TITLE>
|
<TITLE>General</TITLE>
|
||||||
gtk_set_locale
|
|
||||||
gtk_disable_setlocale
|
gtk_disable_setlocale
|
||||||
gtk_get_default_language
|
gtk_get_default_language
|
||||||
gtk_parse_args
|
gtk_parse_args
|
||||||
|
@ -201,7 +201,6 @@ x11_introspection_files = \
|
|||||||
x11/gdkeventsource.c \
|
x11/gdkeventsource.c \
|
||||||
x11/gdkeventtranslator.c \
|
x11/gdkeventtranslator.c \
|
||||||
x11/gdkgeometry-x11.c \
|
x11/gdkgeometry-x11.c \
|
||||||
x11/gdkim-x11.c \
|
|
||||||
x11/gdkkeys-x11.c \
|
x11/gdkkeys-x11.c \
|
||||||
x11/gdkmain-x11.c \
|
x11/gdkmain-x11.c \
|
||||||
x11/gdkproperty-x11.c \
|
x11/gdkproperty-x11.c \
|
||||||
|
@ -317,7 +317,6 @@ gdk_selection_property_get
|
|||||||
gdk_selection_send_notify
|
gdk_selection_send_notify
|
||||||
gdk_selection_send_notify_for_display
|
gdk_selection_send_notify_for_display
|
||||||
gdk_set_double_click_time
|
gdk_set_double_click_time
|
||||||
gdk_set_locale
|
|
||||||
gdk_set_pointer_hooks
|
gdk_set_pointer_hooks
|
||||||
gdk_set_program_class
|
gdk_set_program_class
|
||||||
gdk_set_show_events
|
gdk_set_show_events
|
||||||
|
@ -50,29 +50,7 @@ gboolean gdk_init_check (gint *argc,
|
|||||||
void gdk_add_option_entries_libgtk_only (GOptionGroup *group);
|
void gdk_add_option_entries_libgtk_only (GOptionGroup *group);
|
||||||
void gdk_pre_parse_libgtk_only (void);
|
void gdk_pre_parse_libgtk_only (void);
|
||||||
|
|
||||||
/**
|
void gdk_enable_multidevice (void);
|
||||||
* gdk_set_locale:
|
|
||||||
*
|
|
||||||
* Initializes the support for internationalization by calling the <function>setlocale()</function>
|
|
||||||
* system call. This function is called by gtk_set_locale() and so GTK+
|
|
||||||
* applications should use that instead.
|
|
||||||
*
|
|
||||||
* The locale to use is determined by the <envar>LANG</envar> environment variable,
|
|
||||||
* so to run an application in a certain locale you can do something like this:
|
|
||||||
* <informalexample>
|
|
||||||
* <programlisting>
|
|
||||||
* export LANG="fr"
|
|
||||||
* ... run application ...
|
|
||||||
* </programlisting>
|
|
||||||
* </informalexample>
|
|
||||||
*
|
|
||||||
* If the locale is not supported by X then it is reset to the standard "C"
|
|
||||||
* locale.
|
|
||||||
*
|
|
||||||
* Returns: the resulting locale.
|
|
||||||
*/
|
|
||||||
gchar* gdk_set_locale (void);
|
|
||||||
void gdk_disable_multidevice (void);
|
|
||||||
|
|
||||||
G_CONST_RETURN gchar *gdk_get_program_class (void);
|
G_CONST_RETURN gchar *gdk_get_program_class (void);
|
||||||
void gdk_set_program_class (const gchar *program_class);
|
void gdk_set_program_class (const gchar *program_class);
|
||||||
|
@ -36,7 +36,6 @@ libgdk_x11_la_SOURCES = \
|
|||||||
gdkeventtranslator.c \
|
gdkeventtranslator.c \
|
||||||
gdkeventtranslator.h \
|
gdkeventtranslator.h \
|
||||||
gdkgeometry-x11.c \
|
gdkgeometry-x11.c \
|
||||||
gdkim-x11.c \
|
|
||||||
gdkkeys-x11.c \
|
gdkkeys-x11.c \
|
||||||
gdkmain-x11.c \
|
gdkmain-x11.c \
|
||||||
gdkproperty-x11.c \
|
gdkproperty-x11.c \
|
||||||
|
@ -1117,7 +1117,7 @@ gdk_event_init (GdkDisplay *display)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gdk_input_init (GdkDisplay *display)
|
gdk_x11_display_init_input (GdkDisplay *display)
|
||||||
{
|
{
|
||||||
GdkDisplayX11 *display_x11;
|
GdkDisplayX11 *display_x11;
|
||||||
GdkDeviceManager *device_manager;
|
GdkDeviceManager *device_manager;
|
||||||
@ -1446,8 +1446,8 @@ _gdk_x11_display_open (const gchar *display_name)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
gdk_input_init (display);
|
gdk_x11_display_init_input (display);
|
||||||
_gdk_x11_dnd_init (display);
|
_gdk_x11_display_init_dnd (display);
|
||||||
|
|
||||||
for (i = 0; i < ScreenCount (display_x11->xdisplay); i++)
|
for (i = 0; i < ScreenCount (display_x11->xdisplay); i++)
|
||||||
_gdk_x11_screen_setup (display_x11->screens[i]);
|
_gdk_x11_screen_setup (display_x11->screens[i]);
|
||||||
|
@ -3072,11 +3072,8 @@ xdnd_drop_filter (GdkXEvent *xev,
|
|||||||
return GDK_FILTER_REMOVE;
|
return GDK_FILTER_REMOVE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*************************************************************
|
|
||||||
************************** Public API ***********************
|
|
||||||
*************************************************************/
|
|
||||||
void
|
void
|
||||||
_gdk_x11_dnd_init (GdkDisplay *display)
|
_gdk_x11_display_init_dnd (GdkDisplay *display)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
init_byte_order ();
|
init_byte_order ();
|
||||||
|
@ -1,103 +0,0 @@
|
|||||||
/* GDK - The GIMP Drawing Kit
|
|
||||||
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
|
||||||
*
|
|
||||||
* This library is free software; you can redistribute it and/or
|
|
||||||
* modify it under the terms of the GNU Lesser General Public
|
|
||||||
* License as published by the Free Software Foundation; either
|
|
||||||
* version 2 of the License, or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This library is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
* Lesser General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Lesser General Public
|
|
||||||
* License along with this library; if not, write to the
|
|
||||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
||||||
* Boston, MA 02111-1307, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
|
|
||||||
* file for a list of people on the GTK+ Team. See the ChangeLog
|
|
||||||
* files for a list of changes. These files are distributed with
|
|
||||||
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
|
|
||||||
#include "gdkmain.h"
|
|
||||||
#include "gdkinternals.h"
|
|
||||||
#include "gdkdisplay-x11.h"
|
|
||||||
#include "gdkprivate-x11.h"
|
|
||||||
|
|
||||||
#include <locale.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
|
|
||||||
/* If this variable is FALSE, it indicates that we should
|
|
||||||
* avoid trying to use multibyte conversion functions and
|
|
||||||
* assume everything is 1-byte per character
|
|
||||||
*/
|
|
||||||
static gboolean gdk_use_mb;
|
|
||||||
|
|
||||||
void
|
|
||||||
_gdk_x11_initialize_locale (void)
|
|
||||||
{
|
|
||||||
wchar_t result;
|
|
||||||
gchar *current_locale;
|
|
||||||
static char *last_locale = NULL;
|
|
||||||
|
|
||||||
gdk_use_mb = FALSE;
|
|
||||||
|
|
||||||
current_locale = setlocale (LC_ALL, NULL);
|
|
||||||
|
|
||||||
if (last_locale && strcmp (last_locale, current_locale) == 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
g_free (last_locale);
|
|
||||||
last_locale = g_strdup (current_locale);
|
|
||||||
|
|
||||||
if (XSupportsLocale ())
|
|
||||||
XSetLocaleModifiers ("");
|
|
||||||
|
|
||||||
if ((strcmp (current_locale, "C")) && (strcmp (current_locale, "POSIX")))
|
|
||||||
{
|
|
||||||
gdk_use_mb = TRUE;
|
|
||||||
|
|
||||||
#ifndef X_LOCALE
|
|
||||||
/* Detect ancient GNU libc, where mb == UTF8. Not useful unless it's
|
|
||||||
* really a UTF8 locale. The below still probably will
|
|
||||||
* screw up on Greek, Cyrillic, etc, encoded as UTF8.
|
|
||||||
*/
|
|
||||||
|
|
||||||
if ((MB_CUR_MAX == 2) &&
|
|
||||||
(mbstowcs (&result, "\xdd\xa5", 1) > 0) &&
|
|
||||||
result == 0x765)
|
|
||||||
{
|
|
||||||
if ((strlen (current_locale) < 4) ||
|
|
||||||
g_ascii_strcasecmp (current_locale + strlen(current_locale) - 4,
|
|
||||||
"utf8"))
|
|
||||||
gdk_use_mb = FALSE;
|
|
||||||
}
|
|
||||||
#endif /* X_LOCALE */
|
|
||||||
}
|
|
||||||
|
|
||||||
GDK_NOTE (XIM,
|
|
||||||
g_message ("%s multi-byte string functions.",
|
|
||||||
gdk_use_mb ? "Using" : "Not using"));
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
gchar*
|
|
||||||
gdk_set_locale (void)
|
|
||||||
{
|
|
||||||
if (!setlocale (LC_ALL,""))
|
|
||||||
g_warning ("locale not supported by C library");
|
|
||||||
|
|
||||||
_gdk_x11_initialize_locale ();
|
|
||||||
|
|
||||||
return setlocale (LC_ALL, NULL);
|
|
||||||
}
|
|
@ -80,8 +80,6 @@ static int gdk_x_io_error (Display *display);
|
|||||||
void
|
void
|
||||||
_gdk_x11_windowing_init (void)
|
_gdk_x11_windowing_init (void)
|
||||||
{
|
{
|
||||||
_gdk_x11_initialize_locale ();
|
|
||||||
|
|
||||||
XSetErrorHandler (gdk_x_error);
|
XSetErrorHandler (gdk_x_error);
|
||||||
XSetIOErrorHandler (gdk_x_io_error);
|
XSetIOErrorHandler (gdk_x_io_error);
|
||||||
}
|
}
|
||||||
|
@ -149,7 +149,6 @@ void _gdk_x11_keymap_add_virt_mods (GdkKeymap *keymap,
|
|||||||
gboolean _gdk_x11_keymap_key_is_modifier (GdkKeymap *keymap,
|
gboolean _gdk_x11_keymap_key_is_modifier (GdkKeymap *keymap,
|
||||||
guint keycode);
|
guint keycode);
|
||||||
|
|
||||||
void _gdk_x11_initialize_locale (void);
|
|
||||||
void _gdk_x11_windowing_init (void);
|
void _gdk_x11_windowing_init (void);
|
||||||
|
|
||||||
void _gdk_x11_window_grab_check_unmap (GdkWindow *window,
|
void _gdk_x11_window_grab_check_unmap (GdkWindow *window,
|
||||||
@ -214,9 +213,7 @@ void _gdk_x11_precache_atoms (GdkDisplay *display,
|
|||||||
const gchar * const *atom_names,
|
const gchar * const *atom_names,
|
||||||
gint n_atoms);
|
gint n_atoms);
|
||||||
|
|
||||||
void _gdk_events_init (GdkDisplay *display);
|
void _gdk_x11_display_init_dnd (GdkDisplay *display);
|
||||||
void _gdk_events_uninit (GdkDisplay *display);
|
|
||||||
void _gdk_x11_dnd_init (GdkDisplay *display);
|
|
||||||
|
|
||||||
void _gdk_x11_screen_init_root_window (GdkScreen *screen);
|
void _gdk_x11_screen_init_root_window (GdkScreen *screen);
|
||||||
void _gdk_x11_screen_init_visuals (GdkScreen *screen);
|
void _gdk_x11_screen_init_visuals (GdkScreen *screen);
|
||||||
|
@ -2305,7 +2305,6 @@ gtk_separator_tool_item_get_type G_GNUC_CONST
|
|||||||
gtk_separator_tool_item_new
|
gtk_separator_tool_item_new
|
||||||
gtk_separator_tool_item_set_draw
|
gtk_separator_tool_item_set_draw
|
||||||
gtk_set_debug_flags
|
gtk_set_debug_flags
|
||||||
gtk_set_locale
|
|
||||||
gtk_settings_get_default
|
gtk_settings_get_default
|
||||||
gtk_settings_get_for_screen
|
gtk_settings_get_for_screen
|
||||||
gtk_settings_get_type G_GNUC_CONST
|
gtk_settings_get_type G_GNUC_CONST
|
||||||
|
@ -1169,37 +1169,6 @@ gtk_init_check_abi_check (int *argc, char ***argv, int num_checks, size_t sizeof
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
|
||||||
* gtk_set_locale:
|
|
||||||
*
|
|
||||||
* Initializes internationalization support for GTK+. gtk_init()
|
|
||||||
* automatically does this, so there is typically no point
|
|
||||||
* in calling this function.
|
|
||||||
*
|
|
||||||
* If you are calling this function because you changed the locale
|
|
||||||
* after GTK+ is was initialized, then calling this function
|
|
||||||
* may help a bit. (Note, however, that changing the locale
|
|
||||||
* after GTK+ is initialized may produce inconsistent results and
|
|
||||||
* is not really supported.)
|
|
||||||
*
|
|
||||||
* In detail - sets the current locale according to the
|
|
||||||
* program environment. This is the same as calling the C library function
|
|
||||||
* <literal>setlocale (LC_ALL, "")</literal> but also takes care of the
|
|
||||||
* locale specific setup of the windowing system used by GDK.
|
|
||||||
*
|
|
||||||
* Returns: a string corresponding to the locale set, typically in the
|
|
||||||
* form lang_COUNTRY, where lang is an ISO-639 language code, and
|
|
||||||
* COUNTRY is an ISO-3166 country code. On Unix, this form matches the
|
|
||||||
* result of the setlocale(); it is also used on other machines, such as
|
|
||||||
* Windows, where the C library returns a different result. The string is
|
|
||||||
* owned by GTK+ and should not be modified or freed.
|
|
||||||
**/
|
|
||||||
gchar *
|
|
||||||
gtk_set_locale (void)
|
|
||||||
{
|
|
||||||
return gdk_set_locale ();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* _gtk_get_lc_ctype:
|
* _gtk_get_lc_ctype:
|
||||||
*
|
*
|
||||||
|
@ -112,7 +112,6 @@ gboolean gtk_init_check_abi_check (int *argc,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
void gtk_disable_setlocale (void);
|
void gtk_disable_setlocale (void);
|
||||||
gchar * gtk_set_locale (void);
|
|
||||||
PangoLanguage *gtk_get_default_language (void);
|
PangoLanguage *gtk_get_default_language (void);
|
||||||
gboolean gtk_events_pending (void);
|
gboolean gtk_events_pending (void);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user