Mercurial > pidgin
view plugins/perl/common/Prefs.xs @ 12919:248b8b39c671
[gaim-migrate @ 15272]
Replace GaimBlistNodeAction with the more generic GaimMenuAction, this is in
preparation for letting the chat room user list have extensible menus like the
blist entries do. (I know it's not exactly the prettiest, and the callback
isn't exactly type-safe, when we eventually gobjectify everything we can get
some safety back by using (GObject, gpointer) but that's for later.)
I'm planning to look into merging GaimPluginActions into GaimMenuActions as
well.
committer: Tailor Script <tailor@pidgin.im>
author | Etan Reisner <pidgin@unreliablesource.net> |
---|---|
date | Tue, 17 Jan 2006 23:22:19 +0000 |
parents | c886fc7e3f24 |
children |
line wrap: on
line source
#include "module.h" MODULE = Gaim::Prefs PACKAGE = Gaim::Prefs PREFIX = gaim_prefs_ PROTOTYPES: ENABLE void gaim_prefs_add_bool(name, value) const char *name gboolean value void gaim_prefs_add_int(name, value) const char *name int value void gaim_prefs_add_none(name) const char *name void gaim_prefs_add_string(name, value) const char *name const char *value void gaim_prefs_add_string_list(name, value) const char *name SV *value PREINIT: GList *t_GL; int i, t_len; PPCODE: t_GL = NULL; t_len = av_len((AV *)SvRV(value)); for (i = 0; i < t_len; i++) { STRLEN t_sl; t_GL = g_list_append(t_GL, SvPV(*av_fetch((AV *)SvRV(value), i, 0), t_sl)); } gaim_prefs_add_string_list(name, t_GL); void gaim_prefs_destroy() void gaim_prefs_disconnect_by_handle(handle) void * handle void gaim_prefs_disconnect_callback(callback_id) guint callback_id gboolean gaim_prefs_exists(name) const char *name gboolean gaim_prefs_get_bool(name) const char *name void * gaim_prefs_get_handle() int gaim_prefs_get_int(name) const char *name const char * gaim_prefs_get_string(name) const char *name void gaim_prefs_get_string_list(name) const char *name PREINIT: GList *l; PPCODE: for (l = gaim_prefs_get_string_list(name); l != NULL; l = l->next) { XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::PrefValue"))); } Gaim::PrefType gaim_prefs_get_type(name) const char *name void gaim_prefs_init() gboolean gaim_prefs_load() void gaim_prefs_remove(name) const char *name void gaim_prefs_rename(oldname, newname) const char *oldname const char *newname void gaim_prefs_rename_boolean_toggle(oldname, newname) const char *oldname const char *newname void gaim_prefs_set_bool(name, value) const char *name gboolean value void gaim_prefs_set_generic(name, value) const char *name gpointer value void gaim_prefs_set_int(name, value) const char *name int value void gaim_prefs_set_string(name, value) const char *name const char *value void gaim_prefs_set_string_list(name, value) const char *name SV *value PREINIT: GList *t_GL; int i, t_len; PPCODE: t_GL = NULL; t_len = av_len((AV *)SvRV(value)); for (i = 0; i < t_len; i++) { STRLEN t_sl; t_GL = g_list_append(t_GL, SvPV(*av_fetch((AV *)SvRV(value), i, 0), t_sl)); } gaim_prefs_set_string_list(name, t_GL); void gaim_prefs_trigger_callback(name) const char *name void gaim_prefs_uninit() void gaim_prefs_update_old()