aboutsummaryrefslogtreecommitdiffstats
path: root/mail/message-list.h
Commit message (Collapse)AuthorAgeFilesLines
* Add a "Threaded Message List" item to the "View" menu.Dan Winship2000-07-091-2/+6
| | | | | | | | | | | | | * folder-browser-factory.c (control_activate): Add a "Threaded Message List" item to the "View" menu. * message-list.c (message_list_toggle_threads): Handler for that. (build_flat): New function to build a "flat" message list using the tree model. (message_list_regenerate): Build tree or flat message list depending on the global setting. svn path=/trunk/; revision=3999
* Lots of changes. Store uids as node data on the tree nodes and use thoseDan Winship2000-07-081-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * message-list.c: Lots of changes. Store uids as node data on the tree nodes and use those rather than rows where possible. (The concept of "row" is just getting too complicated.) Get rid of the summary_table, because given a uid we can call camel_folder_get_message_info, which makes more sense than keeping a separate uid->row hash table ourselves. (get_message_info): update (get_message_row): removed (ml_col_cound, ml_row_count, ml_value_at, ml_set_value_at, ml_cell_is_editable, ml_duplicate_value, ml_free_value, ml_initialize_value, ml_value_is_empty, ml_value_to_string): Removed. We always use the tree model now. (message_list_init): Remove the non-tree code. (build_tree): store uids in the tree rather than row numbers, and build the message_list->uid_rowmap to map from uids to rows when needed. (message_list_regenerate): Renamed from _set_search, since it's used to redraw in non-search cases too. (message_changed): Use the uid_rowmap to get a model row number. * message-thread.c (thread_messages): Change the interface on this to work with the new MessageList. * folder-browser.c (search_set, folder_browser_clear_search): s/message_list_set_search/message_list_regenerate/ svn path=/trunk/; revision=3960
* New function to select the first message on or after the given row thatDan Winship2000-07-071-0/+3
| | | | | | | | | | | | | | | | | * message-list.c (message_list_select_next): New function to select the first message on or after the given row that meets certain flag criteria. * folder-browser.c (etable_key): call message_list_select_next to select next non-deleted message after Delete. * mail-ops.c (real_fetch_mail): call message_list_select_next to select first unread message in current folder if it changes. (real_delete_msg): Remove the code to move the etable cursor. It only makes sense really if you deleted the message with the keyboard, so do it from there. svn path=/trunk/; revision=3927
* Setup the subject renderer to a tree in tree mode. (on_cursor_change_cmd):Not Zed2000-07-061-0/+7
| | | | | | | | | | | | | | | | | | | | | | 2000-07-06 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_init_header): Setup the subject renderer to a tree in tree mode. (on_cursor_change_cmd): For a tree model, map the view row to the data row. (build_tree): Builds the tree data structure of all messages. (message_list_set_search): For a tree model, build the tree here. (ml_tree_icon_at): Icon callback, returns nothing. (ml_tree_value_at): (ml_tree_set_value_at): (ml_tree_is_cell_editable): Maps tree node to data row, and calls the equivalent table callback (message_list_init_renderers): Setup the tree renderer if needed. * message-list.h: Add a tree renderer to render list, and tree_view indicator. svn path=/trunk/; revision=3921
* New function, a wrapper around e_table_selected_row_foreach, which callsDan Winship2000-07-011-0/+8
| | | | | | | | | | | | | | | | | | | | | * message-list.c (message_list_foreach): New function, a wrapper around e_table_selected_row_foreach, which calls the callback function with UIDs rather than row numbers. * folder-browser-factory.c: Remove never-used "Find" button from the toolbar and replace it with "Refile". (We need a better icon for this...). Hook up "Refile" to "refile_msg". * mail-ops.c (refile_msg): Call the shell's user_select_folder routine, and then use message_list_foreach and real_refile_msg to do the work. (delete_msg): Update to use message_list_foreach. * folder-browser.c (mail_uri_to_folder): new function, extracted from folder_browser_load_folder, to turn a URI into a folder. (folder_browser_load_folder): Use it. svn path=/trunk/; revision=3833
* use the ETable row_selection signal to track how many rows are selected.Dan Winship2000-07-011-2/+2
| | | | | | | | | | | | | | | * message-list.c (on_row_selection): use the ETable row_selection signal to track how many rows are selected. Eventually we will use this info to disable toolbar buttons when you have too few/too many messages selected, but the current toolbar widget doesn't allow that. * message-list.h, message-list.c, mail-ops.c: Change selected_row and selected_uid fields of MessageList to cursor_row and cursor_uid to be more correct according to the new ETable interfaces. svn path=/trunk/; revision=3829
* message-list.c: added prototype for filter_date()Jeffrey Stedfast2000-06-281-0/+1
| | | | svn path=/trunk/; revision=3772
* Update received date to work like sent date.Dan Winship2000-06-221-1/+1
| | | | | | * message-list.c: Update received date to work like sent date. svn path=/trunk/; revision=3678
* Implement clicking on the envelope icon to set read/unread. Based on aDan Winship2000-06-171-3/+3
| | | | | | | | | | * message-list.c (ml_set_value_at): Implement clicking on the envelope icon to set read/unread. Based on a patch by clahey. (select_msg): keep the timeout id for the "seen" flagging in the message_list structure, so ml_set_value_at can clear it so it doesn't re-mark a message seen after you click it unseen. svn path=/trunk/; revision=3601
* new function to do a uid to row mapping. (mark_msg_seen, select_msg,Dan Winship2000-06-171-1/+4
| | | | | | | | | | | | | | | | | | * message-list.c (get_message_row): new function to do a uid to row mapping. (mark_msg_seen, select_msg, message_changed, message_list_set_folder): Update for Camel flag changes. (on_cursor_change_cmd): Rename "row_to_select" to "selected_row", and keep a "selected_uid" as well. * mail-ops.c (composer_send_cb): Update for Camel flag changes, and fix some memory-handling bugs. (Free the post_send_data when the composer is destroyed, not when the user clicks "send", which could happen never, or more than once.) (delete_msg): Update for Camel flag changes, and fix the "holding down the delete key skips some messages" bug. svn path=/trunk/; revision=3600
* Add a date column. (COL_SENT_WIDTH_MIN): Make this wider. (ml_value_at):Dan Winship2000-06-021-0/+1
| | | | | | | | | | | | | | * message-list.c: Add a date column. (COL_SENT_WIDTH_MIN): Make this wider. (ml_value_at): return the sent date (as a time_t) for COL_SENT. (Fix COL_TO too while I'm here.) (ml_duplicate_value, ml_free_value, ml_initialize_value, ml_value_is_empty): COL_SENT is numeric now. (message_list_init_renderers): Create a date renderer (using text_filter to translate the time_t into a string). (message_list_init_header): Use render_date for COL_SENT. svn path=/trunk/; revision=3365
* Added bold for unread messages.Christopher James Lahey2000-05-311-2/+5
| | | | | | | | 2000-05-30 Christopher James Lahey <clahey@helixcode.com> * message-list.c, message-list.h: Added bold for unread messages. svn path=/trunk/; revision=3292
* Added a COL_DELETED and made it the strikeout column for both textChristopher James Lahey2000-05-281-0/+1
| | | | | | | | | 2000-05-28 Christopher James Lahey <clahey@helixcode.com> * 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
* Requires a camel-patch, about to come through ...NotZed2000-05-051-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | 2000-05-04 NotZed <NotZed@HelixCode.com> * message-list.c (message_list_set_folder): Get the whole message summary right away. (folder_changed): And if we change too. (ml_row_count): Use the match count or summary table length as the row count. (get_message_info): Use array references to lookup message summary info. For the search result list, use the summary_search_cache to cache the info lookup. (message_list_init): Allocate the summary search cache. (message_list_destroy): Free the summary search cache and the summary table, if there is one to free. (message_list_set_search): Save the match count, and clear the summary search cache for reuse. (folder_changed): Re-retrieve the summary list if the folder has changed. (message_list_set_folder): Retrieve the summary list when opening the folder. svn path=/trunk/; revision=2807
* > 2000-05-02 NotZed <NotZed@HelixCode.com>Michael Zucci2000-05-031-0/+1
| | | | | | | | | | | | | > > * folder-browser.c (folder_browser_gui_init): Connect the changed > signal to search, so it searched immediately? > 40a46,48 > (message_list_set_search): Save the search string. > (folder_changed): If the folder changes, re-run the search, > otherwise we may end up with invalid entries in the display. svn path=/trunk/; revision=2749
* Added a deleted message icon whcih shows when messages areMichael Zucci2000-05-021-0/+1
| | | | | | | | | | | | | | | | | | | | | deleted (takes a while to update the gui for some reason). Updates the gui when expunged, via a signal. * pixmaps.h: Added envelope-deleted state. (message_list_init_renderers): Added a 3rd state to message_status = deleted. (ml_value_at): Show the message state as deleted, if it is marked for deletion. (folder_changed): When the folder changes, update the display. (message_list_set_folder): Connect to the folder_changed event here. (message_changed): Callback to update the display when the message changes. (select_msg): And connect to the message_changed signal so we know when it cahgnes. svn path=/trunk/; revision=2746
* A hackish little quick-search entry. (search_activate): Perform aNotZed2000-05-021-0/+3
| | | | | | | | | | | | | | | | | | | | | 2000-05-01 NotZed <NotZed@HelixCode.com> * folder-browser.c (folder_browser_gui_init): A hackish little quick-search entry. (search_activate): Perform a quick-search on the folder subject only. * message-list.c (get_message_info): If there is an active search, then get the data from that ... use this instead of _get_message_info(). (ml_row_count): If we have an active search, get the info from its result. (select_msg): Changed to use get_message_info, so searches work. (ml_value_at): And same here. * mail-display.c: Include missing errno.h. svn path=/trunk/; revision=2724
* Add libibex.la to link.NotZed2000-04-211-1/+0
| | | | | | | | | | | | | | | | | | 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. svn path=/trunk/; revision=2530
* new function, actually calls select_msg. (on_row_selection_cmd): registerChris Toshok2000-04-171-1/+4
| | | | | | | | | | | | | | * message-list.c (on_row_selection_idle): new function, actually calls select_msg. (on_row_selection_cmd): register an idle instead of calling select_msg directly. this fixes the lag before the row is selected - selection is instantaneous now, with message loading happening afterward. * message-list.h: add row_to_select and an idle_id to the message list to make the select_msg call happen in an idle func. svn path=/trunk/; revision=2470
* plug mem leaks due to bad documentation ofbertrand2000-03-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | 2000-03-07 bertrand <bertrand@helixcode.com> * camel-formatter.c (handle_mime_part): plug mem leaks due to bad documentation of camel_content_field_get_mime_type (print_camel_body_part): idem (handle_multipart_alternative): idem * gmime-content-field.c (gmime_content_field_get_mime_type): documentation fix. * camel-mime-part.c (my_finalize): unref the content_input_stream if any. * shell/e-shell-shortcut.c (shortcut_bar_item_selected): removed a test that prevented the standard menu to be shown. svn path=/trunk/; revision=2089
* More changes than a man can remember.Bertrand Guiheneuf2000-03-061-3/+12
| | | | | | The UI works now. svn path=/trunk/; revision=2074
* More work. Not funny that e-table does not display.Arturo Espinosa2000-01-291-0/+5
| | | | | | | | More work. Not funny that e-table does not display. Miguel. svn path=/trunk/; revision=1654
* Make Evolution compile with the latest Bonobo changes.Arturo Espinosa2000-01-261-5/+5
| | | | | | | | Make Evolution compile with the latest Bonobo changes. Miguel. svn path=/trunk/; revision=1636
* More workArturo Espinosa2000-01-251-0/+60
svn path=/trunk/; revision=1628