Mercurial > pidgin
view plugins/notify.c @ 228:f3b61c04f44e
[gaim-migrate @ 238]
Buddy lists (and changes) are cached to ~/.gaimbdcache_<sn> where <sn> is your
screen name (folder to uppercase). If for some reason, you log into the AOL
server and the buddy list comes back empty, we check for a cache file, and, if
we find one, read it in. This essentially implements recovery from a server
crash at AOL (AOL does not back up machines that contain TOC-based buddy lists,
unfortunately).
committer: Tailor Script <tailor@pidgin.im>
author | Syd Logan <slogan> |
---|---|
date | Wed, 10 May 2000 07:41:25 +0000 |
parents | e9ca9146ebf1 |
children | 18e147714c4b |
line wrap: on
line source
#define GAIM_PLUGINS #include "gaim.h" #include <gtk/gtk.h> #include <string.h> void *handle; void received_im(char **who, char **what, void *m) { char buf[256]; struct conversation *cnv = find_conversation(*who); GtkWindow *win; if (!strcmp(*what, LAGOMETER_STR)) return; if (cnv == NULL) cnv = new_conversation(*who); win = (GtkWindow *)cnv->window; g_snprintf(buf, sizeof(buf), "%s", win->title); if (!strstr(buf, "(*) ")) { g_snprintf(buf, sizeof(buf), "(*) %s", win->title); gtk_window_set_title(win, buf); } } void sent_im(char *who, char **what, void *m) { char buf[256]; struct conversation *c = find_conversation(who); GtkWindow *win = (GtkWindow *)c->window; g_snprintf(buf, sizeof(buf), "%s", win->title); if (strstr(buf, "(*) ")) { g_snprintf(buf, sizeof(buf), "%s", &win->title[4]); gtk_window_set_title(win, buf); } } void gaim_plugin_init(void *hndl) { handle = hndl; gaim_signal_connect(handle, event_im_recv, received_im, NULL); gaim_signal_connect(handle, event_im_send, sent_im, NULL); } char *name() { return "Visual Notification"; } char *description() { return "Puts an asterisk in the title bar of all conversations" " where you have not responded to a message yet."; }