aboutsummaryrefslogtreecommitdiffstats
path: root/mail/folder-browser.c
Commit message (Collapse)AuthorAgeFilesLines
* Do the Right Thing (tm) if the message list is not the widget in focusJeffrey Stedfast2001-08-021-0/+7
| | | | | | | | | | 2001-08-01 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (folder_browser_copy): Do the Right Thing (tm) if the message list is not the widget in focus (which is to copy the text selected in the html viewer instead). Fixes bug #5868. svn path=/trunk/; revision=11558
* If we don't have any messages selected, break out. This fixes bug #5612.Jeffrey Stedfast2001-07-271-0/+4
| | | | | | | | | | | | | | | | | | | | 2001-07-26 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (message_list_drag_data_get): If we don't have any messages selected, break out. This fixes bug #5612. * component-factory.c (xfer_folder): Fixed a strstr (url, "noselect=yes") brokenness. (destination_folder_handle_motion): Same. (destination_folder_handle_drop): And again here. * mail-format.c (handle_application_pgp): Implemented. (setup_mime_tables): Setup the application/pgp handler to use handle_application_pgp instead of handle_text_plain. (handle_text_plain): Remove special-case hacks for application/pgp types. svn path=/trunk/; revision=11438
* Make 'q' a toggle, not one-way.Peter Williams2001-07-261-2/+2
| | | | | | | | | 2001-07-26 Peter Williams <peterw@ximian.com> * folder-browser.c (on_key_press): Make 'q' a toggle, not one-way. svn path=/trunk/; revision=11425
* Make it so Enter always opens the message in another window.Peter Williams2001-07-261-6/+1
| | | | | | | | | 2001-07-25 Peter Williams <peterw@ximian.com> * folder-browser.c (etree_key): Make it so Enter always opens the message in another window. svn path=/trunk/; revision=11409
* [Bug #5225: No UI way to mark as unimportant]Jason Leach2001-07-241-1/+23
| | | | | | | | | | | | | | | | | 2001-07-23 Jason Leach <jleach@ximian.com> [Bug #5225: No UI way to mark as unimportant] * folder-browser.c (on_right_click): Do the necessary stuff to show or hide the correct "Mark Important" or "Mark as Unimportant" menu items depending on the status of messages that are selected. * folder-browser-ui.c: Add the MarkAsUnimportant verb here. * mail-callbacks.c (mark_as_unimportant): Simple function that's the callback for these new menu items. svn path=/trunk/; revision=11316
* Set the vertical scrolling policy for the mail display to AUTOMATIC, onlyJason Leach2001-07-201-4/+0
| | | | | | | | | | | | | | | | | | 2001-07-19 Jason Leach <jleach@ximian.com> * mail-display.c (mail_display_new): Set the vertical scrolling policy for the mail display to AUTOMATIC, only get a scrollbar if the e-mail is longer than one frame. * folder-browser.c (my_folder_browser_init): We were setting the policy twice (and to two different things). Removed this one. * message-list.c (message_list_init): Set the policy for the message list scroll frame to be horizontal=NEVER, vertical=AUTOMATIC (scrollbar only if you have >1 page of messages). svn path=/trunk/; revision=11239
* Do what was suggested in #4596.Jeffrey Stedfast2001-07-191-12/+12
| | | | | | | | | 2001-07-18 Jeffrey Stedfast <fejj@ximian.com> * mail-tools.c (mail_tool_generate_forward_subject): Do what was suggested in #4596. svn path=/trunk/; revision=11210
* Fix to correctly handle text/uri-lists that contain more than a singleJeffrey Stedfast2001-07-181-25/+30
| | | | | | | | | | | | | | 2001-07-17 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (message_list_drag_data_recieved): Fix to correctly handle text/uri-lists that contain more than a single url. * component-factory.c (destination_folder_handle_drop): Fix to correctly handle text/uri-lists that contain more than a single url. svn path=/trunk/; revision=11174
* Use CAMEL_VTRASH_NAME.Jeffrey Stedfast2001-07-181-1/+1
| | | | | | | | | | | | | | | | 2001-07-17 Jeffrey Stedfast <fejj@ximian.com> * mail-local.c (init_trash): Use CAMEL_VTRASH_NAME. * mail-ops.c (add_vtrash_info): Use CAMEL_VTRASH_NAME. * folder-browser.c: turned off some debugging 2001-07-16 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (transfer_msg): Disallow vtrash for now... svn path=/trunk/; revision=11159
* Use our own display_style member instead of the global setting.Peter Williams2001-07-171-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-16 Peter Williams <peterw@ximian.com> * mail-display.c (mail_display_redisplay): Use our own display_style member instead of the global setting. (mail_display_init): Initialize display_style. * mail-display.h: Include "mail-config.h" and add a display_style member. * mail-format.c (write_headers): Look at the MailDisplay's display_style instead of using the full_headers data. * folder-browser.c (folder_browser_set_message_display_style): Set the MailDisplay's display style as well as the global display style. (my_folder_browser_init): Don't save preference changes by default. (This is only observered wrt. the message display style but should apply to other items.) * folder-browser-factory.c (folder_browser_factory_new_control): Set this FB to save the preferences set in it. * folder-browser-ui.c (folder_browser_ui_add_message): Read our display's state instead of the global setting. svn path=/trunk/; revision=11131
* [Bug #4305: Make the automatic mark-as-read timer optional]Jason Leach2001-07-111-1/+1
| | | | | | | | | | | | | | | | | | | | 2001-07-10 Jason Leach <jleach@ximian.com> [Bug #4305: Make the automatic mark-as-read timer optional] * mail-config.glade: Necessary changes to make the Mark as "Read" label a toggle button instead. * mail-accounts.c (construct): Connect to the "toggled" on our new toggle. (timeout_toggled): New callback, called from above. * mail-config.c (mail_config_get_do_seen_timeout): New. (mail_config_set_do_seen_timeout): New. (mail_config_write_on_exit): Save the preference here. (config_read): Load it here. svn path=/trunk/; revision=10973
* TypoJP Rosevear2001-07-111-9/+6
| | | | | | | | 2001-07-10 JP Rosevear <jpr@ximian.com> * Makefile.am: Typo svn path=/trunk/; revision=10966
* Freeze and Thaw the folder.Jeffrey Stedfast2001-07-071-2/+4
| | | | | | | | | 2001-07-06 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (folder_browser_copy): Freeze and Thaw the folder. svn path=/trunk/; revision=10855
* Mark the messages as Seen also. (folder_browser_class_init): Create anJeffrey Stedfast2001-07-071-54/+108
| | | | | | | | | | | | | | | | | | | | | | | | 2001-07-06 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (folder_browser_copy): Mark the messages as Seen also. (folder_browser_class_init): Create an atom type for X-Evolution-Message selection type. (my_folder_browser_init): Add our multiple selection types, one of which is the default string type. * component-factory.c (destination_folder_handle_drop): Update to use the new X-Evolution-Message type format. * folder-browser.c (selection_get): Convert the X-Evolution-Message clipboard type to whatever format the target wants. (message_list_drag_data_get): Update because the X-Evolution-Message type changed. (folder_browser_copy): Same. (x_evolution_message_parse): And here too. svn path=/trunk/; revision=10853
* Select the very next message after deleting, not the next undeleted (itJason Leach2001-07-071-0/+2
| | | | | | | | | | | | | | | | | 2001-07-06 Jason Leach <jleach@ximian.com> * mail-callbacks.c (delete_msg): Select the very next message after deleting, not the next undeleted (it can make things jump around in annoying ways if you are deleting many messages), bug #4032. * folder-browser.c: Forgot to commit the "Mark as Important" right click menu item. * message-list.c (message_list_set_folder): Setup the strikeout column here (after we've gotten the folder) so we can disable strikeouts for vtrash folders, part of bug #2224. svn path=/trunk/; revision=10849
* Compile fixes. #include errno.h and gnome-dialog-utils.h.Peter Williams2001-07-041-4/+5
| | | | | | | | | 2001-07-03 Peter Williams <peterw@ximian.com> * folder-browser.c (message_list_drag_data_get): Compile fixes. #include errno.h and gnome-dialog-utils.h. s/dirname/tmpdir/ svn path=/trunk/; revision=10757
* Prevent folders from appearing to have -1 new messages. Prevent nonactivePeter Williams2001-07-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-03 Peter Williams <peterw@ximian.com> Prevent folders from appearing to have -1 new messages. Prevent nonactive folders from updating the title bar. Make the title bar update when switching to an already-opened folder. * mail-folder-cache.c (update_message_counts): Ignore the value for 'unread' if it is -1. (get_mail_info_receive): Same (mail_folder_cache_note_folderinfo): Same. (get_folder_info): Initialize 'fb' to NULL. (mail_folder_info): Add 'fb' member. (mail_folder_cache_note_fb): Change note_message_list to this. (update_idle): Only update the ShellView if the active folder browser is the same as the one that the MFI references. (mail_folder_cache_set_folder_browser): New function. Use it to set the active folder browser. NULL is okay. (check_for_fb_match): Called from the above. If the MFI has the new folder browser as its view, queue an update. * mail-folder-cache.h: Fix prototypes. * mail-callbacks.c (create_folders): Check if fi->url is nonnull. * folder-browser.c (got_folder): Change to use note_fb instead of note_messge_list. * folder-browser-factory.c (control_activate): Set the folder browser (control_deactivate): Clear it here. (fb_get_svi): Kill some inappropriately cut-n-pasted code. svn path=/trunk/; revision=10755
* Use mkdtemp if we have it, else use mktemp but make the code safer than itJeffrey Stedfast2001-07-041-6/+19
| | | | | | | | | | | | | 2001-07-03 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (message_list_drag_data_get): Use mkdtemp if we have it, else use mktemp but make the code safer than it was previously. * mail-display.c (launch_cb): Free the template string if the tempdir failed to be created. svn path=/trunk/; revision=10753
* Hide the URL passwd, auth, and params. (folder_browser_copy): Same.Jeffrey Stedfast2001-07-031-2/+4
| | | | | | | | | | 2001-07-03 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (message_list_drag_data_get): Hide the URL passwd, auth, and params. (folder_browser_copy): Same. svn path=/trunk/; revision=10749
* Updated for the mail_transfer_messages API.Jeffrey Stedfast2001-07-031-2/+3
| | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (transfer_msg): Updated for the mail_transfer_messages API. * folder-browser.c (message_list_drag_data_recieved): Update for the mail_transfer_messages API. (selection_received): Same. * mail-ops.c (mail_transfer_messages): Renamed from mail_do_transfer_messages and also added a callback/data arguments since we need it component_factory::xfer_folder. * component-factory.c (xfer_folder): Use mail_transfer_messages instead. (destination_folder_handle_drop): Update to pass in a NULL callback arg and a NULL data argument to mail_transfer_messages. svn path=/trunk/; revision=10710
* New file. Protoypes for the Mail Folder Cache, which provides a place forPeter Williams2001-07-031-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Peter Williams <peterw@ximian.com> * mail-folder-cache.h: New file. Protoypes for the Mail Folder Cache, which provides a place for all the disparate pieces of the mailer to save bits of information about a folder. Centralizes the information display code. * mail-folder-cache.c: New file. Implements the Mail Folder Cache. * Makefile.am (evolution_mail_SOURCES): Add the mail-folder-cache.{c,h} * folder-browser-factory.c (fb_get_svi): Copy of that absurdly long-named function in mail-display.c that gets the GNOME_Evolution_ShellView. (control_activate): Set the ShellView for the folder cache. * folder-browser.c (got_folder): Tell the folder browser about this folder. * mail-callbacks.c (create_folders): Tell the folder cache about the new folders. * mail-local.c (reconfigure_folder_reconfigure): Don't unhook our events as we no longer hook them up. (register_folder_registered): Tell the folder cache about this folder's place in the local storage. (register_folder_register): No longer hook events; the Folder Cache will do this. (local_folder_changed, local_folder_changed_proxy): Move to mail-folder-cache.c (free_local_folder): No longer unhook events. * mail-ops.c (do_update_subfolders_rec): Instead of setting the folder status ourselves, inform the Folder Cache about the changes. * mail-tools.c (mail_tool_uri_to_folder): Replace danw's cache with the new Mail Folder Cache. (cache_folder, etc): removed. svn path=/trunk/; revision=10694
* Changed to return the created window. (find_socket): Added. Copied fromJon Trowbridge2001-07-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | 2001-06-30 Jon Trowbridge <trow@ximian.com> * mail-display.c (make_popup_window): Changed to return the created window. (find_socket): Added. Copied from e-shell-view.c. The fact that I'm copying this bit of code all over isn't cool. (html_button_press_event): Properly destroy the popup window when the widget inside the control is destroyed. * mail-callbacks.c (addrbook_sender): Added. Implements the "Add sender to addressbook" right-click. (Bug #3645) (find_socket): Added. Copied from e-shell-view.c. * folder-browser.c: Added "Add sender to addressbook" to context_menu[]. * mail-display.c: (handle_embedded_address_object): Removed. (on_object_requested): Removed handling for embedded address objects. (Which was obsolete crap.) svn path=/trunk/; revision=10643
* Don't bother trying to save the passwd if the url is NULL.Jeffrey Stedfast2001-06-291-0/+1
| | | | | | | | | | | | 2001-06-28 Jeffrey Stedfast <fejj@ximian.com> * mail-config.c (mail_config_write_on_exit): Don't bother trying to save the passwd if the url is NULL. * folder-browser.c (vfolder_mlist): Strip the mlist name to fix bug #3732. svn path=/trunk/; revision=10571
* Since we have an exception variable, we might as well use it when gettingJeffrey Stedfast2001-06-291-3/+10
| | | | | | | | | | | | | 2001-06-28 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (destination_folder_handle_drop): Since we have an exception variable, we might as well use it when getting folders too. * folder-browser.c (message_list_drag_data_recieved): Call gtk_drag_finish. svn path=/trunk/; revision=10568
* After finding a folder, attach to its "folder_changed" andDan Winship2001-06-291-61/+1
| | | | | | | | | | | | | | | * mail-tools.c (mail_tool_uri_to_folder): After finding a folder, attach to its "folder_changed" and "message_changed" signals. (update_unread_count, update_unread_count_main): Moved here from folder-browser but basically unchanged. Doing this here lets us get folder tree updates for folders that have had messages moved/copied/filtered into them, but which don't yet have a view associated with them. * folder-browser.c (update_unread_count, update_unread_count_main, etc): Moved to mail-tools.c svn path=/trunk/; revision=10567
* work around an e-tree bugjacob berkman2001-06-281-0/+3
| | | | | | | | 2001-06-27 jacob berkman <jacob@ximian.com> * folder-browser.c (save_cursor_pos): work around an e-tree bug svn path=/trunk/; revision=10541
* Fixed Cut/Copy/Paste to work - it turns out I couldn't share a singleJeffrey Stedfast2001-06-281-41/+25
| | | | | | | | | | 2001-06-27 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c: Fixed Cut/Copy/Paste to work - it turns out I couldn't share a single GtkInvisible between all the FolderBrowser's after all. svn path=/trunk/; revision=10536
* Helps if I spell "received" correctly.Jeffrey Stedfast2001-06-271-1/+1
| | | | | | | | | | | | | | 2001-06-26 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (my_folder_browser_init): Helps if I spell "received" correctly. * mail-config.c (mail_config_set_thread_list): If the value is already in the hash table, first remove it before setting the new value so we don't leak. (mail_config_set_show_preview): Same. svn path=/trunk/; revision=10510
* No longer returns a gboolean and also takes a CamelException.Jeffrey Stedfast2001-06-271-35/+165
| | | | | | | | | | | | | | | | | | | 2001-06-26 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (message_rfc822_dnd): No longer returns a gboolean and also takes a CamelException. (destination_folder_handle_drop): Do better error checking. * folder-browser.c (my_folder_browser_init): Connect to the tree-drag-data-recieved signal. (message_list_drag_data_recieved): New function that handles the recieving end of the DnD event. (x_evolution_message_parse): New convenience function to parse the x-evolution-message type so that the cut/paste and DnD code can share it. (selection_received): Use x_evolution_message_parse(). svn path=/trunk/; revision=10502
* Check to make sure that clipboard_selection is non-NULL before weJoe Shaw2001-06-261-2/+4
| | | | | | | | | 2001-06-25 Joe Shaw <joe@ximian.com> * folder-browser.c (invisible_destroyed): Check to make sure that clipboard_selection is non-NULL before we g_byte_array_free() it. svn path=/trunk/; revision=10495
* tyopJacob Berkman2001-06-261-1/+1
| | | | svn path=/trunk/; revision=10492
* sync folders after we've gotten mailjacob berkman2001-06-261-20/+132
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-25 jacob berkman <jacob@ximian.com> * mail-send-recv.c (free_send_data): sync folders after we've gotten mail * folder-browser-factory.c (control_activate): set the ui component on the folder browser (control_activate): update the view preview item (control_deactivate): don't sync the folder here (control_deactivate): unset the ui component of the folder browser * mail-callbacks.c (toggle_flags): stuff from jleach to add an importance keybinding (mark_as_important): ditto (toggle_as_important): again * mail-config.c (mail_config_get_show_preview): (mail_config_set_show_preview): basically a copy of get_thread_list() but for the preview pane * folder-browser.c (folder_browser_destroy): unref the our ui component (folder_browser_set_ui_component): new function for setting the ui component (save_cursor_pos): (set_cursor_pos): try to show the selected row when the preview pane is shown (folder_browser_set_message_preview): implement (folder_browser_toggle_preview): toggle the preview (duh) (on_key_press): add keybindings for marking as important (!), and hiding the preview pane (q) (etree_key): clean up a little bit, and make enter either show the preview pane or open the message (fb_resize_cb): only save the paned size if the preview is alread shown (folder_browser_gui_init): pass ourselves to fb_resize_cb (on_message_selected): only add the timeout if the preview is shown svn path=/trunk/; revision=10491
* Unref the invisible window that we use for slections.Jeffrey Stedfast2001-06-261-16/+198
| | | | | | | | | | | | | | | | | | | | | | | 2001-06-25 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (folder_browser_destroy): Unref the invisible window that we use for slections. (folder_browser_class_init): Init the clipboard_atam type. (selection_get): New (selection_clear_event): New (selection_received): New (folder_browser_copy): New function to copy the message-list selection. (folder_browser_cut): New function to cut the message-list selection. (folder_browser_paste): New function to paste the message-list selection. (my_folder_browser_init): Initialize `invisible` if it's NULL else ref it - also set some signals on it. * folder-browser-factory.c: Added verbs for cut/copy/paste. svn path=/trunk/; revision=10489
* More than on accel key is a tad confusing.Kjartan Maraas2001-06-201-1/+1
| | | | | | | | | 2001-06-20 Kjartan Maraas <kmaraas@gnome.org> * folder-browser.c: More than on accel key is a tad confusing. svn path=/trunk/; revision=10328
* Accept text/uri-list mime types - this allows us to drag messages fromJeffrey Stedfast2001-06-201-9/+69
| | | | | | | | | | | | | 2001-06-19 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (destination_folder_handle_drop): Accept text/uri-list mime types - this allows us to drag messages from Nautilus into an Evolution folder. * folder-browser.c (message_list_drag_data_get): Do cleanup and better error handling. svn path=/trunk/; revision=10296
* Change the drop-type "x-evolution-dnd" to "x-evolution-message" since weJeffrey Stedfast2001-06-191-48/+43
| | | | | | | | | | | | | | | | | 2001-06-18 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c: Change the drop-type "x-evolution-dnd" to "x-evolution-message" since we want to be able to DnD more than one data type ;-) * folder-browser.c: Change supported DnD drop types to disclude URI_LIST as that seems to crash Nautilus and seems overly complicated. Since I am going to be supporting message/rfc822, hopefully Nautilus can handle that or else maybe something like text/plain. (message_list_drag_data_get): Remove the code for URI_LIST. svn path=/trunk/; revision=10264
* Allow user's to "copy" drag & drop rather than just "move".Jeffrey Stedfast2001-06-171-1/+1
| | | | | | | | | 2001-06-16 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (my_folder_browser_init): Allow user's to "copy" drag & drop rather than just "move". svn path=/trunk/; revision=10258
* Implemented.Jeffrey Stedfast2001-06-161-51/+186
| | | | | | | | | | | | | | | | 2001-06-15 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (destination_folder_handle_drop): Implemented. * message-list.c (message_list_construct): Don't connect to the DnD signals here. (message_list_drag_data_get): Removed. (add_uid): Removed. * folder-browser.c (my_folder_browser_init): Connect to DnD signals. (message_list_drag_data_get): Implemented. svn path=/trunk/; revision=10257
* Updated to reflect changes to mail_config_[g,s]et_thread_list().Jeffrey Stedfast2001-06-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | 2001-06-14 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (got_folder): Updated to reflect changes to mail_config_[g,s]et_thread_list(). (folder_browser_toggle_threads): Same. * folder-browser-factory.c (control_activate): Updated to reflect changes to mail_config_[g,s]et_thread_list(). * mail-config.c (mail_config_write_on_exit): Do cleanup when we're done. (mail_config_set_thread_list): Send in a URI so we can save the state on a per-folder basis. (mail_config_get_thread_list): Send in a URI so we can retrieve the state on a per-folder basis. * component-factory.c: Setup the accepted_dnd_types. Also added skeleton code for DnD. svn path=/trunk/; revision=10240
* Add Reply-to-List bonobo verbs.Jeffrey Stedfast2001-06-151-0/+2
| | | | | | | | | | | | | | | | | 2001-06-14 Jeffrey Stedfast <fejj@ximian.com> * folder-browser-factory.c: Add Reply-to-List bonobo verbs. * folder-browser.c: Add Reply-to-List menu items. * mail-callbacks.c (mail_reply): Use an enum for specifying the reply mode, becaus enow we can reply-to-list. (reply_to_list): Implement. (reply_to_sender): Use REPLY_SENDER. (reply_to_all): Use REPLY_ALL. (mail_generate_reply): Handle the different modes. svn path=/trunk/; revision=10232
* Added fields for the GalViewMenus and GalViewCollection, since we need toFederico Mena Quintero2001-06-021-0/+13
| | | | | | | | | | | | | | | | | | | 2001-06-01 Federico Mena Quintero <federico@ximian.com> * folder-browser.h (FolderBrowser): Added fields for the GalViewMenus and GalViewCollection, since we need to keep them around while the component is active. * folder-browser-factory.c (folder_browser_setup_view_menus): Plug leaks; unref the spec and factory. Set the view collection and the view menus on the FolderBrowser object. (folder_browser_discard_view_menus): New function. (control_deactivate): Discard the menus. * folder-browser.c (folder_browser_destroy): Destroy the view collection and the view menus. svn path=/trunk/; revision=10086
* Functions to determine if a folderbrowser is one of the drafts, sent, orDan Winship2001-05-171-20/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * folder-browser.c (folder_browser_is_drafts, folder_browser_is_sent, folder_browser_is_outbox): Functions to determine if a folderbrowser is one of the drafts, sent, or outbox folders. (got_folder): Pass TRUE for the "outgoing" flag to message_list_set_folder if this is a Sent, Drafts, or Outbox folder. * message-list.c (message_list_set_folder): Take a flag saying whether or not the folder is an "outgoing" folder. (message_list_setup_etree): Ditto. Use that rather than a hardcoded list of foldernames for deciding whether to swap From and To in the default layout. * mail-config.c (mail_config_folder_to_cachename): Make IMAP folders have unique cachenames rather than only one per store, so that IMAP Sent and Drafts folders don't get forced into having the same layout as the INBOX. * mail-callbacks.c: (is_sent_folder, is_drafts_folder): Gone. Replaced with simpler folder_browser_is_* routines. (edit_msg, resend_msg, open_msg): Use folder_browser_is_* routines. * mail-local.c (reconfigure_clicked): Update call to message_list_set_folder. svn path=/trunk/; revision=9857
* Load http images if the user has force-loaded images too.Dan Winship2001-05-161-10/+17
| | | | | | | | | | | | | | | | | | | | | | | * mail-display.c (on_url_requested): Load http images if the user has force-loaded images too. (mail_display_redisplay): Update for normal/headers/source changes. (mail_display_load_images): New. Force HTTP image loading for the current message. * mail-config.c (mail_config_get_message_display_style, mail_config_set_message_display_style): Updated and renamed from mail_config_{get,set}_view_source * mail-callbacks.c (load_images): New. * folder-browser.c (folder_browser_set_message_display_style): Renamed and updated from folder_browser_toggle_view_source. * folder-browser-factory.c (verbs): Add ViewLoadImages. (control_activate): Update for normal/headers/source change to radio group. svn path=/trunk/; revision=9820
* Remove this... it's not used any more.Dan Winship2001-05-151-1/+0
| | | | | | | | | * mail-mlist-magic.c: Remove this... it's not used any more. * folder-browser.c: * message-browser.c: Remove references to mail-mlist-magic.h svn path=/trunk/; revision=9800
* Split "Other" page into three pages, Display, Composer, and PGP. Add HTMLDan Winship2001-05-151-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mail-config.glade: Split "Other" page into three pages, Display, Composer, and PGP. Add HTML image stuff on the Display page and default forward style on the Composer page. * mail-config.c (mail_config_get_default_forward_style, mail_config_set_default_forward_style): User-specified default style for forwarding messages. (config_read, mail_config_write_on_exit): Deal with forward style. * mail-accounts.c: Handle HTML image display options and default forward style. * mail-callbacks.c (forward): New. Forward in the user-selected default style. (forward_inline, forward_quoted): Simplify these some. Remove the fallback to forward attached when forwarding multiple messages: it should just forward the multiple messages inline or quoted in those cases. (Which it doesn't yet, but that's a bug.) * folder-browser.c (context_menu): Remove "Forward inline" and make "Forward" call forward() rather than forward_attached(). * folder-browser-factory.c: Update command/menu/toolbar/pixmap gunk for the "MessageForwardAttached" vs "MessageForward" split. * mail-session.c (mail_session_get_type): * mail-format.c (format_mime_part): * mail-account-gui.c (setup_service): Fix warnings. svn path=/trunk/; revision=9792
* Use secondary searches here, so that we control the interference betweenJon Trowbridge2001-05-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-05-14 Jon Trowbridge <trow@ximian.com> * folder-browser.c (folder_browser_config_search): Use secondary searches here, so that we control the interference between the two bits of searching UI. 2001-05-13 Jon Trowbridge <trow@ximian.com> * mail-search.c (mail_search_construct): Destroy the MailSearch dialog if the underlying MailDisplay is destroyed. I don't like the way that label in the dialog with the message subject in it looks, so I've #ifdef-ed it out for now. Center the Matches label --- it makes the dialog look more balanced, I think. (dialog_clicked_cb): Changed to reflect adjusted ESearchingTokenizer API, using primary searches. (toggled_case_cb): Use the primary search API. * e-searching-tokenizer.c: Make searching routines utf8-friendly. Rationalize how the match begin/end markup is handled; allow for begin/end markup that varies by search. Add concept of primary and secondary matching, to disentangle possible interactions between search-bar searches and search-dialog searches. svn path=/trunk/; revision=9789
* Use the ESearchingTokenizer to highlight search matches for folder-levelJon Trowbridge2001-05-111-0/+12
| | | | | | | | | | | | | | | | | | | | | 2001-05-10 Jon Trowbridge <trow@ximian.com> * folder-browser.c (folder_browser_config_search): Use the ESearchingTokenizer to highlight search matches for folder-level searches. Still mildly broken, but it works for the simple cases. * mail-display.c (mail_display_new): Use our ESearchingTokenizer for the mail display GtkHTML widget. * mail-search.c (dialog_clicked_cb): Use the ESearchingTokenizer to highlight search matches. (mail_search_construct): Add a match count to the search dialog. * e-searching-tokenizer.c (e_searching_tokenizer_set_search_string): Added. A custom HTML tokenizer that does highlighting of search strings. svn path=/trunk/; revision=9754
* Don't advance to the next undeleted message after "Delete"...Dan Winship2001-05-111-3/+0
| | | | | | | | | | | | | | | | | | | * folder-browser.c (on_key_press): Don't advance to the next undeleted message after "Delete"... * mail-callbacks.c (delete_msg): ...instead, do it here, whether the user used Delete, Alt+D, or the toolbar. (But only if they only deleted a single message.) * message-list.c (message_list_select): Don't clear the display on failure. (build_tree): Clear the display when the currently-selected message stops existing and we don't have an obvious message to select instead of it. (Eg, when deleting the last message with "hide deleted messages" set, or expunging while a deleted message is selected.) svn path=/trunk/; revision=9744
* Connect to key_press_event on the GtkHTML widget. (etree_key): Only handleDan Winship2001-05-081-34/+48
| | | | | | | | | | | | | | * folder-browser.c (my_folder_browser_init): Connect to key_press_event on the GtkHTML widget. (etree_key): Only handle space/backspace here, pass the rest off to on_key_press. (on_key_press): Handle Delete/N/P/Menu in either MessageList or MailDisplay. * message-list.c (message_list_select): Grab focus if we don't have it. svn path=/trunk/; revision=9694
* only remove event handlers if we set them up originally, to avoidDan Winship2001-04-301-4/+11
| | | | | | warnings from camel svn path=/trunk/; revision=9631
* Unhook event handlers before syncing the folder, since the folder browserDan Winship2001-04-301-1/+8
| | | | | | | | | * folder-browser.c (folder_browser_destroy): Unhook event handlers before syncing the folder, since the folder browser will have been destroyed by the time the sync thread completes and calls the signal handlers. svn path=/trunk/; revision=9630
* Added a new signal, "message_loaded" that gets emitted when the messageJeffrey Stedfast2001-04-251-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | 2001-04-24 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c: Added a new signal, "message_loaded" that gets emitted when the message has been loaded and set on the mail_display. (folder_browser_class_init): Define the "message_loaded" signal stuff. (done_message_selected): Emit the "message_loaded" signal here. * message-browser.c (message_browser_next_msg): Do our own message-list manipulation. We want the next message, not the next unread message. (message_browser_prev_msg): Same here but for previous. (message_browser_new): Connect to the folder browser's "message_loaded" signal. (message_browser_folder_loaded): Don't connect to the message-list's "message_selected" signal. (message_browser_message_loaded): Nw callback which replaces the old message_browser_message_selected callback's functionality. svn path=/trunk/; revision=9551
* Add accelerators to the context menu. (on_right_click): UseDan Winship2001-04-251-28/+62
| | | | | | | | | | | * folder-browser.c: Add accelerators to the context menu. (on_right_click): Use e_tree_get_cell_geometry and a GtkMenuPositionFunc when responding to a Menu-key press so we can line the menu up with the selected row rather than the cursor. * message-browser.c: include <gal/util/e-util.h> for E_MAKE_TYPE. svn path=/trunk/; revision=9547
* Use the message-browser widget rather than the mail-view window.Jeffrey Stedfast2001-04-241-0/+19
| | | | | | | | | | | | | | | | | | | 2001-04-23 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (do_view_message): Use the message-browser widget rather than the mail-view window. * mail-view.c: Removed. * folder-browser.c: Added a folder_loaded signal. * message-browser.[c,h]: New window to solve all our message browsing needs. This replaces mail-view.c. * message-list.c (message_list_select_uid): New function needed by the new message-browser window. svn path=/trunk/; revision=9525
* use system = EVOLUTION_DATADIR "/file" instead of g_strdup_printf. RenameGediminas Paulauskas2001-04-221-5/+4
| | | | | | | | | | | | | | | | | 2001-04-22 Gediminas Paulauskas <menesis@delfi.lt> * folder-browser.c, mail-autofilter.c, mail-callbacks.c, mail-ops.c, mail-summary.c, mail-vfolder.c: use system = EVOLUTION_DATADIR "/file" instead of g_strdup_printf. Rename userrules to user (and system) to be consistent. * mail-send-recv.c: set window icon to send-receive.xpm 2001-04-21 Gediminas Paulauskas <menesis@delfi.lt> * mail-summary.c: translate "Mail summary". svn path=/trunk/; revision=9490
* Don't printf NULLDan Winship2001-04-131-2/+2
| | | | | | | * folder-browser.c (do_message_selected, on_message_selected): Don't printf NULL svn path=/trunk/; revision=9278
* Merge from evolution-0-10 to evolution-0-10-merge-0 into head.Not Zed2001-04-051-0/+20
| | | | | | | | 2001-04-05 Not Zed <NotZed@Ximian.com> * Merge from evolution-0-10 to evolution-0-10-merge-0 into head. svn path=/trunk/; revision=9193
* Cleaned up #includes. Remove unneccesary includes of <gnome.h>,Kjartan Maraas2001-03-301-14/+17
| | | | | | | | | | | 2001-03-29 Kjartan Maraas <kmaraas@gnome.org> * *.*: Cleaned up #includes. Remove unneccesary includes of <gnome.h>, <gtk/gtk.h>, <bonobo.h> and replaced with more fine grained headers where needed. Also marked a bunch of strings for translations and added some missing prototypes. svn path=/trunk/; revision=9025
* Made this check if the control mask is set.Christopher James Lahey2001-03-201-1/+1
| | | | | | | | | 2001-03-20 Christopher James Lahey <clahey@ximian.com> * folder-browser.c (etree_key): Made this check if the control mask is set. svn path=/trunk/; revision=8844
* Bumped gal requirement to 0.5.99.8.Christopher James Lahey2001-03-201-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-19 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped gal requirement to 0.5.99.8. From addressbook/ChangeLog: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * Merged branch: 2001-03-14 Christopher James Lahey <clahey@ximian.com> * gui/widgets/e-minicard-view.c: Call e_selection_model_simple_insert_rows and e_selection_model_simple_delete_rows instead of e_selection_model_simple_insert_row and e_selection_model_simple_delete_row. End of branch From mail/ChangeLog: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * Merged e-tree-rework-branch: 2001-03-18 Christopher James Lahey <clahey@ximian.com> * message-list.c: Added has_save_id and get_save_id methods. * subscribe-dialog.c: Added arguments for e_tree_memory_callbacks_new of get_save_id and has_save_id to NULL. 2001-03-16 Christopher James Lahey <clahey@ximian.com> * message-list.c: Added a call to e_tree_memory_set_expanded_default to TRUE. Removed all calls to set_expanded on nodes while the tree is frozen since this fails miserably now. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * message-list.c (message_list_get_layout): Turned off draw-grid. 2001-03-09 Christopher James Lahey <clahey@ximian.com> * folder-browser-factory.c, folder-browser.c, message-list.c, message-list.h, subscribe-dialog.c, subscribe-dialog.h, mail-callbacks.c: Converted these all to use ETree instead of ETable. End of branch From shell/ChangeLog: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * Merged e-tree-rework-branch: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c (etree_get_save_id): Made "root" detection deal properly with removed nodes. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-shell-view.c (e_shell_view_save_settings): Added some unused code to implement saving of the expanded state. * e-storage-set-view.c: Added has_save_id and get_save_id methods. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c (ETREE_SPEC): Set draw-grid here to false. 2001-03-09 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c, e-storage-set-view.h: Chaned this to use ETree instead of ETable. End of branch svn path=/trunk/; revision=8839
* Add Resend Message menu item.Jeffrey Stedfast2001-03-191-1/+9
| | | | | | | | | | | | | | | | 2001-03-19 Jeffrey Stedfast <fejj@ximian.com> * folder-browser-factory.c: Add Resend Message menu item. * folder-browser.c (on_right_click): Add resend to the right-click menu. * mail-callbacks.c (composer_sent_cb): Unref the message. (composer_postpone_cb): Unref the message here too. (resend_msg): New callback to allow resending of messages in the Sent folder. svn path=/trunk/; revision=8816
* Move the proxy event outside the lock (otherwise we always deadlock).Not Zed2001-03-171-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-17 Not Zed <NotZed@Ximian.com> * mail-mt.c (mail_msg_free): Move the proxy event outside the lock (otherwise we always deadlock). * mail-local.c (reconfigure_clicked): Clear the message list during update inside the folder thingy. This is a hell mess, need to move the gui stuff to mail-callbacks and make this reconfigure thing a more generic func. * message-list.c (ml_value_to_string): Cleanup the logic to use lookup tables. (sort_uid_to_rows): Removed due to rewrite below. (build_flat_diff): Changes for node/summary/etc changes. Also do changed nodes too. (clear_tree): Free the info reference for nodes in our hashtable. (build_subtree): Ref the info reference in our hash/tree node. (on_click): Dont free message info, since we just got our ref to it. (remove_node_diff): Free messageinfo off node. (build_flat): Ref messageinfo. (message_list_set_folder): Allow a NULL folder to be set - i.e. clear the view. (message_list_set_folder): Emit a no message sleeted signal. (build_tree): Change cursor keeping stuff to work with new info. Turned off BROKEN_ETREE - well maybe it'll work. Check for duplicate messages displayed, etc. 2001-03-16 Not Zed <NotZed@Ximian.com> * message-list.h: Added uid_nodemap; mapping of uid's to e-tree nodes. * message-list.c (build_flat): Changed to take a summary argument, and to store node in node map, etc, and store info's in e-tree. (build_subtree): Changed to store node in node map, and to store info's in tree directly. (ml_tree_value_at): Changed to get info directly from tree node, removed allocated return value logic. (ml_tree_value_at): Removed all "fake node" handling, no fake nodes should ever exist. (id_is_uid, id_is_subject, id_uid, id_subject): Removed macro's no longer used. (new_id_from_uid, new_id_from_subject): Removed no longer used. (get_message_uid): (get_message_info): Treat tree node data as messageinfo. (message_list_select): Dont free the messageinfo, as its part of our data, not retrieved from folder. (message_list_drag_data_get): ditto. (subtree_unread): Treat tree node data as messageinfo. (subtree_size): ditto. (subtree_earliest): ditto. (clear_tree): Reset uid_nodemap on clear. (save_node_state): tree nodes == messageinfo's. (add_node_diff): ditto. (remove_node_diff): ditto. (main_folder_changed): use uid_nodemap to lookup changed nodes. (main_message_changed): ditto. svn path=/trunk/; revision=8775
* Added edit item to search-bar menu.Not Zed2001-03-151-0/+1
| | | | | | | | | | | | | 2001-03-15 Not Zed <NotZed@Ximian.com> * folder-browser.c: Added edit item to search-bar menu. * mail-callbacks.c (filter_edit): Changed for filter_editor_new() api addition/change. * mail-vfolder.c (vfolder_edit): Use vfolder_editor_new intead. svn path=/trunk/; revision=8731
* Call open_msg here so that it does the Right Thing (tm).Jeffrey Stedfast2001-03-091-2/+2
| | | | | | | | | 2001-03-08 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (on_double_click): Call open_msg here so that it does the Right Thing (tm). svn path=/trunk/; revision=8600
* Reorganize the menus to have entries always in a consistent fashion, asMiguel de Icaza2001-03-071-55/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-27 Miguel de Icaza <miguel@ximian.com> * gui/e-day-view.c (e_day_view_on_event_right_click): Reorganize the menus to have entries always in a consistent fashion, as reported to the genepool mailing list. (e_day_view_on_event_right_click): Added a FIXME comment to the FIXME comment without a FIXME. Now we use e_popup_menu. This allows us to hide/show items on demand, and to sensitize/de-sensitize items depending on their state. This will also let us add icon support (when we get nice icons for this) * gui/e-week-view.c (e_week_view_show_popup_menu): Ditto. The files popup-menu.c and popup-menu.h can now be removed. 2001-03-01 Miguel de Icaza <miguel@ximian.com> * folder-browser.c (on_right_click): Move the context menus to the toplevel code; Use enumerations for the various bitfield constants. Add support for hiding items that are not required (read/unread and delete/undelete). This requires my previous patch, as it assumes "Open" does the right thing instead of having two operations: Open and Edit. 2001-02-28 Miguel de Icaza <miguel@ximian.com> * folder-browser.c (on_right_click): Removed draft folders op here, since open_msg now does the right thing (edit or view). * folder-browser-factory.c (update_pixmaps): Removed MessageEdit from here. * mail-callbacks.c (open_msg): New function, does the "right thing" to a message (either, edit or open). * folder-browser-factory.c: Register new command here. (update_pixmaps): Rename keys that have been shuffled around. (update_pixmaps): Rename to match new updates on xml file. Rename MessageOpenNewWindow to MessageOpen. Change action from "view_message" to "open_message". * mail-callbacks.c (mark_all_as_seen): New command. Marks all messages as seen. 2001-03-06 Miguel de Icaza <miguel@ximian.com> * evolution-tasks.xml: Added "File/New/Task" as well. * evolution-mail.xml: Added "File/New/Mail Message" at the top with binding C-n. * evolution-calendar.xml: Set the binding for New Appointment to C-n * evolution-contact-editor.xml: Set the toolbar to hlook=text vlook=icon; Set all icons priority-text to 1. * evolution-addressbook.xml: Added "Contact" to the New menu. * evolution.xml: Provide an entry point to put "New" items on the first level. We are going to need some Bonobo support to "hide" objects when other objects appear (like, having Mail Message bound to C-S-X in the global space, and when we switch to Mail, we only show the entry that has C-n as the binding). 2001-02-28 Miguel de Icaza <miguel@ximian.com> * evolution.xml: Moved Importer after the Folder operations per Dan's proposal. * evolution-addressbook.xml: Renamed Settings/AddressBook Configuration to Tools/Settings. Make all the items have "Print" items that use the same icon instead of a collection of icons. * evolution-calendar.xml: Moved "Calendar Preferences" from "Settings" to "Tools/Settings". * evolution-mail.xml: Settings menu is fully gone. All things that run a dialog now end up in "Tools" while actions end up in "Actions". Hence I am right. Renamed "Mail Configuration..." to "Identieies and Servers" Move MessageMarkAsRead, MessageMarkAsUnRead to Edit menu. Add MessageMarkAllAsRead. Remove "Print Message" from Message menu. Remove "Print Preview Message" from Message menu. Leave them on the "File" menu. Renamed "Reply to Sender" to "Reply" (awaiting Ettore's permission). Renamed "Messages" to "Actions". Open Message renamed to "Open Selected Items" (as this is what it actually does). Moved "Save Message As" to "File" menu. Added "Properties" to the File/Folder submenu. Edit menu now looks like this: Message Move, Message Copy, Select All, Invert Selection, Delete, Undelete, Mark as Read, Mark as Unread. Some of them were moved from the "Messages" menu. "Forward message" shortcut changed to C-f Tools menu created. Create Rule From message moved to "Tools". * evolution.xml: Added Tools menu. Moved Edit/Customize to Tools/Customize Toolbar. Added File/Folder submenu. Duplicate "New Folder" in here. 2001-02-28 Miguel de Icaza <miguel@ximian.com> * menus/gal-view-menus.c (build_menus): Add translation string here. svn path=/trunk/; revision=8572
* Remove very old camel lock stuff.Not Zed2001-03-031-0/+1
| | | | | | | | | | | | | | | | | | | | | 2001-03-03 Not Zed <NotZed@Ximian.com> * mail-tools.c: Remove very old camel lock stuff. * mail-local.c (register_folder_registered): Add the local folder as a potential vfolder source. * folder-browser.c (got_folder): When we have a new folder, register it as a potential vfolder source. * mail-vfolder.c: Added the source rule to the vfolder_info. (vfolder_refresh): Store the rule in the vfolder info, etc. (vfolder_register_source): Function to register a newly opened folder with us. (vfolder_uri_to_folder): Save the folder in the vfolder_info too. (source_finalise): Handle clenaup when the folder dies. svn path=/trunk/; revision=8534
* Fixes for changes to search bar. (search_save): Removed. (search_full):Not Zed2001-03-011-210/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-01 Not Zed <NotZed@Ximian.com> * folder-browser.c (folder_browser_search_menu_activated): Fixes for changes to search bar. (search_save): Removed. (search_full): Removed. (search_full_clicked): Removed. (folder_browser_search_option_items[]): Removed. (folder_browser_search_query_changed): Changed for search bar changes. (folder_browser_clear_search): Removed. * mail-vfolder.c (vfolder_clone_rule): New function to clone a filter/search rule into a matching vfolder rule. * mail-send-recv.c (mail_receive_uri): Setup a timeout for status updates. (build_dialogue): Setup timeout id for status updates. (operation_status_timeout): New function to set the status via a timeout. (receive_done): Remove the timeout handler if we need to. (operation_status): (receive_status): Just update the info, and let the timeout handler update the gui. (do_free_status): (do_show_status): Removed gui thread status message processing. 2001-02-28 Not Zed <NotZed@Ximian.com> * folder-browser.c (folder_browser_config_search): New function to configure the FilterRule for the search mechanism. 2001-02-27 Not Zed <NotZed@Ximian.com> * folder-browser.c (folder_browser_gui_init): Setup the search bar as a filterbar. (got_folder): Set the whole search bar sensitive or not based on the search capability of the folder. * folder-browser.h: Changed to use efilterbar instead of esearchbar. svn path=/trunk/; revision=8438
* Toss the mail_tool_camel_lock* stuff. Same. Here too.Jeffrey Stedfast2001-02-251-2/+0
| | | | | | | | | | | | | | | | 2001-02-24 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c: Toss the mail_tool_camel_lock* stuff. * mail-ops.c: Same. * mail-summary.c: Here too. * mail-tools.c (mail_tool_uri_to_folder_noex): Blown away! (mail_tool_filter_get_folder_func): *kapoosh* (mail_tool_camel_lock_up): Same. (mail_tool_camel_lock_down): Same. (mail_tool_set_uid_flags): Don't need this rubbish anymore either. svn path=/trunk/; revision=8384
* vfolder/filter on mailing list. Doesn't acutally work right yet.Michael Zucci2001-02-231-19/+31
| | | | | | | | | | | | | | | | | | | | * mail-vfolder.c (vfolder_gui_add_from_mlist): Rule to add mlist vfolder. * mail-autofilter.c (filter_gui_add_for_mailing_list): Removed. (rule_from_mlist): Build a generic match rule from an mlist. (vfolder_rule_from_mlist): Setup the vfolder rule for an mlist. (filter_rule_from_mlist): Setup a filter rule fro an mlist. (filter_gui_add_from_mlist): GUI thingy to do the work. * folder-browser.c (on_right_click): Added vfolder on mailing list to filter menu. (on_right_click): Use header_raw_check_mailign_list instead of mlist magic to get the mailing list name. (filter_mlist): Changed to use new add_from_mlist() call. (vfolder_mlist): New function for vfolder from mlist. svn path=/trunk/; revision=8358
* Fix typo.Kjartan Maraas2001-01-301-1/+1
| | | | | | | | 2001-01-30 Kjartan Maraas <kmaraas@gnome.org> * folder-browser.c: Fix typo. svn path=/trunk/; revision=7913
* Don't handle home and end keys since %ETable deals with them now.Christopher James Lahey2001-01-281-10/+0
| | | | | | | | | 2001-01-27 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c (etable_key): Don't handle home and end keys since %ETable deals with them now. svn path=/trunk/; revision=7865
* Define BROKEN_ETREE again, till we get this stuff fixed better.Not Zed2001-01-261-8/+8
| | | | | | | | | | | | | | | | | | | 2001-01-26 Not Zed <NotZed@Ximian.com> * message-list.c (build_tree): Define BROKEN_ETREE again, till we get this stuff fixed better. 2001-01-25 Not Zed <NotZed@Ximian.com> * folder-browser.c: Moved teh "sender contains" item to the end of the list, so the gui doesn't suddenly change on everyone. Fixed the sender-contains search string to be a valid s-exp (ha, didn't test it even once eh ettore?!) (search_save): Dont have the sender contains as the default case (which well, never gets called anyway), oops i guess i should've reviewed the patch a little more. svn path=/trunk/; revision=7835
* Fix the "sender contain" quicksearch rule by adding a missingEttore Perazzoli2001-01-261-3/+3
| | | | | | | parenthesis; also make it the last item on the OptionMenu instead of the first one. svn path=/trunk/; revision=7834
* Fix the subject match expression, which was missing a closing ).Not Zed2001-01-251-1/+1
| | | | | | | | | | | | 2001-01-24 Not Zed <NotZed@Ximian.com> * folder-browser.c (search_string[]): Fix the subject match expression, which was missing a closing ). * mail-send-recv.c (do_show_status): Escape any % signs in the string before setting the format string. svn path=/trunk/; revision=7797
* Patch from Tuomas to have a "Sender contains" rule in the quicksearchEttore Perazzoli2001-01-241-0/+11
| | | | | | bar. svn path=/trunk/; revision=7764
* remove a warning with conditional news compilation.Not Zed2001-01-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-22 Not Zed <NotZed@Ximian.com> * component-factory.c (owner_set_cb): remove a warning with conditional news compilation. * mail-ops.h: Cleaned up the header list. * folder-browser-factory.c: Replace the old get_send mail with the new one (button). * mail-ops.c (set_x_mailer): (mail_load_evolution_rule_context): (mail_do_fetch_mail): (mail_do_filter_ondemand): (mail_send_mail_old): (mail_do_send_queue): All removed, (for) now lives in mail-send-recv.c. (load_context): (setup_filter_driver): (filter_get_folder): (mail_filter_folder): (mail_fetch_mail): (mail_update_subfolders): (mail_send_mail): (mail_send_queue): New equivalents of all these fundtions, moved from mail-send-recv.c ... (mail_filter_on_demand): Moved here too. (mail_load_filter_context): Export this. * mail-callbacks.c (apply_filters): Use the new mail_filter_on_demand() call. (send_receieve_mail): Use mail_send_receive to do the work. Add a little error handling here that used to be elsewhere. (send_queued_mail): Removed. (fetch_mail): Removed. (select_first_unread): #ifdef'd this out. Not sure if this still makes sense, but it doesn't get run right now anyway. (composer_postpone_cb): Fix the setting of message flags. You dont need to get them first, ever. * mail-send-recv.c (mail_send_message): Dont use mail_tool_send_via_transport anymore (it does nothing useful). * mail-tools.c (mail_tool_camel_lock_up): Turned into a noop. (mail_tool_camel_lock_down): And here too. (mail_tool_move_folder_contents): Removed from the code (hasn't bene used for ages). (mail_tool_send_via_transport): Removed, it doesn't save anything. svn path=/trunk/; revision=7702
* Update for e_popup_menu_run change.Dan Winship2001-01-201-1/+5
| | | | | | | | | | | * mail-display.c (pixmap_press): Update for e_popup_menu_run change. * folder-browser.c (etable_key): On GDK_Menu (the menu key on 105-key keyboards), pop up the right-click menu. (on_right_click): update for e_popup_menu_run change. svn path=/trunk/; revision=7662
* Add an ::asyncCopyFolder method to the ShellComponent interface. MoveEttore Perazzoli2001-01-131-33/+0
| | | | | | all the message hiding options to the View menu. svn path=/trunk/; revision=7456
* Rename "Save" to "Store search as vFolder".Miguel de Icaza2001-01-121-7/+7
| | | | | | | | 2001-01-12 Miguel de Icaza <miguel@ximian.com> * folder-browser.c: Rename "Save" to "Store search as vFolder". svn path=/trunk/; revision=7439
* Connect to folder_changed as well as message_changed for updating unreadDan Winship2001-01-121-0/+2
| | | | | | | * folder-browser.c (got_folder): Connect to folder_changed as well as message_changed for updating unread count svn path=/trunk/; revision=7420
* Brand spankin' new config druid, editor, and manager.Jeffrey Stedfast2001-01-091-3/+3
| | | | | | | | | | | | | | | | | | | | | 2001-01-08 Jeffrey Stedfast <fejj@helixcode.com> * Makefile.am: * component-factory.c: * folder-browser-factory.c: * folder-browser.c: * mail-accounts.[c,h]: * mail-account-editor.[c,h]: * mail-callbacks.c: * mail-config.[c,h]: * mail-config-druid.[c,h]: * mail-config-druid.glade: * mail-display.c: * mail-format.c: * mail-tools.c: Brand spankin' new config druid, editor, and manager. svn path=/trunk/; revision=7313
* Reverted mail-config changes temporarily until I get it working correctly.Jeffrey Stedfast2001-01-091-3/+3
| | | | | | | | | | | | | | | | | 2001-01-08 Jeffrey Stedfast <fejj@helixcode.com> * Makefile.am: * component-factory.c: * folder-browser-factory.c: * folder-browser.c: * mail-callbacks.c: * mail-config.[c,h]: * mail-display.c: * mail-format.c: * mail-tools.c: Reverted mail-config changes temporarily until I get it working correctly. svn path=/trunk/; revision=7305
* Updated to reflect changes to the mail-config API. (create_msg_composer):Jeffrey Stedfast2001-01-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-07 Jeffrey Stedfast <fejj@helixcode.com> * mail-callbacks.c (check_send_configuration): Updated to reflect changes to the mail-config API. (create_msg_composer): Same. (forward_get_composer): Same. (send_queued_mail): Same. (composer_send_cb): Same. * mail-account-editor.c: Updated to build cleanly. * mail-config-druid.c: Same. * mail-accounts.c: Same. * folder-browser-factory.c (control_activate): Updated for API changes in mail-config. * folder-browser.c (done_message_selected): Updated for API changed in mail-config. (folder_browser_gui_init): Same. (got_folder): Same. * component-factory.c (owner_set_cb): After using the sources list, free it as it is no longer a const GSList as with the older mail-config code. * mail-config.c: Totally rewritten. svn path=/trunk/; revision=7294
* Fix leaks, set unread count on folder creation as well as on changesDan Winship2001-01-051-2/+6
| | | | svn path=/trunk/; revision=7250
* Connect to "message_changed" on the folder if it's on a remote storage.Dan Winship2001-01-051-1/+38
| | | | | | | | | * folder-browser.c (got_folder): Connect to "message_changed" on the folder if it's on a remote storage. (update_unread_count): Update the folder unread count / highlight in the shell when the unread message count changes svn path=/trunk/; revision=7249
* Removed old implementation.Not Zed2001-01-041-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-04 Not Zed <NotZed@HelixCode.com> * mail-ops.c (mail_do_send_mail): Removed old implementation. * folder-browser.c (do_message_selected): If we haven't got a real uid, then clear the display instead. * message-list.c (message_list_drag_data_get): Use new save message function, and also wait for it to finish before continuing. (folder_changed): (message_changed): Use mail_proxy_event instead of mail_do_forward. (mail_regen_list): New iplementation to replace the old. : remove <gnome.h> from headers. Dont define timeit by default. (main_folder_changed): (message_list_set_folder): (message_list_set_threaded): (message_list_set_search): (message_list_hide_add): (message_list_hide_uids): (message_list_hide_clear): Use mail_regen_list instead of mail_do_regenerate_messagelist. (mail_do_regenerate_messagelist): Removed the old stuff. No functionality changed yet, just using different thread stuff. * mail-callbacks.c (save_msg_ok): Use new save message function. * component-factory.c (create_view): (add_storage): Use mail_scan_subfolders to build the folder info. (create_folder): Use new implementation with our own callback. (owner_set_cb): Changed b ack to use mail_get_folder, but now wait for it to finish. This will let any gui still run, but also gives us the required synchronous operation. (got_folder): Callback for when the folder has been opened. * mail-ops.c (mail_get_folderinfo): New function to just get the folder info in another thread. (mail_scan_subfolders): New scan subfolder implementation that uses mail_get_folderinfo. (mail_do_scan_subfolders): Removed old implementation. (mail_create_folder): Nerw implementation to create a folder, only. (mail_do_create_folder): Removed old implementation. (mail_save_messages): New implementation, fixes a couple of minor problems, and now provides a return so it can be waited on. Also check that the writes worked, etc. (mail_do_save_messages): Remove previous implementation. (mail_do_flag_messages): Removed, nothing uses it. (mail_do_flag_messages): Removed, nothing uses it anymore. (mail_get_folder): REturn the operation id, so callers can wait for it. (sync_folder_desc): (expunge_folder_desc): Add describe functions so we know what its doing. (mail_send_mail): More generic implementation of sending mail. * mail-mt.c (mail_msg_new): Lock around seq increment. And insert each new message into a hash table of active messages. (mail_msg_init): Init the active message table. (mail_msg_free): Remove the message from the active message table. (mail_msg_wait): New function, waits for a message to be processed, by id. (mail_msg_check_error): Dont display the error if it is a user-cancelled operation. (mail_proxy_event): new implementation of mail_op_forward_event. Only real difference is it uses the new thread stuff, and you can wait for it to finish if you want. (mail_proxy_event): If we're already in the main thread, just call the function. svn path=/trunk/; revision=7246
* Fix for mail_get_message change, use queue thread.Not Zed2001-01-031-28/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-02 Not Zed <NotZed@HelixCode.com> * mail-callbacks.c (view_msg): Fix for mail_get_message change, use queue thread. * folder-browser.c (done_message_selected): Fix mail_Get_message calls, use new thread. (do_message_selected): " * mail-ops.c (mail_get_message): Add a thread argument so callers can specify which queue it executes on. * mail-mt.c (mail_msg_free): Fix a free order problem. (mail_msg_destroy): Call mail_msg_free to do the work. (mail_msgport_replied): " (mail_msgport_replied): Check/display errors if we get them. (mail_msgport_received): If we have a describe function, say what we're doing, also set busy/unbusy. (mail_msgport_replied): Clear busy when we get a reply. (mail_get_password): Unset busy. (mail_msg_received): Set busy as we go. (mail_msg_destroy): Unset busy when done. (mail_status): Blah blah, new status interface, the other wans't workable with the way the shell api works. 2000-12-29 Not Zed <NotZed@HelixCode.com> * folder-browser.c (do_message_selected): If we are reconfiguring, just keep polling till we are done (yeah kinda shitty, but easy). (folder_browser_set_uri): Clear reconfigure flag here. ick. (got_folder): And here too. (on_right_click): Remove locking. (hide_sender): and here too. (hide_subject): And here. (on_right_click): If we are in reconfigure, then the whole menu is disabled. * mail-mt.c (status_busy_timeout): Clear the status_busy_timeout_id. * mail-local.c (local_storage_new_folder_cb): Made getting folders completely synchronous. The shell expects it, and it was only synchronous before by a sideeffect. (do_reconfigure_folder): Remove locking stuff. (do_reconfigure_folder): Use our own much simpler copying routine than that stupid move_folder_contents thing. (update_progress): Use mail_status_message() instead. (do_reconfigure_folder): Set the reconfigure flag during reconfigure & set busy flag. (cleanup_reconfigure_folder): clear busy flag. * mail-tools.c (mail_tool_uri_to_folder): Remove the tool_lock stuff. (mail_tool_uri_to_folder_noex): Clear exception on exit. (mail_tool_move_folder_contents): Get rid of this really stupid function that is only used in one place. * component-factory.c (owner_set_cb): Use direct calls to get the folders, as this code must run synchronous. Remove the event wait stuff. * mail-callbacks.c (edit_msg): Call mail_get_messages, and create the composers ourself. (do_edit_messages): get_messages callback, create the composers and connect to signals we need. (view_msg): Dont call do_view_messages, just call mail_get_messge for each to get them in parallel. (do_view_message): view a single message. * mail-ops.c (mail_edit_messages): Just use mail_get_messages for this operation. Removed the other async operation stuff. Changed my mind, just removed entirely. (mail_do_view_messages): Removed. (mail_do_setup_folder): Removed. (mail_do_scan_subfolders): Make this run synchronously, as every caller expects it to (even if they didn't realise). 2000-12-28 Not Zed <NotZed@HelixCode.com> * mail-callbacks.c (send_queued_mail): Dont expunge the folder here, but in send_queue, otherwise it might execute out of order. (expunge_folder): Remove the talbe prechange stuff, and infact references to the message_list folder, as we have our own folder. Also, dont allow expunge if we're already expunging. (expunged_folder): Clkear the expunging flag if we're finished. * folder-browser-factory.c (control_deactivate): Likewise here. Hrm, i thought this function required a callback, silly me. * mail-tools.c (mail_tool_make_message_attachment): Remov e locking. * folder-browser.c (on_message_selected): Use a timeout handler so we dont select immediately. (folder_browser_set_uri): Changed to use mail_get_folder. (got_folder): New callback called when get_folder is finished. (folder_browser_destroy): Use new sync interface. * mail-ops.c (mail_get_message): New function to asynchrounously get a message. : #define out mail_tool_camel_lock stuff entirely. (mail_get_folder): New function to asynchrounously get a folder. (mail_do_load_folder): Removed, replaced by more generic function above. (mail_do_display_message): Removed, replaced by the more generic funciton get_message. (mail_get_messages): New function to get a list of messages asynchronously. (mail_sync_folder): New interface to sync a folder async. (mail_expunge_folder): New interface for expunging folder, with callback. (do_send_queue): Remove lock stuff, and expunge if (and only if) successful, also sync the sent folder while we're at it. * session.c (mail_session_request_dialog): Changed to use new mail_get_password call. * mail-mt.[ch]: New threading/interthread messaging framework. * main.c (main): Init the message/thread system. svn path=/trunk/; revision=7223
* Merge from camel-mt-branch.Not Zed2000-12-241-7/+5
| | | | | | | | 2000-12-24 Not Zed <NotZed@HelixCode.com> * Merge from camel-mt-branch. svn path=/trunk/; revision=7153
* Always use the slow (full-update) version of the tree update code, to getNot Zed2000-12-161-14/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-16 Not Zed <NotZed@HelixCode.com> * message-list.c (build_tree): Always use the slow (full-update) version of the tree update code, to get around a bug(?) in etree. (build_flat): Likewise. 2000-12-15 Not Zed <NotZed@HelixCode.com> * mail-display.c (write_data_to_file): Dont blindly convert all parts to utf8, e.g. image/jpg. We only convert text/* parts, and only then if required. 2000-12-14 Not Zed <NotZed@HelixCode.com> * component-factory.c (create_view): cast over a warning. * folder-browser-factory.c: Add verbs for hide functions. * message-list.c (message_list_hide_clear): (message_list_hide_uids): (message_list_hide_add): Some api renaming. (message_list_hide_add): Allow ML_HIDE_SAME to be passed to mean not to change the upper/lower range at all. (hide_save_state): Save the state of the hide list to stable storage. (hide_load_state): Load the state of hte hide list. (message_list_set_folder): Load/save the state of the folder if it is changed/set. (message_list_destroy): Save the state of the folder hide list when done. (save_tree_state): If we wrote out an empty state file, simply remove it instead. * folder-browser.c (on_right_click): Add some hide menus. (hide_read): Hide read messages. (hide_deleted): Hide deleted messages. (hide_selected): Hide selected/current message. (hide_none): Show all hidden messages. (on_right_click): Lock around accesses to the message (inside mlist_detect_magic). (on_right_click): Free the mailing list name. 2000-12-13 Not Zed <NotZed@HelixCode.com> * folder-browser.c (on_right_click): Add camel locking since we call it directly. Whoever heard of a lock you 'down' to unlock? * message-list.c (mail_do_regenerate_messagelist): Added hide expression, messages to hide. Fixed all callers. (do_regenerate_messagelist): IF we have a hide expression, search and remove those from the uid list. If we have a hide range, apply that afterwards. (cleanup_regenerate_messagelist): Handle freeing the hide uid temporary data, if required. (message_list_destroy): Free hide data, also lock around all camel object stuff. (message_list_length): New function to get the number of messages avaialble to be hidden by range. (message_list_set_hide): Set the hide expression and range. Issue: Should hiding be remembered? (message_list_unhide_all): Turn off all hiding. (message_list_hide_uids): Hide a list of uid's. svn path=/trunk/; revision=7061
* Made the vertical scrollbar always be there.Christopher James Lahey2000-12-141-0/+4
| | | | | | | | | | | | 2000-12-13 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c (my_folder_browser_init): Made the vertical scrollbar always be there. * message-list.c (message_list_get_layout): Changed the minimum width of some of the pixmap column headers. svn path=/trunk/; revision=6983
* Ignore double-clicks on "active" columns (the ones where clicking doesDan Winship2000-12-121-0/+6
| | | | | | | | * folder-browser.c (on_double_click): Ignore double-clicks on "active" columns (the ones where clicking does something beyond "select"), fixing bug #811 svn path=/trunk/; revision=6910
* Remove the never-once-used BonoboObject stuff and make MessageList be aDan Winship2000-12-121-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | | * message-list.c: Remove the never-once-used BonoboObject stuff and make MessageList be a GtkWidget instead. Also, keep track of the ETable directly rather than repeatedly calling e_table_scrolled_get_table. * folder-browser.c (folder_browser_destroy): Use gtk methods rather than bonobo methods to destroy the message list. (on_right_click, on_double_click): These are being attached to the ETable directly now, so fix the first argument (which isn't being used anyway, but...) (folder_browser_gui_init): simplify now that MessageList itself is a widget. Also use message_list->table rather than e_table_scrolled_get_table. * mail-local.c (mail_local_reconfigure_folder): Add "mail_" to the beginning of this function name to match its prototype and the other vague namespace conventions in the mailer. * mail-callbacks.c (select_all, invert_selection): Use ml->table. (configure_folder): s/local_reconfigure_folder/mail_&/ svn path=/trunk/; revision=6908
* the e-table double-click signal now has extra paramsJP Rosevear2000-12-091-1/+1
| | | | | | | | | 2000-12-08 JP Rosevear <jpr@helixcode.com> * folder-browser.c (on_double_click): the e-table double-click signal now has extra params svn path=/trunk/; revision=6880
* Connect to signals on the ETable instead of the ETableScrolled.Christopher James Lahey2000-12-091-5/+5
| | | | | | | | | | | | 2000-12-08 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c: Connect to signals on the ETable instead of the ETableScrolled. * subscribe-dialog.c: Used the e_table_scrolled_get_table function instead of accessing the variable directly. svn path=/trunk/; revision=6873
* Add some g_return_if_fail()s to protect from crashes until the code toDan Winship2000-12-081-0/+2
| | | | | | | | | | | | * mail-callbacks.c: (various) * folder-browser.c (filter_mlist): * mail-autofilter.c (filter_gui_add_from_message): * mail-vfolder.c (vfolder_gui_add_from_message): Add some g_return_if_fail()s to protect from crashes until the code to enable/disable commands based on how many messages are selected is done. svn path=/trunk/; revision=6840
* Remove bits of filter-on-demand and toolbar bug workaround cruft thatDan Winship2000-12-071-21/+0
| | | | | | | | | | * folder-browser.c: Remove bits of filter-on-demand and toolbar bug workaround cruft that don't do anything useful any more. * mail-ops.c (cleanup_load_folder): unref the ref we added in setup_load_folder. svn path=/trunk/; revision=6812
* Make inline forwarding not be the default anymore.Ettore Perazzoli2000-12-041-2/+2
| | | | svn path=/trunk/; revision=6771
* Added the SaveAs bonobo menu verb thingy.Jeffrey Stedfast2000-11-291-0/+1
| | | | | | | | | | | | | | | | | 2000-11-28 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser-factory.c: Added the SaveAs bonobo menu verb thingy. * mail-callbacks.c (save_msg): New callback for saving messages. (save_msg_ok): * folder-browser.c (on_right_click): Add a Save Ass menu item. * mail-ops.c (cleanup_save_messages): Save all emails to the path given. svn path=/trunk/; revision=6699
* New function to return if user wants to view message source.Jeffrey Stedfast2000-11-221-3/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-21 Jeffrey Stedfast <fejj@helixcode.com> * mail-config.c (mail_config_view_source): New function to return if user wants to view message source. (mail_config_set_view_source): New function to set whether the view wants to view source. * mail-ops.c (mail_do_view_message_sources): Removed. We're not gonna view-source this way anymore. * folder-browser-factory.c: Removed the ViewSource bonobo verb from the Message menu. (control_activate): Added ViewSource. * folder-browser.c (on_right_click): Removed Message menu item to view message source. (folder_browser_toggle_view_source): New callback to set whether or not the MailDisplay shows the raw message or the pretty-ified message. * mail-callbacks.c: Removed view_source. * mail-display.c (redisplay): If toggle_raw is set then display the raw message else display the pretty formatted message. (mail_display_redisplay): New function to force the redisplay of a message. * mail-format.c (mail_format_raw_message): New function to write the raw message data. svn path=/trunk/; revision=6639
* Added a new Forward as Attachment bonobo menu item verb.Jeffrey Stedfast2000-11-161-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-15 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser-factory.c: Added a new Forward as Attachment bonobo menu item verb. * mail-view.c (view_forward_msg): Updated to reflect changes to mail_do_forward_message(). It now forwards the message without attaching it - is this what we want? * mail-ops.c (mail_do_view_message_sources): New async function to display message source dialog windows. (setup_forward_messages): If we were asked not to forward the message(s) as attachment(s) and the user chose more than a single message, then default to making each message an attachment. (cleanup_forward_messages): If we aren't forwarding the message as an attachment, then quote the text and set the composer's body with it. * mail-callbacks.c (view_source): New callback to view the message source of all messages that are currently selected. (forward_attach): New callback to forward a message as an attachment (forward_msg is now for forwarding a message without it being an attachment). (forward_message): Convenience function for forwarding messages. svn path=/trunk/; revision=6585
* A very, long, very tedious IDL API rename and re-scoping;Michael Meeks2000-11-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this script + some grunt approximates the work: s/Evolution_MessageList/GNOME_Evolution_MessageList/g; s/GNOME_Evolution_MessageList_select_message/GNOME_Evolution_MessageList_selectMessage/g; s/GNOME_Evolution_MessageList_open_message/GNOME_Evolution_MessageList_openMessage/g; s/Evolution_Folder([ \t])/GNOME_Evolution_Folder$1/g; s/Evolution_FolderTypeList/GNOME_Evolution_FolderTypeList/g; s/Evolution_FolderBrowser/GNOME_Evolution_FolderBrowser/g; s/GNOME_Evolution_FolderBrowser_get_message_list/GNOME_Evolution_FolderBrowser_getMessageList/g; s/Evolution_LocalStorage/GNOME_Evolution_LocalStorage/g; s/GNOME_Evolution_LocalStorage_update_folder/GNOME_Evolution_LocalStorage_updateFolder/g; s/Evolution_ShellView/GNOME_Evolution_ShellView/g; s/GNOME_Evolution_ShellView_set_message/GNOME_Evolution_ShellView_setMessage/g; s/GNOME_Evolution_ShellView_unset_message/GNOME_Evolution_ShellView_unsetMessage/g; s/GNOME_Evolution_ShellView_change_current_view/GNOME_Evolution_ShellView_changeCurrentView/g; s/Evolution_StorageSetViewListener/GNOME_Evolution_StorageSetViewListener/g; s/GNOME_Evolution_StorageSetViewListener_folder_selected/GNOME_Evolution_StorageSetViewListener_notifyFolderSelected/g; s/GNOME_Evolution_StorageSetViewListener_storage_selected/GNOME_Evolution_StorageSetViewListener_notifyStorageSelected/g; s/Evolution_StorageSetView/GNOME_Evolution_StorageSetView/g; s/GNOME_Evolution_StorageSetView_add_listener/GNOME_Evolution_StorageSetView_addListener/g; s/GNOME_Evolution_StorageSetView_remove_listener/GNOME_Evolution_StorageSetView_removeListener/g; s/Evolution_Shell/GNOME_Evolution_Shell/g; s/GNOME_Evolution_Shell_get_component_for_type/GNOME_Evolution_Shell_getComponentByType/g; s/GNOME_Evolution_Shell_user_select_folder/GNOME_Evolution_Shell_selectUserFolder/g; s/GNOME_Evolution_Shell_get_local_storage/GNOME_Evolution_Shell_getLocalStorage/g; s/GNOME_Evolution_Shell_create_storage_set_view/GNOME_Evolution_Shell_createStorageSetView/g; s/Evolution_FolderSelectionListener/GNOME_Evolution_FolderSelectionListener/g; s/GNOME_Evolution_FolderSelectionListener_selected/GNOME_Evolution_FolderSelectionListener_notifySelected/g; s/GNOME_Evolution_FolderSelectionListener_cancel/GNOME_Evolution_FolderSelectionListener_notifyCanceled/g; s/Evolution_Storage/GNOME_Evolution_Storage/g; s/GNOME_Evolution_Storage_add_listener/GNOME_Evolution_Storage_addListener/g; s/GNOME_Evolution_Storage_remove_listener/GNOME_Evolution_Storage_removeListener/g; s/GNOME_Evolution_StorageListener_destroyed/GNOME_Evolution_StorageListener_notifyDestroyed/g; s/GNOME_Evolution_StorageListener_new_folder/GNOME_Evolution_StorageListener_notifyFolderCreated/g; s/GNOME_Evolution_StorageListener_update_folder/GNOME_Evolution_StorageListener_notifyFolderUpdated/g; s/GNOME_Evolution_StorageListener_removed_folder/GNOME_Evolution_StorageListener_notifyFolderRemoved/g; s/GNOME_Evolution_StorageRegistry_register_storage/GNOME_Evolution_StorageRegistry_addStorage/g; s/GNOME_Evolution_StorageRegistry_unregister_storage/GNOME_Evolution_StorageRegistry_removeStorageByName/g; s/Evolution_ShellComponent/GNOME_Evolution_ShellComponent/g; s/GNOME_Evolution_ShellComponent_set_owner/GNOME_Evolution_ShellComponent_setOwner/g; s/GNOME_Evolution_ShellComponent_unset_owner/GNOME_Evolution_ShellComponent_unsetOwner/g; s/GNOME_Evolution_ShellComponent_create_view/GNOME_Evolution_ShellComponent_createView/g; s/GNOME_Evolution_ShellComponent_async_create_folder/GNOME_Evolution_ShellComponent_addFolderAsync/g; s/GNOME_Evolution_ShellComponent_async_remove_folder/GNOME_Evolution_ShellComponent_removeFolderAsync/g; s/GNOME_Evolution_ShellComponent_populate_folder_context_menu/GNOME_Evolution_ShellComponent_populateFolderContextMenu/g; s/GNOME_Evolution_ShellComponentListener_report_result/GNOME_Evolution_ShellComponentListener_notifyResult/g; s/Evolution_Session/GNOME_Evolution_Session/g; s/GNOME_Evolution_Session_save_configuration/GNOME_Evolution_Session_saveConfiguration/g; s/GNOME_Evolution_Session_load_configuration/GNOME_Evolution_Session_loadConfiguration/g; s/Evolution_Calendar_Cal/GNOME_Evolution_Calendar_Cal/g; s/GNOME_Evolution_Calendar_Cal_get_n_objects/GNOME_Evolution_Calendar_Cal_countObjects/g; s/GNOME_Evolution_Calendar_Cal_get_object/GNOME_Evolution_Calendar_Cal_getObject/g; s/GNOME_Evolution_Calendar_Cal_get_uids/GNOME_Evolution_Calendar_Cal_getUIds/g; s/GNOME_Evolution_Calendar_Cal_get_changed_uids/GNOME_Evolution_Calendar_Cal_getChangedUIds/g; s/GNOME_Evolution_Calendar_Cal_get_objects_in_range/GNOME_Evolution_Calendar_Cal_getObjectsInRange/g; s/GNOME_Evolution_Calendar_Cal_get_alarms_in_range/GNOME_Evolution_Calendar_Cal_getAlarmsInRange/g; s/GNOME_Evolution_Calendar_Cal_get_alarms_for_object/GNOME_Evolution_Calendar_Cal_getAlarmsForObject/g; s/GNOME_Evolution_Calendar_Cal_update_object/GNOME_Evolution_Calendar_Cal_updateObject/g; s/GNOME_Evolution_Calendar_Cal_remove_object/GNOME_Evolution_Calendar_Cal_removeObject/g; s/Evolution_Calendar_Listener/GNOME_Evolution_Calendar_Listener/g; s/GNOME_Evolution_Calendar_Listener_cal_loaded/GNOME_Evolution_Calendar_Listener_notifyCalLoaded/g; s/GNOME_Evolution_Calendar_Listener_obj_updated/GNOME_Evolution_Calendar_Listener_notifyObjUpdated/g; s/GNOME_Evolution_Calendar_Listener_obj_removed/GNOME_Evolution_Calendar_Listener_notifyObjRemoved/g; s/Evolution_Calendar_CalFactory/GNOME_Evolution_Calendar_CalFactory/g; s/GNOME_Evolution_Calendar_CalFactory_load/GNOME_Evolution_Calendar_CalFactory_load/g; s/GNOME_Evolution_Calendar_CalFactory_create/GNOME_Evolution_Calendar_CalFactory_create/g; s/Evolution_Composer/GNOME_Evolution_Composer/g; s/GNOME_Evolution_Composer_set_headers/GNOME_Evolution_Composer_setHeaders/g; s/GNOME_Evolution_Composer_set_body_text/GNOME_Evolution_Composer_setBodyText/g; s/GNOME_Evolution_Composer_attach_MIME/GNOME_Evolution_Composer_attachMIME/g; s/GNOME_Evolution_Composer_attach_data/GNOME_Evolution_Composer_attachData/g; s/GNOME_Evolution_Composer_show/GNOME_Evolution_Composer_show/g; s/Evolution_Addressbook_SelectNames/GNOME_Evolution_Addressbook_SelectNames/g; s/GNOME_Evolution_Addressbook_SelectNames_add_section/GNOME_Evolution_Addressbook_SelectNames_addSection/g; s/GNOME_Evolution_Addressbook_SelectNames_get_entry_for_section/GNOME_Evolution_Addressbook_SelectNames_getEntryBySection/g; s/GNOME_Evolution_Addressbook_SelectNames_activate_dialog/GNOME_Evolution_Addressbook_SelectNames_activateDialog/g; s/Evolution_CardCursor/GNOME_Evolution_Addressbook_CardCursor/g; s/GNOME_Evolution_Addressbook_CardCursor_get_length/GNOME_Evolution_Addressbook_CardCursor_getLength/g; s/GNOME_Evolution_Addressbook_CardCursor_get_nth/GNOME_Evolution_Addressbook_CardCursor_getNth/g; s/Evolution_BookViewListener/GNOME_Evolution_Addressbook_BookViewListener/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_added/GNOME_Evolution_Addressbook_BookViewListener_notifyCardAdded/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_removed/GNOME_Evolution_Addressbook_BookViewListener_notifyCardRemoved/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_changed/GNOME_Evolution_Addressbook_BookViewListener_notifyCardChanged/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_sequence_complete/GNOME_Evolution_Addressbook_BookViewListener_notifySequenceComplete/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_status_message/GNOME_Evolution_Addressbook_BookViewListener_notifyStatusMessage/g; s/Evolution_BookView/GNOME_Evolution_Addressbook_BookView/g; s/Evolution_Book/GNOME_Evolution_Addressbook_Book/g; s/GNOME_Evolution_Addressbook_Book_get_vcard/GNOME_Evolution_Addressbook_Book_getVCard/g; s/GNOME_Evolution_Addressbook_Book_can_write/GNOME_Evolution_Addressbook_Book_isWriteable/g; s/GNOME_Evolution_Addressbook_Book_can_write_card/GNOME_Evolution_Addressbook_Book_isCardWriteable/g; s/GNOME_Evolution_Addressbook_Book_create_card/GNOME_Evolution_Addressbook_Book_addCard/g; s/GNOME_Evolution_Addressbook_Book_remove_card/GNOME_Evolution_Addressbook_Book_removeCard/g; s/GNOME_Evolution_Addressbook_Book_modify_card/GNOME_Evolution_Addressbook_Book_modifyCard/g; s/GNOME_Evolution_Addressbook_Book_get_cursor/GNOME_Evolution_Addressbook_Book_getCursor/g; s/GNOME_Evolution_Addressbook_Book_get_book_view/GNOME_Evolution_Addressbook_Book_getBookView/g; s/GNOME_Evolution_Addressbook_Book_get_changes/GNOME_Evolution_Addressbook_Book_getChanges/g; s/GNOME_Evolution_Addressbook_Book_check_connection/GNOME_Evolution_Addressbook_Book_checkConnection/g; s/GNOME_Evolution_Addressbook_Book_get_static_capabilities/GNOME_Evolution_Addressbook_Book_getStaticCapabilities/g; s/GNOME_Evolution_Addressbook_Book_get_name/GNOME_Evolution_Addressbook_Book_getName/g; s/Evolution_BookListener/GNOME_Evolution_Addressbook_BookListener/g; s/GNOME_Evolution_Addressbook_BookListener_respond_create_card/GNOME_Evolution_Addressbook_BookListener_notifyCardCreated/g; s/GNOME_Evolution_Addressbook_BookListener_respond_remove_card/GNOME_Evolution_Addressbook_BookListener_notifyCardRemoved/g; s/GNOME_Evolution_Addressbook_BookListener_respond_modify_card/GNOME_Evolution_Addressbook_BookListener_notifyCardModified/g; s/GNOME_Evolution_Addressbook_BookListener_report_open_book_progress/GNOME_Evolution_Addressbook_BookListener_notifyOpenBookProgress/g; s/GNOME_Evolution_Addressbook_BookListener_respond_open_book/GNOME_Evolution_Addressbook_BookListener_notifyBookOpened/g; s/GNOME_Evolution_Addressbook_BookListener_respond_get_cursor/GNOME_Evolution_Addressbook_BookListener_notifyCursorRequested/g; s/GNOME_Evolution_Addressbook_BookListener_respond_get_view/GNOME_Evolution_Addressbook_BookListener_notifyViewRequested/g; s/GNOME_Evolution_Addressbook_BookListener_respond_get_changes/GNOME_Evolution_Addressbook_BookListener_notifyChangesRequested/g; s/GNOME_Evolution_Addressbook_BookListener_report_connection_status/GNOME_Evolution_Addressbook_BookListener_notifyConnectionStatus/g; s/Evolution_BookFactory/GNOME_Evolution_Addressbook_BookFactory/g; s/GNOME_Evolution_Addressbook_BookFactory_open_book/GNOME_Evolution_Addressbook_BookFactory_openBook/g; s/Evolution_SummaryComponent/GNOME_Evolution_Summary_Component/g; s/GNOME_Evolution_Summary_SummaryComponent_set_owner/GNOME_Evolution_Summary_Component_setOwner/g; s/GNOME_Evolution_Summary_SummaryComponent_unset_owner/GNOME_Evolution_Summary_Component_unsetOwner/g; s/GNOME_Evolution_Summary_SummaryComponent_create_view/GNOME_Evolution_Summary_Component_createView/g; s/GNOME_Evolution_Summary_SummaryComponent_destroy_view/GNOME_Evolution_Summary_Component_destroyView/g; s/Evolution_Summary([ \t])/GNOME_Evolution_Summary_ViewFrame$1/g; s/Evolution_Summary_set_title/GNOME_Evolution_Summary_ViewFrame_setTitle/g; s/Evolution_Summary_set_icon/GNOME_Evolution_Summary_ViewFrame_setIcon/g; s/Evolution_Summary_update_component/GNOME_Evolution_Summary_ViewFrame_updateComponent/g; s/GNOME_GNOME/GNOME/g; s/GNOME_GNOME/GNOME/g; s/GNOME_GNOME/GNOME/g; svn path=/trunk/; revision=6535
* Don't handle custom searching anymore... we don't want this.Jeffrey Stedfast2000-11-081-2/+1
| | | | | | | | | | | | | 2000-11-07 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (search_save): Don't handle custom searching anymore... we don't want this. (search_full): Same. (folder_browser_search_menu_activated): Set the search entry widget sensitive. (folder_browser_search_query_changed): Same. svn path=/trunk/; revision=6496
* Don't handle custom searching anymore... we don't want this.Jeffrey Stedfast2000-11-081-27/+6
| | | | | | | | | | | | | | | | 2000-11-07 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (search_save): Don't handle custom searching anymore... we don't want this. (search_full): Same. (folder_browser_search_menu_activated): Set the search entry widget sensitive. (folder_browser_search_query_changed): Same. (search_full_clicked): Set the text of the disabled search entry to the search query string (as search_save depends on this string). Would it be better to save this somewhere else? svn path=/trunk/; revision=6494
* when "Show All", clear the entry widgetJeffrey Stedfast2000-11-081-0/+1
| | | | svn path=/trunk/; revision=6491
* Updated to use the ESearchBar object rather than the previously usedJeffrey Stedfast2000-11-081-270/+236
| | | | | | | | | | | | | | | | | | | | | | | 2000-11-07 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (search_full_clicked): Updated to use the ESearchBar object rather than the previously used search widgets. (search_full): Same. (search_save): Same. Also use enums to make it a little easier to read now that we have to have enums anyway. (folder_browser_search_menu_activated): New ESearchBar menu callback. (folder_browser_search_query_changed): New ESearchBar query callback. Replaces search_set() (folder_browser_clear_search): Updated to use the ESearchBar object rather than the previously used search widgets. (folder_browser_gui_init): Don't hand construct a search widget, use the new ESearchBar convenience widget. * mail-ops.c (cleanup_load_folder): Updated to reflect changes to FolderBrowser. svn path=/trunk/; revision=6490
* Move filter stuff into a submenu of the popup menu.Jeffrey Stedfast2000-11-071-36/+40
| | | | | | | | | 2000-11-06 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (on_right_click): Move filter stuff into a submenu of the popup menu. svn path=/trunk/; revision=6464
* Updated to have the same menu items as the new right-click menu -Jeffrey Stedfast2000-11-071-13/+43
| | | | | | | | | | | | | | | | 2000-11-06 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser-factory.c: Updated to have the same menu items as the new right-click menu - eventually these 2 menus should be the same. * folder-browser.c (on_right_click): Now correctly handles the case of multiple selection. * mail-callbacks.c (enumerate_msg): Make public so it can be used in other source files (it's a useful function!) svn path=/trunk/; revision=6419
* Added an "Undelete" option to the right-click menu and also set a mask soJeffrey Stedfast2000-11-061-34/+54
| | | | | | | | | | | | | | 2000-11-05 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (on_right_click): Added an "Undelete" option to the right-click menu and also set a mask so it was only selectable if the message is marked as deleted. Also set a mask for "Mark as Read" and "Mark as Unread". * mail-callbacks.c (undelete_msg): New callback to undelete messages. svn path=/trunk/; revision=6407
* Added new header files.Jeffrey Stedfast2000-11-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-03 Jeffrey Stedfast <fejj@helixcode.com> * Makefile.am: Added new header files. * component-factory.c (owner_set_cb): s/session_init/mail_session_init * session.c: Renamed public functions to mail_session_*. FIXME: Rename session.c to mail-session.c * folder-browser-factory.c: #include "mail-callbacks.h", #include "mail-session.h" and replace forget_passwords with mail_session_forget_passwords * mail.h: Move session prototypes to mail-session.h, Move mail-crypto prototypes to mail-crypto.h, Move mail-callback prototypes to mail-callbacks.h * mail-session.h: New header file containing public prototypes for session.c * mail-format.c: #include "mail-crypto.h" * mail-view.c: * folder-browser.c: #include "mail-callbacks.h" * mail-crypto.h: New header file containing public prototypes for mail-crypto.c * mail-callbacks.h: New header file containing public prototypes for mail-callbacks.c * message-list.c (message_list_get_layout): Set useful defaults. (message_list_setup_etable): Don't set the Outbox defaults on a folder just because it doesn't have a corresponding saved file. svn path=/trunk/; revision=6372
* Added mail-display.h.Not Zed2000-11-031-3/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-03 Not Zed <NotZed@HelixCode.com> * mail-view.c: Added mail-display.h. * mail-autofilter.c: Removed unecessary headers. Who ran indent over this code? Sigh. * mail-ops.c (display_message_input_s): Added messagedisplay. (mail_do_display_message): Added messagedisplay arg. (mail_do_display_message): Dont bother doing another thread when we know we dont have a uid. (): Added folder-browser.h to headers. Sigh. * folder-browser-factory.c (control_activate): Setup the viewthreaded callback to the folder_browser function. * folder-browser.c (my_folder_browser_init): Connect to right_click of etable of the messagelist here. (on_right_click): Changed for argument changes. (folder_browser_toggle_threads): Changed to take a fb, and to set threaded mode on the messagelist. (my_folder_browser_init): Connect also to the double_click signal. (my_folder_browser_init): Connect to the message_selected signal of the message_list. (on_message_selected): Signal handler for message selected. (my_folder_browser_init): Fix for change to message_list_new(). * message-list.h: Dont include folder-browser.h. (message_list_toggle_threads): Moved into folder-browser.h. (struct _MessageList): Removed folderbrowser. * mail.h: Dont include folder-browser.h here either, but mail-types.h instead. Moved prototypes moved into folder-browser.c into folder-browser.h. (vfolder_*, filter_*). * mail-display.h: Dont include folder-browser.h here, but mail-types.h and specific camel headers. * message-thread.c (sort_node): Invert the sort order logic so the list is sorted in mailbox order, not reverse mailbox order. * message-list.c (free_tree_ids): Fix a merge foo. (remove_node_diff): Removed unused row argument. Fixed callers/prototype. (clear_tree): pre_change on the removal of the root node. (build_flat): Only perform pre_change if we are rebuilding the whole lot. For incremental change let etable do its thing. (build_tree): Likewise for building the tree view. If making incremental updates, do them as we build it. (vfolder_subject): (vfolder_sender): (vfolder_recipient): (filter_subject): (filter_sender): (filter_recipient): (filter_mlist): (on_right_click): Moved to folder-browser.c, where they belong. (message_list_init): Dont connect to right_click anymore. (message_list_toggle_threads): Moved to folder-browser.c, renamed. (on_double_click): Moved to folder-browser.c (on_click): Set the flags directly, rather than in anothre thread, which is just not necessary. (message_list_class_init): Added a new signal 'message_selected', to indicate when a message was selected. (on_cursor_change_idle): Emit a signal, rather than directly triggering the display update. (select_row): Removed, no longer used. (idle_select_row): And this too. (select_msg): Removed as well. (message_list_select): Emit a signal, rather thandisplaying/clearing the mail-display directly. (mark_msg_seen): Moved to folder-browser.c (message_list_new): Removed folderbrowser argument. svn path=/trunk/; revision=6365
* ** Merged in camel-incremental-branch.Not Zed2000-11-021-7/+7
| | | | | | | | | | | | | 2000-11-02 Not Zed <NotZed@HelixCode.com> ** Merged in camel-incremental-branch. * mail-format.c (mail_get_message_body): Jeff! Sigh. We should definetly not be strduping the content, it has already been copied and duplicated. Look at get_data_wrapper_text. svn path=/trunk/; revision=6337
* lots of i18n fixesDan Winship2000-10-241-8/+12
| | | | svn path=/trunk/; revision=6143
* Made the top of the folder browser a little prettier.Christopher James Lahey2000-10-241-2/+9
| | | | | | | | | | | 2000-10-23 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c: Made the top of the folder browser a little prettier. * mail-display.c, mail-vfolder.c: Made more dialogs resizable. svn path=/trunk/; revision=6126
* No, we REALLY dont want to perform an immediate search as the keys areNot Zed2000-10-181-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-10-18 Not Zed <NotZed@HelixCode.com> * folder-browser.c (folder_browser_gui_init): No, we REALLY dont want to perform an immediate search as the keys are pressed. * mail-display.c (on_object_requested): Kill a minor warning with a cast. * mail-config.c: Include mising ctype.h to kill a warning. * message-thread.c (main): Fixed the test case for api changes. * message-list.c (message_list_drag_data_get): Set some flags to get_folder(). I dont even think this will work because mail_tool_get_folder doesn't handle file url's. * mail-vfolder.c (vfolder_uri_to_folder): Pass appropriate flags. * mail-ops.c (do_setup_folder): Pass appropriate flags. Hmm, whats the difference between setup and create. *shrug* (do_create_folder): Pass appropriate flags to get_folder. Needs a way to specify the index flag. * mail-tools.c (mail_tool_get_folder_from_urlname): Changed create to flags argument. (mail_tool_get_local_inbox_url): Add an index argument. (mail_tool_get_local_inbox): honour index flag. (mail_tool_get_inbox): Changed for api change. (mail_tool_uri_to_folder): Fixed calls to store_get_folder(); * mail-local.c (load_metainfo): Added an indexed field to the metainfo. (save_metainfo): And save it too. (do_reconfigure_folder): Honour index flag when creating the new folder. Do not open the old folder with an index at all. (mail_local_map_uri): Add an index argument - tells if the mbox is indexed. (mail_tool_local_uri_to_folder): Create & pass flags properly. (#include gnome.h): Dont include all of gnome, just what we use, and explicity include xml-memory, so we get xmlFree(). svn path=/trunk/; revision=5979
* Un #if 0'd out (search_full): Same. (folder_browser_gui_init): ConnectJeffrey Stedfast2000-10-171-6/+4
| | | | | | | | | | | | | | 2000-10-16 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (search_full_clicked): Un #if 0'd out (search_full): Same. (folder_browser_gui_init): Connect search_full and search_activate. (search_set): Uncomment search_full() * Makefile.am: Re-add `mail-search-dialogue.h' and `mail-search-dialogue.c'. svn path=/trunk/; revision=5957
* Work around missing files in Zucchi's commit.Ettore Perazzoli2000-10-091-3/+5
| | | | svn path=/trunk/; revision=5801
* New widget, full search dialogue for mail.Not Zed2000-10-091-15/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-10-06 Not Zed <NotZed@HelixCode.com> * mail-search-dialogue.c: New widget, full search dialogue for mail. * folder-browser.c (search_set): If we click on custom search, run the full search dialogue. (folder_browser_gui_init): Add a button to perform a full search. (search_full): Bring up the mail search dialogue asynchronously. (search_full_clicked): Handle search options. (folder_browser_destroy): Free the saved rule if there is one there. (search_options[]): Added a custom option option - brings up the full search dialogue. (search_set): Disable the search entry if we are doing a full search. * mail-vfolder.c (vfolder_create_storage): Yay, finally depeterised this stuff. (vfolder_uri_to_folder): Removed an irrelevant comment. * mail-callbacks.c (filter_edit): And here. * mail-ops.c (do_fetch_mail): And here too. * mail-autofilter.c (filter_gui_add_from_message): Fixed call to context_load. (filter_gui_add_for_mailing_list): And here too. * folder-browser-factory.c (create_ondemand_hooks): Remove that ondemand callback snot. 2000-10-05 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_init_etable): Build the etable once we know what folder we are going to use. (save_header_state): Save the header spec to a cache file. (message_list_destroy): Save the header spec. (message_list_setup_etable): Setup the etable spec for this folder, from a saved version if one exists, or to suit the folder type (sent/received). (message_list_set_folder): Setup the etable here once we have a folder. svn path=/trunk/; revision=5798
* Update for CamelFolderInfo changes.Dan Winship2000-10-031-1/+2
| | | | | | | | | | | | | * mail-ops.c (mail_do_scan_subfolders, etc): Update for CamelFolderInfo changes. * message-list.c (message_list_destroy): Don't save_tree_state if there's no folder associated with the MessageList. * folder-browser.c (folder_browser_set_uri): Only call mail_do_load_folder if the URI is not "". svn path=/trunk/; revision=5664
* Added check for gnome-app-lib. Removed directories that have been moved toChristopher James Lahey2000-09-181-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * configure.in: Added check for gnome-app-lib. Removed directories that have been moved to gal. From addressbook/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * backend/ebook/Makefile.am, contact-editor/Makefile.am, ename/Makefile.am, gui/component/Makefile.am, gui/widgets/Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * backend/ebook/e-card.c, backend/pas/pas-backend-file.c, contact-editor/e-contact-editor-address.c, contact-editor/e-contact-editor-categories.c, contact-editor/e-contact-editor-categories.h, contact-editor/e-contact-editor-fullname.c, contact-editor/e-contact-editor.c, contact-editor/e-contact-save-as.c, ename/e-address-western.c, ename/test-ename-western-gtk.c, gui/component/addressbook-factory.c, gui/component/addressbook.c, gui/component/e-cardlist-model.h, gui/component/e-ldap-storage.c, gui/component/select-names/e-select-names-bonobo.c, gui/component/select-names/e-select-names-manager.c, gui/component/select-names/e-select-names-model.c, gui/component/select-names/e-select-names-table-model.c, gui/component/select-names/e-select-names-table-model.h, gui/component/select-names/e-select-names-text-model.h, gui/component/select-names/e-select-names.c, gui/component/select-names/e-select-names.h, gui/search/e-addressbook-search-dialog.c, gui/widgets/e-addressbook-model.h, gui/widgets/e-addressbook-view.c, gui/widgets/e-minicard-label.c, gui/widgets/e-minicard-view-widget.c, gui/widgets/e-minicard-view-widget.h, gui/widgets/e-minicard-view.c, gui/widgets/e-minicard-view.h, gui/widgets/e-minicard-widget.h, gui/widgets/e-minicard.c, gui/widgets/test-minicard-label.c, gui/widgets/test-reflow.c, printing/e-contact-print.c: Fixed the #include lines to deal properly with gal. From calendar/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * gui/Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * gui/calendar-model.h, gui/e-calendar-table.c, gui/e-day-view.c, gui/e-week-view-event-item.c, gui/e-week-view.c, gui/event-editor.c, gui/gncal-todo.c, gui/gnome-cal.c, gui/main.c, gui/print.c, gui/dialogs/task-editor.c: Fixed the #include lines to deal properly with gal. * gui/check-filled.xpm: New file since we can't include it from e-table anymore. From camel/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * camel-folder-search.c, camel-folder-search.h, camel-remote-store.c, providers/imap/camel-imap-folder.c, providers/imap/camel-imap-store.c: Fixed the #include lines to deal properly with gal. From composer/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * e-msg-composer-address-dialog.c, e-msg-composer-address-entry.c, e-msg-composer-attachment.c, e-msg-composer-hdrs.c, e-msg-composer.c: Fixed the #include lines to deal properly with gal. From e-util/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Removed all the files moved to gal. * e-dialog-widgets.c: Fixed the #include lines to deal properly with gal. * e-gui-utils.c, e-gui-utils.h: Removed all of the functionality that was moved to gal. * e-canvas-utils.c, e-canvas-utils.h, e-canvas-vbox.c, e-canvas-vbox.h, e-canvas.c, e-canvas.h, e-cursors.c, e-cursors.h, e-font.c, e-font.h, e-popup-menu.c, e-popup-menu.h, e-printable.c, e-printable.h, e-unicode.c, e-unicode.h, e-util.c, e-util.h, e-xml-utils.c, e-xml-utils.h: Moved to gal. From filter/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * filter-editor.c, filter-filter.c, filter-folder.c, filter-input.c, filter-message-search.c, filter-option.c, filter-rule.c, score-editor.c, vfolder-editor.c, vfolder-rule.c: Fixed the #include lines to deal properly with gal. From mail/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * component-factory.c, folder-browser-factory.c, folder-browser.c, mail-callbacks.c, mail-config-gui.c, mail-display.c, mail-display.h, main.c, message-list.c, message-list.h: Fixed the #include lines to deal properly with gal. From po/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * POTFILES.in: Removed files that have been moved to gal. From shell/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * e-component-registry.c, e-corba-storage-registry.c, e-corba-storage.c, e-folder-type-registry.c, e-folder.c, e-local-folder.c, e-local-storage.c, e-shell-folder-creation-dialog.c, e-shell-folder-selection-dialog.c, e-shell-folder-title-bar.c, e-shell-view.c, e-shell.c, e-shortcuts-view.c, e-shortcuts.c, e-storage-set-view.c, e-storage-set-view.h, e-storage-set.c, e-storage.c, evolution-local-storage.c, evolution-session.c, evolution-shell-client.c, evolution-shell-component-client.c, evolution-shell-component.c, evolution-shell-view.c, evolution-storage-listener.c, evolution-storage.c, main.c: Fixed the #include lines to deal properly with gal. From widgets/meeting-time-sel/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * e-meeting-time-sel-list-item.c, e-meeting-time-sel.c, e-meeting-time-sel.h: Fixed the #include lines to deal properly with gal. If you've read this far, you deserve a prize. The first email in my mailbox with the subject "What a commit message!" (and your physical mailing address somewhere in the message) will receive a free Helix Code T-shirt mailed to anywhere within the continental United States. I cannot be held responsible for problems with email systems anywhere. This is supposed to be for fun, so please don't make a fuss if something goes wrong and your mail doesn't reach me. Find my email elsewhere in this message, and if it's been more than a few days, you're probably too late. From widgets/misc/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * e-calendar-item.c, e-calendar.c, e-calendar.h, e-title-bar.c: Fixed the #include lines to deal properly with gal. * e-scroll-frame.c, e-scroll-frame.h: Moved to gal. From widgets/shortcut-bar/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and $(EXTRA_GNOME_LIBS). Removed unneeded libraries. * e-icon-bar.c, e-icon-bar.h, e-shortcut-bar.c, e-shortcut-model.c, test-shortcut-bar.c: Fixed the #include lines to deal properly with gal. From widgets/ChangeLog: 2000-09-18 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Removed directories that have been moved to gal. * e-paned/.cvsignore, e-paned/Makefile.am, e-paned/e-hpaned.c, e-paned/e-hpaned.h, e-paned/e-paned.c, e-paned/e-paned.h, e-paned/e-vpaned.c, e-paned/e-vpaned.h: Moved to gal. * e-reflow/.cvsignore, e-reflow/Makefile.am, e-reflow/e-reflow-sorted.c, e-reflow/e-reflow-sorted.h, e-reflow/e-reflow.c, e-reflow/e-reflow.h: Moved to gal. * e-table/.cvsignore, e-table/ChangeLog, e-table/LICENSE, e-table/Makefile.am, e-table/ROADMAP.e-table, e-table/TODO, e-table/add-col.xpm, e-table/arrow-down.xpm, e-table/arrow-up.xpm, e-table/check-empty.xpm, e-table/check-filled.xpm, e-table/clip.png, e-table/e-cell-checkbox.c, e-table/e-cell-checkbox.h, e-table/e-cell-string.c, e-table/e-cell-text.c, e-table/e-cell-text.h, e-table/e-cell-toggle.c, e-table/e-cell-toggle.h, e-table/e-cell-tree.c, e-table/e-cell-tree.h, e-table/e-cell.c, e-table/e-cell.h, e-table/e-table-click-to-add.c, e-table/e-table-click-to-add.h, e-table/e-table-col-dnd.h, e-table/e-table-col.c, e-table/e-table-col.h, e-table/e-table-column-model.h, e-table/e-table-column.c, e-table/e-table-config.c, e-table/e-table-config.glade, e-table/e-table-config.glade.h, e-table/e-table-config.h, e-table/e-table-defines.h, e-table/e-table-example-1.c, e-table/e-table-example-2.c, e-table/e-table-field-chooser-dialog.c, e-table/e-table-field-chooser-dialog.h, e-table/e-table-field-chooser-item.c, e-table/e-table-field-chooser-item.h, e-table/e-table-field-chooser.c, e-table/e-table-field-chooser.glade, e-table/e-table-field-chooser.glade.h, e-table/e-table-field-chooser.h, e-table/e-table-group-container.c, e-table/e-table-group-container.h, e-table/e-table-group-leaf.c, e-table/e-table-group-leaf.h, e-table/e-table-group.c, e-table/e-table-group.glade, e-table/e-table-group.glade.h, e-table/e-table-group.h, e-table/e-table-header-item.c, e-table/e-table-header-item.h, e-table/e-table-header.c, e-table/e-table-header.h, e-table/e-table-item.c, e-table/e-table-item.h, e-table/e-table-model.c, e-table/e-table-model.h, e-table/e-table-one.c, e-table/e-table-one.h, e-table/e-table-scrolled.c, e-table/e-table-scrolled.h, e-table/e-table-selection-model.c, e-table/e-table-selection-model.h, e-table/e-table-simple.c, e-table/e-table-simple.h, e-table/e-table-size-test.c, e-table/e-table-sort-info.c, e-table/e-table-sort-info.h, e-table/e-table-sorted-variable.c, e-table/e-table-sorted-variable.h, e-table/e-table-sorted.c, e-table/e-table-sorted.h, e-table/e-table-sorter.c, e-table/e-table-sorter.h, e-table/e-table-subset-variable.c, e-table/e-table-subset-variable.h, e-table/e-table-subset.c, e-table/e-table-subset.h, e-table/e-table-text-model.c, e-table/e-table-text-model.h, e-table/e-table-tooltip.h, e-table/e-table-tree.h, e-table/e-table.c, e-table/e-table.h, e-table/e-tree-example-1.c, e-table/e-tree-example-2.c, e-table/e-tree-model.c, e-table/e-tree-model.h, e-table/e-tree-simple.c, e-table/e-tree-simple.h, e-table/image1.png, e-table/image2.png, e-table/image3.png, e-table/remove-col.xpm, e-table/sample.table, e-table/table-test.c, e-table/table-test.h, e-table/test-check.c, e-table/test-cols.c, e-table/test-table.c: Moved to gal. * e-text/.cvsignore, e-text/Makefile.am, e-text/e-entry-test.c, e-text/e-entry.c, e-text/e-entry.h, e-text/e-text-event-processor-emacs-like.c, e-text/e-text-event-processor-emacs-like.h, e-text/e-text-event-processor-types.h, e-text/e-text-event-processor.c, e-text/e-text-event-processor.h, e-text/e-text-model.c, e-text/e-text-model.h, e-text/e-text-test.c, e-text/e-text.c, e-text/e-text.h: Moved to gal. i.e., ... changed evolution to work with gal. svn path=/trunk/; revision=5490
* Fixed some warnings.Christopher James Lahey2000-09-091-1/+1
| | | | | | | | | | | 2000-09-08 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c, mail-config-gui.c, mail-ops.c: Fixed some warnings. * message-list.c: Added base ETableModel functions. svn path=/trunk/; revision=5268
* Bunch of unicode related changesLauris Kaplinski2000-09-081-1/+1
| | | | svn path=/trunk/; revision=5235
* Fix memory handling for the shell's CORBA object reference within theEttore Perazzoli2000-09-061-8/+28
| | | | | | folder browser. svn path=/trunk/; revision=5221
* Remove the "+ 90" here since it seems to break things for me, and it's notDan Winship2000-09-061-1/+1
| | | | | | | | * folder-browser.c (fb_resize_cb): Remove the "+ 90" here since it seems to break things for me, and it's not commented anyway and there's no excuse for adding 90 to a number with no explanation. svn path=/trunk/; revision=5205
* Cleanup of lots of exception handling ; bugfixesPeter Williams2000-09-061-3/+4
| | | | svn path=/trunk/; revision=5202
* Make the `Home' and `End' keys do the Right Thing. Remove circularEttore Perazzoli2000-09-031-23/+34
| | | | | | reference to the shell. Bind "Open in New Window" to `Ctrl-O'. svn path=/trunk/; revision=5181
* Added calendar/conduits/Makefile, calendar/conduits/calendar/Makefile andChristopher James Lahey2000-09-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 2000-09-02 Christopher James Lahey <clahey@helixcode.com> * configure.in: Added calendar/conduits/Makefile, calendar/conduits/calendar/Makefile and calendar/conduits/todo/Makefile to the list of makefiles to output. From calendar/ChangeLog: 2000-09-02 Christopher James Lahey <clahey@helixcode.com> * conduits/calendar/calendar-conduit.c, conduits/todo/todo-conduit.c, gui/e-week-view.c, gui/gnome-cal.c: Fixed some warnings. From mail/ChangeLog: 2000-09-01 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c: Removed a warning. svn path=/trunk/; revision=5179
* Fixing a spurious unref, or creating a circular reference? You decide.Peter Williams2000-08-301-0/+7
| | | | svn path=/trunk/; revision=5104
* More UTF-8 handlingLauris Kaplinski2000-08-251-3/+10
| | | | svn path=/trunk/; revision=5032
* Fix GDK_THREADS_entering and leaving, hopefully once and for all. Genericify ↵Peter Williams2000-08-251-1/+2
| | | | | | the recursive-store-loading. Load stores when they're added to the config page. svn path=/trunk/; revision=5005
* Added fb_resize_cb to folder-browser.cJeremy Wise2000-08-211-1/+11
| | | | svn path=/trunk/; revision=4897
* Filtering on demand! booyeah!Peter Williams2000-08-181-0/+19
| | | | svn path=/trunk/; revision=4864
* Whole buncha leak fixes thanks to PurifyMatthew Loper2000-08-171-0/+3
| | | | svn path=/trunk/; revision=4862
* Get the mail component to use the new Evolution::ShellView interface.Ettore Perazzoli2000-08-131-2/+2
| | | | | | | This implementation is so ugly and evil and needs to be replaced. Don't look at it. Go away. svn path=/trunk/; revision=4797
* Merge with camel-async.Peter Williams2000-08-111-122/+31
| | | | svn path=/trunk/; revision=4687
* Basic framework for saving the size of the vpaned in the main message viewJeremy Wise2000-08-091-1/+2
| | | | svn path=/trunk/; revision=4623
* Redone to show a dialogue first, and show progress of whats happening asNot Zed2000-08-081-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | 2000-08-07 Not Zed <NotZed@HelixCode.com> * mail-local.c (local_reconfigure_folder): Redone to show a dialogue first, and show progress of whats happening as its done. * Makefile.am (glade_DATA): Added local-config.glade, for mailbox reconfig dialogue. 2000-08-04 Not Zed <NotZed@HelixCode.com> * folder-browser.c (mail_uri_to_folder): Use local_uri_to_folder() for local uri's (file://). * mail-local.c (local_uri_to_folder): Handle looking up folder storage type before opening the store/folder. (local_reconfigure_folder): Function to reconfigure the format of a local mailbox into another storage format. * Makefile.am (evolution_mail_SOURCES): Added mail-local.c and missing mail-vfolder.h. svn path=/trunk/; revision=4591
* Fixed some warnings.Christopher James Lahey2000-08-011-1/+1
| | | | | | | | | | 2000-07-31 Christopher James Lahey <clahey@helixcode.com> * component-factory.c, folder-browser.c: Fixed some warnings. * message-list.c: Made the icon column non sortable. svn path=/trunk/; revision=4440
* Configurable vfolder sources, and a button to save a searchNot Zed2000-07-311-31/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | as a new vfolder. 2000-07-31 Not Zed <NotZed@HelixCode.com> * mail-vfolder.h: Header for vfolder functions. * folder-browser.c (mail_uri_to_folder): Use new scheme to open vfolders. (search_save): New button/function to save a search as a vfolder. * mail-vfolder.c (vfolder_edit): Made asynchronous. (vfolder_uri_to_folder): New function for loading vfolders and setting up their source folders. (vfolder_refresh): Change shell vfolder uri's to indirect references rather than the real vfolder uri. (vfolder_gui_add_rule): Add a rule with user confirmation. (vfolder_create_part): Get a new part by name, for creating rules in code. * message-thread.c (thread_messages): Check for uid lookup failure, which indicates an error in the folder or calling code. svn path=/trunk/; revision=4422
* Initial code to support IMAP folders that don't use "/" as a directoryJeffrey Stedfast2000-07-171-2/+9
| | | | | | | | | 2000-07-16 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c, component-factory.c: Initial code to support IMAP folders that don't use "/" as a directory separator. svn path=/trunk/; revision=4185
* Only unref the folder if it's been set.Dan Winship2000-07-141-3/+3
| | | | | | | | | | * message-list.c (message_list_destroy): Only unref the folder if it's been set. * folder-browser.c (folder_browser_destroy): Only sync the folder if it's been set. svn path=/trunk/; revision=4162
* Disable Search capability menu/entry if folder doesn't support it.Jeffrey Stedfast2000-07-121-1/+3
| | | | | | | | | | | | 2000-07-11 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (folder_browser_load_folder): Disable Search capability menu/entry if folder doesn't support it. * message-list.c (message_list_regenerate): Don't perform a search if the folder doesn't support it. svn path=/trunk/; revision=4097
* kill more debugging messagesDan Winship2000-07-111-4/+0
| | | | | | * kill more debugging messages svn path=/trunk/; revision=4050
* Update message_list_select_next to do either next or previous.Dan Winship2000-07-111-3/+12
| | | | | | | | | | | | | * message-list.c (message_list_select): Update message_list_select_next to do either next or previous. * folder-browser.c (etable_key): Make 'n' and 'p' do next and previous unread message. * mail-ops.c (select_first_unread): Update. (real_fetch_mail): clean up a bit. svn path=/trunk/; revision=4046
* Fix syncing of the mailbox on exit so that it's done on destruction ofEttore Perazzoli2000-07-111-1/+3
| | | | | | | | | the corresponding FolderBrowser instead of using the "owner_unset" signel (the latter was broken, because the FolderBrowser is destroyed before "owner_unset" is emitted, so we have no chance to sync at that point). svn path=/trunk/; revision=4038
* Fix up the pageup/pagedown increment a bit.Dan Winship2000-07-091-4/+7
| | | | | | | * folder-browser.c (etable_key): Fix up the pageup/pagedown increment a bit. svn path=/trunk/; revision=4001
* Lots of changes. Store uids as node data on the tree nodes and use thoseDan Winship2000-07-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* fix warnings.Dan Winship2000-07-071-3/+4
| | | | | | | * folder-browser-factory.c, folder-browser.c, mail-ops.c, message-list.c: fix warnings. svn path=/trunk/; revision=3931
* New function to select the first message on or after the given row thatDan Winship2000-07-071-0/+2
| | | | | | | | | | | | | | | | | * 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
* Fix double freeing of the camel exception; this prevents a crash when aEttore Perazzoli2000-07-031-1/+0
| | | | | | folder cannot be opened. svn path=/trunk/; revision=3858
* s/mbox/file/ to make this work againDan Winship2000-07-011-1/+1
| | | | svn path=/trunk/; revision=3834
* New function, a wrapper around e_table_selected_row_foreach, which callsDan Winship2000-07-011-31/+34
| | | | | | | | | | | | | | | | | | | | | * 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
* commenting out of some GDK_THREADS_*() junk that was causing a lockJeffrey Stedfast2000-06-271-1/+3
| | | | | | also fixed an assignment problem (var = void) in mail-config.c svn path=/trunk/; revision=3738
* folder-browser.c: Improved the code to separate the imap namespace from the ↵Jeffrey Stedfast2000-06-241-3/+4
| | | | | | folder path svn path=/trunk/; revision=3713
* Now should correctly get the selected folder from the given URL.Jeffrey Stedfast2000-06-231-2/+3
| | | | | | | | | 2000-06-22 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (folder_browser_load_folder): Now should correctly get the selected folder from the given URL. svn path=/trunk/; revision=3704
* add handling for loading "news:" folders.Chris Toshok2000-06-231-0/+9
| | | | | | | | | | | | | 2000-06-22 Chris Toshok <toshok@helixcode.com> * folder-browser.c (folder_browser_load_folder): add handling for loading "news:" folders. * component-factory.c (create_news_storage): add a root for news source. (owner_set_cb): call create_news_storage. svn path=/trunk/; revision=3703
* Updated to prepend url-> path if it exists for that imap store.Jeffrey Stedfast2000-06-231-10/+19
| | | | | | | | | | | | 2000-06-22 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (folder_browser_load_folder): Updated to prepend url-> path if it exists for that imap store. * component-factory.c (create_imap_storage): Modified to not prepend a hard-coded namespace. svn path=/trunk/; revision=3701
* oops, should have checked for a NULL sources in component-factory.cJeffrey Stedfast2000-06-211-2/+3
| | | | | | (create_imap_storage) svn path=/trunk/; revision=3657
* Only fetch the summary if the folder summary doesn't already exist. WhenJeffrey Stedfast2000-06-211-1/+2
| | | | | | | | | | | | | | | | | | | | | 2000-06-20 Jeffrey Stedfast <fejj@helixcode.com> * providers/imap/camel-imap-folder.c (imap_get_summary): Only fetch the summary if the folder summary doesn't already exist. When the summary *does* exist, start fetching from 1, not 0. (imap_free_summary): Don't do anything here. (imap_finalize): Free the summary here instead of in imap_free_summary(). * camel-url.c (check_equal): No need to check s1 if s2 is NULL (camel_url_equal): Don't check the passwd component of the url. and in mail/component-factory.c (create_imap_storage): removal of debug statements mail/folder-browser.c (folder_browser_load_folder): improved imap service parser svn path=/trunk/; revision=3649
* working on getting IMAP folder selection workingJeffrey Stedfast2000-06-211-8/+12
| | | | svn path=/trunk/; revision=3648
* basically got IMAP into the tree viewJeffrey Stedfast2000-06-201-3/+9
| | | | svn path=/trunk/; revision=3643
* started to add code to load an IMAP folder.Jeffrey Stedfast2000-06-191-1/+13
| | | | | | | | | | | | | | | | 2000-06-18 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser.c (folder_browser_load_folder): started to add code to load an IMAP folder. * component-factory.c: Started to add a create_imap_storage method so that we can eventually have our IMAP store displayed in the tree view. (create_vfolder_storage): Renamed from create_test_storage(). (owner_set_cb): Updated. svn path=/trunk/; revision=3627
* New function to revert back to non-searching mode.Dan Winship2000-06-161-0/+8
| | | | | | | | | * folder-browser.c (folder_browser_clear_search): New function to revert back to non-searching mode. * mail-ops.c (fetch_mail): Use folder_browser_clear_search. svn path=/trunk/; revision=3576
* Return the result of folder_browser_load_folder. (get_prop, set_prop,Dan Winship2000-06-131-75/+2
| | | | | | | | | | | | | | | | | | | | | * folder-browser.c (folder_browser_set_uri): Return the result of folder_browser_load_folder. (get_prop, set_prop, folder_browser_properties_init): Remove. No longer needed. * folder-browser-factory.c (folder_browser_factory_new_control): Add a "uri" argument, return NULL if setting it fails. (folder_browser_factory_new_control): Remove property bag stuff. (folder_browser_factory_init, folder_browser_factory): Remove this, since we're using the component factory now. * component-factory.c (create_view): Update for folder_browser_factory_new_control change and return NOTFOUND as appropriate. * main.c (main): Don't call folder_browser_factory_init. svn path=/trunk/; revision=3532
* Add a serial number to FolderBrowser.Dan Winship2000-06-101-0/+2
| | | | | | | | | | | | * folder-browser.c (folder_browser_new): Add a serial number to FolderBrowser. * folder-browser-factory.c (control_activate, control_deactivate): Include fb serial number in the name of the Bonobo toolbar to prevent problems with disappearing toolbars. This is a kludge and should go away. svn path=/trunk/; revision=3501
* Update for folder creation/existence changes.Dan Winship2000-06-071-21/+3
| | | | | | | | | | | | * mail-ops.c (fetch_mail): * folder-browser.c (folder_browser_load_folder): Update for folder creation/existence changes. * message-list.c (message_list_set_folder): Remove the code to create the folder if it doesn't exist, since we don't want to do that. svn path=/trunk/; revision=3455
* Allow "GDK_KP_Delete", a keypad delete key, to delete a message.Matthew Loper2000-06-061-1/+2
| | | | | | | * folder-browser.c (etable_key): Allow "GDK_KP_Delete", a keypad delete key, to delete a message. svn path=/trunk/; revision=3435
* Add "Delete" = delete message.Dan Winship2000-06-061-0/+3
| | | | | | * folder-browser.c (etable_key): Add "Delete" = delete message. svn path=/trunk/; revision=3432
* Connect to ETable's key_press signal. (etable_key): scroll mail onDan Winship2000-06-021-0/+32
| | | | | | | | * folder-browser.c (my_folder_browser_init): Connect to ETable's key_press signal. (etable_key): scroll mail on space/backspace. svn path=/trunk/; revision=3375
* Properly encode the search string.Not Zed2000-05-311-2/+2
| | | | | | | | 2000-05-30 Not Zed <NotZed@HelixCode.com> * folder-browser.c (search_set): Properly encode the search string. svn path=/trunk/; revision=3301
* Hardcode the vfolder source to just the inbox (so at least it returnsNot Zed2000-05-301-1/+18
| | | | | | | | | | | | | | | 2000-05-29 Not Zed <NotZed@HelixCode.com> * folder-browser.c (folder_browser_load_folder): Hardcode the vfolder source to just the inbox (so at least it returns something). * component-factory.c (create_test_storage): Create a vfolder dir first, and put the folders in that. (create_test_storage): Create the storage as VFolders, not "storage_name" :) svn path=/trunk/; revision=3269
* vfolder gui! So you can define them,k they show up in the list (well,Not Zed2000-05-281-12/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | after a restart), but they always come up empty - doesn't search any folders yet. 2000-05-27 Not Zed <NotZed@HelixCode.com> * Makefile.am (SHELL_OBJS): Include mail storage so we can initialise folders. * component-factory.c (create_test_storage): Parses vfolder defintions and adds them to the storage. Definetly needs more work. * folder-browser-factory.c (control_activate): Add the VFolder druid menu item. (control_deactivate): And remove it. * mail-ops.c (vfolder_editor_clicked): For editing vfolder definitions (rather like filters, oddly enough :). Tries to update the shell but it doesn't seem to work properly - requires a mail component restart to take effect. * folder-browser.c (folder_browser_load_folder): Handle vfolder: urls' appropriately and map to camel. Still needs a way to tell the vfolder what folders to search! (all vfolders come up empty!). svn path=/trunk/; revision=3241
* Added widgets/e-paned/Makefile.Christopher James Lahey2000-05-251-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-05-24 Christopher James Lahey <clahey@helixcode.com> * configure.in: Added widgets/e-paned/Makefile. * tests/ui-tests/message-browser.c: Switched from GtkPaned to EPaned. * widgets/Makefile.am: Added e-paned directory. * widgets/e-paned/, widgets/e-paned/.cvsignore, widgets/e-paned/Makefile.am, widgets/e-paned/e-hpaned.c, widgets/e-paned/e-hpaned.h, widgets/e-paned/e-paned.c, widgets/e-paned/e-paned.h, widgets/e-paned/e-vpaned.c, widgets/e-paned/e-vpaned.h: New widget based completely on GtkPaned from 1.4. This will be more advanced soon. From calendar/ChangeLog: 2000-05-24 Christopher James Lahey <clahey@helixcode.com> * gui/Makefile.am: Added libepaned.a. * gui/gnome-cal.c: Switched from GtkPaned to EPaned. From mail/ChangeLog: 2000-05-24 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added libepaned.a. * folder-browser.c: Switched from GtkPaned to EPaned. From shell/ChangeLog: 2000-05-24 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added libepaned.a. * e-shell-view.c: Switched from GtkPaned to EPaned. From widgets/shortcut-bar/ChangeLog: 2000-05-24 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added libepaned.a. * test-shortcut-bar.c: Switched from GtkPaned to EPaned. svn path=/trunk/; revision=3191
* Updated for the GtkHTML API changes. Also fixed some compilerEttore Perazzoli2000-05-211-1/+1
| | | | | | warnings here and there. svn path=/trunk/; revision=3145
* make this a little less kludgy. Use gnome_error_dialog rather than printfDan Winship2000-05-091-8/+19
| | | | | | | | | | | | | | | * folder-browser.c (folder_browser_load_folder): make this a little less kludgy. Use gnome_error_dialog rather than printf on errors. * mail-ops.c (fetch_mail): Fix to work with the new shell stuff... sorta. Will need more fixing later when the new shell framework is more done. * mail-config.c (finish): Call gnome_config_sync so the data actually gets written. svn path=/trunk/; revision=2931
* Don't hardcode "inbox" here.Dan Winship2000-05-071-18/+26
| | | | | | | | | | | | | | | | | | | * folder-browser-factory.c (folder_browser_factory): Don't hardcode "inbox" here. * folder-browser.c (folder_browser_set_uri): Don't hardcode "inbox" here either. (folder_browser_load_folder): Create a new store according to the folder browser's URI, and load the mbox file from that store. Parts of this are temporary. * session.c, mail.h: There is no longer a global store, just a global session. * mail-config.c, mail-ops.c: Update for default_session -> session change. fetch_mail is currently broken. svn path=/trunk/; revision=2853
* consolidate mail-format.h, mail-identify.h, mail-ops.h, main.h andDan Winship2000-05-071-2/+1
| | | | | | | | * mail.h: consolidate mail-format.h, mail-identify.h, mail-ops.h, main.h and session.h into this new file. There's no reason to have a .h for every .c. svn path=/trunk/; revision=2830
* comment out the changed signal for now.Larry Ewing2000-05-031-1/+1
| | | | | | | | | 2000-05-03 Larry Ewing <lewing@helixcode.com> * folder-browser.c (folder_browser_gui_init): comment out the changed signal for now. svn path=/trunk/; revision=2775
* > 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
* > (folder_browser_gui_init): Add an option meny to the search line.Michael Zucci2000-05-021-12/+96
| | | | | | | | | > (create_option_menu): Build the option menu from a table. > (search_set): Build a search from another string whent he option > menu or text item is changed. 5 search options are defined so > far. svn path=/trunk/; revision=2742
* A hackish little quick-search entry. (search_activate): Perform aNotZed2000-05-021-1/+35
| | | | | | | | | | | | | | | | | | | | | 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
* + * addressbook/gui/component/addressbook.c (addressbook_factory):Matthew Loper2000-04-091-0/+2
| | | | | | | | | | | | | | | + Added gtk_widget_push/pop_colormap/visual, which I assume is + necessary for canvas use. + + * folder-browser.c (folder_browser_new): set folder_browser->uri + to NULL, so that we know when to free it. + + * e-table-col.c (e_table_col_new_with_pixbuf): ref etc->ecell, + like in e_table_col_new, since that same ECell is unref'd in + etc_destroy(). + svn path=/trunk/; revision=2350
* + * folder-browser.c (folder_browser_destroy): Unref the shellMatthew Loper2000-04-081-0/+8
| | | | | | | | | | | | | | | | | | + interface that we have a handle to. + + * folder-browser-factory.c (control_destroy_cb): New function; + destroys a folder-browser when its control is destroyed. + (folder_browser_factory): Hook up to the above. + + * e-shell-view.c (destroy_folder_view): New function; + Bonobo_Unknown_unref's the controls that have the views in them. + (esv_destroy): Calls the above for each folder_view in the + hashtable. + (get_view): unref the ServiceRepository interface of the control + when we're done with it. + svn path=/trunk/; revision=2333
* update to new property API.Michael Meeks2000-04-021-23/+56
| | | | svn path=/trunk/; revision=2278
* remove debugging printf()s that no longer seem usefulDan Winship2000-04-011-2/+0
| | | | svn path=/trunk/; revision=2274
* once we have the bonobo control widget, disable the autoactivation andbertrand2000-03-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | 2000-03-13 bertrand <bertrand@helixcode.com> * shell/e-shell-view.c (get_view): once we have the bonobo control widget, disable the autoactivation and activate the control frame. 2000-03-12 bertrand <bertrand@helixcode.com> * folder-browser-factory.c (folder_browser_factory_init): name change. (control_activate_cb): when the control is activated, it merges its own UI with the remote UIHandler. (control_add_menu): sample menu merging. (folder_browser_factory): connect the control "activate" signal. (Bonobo control / shell view) UIMenu merging. svn path=/trunk/; revision=2110
* added the get_e_folder_type function.bertrand2000-03-131-1/+0
| | | | | | | | | | | | | | | | | | | | | 2000-03-12 bertrand <bertrand@helixcode.com> * shell/e-folder.c (e_folder_get_folder_type): added the get_e_folder_type function. 2000-03-12 bertrand <bertrand@helixcode.com> * folder-browser.h: added a reference to an Evolution::Shell object. * folder-browser-factory.c (folder_browser_set_shell): (folder_browser_control_add_service_repository_interface): (folder_browser_factory): the folder-browser control now implements the Evolution/ServiceRepository interface. Sync for matt svn path=/trunk/; revision=2108
* More changes than a man can remember.Bertrand Guiheneuf2000-03-061-14/+33
| | | | | | The UI works now. svn path=/trunk/; revision=2074
* fix to show a sample correct implementation.bertrand2000-02-221-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-02-22 bertrand <Bertrand.Guiheneuf@aful.org> * message-list.c (message_list_set_folder): fix to show a sample correct implementation. * camel-folder.c (camel_folder_get_subfolder): (camel_folder_create): (camel_folder_delete): (camel_folder_delete_messages): (camel_folder_list_subfolders): (camel_folder_expunge): (camel_folder_get_message_by_number): (camel_folder_get_message_count): (camel_folder_append_message): (camel_folder_copy_message_to): (camel_folder_get_summary): (camel_folder_get_message_uid): (camel_folder_get_message_by_uid): (camel_folder_get_uid_list): Check folder state (open/close) and raise an exception if it is not ok. * providers/mbox/camel-mbox-folder.c (_create): create the file and the path with two different names. * camel-folder.c (_create): handle the case when the folder name starts with '/' * camel-exception.c (camel_exception_new): use (void) instead of () in decl. * camel-exception.h: cosmetic fixes. * camel-exception.c (camel_exception_init): new routine. Fix a bug in mail/message-list.c * camel-folder.h: cosmetic changes. * camel-stream-b64.c (reset__static): added a reset method. Thanks message-browser to find so much bugs :) * providers/mbox/Makefile.am (libcamelmbox_la_LIBADD): readd Unicode libs. Fixes and exception handling in camel-folder. Fixes in mail/evolution-mail to make it not segfault and to demonstrate a correct implementation. svn path=/trunk/; revision=1902
* New header with the typedefs for all camel classes. Now the class headersDan Winship2000-02-191-0/+1
| | | | | | | | | | | | | | | * camel/camel-types.h: New header with the typedefs for all camel classes. Now the class headers can just include this and the header for the parent type. This makes it possible for CamelService to include a CamelSession without creating an #include loop. * camel/*: * composer/e-msg-composer-attachment-bar.h: * mail/folder-browser.c: * mail/message-list.c: frob #includes to match the new reality svn path=/trunk/; revision=1850
* Add the unicode libraries as well.Miguel de Icaza2000-02-161-1/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-02-14 Miguel de Icaza <miguel@gnu.org> * camel/providers/mbox/Makefile.am (libcamelmbox_la_LIBADD): Add the unicode libraries as well. * camel/camel-provider.c (camel_provider_register_as_module): Add error reporting here. Desire to use Solaris increases. Hair loss in the last two hours: 5,400. * camel/providers/mbox/camel-mbox-provider.c (camel_mbox_get_provider): Renamed function. * camel/camel.h: All include files use camel/ now here. * camel/providers/mbox/Makefile.am: Drop all the dynamism from Camel, and make this a standard library. * configure.in: set the UNICODE_LIBS variable here. 2000-02-14 Miguel de Icaza <miguel@gnu.org> * folder-browser.c (folder_browser_load_folder): New routine, loads a camel folder. (folder_browser_set_uri): redo. * session.c: new file. Implements SessionStores to keep track of a Session/Store tuple. svn path=/trunk/; revision=1783
* More work. Not funny that e-table does not display.Arturo Espinosa2000-01-291-12/+86
| | | | | | | | 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-3/+3
| | | | | | | | Make Evolution compile with the latest Bonobo changes. Miguel. svn path=/trunk/; revision=1636
* More workArturo Espinosa2000-01-251-0/+90
svn path=/trunk/; revision=1628