Mercurial > pidgin
view plugins/perl/common/ConvWindow.xs @ 9740:2bb5e2cd64bd
[gaim-migrate @ 10605]
" A few days back, someone on #gaim was wondering how to
block IM's from IRC, which isn't supported by gaim, as
this isn't supported at a protocol level. I decided to
implement gaim's privacy options (permit lists, deny
lists, block all users, and permit people on buddy
list) at a local level for IRC and
Zephyr. Jabber, SILC, and Trepia don't seem to support
deny or permit lists in Gaim, but I don't use the
latter two protocols and wasn't sure about how to
implemnt in in Jabber.
When implementing it, I noticed that changes in privacy
settings didn't automatically cause blist.xml to get
scheduled
for writing (even on exit). To fix this, I needed to
make schedule_blist_save in blist.c non-static and call
it from serv_set_permit_deny() in server.c, and
gaim_privacy_{permit,deny}_{add,remove} in privacy.c ." --Arun A Tharuvai
committer: Tailor Script <tailor@pidgin.im>
| author | Luke Schierer <lschiere@pidgin.im> |
|---|---|
| date | Wed, 11 Aug 2004 23:52:48 +0000 |
| parents | b14a7bc189b8 |
| children | 6132e58aa618 |
line wrap: on
line source
#include "module.h" MODULE = Gaim::ConvWindow PACKAGE = Gaim::ConvWindow PREFIX = gaim_conv_window_ PROTOTYPES: ENABLE Gaim::ConvWindow gaim_conv_window_new() void DESTROY(win) Gaim::ConvWindow win CODE: gaim_conv_window_destroy(win); void gaim_conv_window_show(win) Gaim::ConvWindow win void gaim_conv_window_hide(win) Gaim::ConvWindow win void gaim_conv_window_raise(win) Gaim::ConvWindow win void gaim_conv_window_flash(win) Gaim::ConvWindow win int gaim_conv_window_add_conversation(win, conv) Gaim::ConvWindow win Gaim::Conversation conv Gaim::Conversation gaim_conv_window_remove_conversation(win, index) Gaim::ConvWindow win unsigned int index void gaim_conv_window_move_conversation(win, index, new_index) Gaim::ConvWindow win unsigned int index unsigned int new_index Gaim::Conversation gaim_conv_window_get_conversation_at(win, index) Gaim::ConvWindow win unsigned int index size_t gaim_conv_window_get_conversation_count(win) Gaim::ConvWindow win void gaim_conv_window_switch_conversation(win, index) Gaim::ConvWindow win unsigned int index Gaim::Conversation gaim_conv_window_get_active_conversation(win) Gaim::ConvWindow win void conversations(win) Gaim::ConvWindow win PREINIT: GList *l; CODE: for (l = gaim_conv_window_get_conversations(win); l != NULL; l = l->next) { XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::Conversation"))); } MODULE = Gaim::ConvWindow PACKAGE = Gaim PREFIX = gaim_ PROTOTYPES: ENABLE void conv_windows() PREINIT: GList *l; CODE: for (l = gaim_get_windows(); l != NULL; l = l->next) XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::ConvWindow")));
