aboutsummaryrefslogtreecommitdiffstats
path: root/mail/message-list.c
Commit message (Collapse)AuthorAgeFilesLines
* NOOP if the folder has changed.Not Zed2004-02-261-4/+7
| | | | | | | | | 2004-02-26 Not Zed <NotZed@Ximian.com> * message-list.c (regen_list_regened): NOOP if the folder has changed. svn path=/trunk/; revision=24877
* ** See bug #53258.Not Zed2004-02-061-14/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-02-06 Not Zed <NotZed@Ximian.com> ** See bug #53258. * em-format-html-display.c (efhd_find_handler): force any bonobo handler types to always be inline, even attachments. * em-format.c (em_format_is_inline): use handler flags for special cases, removing all hard-coded types. * em-format.h (EMFormatHandler): add a flags field, so far a flag to set default inline viewing of the content. 2004-02-06 Not Zed <NotZed@Ximian.com> * em-folder-properties.c: include string.h to kill warning. ** See bug #53627. * em-folder-view.c (emfv_popup_mark_junk): changed to work like delete does, jumping to the next message if required, and marking things immediately, then queuing up the junk marking job if required. * mail-ops.c (mail_mark_junk): ugh, this stuff totally can't go accessing messagelist from another thread!!!! Changed so this code only does the junk reporting, not setting flags. UGH! It should be doing this implictly on the folder when you set the flags, or at least when you sync the folder!!! Changed ot use the queued thread. * message-list.c (find_next_undeleted): changed to find next-unhidden, i.e. junk as well as deleted, if we're in hide-deleted mode. (build_tree): always call find_next_undeleted if we have a cursor. (build_flat): same. svn path=/trunk/; revision=24644
* ** See bug #53549, partial fix.Not Zed2004-01-301-0/+4
| | | | | | | | | | | | | | | | | | 2004-01-30 Not Zed <NotZed@Ximian.com> ** See bug #53549, partial fix. * em-folder-selector.c (emfs_create_name_activate): only emit the ok response if the ok button would be active (i.e. entered a valid path). ** See bug #52992. * message-list.c (message_list_hide_clear): save the hide state after its been cleared, so any popup windows inherit it. (message_list_hide_uids): same. svn path=/trunk/; revision=24534
* ** See bug #53320 and probably othersNot Zed2004-01-291-34/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-01-29 Not Zed <NotZed@Ximian.com> ** See bug #53320 and probably others * message-list.c (message_list_set_folder): NULL out message_list->folder when we clear it so it isn't left for another free when we switch again. 2004-01-29 Not Zed <NotZed@Ximian.com> ** See bug #52190. * message-list.c: Added folder/folder uri to the data stored for primary/secondary selection, uses a struct to store the data now. This is needed so when you cut/copy messages, and paste them, it doesn't end up 'pasting' the messages from the current folder, but from the one where the copy/cut took place. (clear_selection): helper to free data inside selection struct. 2004-01-29 Not Zed <NotZed@Ximian.com> ** See bug #53506. * mail-tools.c (mail_tools_folder_to_url): use a camelurl to do this properly, and handle fragment folder-paths. * em-composer-utils.c (em_utils_composer_send_cb): removed outbox_folder local, not necessary. svn path=/trunk/; revision=24511
* Migrate the ETree expanded state files as well as the GalView files.Jeffrey Stedfast2004-01-221-10/+10
| | | | | | | | | | | | | 2004-01-21 Jeffrey Stedfast <fejj@ximian.com> * em-migrate.c (em_migrate_1_4): Migrate the ETree expanded state files as well as the GalView files. * message-list.c: s/hide_save_state/save_hide_state/g and s/hide_load_state/load_hide_state/g to be more consistant with the other state saving function names. svn path=/trunk/; revision=24356
* ** See bug #53028.Not Zed2004-01-201-1/+3
| | | | | | | | | | | 2004-01-20 Not Zed <NotZed@Ximian.com> ** See bug #53028. * message-list.c (on_selection_changed_cmd): emit the cursor_activated if more than 1 item is selected also. svn path=/trunk/; revision=24319
* ** See bug #52989.Not Zed2004-01-201-6/+14
| | | | | | | | | | | 2004-01-20 Not Zed <NotZed@Ximian.com> ** See bug #52989. * message-list.c (hide_load_state): clear the hidden table if setup, before loading. svn path=/trunk/; revision=24316
* removed this like i asked radek to ages ago, just call the parentNot Zed2004-01-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-01-19 Not Zed <NotZed@Ximian.com> * mail-ops.c (add_vjunk_info, add_vtrash_info): removed this like i asked radek to ages ago, just call the parent directly. (add_vtrash_or_vjunk_info): renamed to something saner. add_special_info. (add_special_info): removed the 'unread count' parameter & return the added info. ** See bug #52854. * em-folder-tree.c (emft_tree_button_press): setup a FOLDER target for the popup menu. * em-popup.c (em_popup_target_free): implement free for TARGET_FOLDER, changed the target options somewhat. (em_popup_target_new_folder): implement folder selection target. Total Hack(tm) alert. (emp_standard_menu_factory): removed the stupid g_assert_if_not_reached() call. * message-list.c (message_list_destroy): NULL out the uid_nodemap when we destroy it. svn path=/trunk/; revision=24302
* Move 'message_list->folder = folder;' out of the uri compare if-block andJeffrey Stedfast2004-01-161-8/+9
| | | | | | | | | | | | 2004-01-16 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_set_folder): Move 'message_list->folder = folder;' out of the uri compare if-block and move it into the if-block that tests that folder != NULL. (regen_list_regen): Abort if the regen folder is not the same as the ml->folder. svn path=/trunk/; revision=24273
* Check that the folder isn't NULL (ie. no folder is selected). Fixes bugJeffrey Stedfast2004-01-061-1/+7
| | | | | | | | | | | | 2004-01-05 Jeffrey Stedfast <fejj@ximian.com> * em-folder-browser.c (emfb_list_message_selected): Check that the folder isn't NULL (ie. no folder is selected). Fixes bug #52207. * message-list.c (message_list_set_folder): Remove the cursor-activated idle callback. svn path=/trunk/; revision=24054
* put the style in .evolution.Not Zed2003-12-121-0/+3
| | | | | | | | | | | | | 2003-12-12 Not Zed <NotZed@Ximian.com> * mail-config.c (config_write_style): put the style in .evolution. ** See bug #52023. * message-list.c (message_list_select_uid): noop if we've been destroyed (foldre == NULL). svn path=/trunk/; revision=23932
* setup another image (followup completed) to flag status list.Not Zed2003-12-021-6/+15
| | | | | | | | | | | | 2003-12-02 Not Zed <NotZed@Ximian.com> * message-list.c (message_list_create_extras): setup another image (followup completed) to flag status list. (states_pixmaps[]): added flag_for_followup_done. (ml_tree_value_at): return 0,1 or 2 for completed icon. also use the real ints, these shouldn't have been true/false. Bug #43514. svn path=/trunk/; revision=23570
* Same.Jeffrey Stedfast2003-11-201-5/+5
| | | | | | | | | | | | | 2003-11-19 Jeffrey Stedfast <fejj@ximian.com> * em-utils.c (em_utils_selection_set_urilist): Same. * em-format-html-display.c (efhd_drag_data_get): Same as below. * em-folder-tree.c (drag_text_uri_list): Terminate each url of a text/uri-list with a \r\n. svn path=/trunk/; revision=23451
* merged spam filtering branchRadek Doulik2003-11-131-40/+72
| | | | svn path=/trunk/; revision=23302
* Don't #include e-name-western.h, since the code that uses it is commentedDan Winship2003-11-081-1/+0
| | | | | | | | | * message-list.c: Don't #include e-name-western.h, since the code that uses it is commented out, and we want to remove the local copy, but we don't want to make the mailer depend on the e-d-s copy if it's not even going to be using it. svn path=/trunk/; revision=23230
* Removed, use em_utils_selection_get_uidlist() instead. (drop_uid_list):Jeffrey Stedfast2003-10-231-8/+8
| | | | | | | | | | | | | | | | | | | 2003-10-22 Jeffrey Stedfast <fejj@ximian.com> * mail-component.c (parse_uid_list): Removed, use em_utils_selection_get_uidlist() instead. (drop_uid_list): Use em_utils_selection_get_uidlist() to parse the x-uid-list selection data and use mail_tool_uri_to_folder() directly since we have the uri (originally we expected the first component of the selection data to be the e-storage-set-view folder path rather than the uri). (folder_receive_drop_cb): Call gtk_drag_finish() here. * message-list.c: s/x-evolution-message/x-uid-list/ * em-utils.c: Same. svn path=/trunk/; revision=23004
* Fix for bug #48618.Jeffrey Stedfast2003-09-201-1/+0
| | | | | | | | | | | | | | 2003-09-19 Jeffrey Stedfast <fejj@ximian.com> Fix for bug #48618. * em-folder-view.c (emfv_list_message_selected): See if we have already loaded the message uid that has just been selected, if so - don't bother re-loading it. (emfv_list_done_message_selected): Update loaded_uid and loading_uid. svn path=/trunk/; revision=22628
* updated for camel namespace changesJeffrey Stedfast2003-09-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-09-18 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c: updated for camel namespace changes * em-folder-view.c: updated for camel namespace changes * em-format-html-display.c: updated for camel namespace changes * em-format-html-quote.c: updated for camel namespace changes * em-format.c: updated for camel namespace changes * em-popup.c: updated for camel namespace changes * em-utils.c: updated for camel namespace changes * mail-autofilter.c: updated for camel namespace changes * mail-ops.c: updated for camel namespace changes * mail-session.c: updated for camel namespace changes * message-list.c: updated for camel namespace changes * message-tag-followup.c: updated for camel namespace changes * importers/evolution-mbox-importer.c: updated for camel namespace changes 2003-09-18 Jeffrey Stedfast <fejj@ximian.com> * em-popup.c (emp_standard_menu_factory): Don't forget to initialise/increment 'i' when using it as an object id in the for-loop. * em-format.c (em_format_format_text): Initialise charset to NULL or it may be used uninitialised. Also include gnome-vfs-mime-handlers.h for gnome_vfs_mime_type_get_description(). svn path=/trunk/; revision=22610
* cvs removed.Not Zed2003-09-181-34/+456
| | | | | | | | | | | | | | | | | | | | | | | | | 2003-09-17 Not Zed <NotZed@Ximian.com> * folder-browser.c, folder-browser.h, folder-browser-ui.c folder-browser-ui.h, mail-callbacks.c, mail-callbacks.h mail-display.c, mail-display.h, mail-display-stream.c mail-display-stream.h, mail-format.c, mail-format.h mail-identify.c, mail-search.c, mail-search.h message-browser.c, message-browser.h, subscribe-dialog.c subscribe-dialog.h, mail-font-prefs.c, mail-font-prefs.h: cvs removed. * Makefile.am: Removed mail-font-prefs.[ch], hasn't been built for ages. * em-*.c: killed a bunch of printfs. * em-format-html-display.c (efhd_html_button_press_event): update for html object api chagnes. ** Merge in mail-refactor-2 branch. svn path=/trunk/; revision=22602
* temporarily reverting camel namespace changes until after other branches ↵Jeffrey Stedfast2003-08-271-2/+2
| | | | | | have been merged svn path=/trunk/; revision=22374
* updated for namespace changed made to camel-mime-utils.[c,h]Jeffrey Stedfast2003-08-261-2/+2
| | | | | | | | | | | | | | | | | | | | | 2003-08-25 Jeffrey Stedfast <fejj@ximian.com> * mail-display.c: updated for namespace changed made to camel-mime-utils.[c,h] * mail-format.c: updated for namespace changed made to camel-mime-utils.[c,h] * mail-ops.c: updated for namespace changed made to camel-mime-utils.[c,h] * message-list.c: updated for namespace changed made to camel-mime-utils.[c,h] * message-tag-followup.c: updated for namespace changed made to camel-mime-utils.[c,h] svn path=/trunk/; revision=22357
* translate the local time format.Not Zed2003-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-08-22 Not Zed <NotZed@Ximian.com> * mail-format.c (write_date): translate the local time format. 2003-08-20 David Woodhouse <dwmw2@infradead.org> * mail-format.c (write_date): Use e_utf8_strftime() to generate localised time; avoid gratuitous extra translation and array of day names, and the autoconf magic which made Not Zed dislike the inclusion of the timezone name. 2003-08-05 Not Zed <NotZed@Ximian.com> ** See bug #32732 * message-list.c (mail_regen_list): use thread_new. * mail-local.c (reconfigure_response): use thread_new. * mail-display.c (stream_write_or_redisplay_when_loaded): use thread_new. * mail-config.c (mail_config_check_service): use thread_new rather than queue. * mail-callbacks.c (view_msg): change to use mail_get_messages(), fixes FIXME. (do_view_messages): handle get_messages callback. (do_view_message): removed. * mail-ops.c (mail_get_folderinfo): Use a new thread thread semantic. (mail_save_part): " (mail_store_set_offline): " (mail_sync_folder): use queued_slow thread queue. (mail_expunge_folder): " (mail_empty_trash): " svn path=/trunk/; revision=22340
* Fix type warnings (folder_browser_toggle_caret_mode): Remove unusedDan Winship2003-07-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * folder-browser.c (message_list_drag_data_get): Fix type warnings (folder_browser_toggle_caret_mode): Remove unused variable. * folder-browser-ui.c (basename): remove unused function * mail-account-gui.c (mail_account_gui_build_extra_conf): Fix warnings * mail-callbacks.c (empty_trash): Remove unused variable. * mail-display.c: #include gal/widgets/e-gui-utils.h for e_auto_kill_popup_menu_on_selection_done * mail-importer.c: #include e-util/e-path.h for e_path_to_physical * mail-session.c (main_play_sound): don't declare filename to be const and then free it. * mail-vfolder.c (vfolder_edit_rule, vfolder_gui_add_rule): Fix casts * message-list.c (build_flat_diff): Fix a typo in the non-BROKEN_ETREE code svn path=/trunk/; revision=21903
* Use the newer utf8 versions of the e_strftime*() functions since ourJeffrey Stedfast2003-07-021-5/+5
| | | | | | | | | | | | | | | | 2003-06-27 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (filter_date): Use the newer utf8 versions of the e_strftime*() functions since our format strings are all now in UTF-8. * mail-display.c (mail_display_render): Use the newer e_utf8_strftime_fix_am_pm(). * mail-callbacks.c (mail_generate_reply): Use e_utf8_strftime(), otherwise we can end up with invalid utf-8. svn path=/trunk/; revision=21712
* Might fix bug #45368 but I wouldn't bet on it.Jeffrey Stedfast2003-06-251-2/+2
| | | | | | | | | | | | | | | | | 2003-06-24 Jeffrey Stedfast <fejj@ximian.com> Might fix bug #45368 but I wouldn't bet on it. * message-browser.c (message_browser_new): Record the signal id for folder_loaded. (message_browser_folder_loaded): disconnect by id rather than searching for the handler. Save the id of the message_list_built signal handler. (message_browser_message_list_built): Disconnect the handler by id. (message_browser_destroy): Disconnect the signal handlers by id. svn path=/trunk/; revision=21536
* Save the idle_idDan Winship2003-06-241-1/+1
| | | | | | * message-list.c (on_selection_changed_cmd): Save the idle_id svn path=/trunk/; revision=21517
* Only save state if we have a folder reference. Fixes some warnings aboutJeffrey Stedfast2003-06-191-1/+4
| | | | | | | | | | 2003-06-18 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (hide_save_state): Only save state if we have a folder reference. Fixes some warnings about casting a NULL object to a CamelFolder. svn path=/trunk/; revision=21470
* Don't display an unread icon for a parent message status if it has unreadJeffrey Stedfast2003-06-181-13/+1
| | | | | | | | | | | | 2003-06-16 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (ml_tree_value_at): Don't display an unread icon for a parent message status if it has unread children but has been read itself. Instead, show that we have unread children by just making the message test bold (which it was already doing, so yay... this was easy). Fixes bug #42630. svn path=/trunk/; revision=21457
* ** See bug #44609Not Zed2003-06-171-2/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | 2003-06-16 Not Zed <NotZed@Ximian.com> ** See bug #44609 * mail-vfolder.c (vfolder_edit_rule): put the ok/cancel buttons in the stupid gnome 2 order. ** See bug #33593 * message-list.c (on_selection_changed_cmd): also listedn to selection changed events, since the etable api has changed. (get_selected_cb): helper for above. (message_list_construct): hook to selection change signal. * mail-callbacks.c (composer_send_queued_cb): Unref the composer to match the ref composer_send_cb(); ** See bug #44519 * message-browser.c (message_browser_message_list_built): We want to disconnect from the messagelist, not folderbrowser signal. svn path=/trunk/; revision=21452
* Use mail-config's gconf client. (target_date_new): Same.Jeffrey Stedfast2003-06-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-06-06 Jeffrey Stedfast <fejj@ximian.com> * message-tag-followup.c (get_week_start_day): Use mail-config's gconf client. (target_date_new): Same. * message-list.c (message_list_set_folder): Use mail-config's gconf client. (mail_regen_list): Same. * mail-tools.c (mail_tool_quote_message): Use mail-config's gconf client. (mail_tool_forward_message): Same. * mail-session.c (main_get_filter_driver): Use mail-config's gconf client. * mail-preferences.c (mail_preferences_init): Use mail-config's gconf client. (mail_preferences_finalise): Don't unref the gconf client. * mail-format.c (write_headers): Use mail-config's gconf client. (mail_format_data_wrapper_write_to_stream): Same. (handle_text_plain): And here. * mail-display.c (save_data_cb): Use mail-config's gconf client. (save_part): Same. (on_url_requested): Here too. (mail_text_write): And here. (mail_display_init): And here. (mail_display_destroy): Here too. (mail_display_new): Again here. * mail-composer-prefs.c (sig_add_cb): Use mail-config's gconf client. (mail_composer_prefs_construct): Same. * mail-callbacks.c (ask_confirm_for_unwanted_html_mail): Use mail-config's gconf client. (ask_confirm_for_empty_subject): Same. (ask_confirm_for_only_bcc): Here too. (composer_get_message): And here. (create_msg_composer): Again here. (mail_generate_reply): Same. (forward): And here. (transfer_msg_done): " (delete_msg): " (confirm_expunge): " * component-factory.c (owner_unset_cb): Use mail-config's gconf client. * folder-browser-ui.c (folder_browser_ui_add_message): Use the mailer's gconf client. (folder_browser_ui_add_list): Same. (folder_browser_ui_add_global): Here too. * folder-browser.c (save_cursor_pos): Use the mailer's gconf client. (folder_browser_set_message_preview): Same. (folder_browser_toggle_preview): Here too. (folder_browser_toggle_threads): And here. (folder_browser_toggle_hide_deleted): Here as well. (folder_browser_set_message_display_style): And here. (fb_resize_cb): Here. (paned_realised): And here. (done_message_selected): And everywhere... * mail-account-gui.c (sig_add_new_signature): Use the mailer gconf client. * mail-config.c (mail_config_get_gconf_client): New function to return the global GConfClient used by the mailer. (mail_config_write_on_exit): On exit, free our objects and such. (mail_config_signature_run_script): Use config->gconf. 2003-06-04 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (invert_selection): Get rid of the if-focused code, that will always prevent the etree from getting the selection inverted because the menu item will always have focus at this time. Fix for bug #43972. it takes more than good relations to some of the major spirits in this branch of the multiverse to write apps that don't leak gconf-client refs, good coding is important, too. that... or a 100-megaton-kill-o-zap bomb svn path=/trunk/; revision=21410
* Add #include to fix warning.Jeremy Katz2003-05-171-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-05-17 Jeremy Katz <katzj@redhat.com> * mail-offline-handler.c: Add #include to fix warning. * mail-mt.c (mail_msg_new): Use glib macros for pointer/int conversions. (mail_msg_free): Likewise. (mail_msg_cancel): Likewise. (mail_msg_wait): Likewise. (mail_msg_active): Likewise. * mail-session.c (main_register_timeout): Likewise. (register_timeout): Likewise. (main_remove_timeout): Likewise. (remove_timeout): Likewise. * message-list.c (ml_value_to_string): Likewise. * mail-identify.c: Add #include to fix warning. * mail-config.c (config_write_fonts): Don't pass extra arguments to g_warning. * mail-callbacks.c: Add #include to fix warning. svn path=/trunk/; revision=21222
* To be consistant with the message-list envelope toggle, undelete theJeffrey Stedfast2003-05-031-2/+19
| | | | | | | | | | | | | | | | | | | | | 2003-04-30 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (mark_as_unseen): To be consistant with the message-list envelope toggle, undelete the message when we unmark the Seen flag here as well. Fixes bug #42118. 2003-04-30 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (ml_tree_value_at): Fixed to return the correct values (swapped) in order to fix bug #42120. 2003-04-30 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (regen_list_regened): Save the tree state before we tear down the tree and then load it back again. yay. Fixes bug #42170 and #40074. svn path=/trunk/; revision=21047
* ** See bug #41972Not Zed2003-04-301-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | 2003-04-29 Not Zed <NotZed@Ximian.com> ** See bug #41972 * message-list.c (ml_tree_value_at): fix (void *) casts on trinary ops. * folder-browser.c (on_right_click): Store the label tag in the label callback data, not the translated name. * mail-config.c (label_defaults[]): Initialise with the tag values. (config_clear_labels): free tag field. (config_cache_labels): setup the tag field based on the position of the label name. (mail_config_get_label_color_by_name): Lookup colour by the untranslated TAG, not the translated/customisable tag. * mail-config.h (MailConfigLabel): Add a tag field, we were using the translated name as the label(!). svn path=/trunk/; revision=21008
* create a stock cancel button with a cancel all text. (build_dialogue):Not Zed2003-04-151-0/+3
| | | | | | | | | | | | | | | 2003-04-14 Not Zed <NotZed@Ximian.com> * mail-send-recv.c (build_dialogue): create a stock cancel button with a cancel all text. (build_dialogue): Create stock-like cancel buttons with no accelerators. A workaround for #41043. * message-list.c (ml_tree_value_at): if the node is the root node, do nothing. etable shouldn' really be searching the root node if it isn't visible ...? For #41190. svn path=/trunk/; revision=20842
* For string columns, never return NULL - always return "" if the value isJeffrey Stedfast2003-04-081-12/+16
| | | | | | | | | | 2003-04-07 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (ml_tree_value_at): For string columns, never return NULL - always return "" if the value is empty. Fixes bug #40728. svn path=/trunk/; revision=20730
* Fixes bug #40074.Jeffrey Stedfast2003-03-271-0/+8
| | | | | | | | | | | | | | 2003-03-26 Jeffrey Stedfast <fejj@ximian.com> Fixes bug #40074. * folder-browser-factory.c (control_deactivate): Save message-list state. * message-list.c (message_list_save_state): Save the various states. svn path=/trunk/; revision=20525
* Register a destroy virtual method. (mail_accounts_tab_destroy): SetJeffrey Stedfast2003-02-121-12/+13
| | | | | | | | | | | | | | 2003-02-11 Jeffrey Stedfast <fejj@ximian.com> * mail-accounts.c (mail_accounts_tab_class_init): Register a destroy virtual method. (mail_accounts_tab_destroy): Set mail_display->destroyed = TRUE. * message-list.c (message_list_destroy): Set mail_display->destroyed = TRUE. This is a workaround for the GTK_OBJECT_DESTROYED() macro that we used to use before. svn path=/trunk/; revision=19884
* Use g_signal_emit() rather than gtk_signal_emit(). (build_flat): SameJeffrey Stedfast2003-02-111-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-02-10 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (build_tree): Use g_signal_emit() rather than gtk_signal_emit(). (build_flat): Same here. * mail-signature-editor.c: #include <string.h> * mail-vfolder.c: #include <string.h> * mail-session.c: #include <string.h> * mail-search.c: #include <string.h> * mail-mt.c: #include <string.h> * mail-ops.c (save_part_save): Use strcasecmp() instead of g_strcasecmp(). * mail-local.c: #include <string.h> (reconfigure_folder_reconfigured): Use a GtkDialog instead of gnome_error_dialog(). * mail-format.c (find_preferred_alternative): Use g_ascii_strdown since g_strdown is deprecated. (fake_mime_part_from_data): Removed, no longer used it seems. (destroy_part): Also removed. * mail-display.c (make_popup_window): Replace call to gtk_window_set_polociy() with gtk_window_set_resizable() instead. (popup_size_allocate_cb): Use gtk_window_set_position() with GTK_WIN_POS_MOUSE instead of calculating the position to put it in. svn path=/trunk/; revision=19878
* updated for e scroll frame --> gtk scrolled windowRadek Doulik2003-02-051-1/+1
| | | | svn path=/trunk/; revision=19736
* Get the thread_subject setting here instead of in regen_list_regen sinceJeffrey Stedfast2003-02-041-7/+7
| | | | | | | | | | | | 2003-02-03 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (mail_regen_list): Get the thread_subject setting here instead of in regen_list_regen since that function will be called in another thread and we can't make corba calls in anything but the main thread. (regen_list_regen): Don't make CORBA calls here! (shame on me). svn path=/trunk/; revision=19715
* New function to return a cached list of labels.Jeffrey Stedfast2003-02-011-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | 2003-01-31 Jeffrey Stedfast <fejj@ximian.com> * mail-config.c (mail_config_get_labels): New function to return a cached list of labels. (mail_config_get_label_color_by_name): New convenience function to search the cached labels. (mail_config_get_label_color_by_index): Same. (mail_config_init): Cache the labels and also listen for changes to them in the gconf db. (config_cache_labels): Internal function to cache the labels. * folder-browser.c (on_right_click): Fixed the label colours in the menu by using the cached linked list of labels. * mail-preferences.c (colorpicker_set_color): Now takes a string argument allowing us to get rid of converting a string into an rgb guint32 all over the place when trying to set defaults, since we now store colors in gconf as strings. (mail_preferences_construct): Use the cached labels (they are already parsed for us). svn path=/trunk/; revision=19694
* removed a FIXME commentJeffrey Stedfast2003-01-271-1/+0
| | | | svn path=/trunk/; revision=19647
* reverted fe casts and added ChageLog entriesRadek Doulik2003-01-151-1/+1
| | | | | | | | | | | | | | 2003-01-14 Radek Doulik <rodo@ximian.com> * folder-browser.c (etree_key): use gtk_scrolled_window_* functions for mail_display->scroll * mail-display.c (mail_display_new): use gtk_scrolled_window_* functions * mail-display.h: use GtkScrolledWindow instead of EScrollFrame svn path=/trunk/; revision=19463
* EScrollFrame --> GtkScrolledWindowRadek Doulik2003-01-151-4/+2
| | | | svn path=/trunk/; revision=19440
* Use gconf to get the paned size. (folder_browser_set_message_preview):Jeffrey Stedfast2003-01-081-22/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-01-07 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (save_cursor_pos): Use gconf to get the paned size. (folder_browser_set_message_preview): Same. (folder_browser_toggle_hide_deleted): Use gconf to set the hide-deleted state. (folder_browser_set_message_display_style): Same but for the message_display_style. (fb_resize_cb): Save the paned_size via gconf. (paned_size_changed): Callback for when the paned_size gets changed. Change the folder-browser's paned size to the new setting. (folder_browser_gui_init): Listen to changes to the paned_size and also get the initial size from gconf. * message-list.c (message_list_set_folder): Use gconf. (regen_list_regen): Use gconf. * message-browser.c (transfer_msg_done): Use gconf to get the hide_deleted setting. * mail-account-gui.c (sig_add_new_signature): Use gconf. * folder-browser-ui.c (folder_browser_ui_add_list): Use gconf. * folder-browser.c (save_cursor_pos): Use gconf. (folder_browser_set_message_preview): Same. (folder_browser_toggle_hide_deleted): Here too. (folder_browser_set_message_display_style): And here. (folder_browser_gui_init): Here too. (done_message_selected): And here. * mail-config.c (mail_config_get_thread_subject): Removed. (mail_config_set_thread_subject): Removed. (mail_config_get_empty_trash_on_exit): Removed. (mail_config_set_empty_trash_on_exit): Removed. (mail_config_get_last_filesel_dir): Removed. (mail_config_set_last_filesel_dir): Removed. (mail_config_get_hide_deleted): Removed. (mail_config_set_hide_deleted): Removed. (mail_config_get_paned_size): Removed. (mail_config_set_paned_size): Removed. (mail_config_get_send_html): Removed. (mail_config_set_send_html): Removed. (mail_config_get_confirm_unwanted_html): Removed. (mail_config_set_confirm_unwanted_html): Removed. (mail_config_get_citation_highlight): Removed. (mail_config_set_citation_highlight): Removed. (mail_config_get_citation_color): Removed. (mail_config_set_citation_color): Removed. (mail_config_get_do_seen_timeout): Removed. (mail_config_set_do_seen_timeout): Removed. (mail_config_get_mark_as_seen_timeout): Removed. (mail_config_set_mark_as_seen_timeout): Removed. (mail_config_get_prompt_empty_subject): Removed. (mail_config_set_prompt_empty_subject): Removed. (mail_config_get_prompt_only_bcc): Removed. (mail_config_set_prompt_only_bcc): Removed. (mail_config_get_confirm_expunge): Removed. (mail_config_set_confirm_expunge): Removed. (mail_config_get_confirm_goto_next_folder): Removed. (mail_config_set_confirm_goto_next_folder): Removed. (mail_config_get_goto_next_folder): Removed. (mail_config_set_goto_next_folder): Removed. (mail_config_get_http_mode): Removed. (mail_config_set_http_mode): Removed. (mail_config_get_default_forward_style): Removed. (mail_config_set_default_forward_style): Removed. (mail_config_get_default_reply_style): Removed. (mail_config_set_default_reply_style): Removed. (mail_config_get_message_display_style): Removed. (mail_config_set_message_display_style): Removed. (mail_config_get_default_charset): Removed. (mail_config_set_default_charset): Removed. (mail_config_get_x_mailer_display_style): Removed. (mail_config_set_x_mailer_display_style): Removed. * subscribe-dialog.c (populate_store_list): Use the list of accounts. We can't get the list of sources anymore. (populate_store_foreach): Updated. * mail-callbacks.c (guess_me_from_accounts): Use account->enabled. (mail_generate_reply): Same. (empty_trash): Here too. * mail-accounts.c (account_delete_clicked): Use account->enabled rather than source->enabled. (account_able_clicked): Same. (account_cursor_change): Here too. (mail_accounts_load): And here. * component-factory.c (owner_unset_cb): Use gconf empty-on-exit settings. (mail_load_storages): Use account->enabled rather than account->source->enabled. The struct changed. * mail-composer-prefs.c (sig_add): Get the send_html pref from gconf. * message-tag-followup.c (target_date_new): Use gconf. * mail-config.c (mail_config_get_week_start_day): Removed. * mail-tools.c (mail_tool_quote_message): Use gconf here too, but we don't need to parse the colour - just use it as a raw string. (mail_tool_forward_message): Use gconf. * mail-format.c (mail_format_data_wrapper_write_to_stream): Use gconf. (write_headers): Use gconf. (handle_text_plain): Same. * mail-display.c (mail_text_write): Updated to use gconf and parse GdkColour strings. (on_url_requested): Updated to use gconf. * mail-callbacks.c (ask_confirm_for_unwanted_html_mail): Use gconf rather than the old mail-config APIs which will be removed. (ask_confirm_for_empty_subject): Same. (ask_confirm_for_only_bcc): Here too. (composer_get_message): And here. (create_msg_composer): Same. (transfer_msg_done): Again here. (delete_msg): Here too. (confirm_expunge): And finally here. * mail-config.c (mail_config_write): Use gconf. (mail_config_get_sources): Removed. * mail-account-gui.c (mail_account_gui_save): No need to save enabled-state anymore for a source. * mail-config-druid.c (wizard_finish_cb): Instead of setting account->source->enabled to TRUE, just set account->enabled to TRUE. The structures changed a bit. * mail-send-recv.c (mail_send_receive): Get the list of accounts instead of sources, and pass them along to build_dialogue. I'm trying to get rid of the mail_config_get_sources() api. (mail_autoreceive_setup): Here too. * mail-config.c (mail_config_get_filter_log): Removed. (mail_config_set_filter_log): Removed. (mail_config_get_filter_log_path): Removed. (mail_config_set_filter_log_path): Removed. (mail_config_get_new_mail_notify): Removed. (mail_config_set_new_mail_notify): Removed. (mail_config_get_new_mail_notify_sound_file): Removed. (mail_config_set_new_mail_notify_sound_file): Removed. * mail-session.c (main_get_filter_driver): Updated to use the gconf settings. svn path=/trunk/; revision=19271
* frobbed around with these till it exits without crashing.Not Zed2002-12-031-27/+38
| | | | | | | | | | | | | | | | 2002-12-03 Not Zed <NotZed@Ximian.com> * folder-browser.c (folder_browser_finalise/destroy): frobbed around with these till it exits without crashing. * message-list.c (message_list_destroy): made a destroy handler again (was dispose). Frobbed around with this and finalise till it can destroy without crashing. * message-browser.c (message_browser_new): ref/sink the folderbrowser. svn path=/trunk/; revision=18991
* Duh idiot, "un-fixed" the memleak i added.Not Zed2002-11-261-1/+0
| | | | | | | | | | | | | | | | | | | | 2002-11-26 Not Zed <NotZed@Ximian.com> * message-list.c (get_normalised_string): Duh idiot, "un-fixed" the memleak i added. * mail-callbacks.c (composer_get_message): Set parent window in message dialogue & DESTROY_WITH_PARENT flag. (composer_save_draft_cb): (configure_mail): (check_send_configuration): Add DESTROY_WITH_PARENT flag to gtk_message_dialog's (local_configure_done): remove some unecessary/wrong casts. (empty_trash_expunged_cb): " (do_mail_print): use gtk_window_set_transient_for instead of e_dialog_set_parent. svn path=/trunk/; revision=18923
* gtk_widget_set_parent_window -> gtk_window_set_transient_for.Not Zed2002-11-261-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-26 Not Zed <NotZed@Ximian.com> * mail-account-editor.c (mail_account_editor_new): gtk_widget_set_parent_window -> gtk_window_set_transient_for. * mail-callbacks.c (composer_send_queued_cb): dont unref composer. * message-browser.c (message_browser_destroy): moved back from finalise. 2002-11-25 Not Zed <NotZed@Ximian.com> * message-list.c (message_list_dispose): move saving tree state here. (message_list_finalise): And take it from here. * mail-display.c (mail_display_destroy): @#$@# gtk. changed this around a bit. (mail_display_init): Fix prototype, its a gobject. (mail_display_init): ref/sink the invisible gtkobject. svn path=/trunk/; revision=18919
* Want a (GWeakNotify) cast here, not (GWeakNotify *).Ettore Perazzoli2002-11-151-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * component-factory.c (owner_set_cb): Want a (GWeakNotify) cast here, not (GWeakNotify *). * subscribe-dialog.c (fete_init): g_object_set() instead of gtk_object_set(). (populate_store_list): Likewise. (menu_item_selected): g_object_get_data() instead of gtk_object_get_data(). * message-list.c (message_list_create_extras): g_object_set() instead of gtk_object_set(). * message-browser.c (message_browser_message_list_built): g_object_get_data() instead of gtk_object_get_data(). * mail-vfolder.c (edit_rule_response): g_object_get_data() instead of gtk_object_get_data(). * mail-summary.c (generate_folder_summaries): g_object_unref() the context instead of gtk_object_destroy(). * mail-local.c (reconfigure_response): g_object_get_data() instead of gtk_object_get_data(). * mail-display.c (pixbuf_gen_idle): g_object_unref() the GdkPixbuf loader instead of gtk_object_destroy(). (pixbuf_gen_idle): Likewise. (embeddable_destroy_cb): Likewise. * mail-config-druid.c (mail_config_druid_destroy): No need to gtk_object_destroy() the GladeXML object. (construct): g_object_set() instead of gtk_object_set(). * folder-browser.c (folder_browser_gui_init): g_object_get_data() instead of gtk_object_get_data(). svn path=/trunk/; revision=18752
* Commented out stuff that doesn't build yet. Also fixed idl build rule.Not Zed2002-11-121-80/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-13 Not Zed <NotZed@Ximian.com> * Makefile.am: Commented out stuff that doesn't build yet. Also fixed idl build rule. importers still not built. * main.c (main): bonobactivationise. remove push visual/colormap. (main): no longer activate activation, let bonobo_init do it. * mail-signature-editor.c (menu_help): Change help api. * mail-session.c (user_message_destroy_noreply): removed. Not used? * mail-local.c (load_metainfo): xml root->children. * mail-format.c (g_string_append_len): Removed, it exists now. 2002-11-12 Not Zed <NotZed@Ximian.com> * subscribe-dialog.c: gnome2ised, use gtkdialog. (subscribe_get_global_extras): use a weak ref rather than destroy signal. * message-tag-followup.c: gnome2ised. * message-tag-editor.c: gnome2ised & converted to gtkdialog. * message-list.c: gnome2ised. (message_list_finalise): From destroy method. maybe should be destroy still. * message-browser.c: port to gnome2 (message_browser_finalise): renamed from destroy method. * mail-stream-gtkhtml.c: removed redundant camel_class_get_global_classfuncs() call. * mail-signature-editor.c: gtkdialogised, & bonobo api changes. * mail-search-dialogue.c: gtkdialogised. * mail-folder-cache.c: cleaned up camel ref/hook casts. * mail-composer-prefs.c (mail_composer_prefs_get_type): convert to gtype. * mail-font-prefs.c (mail_font_prefs_destroy): from finalise. * mail-config.c: s/bonobo_config/e_config_listener/ Added /apps/Evolution prefix to the evolution keys. Changed to use e_config_listener, etc. (mail_config_init): remove bonobo_config stuff. (mail_config_check_service): gtk dialogise. (check_response): from check_cancelled. * mail-config-druid.c (mail_config_druid_destroy): renamed from _finalize, turned into destroy handler. (construct): set type to toplevel, GTK_WINDOW_DIALOG no longer exists. * mail-config-factory.c (mail_config_register_factory): bonobo api changes. * mail-crypto.c (mail_crypto_get_pgp_cipher_context): cleaned up unref casts. * mail-display.c (write_data_to_file): gnome->gtkdialog. (on_link_clicked): use ascii_str*cmp on url. (save_part): g_path stuff. (launch_cb): gtk dialog. (pixmap_press): de-oafify. (pixbuf_for_mime_type): gnome-vfs api changes. (do_attachment_header): Change the pixmap to a gtkimage. (do_signature): " (pixbuf_gen_idle): " (do_attachment_header): ascii_str*cmp (do_attachment_header): gnome pixmap->gtkimage. (mail_display_destroy): protect against gtk mentalness. (html_button_press_event): ascii_str*cmp (drag_data_get_cb): added comment for translators of filename. * mail-format.c (component_supports): de-oafise. (is_anonymous): ascii_strncmp (attachment_header): remove utf8<>locale stuff, and gnomevfs api changes. (format_mime_part): fix g_strdown call. (write_field_row_begin): kill utf8->gtk stuff. (write_address): " (default_header_index): ascii_strcasecmp (handle_text_plain): " (handle_text_enriched): " (handle_multipart_encrypted): remove utf/gtk stuff. (handle_message_external_body): ascii_str*cmp * mail-identify.c (mail_identify_mime_part): (identify_by_magic): gnome vfs api changes. * mail-importer.c: Converted. * mail-local.c (load_metainfo): xml childs -> children. (mls_get_folder): g_strerror. (mls_delete_folder): g_strerror. (reconfigure_got_folder): Gnome->GtkDialog (reconfigure_response): from reconfigure_clicked. * mail-mt.c (mail_msg_check_error): gnome -> gtk dialog (error_response): renmae from error_gone. destroy widget on any response. * mail-offline-handler.c (impl_finalise): renamed from impl_destroy since thats what it should be anyway. * mail-ops.c: removed utf8 widget conversion & camel_object_un/ref casts. * mail-preferences.c (mail_preferences_get_type): glib2'ised. * mail-search.c (mail_search_finalise): renmaed from destroy & properly chain. (mail_search_get_type): glib2 & make gtkdialog parent. (entry_run_search): run search when entry activated. not sure if gtkdialog has anohter way to do this on an arbitrary widget. * mail-send-recv.c (dialogue_response): renamed from clicked. Use gtkdialog. * mail-session.c (request_password_deleted): removed, redundant. (pass_response): rename from pass_got, changed for gtkdialog. (user_message_destroy): Removed, redundant. (user_message_response): Renamed from user_message_clicked. 2002-11-11 Not Zed <NotZed@Ximian.com> * mail-stream-gtkhtml.c (mail_stream_gtkhtml_class_init): dont use get_global_classfuncs, just get the type * mail-tools.c: converted gnome2 api's. * mail-vfolder.c (vfolder_editor_response): clicked->response. (vfolder_editor_destroy): Removed. (vfolder_edit): gtk dialog api (edit_rule_response): clicked->response. (vfolder_edit_rule): gnomedialog->gtkdialog. (vfolder_gui_add_rule): " (new_rule_clicked): clicked->response svn path=/trunk/; revision=18723
* rename this from "Mail.idl" so that the generated .h file won't overwriteDan Winship2002-09-131-1/+0
| | | | | | | | | | | | | | | | | * Mailer.idl: rename this from "Mail.idl" so that the generated .h file won't overwrite "mail.h" on Mac OS X. Remove some never-implemented IDL and add MailConfig_removeAccount. * Makefile.am: Update for IDL rename * mail-config.c: #include Mailer.h, not Mail.h (impl_GNOME_Evolution_MailConfig_removeAccount): Implement. * folder-info.c: #include Mailer.h, not Mail.h * message-list.c: Remove Mail.h include. svn path=/trunk/; revision=18060
* If we already have a folder, make sure we unref/unhook from it. Fixes aNot Zed2002-09-101-1/+11
| | | | | | | | | | | | | 2002-09-10 Not Zed <NotZed@Ximian.com> * folder-browser.c (got_folder): If we already have a folder, make sure we unref/unhook from it. Fixes a crash on exit. * message-list.c (message_list_hide_clear): clear thread tree cache if set. (message_list_set_search): Same. For bug #28834. svn path=/trunk/; revision=18029
* Pass mail_config_get_thread_subject() as the third argument toJeffrey Stedfast2002-08-281-1/+2
| | | | | | | | | | | | | | | | | | | 2002-08-27 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (regen_list_regen): Pass mail_config_get_thread_subject() as the third argument to camel_folder_thread_messages_new(). * mail-config.c (config_read): Read in the thread_by_subject config option. (mail_config_write_on_exit): Save the thread_by_subject config option. (mail_config_get_thread_subject): New function to get the thread_subject value. (mail_config_set_thread_subject): New function to set the thread_subject value. svn path=/trunk/; revision=17881
* Don't bother overloading the timeout virtual methods since they don'tJeffrey Stedfast2002-08-221-2/+2
| | | | | | | | | | | | 2002-08-21 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (class_init): Don't bother overloading the timeout virtual methods since they don't exist anymore. * mail-folder-cache.c (mail_note_store): Register a ping timeout callback to ping each store to keep the connections alive. svn path=/trunk/; revision=17831
* Once we hit the target node, update the cursor_uid if it's set. FixesPeter Williams2002-08-211-0/+4
| | | | | | | | | 2002-08-20 Peter Williams <peterw@ximian.com> * message-list.c (search_func): Once we hit the target node, update the cursor_uid if it's set. Fixes #29085. svn path=/trunk/; revision=17821
* Only count hidden messages which are in the folder. Should probablyNot Zed2002-08-061-2/+24
| | | | | | | | | | 2002-08-06 Not Zed <NotZed@Ximian.com> * message-list.c (message_list_hidden): Only count hidden messages which are in the folder. Should probably maintain hidden table better. For #4334. svn path=/trunk/; revision=17707
* If we are not in interactive mode, don't display error dialogs.Jeffrey Stedfast2002-08-061-9/+22
| | | | | | | | | | | | | | | | | | 2002-08-05 Jeffrey Stedfast <fejj@ximian.com> * mail-mt.c (mail_msg_check_error): If we are not in interactive mode, don't display error dialogs. * component-factory.c (interactive_cb): Updated to use the new function mail_session_set_interactive(). (owner_unset_cb): Same here. * mail-session.c (mail_session_set_interactive): Renamed from mail_session_enable_interaction(). (mail_session_get_interactive): New function to get the interactive state. svn path=/trunk/; revision=17702
* Updated to use the new Follow-Up tags. Instead of storing a stringJeffrey Stedfast2002-08-031-36/+17
| | | | | | | | | | | | | | | | | | | | | | | | 2002-08-02 Jeffrey Stedfast <fejj@ximian.com> * mail-display.c (mail_display_render): Updated to use the new Follow-Up tags. Instead of storing a string containing the follow-up tag value, we now have to store the CamelMessageInfo. (mail_display_destroy): Unref the folder and the message-info. * folder-browser.c (followup_tag_complete): No longer needed. (on_right_clicked): Use the individual follow-up tags to decide whether or not to enable something. * message-list.c (ml_tree_value_at): Update to use the new Follow-Up tags. * mail-callbacks.c (flag_for_followup): Update to use the new MessageTagEditor API. (tag_editor_ok): Update this too. (flag_followup_completed): Updated this too. (flag_followup_clear): Set all the follow-up tag values to "". svn path=/trunk/; revision=17691
* Remove the assert, and always copy over the threadtree which representsNot Zed2002-07-221-5/+4
| | | | | | | | | | | 2002-07-22 Not Zed <NotZed@Ximian.com> * message-list.c (regen_list_regened): Remove the assert, and always copy over the threadtree which represents the current view, unreffing the old one if set. For #28021. Haven't tested this a lot, but i guess it cant be worse than what is there. svn path=/trunk/; revision=17524
* Lookup the label colour based on the label token, not an integer.Not Zed2002-07-161-1/+3
| | | | | | | | | | | | | | 2002-07-15 Not Zed <NotZed@Ximian.com> * message-list.c (ml_tree_value_at): Lookup the label colour based on the label token, not an integer. * folder-browser.c (on_right_click): Lookup the label name from the filter type. Sigh, a bunch of other code should do similar but i'm going to leave it as integers. (set_msg_label): Set the label directly. svn path=/trunk/; revision=17473
* New convenience function to find the first parent node that is visible andJeffrey Stedfast2002-06-191-2/+23
| | | | | | | | | | | | | | | | | 2002-06-18 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_change_first_visible_parent): New convenience function to find the first parent node that is visible and emit a changed signal on it. (main_folder_changed): If a message changed, call change_first_visible_parent() in case we are in a collapsed thread so that our first visible parent gets updated as well. Fixes bug #26263. * component-factory.c (storage_remove_folder): Simplify the error checking. svn path=/trunk/; revision=17228
* New convenience function to get a cached normalised string.Jeffrey Stedfast2002-06-181-56/+127
| | | | | | | | | | | | | | | | | | 2002-06-17 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (get_normalised_string): New convenience function to get a cached normalised string. (subject_compare): Removed, as we strip Re:'s when normalising the subject strings now. (ml_tree_value_at): Added support for the normalised columns (used for a sorting optimisation). (message_list_init): Initialise normalised_hash. (message_list_destroy): Destroy normalised_hash. (message_list_create_extras): Removed subject_compare. (main_folder_changed): De-cache normalised strings for any removed uids. svn path=/trunk/; revision=17213
* If we dont support searching, dont try to.Not Zed2002-06-171-2/+5
| | | | | | | | | 2002-06-17 Not Zed <NotZed@Ximian.com> * message-list.c (regen_list_regen): If we dont support searching, dont try to. svn path=/trunk/; revision=17208
* Move m->complete = TRUE; to within the cancel-check block, this wayJeffrey Stedfast2002-06-121-2/+2
| | | | | | | | | | | 2002-06-11 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (regen_list_regen): Move m->complete = TRUE; to within the cancel-check block, this way complete only ever gets set to TRUE if we weren't cancelled. I assume this is how it was supposed to work. svn path=/trunk/; revision=17169
* If we dont get a folder, dont try and get details off it. Should get ridNot Zed2002-06-111-29/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-06-11 Not Zed <NotZed@Ximian.com> * folder-info.c (do_get_info): If we dont get a folder, dont try and get details off it. Should get rid of most of those annoying summary warnings, but not the cause of them. 2002-06-06 Not Zed <NotZed@Ximian.com> * message-list.c (mail_regen_list): Keep track of the regeneration request in a list. (regen_list_free): Remove the request from the regenreation list. (message_list_set_folder): If there are any outstanding regneration requests, cancel them. (regen_list_regened): If we were cancelled, do nothing. (regen_list_regen): If we were cancelled, shortcut processing. This is all for #23571. * message-list.c (regen_list_regen): Change the way we calculate the hide deleted messages and tree view options. Do it based on a search and uid's rather than a summary. (regen_list_regened): Handle changes to tree storage. (mail_regen_list): The tree is now stored between updates, so we can update the tree structure incrementally. This blows out memory use some however. We need an etree that uses this as its model directly? (message_list_destroy): Free the thread tree. (message_list_set_folder): Clear the thread tree when changing folder. svn path=/trunk/; revision=17165
* Keep track of the regeneration request in a list. (regen_list_free):Not Zed2002-06-061-18/+42
| | | | | | | | | | | | | | | 2002-06-06 Not Zed <NotZed@Ximian.com> * message-list.c (mail_regen_list): Keep track of the regeneration request in a list. (regen_list_free): Remove the request from the regenreation list. (message_list_set_folder): If there are any outstanding regneration requests, cancel them. (regen_list_regened): If we were cancelled, do nothing. (regen_list_regen): If we were cancelled, shortcut processing. This is all for #23571. svn path=/trunk/; revision=17129
* Implement, return a text description of the localfolder.Not Zed2002-06-031-1/+19
| | | | | | | | | | | | | | | | | 2002-06-01 Not Zed <NotZed@Ximian.com> * mail-local.c (mlf_getv): Implement, return a text description of the localfolder. * message-list.c (ml_duplicate_value): (ml_free_value): (ml_initialize_value): (ml_value_is_empty): (ml_value_to_string): (ml_tree_value_at): Implement COL_LOCATION, original location of message (useful for vfolder). svn path=/trunk/; revision=17072
* Check for a label tag when doing a lookup on the COLOR column.Jeffrey Stedfast2002-05-171-11/+18
| | | | | | | | | | | | | | | | | | 2002-05-16 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (ml_tree_value_at): Check for a label tag when doing a lookup on the COLOR column. * mail-config.c (mail_config_get_label_color_string): Return the colour in string format. * folder-browser.c (set_msg_label): Replaces colourise_msg and sets the "label" tag rather than the "colour" tag. * mail-preferences.c (mail_preferences_apply): Call mail_config_write() so that the settings get synced to disk. svn path=/trunk/; revision=16938
* Instead of g_assert()ing that the msg_info is not NULL, if it is NULL justJeffrey Stedfast2002-05-151-1/+2
| | | | | | | | | | | 2002-05-15 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (ml_tree_value_at): Instead of g_assert()ing that the msg_info is not NULL, if it is NULL just return NULL. This fixes a crash when ETree requests the value at a root node (I don't understand why it needs to do that??). svn path=/trunk/; revision=16796
* Implemented.Jeffrey Stedfast2002-03-151-1/+35
| | | | | | | | | | | 2002-03-14 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (next_thread): Implemented. * message-list.c (message_list_select_next_thread): New function to select the next thread. svn path=/trunk/; revision=16165
* Connect to the focus-in/out events on the message-list so that we canJeffrey Stedfast2002-03-051-3/+0
| | | | | | | | | | | | | | | | | | | | | | | 2002-03-04 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (my_folder_browser_init): Connect to the focus-in/out events on the message-list so that we can disable the EditInvertSelection and EditSelectThread menu items when the message-list is not in focus. * folder-browser-ui.c (folder_browser_ui_message_list_unfocus): New function to de-sensitize some items if the message-list is not in focus. (folder_browser_ui_message_list_focus): New function to sensitize some items if the message-list is not in focus. * mail-callbacks.c (invert_selection): Only invert the selection of the message-list if it is the widget in focus. * message-list.c (message_list_select): Do not explicitly grab the focus here. svn path=/trunk/; revision=15909
* Removed, this wasn't working as intended and seemed to break otherJeffrey Stedfast2002-02-231-29/+0
| | | | | | | | | 2002-02-22 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (on_message_list_built): Removed, this wasn't working as intended and seemed to break other features. svn path=/trunk/; revision=15801
* Connect to our own message_list_built signal. Focus the list and selectJeffrey Stedfast2002-02-221-1/+29
| | | | | | | | | | 2002-02-21 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (on_message_list_built): Connect to our own message_list_built signal. Focus the list and select the first unread message (or frst message depending). Fixes bug #3900. svn path=/trunk/; revision=15784
* Prompt the user to find out if he/she wants to go to the next folder withJeffrey Stedfast2002-02-201-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-19 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (confirm_goto_next_folder): Prompt the user to find out if he/she wants to go to the next folder with unread mail in it. (find_current_folder): Find a given CamelFolderInfo node based on a given uri. (find_next_folder_r): Recursively look for a CamelFOlderInfo node which has unread messages. (find_next_folder): Given a currently selected CamelFolderInfo node, look for the next node containing unread messages. (do_evil_kludgy_goto_next_folder_hack): Find the currently selected folder and then find the very next folder after it that contains unread messages and then select it via a CORBA call to the shell. (next_unread_msg): If we fail to find an unread message in the message-list, prompt the user to find out if we should jump to the next fodler containing unread messages. If so, call do_evil_kludgy_goto_next_folder_hack(). * message-list.c (message_list_select): Return a boolean value based on whether the call was successfull or not. * mail-config.c (mail_config_get_confirm_goto_next_folder): (mail_config_set_confirm_goto_next_folder): (mail_config_get_goto_next_folder): (mail_config_set_goto_next_folder): All new functions, yay. (config_read): Read in the confirm_goto_next_folder and goto_next_folder config options. (mail_config_write_on_exit): Same the options here. svn path=/trunk/; revision=15770
* Set the followup icon to use the new flag icon rather than the exclamationJeffrey Stedfast2002-02-141-1/+2
| | | | | | | | | | | | | | | | | | | 2002-02-13 Jeffrey Stedfast <fejj@ximian.com> * folder-browser-ui.c: Set the followup icon to use the new flag icon rather than the exclamation mark icon. * mail-callbacks.c (flag_for_followup): Append the selected messages to the clist in the followp editor. * message-list.c: Include the new flag-for-followup icon. * message-tag-followup.c (message_tag_followup_append_message): New method to add a message to the message-list. (construct): Get the message_list widget and load the flag icon pixmap. svn path=/trunk/; revision=15720
* Get followup-up message-list values. Also highlight the message in red ifJeffrey Stedfast2002-02-121-74/+145
| | | | | | | | | | | | | | | | | | 2002-02-11 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (ml_tree_value_at): Get followup-up message-list values. Also highlight the message in red if the due-by date is past due (this is what Outlook does). (ml_duplicate_value): Handle follow-up columns. (ml_free_value): Same. (ml_initialize_value): Here too. (ml_value_is_empty): And here. (ml_value_to_string): And finally here. * message-tag-followup.c (message_tag_followup_i18n_name): New convenience function. svn path=/trunk/; revision=15680
* removed more needs-reply cruftJeffrey Stedfast2002-02-081-6/+0
| | | | svn path=/trunk/; revision=15604
* Bumped the required version of gal.Christopher James Lahey2002-02-071-120/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-07 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped the required version of gal. From addressbook/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * gui/widgets/e-addressbook-view.c (e_addressbook_view_setup_menus): Changed this function to use the new GalViewMenus which takes a GalViewInstance, instead of a GalViewCollection. From calendar/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * gui/e-tasks.c (e_tasks_setup_view_menus), gui/gnome-cal.c (gnome_calendar_setup_view_menus): Made these use the new GalViewMenus stuff. From mail/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * folder-browser.c, folder-browser.h, folder-browser-ui.c, folder-browser-ui.h (folder_browser_ui_setup_view_menus, folder_browser_ui_discard_view_menus): Changed this to use the new GalViewMenus stuff. Made these exported functions. * mail-callbacks.c, message-browser.c: Changed these to not pass the now removed row parameter to message_list_select. * mail-config.c, mail-config.h (mail_config_folder_to_safe_url): Refactored this out of mail_config_folder_to_cachename. * message-list.c, message-list.h (message_list_select): Removed the row argument. Changed this to use the new function in ETree for finding the next cursor row that matches a test. (message_list_construct): Handle a failed construction of the ETree here. (message_list_setup_etree, save_tree_state): Don't load or save the header state. folder-browser-ui.c deals with this now. From views/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * addressbook/galview.xml, calendar/galview.xml, mail/galview.xml, tasks/galview.xml: Added default-view parameters. * mail/As_Sent_Folder.galview: New galview. * mail/Makefile.am, mail/galview.xml: Added As_Sent_Folder galview. From widgets/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * menus/gal-view-menus.c, menus/gal-view-menus.h (gal_view_menus_new): Made this take a GalViewInstance instead of a GalViewCollection. Reworked most of this to utilize the interfaces provided by GalViewInstance. svn path=/trunk/; revision=15592
* Removed references to NEEDS_REPLY.Jeffrey Stedfast2002-02-071-20/+0
| | | | | | | | | | | | | | | | 2002-02-06 Jeffrey Stedfast <fejj@ximian.com> * message-list.c: Removed references to NEEDS_REPLY. * mail-callbacks.c (mark_as_needing_reply): Removed. (mark_as_not_needing_reply): Removed. (toggle_need_reply): Removed. * folder-browser.c (on_right_click): Remove CAN_MARK_NEEDS_REPLY stuff, this is going to be implemented in an entirely different way. svn path=/trunk/; revision=15585
* When performing a wraparound, check to see if the first (or last dependingJeffrey Stedfast2002-01-091-4/+21
| | | | | | | | | | | | | | | 2002-01-08 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_select): When performing a wraparound, check to see if the first (or last depending on direction) message fits the selection criteria before telling etable to find the next/previous matching node. * mail-account-gui.c (mail_account_gui_new): When connecting to the transport username changed event, pass the gui->transport not the gui->source. svn path=/trunk/; revision=15267
* Makes the auto-undelete behavior when changing message flags a bit moreJon Trowbridge2001-12-211-3/+15
| | | | | | | | | 2001-12-20 Jon Trowbridge <trow@ximian.com> * message-list.c (on_click): Makes the auto-undelete behavior when changing message flags a bit more sane. (Fixes #17634) svn path=/trunk/; revision=15200
* Add ETable magic for our new "Needs Reply" column. (The next few entriesJon Trowbridge2001-12-121-49/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-12-11 Jon Trowbridge <trow@ximian.com> * message-list.etspec: Add ETable magic for our new "Needs Reply" column. (The next few entries are for bug #90) * message-list.h: Add COL_NEED_REPLY. * message-list.c: Move mail_need_reply_xpm to the end of states_pixmaps. (ml_duplicate_value): Handle COL_NEED_REPLY. (ml_free_value): Handle COL_NEED_REPLY. (ml_initialize_value): Handle COL_NEED_REPLY. (ml_value_is_empty): Handle COL_NEED_REPLY. Added needs_reply_map[] array. (ml_value_to_string): Handle COL_NEED_REPLY. (ml_tree_value_at): Fix magic numbers, undoing my changes from the otehr day. Add handler for COL_NEED_REPLY. (message_list_create_extras): Attach icons for COL_NEED_REPLY. (on_click): Undo my previous changes to display need-reply status in COL_MESSAGE_STATUS. Add handing for COL_NEED_REPLY. * mail.h: Change mail_format_mime_message, mail_format_raw_message and the MailMimeHandlerFn typedef to take GtkHTML and GtkHTMLStream args, as per our changes in mail-format.c. * mail-format.c: Giant refactoring. Remove the assumption throughout that we will always want to render into the GtkHTML object contained in the MailDisplay. Instead, always pass in the GtkHTML and GtkHTMLStream that we want to write to. Also, ignore theme work-arounds if the printing flag is set. (This and what follows fixes bug #82) * mail-display.h: Remove GtkHTMLStream *stream from MailDisplay. We don't need it anymore. * mail-display.c (mail_display_render): Added. Breaks the code that renders the message into the GtkHTML object out of mail_display_redisplay. (mail_display_redisplay): Call mail_display_render. (mail_display_init): Remove reference to ->stream. (mail_display_new): Remove reference to ->stream. * mail-callbacks.c (do_mail_print): Create a new GtkHTML to render our printed version into (via the new function mail_display_render. Set the MailDisplay's printing flag to TRUE before we render, and set it back to FALSE afterwards. (do_mail_fetch_and_print): If the preview pane isn't open when we try to print, fetch the message before printing. (print_msg): Call do_mail_fetch_and_print. (print_preview_msg): Call do_mail_fetch_and_print. * folder-browser-ui.c: Remove "PrintMessage" and "PrintPreviewMessage" from message_pane_enables... these now work when the preview pane is closed. Disable printing if multiple messages are selected. svn path=/trunk/; revision=14981
* Implements marking messages as "Need Reply".Jon Trowbridge2001-12-101-22/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implements marking messages as "Need Reply". 2001-12-09 Jon Trowbridge <trow@ximian.com> * mail-need-reply.xpm: Added a really, really ugly and awful icon to symbolize "message needs a reply". * Makefile.am (EXTRA_DIST): Added mail-need-reply.xpm. 2001-12-09 Jon Trowbridge <trow@ximian.com> * camel-folder-summary.c: Add "NeedsReply" to the flag_names array for CAMEL_MESSAGE_NEEDS_REPLY. * camel-folder-summary.h: Added CAMEL_MESSAGE_NEEDS_REPLY flag. 2001-12-09 Jon Trowbridge <trow@ximian.com> * vfoldertypes.xml: Add "Needs Reply" option to different status types. * filtertypes.xml: Add "Needs Reply" option to different status types. 2001-12-09 Jon Trowbridge <trow@ximian.com> * message-list.c: #include "art/mail-need-reply.xpm". (ml_tree_value_at): Adjust magic numbers, show "Need Reply" icon if the message needs reply. (message_list_create_extras): Adjust magic numbers to add new icon. (on_click): Changed to toggle between unread, read, and need reply when the status icon is clicked. * mail-callbacks.c (mark_as_needing_reply): Added. (mark_as_not_needing_reply): Added. Add "set" value to struct post_send_data. (composer_sent_cb): Use both "flags" and "set" elements of post_send_data when setting message flags. (mail_reply): Clear "Needs Reply" flag when we actually reply to a message. * folder-browser.c: Changed flag values to be given by bit-shifting (1<<5) vs. base-ten (32). Added CAN_MARK_DOESNT_NEED_REPLY flag. Added "Mark as Needing Reply" and "Mark as Not Needing Reply" elements to context menu. (on_right_click): Hide "Mark as (Not) Needing Reply" context menu elements as appropriate. svn path=/trunk/; revision=14946
* If the path exists, make sure it's a regular file (or we can't possiblyJeffrey Stedfast2001-12-041-13/+22
| | | | | | | | | | | | | | | | 2001-11-28 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (save_msg_ok): If the path exists, make sure it's a regular file (or we can't possibly save to it). Fix for #14127. 2001-11-28 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_select): Cleaned up the code. * mail-callbacks.c (previous_unread_msg): Pass wraparound as TRUE. svn path=/trunk/; revision=14850
* Reverted my hide_save_state patch.Jeffrey Stedfast2001-11-221-6/+0
| | | | | | | | 2001-11-21 Jeffrey Stedfast <fejj@ximian.com> * message-list.c: Reverted my hide_save_state patch. svn path=/trunk/; revision=14775
* 'n' shouldn't wrap if 'p' doesn't.Jeffrey Stedfast2001-11-211-9/+0
| | | | | | | | | 2001-11-20 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_select): 'n' shouldn't wrap if 'p' doesn't. svn path=/trunk/; revision=14766
* Save hide state. (message_list_hide_uids): Save hide state.Jeffrey Stedfast2001-11-171-1/+7
| | | | | | | | | | | | | 2001-11-16 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_hide_clear): Save hide state. (message_list_hide_uids): Save hide state. (message_list_hide_add): Save hide state. * mail-format.c (format_mime_part): Make sure the mime-type is non-NULL before passing it off to mail_lookup_handler(). svn path=/trunk/; revision=14734
* Use GINT_TO_POINTER here for platforms where simply casting an int to voidChristopher James Lahey2001-11-031-3/+7
| | | | | | | | | | | 2001-11-02 Christopher James Lahey <clahey@ximian.com> * message-list.c (ml_tree_value_at): Use GINT_TO_POINTER here for platforms where simply casting an int to void * won't work. (build_flat_diff, main_folder_changed): Call e_tree_model_pre_change here. svn path=/trunk/; revision=14581
* Argh!!! Dont free the async op data here, the async op is still running02001-10-301-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-30 <NotZed@Ximian.com> * subscribe-dialog.c (fe_cancel_op_foreach): Argh!!! Dont free the async op data here, the async op is still running and will access it! Just try to cancel it and mark it as cancelled (id == -1) (fe_done_subscribing): Only remove outselves from the hash table if we're not cancelled. The handle should always be set here, since this code runs in the gui thread. * message-list.c (on_cursor_activated_idle): If nothing selected/cursor not activated, then select no message. * mail-folder-cache.c (update_1folder): Make the trash count optional on EVOLUTION_COUNT_TRASH, becuase some lusers are just too stupid to understand what its for. * component-factory.c (storage_xfer_folder): Return slightly better error codes for copying folders, since its not implemented yet. * mail-vfolder.c, mail-local.c, mail-folder-cache.c, message-list.c component-factory.c, mail-ops.c, subscribe-dialog.c, mail-session.c: d() out some debug printfs, w() out some warnings. * folder-browser-ui.c (folder_browser_ui_add_message): Fix typo, Resent->Resend. svn path=/trunk/; revision=14412
* So apparently the uicomp can just 'vanish' while we're using it. Joy. Take52001-10-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-25 <NotZed@Ximian.com> * folder-browser-ui.c (fbui_sensitize_timeout): So apparently the uicomp can just 'vanish' while we're using it. Joy. Take care of that case here, fixes #13482. (fbui_sensitise_item): Check here too just for kicks. * mail-folder-cache.c (store_finalised): If we can't destroy our async event, then queue another one to do it. (store_finalised_finish): And handle it here, until we can, then free it. (mail_note_store): Queue an async event to get folderinfo, dont use mail_get_folderinfo. (update_folders_get): thread-async event to retrieve the folderinfo, and build it, then queues gui-async event to update the gui. (add_unmatched_info): Taken from mail-ops, adds unmatched if required. (add_vtrash_info): From mail-ops, add trash if required. (update_folders): Thread async event to update gui. (mail_note_store): Ref the store and storage when created. (update_1folder): Changed to assume we have info_lock, and store updates in an updates list. (setup_folder): Same. (folder_changed): Changed to call update_1folder directly. (real_folder_changed): Removed. (mail_note_folder): Changed to call update_1folder directly. (real_note_folder): Removed. (store_folder_subscribed): Call setup_folder directly. (real_folder_created): Removed. (real_flush_update): Function that actually does the updates in the gui thread. (mail_note_store): Go back to using mail_get_folderinfo. (update_folders): Fixed upf ro changed api's. (unset_folder_info): Changed to queue pending updates. (real_folder_deleted): Removed. (store_folder_unsubscribed): Do the removal work directly. (mail_note_store): Dont link to finalised event of store - we now ref it. (mail_note_store_remove): If we have any pending updates, clear them out. Also cancel any pending folderinfo retrieve operations. (update_folders): Remove our update from the storeinfo list, if it still exists. (update_1folder): Make 'sent folder shows all counts' optional via an environmental variable EVOLUTION_COUNT_SENT for all those bloody whinging lusers out there. (mail_note_store_remove): Unref the storage when done. * mail-mt.c (mail_async_event_emit): If we're in main and have a gui task, set it to run via an idle function. (idle_async_event): Wrapper for calling do_async_event from idle function, and freeing the message when done. (idle_async_event): Call mail_msg_free not free on the finished message. * component-factory.c (mail_remove_storage): Destroy the storage async. (store_disconnect): This does the work. (free_storage): Un-note the store when we remove it, so the store noting code can unref things properly. (idle_quit): Return false when done, dont loop. 2001-10-24 <NotZed@Ximian.com> * component-factory.c (owner_set_cb): Setup an async_event handler. (idle_quit): Try to destroy the async_event, or keep dropping out if it can't (deadlock). * mail-mt.c (do_async_event): Set the threadid of the thread we're running in so we know its running/which thread its in. (mail_async_event_emit): Added new argument 'type' which is the type of thread to execute against, gui or another one. Fixed all callers. (mail_async_event_destroy): Return -1 if this operation will fail (deadlock possibility). If we're in the thread of the task we're going to wait for, then return a failure (since we will deadlock). (mail_async_event_emit): Chagned to use MailAsyncFunc type as the function type, which just takes 3 void args, change args to suit. * mail-folder-cache.c (mail_note_store): Record the pending update events in a pending list. We should really be able to use an async event for this, but that doesn't return to the gui loop when done :-/ (update_folders): Remove from pending update when done. svn path=/trunk/; revision=14101
* Dont do anything if we're destroyed #13021.32001-10-241-0/+3
| | | | | | | | | 2001-10-23 <NotZed@Ximian.com> * message-list.c (regen_list_regened): Dont do anything if we're destroyed #13021. svn path=/trunk/; revision=13963
* Check that the cursor_uid is non-NULL before emitting a "message_selected"Jeffrey Stedfast2001-10-171-1/+1
| | | | | | | | | | 2001-10-16 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (on_cursor_activated_idle): Check that the cursor_uid is non-NULL before emitting a "message_selected" signal. Fixes bug #6015. svn path=/trunk/; revision=13706
* Added an async_event handler to store_info. (mail_note_store): Setup asyncMichael Zucci2001-10-171-17/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mail-folder-cache.c: Added an async_event handler to store_info. (mail_note_store): Setup async event handler here. (store_finalised): Flush out async events here. (folder_changed): Use async event handler to emit event. (mail_note_folder): Chagned, do most of the work in the calling context, only do the corba stuff in main. (store_folder_subscribed): Use async event, and do more work locally. (store_folder_unsubscribed): Same. (store_folder_deleted): Call store_folder_unsubscribed if we have to do any work. (store_folder_created): Call store_folder_subscribed if we have to do any work. (store_folder_unsubscribed): Ref store while busy. (real_folder_deleted): And unref here. (store_folder_subscribed): Reg store while busy. (real_folder_created): Unref here. (mail_note_folder): Ref folder while busy. (real_note_folder): And unref here. (mail_note_folder): Hook onto folder_deleted event. (folder_deleted): Just mark this folder as no longer available. * mail-session.c (register_timeout): Use mail_call_main instead of proxy_event. (remove_timeout): Same here. * folder-browser.c (folder_changed): use the new mail_async_event stuff. (folder_changed_main): Remove old async event handling stuff. (FOLDER_BROWSER_LOCK/UNLOCK): Removed. (FolderBrowserPrivate): Removed too, sigh. * mail-mt.c (mail_async_event_new, mail_async_event_emit, mail_async_event_destroy): New functions to handle async events. (mail_proxy_event, mail_proxy_event_id): Removed old functions for async events. (do_call): Add suport for MAIL_CALL_p_pp. (mail_msg_free): Use mail_async_event instead of proxy_event. * message-list.c (message_changed): Promote the message_changed to a folder_changed and use main_folder_changed to process it. (main_message_changed): Remove.d (message_list_init): Setup async event handler. (message_list_destroy): Remove async handler. (folder_changed): Use async hanler to emit event in main loop. (message_changed): Same. svn path=/trunk/; revision=13698
* Revert the change to remove the Score column until Chris can fix ETable soDan Winship2001-10-131-2/+52
| | | | | | | | | * message-list.c, message-list.h, message-list.etspec: Revert the change to remove the Score column until Chris can fix ETable so it's possible to remove a column without breaking everyone's exisiting settings. svn path=/trunk/; revision=13646
* removed Score stuff from the message-listJeffrey Stedfast2001-10-131-52/+2
| | | | svn path=/trunk/; revision=13626
* Update for folder_flags.Dan Winship2001-10-091-7/+3
| | | | | | | | | | | | | | | | * mail-local.c (mlf_set_folder, mlf_unset_folder): Update for folder_flags. * folder-browser-ui.c (folder_browser_ui_add_list): Check CAMEL_FOLDER_IS_TRASH flag rather than checking CAMEL_IS_VTRASH_FOLDER. * folder-browser.c (folder_browser_toggle_hide_deleted): Likewise * message-list.c (message_list_set_folder): Likewise. (message_list_set_hidedeleted): Remove redundant trash check. svn path=/trunk/; revision=13510
* Turn on "uniform_row_height" argument.Christopher James Lahey2001-10-051-0/+4
| | | | | | | | | 2001-10-05 Christopher James Lahey <clahey@ximian.com> * message-list.c (message_list_setup_etree): Turn on "uniform_row_height" argument. svn path=/trunk/; revision=13442
* Check for the root node here.Christopher James Lahey2001-09-271-0/+3
| | | | | | | | 2001-09-26 Christopher James Lahey <clahey@ximian.com> * message-list.c (mlfe_callback): Check for the root node here. svn path=/trunk/; revision=13177
* Use e_tree_selected_path_foreach instead of e_tree_selected_row_foreachChristopher James Lahey2001-09-261-4/+4
| | | | | | | | | | 2001-09-26 Christopher James Lahey <clahey@ximian.com> * message-list.c (message_list_foreach): Use e_tree_selected_path_foreach instead of e_tree_selected_row_foreach here. svn path=/trunk/; revision=13145
* Use e_strftime_fix_am_pm instead of strftime.Christopher James Lahey2001-09-251-5/+5
| | | | | | | | | 2001-09-24 Christopher James Lahey <clahey@ximian.com> * message-list.c (filter_date): Use e_strftime_fix_am_pm instead of strftime. svn path=/trunk/; revision=13104
* General cleanup of mail debug printfs.92001-09-191-3/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-19 <NotZed@Ximian.com> * General cleanup of mail debug printfs. * mail-folder-cache.[ch]: Completely rewritten. Removed all calls to the old code everywhere they were used. Nuff said. * folder-browser.h: Add shell_view to folder_browser & api to set it. * folder-browser-factory.c (control_activate): Set the shell-view on the folder_browser. (control_deactivate): And clear it here. * folder-browser.c (folder_browser_destroy): Unhook from changed events on the folder before giving it away. (got_folder): Hook onto the folder-changed events. (folder_changed): Event hook proxy for folder_changed events (main_folder_changed): And the main code version. (update_status_bar): And the one that actually does the work. (on_selection_changed): Also call update_status_bar() to update the selection count. (folder_browser_set_shell_view): Implement function to set the shell_view on the folder_browser. (folder_browser_destroy): Release the shell_view here too. * mail-tools.c (mail_tool_uri_to_folder): Dont 'note' the new folder if its from a file: url, this is handled by hte local store (yeeruughck). * mail-local.c (mls_init): (free_info): (mls_finalise): Setup init/finalise funcs for the folderinfo hash. (local_storage_removed_folder_cb): re-enable. 2001-09-18 <NotZed@Ximian.com> * mail-local.c (MailLocalStore): Add a hash table to store uri<>folderinfo data. (mail_local_store_add_folder): Add a new folderinfo to our hash. (mail_local_store_remove_folder): Remove a folder by uri. (storage_listener_startup): Add this store to those monitored by the folder tree. svn path=/trunk/; revision=12974
* Updated required version of gal to 0.11.99.4.Christopher James Lahey2001-09-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-16 Christopher James Lahey <clahey@ximian.com> * configure.in: Updated required version of gal to 0.11.99.4. From calendar/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * gui/dialogs/meeting-page.c (build_etable): Updated this to match the new ETableSimple interface. From mail/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * message-list.c (ml_get_node_by_id): Made save_id const here. From shell/ChangeLog: 2001-09-16 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c (etree_get_node_by_id): Made save_id const here. svn path=/trunk/; revision=12870
* Use g_utf8_collate instead of g_strcasecmp for comparing names.Chyla Zbigniew2001-09-011-9/+13
| | | | | | | | | | * message-list.c (e_mail_address_compare): Use g_utf8_collate instead of g_strcasecmp for comparing names. (subject_compare): Replaced g_strcasecmp, isspace, var++ with UTF-8 counterparts. svn path=/trunk/; revision=12541
* Use the new e_mkdtemp function.Jeffrey Stedfast2001-08-251-37/+37
| | | | | | | | | | | 2001-08-24 Jeffrey Stedfast <fejj@ximian.com> * mail-display.c (launch_cb): Use the new e_mkdtemp function. * folder-browser.c (message_list_drag_data_get): Use the new e_mkdtemp function. svn path=/trunk/; revision=12462
* Check to make sure we actually have drag data.Jeffrey Stedfast2001-08-241-5/+5
| | | | | | | | | | | | 2001-08-23 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (destination_folder_handle_drop): Check to make sure we actually have drag data. * folder-browser.c (message_list_drag_data_received): Check to make sure we have valid data. svn path=/trunk/; revision=12424
* Don't sink the extras since _set_folder can get called more than once (onPeter Williams2001-08-221-3/+1
| | | | | | | | | | 2001-08-21 Peter Williams <peterw@ximian.com> * message-list.c (message_list_set_folder): Don't sink the extras since _set_folder can get called more than once (on reconfigure.) (message_list_destroy): So just unref the extras here. svn path=/trunk/; revision=12345
* Always remove the idle and return FALSE, instead of returning TRUE if morePeter Williams2001-08-161-6/+4
| | | | | | | | | | 2001-08-15 Peter Williams <peterw@ximian.com> * message-list.c (on_cursor_activated_idle): Always remove the idle and return FALSE, instead of returning TRUE if more than one message is selected. svn path=/trunk/; revision=12075
* Use ALWAYS for scroll frame policy because ETable acts lame withJason Leach2001-08-161-12/+10
| | | | | | | | | 2001-08-15 Jason Leach <jleach@ximian.com> * message-list.c (message_list_init): Use ALWAYS for scroll frame policy because ETable acts lame with AUTOMATIC. Bug #6925. svn path=/trunk/; revision=12061
* gets rid of those annoying operation-re-registered messages at last.Not Zed2001-08-151-10/+1
| | | | | | | | | | | | 2001-08-15 Not Zed <NotZed@Ximian.com> * mail-local.c (register_folder_register): Remove operation registration/etc. Handled by mail-mt.c * message-list.c (regen_list_regen): Remove camel operation registration/etc. svn path=/trunk/; revision=12041
* Do some g_assert() action. Make sure that the node passed in is non-NULLJeffrey Stedfast2001-08-141-51/+57
| | | | | | | | | | | | 2001-08-13 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (get_message_uid): Do some g_assert() action. Make sure that the node passed in is non-NULL and also make sure that the CamelMessageInfo gotten from the ETree is non-NULL. (get_message_info): Same here. svn path=/trunk/; revision=11959
* Since 'N' keypresses go through here now, use wrap-around selecting.Jason Leach2001-08-111-5/+12
| | | | | | | | | | | | | | | 2001-08-10 Jason Leach <jleach@ximian.com> * mail-callbacks.c (next_unread_msg): Since 'N' keypresses go through here now, use wrap-around selecting. (previous_unread_msg): Same for 'P' here. * message-list.c (on_cursor_activated_idle): Stop this idle timer when we have multiple items selected, this keeps it from loading and then marking the last item in your selection list as read. Bug #4693. svn path=/trunk/; revision=11895
* Free dbkey if we don't use it.Jeffrey Stedfast2001-08-101-16/+16
| | | | | | | | | | | | | | | | | | | 2001-08-10 Jeffrey Stedfast <fejj@ximian.com> * mail-config.c (mail_config_get_show_preview): Free dbkey if we don't use it. * folder-browser.c (on_right_click): Added a comment about leaking memory here, but we seem to not even use the 2 strings we strdup...is this code still under construction? * mail-ops.c (mail_send_message): Free the sent_folder_uri at the bottom of the function (ironically enough we were freeing it if we encountered an error but never free'd it on success :-) (get_folderinfo_got): Fixed a memory leak...this one would have gone away once we got rid of the debug g_warning though. svn path=/trunk/; revision=11874
* Added a g_assert_not_reached() - I'm hoping this will help us track downJeffrey Stedfast2001-08-101-12/+16
| | | | | | | | | | | | 2001-08-09 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (mlfe_callback): Added a g_assert_not_reached() - I'm hoping this will help us track down the "can't delete message sometimes" (ie bug #6637 and friends) bugs that users have been reporting. If herein lies the problem, then we can expect some crashes and some good backtraces, hopefully. svn path=/trunk/; revision=11854
* Fix inline documentation.Peter Williams2001-08-101-1/+3
| | | | | | | | 2001-08-09 Peter Williams <peterw@ximian.com> * message-list.c (message_list_select): Fix inline documentation. svn path=/trunk/; revision=11852
* Dont double-register this operation, mail-mt will do it for us.Not Zed2001-08-091-1/+1
| | | | | | | | | | | | | | | | | | | 2001-08-08 Not Zed <NotZed@Ximian.com> * mail-ops.c (send_mail_send): Dont double-register this operation, mail-mt will do it for us. (get_folderinfo_get): " (get_folder_get): " (get_store_get): " (create_folder_get): " (remove_folder_get): " (sync_folder_sync): " (get_message_get): " * message-list.c (message_list_setup_etree): Free the etstate object after we're done using it. svn path=/trunk/; revision=11813
* Fix a minor glitch with how it started a backwards wraparound at the 2ndJason Leach2001-08-071-1/+1
| | | | | | | | | | 2001-08-06 Jason Leach <jleach@ximian.com> * message-list.c (message_list_select): Fix a minor glitch with how it started a backwards wraparound at the 2nd to last message, skipping the very last message. svn path=/trunk/; revision=11698
* Add a @wraparound argument, so the 'n' and 'p' keypresses (or anythingJason Leach2001-08-051-3/+17
| | | | | | | | | | | | | | | 2001-08-04 Jason Leach <jleach@ximian.com> * message-list.c (message_list_select): Add a @wraparound argument, so the 'n' and 'p' keypresses (or anything else that wants to) can wrap around to find the next unread. * folder-browser.c (on_key_press): Tell it to wrap around here. * mail-callbacks.c (delete_msg): Don't wrap around here (or the other callbacks in this file). svn path=/trunk/; revision=11651
* Added. Provide description for filter_folder_op. (fetch_mail_describe):Jon Trowbridge2001-08-031-1/+8
| | | | | | | | | | | | | | | | | | | | 2001-08-02 Jon Trowbridge <trow@ximian.com> * mail-ops.c (filter_folder_describe): Added. Provide description for filter_folder_op. (fetch_mail_describe): Added. Provide description for fetch_mail_op. * message-list.c (regen_list_describe): Added. Provide description for regen_list_op. * mail-config.c (check_service_describe): Added. Provide description for check_service_op. * folder-info.c (do_describe_info): Added. Provide description for get_info_op. svn path=/trunk/; revision=11604
* Go back to calling mail_msg_free here. (mail_msg_destroy): Remove theNot Zed2001-07-241-2/+11
| | | | | | | | | | | | | | | | | | 2001-07-23 Not Zed <NotZed@Ximian.com> * mail-mt.c (mail_msgport_replied): Go back to calling mail_msg_free here. (mail_msg_destroy): Remove the operation unregistration stuff. (mail_msg_received): And put it here, so we unregister as soon as the async part of the operation is complete. I thought about this and we should be doing this anyway so we register/unregister always in the same thread, although the camel_operation api doesn't enforce it, this *is* what it expects. * message-list.c (regen_list_regen): re-add reporting to rebuilding the message list. Basically fixes #4931 svn path=/trunk/; revision=11332
* Set the vertical scrolling policy for the mail display to AUTOMATIC, onlyJason Leach2001-07-201-1/+2
| | | | | | | | | | | | | | | | | | 2001-07-19 Jason Leach <jleach@ximian.com> * mail-display.c (mail_display_new): Set the vertical scrolling policy for the mail display to AUTOMATIC, only get a scrollbar if the e-mail is longer than one frame. * folder-browser.c (my_folder_browser_init): We were setting the policy twice (and to two different things). Removed this one. * message-list.c (message_list_init): Set the policy for the message list scroll frame to be horizontal=NEVER, vertical=AUTOMATIC (scrollbar only if you have >1 page of messages). svn path=/trunk/; revision=11239
* Some NULL protection for our strings: pgp_key, html_signature, smime_key.Peter Williams2001-07-101-0/+2
| | | | | | | | | | | | | 2001-07-09 Peter Williams <peterw@ximian.com> * mail-config.c (mail_config_write): Some NULL protection for our strings: pgp_key, html_signature, smime_key. Probably we should do this for all strings. Either that or change Bonobo Config. * message-list.c (message_list_init): Explicitly initialize search to NULL. Bug 3951 might to be due to a problem wrt this, and it can't hurt. svn path=/trunk/; revision=10919
* Check for new_uid != NULL here before strcmping.Christopher James Lahey2001-07-081-1/+1
| | | | | | | | | 2001-07-07 Christopher James Lahey <clahey@ximian.com> * message-list.c (on_cursor_activated_cmd): Check for new_uid != NULL here before strcmping. svn path=/trunk/; revision=10889
* Made this handle being given a row that's outside the range better.Christopher James Lahey2001-07-071-4/+9
| | | | | | | | | 2001-07-07 Christopher James Lahey <clahey@ximian.com> * message-list.c (message_list_select): Made this handle being given a row that's outside the range better. svn path=/trunk/; revision=10881
* Mark the messages as Seen also. (folder_browser_class_init): Create anJeffrey Stedfast2001-07-071-87/+89
| | | | | | | | | | | | | | | | | | | | | | | | 2001-07-06 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (folder_browser_copy): Mark the messages as Seen also. (folder_browser_class_init): Create an atom type for X-Evolution-Message selection type. (my_folder_browser_init): Add our multiple selection types, one of which is the default string type. * component-factory.c (destination_folder_handle_drop): Update to use the new X-Evolution-Message type format. * folder-browser.c (selection_get): Convert the X-Evolution-Message clipboard type to whatever format the target wants. (message_list_drag_data_get): Update because the X-Evolution-Message type changed. (folder_browser_copy): Same. (x_evolution_message_parse): And here too. svn path=/trunk/; revision=10853
* Select the very next message after deleting, not the next undeleted (itJason Leach2001-07-071-10/+26
| | | | | | | | | | | | | | | | | 2001-07-06 Jason Leach <jleach@ximian.com> * mail-callbacks.c (delete_msg): Select the very next message after deleting, not the next undeleted (it can make things jump around in annoying ways if you are deleting many messages), bug #4032. * folder-browser.c: Forgot to commit the "Mark as Important" right click menu item. * message-list.c (message_list_set_folder): Setup the strikeout column here (after we've gotten the folder) so we can disable strikeouts for vtrash folders, part of bug #2224. svn path=/trunk/; revision=10849
* Added an MailAccountEditorNews, for NNTP configuratuion. Based onSam Creasey2001-07-031-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-02 Sam Creasey <sammy@oh.verio.com> * mail-account-editor-news.c: Added an MailAccountEditorNews, for NNTP configuratuion. Based on MailAccountEditor, but stripped. * Makefile.am: added mail-account-editor-news.c and mail-account-editor-news.h to SOURCES if ENABLE_NNTP is defined. * mail-accounts.c (load_news): Moved this function, and fixed some slight brokenness. (news_edit): Added functional code using MailAccountEditorNews (news_add): Added functional code using news_edit after allocation. * mail-config.glade: news_editor_window widget added. Used by MailAccountEditorNews. * mail-display.c (save_data_cb): Store the pathname used when saving messages so that the next save box will default to the previous path. * message-browser.c (message_browser_new): add signal handler for size_allocate on the message browser. Thus new windows are size as they were last allocated. (message_browser_size_allocate_cb): handler to store allocations. * message-list.c (message_list_setup_etree): connect to the info_changed signals for the state of the message_list->tree. Save the folder state to disk, so that when additional message_lists are created, they are consistant. e.g. the next buttons do the same thing in the browser, and in the message viewer after changing sorting options. * subscribe-dialog.c (build_tree): freeze sc->folder model while building the tree. Not doing so takes a very long time over 40000 newsgroups. svn path=/trunk/; revision=10719
* 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
* Implemented.Jeffrey Stedfast2001-06-161-106/+22
| | | | | | | | | | | | | | | | 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
* (Fix bug #3211: Should undelete when flagging a delete message asJason Leach2001-06-061-1/+5
| | | | | | | | | | | | | 2001-06-05 Jason Leach <jleach@ximian.com> (Fix bug #3211: Should undelete when flagging a delete message as important) * message-list.c (on_click): When flagging a message as important, check to see if it's flagged as deleted, if so, undelete it. svn path=/trunk/; revision=10122
* Removed the etable spec string. (message_list_construct): Load the etableJeffrey Stedfast2001-05-281-35/+5
| | | | | | | | | | | | | | | | | | | 2001-05-27 Jeffrey Stedfast <fejj@ximian.com> * message-list.c: Removed the etable spec string. (message_list_construct): Load the etable spec from a file. * folder-browser-factory.c: Load the etable spec from the file, not a string. * Makefile.am: Add message-list.etspec to be installed. * message-list.etspec: New file containing the ETable file specification. * mail-config.h: Prototype evolution_mail_config_get_type. svn path=/trunk/; revision=10025
* g_strdup the uid into the ml->cursor_uid.Jeffrey Stedfast2001-05-251-1/+7
| | | | | | | | | | | | 2001-05-24 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_select_uid): g_strdup the uid into the ml->cursor_uid. * message-browser.c (message_browser_forward_msg): Use the default forward style. svn path=/trunk/; revision=9969
* Make the message-list respect the "hide deleted messages" setting. FixesJeffrey Stedfast2001-05-241-10/+11
| | | | | | | | | 2001-05-23 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_set_folder): Make the message-list respect the "hide deleted messages" setting. Fixes bug #2248. svn path=/trunk/; revision=9956
* Instead of calling message_list_select_uid() here, instead connect to theJeffrey Stedfast2001-05-231-6/+18
| | | | | | | | | | | | | | | | | | | | 2001-05-22 Jeffrey Stedfast <fejj@ximian.com> * message-browser.c (message_browser_folder_loaded): Instead of calling message_list_select_uid() here, instead connect to the "message_list_loaded" signal since the message-list is not built yet at this point. (message_browser_message_list_built): Call message_list_select_uid() here instead. * message-list.c: Lets have a new signal, MESSAGE_LIST_BUILT, that gets emitted when the message-list has finished being built by one of the built_*() functions. (message_list_class_init): Setup the signal stuff. (regen_list_regened): Emit the signal here (should this perhaps be moved into each of the build_*() functions instead?). svn path=/trunk/; revision=9925
* Functions to determine if a folderbrowser is one of the drafts, sent, orDan Winship2001-05-171-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * folder-browser.c (folder_browser_is_drafts, folder_browser_is_sent, folder_browser_is_outbox): Functions to determine if a folderbrowser is one of the drafts, sent, or outbox folders. (got_folder): Pass TRUE for the "outgoing" flag to message_list_set_folder if this is a Sent, Drafts, or Outbox folder. * message-list.c (message_list_set_folder): Take a flag saying whether or not the folder is an "outgoing" folder. (message_list_setup_etree): Ditto. Use that rather than a hardcoded list of foldernames for deciding whether to swap From and To in the default layout. * mail-config.c (mail_config_folder_to_cachename): Make IMAP folders have unique cachenames rather than only one per store, so that IMAP Sent and Drafts folders don't get forced into having the same layout as the INBOX. * mail-callbacks.c: (is_sent_folder, is_drafts_folder): Gone. Replaced with simpler folder_browser_is_* routines. (edit_msg, resend_msg, open_msg): Use folder_browser_is_* routines. * mail-local.c (reconfigure_clicked): Update call to message_list_set_folder. svn path=/trunk/; revision=9857
* Don't advance to the next undeleted message after "Delete"...Dan Winship2001-05-111-7/+6
| | | | | | | | | | | | | | | | | | | * folder-browser.c (on_key_press): Don't advance to the next undeleted message after "Delete"... * mail-callbacks.c (delete_msg): ...instead, do it here, whether the user used Delete, Alt+D, or the toolbar. (But only if they only deleted a single message.) * message-list.c (message_list_select): Don't clear the display on failure. (build_tree): Clear the display when the currently-selected message stops existing and we don't have an obvious message to select instead of it. (Eg, when deleting the last message with "hide deleted messages" set, or expunging while a deleted message is selected.) svn path=/trunk/; revision=9744
* Connect to key_press_event on the GtkHTML widget. (etree_key): Only handleDan Winship2001-05-081-0/+3
| | | | | | | | | | | | | | * folder-browser.c (my_folder_browser_init): Connect to key_press_event on the GtkHTML widget. (etree_key): Only handle space/backspace here, pass the rest off to on_key_press. (on_key_press): Handle Delete/N/P/Menu in either MessageList or MailDisplay. * message-list.c (message_list_select): Grab focus if we don't have it. svn path=/trunk/; revision=9694
* #include <camel/camel-file-utils.h>Dan Winship2001-05-041-1/+2
| | | | | | | | | | | | | | * message-list.c: #include <camel/camel-file-utils.h> * mail-ops.c (get_folderinfo_get): * subscribe-dialog.c (build_tree): Update for camel_store_get_folder_info prototype change. * mail-format.c (handle_text_plain_flowed): Improve more on the fix from the other day: the first level of indentation adds blank lines, but further levels don't... svn path=/trunk/; revision=9660
* Updated to use camel-file-util routines. (hide_save_1): Same.Jeffrey Stedfast2001-04-271-17/+24
| | | | | | | | | | | 2001-04-26 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (hide_load_state): Updated to use camel-file-util routines. (hide_save_1): Same. (hide_save_state): And here too. svn path=/trunk/; revision=9601
* Use the message-browser widget rather than the mail-view window.Jeffrey Stedfast2001-04-241-0/+28
| | | | | | | | | | | | | | | | | | | 2001-04-23 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (do_view_message): Use the message-browser widget rather than the mail-view window. * mail-view.c: Removed. * folder-browser.c: Added a folder_loaded signal. * message-browser.[c,h]: New window to solve all our message browsing needs. This replaces mail-view.c. * message-list.c (message_list_select_uid): New function needed by the new message-browser window. svn path=/trunk/; revision=9525
* Don't need to dup the string: the relevant gnome-dialog routine alreadyDan Winship2001-04-191-0/+8
| | | | | | | | | | * session.c (request_callback): Don't need to dup the string: the relevant gnome-dialog routine already does. * message-list.c (message_list_destroy): Free the uid_nodemap. (hide_save_state): Free the filename when we're done. svn path=/trunk/; revision=9452
* Only activate the message if the cursor has moved.Christopher James Lahey2001-04-131-4/+13
| | | | | | | | | 2001-04-13 Christopher James Lahey <clahey@ximian.com> * message-list.c (on_cursor_activated_cmd): Only activate the message if the cursor has moved. svn path=/trunk/; revision=9298
* Updated this function to be a correct full ordering.Christopher James Lahey2001-04-131-72/+112
| | | | | | | | | | | | | | | | | | | 2001-04-12 Christopher James Lahey <clahey@ximian.com> * message-list.c (e_mail_address_new): Updated this function to be a correct full ordering. (ml_has_get_node_by_id, ml_get_node_by_id): Implemented these functions. (find_next_undeleted): Changed this to find next sorted undeleted message. Also, changed it so that if the current message is not deleted, it returns NULL. (build_tree, build_flat): Changed these to only set the cursor if the cursor is changed. * subscribe-dialog.c: Changed this to pass NULL, NULL for has_get_node_by_id and get_node_by_id. svn path=/trunk/; revision=9290
* Save the expanded state using the ETree built in expanded state code.Christopher James Lahey2001-04-111-109/+27
| | | | | | | | | 2001-04-11 Christopher James Lahey <clahey@ximian.com> * message-list.c (save_tree_state, message_list_setup_etree): Save the expanded state using the ETree built in expanded state code. svn path=/trunk/; revision=9229
* Merge from evolution-0-10 to evolution-0-10-merge-0 into head.Not Zed2001-04-051-7/+57
| | | | | | | | 2001-04-05 Not Zed <NotZed@Ximian.com> * Merge from evolution-0-10 to evolution-0-10-merge-0 into head. svn path=/trunk/; revision=9193
* #include <camel/camel-vtrash-folder.h>Dan Winship2001-03-301-0/+1
| | | | | | | | | * message-list.c: #include <camel/camel-vtrash-folder.h> * mail-callbacks.c: #include <libgnome/gnome-paper.h> for the gnome-print stuff. svn path=/trunk/; revision=9030
* Cleaned up #includes. Remove unneccesary includes of <gnome.h>,Kjartan Maraas2001-03-301-15/+16
| | | | | | | | | | | 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
* Create a vtrash folder, not a vee folder.Not Zed2001-03-291-13/+60
| | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-29 Not Zed <NotZed@Ximian.com> * mail-local.c (init_trash): Create a vtrash folder, not a vee folder. * folder-browser-factory.c (control_activate): Hook in the hide deleted thingy. Removed MessageHideDeleted menu stuff. * message-list.c (message_list_set_hidedeleted): New function, to set if we should hide deleted messages automatically/always. (regen_list_regen): If we have hide deleted messages turned on, then hide them. (main_message_changed): Promote to a folder_changed event with a change list, folder_changed has the optimisations to handle this appropriately. (main_folder_changed): IF we get changes events for deleted/undeleted stuff, change to added/removed events, rebuild if necessary. (message_list_set_folder): Setup the default hidedeleted state to be to hide everything unless it is in a vtrash folder. svn path=/trunk/; revision=9009
* Turned on BROKEN_ETREE.Christopher James Lahey2001-03-231-1/+1
| | | | | | | | 2001-03-23 Christopher James Lahey <clahey@ximian.com> * message-list.c: Turned on BROKEN_ETREE. svn path=/trunk/; revision=8914
* Remove the node before freeing the data it points to.Christopher James Lahey2001-03-201-5/+5
| | | | | | | | | 2001-03-20 Christopher James Lahey <clahey@ximian.com> * message-list.c (remove_node_diff, build_flat_diff): Remove the node before freeing the data it points to. svn path=/trunk/; revision=8841
* Bumped gal requirement to 0.5.99.8.Christopher James Lahey2001-03-201-173/+186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-19 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped gal requirement to 0.5.99.8. From addressbook/ChangeLog: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * Merged branch: 2001-03-14 Christopher James Lahey <clahey@ximian.com> * gui/widgets/e-minicard-view.c: Call e_selection_model_simple_insert_rows and e_selection_model_simple_delete_rows instead of e_selection_model_simple_insert_row and e_selection_model_simple_delete_row. End of branch From mail/ChangeLog: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * Merged e-tree-rework-branch: 2001-03-18 Christopher James Lahey <clahey@ximian.com> * message-list.c: Added has_save_id and get_save_id methods. * subscribe-dialog.c: Added arguments for e_tree_memory_callbacks_new of get_save_id and has_save_id to NULL. 2001-03-16 Christopher James Lahey <clahey@ximian.com> * message-list.c: Added a call to e_tree_memory_set_expanded_default to TRUE. Removed all calls to set_expanded on nodes while the tree is frozen since this fails miserably now. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * message-list.c (message_list_get_layout): Turned off draw-grid. 2001-03-09 Christopher James Lahey <clahey@ximian.com> * folder-browser-factory.c, folder-browser.c, message-list.c, message-list.h, subscribe-dialog.c, subscribe-dialog.h, mail-callbacks.c: Converted these all to use ETree instead of ETable. End of branch From shell/ChangeLog: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * Merged e-tree-rework-branch: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c (etree_get_save_id): Made "root" detection deal properly with removed nodes. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-shell-view.c (e_shell_view_save_settings): Added some unused code to implement saving of the expanded state. * e-storage-set-view.c: Added has_save_id and get_save_id methods. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c (ETREE_SPEC): Set draw-grid here to false. 2001-03-09 Christopher James Lahey <clahey@ximian.com> * e-storage-set-view.c, e-storage-set-view.h: Chaned this to use ETree instead of ETable. End of branch svn path=/trunk/; revision=8839
* Move the proxy event outside the lock (otherwise we always deadlock).Not Zed2001-03-171-602/+301
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-17 Not Zed <NotZed@Ximian.com> * mail-mt.c (mail_msg_free): Move the proxy event outside the lock (otherwise we always deadlock). * mail-local.c (reconfigure_clicked): Clear the message list during update inside the folder thingy. This is a hell mess, need to move the gui stuff to mail-callbacks and make this reconfigure thing a more generic func. * message-list.c (ml_value_to_string): Cleanup the logic to use lookup tables. (sort_uid_to_rows): Removed due to rewrite below. (build_flat_diff): Changes for node/summary/etc changes. Also do changed nodes too. (clear_tree): Free the info reference for nodes in our hashtable. (build_subtree): Ref the info reference in our hash/tree node. (on_click): Dont free message info, since we just got our ref to it. (remove_node_diff): Free messageinfo off node. (build_flat): Ref messageinfo. (message_list_set_folder): Allow a NULL folder to be set - i.e. clear the view. (message_list_set_folder): Emit a no message sleeted signal. (build_tree): Change cursor keeping stuff to work with new info. Turned off BROKEN_ETREE - well maybe it'll work. Check for duplicate messages displayed, etc. 2001-03-16 Not Zed <NotZed@Ximian.com> * message-list.h: Added uid_nodemap; mapping of uid's to e-tree nodes. * message-list.c (build_flat): Changed to take a summary argument, and to store node in node map, etc, and store info's in e-tree. (build_subtree): Changed to store node in node map, and to store info's in tree directly. (ml_tree_value_at): Changed to get info directly from tree node, removed allocated return value logic. (ml_tree_value_at): Removed all "fake node" handling, no fake nodes should ever exist. (id_is_uid, id_is_subject, id_uid, id_subject): Removed macro's no longer used. (new_id_from_uid, new_id_from_subject): Removed no longer used. (get_message_uid): (get_message_info): Treat tree node data as messageinfo. (message_list_select): Dont free the messageinfo, as its part of our data, not retrieved from folder. (message_list_drag_data_get): ditto. (subtree_unread): Treat tree node data as messageinfo. (subtree_size): ditto. (subtree_earliest): ditto. (clear_tree): Reset uid_nodemap on clear. (save_node_state): tree nodes == messageinfo's. (add_node_diff): ditto. (remove_node_diff): ditto. (main_folder_changed): use uid_nodemap to lookup changed nodes. (main_message_changed): ditto. svn path=/trunk/; revision=8775
* started hack for progress reporting, which is currently to the console.Not Zed2001-02-221-0/+4
| | | | | | | | | | | | | | | | 2001-02-22 Not Zed <NotZed@Ximian.com> * mail-local.c (local_storage_new_folder_cb): started hack for progress reporting, which is currently to the console. * mail-mt.c (set_stop): Set the stop button sensitivity. (mail_msg_received): enable/disable stop button while we're processing stuff in another thread. * message-list.c (ml_tree_value_at): If our uid entry vanishes before w'ere ready, then make a fake. svn path=/trunk/; revision=8338
* Wrapped the address compare functions in a #ifdef (address_compare):Jeffrey Stedfast2001-02-161-0/+10
| | | | | | | | | | | 2001-02-15 Jeffrey Stedfast <fejj@ximian.com> * message-list.c: Wrapped the address compare functions in a #ifdef (address_compare): #ifdef the use of the smart address sorting code and provide a #else for using g_strcasecmp(). svn path=/trunk/; revision=8242
* if doing a full update, save the cursor pos and restore it afterwards.Not Zed2001-02-131-4/+52
| | | | | | | | | | | | | | | 2001-02-12 Not Zed <NotZed@Ximian.com> * message-list.c (build_tree): if doing a full update, save the cursor pos and restore it afterwards. (on_cursor_activated_cmd): Copy the current_uid to a new string. I dont know why this is required, but it is. (message_list_destroy): Free the cursor_uid as we're done with it. (build_flat): IF the current uid disappeared from the list, then unset the message. (build_tree): Likewise. svn path=/trunk/; revision=8199
* Updates for CamelStore changes, small memory leak fixes. (lookup_folder):Dan Winship2001-02-101-44/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * mail-local.c: Updates for CamelStore changes, small memory leak fixes. (lookup_folder): Removed (and moved into the reconfigure code) since this method no longer exists in CamelStore. (do_reconfigure_folder, etc): Update the info in the MailLocalStore after reconfiguring. (mail_local_lookup_folder): Removed * local-config.glade: fix padding of the label_format * message-list.c (ml_tree_value_at): Don't keep message infos reffed across calls, since this can cause badness after a reconfigure. Instead, just strdup the needed values and free those on the next call. * mail-tools.c (mail_tool_get_root_of_store): Unused, remove. (mail_tool_get_inbox): use camel_store_get_inbox. * evolution-outlook-importer.c (load_file_fn): * evolution-mbox-importer.c (load_file_fn): Use mail_tool_get_local_inbox() instead of mail_importer_get_folder() * mail-importer.c (mail_importer_get_folder): Removed svn path=/trunk/; revision=8147
* Added libmenus.la.Christopher James Lahey2001-02-071-1/+1
| | | | | | | | | | | | | | 2001-02-06 Christopher James Lahey <clahey@ximian.com> * Makefile.am (evolution_mail_LDADD): Added libmenus.la. * folder-browser-factory.c (control_activate): Added GalView menus here. * message-list.c, message-list.h (message_list_get_layout): Made message_list_get_layout export. svn path=/trunk/; revision=8041
* Change how the attachments are displayed.Iain Holmes2001-02-071-0/+1
| | | | | | Fix a minor memory leak in message-list.c svn path=/trunk/; revision=8039
* Cleaned up so we dont add an unecessary level of indenting.Not Zed2001-02-021-14/+51
| | | | | | | | | | | | | | | | | | 2001-02-02 Not Zed <NotZed@Ximian.com> * mail-send-recv.c (mail_send_receive): Cleaned up so we dont add an unecessary level of indenting. * message-list.c (ml_tree_value_at): For collapsed tree nodes, scan the collapses nodes for the unread and status information. Since we dont really have fake nodes anymore. 2001-01-30 Ian Campbell <ijc25@cam.ac.uk> * message-list.c: Add support for new icons for being read/unread for fake root messages on threads. svn path=/trunk/; revision=7942
* (build_tree): Oops, turn on BROKEN_ETREE again.Michael Zucci2001-01-291-3/+5
| | | | svn path=/trunk/; revision=7888
* Debug function to compare the tree we think we have, after an incrementalNot Zed2001-01-291-1/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-29 Not Zed <NotZed@Ximian.com> * message-list.c (tree_equal): Debug function to compare the tree we think we have, after an incremental update. (build_tree): Check the tree after we've built it. * mail-mt.c (mail_get_password): If we are being called from the main gui thread, then just call the dialogue directly. Ideally we dont want this anyway but lets handle the case nicely. (mail_get_password): Try locking around the password request, to single-queue any password requests. (mail_msg_init): Push an exit handler to clean it up on completion. * mail-send-recv.c (receive_update_got_store): New function called when the store has been retrieved asynchronously. (mail_send_receive): Get the store asynchronously. This was causing problems where the password dialogue would try and be called from the main thread via a message. * mail-ops.c (mail_get_store): New function to get a store (a)synchronously. More or less taken from subscribe-dialog, which i will remove later. (mail_scan_subfolders): Try running the scan subfolder thing asynchronously, to help startup time. Not sure if this will work, but presumably the shell can handle the folders appearing later ok. svn path=/trunk/; revision=7886
* Protect against NULL address pointers. (subject_compare): Same but forJeffrey Stedfast2001-01-281-0/+6
| | | | | | | | | | 2001-01-27 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (address_compare): Protect against NULL address pointers. (subject_compare): Same but for subject pointers. svn path=/trunk/; revision=7863
* Define BROKEN_ETREE again, till we get this stuff fixed better.Not Zed2001-01-261-1/+1
| | | | | | | | | | | | | | | | | | | 2001-01-26 Not Zed <NotZed@Ximian.com> * message-list.c (build_tree): Define BROKEN_ETREE again, till we get this stuff fixed better. 2001-01-25 Not Zed <NotZed@Ximian.com> * folder-browser.c: Moved teh "sender contains" item to the end of the list, so the gui doesn't suddenly change on everyone. Fixed the sender-contains search string to be a valid s-exp (ha, didn't test it even once eh ettore?!) (search_save): Dont have the sender contains as the default case (which well, never gets called anyway), oops i guess i should've reviewed the patch a little more. svn path=/trunk/; revision=7835
* Yes, some more screw ups...Iain Holmes2001-01-261-12/+5
| | | | | | This cvs thing, I don't get it, I wrap my hand in plastic to try to look through it. svn path=/trunk/; revision=7833
* GNOME_Evolution_Mail.oafinfoIain Holmes2001-01-261-5/+12
| | | | svn path=/trunk/; revision=7831
* Made the message list pay attention to the "cursor_activated" signalChristopher James Lahey2001-01-261-6/+6
| | | | | | | | | 2001-01-25 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Made the message list pay attention to the "cursor_activated" signal instead of the "cursor_change" signal. svn path=/trunk/; revision=7812
* Try turning off the BROKEN_ETREE thing. It seems to work ok (better?) now,Not Zed2001-01-231-3/+3
| | | | | | | | | | 2001-01-23 Not Zed <NotZed@Ximian.com> * message-list.c (build_tree): Try turning off the BROKEN_ETREE thing. It seems to work ok (better?) now, but if its still broken i'll remove it again for the next release. svn path=/trunk/; revision=7740
* remove a warning with conditional news compilation.Not Zed2001-01-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-22 Not Zed <NotZed@Ximian.com> * component-factory.c (owner_set_cb): remove a warning with conditional news compilation. * mail-ops.h: Cleaned up the header list. * folder-browser-factory.c: Replace the old get_send mail with the new one (button). * mail-ops.c (set_x_mailer): (mail_load_evolution_rule_context): (mail_do_fetch_mail): (mail_do_filter_ondemand): (mail_send_mail_old): (mail_do_send_queue): All removed, (for) now lives in mail-send-recv.c. (load_context): (setup_filter_driver): (filter_get_folder): (mail_filter_folder): (mail_fetch_mail): (mail_update_subfolders): (mail_send_mail): (mail_send_queue): New equivalents of all these fundtions, moved from mail-send-recv.c ... (mail_filter_on_demand): Moved here too. (mail_load_filter_context): Export this. * mail-callbacks.c (apply_filters): Use the new mail_filter_on_demand() call. (send_receieve_mail): Use mail_send_receive to do the work. Add a little error handling here that used to be elsewhere. (send_queued_mail): Removed. (fetch_mail): Removed. (select_first_unread): #ifdef'd this out. Not sure if this still makes sense, but it doesn't get run right now anyway. (composer_postpone_cb): Fix the setting of message flags. You dont need to get them first, ever. * mail-send-recv.c (mail_send_message): Dont use mail_tool_send_via_transport anymore (it does nothing useful). * mail-tools.c (mail_tool_camel_lock_up): Turned into a noop. (mail_tool_camel_lock_down): And here too. (mail_tool_move_folder_contents): Removed from the code (hasn't bene used for ages). (mail_tool_send_via_transport): Removed, it doesn't save anything. svn path=/trunk/; revision=7702
* Added draw-focus="true" and selection-mode="browse" attributes to theChristopher James Lahey2001-01-211-4/+1
| | | | | | | | | | | | 2001-01-21 Christopher James Lahey <clahey@helixcode.com> * message-list.c (message_list_get_layout): Added draw-focus="true" and selection-mode="browse" attributes to the ETableSpecification. (message_list_construct): Removed setting the "draw_focus" argument since it doesn't exist any more. svn path=/trunk/; revision=7674
* Change from using filters for date and size to using e_cell_date andChristopher James Lahey2001-01-161-12/+14
| | | | | | | | | | 2001-01-15 Christopher James Lahey <clahey@ximian.com> * message-list.c, message-list.h: Change from using filters for date and size to using e_cell_date and e_cell_size. Moved a bunch of includes from the message-list.h to the message-list.c. svn path=/trunk/; revision=7524
* Set the default button to `Yes' here.Miguel de Icaza2001-01-151-1/+1
| | | | | | | | | 2001-01-15 Miguel de Icaza <miguel@ximian.com> * mail-callbacks.c (configure_mail): Set the default button to `Yes' here. svn path=/trunk/; revision=7498
* Changed filter_date and filter_size to match the changes in gal.Christopher James Lahey2001-01-131-8/+9
| | | | | | | | | 2001-01-12 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Changed filter_date and filter_size to match the changes in gal. svn path=/trunk/; revision=7466
* Add strings for localizationMiguel de Icaza2001-01-121-0/+8
| | | | | | | | 2001-01-12 Miguel de Icaza <miguel@ximian.com> * message-list.c: Add strings for localization svn path=/trunk/; revision=7447
* Made it so that going to the next or previous message in the list will atChristopher James Lahey2001-01-071-0/+3
| | | | | | | | | | | | 2001-01-06 Christopher James Lahey <clahey@helixcode.com> * message-list.c (message_list_select): Made it so that going to the next or previous message in the list will at least move one message, even if the current message matches the query. This makes 'n' go to the next unread message, even if the current message is unread. svn path=/trunk/; revision=7288
* Removed old implementation.Not Zed2001-01-041-136/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Changed this to format times in 12 hour time instead of 24 hour time.Christopher James Lahey2000-12-251-4/+4
| | | | | | | | | 2000-12-24 Christopher James Lahey <clahey@helixcode.com> * message-list.c (filter_date): Changed this to format times in 12 hour time instead of 24 hour time. svn path=/trunk/; revision=7160
* Changed this to do different formatting of dates within the last week.Christopher James Lahey2000-12-251-9/+28
| | | | | | | | | 2000-12-24 Christopher James Lahey <clahey@helixcode.com> * message-list.c (filter_date): Changed this to do different formatting of dates within the last week. svn path=/trunk/; revision=7157
* Merge from camel-mt-branch.Not Zed2000-12-241-47/+103
| | | | | | | | 2000-12-24 Not Zed <NotZed@HelixCode.com> * Merge from camel-mt-branch. svn path=/trunk/; revision=7153
* Changed this to do different formatting of dates based on the currentChristopher James Lahey2000-12-231-5/+27
| | | | | | | | | 2000-12-23 Christopher James Lahey <clahey@helixcode.com> * message-list.c (filter_date): Changed this to do different formatting of dates based on the current time. svn path=/trunk/; revision=7140
* Added titles to the pixbuf columns.Christopher James Lahey2000-12-231-4/+4
| | | | | | | | | 2000-12-23 Christopher James Lahey <clahey@helixcode.com> * message-list.c (message_list_get_layout): Added titles to the pixbuf columns. svn path=/trunk/; revision=7139
* Unlock camel when done to prevent a hang later.Dan Winship2000-12-191-0/+1
| | | | | | | * message-list.c (hide_save_state): Unlock camel when done to prevent a hang later. svn path=/trunk/; revision=7072
* Always use the slow (full-update) version of the tree update code, to getNot Zed2000-12-161-13/+278
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-16 Not Zed <NotZed@HelixCode.com> * message-list.c (build_tree): Always use the slow (full-update) version of the tree update code, to get around a bug(?) in etree. (build_flat): Likewise. 2000-12-15 Not Zed <NotZed@HelixCode.com> * mail-display.c (write_data_to_file): Dont blindly convert all parts to utf8, e.g. image/jpg. We only convert text/* parts, and only then if required. 2000-12-14 Not Zed <NotZed@HelixCode.com> * component-factory.c (create_view): cast over a warning. * folder-browser-factory.c: Add verbs for hide functions. * message-list.c (message_list_hide_clear): (message_list_hide_uids): (message_list_hide_add): Some api renaming. (message_list_hide_add): Allow ML_HIDE_SAME to be passed to mean not to change the upper/lower range at all. (hide_save_state): Save the state of the hide list to stable storage. (hide_load_state): Load the state of hte hide list. (message_list_set_folder): Load/save the state of the folder if it is changed/set. (message_list_destroy): Save the state of the folder hide list when done. (save_tree_state): If we wrote out an empty state file, simply remove it instead. * folder-browser.c (on_right_click): Add some hide menus. (hide_read): Hide read messages. (hide_deleted): Hide deleted messages. (hide_selected): Hide selected/current message. (hide_none): Show all hidden messages. (on_right_click): Lock around accesses to the message (inside mlist_detect_magic). (on_right_click): Free the mailing list name. 2000-12-13 Not Zed <NotZed@HelixCode.com> * folder-browser.c (on_right_click): Add camel locking since we call it directly. Whoever heard of a lock you 'down' to unlock? * message-list.c (mail_do_regenerate_messagelist): Added hide expression, messages to hide. Fixed all callers. (do_regenerate_messagelist): IF we have a hide expression, search and remove those from the uid list. If we have a hide range, apply that afterwards. (cleanup_regenerate_messagelist): Handle freeing the hide uid temporary data, if required. (message_list_destroy): Free hide data, also lock around all camel object stuff. (message_list_length): New function to get the number of messages avaialble to be hidden by range. (message_list_set_hide): Set the hide expression and range. Issue: Should hiding be remembered? (message_list_unhide_all): Turn off all hiding. (message_list_hide_uids): Hide a list of uid's. svn path=/trunk/; revision=7061
* Made the vertical scrollbar always be there.Christopher James Lahey2000-12-141-2/+2
| | | | | | | | | | | | 2000-12-13 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c (my_folder_browser_init): Made the vertical scrollbar always be there. * message-list.c (message_list_get_layout): Changed the minimum width of some of the pixmap column headers. svn path=/trunk/; revision=6983
* Remove the never-once-used BonoboObject stuff and make MessageList be aDan Winship2000-12-121-154/+63
| | | | | | | | | | | | | | | | | | | | | | | | | * message-list.c: Remove the never-once-used BonoboObject stuff and make MessageList be a GtkWidget instead. Also, keep track of the ETable directly rather than repeatedly calling e_table_scrolled_get_table. * folder-browser.c (folder_browser_destroy): Use gtk methods rather than bonobo methods to destroy the message list. (on_right_click, on_double_click): These are being attached to the ETable directly now, so fix the first argument (which isn't being used anyway, but...) (folder_browser_gui_init): simplify now that MessageList itself is a widget. Also use message_list->table rather than e_table_scrolled_get_table. * mail-local.c (mail_local_reconfigure_folder): Add "mail_" to the beginning of this function name to match its prototype and the other vague namespace conventions in the mailer. * mail-callbacks.c (select_all, invert_selection): Use ml->table. (configure_folder): s/local_reconfigure_folder/mail_&/ svn path=/trunk/; revision=6908
* Change the "drawfocus" argument on e_table_scrolled_get_table(etable)Christopher James Lahey2000-12-101-1/+1
| | | | | | | | | | 2000-12-09 Christopher James Lahey <clahey@helixcode.com> * message-list.c (message_list_init): Change the "drawfocus" argument on e_table_scrolled_get_table(etable) instead of on etable (etable is an ETableScrolled.) svn path=/trunk/; revision=6893
* a slight mixup in order causes "1.33 M" to be displayed as the subject...uh ↵Jeffrey Stedfast2000-12-091-4/+4
| | | | | | huh, yea... svn path=/trunk/; revision=6877
* Set the "Size" field to sort using integer comparison instead of string.Jeffrey Stedfast2000-12-091-21/+40
| | | | | | | | | | | | | | | | | | 2000-12-08 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (message_list_get_layout): Set the "Size" field to sort using integer comparison instead of string. (filter_size): New function to transform a integer size into a more readable form. (ml_value_to_string): Use filter_size. (ml_value_is_empty): COL_SIZE is no longer a string, so handle this as an integer. (ml_initialize_value): Here too. (ml_free_value): And here. (ml_duplicate_value): And here too. (message_list_create_extras): Setup the size etable cell. svn path=/trunk/; revision=6876
* Connect to signals on the ETable instead of the ETableScrolled.Christopher James Lahey2000-12-091-4/+4
| | | | | | | | | 2000-12-08 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Connect to signals on the ETable instead of the ETableScrolled. svn path=/trunk/; revision=6871
* Got rid of code referencing the ETableScrolled proxy functions. ChangedChristopher James Lahey2000-12-081-9/+9
| | | | | | | | | | 2000-12-07 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Got rid of code referencing the ETableScrolled proxy functions. Changed the call to e_table_set_cursor_row to send a model row instead of a view row. svn path=/trunk/; revision=6852
* Use e_filename_make_safe (which used to be e_str_make_safe).Jeffrey Stedfast2000-12-071-1/+1
| | | | | | | | | | | | | 2000-12-06 Jeffrey Stedfast <fejj@helixcode.com> * mail-config.c (mail_config_folder_to_cachename): Use e_filename_make_safe (which used to be e_str_make_safe). * mail-display.c (make_safe_filename): And here. * message-list.c (message_list_drag_data_get): Here too. svn path=/trunk/; revision=6827
* Perform better error-handling.Jeffrey Stedfast2000-12-021-2/+5
| | | | | | | | | 2000-12-01 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (e_mail_address_new): Perform better error-handling. svn path=/trunk/; revision=6758
* Don't display a dialog, instead inform the user that there was no new mailJeffrey Stedfast2000-12-011-4/+21
| | | | | | | | | | | | | | | | | 2000-11-30 Jeffrey Stedfast <fejj@helixcode.com> * mail-ops.c (cleanup_fetch_mail): Don't display a dialog, instead inform the user that there was no new mail by setting a status message. * message-list.c (message_list_drag_data_get): Use the new e_str_make_safe function. * mail-display.c (make_safe_filename): And here. * mail-config.c (mail_config_folder_to_cachename): Here too. svn path=/trunk/; revision=6745
* Set threaded view before setting the folder (cleanup some flash onsNot Zed2000-11-301-99/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-30 Not Zed <NotZed@HelixCode.com> * mail-ops.c (cleanup_load_folder): Set threaded view before setting the folder (cleanup some flash ons tartup). * message-list.c (message_list_init): Initialise a mempool for uid string storage. (new_id_from_uid): Added messagelist arg, allocate strings from uid_pool. (new_id_from_subject): Same. Fixed all callers. (remove_node_diff): Dont free uid here. (build_flat_diff): Nor here. (clear_tree): Flush the mempool, rather than freeing the id's directly. (free_tree_ids): Removed, no longer required. (free_tree_ids): Likewise. (message_list_init): Dont connect to the table destroy signal anymore to free the uid table. (message_list_destroy): Free the uid pool here. (*): Use accessors for messageid stuff. (content_is_attachment): Removed, no longer required. (ml_tree_value_at): Get the attachment flag directly from the summary. (ml_tree_value_at): For 'fake' nodes, try and do something better than "?" for from, to, and size. (subtree_size): New function, add up the total size of a subtree. (subtree_earliest): Get the earliest date from a subtree. (ml_tree_value_at): Return earliest date sent/received for fake nodes. (ml_tree_value_at): Return something to mark a fake subject line as a fake subject, although i dont know, i guess this buggers up sorting ... (subtree_size): Check the info node is still there. (subtree_earliest): Same here. (subtree_unread): And here. The info node might vanish if the folder has changed/is changing and we try and redraw stuff while its doing it. (message_list_drag_data_get): Use accessors. svn path=/trunk/; revision=6732
* Implement. (message_list_init): Connect the d&d signal.Jeffrey Stedfast2000-11-301-22/+11
| | | | | | | | | | | | | 2000-11-29 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (message_list_drag_data_get): Implement. (message_list_init): Connect the d&d signal. * mail-ops.c (do_save_messages): Use camel a bit more to help us out. Don't create the file ourselves, treat it as a CamelFolder so we don't have to worry about formatting. svn path=/trunk/; revision=6728
* IF we dont find a source, clear the exception and ignore it silently. forNot Zed2000-11-211-14/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-21 Not Zed <NotZed@HelixCode.com> * mail-vfolder.c (vfolder_uri_to_folder): IF we dont find a source, clear the exception and ignore it silently. for e.g. if the user reconfigured their mailboxes and one of them no longer exists. * message-list.c: (message_list_set_folder): If we get set a new folder, unhook any events before unrefing the folder too (the folder is never reset currently, but this would cause problems). (subtree_unread): Check for uid null, wont crash, but its a bug. (ml_tree_value_at): If the uid is null, then fake an obviously bad line. (build_subtree): Yeah well, we can't like freeze/thaw here, because this is called recursive, and freeze/thaw isn't recursive, like pre model and post model change was. (build_tree): Maybe we can try it here, although i dont think it'll help much. (build_flat): And this is also a tree. yes a tree. (build_tree): Added changes arg. If set, then try the 'diff' approach, unless the tree is already empty. (message_list_set_threaded): Dont clear the tree here. (message_list_set_search): Or here. svn path=/trunk/; revision=6629
* Removed. No longer serves a purpose.Not Zed2000-11-211-12/+12
| | | | | | | | | | | | | | | | | 2000-11-21 Not Zed <NotZed@HelixCode.com> * message-thread.[ch]: Removed. No longer serves a purpose. * Makefile.am (evolution_mail_SOURCES): Removed message-thread.[ch]. * message-list.c (build_subtree): (node_equal): (add_node_diff): (build_subtree_diff): (do_regenerate_messagelist): (cleanup_regenerate_messagelist): Changed to use camel-folder-thread. svn path=/trunk/; revision=6625
* Save out the md5 hash of the messageid as hex, since thats all we have forNot Zed2000-11-211-7/+11
| | | | | | | | | | | | | | | | | 2000-11-20 Not Zed <NotZed@HelixCode.com> * message-list.c (save_node_state): Save out the md5 hash of the messageid as hex, since thats all we have for those nodes. (build_subtree): Expand the messageid to a hex string first, then check it. (add_node_diff): And the same here. * message-thread.c (thread_messages): Changed for changes to messageid/references items. (id_hash, id_equal): New functions to hash on the binary message id hash. (thread_messages): removed some more no longer used dead code. svn path=/trunk/; revision=6617
* New comparison function that will replace address_compare if/when we everJeffrey Stedfast2000-11-211-69/+101
| | | | | | | | | | | | | 2000-11-20 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (e_mail_address_compare): New comparison function that will replace address_compare if/when we ever go to save the preparsed addresses in the ETable rather than parsing them each time. Also fixed it so that we should get better sorting when addresses don't contain name parts (I was checking for NULL but not '\0'). svn path=/trunk/; revision=6615
* Before we destroy ourselves, unhook ourselves from the folder updateNot Zed2000-11-171-1/+9
| | | | | | | | | | 2000-11-17 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_destroy): Before we destroy ourselves, unhook ourselves from the folder update events. Should fix a common crash on exit case. svn path=/trunk/; revision=6598
* Added the MessageViewSource bonobo menu verb.Jeffrey Stedfast2000-11-171-0/+1
| | | | | | | | | | | | 2000-11-16 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser-factory.c: Added the MessageViewSource bonobo menu verb. * mail-ops.c (mail_do_save_messages): New async function to save messages as individual files in a given path. svn path=/trunk/; revision=6596
* Update the gal reqiurement version.Christopher James Lahey2000-11-141-3/+5
| | | | | | | | | | | | | | | 2000-11-13 Christopher James Lahey <clahey@helixcode.com> * configure.in: Update the gal reqiurement version. From mail/ChangeLog: 2000-11-13 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Removed some e_table_model calls and replaced them with e_tree_model calls. svn path=/trunk/; revision=6564
* A very, long, very tedious IDL API rename and re-scoping;Michael Meeks2000-11-111-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this script + some grunt approximates the work: s/Evolution_MessageList/GNOME_Evolution_MessageList/g; s/GNOME_Evolution_MessageList_select_message/GNOME_Evolution_MessageList_selectMessage/g; s/GNOME_Evolution_MessageList_open_message/GNOME_Evolution_MessageList_openMessage/g; s/Evolution_Folder([ \t])/GNOME_Evolution_Folder$1/g; s/Evolution_FolderTypeList/GNOME_Evolution_FolderTypeList/g; s/Evolution_FolderBrowser/GNOME_Evolution_FolderBrowser/g; s/GNOME_Evolution_FolderBrowser_get_message_list/GNOME_Evolution_FolderBrowser_getMessageList/g; s/Evolution_LocalStorage/GNOME_Evolution_LocalStorage/g; s/GNOME_Evolution_LocalStorage_update_folder/GNOME_Evolution_LocalStorage_updateFolder/g; s/Evolution_ShellView/GNOME_Evolution_ShellView/g; s/GNOME_Evolution_ShellView_set_message/GNOME_Evolution_ShellView_setMessage/g; s/GNOME_Evolution_ShellView_unset_message/GNOME_Evolution_ShellView_unsetMessage/g; s/GNOME_Evolution_ShellView_change_current_view/GNOME_Evolution_ShellView_changeCurrentView/g; s/Evolution_StorageSetViewListener/GNOME_Evolution_StorageSetViewListener/g; s/GNOME_Evolution_StorageSetViewListener_folder_selected/GNOME_Evolution_StorageSetViewListener_notifyFolderSelected/g; s/GNOME_Evolution_StorageSetViewListener_storage_selected/GNOME_Evolution_StorageSetViewListener_notifyStorageSelected/g; s/Evolution_StorageSetView/GNOME_Evolution_StorageSetView/g; s/GNOME_Evolution_StorageSetView_add_listener/GNOME_Evolution_StorageSetView_addListener/g; s/GNOME_Evolution_StorageSetView_remove_listener/GNOME_Evolution_StorageSetView_removeListener/g; s/Evolution_Shell/GNOME_Evolution_Shell/g; s/GNOME_Evolution_Shell_get_component_for_type/GNOME_Evolution_Shell_getComponentByType/g; s/GNOME_Evolution_Shell_user_select_folder/GNOME_Evolution_Shell_selectUserFolder/g; s/GNOME_Evolution_Shell_get_local_storage/GNOME_Evolution_Shell_getLocalStorage/g; s/GNOME_Evolution_Shell_create_storage_set_view/GNOME_Evolution_Shell_createStorageSetView/g; s/Evolution_FolderSelectionListener/GNOME_Evolution_FolderSelectionListener/g; s/GNOME_Evolution_FolderSelectionListener_selected/GNOME_Evolution_FolderSelectionListener_notifySelected/g; s/GNOME_Evolution_FolderSelectionListener_cancel/GNOME_Evolution_FolderSelectionListener_notifyCanceled/g; s/Evolution_Storage/GNOME_Evolution_Storage/g; s/GNOME_Evolution_Storage_add_listener/GNOME_Evolution_Storage_addListener/g; s/GNOME_Evolution_Storage_remove_listener/GNOME_Evolution_Storage_removeListener/g; s/GNOME_Evolution_StorageListener_destroyed/GNOME_Evolution_StorageListener_notifyDestroyed/g; s/GNOME_Evolution_StorageListener_new_folder/GNOME_Evolution_StorageListener_notifyFolderCreated/g; s/GNOME_Evolution_StorageListener_update_folder/GNOME_Evolution_StorageListener_notifyFolderUpdated/g; s/GNOME_Evolution_StorageListener_removed_folder/GNOME_Evolution_StorageListener_notifyFolderRemoved/g; s/GNOME_Evolution_StorageRegistry_register_storage/GNOME_Evolution_StorageRegistry_addStorage/g; s/GNOME_Evolution_StorageRegistry_unregister_storage/GNOME_Evolution_StorageRegistry_removeStorageByName/g; s/Evolution_ShellComponent/GNOME_Evolution_ShellComponent/g; s/GNOME_Evolution_ShellComponent_set_owner/GNOME_Evolution_ShellComponent_setOwner/g; s/GNOME_Evolution_ShellComponent_unset_owner/GNOME_Evolution_ShellComponent_unsetOwner/g; s/GNOME_Evolution_ShellComponent_create_view/GNOME_Evolution_ShellComponent_createView/g; s/GNOME_Evolution_ShellComponent_async_create_folder/GNOME_Evolution_ShellComponent_addFolderAsync/g; s/GNOME_Evolution_ShellComponent_async_remove_folder/GNOME_Evolution_ShellComponent_removeFolderAsync/g; s/GNOME_Evolution_ShellComponent_populate_folder_context_menu/GNOME_Evolution_ShellComponent_populateFolderContextMenu/g; s/GNOME_Evolution_ShellComponentListener_report_result/GNOME_Evolution_ShellComponentListener_notifyResult/g; s/Evolution_Session/GNOME_Evolution_Session/g; s/GNOME_Evolution_Session_save_configuration/GNOME_Evolution_Session_saveConfiguration/g; s/GNOME_Evolution_Session_load_configuration/GNOME_Evolution_Session_loadConfiguration/g; s/Evolution_Calendar_Cal/GNOME_Evolution_Calendar_Cal/g; s/GNOME_Evolution_Calendar_Cal_get_n_objects/GNOME_Evolution_Calendar_Cal_countObjects/g; s/GNOME_Evolution_Calendar_Cal_get_object/GNOME_Evolution_Calendar_Cal_getObject/g; s/GNOME_Evolution_Calendar_Cal_get_uids/GNOME_Evolution_Calendar_Cal_getUIds/g; s/GNOME_Evolution_Calendar_Cal_get_changed_uids/GNOME_Evolution_Calendar_Cal_getChangedUIds/g; s/GNOME_Evolution_Calendar_Cal_get_objects_in_range/GNOME_Evolution_Calendar_Cal_getObjectsInRange/g; s/GNOME_Evolution_Calendar_Cal_get_alarms_in_range/GNOME_Evolution_Calendar_Cal_getAlarmsInRange/g; s/GNOME_Evolution_Calendar_Cal_get_alarms_for_object/GNOME_Evolution_Calendar_Cal_getAlarmsForObject/g; s/GNOME_Evolution_Calendar_Cal_update_object/GNOME_Evolution_Calendar_Cal_updateObject/g; s/GNOME_Evolution_Calendar_Cal_remove_object/GNOME_Evolution_Calendar_Cal_removeObject/g; s/Evolution_Calendar_Listener/GNOME_Evolution_Calendar_Listener/g; s/GNOME_Evolution_Calendar_Listener_cal_loaded/GNOME_Evolution_Calendar_Listener_notifyCalLoaded/g; s/GNOME_Evolution_Calendar_Listener_obj_updated/GNOME_Evolution_Calendar_Listener_notifyObjUpdated/g; s/GNOME_Evolution_Calendar_Listener_obj_removed/GNOME_Evolution_Calendar_Listener_notifyObjRemoved/g; s/Evolution_Calendar_CalFactory/GNOME_Evolution_Calendar_CalFactory/g; s/GNOME_Evolution_Calendar_CalFactory_load/GNOME_Evolution_Calendar_CalFactory_load/g; s/GNOME_Evolution_Calendar_CalFactory_create/GNOME_Evolution_Calendar_CalFactory_create/g; s/Evolution_Composer/GNOME_Evolution_Composer/g; s/GNOME_Evolution_Composer_set_headers/GNOME_Evolution_Composer_setHeaders/g; s/GNOME_Evolution_Composer_set_body_text/GNOME_Evolution_Composer_setBodyText/g; s/GNOME_Evolution_Composer_attach_MIME/GNOME_Evolution_Composer_attachMIME/g; s/GNOME_Evolution_Composer_attach_data/GNOME_Evolution_Composer_attachData/g; s/GNOME_Evolution_Composer_show/GNOME_Evolution_Composer_show/g; s/Evolution_Addressbook_SelectNames/GNOME_Evolution_Addressbook_SelectNames/g; s/GNOME_Evolution_Addressbook_SelectNames_add_section/GNOME_Evolution_Addressbook_SelectNames_addSection/g; s/GNOME_Evolution_Addressbook_SelectNames_get_entry_for_section/GNOME_Evolution_Addressbook_SelectNames_getEntryBySection/g; s/GNOME_Evolution_Addressbook_SelectNames_activate_dialog/GNOME_Evolution_Addressbook_SelectNames_activateDialog/g; s/Evolution_CardCursor/GNOME_Evolution_Addressbook_CardCursor/g; s/GNOME_Evolution_Addressbook_CardCursor_get_length/GNOME_Evolution_Addressbook_CardCursor_getLength/g; s/GNOME_Evolution_Addressbook_CardCursor_get_nth/GNOME_Evolution_Addressbook_CardCursor_getNth/g; s/Evolution_BookViewListener/GNOME_Evolution_Addressbook_BookViewListener/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_added/GNOME_Evolution_Addressbook_BookViewListener_notifyCardAdded/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_removed/GNOME_Evolution_Addressbook_BookViewListener_notifyCardRemoved/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_changed/GNOME_Evolution_Addressbook_BookViewListener_notifyCardChanged/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_sequence_complete/GNOME_Evolution_Addressbook_BookViewListener_notifySequenceComplete/g; s/GNOME_Evolution_Addressbook_BookViewListener_signal_status_message/GNOME_Evolution_Addressbook_BookViewListener_notifyStatusMessage/g; s/Evolution_BookView/GNOME_Evolution_Addressbook_BookView/g; s/Evolution_Book/GNOME_Evolution_Addressbook_Book/g; s/GNOME_Evolution_Addressbook_Book_get_vcard/GNOME_Evolution_Addressbook_Book_getVCard/g; s/GNOME_Evolution_Addressbook_Book_can_write/GNOME_Evolution_Addressbook_Book_isWriteable/g; s/GNOME_Evolution_Addressbook_Book_can_write_card/GNOME_Evolution_Addressbook_Book_isCardWriteable/g; s/GNOME_Evolution_Addressbook_Book_create_card/GNOME_Evolution_Addressbook_Book_addCard/g; s/GNOME_Evolution_Addressbook_Book_remove_card/GNOME_Evolution_Addressbook_Book_removeCard/g; s/GNOME_Evolution_Addressbook_Book_modify_card/GNOME_Evolution_Addressbook_Book_modifyCard/g; s/GNOME_Evolution_Addressbook_Book_get_cursor/GNOME_Evolution_Addressbook_Book_getCursor/g; s/GNOME_Evolution_Addressbook_Book_get_book_view/GNOME_Evolution_Addressbook_Book_getBookView/g; s/GNOME_Evolution_Addressbook_Book_get_changes/GNOME_Evolution_Addressbook_Book_getChanges/g; s/GNOME_Evolution_Addressbook_Book_check_connection/GNOME_Evolution_Addressbook_Book_checkConnection/g; s/GNOME_Evolution_Addressbook_Book_get_static_capabilities/GNOME_Evolution_Addressbook_Book_getStaticCapabilities/g; s/GNOME_Evolution_Addressbook_Book_get_name/GNOME_Evolution_Addressbook_Book_getName/g; s/Evolution_BookListener/GNOME_Evolution_Addressbook_BookListener/g; s/GNOME_Evolution_Addressbook_BookListener_respond_create_card/GNOME_Evolution_Addressbook_BookListener_notifyCardCreated/g; s/GNOME_Evolution_Addressbook_BookListener_respond_remove_card/GNOME_Evolution_Addressbook_BookListener_notifyCardRemoved/g; s/GNOME_Evolution_Addressbook_BookListener_respond_modify_card/GNOME_Evolution_Addressbook_BookListener_notifyCardModified/g; s/GNOME_Evolution_Addressbook_BookListener_report_open_book_progress/GNOME_Evolution_Addressbook_BookListener_notifyOpenBookProgress/g; s/GNOME_Evolution_Addressbook_BookListener_respond_open_book/GNOME_Evolution_Addressbook_BookListener_notifyBookOpened/g; s/GNOME_Evolution_Addressbook_BookListener_respond_get_cursor/GNOME_Evolution_Addressbook_BookListener_notifyCursorRequested/g; s/GNOME_Evolution_Addressbook_BookListener_respond_get_view/GNOME_Evolution_Addressbook_BookListener_notifyViewRequested/g; s/GNOME_Evolution_Addressbook_BookListener_respond_get_changes/GNOME_Evolution_Addressbook_BookListener_notifyChangesRequested/g; s/GNOME_Evolution_Addressbook_BookListener_report_connection_status/GNOME_Evolution_Addressbook_BookListener_notifyConnectionStatus/g; s/Evolution_BookFactory/GNOME_Evolution_Addressbook_BookFactory/g; s/GNOME_Evolution_Addressbook_BookFactory_open_book/GNOME_Evolution_Addressbook_BookFactory_openBook/g; s/Evolution_SummaryComponent/GNOME_Evolution_Summary_Component/g; s/GNOME_Evolution_Summary_SummaryComponent_set_owner/GNOME_Evolution_Summary_Component_setOwner/g; s/GNOME_Evolution_Summary_SummaryComponent_unset_owner/GNOME_Evolution_Summary_Component_unsetOwner/g; s/GNOME_Evolution_Summary_SummaryComponent_create_view/GNOME_Evolution_Summary_Component_createView/g; s/GNOME_Evolution_Summary_SummaryComponent_destroy_view/GNOME_Evolution_Summary_Component_destroyView/g; s/Evolution_Summary([ \t])/GNOME_Evolution_Summary_ViewFrame$1/g; s/Evolution_Summary_set_title/GNOME_Evolution_Summary_ViewFrame_setTitle/g; s/Evolution_Summary_set_icon/GNOME_Evolution_Summary_ViewFrame_setIcon/g; s/Evolution_Summary_update_component/GNOME_Evolution_Summary_ViewFrame_updateComponent/g; s/GNOME_GNOME/GNOME/g; s/GNOME_GNOME/GNOME/g; s/GNOME_GNOME/GNOME/g; svn path=/trunk/; revision=6535
* don't free the MessageList search when it's being reusedDan Winship2000-11-041-1/+1
| | | | | | | * message-list.c (cleanup_regenerate_messagelist): don't free the MessageList search when it's being reused svn path=/trunk/; revision=6382
* Added new header files.Jeffrey Stedfast2000-11-041-24/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-03 Jeffrey Stedfast <fejj@helixcode.com> * Makefile.am: Added new header files. * component-factory.c (owner_set_cb): s/session_init/mail_session_init * session.c: Renamed public functions to mail_session_*. FIXME: Rename session.c to mail-session.c * folder-browser-factory.c: #include "mail-callbacks.h", #include "mail-session.h" and replace forget_passwords with mail_session_forget_passwords * mail.h: Move session prototypes to mail-session.h, Move mail-crypto prototypes to mail-crypto.h, Move mail-callback prototypes to mail-callbacks.h * mail-session.h: New header file containing public prototypes for session.c * mail-format.c: #include "mail-crypto.h" * mail-view.c: * folder-browser.c: #include "mail-callbacks.h" * mail-crypto.h: New header file containing public prototypes for mail-crypto.c * mail-callbacks.h: New header file containing public prototypes for mail-callbacks.c * message-list.c (message_list_get_layout): Set useful defaults. (message_list_setup_etable): Don't set the Outbox defaults on a folder just because it doesn't have a corresponding saved file. svn path=/trunk/; revision=6372
* Added mail-display.h.Not Zed2000-11-031-257/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-03 Not Zed <NotZed@HelixCode.com> * mail-view.c: Added mail-display.h. * mail-autofilter.c: Removed unecessary headers. Who ran indent over this code? Sigh. * mail-ops.c (display_message_input_s): Added messagedisplay. (mail_do_display_message): Added messagedisplay arg. (mail_do_display_message): Dont bother doing another thread when we know we dont have a uid. (): Added folder-browser.h to headers. Sigh. * folder-browser-factory.c (control_activate): Setup the viewthreaded callback to the folder_browser function. * folder-browser.c (my_folder_browser_init): Connect to right_click of etable of the messagelist here. (on_right_click): Changed for argument changes. (folder_browser_toggle_threads): Changed to take a fb, and to set threaded mode on the messagelist. (my_folder_browser_init): Connect also to the double_click signal. (my_folder_browser_init): Connect to the message_selected signal of the message_list. (on_message_selected): Signal handler for message selected. (my_folder_browser_init): Fix for change to message_list_new(). * message-list.h: Dont include folder-browser.h. (message_list_toggle_threads): Moved into folder-browser.h. (struct _MessageList): Removed folderbrowser. * mail.h: Dont include folder-browser.h here either, but mail-types.h instead. Moved prototypes moved into folder-browser.c into folder-browser.h. (vfolder_*, filter_*). * mail-display.h: Dont include folder-browser.h here, but mail-types.h and specific camel headers. * message-thread.c (sort_node): Invert the sort order logic so the list is sorted in mailbox order, not reverse mailbox order. * message-list.c (free_tree_ids): Fix a merge foo. (remove_node_diff): Removed unused row argument. Fixed callers/prototype. (clear_tree): pre_change on the removal of the root node. (build_flat): Only perform pre_change if we are rebuilding the whole lot. For incremental change let etable do its thing. (build_tree): Likewise for building the tree view. If making incremental updates, do them as we build it. (vfolder_subject): (vfolder_sender): (vfolder_recipient): (filter_subject): (filter_sender): (filter_recipient): (filter_mlist): (on_right_click): Moved to folder-browser.c, where they belong. (message_list_init): Dont connect to right_click anymore. (message_list_toggle_threads): Moved to folder-browser.c, renamed. (on_double_click): Moved to folder-browser.c (on_click): Set the flags directly, rather than in anothre thread, which is just not necessary. (message_list_class_init): Added a new signal 'message_selected', to indicate when a message was selected. (on_cursor_change_idle): Emit a signal, rather than directly triggering the display update. (select_row): Removed, no longer used. (idle_select_row): And this too. (select_msg): Removed as well. (message_list_select): Emit a signal, rather thandisplaying/clearing the mail-display directly. (mark_msg_seen): Moved to folder-browser.c (message_list_new): Removed folderbrowser argument. svn path=/trunk/; revision=6365
* Sync with message menu. Addresses bugzilla bug #778.Jeffrey Stedfast2000-11-031-0/+3
| | | | | | | | | 2000-11-02 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (on_right_click): Sync with message menu. Addresses bugzilla bug #778. svn path=/trunk/; revision=6360
* Turn on draw grid for the main ETable (this may not be working in ETableChristopher James Lahey2000-11-031-1/+1
| | | | | | | | | 2000-11-02 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Turn on draw grid for the main ETable (this may not be working in ETable itself.) svn path=/trunk/; revision=6358
* ** Merged in camel-incremental-branch.Not Zed2000-11-021-176/+632
| | | | | | | | | | | | | 2000-11-02 Not Zed <NotZed@HelixCode.com> ** Merged in camel-incremental-branch. * mail-format.c (mail_get_message_body): Jeff! Sigh. We should definetly not be strduping the content, it has already been copied and duplicated. Look at get_data_wrapper_text. svn path=/trunk/; revision=6337
* Don't try to regenerate the message list if there is no folder. (TheDan Winship2000-10-301-0/+6
| | | | | | | | | * message-list.c (mail_do_regenerate_messagelist): Don't try to regenerate the message list if there is no folder. (The Bonobo UI code will call this as the callback for the "Threaded View" command.) svn path=/trunk/; revision=6255
* Add a "flagged" column, based on the Camel "flagged" flag, for assigningDan Winship2000-10-261-43/+83
| | | | | | | | | | | | | * message-list.c: Add a "flagged" column, based on the Camel "flagged" flag, for assigning an arbitrary "hey, I care about this" flag to a message. (ml_tree_set_value_at): Remove (ml_tree_is_cell_editable): No, it's not. (on_click): Handle the read/unread and flagged fields via the click handler. Among other things, this makes it not select a message when you change its read status. svn path=/trunk/; revision=6173
* lots of i18n fixesDan Winship2000-10-241-11/+5
| | | | svn path=/trunk/; revision=6143
* Fixed a possible error in row numberings. This needs to be changed quite aChristopher James Lahey2000-10-241-1/+2
| | | | | | | | | | 2000-10-23 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Fixed a possible error in row numberings. This needs to be changed quite a bit anyway, but this should make things slightly nicer in some cases. svn path=/trunk/; revision=6128
* Make the vertical toolbar always visible in the message list and theEttore Perazzoli2000-10-231-2/+3
| | | | | | message view (patch pulled up from the evolution-0-6-branch). svn path=/trunk/; revision=6112
* e-tree-model is now opaque. use the accessor to get the root node.Chris Toshok2000-10-201-2/+4
| | | | | | | | | 2000-10-19 Chris Toshok <toshok@helixcode.com> * message-list.c (nuke_uids): e-tree-model is now opaque. use the accessor to get the root node. svn path=/trunk/; revision=6073
* For an imap store, just refresh the INBOX.Dan Winship2000-10-201-1/+2
| | | | | | | | | | | * mail-ops.c: (do_fetch_mail): For an imap store, just refresh the INBOX. * folder-browser-factory.c (control_deactivate): Don't sync non-existent folders. * message-list.c (nuke_uids): Don't traverse non-existent trees. svn path=/trunk/; revision=6047
* Fixed some column widths.Christopher James Lahey2000-10-191-3/+3
| | | | | | | | 2000-10-18 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Fixed some column widths. svn path=/trunk/; revision=6013
* No, we REALLY dont want to perform an immediate search as the keys areNot Zed2000-10-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-10-18 Not Zed <NotZed@HelixCode.com> * folder-browser.c (folder_browser_gui_init): No, we REALLY dont want to perform an immediate search as the keys are pressed. * mail-display.c (on_object_requested): Kill a minor warning with a cast. * mail-config.c: Include mising ctype.h to kill a warning. * message-thread.c (main): Fixed the test case for api changes. * message-list.c (message_list_drag_data_get): Set some flags to get_folder(). I dont even think this will work because mail_tool_get_folder doesn't handle file url's. * mail-vfolder.c (vfolder_uri_to_folder): Pass appropriate flags. * mail-ops.c (do_setup_folder): Pass appropriate flags. Hmm, whats the difference between setup and create. *shrug* (do_create_folder): Pass appropriate flags to get_folder. Needs a way to specify the index flag. * mail-tools.c (mail_tool_get_folder_from_urlname): Changed create to flags argument. (mail_tool_get_local_inbox_url): Add an index argument. (mail_tool_get_local_inbox): honour index flag. (mail_tool_get_inbox): Changed for api change. (mail_tool_uri_to_folder): Fixed calls to store_get_folder(); * mail-local.c (load_metainfo): Added an indexed field to the metainfo. (save_metainfo): And save it too. (do_reconfigure_folder): Honour index flag when creating the new folder. Do not open the old folder with an index at all. (mail_local_map_uri): Add an index argument - tells if the mbox is indexed. (mail_tool_local_uri_to_folder): Create & pass flags properly. (#include gnome.h): Dont include all of gnome, just what we use, and explicity include xml-memory, so we get xmlFree(). svn path=/trunk/; revision=5979
* Uh, fixed jeff's wrong fix for setting the speficiation (the functionNot Zed2000-10-161-16/+5
| | | | | | | | | | | 2000-10-16 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_setup_etable): Uh, fixed jeff's wrong fix for setting the speficiation (the function changed to set_state(), as can be seen in the e_table-scrolled_load_state() call only 2 lines above). svn path=/trunk/; revision=5938
* ETreePath != GNode now, use accessors. (ml_tree_value_at): same.Chris Toshok2000-10-161-15/+18
| | | | | | | | | | | | | | | 2000-10-15 Chris Toshok <toshok@helixcode.com> * message-list.c (subtree_unread): ETreePath != GNode now, use accessors. (ml_tree_value_at): same. (save_node_state): same. (save_tree_state): same. (nuke_uids_cb): convert to e_tree_model_node_traverse required type. (nuke_uids): g_node_traverse -> e_tree_model_node_traverse. svn path=/trunk/; revision=5936
* Don't free the service name.Jeffrey Stedfast2000-10-141-11/+10
| | | | | | | | | 2000-10-13 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (message_list_setup_etable): Don't free the service name. svn path=/trunk/; revision=5902
* Create the 'spec' and 'extras' arguments and call e_table_scrolled_new()Jeffrey Stedfast2000-10-131-5/+80
| | | | | | | | | | | | | | 2000-10-12 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (message_list_setup_etable): Create the 'spec' and 'extras' arguments and call e_table_scrolled_new() rather than set_specification as that function no longer (?) exists. Also started to add drag & drop functionality to something like Nautilus (but #if 0'd it out until I had time to finish it and till after 0.6). svn path=/trunk/; revision=5890
* Duh, fix the test for the folder name, strstr != strcmp is it.Not Zed2000-10-121-26/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-10-12 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_setup_etable): Duh, fix the test for the folder name, strstr != strcmp is it. 2000-10-10 Not Zed <NotZed@HelixCode.com> * message-list.c (folder_to_cachename): Removed, changed callers to use mail_config_folder_to_cachename instead. * mail-config.c (mail_config_folder_to_cachename): New utility function to get a cache name for a folder. * mail-tools.c (mail_tool_do_movemail): Changed to return the path to the mbox, rather than opening a folder of it. * mail-ops.c (mail_incorporate_messages): Dont bother making the pseudo messageinfo, filder_driver_filter_message will do it for us. (report_status): Callback to report status of filtering operation. (do_fetch_mail): Changed significantly - for the api changes to the filtering system. Also now incorporates a mailbox file directly, without having to import it into a camel folder first. (mail_incorporate_messages): Removed entirely, no longer needed. * mail-vfolder.c (vfolder_refresh): Fix for context api changes. (vfolder_uri_to_folder): Likewise. * folder-browser-factory.c (create_ondemand_hooks): Changed for api changes. Also only adds demand filters to the menu (fixed a small logic bug). svn path=/trunk/; revision=5883
* Replace To with From except in Drafts, Outbox, or Sent boxes. Make SubjectChristopher James Lahey2000-10-121-4/+4
| | | | | | | | | | 2000-10-12 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Replace To with From except in Drafts, Outbox, or Sent boxes. Make Subject column pay attention to text attributes like bold and strikethrough. svn path=/trunk/; revision=5877
* Changed these to use the proper form for the column element.Christopher James Lahey2000-10-111-4/+4
| | | | | | | | | 2000-10-11 Christopher James Lahey <clahey@helixcode.com> * message-list.c, message-list.h, subscribe-dialog.c: Changed these to use the proper form for the column element. svn path=/trunk/; revision=5849
* Updated these to the new ETable style of specifications.Christopher James Lahey2000-10-111-173/+69
| | | | | | | | | 2000-10-11 Christopher James Lahey <clahey@helixcode.com> * message-list.c, message-list.h, subscribe-dialog.c: Updated these to the new ETable style of specifications. svn path=/trunk/; revision=5845
* New widget, full search dialogue for mail.Not Zed2000-10-091-2/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-10-06 Not Zed <NotZed@HelixCode.com> * mail-search-dialogue.c: New widget, full search dialogue for mail. * folder-browser.c (search_set): If we click on custom search, run the full search dialogue. (folder_browser_gui_init): Add a button to perform a full search. (search_full): Bring up the mail search dialogue asynchronously. (search_full_clicked): Handle search options. (folder_browser_destroy): Free the saved rule if there is one there. (search_options[]): Added a custom option option - brings up the full search dialogue. (search_set): Disable the search entry if we are doing a full search. * mail-vfolder.c (vfolder_create_storage): Yay, finally depeterised this stuff. (vfolder_uri_to_folder): Removed an irrelevant comment. * mail-callbacks.c (filter_edit): And here. * mail-ops.c (do_fetch_mail): And here too. * mail-autofilter.c (filter_gui_add_from_message): Fixed call to context_load. (filter_gui_add_for_mailing_list): And here too. * folder-browser-factory.c (create_ondemand_hooks): Remove that ondemand callback snot. 2000-10-05 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_init_etable): Build the etable once we know what folder we are going to use. (save_header_state): Save the header spec to a cache file. (message_list_destroy): Save the header spec. (message_list_setup_etable): Setup the etable spec for this folder, from a saved version if one exists, or to suit the folder type (sent/received). (message_list_set_folder): Setup the etable here once we have a folder. svn path=/trunk/; revision=5798
* re-write.Michael Meeks2000-10-091-3/+9
| | | | | | | | | | | 2000-10-09 Michael Meeks <michael@helixcode.com> * message-list.c (message_list_toggle_threads): re-write. * folder-browser-factory.c (control_activate): update paths, need CVS HEAD bonobo, use a listener not a verb. svn path=/trunk/; revision=5792
* Use CamelInternetAddress instead of my quick hack (aka InternetAddress).Jeffrey Stedfast2000-10-051-153/+38
| | | | | | | | | 2000-10-04 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (address_compare): Use CamelInternetAddress instead of my quick hack (aka InternetAddress). svn path=/trunk/; revision=5741
* Fix the attachment icon width. (content_is_attachment): Perform someNot Zed2000-10-041-4/+41
| | | | | | | | | | | 2000-10-04 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_init_header): Fix the attachment icon width. (content_is_attachment): Perform some simple tests to see if the message contains an attachment. (build_subtree): Kill a pointless warning. svn path=/trunk/; revision=5707
* remove the 2 tree pixbufs, so adjust the offsets to the score pixbufs.Chris Toshok2000-10-031-7/+2
| | | | | | | | | | 2000-10-02 Chris Toshok <toshok@helixcode.com> * message-list.c (message_list_init_renderers): remove the 2 tree pixbufs, so adjust the offsets to the score pixbufs. also, pass NULL for the open/closed pixbufs to the tree cell renderer. svn path=/trunk/; revision=5667
* Update for CamelFolderInfo changes.Dan Winship2000-10-031-1/+2
| | | | | | | | | | | | | * mail-ops.c (mail_do_scan_subfolders, etc): Update for CamelFolderInfo changes. * message-list.c (message_list_destroy): Don't save_tree_state if there's no folder associated with the MessageList. * folder-browser.c (folder_browser_set_uri): Only call mail_do_load_folder if the URI is not "". svn path=/trunk/; revision=5664
* Function to convert a folder name/path to a filename for per-folder data.Not Zed2000-09-261-15/+158
| | | | | | | | | | | | | | | | | | | 2000-09-25 Not Zed <NotZed@HelixCode.com> * message-list.c (folder_to_cachename): Function to convert a folder name/path to a filename for per-folder data. (save_tree_state): (load_tree_state): (free_tree_state): For loading/saving the state of the expansion of nodes in the tree. (message_list_destroy): Save the tree state when done. (save_node_state): Changed logic, we save when the node should be closed on startup. i.e. any new nodes with children automatically default to being open. (subtree_unread): Check for unread messages in a subtree. So false messages (for tree roots) are properly displayed. svn path=/trunk/; revision=5584
* Updated to use Nat's ENameWestern parser.Jeffrey Stedfast2000-09-261-6/+46
| | | | | | | | | | | 2000-09-25 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (address_compare): Updated to use Nat's ENameWestern parser. * Makefile.am: link against e-util/ename/libename.la svn path=/trunk/; revision=5583
* Fix a crash that happened on my system when sorting by the "From"Ettore Perazzoli2000-09-231-2/+9
| | | | | | | field. (The address parsing code failed miserably if the first character was a space.) svn path=/trunk/; revision=5559
* New comparison function for email addresses. (subject_compare): NewJeffrey Stedfast2000-09-231-6/+23
| | | | | | | | | | | 2000-09-22 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (address_compare): New comparison function for email addresses. (subject_compare): New comparison function for message subjects. (message_list_init_header): Updated to use the new compare funcs. svn path=/trunk/; revision=5554
* New comparison function for email addresses. (subject_compare): NewJeffrey Stedfast2000-09-221-3/+162
| | | | | | | | | | | 2000-09-22 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c (address_compare): New comparison function for email addresses. (subject_compare): New comparison function for message subjects. (message_list_init_header): Updated to use the new compare funcs. svn path=/trunk/; revision=5546
* Removed COL_ONLINE_STATUS because we don't want that. Renamed COL_PRIORITYJeffrey Stedfast2000-09-191-108/+149
| | | | | | | | | | 2000-09-18 Jeffrey Stedfast <fejj@helixcode.com> * message-list.c: Removed COL_ONLINE_STATUS because we don't want that. Renamed COL_PRIORITY to COL_SCORE and set it up to sort-of work, I'm not really sure which renderer I should use. svn path=/trunk/; revision=5493
* Added check for gnome-app-lib. Removed directories that have been moved toChristopher James Lahey2000-09-181-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* For additional coolness, display the name of the mailing list in theEttore Perazzoli2000-09-121-5/+18
| | | | | | | | right-click menu. Also, make the action box appear in the filter dialog and fix a stupid cut & paste bug that prevented the code from checking for the right headers. svn path=/trunk/; revision=5365
* Grey out the "Filter for Mailing List" item if we cannot figure out aEttore Perazzoli2000-09-121-26/+33
| | | | | | mailing list for the selected message. svn path=/trunk/; revision=5364
* Cool Hack of the Day: right-click menu item to autodetect what mailingEttore Perazzoli2000-09-121-0/+24
| | | | | | | | | | 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
* Fixed some warnings.Christopher James Lahey2000-09-091-1/+158
| | | | | | | | | | | 2000-09-08 Christopher James Lahey <clahey@helixcode.com> * folder-browser.c, mail-config-gui.c, mail-ops.c: Fixed some warnings. * message-list.c: Added base ETableModel functions. svn path=/trunk/; revision=5268
* set the data to NULL for the tree root, so nuke_uids won't try to freeDan Winship2000-09-071-1/+1
| | | | | | | * message-list.c (clear_tree): set the data to NULL for the tree root, so nuke_uids won't try to free anything. svn path=/trunk/; revision=5222
* Add a use-default-port option to the source editor ; bugfixesPeter Williams2000-09-061-1/+1
| | | | svn path=/trunk/; revision=5208
* Make the `Home' and `End' keys do the Right Thing. Remove circularEttore Perazzoli2000-09-031-0/+46
| | | | | | reference to the shell. Bind "Open in New Window" to `Ctrl-O'. svn path=/trunk/; revision=5181
* Sync the right-click menu with the main menu for modifying messagesPeter Williams2000-08-251-6/+6
| | | | svn path=/trunk/; revision=5018
* Filtering on demand! booyeah!Peter Williams2000-08-181-0/+20
| | | | svn path=/trunk/; revision=4864
* Whole buncha leak fixes thanks to PurifyMatthew Loper2000-08-171-0/+3
| | | | svn path=/trunk/; revision=4862
* Address bugzilla bug #496Peter Williams2000-08-161-1/+7
| | | | svn path=/trunk/; revision=4849
* Add support for copying messagesPeter Williams2000-08-161-0/+1
| | | | svn path=/trunk/; revision=4845
* Don't clear the tree here. If two "folder_changed"s arrive in closeDan Winship2000-08-131-12/+30
| | | | | | | | | | | | | | | | | | | | | * message-list.c (cleanup_regenerate_messagelist): Don't clear the tree here. If two "folder_changed"s arrive in close succession, then one possible ordering of events is cleanup_regenerate_messagelist, cleanup_regenerate_messagelist, cleanup_thread_messages, cleanup_thread_messages. Which would result in the message list being filled in twice without being cleared in between. So don't clear it until the rebuilding function itself is called. (clear_tree): New function to empty out the ETreeModel in the message list. (build_tree): Change to simpler interface. Call clear_tree. (build_subtree): Does most of the work of the old build_tree (build_flat): Remove unused arg. Call clear_tree. * message-thread.c (cleanup_thread_messages): Update for build_tree interface change. svn path=/trunk/; revision=4787