aboutsummaryrefslogtreecommitdiffstats
path: root/mail/component-factory.c
Commit message (Collapse)AuthorAgeFilesLines
* This commit was manufactured by cvs2svn to create tag 'GAL_0_10'.GAL_0_10nobody2001-07-261-1016/+0
| | | | svn path=/tags/GAL_0_10/; revision=11421
* oops, we had a possible NULL value passed to a strcmpJeffrey Stedfast2001-07-251-1/+3
| | | | svn path=/trunk/; revision=11372
* fixed a typoJeffrey Stedfast2001-07-251-1/+1
| | | | svn path=/trunk/; revision=11370
* Fix for bug #5174.Jeffrey Stedfast2001-07-251-2/+4
| | | | | | | | 2001-07-24 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (create_view): Fix for bug #5174. svn path=/trunk/; revision=11368
* Do a case-insensitive comparison. (mail_generate_reply): Only resort toJeffrey Stedfast2001-07-251-5/+5
| | | | | | | | | | | | | | | | | | | | 2001-07-24 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (guess_me): Do a case-insensitive comparison. (mail_generate_reply): Only resort to the source account's identity if we can't find out which identity to use based on the recipients of the message first. * mail-config.c (mail_config_get_default_account): Make sure to return the 0th account if we don't have a default. We don't want to return NULL. * mail-callbacks.c (empty_trash): Use mail_tool_get_trash for the remote store trash folders. * mail-tools.c (mail_tool_get_trash): New convenience function. svn path=/trunk/; revision=11353
* Dont call notifyResult here if we've just launched a thread to do theNot Zed2001-07-241-13/+10
| | | | | | | | | | | 2001-07-24 Not Zed <NotZed@Ximian.com> * component-factory.c (create_folder): Dont call notifyResult here if we've just launched a thread to do the work, it calls it itself. This apparently breaks the importers, but thats a different issue. svn path=/trunk/; revision=11335
* Add an extra @type arg to the xferFolder and removeFolder methods inEttore Perazzoli2001-07-231-1/+16
| | | | | | | | the ShellComponent interface. Updated the EvolutionShellComponent GTK+ wrapper and all the component accordingly. Get the calendar to use this so it can delete both tasks and calendar folders. svn path=/trunk/; revision=11300
* Add a `user_creatable' property to folder types and make componentsEttore Perazzoli2001-07-221-3/+3
| | | | | | | use it, so that e.g. you cannot create a folder of type "mailstorage" or "vtrash". svn path=/trunk/; revision=11298
* Don't let the user remove vtrash folders.Peter Williams2001-07-211-0/+3
| | | | | | | | | 2001-07-20 Peter Williams <peterw@ximian.com> * component-factory.c (storage_remove_folder): Don't let the user remove vtrash folders. svn path=/trunk/; revision=11267
* Fix DanW's fix. Pass the right arguments to mail_msg_destroy.Peter Williams2001-07-211-1/+3
| | | | | | | | | | | | | | | | | | | 2001-07-20 Peter Williams <peterw@ximian.com> * mail-mt.c (mail_msgport_replied): Fix DanW's fix. Pass the right arguments to mail_msg_destroy. * component-factory.c (component_fn): Don't populate the context menu; our only action didn't even work. (populate_folder_context_menu): Removed. ChangeFolderProperties needs a FolderBrowser which we don't have. It didn't even work before. * mail-local.c (mail_local_reconfigure_folder): Bring the creation of the hash table to the beginning to prevent warnings. Complain if the mailbox is non-local. svn path=/trunk/; revision=11266
* In camel:Peter Williams2001-07-201-7/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-19 Peter Williams <peterw@ximian.com> Policy change: NULL url's are no longer allowed in CamelFolderInfos. They used to signify that the folder was, in IMAP jargon, NoSelect; now the same effect is achieved by adding a "noselect=yes" parameter to the end of the URL. As far as I know, IMAP is the only affected provider. * providers/imap/camel-imap-store.c (delete_folder): New function. Implement folder deletion. (camel_imap_store_class_init): Set the delete_folder class function here. (get_folder_status): New function. Utility wrapper around the STATUS command. (create_folder): If the parent folder is NoSelect but is empty, delete it and recreate it as a a subfolder-containing folder. If it is NoSelect but contains messages, set an exception. (parse_list_response_as_folder_info): Always set the FolderInfo's URL, but add a NoSelect parameter if it isn't selectable. (get_folder_info_online): Change logic of removing the namespace to reflect URL change. Same for logic of checking unread counts. (get_folder_info_online): Use get_folder_status to simplify this. * camel-store.c (camel_folder_info_build): When creating dummy parents, copy the child's URL and set the NoSelect parameter. In mail: 2001-07-19 Peter Williams <peterw@ximian.com> Track the NoSelect changes in Camel. * mail-callbacks.c (create_folders): We don't need to check if the URL is NULL or not anymore. * component-factory.c (create_noselect_control): New function. Create a dummy control for folders that can't contain messages (ie \NoSelect) (create_view): If the URI says the folder is noselect, make a dummy control. FIXME: still should merge in the global UI elements. (xfer_folder): Don't allow the operation if the destination is NoSelect. (destination_folder_handle_motion): Ditto. (destination_folder_handle_drop): Ditto. svn path=/trunk/; revision=11237
* Fix to correctly handle text/uri-lists that contain more than a singleJeffrey Stedfast2001-07-181-28/+34
| | | | | | | | | | | | | | 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-2/+0
| | | | | | | | | | | | | | | | 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 g_strcasecmp() when looking for a Trash folder - it may be lowercaseJeffrey Stedfast2001-07-171-15/+18
| | | | | | | | | | | | | | | | 2001-07-16 Jeffrey Stedfast <fejj@ximian.com> * mail-ops.c (add_vtrash_info): Use g_strcasecmp() when looking for a Trash folder - it may be lowercase or something funky. * mail-local.c (init_trash): No need to specify the vfolder expression here. This code was moved into camel-vtrash-folder.c ages ago. * component-factory.c: Let VTrash folders accept/export the same dnd types as normal folders. svn path=/trunk/; revision=11140
* Let VTrash folders accept/export the same dnd types as normal folders.Jeffrey Stedfast2001-07-171-1/+1
| | | | | | | | | 2001-07-16 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c: Let VTrash folders accept/export the same dnd types as normal folders. svn path=/trunk/; revision=11134
* Mark the messages as Seen also. (folder_browser_class_init): Create anJeffrey Stedfast2001-07-071-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | 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
* Change the folder right-click "Properties..." menu item handling soEttore Perazzoli2001-07-061-1/+19
| | | | | | | | | | that it only happens in the mailer (which is the only component actually using this). For some reason it still doesn't work properly (i.e. the menu item currently does nothing), but I haven't quite figured out why yet. svn path=/trunk/; revision=10840
* Setup the Empty Trash On Exit widgets.Jeffrey Stedfast2001-07-031-0/+3
| | | | | | | | | | | | | | | | | 2001-07-02 Jeffrey Stedfast <fejj@ximian.com> * mail-accounts.c (construct): Setup the Empty Trash On Exit widgets. * mail-config.c (config_read): Option to emtpy trash on exit. (mail_config_write_on_exit): Same. (mail_config_set_empty_trash_on_exit): Set the option. (mail_config_get_empty_trash_on_exit): Get the option. * component-factory.c (owner_unset_cb): Empty the trash folders if the user set the "empty trash on exit" option. svn path=/trunk/; revision=10711
* Updated for the mail_transfer_messages API.Jeffrey Stedfast2001-07-031-9/+21
| | | | | | | | | | | | | | | | | | | | | | 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
* Since we have an exception variable, we might as well use it when gettingJeffrey Stedfast2001-06-291-4/+8
| | | | | | | | | | | | | 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
* Get the Mail Component to understand `mailto:'.Ettore Perazzoli2001-06-281-1/+25
| | | | svn path=/trunk/; revision=10555
* Add method `ShellComponent::handleExternalURI' and anEttore Perazzoli2001-06-281-0/+1
| | | | | | | | | `external_uri_schemas' attribute. Update the EvolutionShellComponent GTK+ wrapper accordingly. Update all the components to pass a NULL `external_uri_schemas' list when initializing themselves as EvolutionShellComponents. svn path=/trunk/; revision=10548
* Don't pop up a progress dialog to say "I already finished this a whileDan Winship2001-06-271-4/+5
| | | | | | | | | | | | | * mail-mt.c (op_status_timeout): Don't pop up a progress dialog to say "I already finished this a while ago". * component-factory.c (storage_create_folder): Pass the path prefix to folder_created so it can add it to the folder tree in the right place. * mail-callbacks.c (folder_created): Take a path prefix. svn path=/trunk/; revision=10508
* No longer returns a gboolean and also takes a CamelException.Jeffrey Stedfast2001-06-271-16/+15
| | | | | | | | | | | | | | | | | | | 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
* Update the copyrights, replacing Helix Code with Ximian andEttore Perazzoli2001-06-231-2/+2
| | | | | | helixcode.com with ximian.com all over the place. svn path=/trunk/; revision=10440
* Fix bug #3409: Removing an EvolutionStorage from the shell's folderJacob Leach2001-06-221-16/+28
| | | | | | tree. svn path=/trunk/; revision=10362
* #include "folder-browser-factory.h"Jeffrey Stedfast2001-06-201-15/+34
| | | | | | | | | | | | | | | 2001-06-19 Jeffrey Stedfast <fejj@ximian.com> * mail-display.c: #include "folder-browser-factory.h" * component-factory.c (mail_remove_storage): New function to remove an EvolutionStorage. * mail-accounts.c (mail_delete): Remove the storage from the folder-tree. (news_delete): Same. svn path=/trunk/; revision=10304
* Accept text/uri-list mime types - this allows us to drag messages fromJeffrey Stedfast2001-06-201-6/+52
| | | | | | | | | | | | | 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
* Use a nice switch statement and use the new enum values.Jeffrey Stedfast2001-06-191-17/+33
| | | | | | | | | | | | | | 2001-06-18 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (destination_folder_handle_drop): Use a nice switch statement and use the new enum values. * mail-callbacks.c (list_add_addresses): Now takes a hash table of already-used-recipients so that we don't get duplicates. (mail_generate_reply): Pass in a rcpt_hash argument to list_add_addresses(). These changes fix bug #1639. svn path=/trunk/; revision=10282
* Change the drop-type "x-evolution-dnd" to "x-evolution-message" since weJeffrey Stedfast2001-06-191-2/+2
| | | | | | | | | | | | | | | | | 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
* If we have a fragment in the url, use that as the folder name, and not theNot Zed2001-06-181-2/+5
| | | | | | | | | | | | | | 2001-06-14 Not Zed <NotZed@Ximian.com> * mail-tools.c (mail_tool_uri_to_folder): If we have a fragment in the url, use that as the folder name, and not the path component. 2001-06-13 Not Zed <NotZed@Ximian.com> * component-factory.c (mail_load_storages): Added temp hack to let spool providers show up in the list. svn path=/trunk/; revision=10263
* Implemented.Jeffrey Stedfast2001-06-161-6/+15
| | | | | | | | | | | | | | | | 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
* Fixed misuse of an uninitialized variable.Jeffrey Stedfast2001-06-161-3/+94
| | | | | | | | | | | | | | | | | 2001-06-15 Jeffrey Stedfast <fejj@ximian.com> * mail-ops.c (mail_send_message): Fixed misuse of an uninitialized variable. * component-factory.c (destination_folder_handle_drop): Implemented. * mail.h: Added prototype for evolution_folder_info_factory_init. * mail-ops.c (mail_do_transfer_messages): Now takes a const char* as the dest_uri. This works better all around since we strdup'd the string anyway. svn path=/trunk/; revision=10255
* Updated to reflect changes to mail_config_[g,s]et_thread_list().Jeffrey Stedfast2001-06-151-9/+70
| | | | | | | | | | | | | | | | | | | | | | | 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
* Committing the new My Evolution.Iain Holmes2001-06-091-13/+2
| | | | svn path=/trunk/; revision=10163
* This code should be correct now. Still waiting on the shell to do it's jobJeffrey Stedfast2001-05-261-13/+9
| | | | | | | | | | 2001-05-25 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (xfer_folder): This code should be correct now. Still waiting on the shell to do it's job of creating the metadata xml file in the destination folder though. svn path=/trunk/; revision=9981
* New function that the shell component calls to copy/move a folder.Jeffrey Stedfast2001-05-241-4/+44
| | | | | | | | | | | | | | | | | | | | | | 2001-05-23 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (xfer_folder): New function that the shell component calls to copy/move a folder. (component_fn): Set the xfer_folder_fn argument. * mail-ops.c (mail_remove_folder): New async function to remove a folder. God knows if it does what the ShellComponent needs or not yet. (mail_xfer_folder): Yet another yummy async function to move or copy a folder to a new location. * component-factory.c (storage_remove_folder): New function for removing folders. (remove_folder): New function that the shell component calls to delete a folder. (component_fn): Set the remove_folder_fn argument. svn path=/trunk/; revision=9954
* New async function to remove a folder. God knows if it does what theJeffrey Stedfast2001-05-241-11/+103
| | | | | | | | | | | | | | | | 2001-05-23 Jeffrey Stedfast <fejj@ximian.com> * mail-ops.c (mail_remove_folder): New async function to remove a folder. God knows if it does what the ShellComponent needs or not yet. * component-factory.c (storage_remove_folder): New function for removing folders. (remove_folder): New function that the shell component calls to delete a folder. (component_fn): Set the remove_folder_fn argument. svn path=/trunk/; revision=9952
* Get rid of this - we don't need it.Jeffrey Stedfast2001-05-141-1/+0
| | | | | | | | | | | | 2001-05-13 Jeffrey Stedfast <fejj@ximian.com> * mail-local.c (mail_local_storage_shutdown): Get rid of this - we don't need it. * component-factory.c (owner_unset_cb): Don't unref the LocalStore - we don't own a ref on it!! svn path=/trunk/; revision=9787
* add protoJP Rosevear2001-05-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | 2001-05-11 JP Rosevear <jpr@ximian.com> * mail-importer.h: add proto * mail-importer.c (mail_importer_uninit): release and unref the local storage * mail-local.c (mail_local_store_finalize): use bonobo_object_release_unref rather than doing Bonobo_Unknow_unref and a corba release (register_folder_registered): "sink" the local_store ref to prevent circular ref (mail_local_storage_shutdown): unref the local store * mail-local.h: new proto * component-factory.c (owner_unset_cb): uninit the importer and shutdown the local storage svn path=/trunk/; revision=9768
* New file, started by Ettore, finished by me, to implement theDan Winship2001-05-101-1/+18
| | | | | | | | | | | | | | | | | | * mail-offline-handler.c: New file, started by Ettore, finished by me, to implement the GNOME_Evolution_Offline interface. * Makefile.am (evolution_mail_SOURCES): Add mail-offline-handler.[ch] * mail-ops.c (mail_store_set_offline): Set a store online or offline. * mail-send-recv.c (auto_timeout): Don't run auto-check-for-mail while the session is offline. * component-factory.c (component_fn): Set up offline handler. svn path=/trunk/; revision=9739
* Importer changesIain Holmes2001-05-091-0/+2
| | | | svn path=/trunk/; revision=9722
* Updated for changes to PGP code.Jeffrey Stedfast2001-04-131-3/+0
| | | | | | | | | | | | | | | | | | | | | | | 2001-04-12 Jeffrey Stedfast <fejj@ximian.com> * mail-accounts.c (pgp_path_changed): Updated for changes to PGP code. * component-factory.c (owner_set_cb): Don't init openpgp anymore because we don't need it. * mail-crypto.c: Simply wrap the camel-pgp-mime functions (also renamed the functions to be prefixed with mail_crypto). * mail-format.c (handle_multipart_signed): Update to use camel_pgp_mime_is_rfc2015_signed() and other camel-pgp-mime functions. (handle_multipart_encrypted): Same but for rfc2015_encrypted. (decode_pgp): Updated to use camel-pgp-context (try_inline_pgp): Updated to use camel-pgp-context's. (try_inline_pgp_sig): Same. svn path=/trunk/; revision=9269
* Executive summary and Trash now have nice icons both in tree/folder title andGediminas Paulauskas2001-04-041-1/+1
| | | | | | | | | | | | shortcut bar. Converted and replaced icons for trash and summary: exec-16-summary.xpm => evolution-today-mini.png delete_mesage.xpm => evolution-trash-mini.png, Copied evolution-trash.png icons from mc (needs tweaking to match other evolution icons though) svn path=/trunk/; revision=9154
* Blessed by Ettore.Gediminas Paulauskas2001-04-021-1/+1
| | | | | | | | | | | | | | Guided by Jacub Stener's mail, where he explaned which icons were renamed or added, I added a bunch of new icons to menus, fixed renamed ones. Changed Trash and Executive summary folder type icons. Fixed art/Makefile.am for these changes. Also, pulled icon cache from mailer and moved it to e-util/e-gui-utils.h, made all components and dialogs use cache and not load pixmaps every time. Accidentally got a couple of includes fix in, but they won't break anything. svn path=/trunk/; revision=9092
* If the EvolutionShellComponent emits a "debug" signal, turn onDan Winship2001-03-311-0/+10
| | | | | | | * component-factory.c (debug_cb): If the EvolutionShellComponent emits a "debug" signal, turn on camel_verbose_debug. svn path=/trunk/; revision=9047
* Cleaned up #includes. Remove unneccesary includes of <gnome.h>,Kjartan Maraas2001-03-301-2/+3
| | | | | | | | | | | 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
* Set up the sent/drafts folder buttons. (folder_picker_clicked): Pop up theDan Winship2001-03-291-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mail-account-gui.c (mail_account_gui_new): Set up the sent/drafts folder buttons. (folder_picker_clicked): Pop up the folder selector when sent or drafts is clicked. (mail_account_gui_save): Save the sent/drafts folders. * mail-config.c (account_copy): copy sent/drafts info (config_read): read sent/drafts info (mail_config_write): write sent/drafts info * mail-callbacks.c (composer_send_cb, composer_postpone_cb): split out some common code here (and fix inconsistencies). Always set headers on the message giving the account name, transport, and sent folder to use. * mail-ops.c (mail_send_message): If the message has an X-Evolution-Account header, use the transport/sent folder info for that account (assuming it still exists). Otherwise, if it has X-Evolution-Transport and/or X-Evolution-Fcc, use those. If not, use the default transport and sent folder. FIXME: Falls back silently to the default sent folder if it can't open the account-specific one... (send_queue_send): remove the X-Evolution-Transport, etc processing here, as it gets done by mail_send_message now. FIXME: We only sync the default sent folder. * component-factory.c (owner_set_cb): While setting up the standard folders, also record their URIs. svn path=/trunk/; revision=8991
* undo a boolean boobooDan Winship2001-03-271-1/+2
| | | | svn path=/trunk/; revision=8946
* Simplify a bit using camel_session_get_provider.Dan Winship2001-03-261-23/+30
| | | | | | | | | | * component-factory.c (mail_load_storages): Simplify a bit using camel_session_get_provider. * mail-callbacks.c (empty_trash): Ditto, and fix up use of CamelException. svn path=/trunk/; revision=8942
* Fix a bug in this that probably would have been noticed sooner if ETreeDan Winship2001-03-261-1/+1
| | | | | | | | * component-factory.c (unref_standard_folders): Fix a bug in this that probably would have been noticed sooner if ETree hadn't always made the mailer crash before you got here. :-) svn path=/trunk/; revision=8930
* Call unref_standard_folders() here instead.Jeffrey Stedfast2001-03-201-2/+2
| | | | | | | | | 2001-03-19 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (owner_unset_cb): Call unref_standard_folders() here instead. svn path=/trunk/; revision=8827
* unref the standard folders. (owner_set_cb): Use g_atexit() to callJeffrey Stedfast2001-03-191-0/+13
| | | | | | | | | | | | | 2001-03-18 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (unref_standard_folders): unref the standard folders. (owner_set_cb): Use g_atexit() to call unref_standard_folders() when evolution-mail exits. This should solve the problem where these folders are not synced when evolution-mail closes (because they still had refs on them on close). svn path=/trunk/; revision=8814
* All my changes to get the folder creation working, and the magic NetscapeIain Holmes2001-03-131-0/+3
| | | | | | importer. svn path=/trunk/; revision=8661
* Add "vtrash" as a folder type we support. (create_view): Kludgy-kludgeJeffrey Stedfast2001-03-091-3/+3
| | | | | | | | | | 2001-03-08 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c: Add "vtrash" as a folder type we support. (create_view): Kludgy-kludge around the vtrash type. (owner_set_cb): Don't create the vTrash folder here anymore... svn path=/trunk/; revision=8603
* Added a ShellComponent method to retrieve the selection for drag andEttore Perazzoli2001-03-081-1/+2
| | | | | | drop and support for it in the shell. Untested. svn path=/trunk/; revision=8594
* Re-add the mail_vtrash_create() hack back in for LocalStores since there'sJeffrey Stedfast2001-02-271-0/+3
| | | | | | | | | | | | | | 2001-02-25 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (owner_set_cb): Re-add the mail_vtrash_create() hack back in for LocalStores since there's no better way to register a vTrash folder on the Local Storage yet. * mail-local.c (register_folder_registered): Add folders to the vTrash folder here since the LocalStore does not let the parent CamelStore class keep it's own hash of the folders. svn path=/trunk/; revision=8391
* No longer need to construct the vTrash here. (owner_set_cb): Don't makeJeffrey Stedfast2001-02-251-6/+0
| | | | | | | | | | | | | | 2001-02-24 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (mail_load_storages): No longer need to construct the vTrash here. (owner_set_cb): Don't make the vTrash for the local store here. * mail-ops.c (add_vtrash_info): New function to add a vTrash folder info to a pre-constructed CamelFolderInfo for use in the get_folder_info async function. svn path=/trunk/; revision=8381
* No longer need to do a vtrash_cleanup() (it also doesn't exist anymore).Jeffrey Stedfast2001-02-241-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-23 Jeffrey Stedfast <fejj@ximian.com> * main.c (main): No longer need to do a vtrash_cleanup() (it also doesn't exist anymore). * component-factory.c (mail_load_storages): Updated to use the new vtrash code. (owner_set_cb): Same. * mail-tools.c (mail_tool_uri_to_folder): Update to handle the "vtrash:" url prefix so that we can extract the REAL uri and know to get the trash folder. * mail-vtrash.c (mail_vtrash_add): Add the vTrash folder to the EvolutionStorage. (mail_vtrash_create): Get the store based on the uri (async) and then call mail_trash_add. (vtrash_cleanup): Removed. (vtrash_uri_to_folder): Removed. (vtrash_create): Replaced by mail_vtrash_create() svn path=/trunk/; revision=8367
* New stuff for the importer to create a new folderIain Holmes2001-02-231-2/+2
| | | | svn path=/trunk/; revision=8365
* Make op cancellable/report internals. (get_folder_get):Not Zed2001-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-23 Not Zed <NotZed@Ximian.com> * mail-ops.c (create_folder_get): Make op cancellable/report internals. (get_folder_get): (sync_folder_sync): (get_folderinfo_get): Make op cancellable/report internals. * mail-vtrash.c (get_trash_get): Setup the operation registration, and create a pseudo "start/stop" operation. * component-factory.c (owner_set_cb): Make trash creation async. * mail-local.c (register_folder_desc): A description of what we're doing. * mail-mt.c (mail_msg_new): Set status callback to operation_new. (mail_operation_status): Operation status function, proxy messages to main thread, and attempt to present a meaningful ui experience for operations. svn path=/trunk/; revision=8351
* Fix for api changes to append_mail.Not Zed2001-02-211-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-21 Not Zed <NotZed@Ximian.com> * mail-callbacks.c (composer_postpone_cb): Fix for api changes to append_mail. * Makefile.am (evolution_mail_SOURCES): Removed mail-threads.[ch]. * mail-threads.[ch]: Removed. * subscribe-dialog.c (subscribe_do_get_store): Chagned to use new thread stuff. This is really getting boring. (subscribe_do_subscribe_folder): Changed to use new thread stuff. Last one at last, phew. * session.c (register_callback): Changed to use new thread stuff. YUCK. I dropped some functionality, now the timeout callback return is ignored, so basically it keeps running till finished. * mail-ops.c (mail_operation_run): Removed, no longer used/needed. (mail_do_append_mail): Changed to use new thread stuff. (mail_do_transfer_messages): ditto. * mail-local.c (local_storage_new_folder_cb): Use new thread stuff, also only run synchronous for this operation. (mail_local_reconfigure_folder): (reconfigure_clicked): Changed to use new mail thread stuff. * mail-config.c (mail_config_check_service): Changed to use new thread stuff. svn path=/trunk/; revision=8314
* Create vTrash folders for all remote stores as well.Jeffrey Stedfast2001-02-201-0/+3
| | | | | | | | | 2001-02-19 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (mail_load_storages): Create vTrash folders for all remote stores as well. svn path=/trunk/; revision=8300
* New handy dandy function to ref and return the vfolder storage (willJeffrey Stedfast2001-02-201-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-19 Jeffrey Stedfast <fejj@ximian.com> * mail-vfolder.c (mail_vfolder_get_vfolder_storage): New handy dandy function to ref and return the vfolder storage (will probably be disavowed once I figure out how to get the vTrash folder to show up in the EvolutionLocalStorage). * main.c (main): Call vtrash_cleanup(). * mail-vtrash.c: New file. (vtrash_uri_to_folder): vtrash: URI handler (vtrash_create): Replacement async vtrash function for the old one in mail-ops.c (vtrash_cleanup): Cleanup code - unrefs the cached vtrash folders and free's the hashtable. * Makefile.am: Added mail-vtrash.[c,h]. * mail-tools.c (mail_tool_uri_to_folder): If we have a vtrash: URI, call the vtrash URI handler function rather than continuing on. Yes, I know this is a hack and it needs to be fixed. * mail-ops.c (mail_do_setup_trash): Removed. (mail_trash_get): Removed. * component-factory.c (owner_set_cb): Create the vTrash folder for the LocalStore here. * mail-local.c (get_folder_info): Implement. svn path=/trunk/; revision=8288
* Reverse the changes I made yesterday.Jeffrey Stedfast2001-02-171-1/+5
| | | | | | | | | 2001-02-16 Jeffrey Stedfast <fejj@ximian.com> * main.c: * component-factory.c: Reverse the changes I made yesterday. svn path=/trunk/; revision=8256
* Have the mail-config and openpgp initialize here instead.Jeffrey Stedfast2001-02-161-3/+0
| | | | | | | | | | | | 2001-02-15 Jeffrey Stedfast <fejj@ximian.com> * main.c (main): Have the mail-config and openpgp initialize here instead. * component-factory.c (owner_set_cb): No need to have mail-config and openpgp init here. svn path=/trunk/; revision=8250
* Use mail_storage_create_folderJeffrey Stedfast2001-02-161-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-15 Jeffrey Stedfast <fejj@ximian.com> * mail-ops.c (do_scan_subfolders): Use mail_storage_create_folder * mail-callbacks.c (mail_storage_create_folder): Convenience function so we can keep all the evolution_storage_add_new_folder() code in one place as much as possible. * subscribe-dialog.c (recursive_add_folder): Use 'name' rather than the no-description bs since that's what all the other places do. * mail-callbacks.c (folder_created): New callback to handle the "folder_created" signal - handles CamelFolderInfo's recursively. (folder_deleted): Same but for "folder_deleted". * component-factory.c (storage_create_folder): Instead of doing the evolution_storage_new_folder() stuff by hand, pass it off to the new callback: folder_created(). At some point this will be unecessary as we'll attach this callback to the "folder_created" signal. svn path=/trunk/; revision=8247
* Connect to the "create_folder" signal on the storage.Dan Winship2001-02-151-0/+54
| | | | | | | | * component-factory.c (add_storage): Connect to the "create_folder" signal on the storage. (storage_create_folder): Do folder creation. svn path=/trunk/; revision=8232
* Setup the Trash folder.Jeffrey Stedfast2001-02-151-10/+17
| | | | | | | | | | | | | | | | | | | 2001-02-14 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (owner_set_cb): Setup the Trash folder. * mail-ops.c (create_trash_vfolder): Do better error handling. (populate_folder_urls): Oops, helps to strdup the url into the array if we plan on freeing the data. (mail_get_trash): New async function that may eventually replace mail_do_setup_trash(). (do_setup_trash): Do better error handling. * mail-local.c (mail_local_store_class_init): Override get_folder_info. (get_folder_info): Implement. svn path=/trunk/; revision=8228
* only free driver, if set. (fetch_mail_fetched): Unref the driver here, soNot Zed2001-02-091-0/+3
| | | | | | | | | | | | | | | | | | | | 2001-02-09 Not Zed <NotZed@Ximian.com> * mail-ops.c (filter_folder_free): only free driver, if set. (fetch_mail_fetched): Unref the driver here, so it can cleanup before we call the 'done' callback. * component-factory.c (owner_set_cb): Add setup for mail autoreceive stuff. * mail-send-recv.c (free_info_data): Free the send info's from teh active hash, not the running list. (receive_done): As we finish downloads, remove them and clean them up, and also close the window. (mail_autoreceive_setup): New function to setup & maintain automatic download stuff. svn path=/trunk/; revision=8134
* (Fixing an old FIXME)Jason Leach2001-01-261-12/+2
| | | | | | | | | | | | 2001-01-26 Jason Leach <jasonleach@usa.net> (Fixing an old FIXME) * component-factory.c (create_vfolder_storage): removing create_vfolder_storage, replacing call to it with vfolder_create_storage. svn path=/trunk/; revision=7837
* Neater importer stuff.Iain Holmes2001-01-261-0/+4
| | | | svn path=/trunk/; revision=7828
* Function to add a store/storage mapping. (add_storage): Use it.Dan Winship2001-01-231-2/+8
| | | | | | | | | | | | | | | | | | | * component-factory.c (mail_hash_storage): Function to add a store/storage mapping. (add_storage): Use it. * mail-vfolder.c (vfolder_uri_to_folder): Use the vfolder name rather than the string "mbox" (which wasn't ever used for anything) in the vfolder URL. (Combined with the CamelVeeFolder change, this makes camel_folder_get_name() return a pretty name for vfolders now.) Call mail_hash_storage() to record the CamelVeeStore/vfolder_storage mapping. (Ideally, there'd only be a single CamelVeeStore... this is just a quick hack.) vfolders now display their unread count once you've looked at them once. svn path=/trunk/; revision=7712
* remove a warning with conditional news compilation.Not Zed2001-01-221-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Initialize OpenPGP.Jeffrey Stedfast2001-01-221-1/+4
| | | | | | | | | | | | 2001-01-21 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (owner_set_cb): Initialize OpenPGP. * openpgp-utils.c (openpgp_init): No longer takes a passphrase callback, we'll just use the mail-session one. Makes life simpler. (pgp_get_passphrase): Use mail_session_request_dialog(). svn path=/trunk/; revision=7694
* only load the news storage if ENABLE_NNTP.Chris Toshok2001-01-171-0/+2
| | | | | | | | | | | | 2001-01-16 Chris Toshok <toshok@helixcode.com> * component-factory.c (owner_set_cb): only load the news storage if ENABLE_NNTP. * mail-accounts.c (construct): if !ENABLE_NNTP, remove the news page from the dialog. svn path=/trunk/; revision=7550
* Now takes a 'is_account_data' variable to specify whether the sources is aJeffrey Stedfast2001-01-131-29/+41
| | | | | | | | | | | | | | | 2001-01-12 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (mail_load_storages): Now takes a 'is_account_data' variable to specify whether the sources is a list of accounts of a list of services. Basically, the only time you should pass in FALSE is when you are setting up NNTP storages. (add_storage): Now takes a 'name' argument that specifies the name to use in the storage. (owner_set_cb): Updated to pass TRUE for accounts and FALSE for news servers into mail_load_storages. svn path=/trunk/; revision=7469
* Add an ::asyncCopyFolder method to the ShellComponent interface. MoveEttore Perazzoli2001-01-131-3/+7
| | | | | | all the message hiding options to the View menu. svn path=/trunk/; revision=7456
* Brand spankin' new config druid, editor, and manager.Jeffrey Stedfast2001-01-091-6/+9
| | | | | | | | | | | | | | | | | | | | | 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-9/+6
| | | | | | | | | | | | | | | | | 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-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Removed old implementation.Not Zed2001-01-041-4/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Detect created and deleted vfolders.Iain Holmes2000-12-221-0/+2
| | | | svn path=/trunk/; revision=7126
* Added a cast.Christopher James Lahey2000-12-131-1/+1
| | | | | | | | | | | | | | | | | 2000-12-12 Christopher James Lahey <clahey@helixcode.com> * component-factory.c (create_view): Added a cast. * mail-summary.c: Added #include "mail-summary.h". Commented out folder_free, summary_free, and view_destroy_cb since they're not used. (do_changed): Added a cast. (create_summary_view): Changed some types so that casting would be easier. * session.c (mail_session_remember_password): Added a cast. svn path=/trunk/; revision=6956
* New function to tell the code that it's ok (or not) to interact with theDan Winship2000-12-121-0/+2
| | | | | | | | | | | | | | | * session.c (mail_session_enable_interaction): New function to tell the code that it's ok (or not) to interact with the user when trying to authenticate to a service. Starts out turned off. (mail_session_request_dialog): If interaction is disabled, fail if the password isn't in the cache. * component-factory.c (owner_set_cb): Call mail_session_enable_interaction() after everything else. (This means that the IMAP password dialog will no longer pop up [under the splash screen] at startup.) svn path=/trunk/; revision=6924
* Deal with "mailstorage" type views (top-level mail storages) by trying toDan Winship2000-12-121-6/+28
| | | | | | | | | | | | | * component-factory.c (create_view): Deal with "mailstorage" type views (top-level mail storages) by trying to fill the storage's folder tree again if we failed before. (add_storage): Create new storages with a URI and type "mailstorage". * mail-ops.c (cleanup_scan_subfolders): On success, mark the storage as having been loaded, so create_view won't try again. svn path=/trunk/; revision=6923
* Complete the code to associate a URI and a folder type to the toplevelEttore Perazzoli2000-12-091-1/+1
| | | | | | | node in a storage. It sucks a bit and needs a little more refactoring. svn path=/trunk/; revision=6878
* Fix up shutdown so that things that should be destroyed getDan Winship2000-12-071-76/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | destroyed. Among other things, this fixes the bug where IMAP stores weren't disconnected at shutdown. * mail-threads.c (update_active_views): Update for folder_browser_factory_get_control_list change to EList. * folder-browser-factory.c: Turn control_list into an EList so that we can safely remove items from it while it's being iterated (which will happen as FolderBrowsers are destroyed at shutdown while the thread code is trying to update the status bars). (control_destroy_cb): Just destroy the folder_browser. (browser_destroy_cb): New callback for FolderBrowser destroy. Remove the control from control_list here instead of control_destroy_cb, because the controls don't seem to get destroyed reliably... * component-factory.c: Clean up stuff. (factory_destroy): Get rid of this. (owner_unset_cb): Schedule an idle handler to quit. (idle_quit): Wait for all of the FolderBrowsers to be destroyed and then destroy the storages and quit. svn path=/trunk/; revision=6830
* Update the calls to `evolution_storage_new()' according to the newEttore Perazzoli2000-12-051-1/+1
| | | | | | | | API in `libeshell'. Sorry for breaking the build. :-( svn path=/trunk/; revision=6788
* return NULL if we can't create a view.Michael Meeks2000-12-051-2/+2
| | | | | | | | | | | | | | 2000-12-04 Michael Meeks <michael@helixcode.com> * e-shell-view.c (get_control_for_uri): return NULL if we can't create a view. (setup_evolution_shell_view_interface): add precondition. + lots of cleans. svn path=/trunk/; revision=6778
* Unref the store regardless of whether or not we're using it, so we don'tDan Winship2000-12-021-1/+2
| | | | | | | | * component-factory.c (mail_load_storages): Unref the store regardless of whether or not we're using it, so we don't leak references to non-storage stores. svn path=/trunk/; revision=6759
* Wait until after setting up the local storage to find theDan Winship2000-11-291-6/+6
| | | | | | | | | | * component-factory.c (owner_set_cb): Wait until after setting up the local storage to find the Drafts/Outbox/Sent folders. * mail-ops.c (do_setup_folder): Use the file: store rather than mbox:. svn path=/trunk/; revision=6704
* Big patch. Evolution-services rewrite, services updated for new system,Iain Holmes2000-11-221-11/+14
| | | | | | | | Big patch. Evolution-services rewrite, services updated for new system, Fixes to Executive Summary and other things. See some changelogs svn path=/trunk/; revision=6644
* A very, long, very tedious IDL API rename and re-scoping;Michael Meeks2000-11-111-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* First draft of folder tree unread message indication for /localDan Winship2000-11-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | mail folders. * mail-local.c: Add a new CamelStore subclass, MailLocalStore, which attaches to an Evolution_LocalStorage on one side and CamelSession on the other, and keeps track of local folders. Some of this code was previously in mail-local-storage.c, which no longer exists. (local_reconfigure_folder, etc): Various mail_op-related cleanups, and wrap d() around a bunch of printfs. * mail-tools.c (mail_tool_get_local_inbox_url, mail_tool_get_local_movemail_url): Removed (mail_tool_get_local_inbox): Simplified. (mail_tool_do_movemail): Remove unused dest_url variable. (mail_tool_uri_to_folder): Simplify. Now down to two cases (vfolder, and everything else). * component-factory.c (owner_set_cb): Pass evolution_dir to mail_local_storage_startup. * Makefile.am (evolution_mail_SOURCES): Remove mail-local-storage.[ch] svn path=/trunk/; revision=6456
* Added new header files.Jeffrey Stedfast2000-11-041-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Make "Get Mail" even more functional on IMAP (scans all folders),Dan Winship2000-11-021-69/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | and do a first cut at folder tree highlighting (for IMAP/news only). * mail-ops.c (do_fetch_mail): For imap (sigh, we *still* shouldn't be hardcoding that), rescan the store's folder tree, rescan each changed folder for new messages, and update the shell folder tree. (do_scan_subfolders): Update for component-factory.c changes, and set folder display names and highlights appropriately when building the storage. * component-factory.c (add_storage): Make this static (was mail_add_new_storage). Use camel_service_get_name for the name rather than url->host. (Among other things, this lets you use a single machine as both an IMAP server and a news server.) (mail_lookup_storage): Hash storages based on their CamelStore rather than the URL. (factory_destroy): Disconnect each of the CamelStores in the storages_hash. * subscribe-dialog.c (cleanup_subscribe_folder): * mail-vfolder.c (vfolder_refresh): Pass "highlighted" flag to evolution_storage_new_folder svn path=/trunk/; revision=6342
* Summary is back in :DIain Holmes2000-10-261-10/+3
| | | | | | Fixed a silly size issue for composer file selectors. svn path=/trunk/; revision=6187
* lots of i18n fixesDan Winship2000-10-241-2/+2
| | | | svn path=/trunk/; revision=6143
* Disable the executive-summaryIain Holmes2000-10-121-2/+11
| | | | svn path=/trunk/; revision=5872
* add a ref to input->storage here so that the ref/unref pattern moreChris Toshok2000-10-111-1/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-10-10 Chris Toshok <toshok@helixcode.com> * mail-ops.c (setup_scan_subfolders): add a ref to input->storage here so that the ref/unref pattern more closely matches other mail-ops. also, this keeps the storage from being freed when we hit the unref in cleanup_scan_subfolders, which is important because we maintain a reference to it in the storage_hash in component-factory.c * subscribe-dialog.h: add storage field. * subscribe-dialog.c (subscribe_folder_info): new function, subscribe to a folder given it's CamelFolderInfo, and add it to the shell - we're generating a path from the name of the folder which is bad. (unsubscribe_folder_info): same (except we unsubscribe and remove from the shell). (storage_selected_cb): unref the currently selected storage. (subscribe_dialog_destroy): unref the currently selected storage. (subscribe_dialog_construct): sc->storage = NULL. * component-factory.c (mail_lookup_storage): new function, to look up a EvolutionStorage corresponding to a CamelService. we ref the EvolutionStorage before passing it back. (mail_add_new_storage): insert the storage into storages_hash if result is EVOLUTION_STORAGE_OK. * mail.h: add prototype for mail_lookup_storage. svn path=/trunk/; revision=5830
* Fix the locking up of the mail by only calling camel functions from theIain Holmes2000-10-071-8/+0
| | | | | | | | | | | | | | | | | | 2000-10-06 Iain Holmes <iain@helixcode.com> * mail-summary.c: Fix the locking up of the mail by only calling camel functions from the camel thread, and ORBit functions from the GTK thread. Watch for the message-changed signal again. * component-factory.c (summary_fn, component_factory_init): Re-enabled it, cos I think it works again. * mail-display.h: Remove the pb_cache. * Makefile.am: Readd the mail-summary.[ch] files and add the evolution-services library to the link. svn path=/trunk/; revision=5777
* Disable summary stuff, it appears to be badly broken.Michael Meeks2000-10-051-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-10-05 Michael Meeks <michael@helixcode.com> * component-factory.c (summary_fn, component_factory_init): Disable summary stuff, it appears to be badly broken. * Makefile.am (evolution_mail_SOURCES): add mail-summary.[ch] * subscribe-dialog.c (update_pixmaps): upd. (set_pixmap): upd. (subscribe_dialog_gui_init): upd. remove redundant and annoying forward definitions. * folder-browser-factory.c (control_deactivate): upd. (control_activate_cb): upd. (control_activate): upd. (set_pixmap): upd. (update_pixmaps): upd. (register_ondemand): upd. (create_ondemand_hooks): upd. 2000-10-05 Michael Meeks <michael@helixcode.com> * e-shell-view-menu.c (shortcut_bar_mode_changed_cb): upd. (folder_bar_mode_changed_cb): upd. (command_xml_dump): clobber. (e_shell_view_menu_setup): upd. * e-shell-view.c (shell_view_interface_set_message_cb): upd. (shell_view_interface_unset_message_cb): upd. (e_shell_view_construct): upd. (get_control_for_uri): upd. (e_shell_view_get_bonobo_ui_component): upd. 2000-10-05 Michael Meeks <michael@helixcode.com> * contact-editor/e-contact-editor.c (create_ui): upd. (e_contact_editor_init): upd. * gui/component/addressbook.c (control_activate_cb): upd. (control_deactivate): kill. (control_activate): upd. 2000-10-05 Michael Meeks <michael@helixcode.com> * gui/calendar-commands.c: upd. (calendar_control_activate): upd. (calendar_control_deactivate): upd. 2000-10-05 Michael Meeks <michael@helixcode.com> * component/e-summary-factory.c (control_activate): upd. (set_pixmap): upd. (update_pixmaps): upd. (control_activate_cb): upd. (control_deactivate): upd. svn path=/trunk/; revision=5742
* Add the stuff to make evolution-mail a summary providing component. :)Iain Holmes2000-10-051-1/+22
| | | | svn path=/trunk/; revision=5738
* Added check for gnome-app-lib. Removed directories that have been moved toChristopher James Lahey2000-09-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Cool Hack of the Day: right-click menu item to autodetect what mailingEttore Perazzoli2000-09-121-1/+1
| | | | | | | | | | list a message comes from and create the rule for it on the fly. (Many thanks to Joakim for suggesting the way to implement this.) Also, use the new shiny toolbar icons from TigerT and mark some strings for translation. svn path=/trunk/; revision=5362
* Added a simple LocalStorage manager module so that we can hook upEttore Perazzoli2000-09-121-0/+3
| | | | | | folder read/unread message count information into it. svn path=/trunk/; revision=5337
* Pass a storage dir to camel_session_new now.Dan Winship2000-09-081-1/+2
| | | | | | | | | | | | * session.c (session_init): Pass a storage dir to camel_session_new now. * main.c (main): Can't call session_init here now, because it requires evolution_dir to be set. * component-factory.c (owner_set_cb): call session_init here. svn path=/trunk/; revision=5240
* Re-rename "Sent".Dan Winship2000-09-061-1/+1
| | | | | | * component-factory.c (owner_set_cb): Re-rename "Sent". svn path=/trunk/; revision=5207
* Replace mail_do_setup_draftbox, mail_do_setup_outbox, andDan Winship2000-09-061-4/+7
| | | | | | | | | | | | | | * mail-ops.c: Replace mail_do_setup_draftbox, mail_do_setup_outbox, and mail_do_setup_sentbox with mail_do_setup_folder. (do_send_mail, do_send_queue): s/sentbox_folder/sent_folder/ * component-factory.c (owner_set_cb): Use mail_do_setup_folder, rename sentbox_folder to sent_folder, and call mail_operation_wait_for_finish after the setup_folder calls in case anything needs to use the _folder variables. svn path=/trunk/; revision=5200
* New convenience function to load the Outbox folderJeffrey Stedfast2000-09-021-0/+4
| | | | | | | | | | | | | | | 2000-09-01 Jeffrey Stedfast <fejj@helixcode.com> * mail-ops.c (mail_do_setup_outbox): New convenience function to load the Outbox folder (mail_do_setup_sentbox): Same, but for Sentbox. (do_send_mail): Now saves messages in Sentbox if sent successfully * component-factory.c: Added outbox_folder and sent_folder (owner_set_cb): Call our new convenience functions to load Outbox and Sentbox svn path=/trunk/; revision=5172
* Make CamelServices connect only when told to (old behavior). Make ↵Peter Williams2000-08-311-72/+12
| | | | | | CamelRemoteStore do its stuff in service::connect, not ::post_connect. svn path=/trunk/; revision=5116
* Fix GDK_THREADS_entering and leaving, hopefully once and for all. Genericify ↵Peter Williams2000-08-251-72/+148
| | | | | | the recursive-store-loading. Load stores when they're added to the config page. svn path=/trunk/; revision=5005
* Get the mail component to use the new Evolution::ShellView interface.Ettore Perazzoli2000-08-131-0/+1
| | | | | | | This implementation is so ugly and evil and needs to be replaced. Don't look at it. Go away. svn path=/trunk/; revision=4797
* Updated to reflect changes to mail_do_scan_subfoldersJeffrey Stedfast2000-08-131-13/+13
| | | | | | | | | | | | | 2000-08-13 Jeffrey Stedfast <fejj@helixcode.com> * component-factory.c (create_news_storage): Updated to reflect changes to mail_do_scan_subfolders (create_imap_storage): Same. * mail-ops.c (mail_do_scan_subfolders): No longer takes an add_INBOX argument svn path=/trunk/; revision=4795
* Take the source as a command-line argument rather than fetching it fromDan Winship2000-08-131-17/+17
| | | | | | | | | * component-factory.c (create_imap_storage): Take the source as a command-line argument rather than fetching it from mail-config. (owner_set_cb): Call create_imap_storage on each configured IMAP store. svn path=/trunk/; revision=4793
* Check nrow, not srow.JP Rosevear2000-08-121-13/+7
| | | | | | | | 2000-08-11 JP Rosevear <jpr@helixcode.com> * mail-config-gui.c (news_edit_clicked): Check nrow, not srow. svn path=/trunk/; revision=4738
* Don't call e_setup_base_dir. It was wrong and it doesn't exist any more.Dan Winship2000-08-111-6/+4
| | | | | | | | | | | | | | | | | | | * session.c (session_init): Don't call e_setup_base_dir. It was wrong and it doesn't exist any more. * component-factory.c (owner_set_cb): Update for changed prototype, and record the evolution_homedir. Move call to mail_config_init here from session.c so it happens after evolution_dir is initialized. * mail.h: define "extern char *evolution_dir;" (formerly in e-util/e-setup.h) * component-factory.c, mail-callbacks.c, mail-config-gui.c, mail-config.c, mail-display.c, mail-format.c, mail-ops.c, mail-tools.c, session.c: Remove "e-util/e-setup.h" include. svn path=/trunk/; revision=4712
* Merge with camel-async.Peter Williams2000-08-111-164/+13
| | | | svn path=/trunk/; revision=4687
* New function to replace real_create_imap_storage andJeffrey Stedfast2000-08-081-102/+27
| | | | | | | | | | | 2000-08-07 Jeffrey Stedfast <fejj@helixcode.com> * component-factory.c (real_create_generic_storage): New function to replace real_create_imap_storage and real_create_news_storage (create_imap_storage): Updated. (create_news_storage): Updated. svn path=/trunk/; revision=4584
* s/strncasecmp/g_strncasecmpJeffrey Stedfast2000-08-081-2/+2
| | | | | | | | | | | | | | | | | | 2000-08-07 Jeffrey Stedfast <fejj@helixcode.com> * mail-display.c: * component-factory.c: s/strncasecmp/g_strncasecmp * mail-format.c (write_headers): Get rid of kludge around subject beginning with spaces. (mail_generate_reply): Get rid of kludge around subject beginning with spaces and also use g_strncasecmp instead of strncasecmp for portability * mail-ops.c (forward_msg): Get rid of kludges around subject beginning with spaces. svn path=/trunk/; revision=4575
* Create a global reference to the Drafts mbox folder for the Composer toJeffrey Stedfast2000-08-071-3/+21
| | | | | | | | | 2000-08-07 Jeffrey Stedfast <fejj@helixcode.com> * component-factory.c (owner_set_cb): Create a global reference to the Drafts mbox folder for the Composer to use svn path=/trunk/; revision=4561
* only whack the sig in if the file exists.Michael Meeks2000-08-041-1/+21
| | | | | | | | | | | | | | 2000-08-03 Michael Meeks <michael@helixcode.com> * mail-config.c (identity_page_new): only whack the sig in if the file exists. * component-factory.c (factory_fn): count running instances, attach destroy signal (factory_destroy): add. * main.c (main): pass orb around. svn path=/trunk/; revision=4523
* 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
* Remove hack to pass the storage around.Not Zed2000-07-301-72/+5
| | | | | | | | | | | | | | | | | | | | | | 2000-07-29 Not Zed <NotZed@HelixCode.com> * component-factory.c (create_view): Remove hack to pass the storage around. * folder-browser-factory.c (control_activate): Changed to call renamed vfolder editor. * mail-ops.c (vfolder_edit_vfolders): renamed from vfolder_edit, call new edit function. (vfolder_editor_clicked): Removed. (filter_druid_clicked): (filter_edit): Updated for api change. (real_fetch_mail): Fixed up for api change and fucked up indent. (filter_get_folder): callback for filter driver. * mail-vfolder.c: New file to manage virtual folders. svn path=/trunk/; revision=4417
* New function to create composer with sig file set.JP Rosevear2000-07-291-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-07-28 JP Rosevear <jpr@arcavia.com> * e-msg-composer.c (e_msg_composer_new_with_sig_file): New function to create composer with sig file set. (e_msg_composer_get_sig_file): New function to get sig file (e_msg_composer_set_sig_file): New function to set sig file 2000-07-29 JP Rosevear <jpr@arcavia.com> * mail-format.c (mail_generate_reply): Use new mail config stuff * component-factory.c (create_imap_storage): Use new mail config stuff (create_news_storage): ditto * evolution-mail.schemas: Gconf schema for evolution mail * mail-config-druid.glade: Gladification of config druid * mail-config.h: New header with config structs. * mail-config.c: Rewrite of GUI configuration tools to use new config structs. Stores multiple identities and sources now. Still only uses the first one found. (mail_config_fetch): Returns MailConfig struct to caller for configuration queries. (mail_config): Renamed function to show mail config dialog. (mail_config_druid): Renamed function to show mail config druid. * mail-ops.c (create_msg_composer): Use e_msg_composer_new_with_sig_file and new config stuff (check_configured): Use new config stuff (fetch_mail): ditto (composer_send_cb): ditto svn path=/trunk/; revision=4413
* Update for CamelFolder API changes. (Certain functions no longer take aDan Winship2000-07-251-2/+2
| | | | | | | | | | | | | | * message-list.c (mark_msg_seen, ml_tree_set_value_at, message_list_regenerate): Update for CamelFolder API changes. (Certain functions no longer take a CamelException.) * mail-ops.c (real_fetch_mail, real_send_mail, real_delete_msg): ditto * component-factory.c (real_create_imap_storage, real_create_news_storage): ditto svn path=/trunk/; revision=4305
* Remove GOAD support.Dan Winship2000-07-251-4/+0
| | | | | | | | | | | * component-factory.c, folder-browser-factory.c, test-mail.c: Remove GOAD support. * main.c: Remove GOAD support. (main): More "guess the build mistake" fun, this time for the failure to initialize Bonobo case. svn path=/trunk/; revision=4301
* Update the components to match the changes in the libeshell API.Ettore Perazzoli2000-07-211-0/+1
| | | | svn path=/trunk/; revision=4242
* Initial code to support IMAP folders that don't use "/" as a directoryJeffrey Stedfast2000-07-171-19/+32
| | | | | | | | | 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
* kill more debugging messagesDan Winship2000-07-111-3/+0
| | | | | | * kill more debugging messages svn path=/trunk/; revision=4050
* Fix syncing of the mailbox on exit so that it's done on destruction ofEttore Perazzoli2000-07-111-15/+0
| | | | | | | | | 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
* Get rid of a compiler warning.Ettore Perazzoli2000-07-041-1/+5
| | | | svn path=/trunk/; revision=3881
* Fix filter_driver_new invocation.Dan Winship2000-07-031-1/+1
| | | | | | | * component-factory.c (create_vfolder_storage): Fix filter_driver_new invocation. svn path=/trunk/; revision=3862
* Pass mail_uri_to_folder and rules to filter_driver_new.Dan Winship2000-07-031-2/+1
| | | | | | | | | * mail-ops.c (real_fetch_mail): (vfolder_editor_clicked): * component-factory.c (create_vfolder_storage): Pass mail_uri_to_folder and rules to filter_driver_new. svn path=/trunk/; revision=3860
* Fix to work with new EvolutionShellClientPeter Williams2000-07-011-6/+10
| | | | svn path=/trunk/; revision=3830
* Fix stupid typos and add a missing prototype.Ettore Perazzoli2000-06-301-2/+2
| | | | svn path=/trunk/; revision=3823
* EvolutionShellClient.Ettore Perazzoli2000-06-301-5/+9
| | | | svn path=/trunk/; revision=3820
* remove some code incorrectly copied and pasted from create_vfolder_storageDan Winship2000-06-301-6/+0
| | | | | | | | | * component-factory.c (create_imap_storage, create_news_storage): remove some code incorrectly copied and pasted from create_vfolder_storage which caused vfolder creation to stop working. svn path=/trunk/; revision=3804
* Refuse to create folders not of type "mail", and correctly create an emptyDan Winship2000-06-291-4/+26
| | | | | | | | * component-factory.c (create_folder): Refuse to create folders not of type "mail", and correctly create an empty "mbox" folder for new folders in /local. svn path=/trunk/; revision=3781
* Put in a gross hack to export the shell reference elsewhere.Michael Zucchi2000-06-271-0/+5
| | | | | | | | | 2000-06-27 Michael Zucchi <zucchi@zedzone.mmc.com.au> * component-factory.c (owner_set_cb): Put in a gross hack to export the shell reference elsewhere. svn path=/trunk/; revision=3748
* Make the broken threads optionalPeter Williams2000-06-271-4/+28
| | | | svn path=/trunk/; revision=3740
* Land most of the stuff to move fetch_mail, send_mail, expunge_folder, ↵Peter Williams2000-06-241-15/+83
| | | | | | init_imap, and init_news to async operation. svn path=/trunk/; revision=3711
* Little prototype fixesPeter Williams2000-06-231-5/+2
| | | | svn path=/trunk/; revision=3708
* add handling for loading "news:" folders.Chris Toshok2000-06-231-0/+80
| | | | | | | | | | | | | 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-1/+1
| | | | | | | | | | | | 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-1/+1
| | | | | | (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/+6
| | | | | | | | | | | | | | | | | | | | | 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/+9
| | | | svn path=/trunk/; revision=3648
* basically got IMAP into the tree viewJeffrey Stedfast2000-06-201-12/+71
| | | | svn path=/trunk/; revision=3643
* started to add code to load an IMAP folder.Jeffrey Stedfast2000-06-191-17/+37
| | | | | | | | | | | | | | | | 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
* Update for CamelFolder changes.Dan Winship2000-06-161-4/+3
| | | | | | | | | * mail-ops.c (fetch_mail): * component-factory.c (owner_unset_cb): * message-list.c (message_list_set_folder): Update for CamelFolder changes. svn path=/trunk/; revision=3583
* Return the result of folder_browser_load_folder. (get_prop, set_prop,Dan Winship2000-06-131-4/+3
| | | | | | | | | | | | | | | | | | | | | * 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
* Implemented folder creation dialog (File -> New -> Folder). To makeEttore Perazzoli2000-06-111-1/+25
| | | | | | | | it really work though, the components should implement creation functionality by passing an appropriate function pointer in `e_shell_component_new()' for @create_folder_fn. svn path=/trunk/; revision=3504
* Initial support for creating/removing folders. This implies some newEttore Perazzoli2000-06-101-3/+10
| | | | | | | | IDL methods and new functions to implement on the component side. I have also added a simple folder creation dialog in the shell. It's quite unfinished and untested. svn path=/trunk/; revision=3491
* keep a GList of folder browsers created (owner_unset_cb): Go through theDan Winship2000-06-031-0/+17
| | | | | | | | | * component-factory.c (create_view): keep a GList of folder browsers created (owner_unset_cb): Go through the list and close each folder before exiting so they sync their summary state, etc to disk. svn path=/trunk/; revision=3393
* Quit when the shell exits. This is a kludge, but a pretty necessary oneDan Winship2000-06-011-1/+10
| | | | | | | | * component-factory.c (owner_unset_cb): Quit when the shell exits. This is a kludge, but a pretty necessary one until the refcounting bugs that keep the component from exiting properly are fixed. svn path=/trunk/; revision=3323
* Hardcode the vfolder source to just the inbox (so at least it returnsNot Zed2000-05-301-3/+4
| | | | | | | | | | | | | | | 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-0/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Reorganized the shell to allow dynamic registration of storages andEttore Perazzoli2000-05-251-0/+112
folder types, and changed all the components to work with the new setup. svn path=/trunk/; revision=3199