aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-folder-tree.c
diff options
context:
space:
mode:
authorLucian Langa <lucilanga@gnome.org>2008-07-28 03:15:42 +0800
committerLucian Langa <lucilanga@src.gnome.org>2008-07-28 03:15:42 +0800
commit60f7e7bf1c9c8bc848591d4574e59ca2b356885a (patch)
tree66e1ed3bf72d80f4747358c3af6a4fe65ff1c91d /mail/em-folder-tree.c
parent40547a996b1100b0f51897acda2a7d22dc6db2cb (diff)
downloadgsoc2013-evolution-60f7e7bf1c9c8bc848591d4574e59ca2b356885a.tar
gsoc2013-evolution-60f7e7bf1c9c8bc848591d4574e59ca2b356885a.tar.gz
gsoc2013-evolution-60f7e7bf1c9c8bc848591d4574e59ca2b356885a.tar.bz2
gsoc2013-evolution-60f7e7bf1c9c8bc848591d4574e59ca2b356885a.tar.lz
gsoc2013-evolution-60f7e7bf1c9c8bc848591d4574e59ca2b356885a.tar.xz
gsoc2013-evolution-60f7e7bf1c9c8bc848591d4574e59ca2b356885a.tar.zst
gsoc2013-evolution-60f7e7bf1c9c8bc848591d4574e59ca2b356885a.zip
** See bug #544969: Added the hook for folder custom icon.
2008-07-27 Lucian Langa <lucilanga@gnome.org> * 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
Diffstat (limited to 'mail/em-folder-tree.c')
-rw-r--r--mail/em-folder-tree.c11
1 files changed, 10 insertions, 1 deletions
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;
+ }
}
}