From 0473e106f01671731351f69bdf29f3d438b75b05 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Sun, 28 May 2000 04:22:13 +0000 Subject: Added a COL_DELETED and made it the strikeout column for both text 2000-05-28 Christopher James Lahey * message-list.c, message-list.h: Added a COL_DELETED and made it the strikeout column for both text renderers. svn path=/trunk/; revision=3237 --- mail/ChangeLog | 5 +++++ mail/message-list.c | 22 ++++++++++++++++++---- mail/message-list.h | 1 + 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/mail/ChangeLog b/mail/ChangeLog index 60f99c42e8..116fc6c7a8 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,8 @@ +2000-05-28 Christopher James Lahey + + * message-list.c, message-list.h: Added a COL_DELETED and made it + the strikeout column for both text renderers. + 2000-05-27 Dan Winship * mail-format.c: Various improvements: diff --git a/mail/message-list.c b/mail/message-list.c index a18ec3b42b..1d6e898a7c 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -66,7 +66,7 @@ static CamelMessageInfo *get_message_info(MessageList *message_list, gint row) char *uid = g_list_nth_data(message_list->matches, row); if (uid) { info = message_list->summary_search_cache->pdata[row] = - camel_folder_summary_get_by_uid(message_list->folder, uid); + (CamelMessageInfo *) camel_folder_summary_get_by_uid(message_list->folder, uid); } } } @@ -227,6 +227,10 @@ ml_value_at (ETableModel *etm, int col, int row, void *data) retval = buffer; break; + case COL_DELETED: + retval = GINT_TO_POINTER(!!(msg_info->flags & CAMEL_MESSAGE_DELETED)); + break; + default: g_assert_not_reached (); } @@ -264,6 +268,7 @@ ml_duplicate_value (ETableModel *etm, int col, const void *value, void *data) case COL_MESSAGE_STATUS: case COL_PRIORITY: case COL_ATTACHMENT: + case COL_DELETED: return (void *) value; case COL_FROM: @@ -287,6 +292,7 @@ ml_free_value (ETableModel *etm, int col, void *value, void *data) case COL_MESSAGE_STATUS: case COL_PRIORITY: case COL_ATTACHMENT: + case COL_DELETED: break; case COL_FROM: @@ -310,6 +316,7 @@ ml_initialize_value (ETableModel *etm, int col, void *data) case COL_MESSAGE_STATUS: case COL_PRIORITY: case COL_ATTACHMENT: + case COL_DELETED: return NULL; case COL_FROM: @@ -334,6 +341,7 @@ ml_value_is_empty (ETableModel *etm, int col, const void *value, void *data) case COL_MESSAGE_STATUS: case COL_PRIORITY: case COL_ATTACHMENT: + case COL_DELETED: return value == NULL; case COL_FROM: @@ -397,6 +405,10 @@ message_list_init_renderers (MessageList *message_list) message_list->table_model, NULL, GTK_JUSTIFY_LEFT); + gtk_object_set(GTK_OBJECT(message_list->render_text), + "strikeout_column", COL_DELETED, + NULL); + message_list->render_online_status = e_cell_checkbox_new (); /* @@ -521,9 +533,11 @@ message_list_init_header (MessageList *message_list) * of this. */ for (i = 0; i < COL_LAST; i++) { - gtk_object_ref (GTK_OBJECT (message_list->table_cols [i])); - e_table_header_add_column (message_list->header_model, - message_list->table_cols [i], i); + if (i != COL_DELETED) { + gtk_object_ref (GTK_OBJECT (message_list->table_cols [i])); + e_table_header_add_column (message_list->header_model, + message_list->table_cols [i], i); + } } } diff --git a/mail/message-list.h b/mail/message-list.h index f3d6d2fa7f..21d51875f8 100644 --- a/mail/message-list.h +++ b/mail/message-list.h @@ -34,6 +34,7 @@ enum { COL_RECEIVE, COL_TO, COL_SIZE, + COL_DELETED, COL_LAST }; -- cgit v1.2.3