diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2011-07-31 21:30:22 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2011-07-31 21:30:22 +0000 |
commit | f7d5027a056474db62118d46a39039c10328ea5d (patch) | |
tree | c67684624990d215261ebdc55c4b37a3dc966fbe /navit/osd.c | |
parent | 975925c4391fb4f68fbfe928534cf1d50adb31f4 (diff) | |
download | navit-f7d5027a056474db62118d46a39039c10328ea5d.tar.gz |
Add:Core:osd_get and set_attr functions based on patch by dandor
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@4668 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/osd.c')
-rw-r--r-- | navit/osd.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/navit/osd.c b/navit/osd.c index 9766f0913..ec38b990b 100644 --- a/navit/osd.c +++ b/navit/osd.c @@ -33,6 +33,7 @@ struct osd { struct osd_methods meth; struct osd_priv *priv; + struct attr** osd_attrs; }; static GHashTable *osd_hash = NULL; @@ -61,10 +62,17 @@ osd_new(struct attr *parent, struct attr **attrs) g_hash_table_insert(osd_hash, g_strdup(attr->u.str), o); } + o->osd_attrs = attr_list_dup(attrs); return o; } +int +osd_get_attr(struct osd *this_, enum attr_type type, struct attr *attr, struct attr_iter *iter) +{ + return attr_generic_get_attr(this_->osd_attrs, NULL, type, attr, NULL); +} + struct osd* osd_get_osd_by_name(char *name) { @@ -74,6 +82,7 @@ osd_get_osd_by_name(char *name) int osd_set_attr(struct osd *osd, struct attr* attr) { + osd->osd_attrs=attr_generic_set_attr(osd->osd_attrs,attr); if(osd && osd->meth.set_attr) { osd->meth.set_attr(osd->priv, attr); } |