Comment append des préférences personnalisées dans Pidgin?

Je dois append une préférence dans Pidgin pour servir mon élément de menu personnalisé, comme indiqué dans Comment puis-je append un élément au menu Pidgin . Comment puis-je atteindre cet objective?

    Vous devez trouver la fonction pidgin_blist_init dans pidgin/gtkblist.c et append la ligne suivante:

     purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/blist/show_groups", FALSE); 

    après

     purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/blist/show_empty_groups", FALSE); 

    Il existe également des fonctions pour append les types int , ssortingng , none , ssortingng_list , path et path_list . Maintenant, nous devons associer notre élément de menu personnalisé à une fonction personnalisée. Ceci est fait dans pidgin_blist_show . Il suffit d’append la ligne

     purple_prefs_connect_callback(handle, PIDGIN_PREFS_ROOT "/blist/show_groups", _prefs_change_redo_list_groups, NULL); 

    après

     purple_prefs_connect_callback(handle, PIDGIN_PREFS_ROOT "/blist/show_empty_groups", _prefs_change_redo_list, NULL); 

    Et pour finir, ajoutez la fonction _prefs_change_redo_list_groups juste après la _prefs_change_redo_list :

     static void _prefs_change_redo_list_groups(const char *name, PurplePrefType type, gconstpointer val, gpointer data) { purple_blist_set_groups_visible(purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/blist/show_groups")); _prefs_change_redo_list(name, type, val, data); } 

    Le purple_blist_set_groups_visible sera également publié une fois que je l’ purple_blist_set_groups_visible développé, je le promets;)