diff options
author | Christopher James Lahey <clahey@helixcode.com> | 2000-12-23 13:42:37 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2000-12-23 13:42:37 +0800 |
commit | 9c08224bb70a06686a8a67464bee5ea0b9204d73 (patch) | |
tree | b5f714b623d195e9020ea1f9a738afec269ee6c1 | |
parent | fbd900e99014a0981c0a2a6cd5a56ecaf8358bee (diff) | |
download | gsoc2013-evolution-9c08224bb70a06686a8a67464bee5ea0b9204d73.tar.gz gsoc2013-evolution-9c08224bb70a06686a8a67464bee5ea0b9204d73.tar.zst gsoc2013-evolution-9c08224bb70a06686a8a67464bee5ea0b9204d73.zip |
Added e_xml_get_double_prop_by_name_with_default.
2000-12-23 Christopher James Lahey <clahey@helixcode.com>
* gal/util/e-xml-utils.c, gal/util/e-xml-utils.h: Added
e_xml_get_double_prop_by_name_with_default.
svn path=/trunk/; revision=7137
-rw-r--r-- | e-util/e-xml-utils.c | 22 | ||||
-rw-r--r-- | e-util/e-xml-utils.h | 5 |
2 files changed, 25 insertions, 2 deletions
diff --git a/e-util/e-xml-utils.c b/e-util/e-xml-utils.c index 7802d5daf8..db6be09ebc 100644 --- a/e-util/e-xml-utils.c +++ b/e-util/e-xml-utils.c @@ -148,6 +148,26 @@ e_xml_get_double_prop_by_name(const xmlNode *parent, const xmlChar *prop_name) return ret_val; } +double +e_xml_get_double_prop_by_name_with_default(const xmlNode *parent, const xmlChar *prop_name, + gdouble def) +{ + xmlChar *prop; + double ret_val = 0; + + 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) { + sscanf (prop, "%lf", &ret_val); + xmlFree (prop); + } else { + ret_val = def; + } + return ret_val; +} + void e_xml_set_double_prop_by_name(xmlNode *parent, const xmlChar *prop_name, double value) { @@ -182,7 +202,7 @@ e_xml_get_string_prop_by_name(const xmlNode *parent, const xmlChar *prop_name) } void -e_xml_set_string_prop_by_name(xmlNode *parent, const xmlChar *prop_name, char *value) +e_xml_set_string_prop_by_name(xmlNode *parent, const xmlChar *prop_name, const char *value) { g_return_if_fail (parent != NULL); g_return_if_fail (prop_name != NULL); diff --git a/e-util/e-xml-utils.h b/e-util/e-xml-utils.h index 6d857e4e1d..0a722112f0 100644 --- a/e-util/e-xml-utils.h +++ b/e-util/e-xml-utils.h @@ -47,6 +47,9 @@ void e_xml_set_bool_prop_by_name (xmlNode *parent, double e_xml_get_double_prop_by_name (const xmlNode *parent, const xmlChar *prop_name); +double e_xml_get_double_prop_by_name_with_default(const xmlNode *parent, + const xmlChar *prop_name, + gdouble def); void e_xml_set_double_prop_by_name (xmlNode *parent, const xmlChar *prop_name, double value); @@ -55,7 +58,7 @@ char *e_xml_get_string_prop_by_name (const xmlNode *parent, const xmlChar *prop_name); void e_xml_set_string_prop_by_name (xmlNode *parent, const xmlChar *prop_name, - char *value); + const char *value); char *e_xml_get_translated_string_prop_by_name (const xmlNode *parent, const xmlChar *prop_name); |