diff options
-rw-r--r-- | mail/ChangeLog | 14 | ||||
-rw-r--r-- | mail/Makefile.am | 1 | ||||
-rw-r--r-- | mail/message-list.c | 41 | ||||
-rw-r--r-- | mail/message-list.h | 1 |
4 files changed, 33 insertions, 24 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 9e61a0de60..91499a2304 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,17 @@ +2000-04-20 NotZed <NotZed@HelixCode.com> + + * Makefile.am (evolution_mail_LDADD): Add libibex.la to link. + + * message-list.h: Removed folder summary. + + * message-list.c: Dont include folder-summary anymore. + (select_msg): Changed to use folder, not summary in + summary_get_message_info(). God this code is grotty. + (ml_value_at): Ditto. + (ml_value_at): Changed to use new interface. Hmm, this returns a + static variable, that seems wrong. + (message_list_set_folder): Remove folder summary. + 2000-04-20 Dan Winship <danw@helixcode.com> * mail-display.c: update for bonobo change, and remove a diff --git a/mail/Makefile.am b/mail/Makefile.am index cbe029af2b..4c2193330f 100644 --- a/mail/Makefile.am +++ b/mail/Makefile.am @@ -52,6 +52,7 @@ evolution_mail_LDADD = \ ../widgets/e-text/libetext.a \ ../camel/libcamel.la \ ../e-util/libeutil.la \ + ../libibex/libibex.la \ $(BONOBO_HTML_GNOME_LIBS) \ -lunicode diff --git a/mail/message-list.c b/mail/message-list.c index be4fac5b9e..98f33f8c90 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -14,7 +14,7 @@ #include <bonobo/bonobo-main.h> #include "e-util/e-util.h" #include "camel/camel-exception.h" -#include "camel/camel-folder-summary.h" +#include <camel/camel-folder.h> #include "message-list.h" #include "Mail.h" #include "widgets/e-table/e-table-header-item.h" @@ -70,7 +70,7 @@ select_msg (MessageList *message_list, gint row) CamelMessageInfo *msg_info; msg_info_array = camel_folder_summary_get_message_info - (message_list->folder_summary, row, 1); + (message_list->folder, row, 1); if (msg_info_array) { msg_info = msg_info_array->pdata[0]; @@ -113,14 +113,18 @@ ml_row_count (ETableModel *etm, void *data) CamelException ex; int v; - if (!message_list->folder) + if (!message_list->folder) { + printf("nothing???\n"); return 0; + } camel_exception_init (&ex); v = camel_folder_get_message_count (message_list->folder, &ex); + printf("message count = %d\n", v); if (camel_exception_get_id (&ex)) v = 0; + printf("now message count = %d\n", v); /* in the case where no message is available, return 1 @@ -134,7 +138,7 @@ ml_value_at (ETableModel *etm, int col, int row, void *data) { static char buffer [10]; MessageList *message_list = data; - CamelFolderSummary *summary; + CamelFolder *folder; GPtrArray *msg_info_array = NULL; CamelMessageInfo *msg_info; CamelException ex; @@ -142,14 +146,13 @@ ml_value_at (ETableModel *etm, int col, int row, void *data) camel_exception_init (&ex); - summary = message_list->folder_summary; - if (!summary) + folder = message_list->folder; + if (!folder) goto nothing_to_see; /* retrieve the message information array */ - msg_info_array = camel_folder_summary_get_message_info (summary, - row, 1); + msg_info_array = camel_folder_summary_get_message_info (folder, row, 1); /* * in the case where it is zero message long @@ -179,8 +182,8 @@ ml_value_at (ETableModel *etm, int col, int row, void *data) break; case COL_FROM: - if (msg_info->sender) - retval = msg_info->sender; + if (msg_info->from) + retval = msg_info->from; else retval = ""; break; @@ -205,7 +208,11 @@ ml_value_at (ETableModel *etm, int col, int row, void *data) break; case COL_SIZE: - sprintf (buffer, "%d", msg_info->size); + if (msg_info->content) { + sprintf (buffer, "%d", msg_info->content->size); + } else { + sprintf (buffer, "0"); + } retval = buffer; break; @@ -703,18 +710,6 @@ message_list_set_folder (MessageList *message_list, CamelFolder *camel_folder) return; } - message_list->folder_summary = - camel_folder_get_summary (camel_folder, &ex); - - - if (camel_exception_get_id (&ex)) { - printf ("Unable to get summary: %s\n", - ex.desc?ex.desc:"unknown_reason"); - return; - } - - - gtk_object_ref (GTK_OBJECT (camel_folder)); e_table_model_changed (message_list->table_model); diff --git a/mail/message-list.h b/mail/message-list.h index b6ab3d9f1e..d751b784a2 100644 --- a/mail/message-list.h +++ b/mail/message-list.h @@ -58,7 +58,6 @@ struct _MessageList { GtkWidget *etable; CamelFolder *folder; - CamelFolderSummary *folder_summary; /* used by the idle-call to select a row */ int row_to_select; |