void exec_buffer_set_callbacks () { struct t_infolist *ptr_infolist; struct t_gui_buffer *ptr_buffer; const char *plugin_name; ptr_infolist = weechat_infolist_get ("buffer", NULL, ""); if (ptr_infolist) { while (weechat_infolist_next (ptr_infolist)) { ptr_buffer = weechat_infolist_pointer (ptr_infolist, "pointer"); plugin_name = weechat_infolist_string (ptr_infolist, "plugin_name"); if (ptr_buffer && plugin_name && (strcmp (plugin_name, EXEC_PLUGIN_NAME) == 0)) { weechat_buffer_set_pointer (ptr_buffer, "close_callback", &exec_buffer_close_cb); weechat_buffer_set_pointer (ptr_buffer, "input_callback", &exec_buffer_input_cb); } } weechat_infolist_free (ptr_infolist); } }
void irc_upgrade_set_buffer_callbacks () { struct t_infolist *infolist; struct t_gui_buffer *ptr_buffer; const char *type; infolist = weechat_infolist_get ("buffer", NULL, NULL); if (infolist) { while (weechat_infolist_next (infolist)) { if (weechat_infolist_pointer (infolist, "plugin") == weechat_irc_plugin) { ptr_buffer = weechat_infolist_pointer (infolist, "pointer"); weechat_buffer_set_pointer (ptr_buffer, "close_callback", &irc_buffer_close_cb); weechat_buffer_set_pointer (ptr_buffer, "input_callback", &irc_input_data_cb); type = weechat_buffer_get_string (ptr_buffer, "localvar_type"); if (type && (strcmp (type, "channel") == 0)) { weechat_buffer_set_pointer (ptr_buffer, "nickcmp_callback", &irc_buffer_nickcmp_cb); } if (strcmp (weechat_infolist_string (infolist, "name"), IRC_RAW_BUFFER_NAME) == 0) { irc_raw_buffer = ptr_buffer; } } } weechat_infolist_free (infolist); } }
void relay_upgrade_set_buffer_callbacks () { struct t_infolist *infolist; struct t_gui_buffer *ptr_buffer; infolist = weechat_infolist_get ("buffer", NULL, NULL); if (infolist) { while (weechat_infolist_next (infolist)) { if (weechat_infolist_pointer (infolist, "plugin") == weechat_relay_plugin) { ptr_buffer = weechat_infolist_pointer (infolist, "pointer"); weechat_buffer_set_pointer (ptr_buffer, "close_callback", &relay_buffer_close_cb); weechat_buffer_set_pointer (ptr_buffer, "input_callback", &relay_buffer_input_cb); if (strcmp (weechat_infolist_string (infolist, "name"), RELAY_BUFFER_NAME) == 0) { relay_buffer = ptr_buffer; } if (strcmp (weechat_infolist_string (infolist, "name"), RELAY_RAW_BUFFER_NAME) == 0) { relay_raw_buffer = ptr_buffer; } } } weechat_infolist_free (infolist); } }
void script_buffer_set_callbacks () { struct t_gui_buffer *ptr_buffer; ptr_buffer = weechat_buffer_search (SCRIPT_PLUGIN_NAME, SCRIPT_BUFFER_NAME); if (ptr_buffer) { script_buffer = ptr_buffer; weechat_buffer_set_pointer (script_buffer, "close_callback", &script_buffer_close_cb); weechat_buffer_set_pointer (script_buffer, "input_callback", &script_buffer_input_cb); } }