+ ctypedef struct PurpleBuddyList:
+ PurpleBlistNode *root
+ glib.GHashTable *buddies
+ void *ui_data
+
+ ctypedef struct PurpleBlistUiOps:
+ void (*new_list) (PurpleBuddyList *list)
+ void (*new_node) (PurpleBlistNode *node)
+ void (*show) (PurpleBuddyList *list)
+ void (*update) (PurpleBuddyList *list, PurpleBlistNode *node)
+ void (*remove) (PurpleBuddyList *list, PurpleBlistNode *node)
+ void (*destroy) (PurpleBuddyList *list)
+ void (*set_visible) (PurpleBuddyList *list, glib.gboolean show)
+ void (*request_add_buddy) (account.PurpleAccount *account, const_char *username, const_char *group, const_char *alias)
+ void (*request_add_chat) (account.PurpleAccount *account, PurpleGroup *group, const_char *alias, const_char *name)
+ void (*request_add_group) ()
+