# HG changeset patch # User Eric Warmenhoven # Date 956837656 0 # Node ID 948100a8cb23e585acbaafc70509bda2f125fa9b # Parent 3a8809beb5ce4a736743a6b8db39fe38564cf1d9 [gaim-migrate @ 201] Wrote a plugin for IcedSoal to put an asterisk in the titlebar of conversations where you haven't replied to the person yet (e.g. you weren't the last person to say something). committer: Tailor Script diff -r 3a8809beb5ce -r 948100a8cb23 plugins/Makefile.am --- a/plugins/Makefile.am Thu Apr 27 08:16:15 2000 +0000 +++ b/plugins/Makefile.am Thu Apr 27 12:14:16 2000 +0000 @@ -10,4 +10,4 @@ plugin_DATA = autorecon.so iconaway.so spellchk.so plugindir = $(libdir)/gaim EXTRA_DIST = CRAZY HOWTO SIGNALS autorecon.c chkmail.c filectl.c gaiminc.c \ - iconaway.c simple.c spellchk.c toc_commands.c + iconaway.c notify.c simple.c spellchk.c toc_commands.c diff -r 3a8809beb5ce -r 948100a8cb23 plugins/notify.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugins/notify.c Thu Apr 27 12:14:16 2000 +0000 @@ -0,0 +1,51 @@ +#define GAIM_PLUGINS +#include "gaim.h" + +#include + +void *handle; + +void received_im(char **who, char **what, void *m) { + char buf[256]; + struct conversation *cnv = find_conversation(*who); + GtkWindow *win; + + 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."; +}