[anjal] Pack a toggle renderer for showing message status.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: svn-commits-list gnome org
- Subject: [anjal] Pack a toggle renderer for showing message status.
- Date: Thu, 19 Mar 2009 23:08:35 -0400 (EDT)
commit 8dac78f87d56b76e60e048c4e3e72c77953f8067
Author: Srinivasa Ragavan <sragavan novell com>
Date: Fri Mar 20 08:07:19 2009 +0530
Pack a toggle renderer for showing message status.
---
src/mail-folder-view.c | 31 +++++++++++++++++++++++++++++--
1 files changed, 29 insertions(+), 2 deletions(-)
diff --git a/src/mail-folder-view.c b/src/mail-folder-view.c
index 1e67738..5a90f03 100644
--- a/src/mail-folder-view.c
+++ b/src/mail-folder-view.c
@@ -593,7 +593,25 @@ draw_text (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *
}
g_value_unset (&value);
- }
+ } else if (GTK_IS_CELL_RENDERER_TOGGLE(c)) {
+ GValue v = {0,}, v1 = {0};
+ g_value_init (&v, G_TYPE_UINT);
+ g_value_unset (&v);
+ g_value_init (&v1, G_TYPE_BOOLEAN);
+ g_value_unset (&v1);
+
+ /* Assume for now its only flags */
+ if (mfv->priv->light) {
+ gtk_tree_model_get_value (tree_model, iter, COL_FLAGS, &v);
+ flags = g_value_get_uint (&v);
+ gtk_cell_renderer_toggle_set_active (c, (flags & CAMEL_MESSAGE_SEEN) != 0);
+ } else {
+ gtk_tree_model_get_value (tree_model, iter, EMTS_COL_UNREAD, &v1);
+ unread = g_value_get_boolean (&v1);
+ gtk_cell_renderer_toggle_set_active (c, unread);
+ }
+
+ }
i=-1;
t = t->next;
}
@@ -784,7 +802,7 @@ mail_folder_view_construct (MailFolderView *shell)
hbox = custom_cell_renderer_hbox_new ();
g_object_set_data (hbox, "data", GINT_TO_POINTER (-1));
custom_cell_renderer_vbox_append (vbox, hbox);
-
+
/* Create a renderer for FROM to be shown, */
cell = gtk_cell_renderer_text_new ();
if (shell->priv->light)
@@ -798,6 +816,15 @@ mail_folder_view_construct (MailFolderView *shell)
/* Pack From at the start of the cell */
custom_cell_renderer_hbox_pack_start (hbox, cell, FALSE);
+ /* Pack a renderer for unread indication */
+ cell = gtk_cell_renderer_toggle_new ();
+ if (shell->priv->light)
+ g_object_set_data (cell, "data", GINT_TO_POINTER (COL_FLAGS));
+ else
+ g_object_set_data (cell, "data", GINT_TO_POINTER (EMTS_COL_UNREAD));
+ /* Pack From at the start of the cell */
+ custom_cell_renderer_hbox_pack_start (hbox, cell, FALSE);
+
/* Show a box for number of mails */
if (!shell->priv->light) {
cell = gtk_cell_renderer_text_new ();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]