Mercurial > ~mikael > mcabber > hg
diff mcabber/src/settings.c @ 867:7f056c566569
Commands /alias & /bind list the key bindings and aliases
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Wed, 24 May 2006 23:30:31 +0200 |
parents | 1dd19363c73e |
children | a0ddc43b421e |
line wrap: on
line diff
--- a/mcabber/src/settings.c Wed May 24 22:29:05 2006 +0200 +++ b/mcabber/src/settings.c Wed May 24 23:30:31 2006 +0200 @@ -323,4 +323,23 @@ return rstatus; } +// settings_foreach(type, pfunction, param) +// Call pfunction(param, key, value) for each setting with requested type. +void settings_foreach(guint type, void (*pfunc)(void *param, char *k, char *v), + void *param) +{ + GSList **plist; + GSList *ptr; + T_setting *setting; + + plist = get_list_ptr(type); + + if (!*plist) return; + + for (ptr = *plist ; ptr; ptr = g_slist_next(ptr)) { + setting = ptr->data; + pfunc(param, setting->name, setting->value); + } +} + /* vim: set expandtab cindent cinoptions=>2\:2(0: For Vim users... */