[atk] atkobject: Added atk_object_get_object_locale
- From: Alejandro Piñeiro Iglesias <apinheiro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [atk] atkobject: Added atk_object_get_object_locale
- Date: Mon, 18 Feb 2013 22:21:52 +0000 (UTC)
commit 08177bf931e23c1e40c7d848cca6bcee337178ad
Author: Alejandro Piñeiro <apinheiro igalia com>
Date: Mon Feb 18 20:10:22 2013 +0100
atkobject: Added atk_object_get_object_locale
https://bugzilla.gnome.org/show_bug.cgi?id=694117
atk/atkobject.c | 37 ++++++++++++++++++++++++++++++++++++-
atk/atkobject.h | 5 ++++-
2 files changed, 40 insertions(+), 2 deletions(-)
---
diff --git a/atk/atkobject.c b/atk/atkobject.c
index fe17884..26e6c2f 100755
--- a/atk/atkobject.c
+++ b/atk/atkobject.c
@@ -340,7 +340,8 @@ static void atk_object_real_remove_property_change_handler
guint handler_id);
static void atk_object_notify (GObject *obj,
GParamSpec *pspec);
-
+static const gchar* atk_object_real_get_object_locale
+ (AtkObject *object);
static guint atk_object_signals[LAST_SIGNAL] = { 0, };
@@ -497,6 +498,7 @@ atk_object_class_init (AtkObjectClass *klass)
atk_object_real_connect_property_change_handler;
klass->remove_property_change_handler =
atk_object_real_remove_property_change_handler;
+ klass->get_object_locale = atk_object_real_get_object_locale;
/*
* We do not define default signal handlers here
@@ -1559,6 +1561,39 @@ atk_role_get_localized_name (AtkRole role)
return atk_role_get_name (role);
}
+static const gchar*
+atk_object_real_get_object_locale (AtkObject *object)
+{
+ return setlocale (LC_MESSAGES, NULL);
+}
+
+/**
+ * atk_object_get_object_locale:
+ * @accessible: an #AtkObject
+ *
+ * Gets a UTF-8 string indicating the POSIX-style LC_MESSAGES locale
+ * of @accessible.
+ *
+ * Since: 2.7.90
+ *
+ * Returns: a UTF-8 string indicating the POSIX-style LC_MESSAGES
+ * locale of @accessible.
+ **/
+const gchar*
+atk_object_get_object_locale (AtkObject *accessible)
+{
+ AtkObjectClass *klass;
+
+ g_return_val_if_fail (ATK_IS_OBJECT (accessible), NULL);
+
+ klass = ATK_OBJECT_GET_CLASS (accessible);
+ if (klass->get_object_locale)
+ return (klass->get_object_locale) (accessible);
+ else
+ return NULL;
+}
+
+
/**
* atk_role_for_name:
* @name: a string which is the (non-localized) name of an ATK role.
diff --git a/atk/atkobject.h b/atk/atkobject.h
index 83d77fd..4e15919 100755
--- a/atk/atkobject.h
+++ b/atk/atkobject.h
@@ -531,8 +531,10 @@ void (* initialize) (AtkObject
* Since ATK 1.12
*/
AtkAttributeSet* (*get_attributes) (AtkObject *accessible);
+
+ const gchar* (*get_object_locale) (AtkObject *accessible);
+
AtkFunction pad1;
- AtkFunction pad2;
};
GType atk_object_get_type (void);
@@ -613,6 +615,7 @@ gboolean atk_object_remove_relationship (AtkObject *
AtkRelationType relationship,
AtkObject *target);
const gchar* atk_role_get_localized_name (AtkRole role);
+const gchar* atk_object_get_object_locale (AtkObject *accessible);
/* */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]