Mercurial > pidgin.yaz
diff src/applet.c @ 2468:16e8b83b10a2
[gaim-migrate @ 2481]
David Raeman's applet icons
committer: Tailor Script <tailor@pidgin.im>
| author | Eric Warmenhoven <eric@warmenhoven.org> |
|---|---|
| date | Tue, 09 Oct 2001 23:40:18 +0000 |
| parents | 2927c2c26fe6 |
| children | a4647b25dbf1 |
line wrap: on
line diff
--- a/src/applet.c Tue Oct 09 23:15:33 2001 +0000 +++ b/src/applet.c Tue Oct 09 23:40:18 2001 +0000 @@ -110,7 +110,30 @@ } else if (!connections) { gtk_pixmap_set(GTK_PIXMAP(icon), icon_offline_pm, icon_offline_bm); applet_set_tooltips(_("Offline. Click to bring up login box.")); - } else if (!awaymessage) { + } else if (awaymessage) { + int dsr = 0; + + if ((away_options & OPT_AWAY_QUEUE) && message_queue) { + GSList *m = message_queue; + int dsr = 0; + while (m) { + struct queued_message *qm = m->data; + if (qm->flags & WFLAG_RECV) + dsr++; + m = m->next; + } + } + + if (dsr) { + gtk_pixmap_set(GTK_PIXMAP(icon), icon_msg_pending_pm, icon_msg_pending_bm); + g_snprintf(buf, sizeof(buf), _("Away: %d pending."), dsr); + } else { + gtk_pixmap_set(GTK_PIXMAP(icon), icon_away_pm, icon_away_bm); + g_snprintf(buf, sizeof(buf), _("Away.")); + } + + applet_set_tooltips(buf); + } else { gtk_pixmap_set(GTK_PIXMAP(icon), icon_online_pm, icon_online_bm); g_snprintf(buf, sizeof buf, "Online: "); while (c) { @@ -120,8 +143,6 @@ strcat(buf, ", "); } applet_set_tooltips(buf); - } else { - gtk_pixmap_set(GTK_PIXMAP(icon), icon_online_pm, icon_online_bm); } return TRUE; @@ -135,6 +156,10 @@ &icon_connect_pm, &icon_connect_bm); load_applet_icon(GAIM_GNOME_ONLINE_ICON, (sizehint - 1), (sizehint - 1), &icon_online_pm, &icon_online_bm); + load_applet_icon(GAIM_GNOME_AWAY_ICON, (sizehint - 1), (sizehint - 1), + &icon_away_pm, &icon_away_bm); + load_applet_icon(GAIM_GNOME_MSG_PENDING_ICON, (sizehint - 1), (sizehint - 1), + &icon_msg_pending_pm, &icon_msg_pending_bm); update_applet(); gtk_widget_set_usize(appletframe, sizehint, sizehint); } @@ -326,7 +351,11 @@ /*load online icon */ load_applet_icon(GAIM_GNOME_ONLINE_ICON, 32, 32, &icon_online_pm, &icon_online_bm); - /*icon_away and icon_msg_pennding need to be implemented */ + /*load away icon */ + load_applet_icon(GAIM_GNOME_AWAY_ICON, 32, 32, &icon_away_pm, &icon_away_bm); + + /*load msg_pending icon */ + load_applet_icon(GAIM_GNOME_ONLINE_ICON, 32, 32, &icon_msg_pending_pm, &icon_msg_pending_bm); icon = gtk_pixmap_new(icon_offline_pm, icon_offline_bm);
