我需要在 Pidgin 中添加首选项以提供我的自定义菜单项,如如何将项目添加到 Pidgin 菜单中所示。我怎样才能做到这一点?
问问题
59 次
1 回答
0
您需要在其中找到函数pidgin_blist_init
并pidgin/gtkblist.c
添加以下行:
purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/blist/show_groups", FALSE);
后
purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/blist/show_empty_groups", FALSE);
还有添加int
、、、、string
和类型none
的函数string_list
。现在,我们需要将自定义菜单项与自定义功能相关联。这是在. 只需添加行path
path_list
pidgin_blist_show
purple_prefs_connect_callback(handle, PIDGIN_PREFS_ROOT "/blist/show_groups",
_prefs_change_redo_list_groups, NULL);
后
purple_prefs_connect_callback(handle, PIDGIN_PREFS_ROOT "/blist/show_empty_groups",
_prefs_change_redo_list, NULL);
最后,在:_prefs_change_redo_list_groups
之后添加函数_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);
}
我保证,一旦我开发了它,它purple_blist_set_groups_visible
也会被发布;)
于 2014-04-30T04:21:52.957 回答