aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-folder-tree-model.c
Commit message (Collapse)AuthorAgeFilesLines
* change this to check the store using the provider url_cmp and just lookupNot Zed2004-01-161-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | 2004-01-16 Not Zed <NotZed@Ximian.com> * mail-folder-cache.c (storeinfo_find_folder_info): change this to check the store using the provider url_cmp and just lookup the folder name directly. folder_compare can't be used for uri's, this stuff was so broken, my fault :( ** See bug #52467. * em-folder-tree-model.c (sort_cb): handle null path (root?). * mail-vfolder.c (mail_vfolder_add_uri): map uri to euri before processing. (rule_changed): map uri to camel uri before looking up. (mail_vfolder_delete_uri): handle as euri internally. (mail_vfolder_rename_uri): " * mail-autofilter.c (vfolder_rule_from_message): map camel uri to euri before setting as vfolder source. svn path=/trunk/; revision=24266
* Make vfolder_store 'global'.Jeffrey Stedfast2004-01-161-4/+32
| | | | | | | | | | | | 2004-01-15 Jeffrey Stedfast <fejj@ximian.com> * mail-vfolder.c: Make vfolder_store 'global'. * em-folder-tree-model.c (sort_cb): Fix bug #12600 by not sorting VFolders (ie. show them in the same order they appear in the editor). svn path=/trunk/; revision=24257
* Fixes bug #52888Jeffrey Stedfast2004-01-161-0/+46
| | | | | | | | | | | | | 2004-01-15 Jeffrey Stedfast <fejj@ximian.com> Fixes bug #52888 * em-folder-tree-model.c (sort_cb): New sort function for the folder-tree. (em_folder_tree_model_init): Set the default sort func. (em_folder_tree_model_new): Set the default sort column. svn path=/trunk/; revision=24255
* Make the model sorted. Fixes bug #52888.Jeffrey Stedfast2004-01-161-9/+36
| | | | | | | | | 2004-01-15 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree-model.c (em_folder_tree_model_new): Make the model sorted. Fixes bug #52888. svn path=/trunk/; revision=24254
* Clone the CamelRenameInfo and ref the store before emitting the asyncJeffrey Stedfast2004-01-061-47/+82
| | | | | | | | | | | | | | | | | 2004-01-05 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree-model.c (folder_renamed_cb): Clone the CamelRenameInfo and ref the store before emitting the async event. (folder_deleted_cb): Same idea but for CamelFolderInfo's. (folder_created_cb): Here too. (folder_subscribed_cb): Same. (folder_unsubscribed_cb): And here. (folder_renamed): Split out from folder_rename_cb(), free the CamelRenameInfo and unref the store when done. (folder_unsubscribed): Same idea. (folder_subscribed): Same. svn path=/trunk/; revision=24062
* If we aren't in the main thread, proxy it over to the main thread.Jeffrey Stedfast2004-01-061-0/+26
| | | | | | | | | | | | | | | | | 2004-01-05 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree-model.c (folder_subscribed_cb): If we aren't in the main thread, proxy it over to the main thread. (folder_unsubscribed_cb): Same. (folder_created_cb): Here too. (folder_deleted_cb): And here. (folder_renamed_cb): Again here. * em-folder-view.c (emfv_set_folder_uri): Pass mail_thread_queued to mail_get_folder() instead of mail_thread_new so that we eliminate a race when switching folders in the UI. svn path=/trunk/; revision=24050
* Add INFO_FAST here as we don't need it to get unread counts.Jeffrey Stedfast2003-12-111-2/+1
| | | | | | | | | | | | | 2003-12-10 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree.c (em_folder_tree_set_selected): Add INFO_FAST here as we don't need it to get unread counts. (tree_row_expanded): Here too. * em-folder-tree-model.c (em_folder_tree_model_set_folder_info): Check CAMEL_FOLDER_NOCHILDREN. svn path=/trunk/; revision=23912
* Update the unread count in the model if the folder got new mail.Jeffrey Stedfast2003-12-111-0/+33
| | | | | | | | | | | | | | | | | | | 2003-12-10 Jeffrey Stedfast <fejj@ximian.com> * mail-folder-cache.c (real_flush_updates): Update the unread count in the model if the folder got new mail. * em-folder-selection.c (em_select_folder): Updated. * em-folder-selection-button.c (em_folder_selection_button_clicked): Updated. * em-folder-tree-model.c (em_folder_tree_model_set_unread_count): New function to update the unread count for a folder. * mail-component.c (mail_component_peek_tree_model): Don't ref the model. Also renamed s/get/peek/ svn path=/trunk/; revision=23910
* ** See bug #51899.Not Zed2003-12-091-1/+2
| | | | | | | | | | | | 2003-12-09 Not Zed <NotZed@Ximian.com> ** See bug #51899. * em-folder-tree-model.c (em_folder_tree_model_set_folder_info): CAMEL_FOLDER_CHILDREN is only advisory, some servers don't give it to you. svn path=/trunk/; revision=23890
* Make sure folder_path is non-NULL ("Loading..." nodes will have a NULLJeffrey Stedfast2003-12-051-1/+1
| | | | | | | | | | 2003-12-04 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree-model.c (em_folder_tree_model_remove_folders): Make sure folder_path is non-NULL ("Loading..." nodes will have a NULL path). Fixes bug #51731. svn path=/trunk/; revision=23638
* Fixes bug #51605.Jeffrey Stedfast2003-12-051-1/+1
| | | | | | | | | | | | | | | 2003-12-04 Jeffrey Stedfast <fejj@ximian.com> Fixes bug #51605. * em-folder-selector.c (emfs_response): Handle creating a new folder (pop up a create-folder-selector dialog). * em-folder-tree.c (emft_popup_new_folder_response): Moved all the logic into em_folder_tree_create_folder(). (em_folder_tree_create_folder): New function to create a folder. svn path=/trunk/; revision=23635
* Fixed a FIXME by using the CamelProvider url flags to determine if the urlJeffrey Stedfast2003-12-041-3/+2
| | | | | | | | | | 2003-12-03 Jeffrey Stedfast <fejj@ximian.com> * em-folder-selector.c (em_folder_selector_get_selected_uri): Fixed a FIXME by using the CamelProvider url flags to determine if the url used url->fragment or url->path as the folder path. svn path=/trunk/; revision=23604
* Moved here. (drop_folder): Moved here. (import_message_rfc822): MovedJeffrey Stedfast2003-12-031-74/+397
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-12-02 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree-model.c (drop_uid_list): Moved here. (drop_folder): Moved here. (import_message_rfc822): Moved here. (drop_message_rfc822): Moved here. (drop_text_uri_list): Moved here. (model_drag_data_received): Moved the logic from em-folder-tree.c into here. (model_row_drop_possible): Same. (model_row_draggable): Same. (drag_text_uri_list): Moved here. (model_drag_data_get): Moved logic here. (model_drag_data_delete): Moved logic here. * em-folder-tree.c (drag_data_get_cb): Pass the full_name to camel_store_get_folder() rather than the path. (drag_data_received_cb): Same. (drop_uid_list): Removed. (drop_folder): Removed. (import_message_rfc822): Removed. (drop_message_rfc822): Removed. (drop_text_uri_list): Removed. (drag_data_received_cb): Removed. (row_drop_possible_cb): Removed. (row_draggable_cb): Removed. (drag_text_uri_list): Removed. (drag_data_get_cb): Removed. (drag_data_delete_cb): Removed. (em_folder_tree_enable_drag_and_drop): Don't connect to any of the drag & drop signals, they don't exist anymore. * mail-component.c (impl_createControls): Enable drag-and-drop. * em-folder-tree.c (em_folder_tree_new_with_model): Connect to the loading row signal. (loading_row_cb): Expand the path if needed. (em_folder_tree_destroy): Disconnect from the loading-row signal. (em_folder_tree_enable_drag_and_drop): New function to enable drag-and-drop. (em_folder_tree_new): Remove drag-and-drop setup code. * em-folder-tree-model.c (em_folder_tree_model_class_init): Define the loading-row signal. (em_folder_tree_model_set_folder_info): emit the loading-row signal. svn path=/trunk/; revision=23590
* Connect to the loading row signal. (loading_row_cb): Expand the path ifJeffrey Stedfast2003-12-031-0/+16
| | | | | | | | | | | | | | | 2003-12-02 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree.c (em_folder_tree_new_with_model): Connect to the loading row signal. (loading_row_cb): Expand the path if needed. (em_folder_tree_destroy): Disconnect from the loading-row signal. * em-folder-tree-model.c (em_folder_tree_model_class_init): Define the loading-row signal. (em_folder_tree_model_set_folder_info): emit the loading-row signal. svn path=/trunk/; revision=23589
* more fixesJeffrey Stedfast2003-12-031-4/+4
| | | | svn path=/trunk/; revision=23587
* fixed some mem leaks in my codeJeffrey Stedfast2003-12-031-44/+7
| | | | svn path=/trunk/; revision=23586
* Fixed to pass the evolution dir into em_folder_tree_model_new().Jeffrey Stedfast2003-12-031-1/+129
| | | | | | | | | | | | | | | | | | | | | | | | 2003-12-02 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree.c (em_folder_tree_new): Fixed to pass the evolution dir into em_folder_tree_model_new(). (model_save_state): Removed. (em_folder_tree_save_state): Moved all the saving logic into em_folder_tree_model_save_expanded(). * em-folder-tree-model.c (em_folder_tree_model_new): Load the expanded state off disk. (em_folder_tree_model_save_expanded): New function to save expanded state. (em_folder_tree_model_get_expanded): new function to get if a node should be expanded. (em_folder_tree_model_set_expanded): new function to set the expanded state of a node. * mail-component.c (mail_component_init): Pass the evo dir to em_folder_tree_model_new() which now requires it. svn path=/trunk/; revision=23585
* Updated to call em_folder_tree_model_set_folder_info().Jeffrey Stedfast2003-12-021-3/+409
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-12-01 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree.c (em_folder_tree_get_folder_info__got): Updated to call em_folder_tree_model_set_folder_info(). (folder_subscribed_cb): Removed. (folder_unsubscribed_cb): Removed. (folder_created_cb): Removed. (folder_deleted_cb): Removed. (folder_renamed_cb): Removed. * em-folder-tree-model.c (em_folder_tree_store_set_folder_info): New function to replace tree_store_set_folder_info() which had been in em-folder-tree.c (em_folder_tree_model_remove_uri): Made private. (em_folder_tree_model_remove_store_info): Made private. (em_folder_tree_model_remove_folders): New function to replace remove_folders() from em-folder-tree.c (em_folder_tree_model_new): No longer takes any args. * em-folder-tree.c (em_folder_tree_new): Updated. * mail-component.c (add_store): Add the store to the model rather than the treeview. (impl_createControls): create a new treeview based on the already-instantiated model. (mail_component_init): Create a new tree model. (mail_component_remove_store): Remove the store from the model directly. (mail_component_get_tree_model): Updated. * em-folder-tree.c (folder_unsubscribed_cb): Call em_folder_tree_model_remove_folders() rather than the deprecated internal remove_folders() function. (folder_renamed_cb): Same. (em_folder_tree_remove_store): Removed. (em_folder_tree_add_store): Removed. (remove_folders): Removed. svn path=/trunk/; revision=23545
* Swap the retval varargs value to the last argument instead of the first.Jeffrey Stedfast2003-11-241-5/+5
| | | | | | | | | | | 2003-11-22 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree-model.c (model_drag_data_received) (model_row_drop_possible, model_row_draggable) (model_drag_data_get, model_drag_data_delete): Swap the retval varargs value to the last argument instead of the first. svn path=/trunk/; revision=23469
* Only set OK to sensitive if the selected node is not a store node.Jeffrey Stedfast2003-11-151-1/+80
| | | | | | | | | | | | | | 2003-11-14 Jeffrey Stedfast <fejj@ximian.com> * em-folder-selection.c (folder_selected_cb): Only set OK to sensitive if the selected node is not a store node. * em-folder-tree-model.c: Moved the store_hash and uri_hash from EMFolderTreePrivate into here instead. * em-folder-tree.c: Updated for above changes. svn path=/trunk/; revision=23355
* New folder-tree widget that replaces the shell's folder-tree widget.Jeffrey Stedfast2003-11-141-0/+284
2003-11-13 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree.[c,h]: New folder-tree widget that replaces the shell's folder-tree widget. * em-folder-tree-model.[c,h]: New source files subclassing GtkTreeStore for handling the mess that is drag&drop. * em-folder-selection-button.c: Ported to use EMFolderTree. * em-folder-selection.c: Ported to use EMFolderTree. * em-folder-selector.c: Ported to use EMFolderTree. * mail-component.c: Ported to use EMFolderTree. * mail-offline-handler.c (storage_go_online): Updated to not pass a storage argument. * mail-folder-cache.c: Removed storage stuff. * mail-send-recv.c (receive_update_got_store): Don't do EStorage* stuff anymore. svn path=/trunk/; revision=23331