Mercurial > pidgin
view src/protocols/oscar/popups.c @ 9522:4399fc6e667a
[gaim-migrate @ 10349]
gtk2.4 file chooserifying gtkimhtmltoolbar.c
I decided not to use gaim_request_file() here. There wasn't a lot
of other Gaim code in gtkimhtmltoolbar.c, and I figured it was
easy enough not to add to it. Besides, this dialog should have an
image preview, and to do that you can't use gtknotify.c
(not without modifying gtknotify.c, anyway, but that's out of the
scope of my changes)
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Tue, 13 Jul 2004 03:20:46 +0000 |
parents | 6d3d8f11e765 |
children |
line wrap: on
line source
/* * Family 0x0008 - Popups. * * Popups are just what it sounds like. They're a way for the server to * open up an informative box on the client's screen. */ #define FAIM_INTERNAL #include <aim.h> /* * This is all there is to it. * * The message is probably HTML. * */ static int parsepopup(aim_session_t *sess, aim_module_t *mod, aim_frame_t *rx, aim_modsnac_t *snac, aim_bstream_t *bs) { aim_rxcallback_t userfunc; aim_tlvlist_t *tl; int ret = 0; char *msg, *url; fu16_t width, height, delay; tl = aim_tlvlist_read(bs); msg = aim_tlv_getstr(tl, 0x0001, 1); url = aim_tlv_getstr(tl, 0x0002, 1); width = aim_tlv_get16(tl, 0x0003, 1); height = aim_tlv_get16(tl, 0x0004, 1); delay = aim_tlv_get16(tl, 0x0005, 1); if ((userfunc = aim_callhandler(sess, rx->conn, snac->family, snac->subtype))) ret = userfunc(sess, rx, msg, url, width, height, delay); aim_tlvlist_free(&tl); free(msg); free(url); return ret; } static int snachandler(aim_session_t *sess, aim_module_t *mod, aim_frame_t *rx, aim_modsnac_t *snac, aim_bstream_t *bs) { if (snac->subtype == 0x0002) return parsepopup(sess, mod, rx, snac, bs); return 0; } faim_internal int popups_modfirst(aim_session_t *sess, aim_module_t *mod) { mod->family = 0x0008; mod->version = 0x0001; mod->toolid = 0x0104; mod->toolversion = 0x0001; mod->flags = 0; strncpy(mod->name, "popups", sizeof(mod->name)); mod->snachandler = snachandler; return 0; }