diff options
author | Christopher James Lahey <clahey@ximian.com> | 2001-04-11 07:33:25 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2001-04-11 07:33:25 +0800 |
commit | 8350463f8446783935dee97d9dc54e7d17c277aa (patch) | |
tree | 4ba270eac3a19e63c7dab7556e814a64e02d2de7 /widgets/misc/e-unicode.c | |
parent | 1991d205daa7f5b5754ba67328996c904dc26ecd (diff) | |
download | gsoc2013-evolution-8350463f8446783935dee97d9dc54e7d17c277aa.tar gsoc2013-evolution-8350463f8446783935dee97d9dc54e7d17c277aa.tar.gz gsoc2013-evolution-8350463f8446783935dee97d9dc54e7d17c277aa.tar.bz2 gsoc2013-evolution-8350463f8446783935dee97d9dc54e7d17c277aa.tar.lz gsoc2013-evolution-8350463f8446783935dee97d9dc54e7d17c277aa.tar.xz gsoc2013-evolution-8350463f8446783935dee97d9dc54e7d17c277aa.tar.zst gsoc2013-evolution-8350463f8446783935dee97d9dc54e7d17c277aa.zip |
New function to translate a string and then convert it to utf8. Acts just
2001-04-10 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-unicode.c, gal/widgets/e-unicode.h
(e_xml_get_translated_utf8_string_prop_by_name): New function to
translate a string and then convert it to utf8. Acts just like
e_xml_get_translated_string and then calls
e_utf_from_locale_string on it.
* gal/util/e-xml-utils.c: Changed e_xml_get_translated_string to
take a string with no underscore at the beginning and search for
both that prop and the same prop with the underscore prepended.
If it finds it without the underscore, it returns it. If it finds
it with the underscore, it translates.
* gal/util/e-xml-utils.c, gal/util/e-xml-utils.h: Reformatted
these a bit.
svn path=/trunk/; revision=9216
Diffstat (limited to 'widgets/misc/e-unicode.c')
-rw-r--r-- | widgets/misc/e-unicode.c | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/widgets/misc/e-unicode.c b/widgets/misc/e-unicode.c index fe16cb2102..04b5c8f802 100644 --- a/widgets/misc/e-unicode.c +++ b/widgets/misc/e-unicode.c @@ -9,6 +9,10 @@ */ #include <config.h> + +#include "e-unicode.h" + +#include "gal/util/e-i18n.h" #include <ctype.h> #include <string.h> #include <stdio.h> @@ -18,8 +22,8 @@ #include <gdk/gdkx.h> #include <gdk/gdkkeysyms.h> #include <gtk/gtkmenuitem.h> -#include "e-unicode.h" #include "e-font.h" +#include <gnome-xml/xmlmemory.h> #define FONT_TESTING #define MAX_DECOMP 8 @@ -2960,3 +2964,31 @@ e_stripped_char (unicode_char_t ch) return 0; } + +gchar * +e_xml_get_translated_utf8_string_prop_by_name (const xmlNode *parent, const xmlChar *prop_name) +{ + xmlChar *prop; + gchar *ret_val = NULL; + gchar *combined_name; + + g_return_val_if_fail (parent != NULL, 0); + g_return_val_if_fail (prop_name != NULL, 0); + + prop = xmlGetProp ((xmlNode *) parent, prop_name); + if (prop != NULL) { + ret_val = e_utf8_from_locale_string (prop); + xmlFree (prop); + return ret_val; + } + + combined_name = g_strdup_printf("_%s", prop_name); + prop = xmlGetProp ((xmlNode *) parent, combined_name); + if (prop != NULL) { + ret_val = e_utf8_from_locale_string (gettext (prop)); + xmlFree (prop); + } + g_free(combined_name); + + return ret_val; +} |