From 60f7e7bf1c9c8bc848591d4574e59ca2b356885a Mon Sep 17 00:00:00 2001 From: Lucian Langa Date: Sun, 27 Jul 2008 19:15:42 +0000 Subject: ** See bug #544969: Added the hook for folder custom icon. 2008-07-27 Lucian Langa * mail/em-event.h (struct _EMEventTargetCustomIcon): * mail/em-event.c (em_event_target_new_custom_icon): * mail/em-folder-tree.c (render_pixbuf): ** See bug #544969: Added the hook for folder custom icon. svn path=/trunk/; revision=35842 --- mail/em-folder-tree.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'mail/em-folder-tree.c') diff --git a/mail/em-folder-tree.c b/mail/em-folder-tree.c index 0c0f5e14b0..8a44373338 100644 --- a/mail/em-folder-tree.c +++ b/mail/em-folder-tree.c @@ -72,6 +72,7 @@ #include "em-folder-selector.h" #include "em-folder-selection.h" #include "em-folder-properties.h" +#include "em-event.h" #define d(x) @@ -285,6 +286,8 @@ render_pixbuf (GtkTreeViewColumn *column, GtkCellRenderer *renderer, GdkPixbuf *pixbuf = NULL; gboolean is_store; guint32 flags; + EMEventTargetCustomIcon *target; + const char *folder_name; if (!initialised) { folder_icons[FOLDER_ICON_NORMAL] = e_icon_factory_get_icon ("folder", E_ICON_SIZE_MENU); @@ -326,8 +329,14 @@ render_pixbuf (GtkTreeViewColumn *column, GtkCellRenderer *renderer, pixbuf = folder_icons[FOLDER_ICON_SHARED_BY_ME]; else if (flags & CAMEL_FOLDER_VIRTUAL) pixbuf = folder_icons[FOLDER_ICON_VIRTUAL]; - else + else { pixbuf = folder_icons[FOLDER_ICON_NORMAL]; + g_object_set (renderer, "pixbuf", pixbuf, "visible", !is_store, NULL); + gtk_tree_model_get (model, iter, COL_STRING_FULL_NAME, &folder_name, -1); + target = em_event_target_new_custom_icon (em_event_peek(), renderer, folder_name, EM_EVENT_CUSTOM_ICON); + e_event_emit ((EEvent *)em_event_peek (), "folder.customicon", (EEventTarget *) target); + return; + } } } -- cgit v1.2.3