[anjal] In outgoing folders, show T0 instead of FROM.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: svn-commits-list gnome org
- Subject: [anjal] In outgoing folders, show T0 instead of FROM.
- Date: Thu, 25 Jun 2009 07:20:34 +0000 (UTC)
commit 1fad4ea92fd4ffcddc412204eb36491365fe134c
Author: Srinivasa Ragavan <sragavan novell com>
Date: Thu Jun 25 12:51:10 2009 +0530
In outgoing folders, show T0 instead of FROM.
src/em-tree-store.c | 22 +++++++++++-----------
src/mail-folder-view.c | 19 +++++++++++++++++--
2 files changed, 28 insertions(+), 13 deletions(-)
---
diff --git a/src/em-tree-store.c b/src/em-tree-store.c
index 9dfb6e2..338ed26 100644
--- a/src/em-tree-store.c
+++ b/src/em-tree-store.c
@@ -280,16 +280,19 @@ emts_get_value(GtkTreeModel *tree_model, GtkTreeIter *iter, gint column, GValue
case EMTS_COL_UNREAD:
g_value_set_boolean(value, emts_thread_unread((EMTreeStore *)tree_model, node));
break;
- case EMTS_COL_FROM: {
- char **str, *newstr = NULL;
- int cnt = emts_node_count(node);
+ case EMTS_COL_FROM:
+ case EMTS_COL_TO: {
+ char **str = NULL, *newstr = NULL;
gboolean unread = emts_thread_unread((EMTreeStore *)tree_model, node);
- str = g_strsplit (camel_message_info_from(node->info), "<", 2);
- if (cnt)
- newstr = g_strdup_printf ("%s%s%s", unread ? "<b>" : "", *str, unread ? "</b>" : "");
- else
- newstr = g_strdup_printf ("%s%s%s", unread ? "<b>" : "", *str, unread ? "</b>" : "");
+ if (column == EMTS_COL_FROM) {
+ if (camel_message_info_from(node->info))
+ str = g_strsplit (camel_message_info_from(node->info), "<", 2);
+ } else {
+ if (camel_message_info_to(node->info))
+ str = g_strsplit (camel_message_info_to(node->info), "<", 2);
+ }
+ newstr = g_strdup_printf ("%s%s%s", unread ? "<b>" : "", str ? *str : "", unread ? "</b>" : "");
g_value_set_string(value, newstr);
@@ -297,9 +300,6 @@ emts_get_value(GtkTreeModel *tree_model, GtkTreeIter *iter, gint column, GValue
g_free (newstr);
break;
}
- case EMTS_COL_TO:
- g_value_set_string(value, camel_message_info_from(node->info));
- break;
case EMTS_COL_THREADCOUNT: {
int cnt = emts_node_count(node);
char *newstr = NULL;
diff --git a/src/mail-folder-view.c b/src/mail-folder-view.c
index 68659cd..0a6a79f 100644
--- a/src/mail-folder-view.c
+++ b/src/mail-folder-view.c
@@ -71,6 +71,7 @@ struct _MailFolderViewPrivate {
GtkWidget *info_bar;
GtkWidget *info_spinner;
CamelOperation *cancel;
+ GtkCellRenderer *from_to;
};
enum {
@@ -443,6 +444,19 @@ mail_folder_view_set_folder (MailFolderView *mfv, CamelFolder *folder, const cha
char *last_sel_uid, *spos;
double pos = 0;
GtkTreeIter iter;
+ gboolean outgoing = FALSE;
+
+ if (em_utils_folder_is_drafts(folder, uri)
+ || em_utils_folder_is_sent(folder, uri)
+ || em_utils_folder_is_outbox(folder, uri))
+ outgoing = TRUE;
+
+ if (outgoing) {
+ if (mfv->priv->light)
+ g_object_set_data ((GObject *)mfv->priv->from_to, "data", GINT_TO_POINTER (COL_FROM)); /* Implement TO */
+ else
+ g_object_set_data ((GObject *)mfv->priv->from_to, "data", GINT_TO_POINTER (EMTS_COL_TO));
+ }
gtk_tree_view_set_model (GTK_TREE_VIEW (mfv->tree), mfv->model);
mfv->priv->folder = folder;
gtk_widget_hide ((GtkWidget *)mfv->mail);
@@ -1006,8 +1020,8 @@ mfv_message_got(CamelFolder *folder, const char *uid, CamelMimeMessage *msg, voi
MailComposerView *mcv;
mfv->priv->cancel = NULL;
- composer = em_utils_edit_message (msg, folder);
- mcv = mail_shell_create_composer ();
+ composer = (EMsgComposer *)em_utils_edit_message (msg, folder);
+ mcv = (MailComposerView *)mail_shell_create_composer ();
mail_composer_view_replace_composer ((struct _MailComposerView *)mcv, (GtkWidget *)composer);
}
@@ -1470,6 +1484,7 @@ mail_folder_view_construct (MailFolderView *shell)
g_object_set_data ((GObject *)cell, "data", GINT_TO_POINTER (COL_FROM));
else
g_object_set_data ((GObject *)cell, "data", GINT_TO_POINTER (EMTS_COL_FROM));
+ shell->priv->from_to = cell;
g_object_set_data ((GObject *)cell, "p-ellipsize", GINT_TO_POINTER (1));
g_object_set_data ((GObject *)cell, "p-markup", GINT_TO_POINTER (1));
g_object_set_data ((GObject *)cell, "p-bold", GINT_TO_POINTER (0));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]