Commit Graph

124 Commits

Author SHA1 Message Date
f37b0a1ab7 ...And a whole bunch more build fixes.
2002-12-17  Jeffrey Stedfast  <fejj@ximian.com>

	...And a whole bunch more build fixes.

	* mail-vfolder.c (mail_vfolder_delete_uri): Don't use
	g_string_sprintfa() anymore since it is apparently deprecated.

	* mail-session.c (main_get_filter_driver): Don't use
	g_string_sprintfa() anymore since it is apparently deprecated.

	* mail-ops.c (build_from): Don't use g_string_sprintfa() anymore
	since it is apparently deprecated.

	* mail-callbacks.c (ask_confirm_for_unwanted_html_mail): Don't use
	g_string_sprintfa() anymore since it is apparently deprecated.

	* mail-autofilter.c: Don't use g_string_sprintfa() anymore since
	it is apparently deprecated.

	* folder-browser.c: Don't use g_string_sprintfa() anymore since it
	is apparently deprecated.

	* mail-search.c (mail_search_set_subject): Remove the unnecessary
	g_strdup()'age as well as fix a possible buffer overrun.

	* mail-local.c (mail_local_folder_construct): Use
	g_path_get_basename().

	* mail-config-druid.c (make_account): Don't use e_utf8_*
	functions.

svn path=/trunk/; revision=19152
2002-12-17 20:38:25 +00:00
df22fc1623 gnome_pixmap -> gtkimage. (construct): gtk_clist -> gtk_tree_view, setup
2002-11-27  Not Zed  <NotZed@Ximian.com>

        * message-tag-followup.c (construct): gnome_pixmap -> gtkimage.
        (construct): gtk_clist -> gtk_tree_view, setup columns.  They dont
        size well :-/
        (message_tag_followup_append_message): Append using model, remove
        clist stuff.
        (construct): Show date edit (glade bugs?)

        * folder-browser.c (folder_browser_class_init): gtk_marshal -> g_cclosure_marshal
        (setup_popup_icons): gnome_pixmap -> gtk_image.
        (on_right_click): gtk_pixmap -> gtk_image.

        * mail-accounts.c (account_delete_clicked): removed #if 0'd out code.

        * mail-send-recv.c (receive_done): remove FIXME and extra unref.

        * mail-session.c (request_password): Removed #if 0'd out stuff.

        * mail-vfolder.c (new_rule_clicked): proper cast for g_object_get_data.

        * mail-local.c (reconfigure_response): cast for g_object_get_data.

        * mail-account-editor.c (construct): GNOME_DIALOG -> GTK_DIALOG.

        * *.[ch]: re-ran fix.sh for e_notice change

        * mail-callbacks.c (save_msg_ok): g_object_get_data +
        gtk_object_remove_no_notify -> g_object_steal_data.
        (find_socket): gtk_container_children ->
        gtk_container_get_children
        (edit_msg): gnome_*_dialog -> gtk_message_dialog.
        (resent_msg): "
        (search_msg): "
        (confirm_goto_next_folder): gtkmessagedialogised (even if not
        used).
        (confirm_expunge): gtkmessagedialogised
        (filter_edit): "
        (do_mail_print): e_notice -> gtk_message_dialog.
        (are_you_sure): removed e_gnome_ok_cancel_dialog crap, replaced
        with a gtk dialog.
        (are_you_sure): gtkmessagedialogised.
        (edit_msg_internal): Dont free uids array, are_you_sure() free's
        it.
        (resend_msg): Same.
        (check_send_configuration): Use e_notice for stuff.  Sigh, here we
        go again ...!
        (e_question): A utility function to ask a question, potentially
        with 'dont ask again' as well.
        (configure_mail): use e_question to save code.  Here we go again,
        again ...
        (ask_confirm_for_unwanted_html_mail): "
        (ask_confirm_for_only_bcc): "
        (ask_confirm_for_only_bcc): "
        (composer_get_message): Use e_notice.
        (composer_save_draft_cb): Use e_question
        (edit_msg): use e_notice, & change to an ERROR.
        (resend_msg): same.
        (save_msg_ok): Properly initialise ret to OK, and use e_question,
        and use access() to determine existance/write access rather than
        stat, display an error if we can't write to a file that exists,
        and print the filename in all dialogues.
        (confirm_goto_next_folder): Use e_question.
        (confirm_expunge): use e_question.
        (filter_edit): Use e_notice.
        (do_mail_print): use e_notice.

svn path=/trunk/; revision=18974
2002-12-02 03:16:54 +00:00
e3713d58cd fix warning message, outlook->mbox.
2002-11-19  Not Zed  <NotZed@Ximian.com>

        * importers/evolution-mbox-importer.c (mail_importer_module_init):
        fix warning message, outlook->mbox.

        * importers/Makefile.am: fix serverdir to point to
        $libdir/bonobo/servers.

        * mail-callbacks.c (addrbook_sender): add type to
        bonobo_widget_set_property.

        * mail-vfolder.c (vfolder_editor_response): dont unref after destroy.

        * mail-session.c (pass_response): dont unref aftrer destroy.

        * mail-local.c (reconfigure_response): dont unref after destroy.

        * mail-display.c (launch_cb): dont unref after destroy.
        (launch_cb): "
        (drag_data_get_cb): "
        (html_button_press_event): add type to bonobo_widget::set_property

        * mail-config.c (mail_config_check_service): dont unref after
        destroy.

        * component-factory.c (send_receive_cb): dont unref after destroy.
        (request_quit): "

        * mail-signature-editor.c (mail_signature_editor): Use version 3.0
        of gtkhtml editor interfaces.
        (do_exit): dont unref after destroy.
        (format_html_cb): Add type to bonobo_widget::set_property.

svn path=/trunk/; revision=18837
2002-11-19 05:03:29 +00:00
1669f16747 Want a (GWeakNotify) cast here, not (GWeakNotify *).
* 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
2002-11-14 17:20:52 +00:00
02237b6f44 destroy->weak ref. (owner_set_cb): shell client changes.
2002-11-13  Not Zed  <NotZed@Ximian.com>

        * component-factory.c (owner_set_cb): destroy->weak ref.
        (owner_set_cb): shell client changes.

        * mail-signature-editor.c (mail_signature_editor): bonobo api changes.

        * mail-local.c (save_metainfo): go back to using xmlSaveFile.

        * Makefile.am: Removed libevolution-importer from mail.

svn path=/trunk/; revision=18736
2002-11-13 09:53:36 +00:00
f9804e1193 Commented out stuff that doesn't build yet. Also fixed idl build rule.
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
2002-11-12 14:59:35 +00:00
fd67fd43ea Handle file uri's too.
2002-09-11  Not Zed  <NotZed@Ximian.com>

        * component-factory.c (configure_folder_popup): Handle file uri's
        too.

        * mail-callbacks.c (configure_folder): clear message list before
        calling configure folder.
        (local_configure_done): completion callback to reset message list
        when done.

        * mail-local.c (mail_local_reconfigure_folder): changed args to
        accept uri, and done callback.
        (reconfigure_got_folder): moved code to callback which presents
        the configure uri once we have the folder.

svn path=/trunk/; revision=18039
2002-09-11 04:27:23 +00:00
043ad65cc2 agh, don't break the build (shame on me)
svn path=/trunk/; revision=17730
2002-08-07 05:40:00 +00:00
6bdebeda96 No need to save a temporary file first anymore since I updated
2002-08-06  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (save_metainfo): No need to save a temporary file
	first anymore since I updated e_xml_save_file() to do this for us.

svn path=/trunk/; revision=17726
2002-08-07 03:54:09 +00:00
47a7a91181 Save to a temporary file first using e_xml_save_file rather than
2002-08-06  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (save_metainfo): Save to a temporary file first
	using e_xml_save_file rather than xmlSaveFile, if the save
	completes successfully then rename it to the real filename. Make
	sure that errno is saved.
	(mls_get_folder): save_metainfo doesn't return -1 on fail, it
	returns FALSE.

svn path=/trunk/; revision=17721
2002-08-06 21:17:49 +00:00
aa3bfbe422 Implement, return a text description of the localfolder.
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
2002-06-03 02:52:32 +00:00
3bfd63acd3 Added #include "folder-info.h".
2002-05-14  Christopher James Lahey  <clahey@ximian.com>

	* component-factory.c: Added #include "folder-info.h".

	* folder-browser-window.c (folder_browser_window_new),
	mail-account-editor.c (apply_changes), mail-account-gui.c
	(mail_account_gui_save), message-tag-editor.c: Removed some unused
	variables.

	* folder-info.c: Added #include "folder-info.h".  Removed static
	declaration of evolution_folder_info_get_type.

	* folder-info.c (destroy), mail-callbacks.c
	(confirm_goto_next_folder, find_current_folder,
	find_next_folder_r, find_next_folder,
	do_evil_kludgy_goto_next_folder_hack), mail-composer-prefs.c
	(sig_name_changed): Commented out these unused functions.

	* mail-config.c (add_new_storage): Removed this unused function.

	* mail-local.c (mlf_init): Fix the declaration of this function to
	match the required signature.

svn path=/trunk/; revision=16788
2002-05-14 19:55:21 +00:00
b05542ec2d Update for camel_folder_append_message / camel_folder_transfer_messages_to
* (various places): Update for camel_folder_append_message /
	camel_folder_transfer_messages_to API change.

	* mail-ops.c (mail_append_mail): Pass the appended_uid to the
	callback.

	* mail-callbacks.c (composer_save_draft_cb, save_draft_done,
	do_edit_messages): Take advantage of the append_message change to
	keep track of the UID of the saved draft so that we can delete the
	old copy of the draft each time we save a new one. Remove the
	FIXME suggesting we should do that, since we're doing it now. :)

svn path=/trunk/; revision=16766
2002-05-13 16:15:55 +00:00
cf18d0940f Simplify. Use transfer_messages_to instead of picking between copy and
* mail-ops.c (transfer_messages_transfer): Simplify. Use
	transfer_messages_to instead of picking between copy and move.
	Remove vtrash special-casing since it's all in
	camel-vtrash-folder.c now. Remove duplicate source == dest check.

	* mail-local.c (mail_local_folder_reconfigure): Use
	transfer_messages_to instead of copy_messages_to.

svn path=/trunk/; revision=16745
2002-05-10 16:46:04 +00:00
d89c3d0a9c Just use g_basename. (mlf_finalize): Free the real_path.
2002-04-17  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (mail_local_folder_construct): Just use g_basename.
	(mlf_finalize): Free the real_path.

	* folder-browser.c (on_right_click): Unref the GdkGC so we don't
	leak it.

svn path=/trunk/; revision=16493
2002-04-17 20:00:39 +00:00
2ecd3ce0ee Changes to allow combined store/transport providers (like exchange and
* mail-account-gui.c: Changes to allow combined store/transport
	providers (like exchange and nntp). You can only select the
	transport if the account is also using that provider for the
	source.
	(source_type_changed): If changing away from a combined
	store/transport type, disable that provider on the transport page.
	If change to a combined store/transport type, enable and select
	that provider on the transport page.
	(mail_account_gui_setup): Do some additional bookkeeping here to
	make the above stuff work.
	(transport_type_changed): If the provider is a combined
	store/transport type, pretend it doesn't need any additional URL
	configuration.
	(mail_account_gui_transport_complete): if the transport provider
	is also a store provider, then as long as it matches the source
	for the account, it's considered complete.
	(mail_account_gui_save): If the selected transport is a combined
	store/transport provider, use the source page's information to
	fill in the transport url.

	* mail-local.c (mail_local_provider_init): Don't set up
	service_cache.

svn path=/trunk/; revision=16331
2002-04-03 18:19:27 +00:00
0
41dea671f8 Oops, dont use the url storage path to offset the folder name we're
2001-10-30    <NotZed@Ximian.com>

        * mail-local.c (mls_rename_folder): Oops, dont use the url storage
        path to offset the folder name we're renaming/opening, etc.

svn path=/trunk/; revision=14431
2001-10-30 05:23:43 +00:00
d6d55273d4 Require gal 0.15.99.8
2001-10-29  Joe Shaw  <joe@ximian.com>

	* configure.in: Require gal 0.15.99.8

	* addressbook/backend/ebook/e-card-simple.c,
	addressbook/gui/component/addressbook-storage.c,
	addressbook/gui/widgets/e-addressbook-view.c,
	calendar/gui/e-calendar-table.c,
	calendar/gui/e-itip-control.c,
	calendar/gui/e-meeting-model.c,
	calendar/gui/itip-utils.c,
	calendar/gui/print.c,
	calendar/gui/alarm-notify/alarm-notify-dialog.c,
	filter/rule-editor.c,
	mail/mail-config.c,
	mail/mail-folder-cache.c,
	mail/mail-format.c,
	mail/mail-local.c,
	mail/mail-ops.c,
	mail/mail-vfolder.c,
	shell/e-local-storage.c,
	shell/e-summary-storage.c: Change includes of
	e-util/e-unicode-i18n.h to gal/util/e-unicode-i18n.h

svn path=/trunk/; revision=14427
2001-10-30 05:02:49 +00:00
0
093a00cf2b Argh!!! Dont free the async op data here, the async op is still running
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
2001-10-30 03:28:40 +00:00
9
fedf164cb9 Copy the folder's full_name before trying to use it to rename.
2001-10-29    <NotZed@Ximian.com>

        * mail-vfolder.c (rule_changed): Copy the folder's full_name
        before trying to use it to rename.
        (vfolder_edit_rule): Set 'orig' to be a reference of the original
        rule.
        (edit_rule_clicked): Dont lookup orig by name, copy it over
        instead.

        * folder-browser.c (got_folder): oops, emit signal before
        unreffing object, incase we got killded during getting folder.
        (got_folder): Reset get_id.
        (folder_browser_new): Set get_id of the get_folder task.
        (folder_browser_init): Init get_id.
        (folder_browser_destroy): IF we have outstanding 'get folder' op,
        cancel it.

svn path=/trunk/; revision=14323
2001-10-29 05:06:28 +00:00
8
2331da257f add the folder name to the path when passing down to the subordinate
2001-10-28    <NotZed@Ximian.com>

        * mail-local.c (mlf_rename): add the folder name to the path when
        passing down to the subordinate folder.

svn path=/trunk/; revision=14295
2001-10-28 13:06:27 +00:00
8
4229e6849d Remove uic, kill dumb warning.
2001-10-28    <NotZed@Ximian.com>

	* folder-browser-ui.c (fbui_sensitize_timeout): Remove uic, kill
	dumb warning.

	* mail-autofilter.c (mail_filter_rename_uri): Implement function
	for filters to keep track of uri's being renamed.
	(mail_filter_delete_uri): Similarly for deleting uri's.  Note that
	these functions are just noops though.

	(real_flush_updates): Also rename and delete uri's from filters.

	(mls_delete_folder): Unref the store when done.
	(mls_rename_folder): Fix implementation, shell already created
	destination folder, so we can't just rename :(

	(xfer_folder): Manually call rename code, since the shell will do
	a remove/add later on, AND there's no way we can determine the new
	path from the crock of an api we have to work with.

svn path=/trunk/; revision=14291
2001-10-28 10:53:02 +00:00
8
4689dccf16 Implemented. (mail_vfolder_rename_uri): We do want to check renamed uri's
2001-10-28    <NotZed@Ximian.com>

        * mail-vfolder.c (mail_vfolder_rename_uri): Implemented.
        (mail_vfolder_rename_uri): We do want to check renamed uri's from
        vstores.
        (mail_vfolder_delete_uri): Same.
        (store_folder_renamed): Fix the folder hash at the same time.

        * mail-folder-cache.c (real_flush_updates): Pass the rename event
        to vfolder rename uri.

        * mail-local.c (mail_local_folder_reconfigure): Change the store
        path to be same as parent + mbox to be full path.
        (mls_delete_folder): Change store path to be parent path, and mbox
        to be full path.
        (mail_local_folder_reconfigure): Fix a leak of tmpname.

        * component-factory.c (xfer_folder): Only do a rename if we have
        remove set, cleaned up logic a bit.
        (idle_quit): Put the components still active check last last of
        all.
        (storage_create_folder): IF we have a fragment, use that as part
        part for parent.

svn path=/trunk/; revision=14276
2001-10-28 05:11:53 +00:00
6
8f8b24c737 Changed to open the source store from '/', so we can do renames across
2001-10-26    <NotZed@Ximian.com>

        * mail-local.c (mlf_set_folder): Changed to open the source store
        from '/', so we can do renames across directories.  Of course,
        this doesn't quite work with different filesystems, but we'll
        assume this isn't a problem we're going to have.
        (mail_local_folder_get_type): Setup parent_class.
        (mlf_rename): Implement folder rename call, rename internal data.

        Is this a security issue?  Well, not really, no more than anything
        else.

        * mail-folder-cache.c (mail_note_store): Listen to rename event.
        (store_folder_renamed): Function to handle it, empty.
        (mail_note_store_remove): Unhook from rename event.
        (mail_note_folder): Hook onto renamed event.
        (unset_folder_info): Unhook from renamed event.
        (folder_finalised): Lock around update.
        (folder_deleted): Lock around update.
        (real_flush_updates): If we have a path to remove remove it.
        (rename_folders): Scan folderinfo's, if we can find ones renamed,
        rename them, otherwise add them.

        * component-factory.c (owner_unset_cb): Use a timeout not an idle handler.
        (storage_xfer_folder): Implementation of xfer_folder signal
        handler, so we can rename imap/vfolders/etc.

svn path=/trunk/; revision=14205
2001-10-27 06:02:04 +00:00
c0cddd6d1d Update the licensing information to require version 2 of the GPL
(instead of version 2 or any later version).

svn path=/trunk/; revision=14191
2001-10-27 00:47:22 +00:00
1
f35bfdac73 Added a checkbox for body indexing.
2001-10-11    <NotZed@Ximian.com>

        * local-config.glade: Added a checkbox for body indexing.

        * mail-local.c (mail_local_reconfigure_folder): Get index_body
        widget.
        (mail_local_folder_reconfigure): Add an 'index_body' argument &
        implement.  Dont do anything if nothing changed.

        * openpgp-utils.c (openpgp_verify): Use e_iconv_open.

svn path=/trunk/; revision=13603
2001-10-11 22:09:43 +00:00
9
eacb6df293 Implement.
2001-10-09    <NotZed@Ximian.com>

        * mail-local.c (mlf_search_by_uids): Implement.

svn path=/trunk/; revision=13533
2001-10-09 22:27:07 +00:00
eb6606cf3f Update for folder_flags.
* 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
2001-10-09 03:08:29 +00:00
3
63fe218a16 Handle vtrash case, emit 'folder_created' event for the folder-cache to
2001-10-03    <NotZed@Ximian.com>

        * mail-local.c (local_storage_new_folder_cb): Handle vtrash case,
        emit 'folder_created' event for the folder-cache to work, etc.

svn path=/trunk/; revision=13387
2001-10-03 21:10:12 +00:00
8d4f5ab1c8 Pass an empty flags argument to mail_tool_uri_to_folder.
2001-10-02  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c (vfolder_setup_do): Pass an empty flags argument
	to mail_tool_uri_to_folder.
	(vfolder_adduri_do): Same.

	* mail-session.c (get_folder): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* mail-send-recv.c (receive_get_folder): Pass an empty flags
	argument to mail_tool_uri_to_folder.

	* mail-ops.c (get_folder_get): Pass the flags to
	mail_tool_uri_to_folder.
	(mail_get_folder): Now takes a flags argument.
	(remove_folder_get): Pass an empty flags argument to
	mail_tool_uri_to_folder.
	(mail_send_message): Pass an empty argument flag to
	mail_tool_uri_to_folder.
	(transfer_messages_transfer): Same. Destination folder should
	already be created by this time.

	* folder-info.c (do_get_info): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* importers/evolution-mbox-importer.c (folder_created_cb): Pass
	the CREATE flag here too.
	(load_file_fn): And here.
	(load_file_fn): And here too.

	* importers/evolution-outlook-importer.c (load_file_fn): Pass the
	CREATE flag to mail_tool_uri_to_folder.

	* folder-browser.c (folder_browser_new): Pass an empty flags
	argument.
	(x_evolution_message_parse): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* component-factory.c (create_folder): Pass a CREATE flag to
	mail_get_folder here too.
	(owner_set_cb): And here.
	(xfer_folder): Shouldn't need the CREATE flag here, so not passing
	any flags.
	(destination_folder_handle_drop): Same.

	* mail-local.c (mail_local_store_add_folder): Pass a CREATE flag
	to mail_get_folder.
	(reconfigure_folder_reconfigure): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* mail-tools.c (mail_tool_uri_to_folder): Take a flags argument.
	(mail_tool_get_local_inbox): Pass an empty flags argument to
	mail_tool_uri_to_folder.

svn path=/trunk/; revision=13353
2001-10-02 22:01:03 +00:00
8d3a2ebd28 create storages for providers that are STORAGE and aren't EXTERNAL, rather
* component-factory.c (mail_load_storage_by_uri): create storages
	for providers that are STORAGE and aren't EXTERNAL, rather than
	"(STORAGE and REMOTE) or spool, maildir, or vfolder".
	(mail_remove_storage_by_uri): Use the same rule here (which makes
	it possible now to remove maildir and spool stores now, which
	weren't properly special-cased before). Remove some CamelException
	misuse.

	* mail-config.c (new_source_created): Fix up the broken INBOX-
	shortcut-generating assumption a little by only assuming that if
	you call camel_store_get_inbox(), that its full_name is the same
	as its path. (This happens to always be true for inboxes now, and
	will be always true by definition at some point in the future.)
	Now maildir stores get working Inbox shortcuts.

	* mail-send-recv.c (get_receive_type): If PROVIDER_IS_STORAGE
	then use SEND_UPDATE, if not, use SEND_RECEIVE.

	* mail-local.c (local_provider): The local provider is EXTERNAL.
	(The shell creates it.)
	(mail_local_reconfigure_folder): Allow reconfiguring between
	IS_LOCAL providers.

	* mail-accounts.c (news_delete): Don't need to check the provider
	flags here... we know nntp is a STORAGE.

svn path=/trunk/; revision=13277
2001-10-01 19:45:39 +00:00
14d9f8c04e Don't use mail_tool_get_folder_name here since that function only existed
* mail-local.c (mail_local_reconfigure_folder): Don't use
	mail_tool_get_folder_name here since that function only existed to
	be clever in a certain case that this is not.
	(reconfigure_folder_free): Remove the dialog from the hash table
	here so that it gets removed in the successfully-reconfigured case
	too. Don't unref folder_out if it never got set.
	(reconfigure_clicked): Remove the hash table code from here; it's
	in reconfigure_folder_free now.

	* mail-tools.c (mail_tool_get_folder_name): No longer used by
	anything.
	(mail_tool_get_folder_from_urlname): Also not used anywhere.

svn path=/trunk/; revision=13273
2001-10-01 19:11:32 +00:00
8
4b14db5520 Emit folder_deleted event. (remove_find_path): Fix, compare against path,
2001-09-28    <NotZed@Ximian.com>

	* mail-local.c (mail_local_store_remove_folder): Emit
	folder_deleted event.
	(remove_find_path): Fix, compare against path, not full_name.

	* mail-tools.c (mail_tool_uri_to_folder): Dont
	vfolder_register_source anymore.

	* mail-vfolder.c (rule_changed): Changed to access
	mail_fodler_cahce to find out if the folder exist yet before
	trying to open them, also use the cache as a cache so we dont have
	to open the folder if its already been opened.
	(vfolder_register_source, register_source): Removed.
	(source_finalise): Removed,
	(check_source): Removed.  All handled through diff mechanism.
	(mail_vfolder_add_uri): New function, records uri's of available
	folders, and adds them to any active vfolders if required.
	(mail_vfolder_remove_uri): New function, removes a uri from
	available folders, and checks any rules to see fi they need
	updating.
	(vfolder_adduri): New async function to add a uri to all vfolders
	that need it.
	(store_folder_deleted): oops!  free user, not rule!!

	* mail-folder-cache.c: Add uri->folderinfo hashtable, and the
	store from which they come into the store info struct.
	Add uri to the folder_info.
	(setup_folder): Store the uri in the folderinfo.
	(setup_folder): And the uri in the folder_uri hashtable.
	(mail_note_store): Store the store in the storeinfo, and setup the
	folders_uri hashtable via the store's hash functions.
	(setup_folder): Call mail_vfolder_add_uri to note this newly setup
	folder uri.
	(store_folder_deleted): Proxy call to main thread.
	(real_folder_deleted): And tell the vfolder to remove this uri
	from its folder list.
	(setup_folder): Dont call vfolder_add_uri if noselect is set on
	the uri.

2001-09-27    <NotZed@Ximian.com>

	* mail-vfolder.c: Removed vfolder_info struct, vfolder_storage.
	Neither used anymore.

svn path=/trunk/; revision=13242
2001-09-28 23:54:30 +00:00
df8634ddc8 Setup the url_hash and url_equal functions for the local provider.
2001-09-28  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (mail_local_provider_init): Setup the url_hash and
	url_equal functions for the local provider.

	* mail-account-gui.c (mail_account_gui_save): Add code here to
	check to make sure that the Drafts and Sent folders are pointing
	to valid urls. This is kinda nasty and only really solves the case
	where the user changes, say, his imap server or
	something. Unfortunately we still have the problem where if
	account A's sent/drafts folders point to account B's store and the
	user changes the url for account B.

	* mail-config.c (mail_config_get_account_by_source_url): Use Camel
	to compare the urls rather than using e_url_equal which does all
	sorts of funky shit that may not work in every case.

svn path=/trunk/; revision=13238
2001-09-28 22:38:53 +00:00
7
0ac20c6064 No such event finalized! Its finalize. (mail_note_store): "
2001-09-27    <NotZed@Ximian.com>

        * mail-folder-cache.c (real_note_folder): No such event finalized!
        Its finalize.
        (mail_note_store): "

        Fixed dan's comment a bit, info != NULL for folder_created, info==
        NULL for changed.

2001-09-26    <NotZed@Ximian.com>

        * mail-local.c (mlf_set_message_flags): Proxy the
        set_message_flags call too.  Doesn't fix the 'local folder counts
        dont update' problem, but its more correct.

svn path=/trunk/; revision=13200
2001-09-27 22:34:12 +00:00
4
9a864d05fe Removed unused variables.
2001-09-24    <NotZed@Ximian.com>

        * mail-local.c (mls_get_folder): Removed unused variables.

        * component-factory.c (storage_create_folder): Remove unused
        variable.

        * mail-format.c (write_default_header): Used to write a header
        that we know about/normally print.  Use a static header table to
        index these.
        (write_header): removed.
        (default_header_index): Return the index of the default header.
        (write_headers): Changed the way it writes headers a bit.  Use
        write_default_header or write_text_header directly.  Also try and
        use the header charset as a fallback if the header can't be
        decoded using the locale charset.

svn path=/trunk/; revision=13097
2001-09-24 19:31:36 +00:00
1
4d97946e70 Use url path as full_name, not shell path. (mail_local_folder_construct):
2001-09-21    <NotZed@Ximian.com>

        * mail-local.c (mail_local_store_add_folder): Use url path as
        full_name, not shell path.
        (mail_local_folder_construct): Remove path argument, and use the
        full_name instead.
        (mls_get_folder): Dont lookup folderinfo in cache.  Like duh the
        shell hasn't told me its there yet, smaaaart.

svn path=/trunk/; revision=13053
2001-09-21 19:45:21 +00:00
1
b2e7adf9b8 Take a new argument 'done' that can callback when complete. Fixed callers
2001-09-21    <NotZed@Ximian.com>

        * mail-folder-cache.c (mail_note_store): Take a new argument
        'done' that can callback when complete.  Fixed callers
        appropriately.

        * mail-ops.c (mail_update_subfolders): Removed.  Isn't used
        anymore.

        * mail-send-recv.c (receive_update_got_store): Remove call to
        mail_update_subfolders.

svn path=/trunk/; revision=13044
2001-09-21 05:58:31 +00:00
0
586f083c3a Lock around hashtable/list manipulation. Also dont try scan vfolder_hash
2001-09-20    <NotZed@Ximian.com>

	* mail-vfolder.c (vfolder_register_source): Lock around
	hashtable/list manipulation.  Also dont try scan vfolder_hash if
	it hasn't been setup yet.
	(source_finalise): Lock around list access.
	(rule_changed): Lock around hash access.
	(context_rule_added): Lock around hash access.
	(context_rule_removed): "
	(rule_changed): Lock around list access.

	* mail-local.c (storage_listener_startup): Fix for api change.
	(local_storage_new_folder_cb): Dont skip over leading / in path.
	(local_storage_removed_folder_cb): ditto.

	* mail-folder-cache.c (create_folders): No longer pass prefix
	between recursive calls - we have the path in the folderinfo.
	(setup_folder): No longer take path arg, we get it from
	folderinfo.
	(mail_note_folder): No longer take path arg, we use
	folder->full_name to key the folder table.
	(mail_note_store): Consolidate note_store interface, pass storage
	or corba_storage to it.
	(mail_note_local_store): Removed.

	* mail-ops.c
	(add_unmatched_info): Scan for unmatched name and re-title.

svn path=/trunk/; revision=13023
2001-09-20 22:59:11 +00:00
7863fdd24f Set the folder info path.
2001-09-20  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (mail_local_store_add_folder): Set the folder info
	path.

svn path=/trunk/; revision=13020
2001-09-20 21:37:15 +00:00
0
412c2967bb Register vfolder sources here.
2001-09-20    <NotZed@Ximian.com>

        * mail-tools.c(mail_tool_uri_to_folder): Register vfolder sources here.

        * folder-browser.c (got_folder): Dont register vfolder sources
        here.

        * mail-ops.c (mail_get_folder): Add thread parameter.  Fix callers.

        * mail-vfolder.c (vfolder_setup): Use the 'slow' queue for setting
        up vfolders.

        * mail-mt.c (mail_msg_init): Limit the maximum number of threads
        on the 'new' thread to 10.
        (mail_msg_init): Create a new queue 'slow' for doing slow
        operations.

svn path=/trunk/; revision=13017
2001-09-20 21:01:53 +00:00
0
55690284e1 Dont special case file: url's anymore.
2001-09-20    <NotZed@Ximian.com>

        * mail-tools.c (mail_tool_uri_to_folder): Dont special case file:
        url's anymore.

        * mail-local.c: Add real_path to MailLocalFolder.
        (mail_local_folder_construct): Added path argument, setup
        full_name == path, and real_path == full_name.
        (mls_get_folder): First lookup folderinfo to confirm this folder
        exists, then use that to properly construct the folder paths.
        (mail_local_folder_reconfigure): Use real_path not full_name to
        create the store uri.
        (mlf_set_folder): Use real_path not folder_name to get real uri
        path.

2001-09-19    <NotZed@Ximian.com>

        * mail-folder-cache.c (setup_store): Use the wrong spelling of
        finalised for the event hook.
        (real_note_folder): Use the wrong spelling of finalised for the
        event hook.
        (free_folder_info): Free the full_name parameter.
        (setup_folder):
        (real_note_folder): Key the folderinfo table on full_name, not
        path.

svn path=/trunk/; revision=13014
2001-09-20 19:34:58 +00:00
9
9ab4b45c15 Added missing header.
2001-09-19    <NotZed@Ximian.com>

        * component-factory.c: Added missing header.

        * mail-local.c (mail_local_store_add_folder): Async load the
        folder we just added, so it can update the folder counts in the
        display.  We just discard the folder afterwards?

        * mail-ops.c (mail_get_folder): Use the queued thread to get
        folders.

svn path=/trunk/; revision=12976
2001-09-19 10:01:32 +00:00
9
73c74dd70d General cleanup of mail debug printfs.
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
2001-09-19 08:29:13 +00:00
7
7796aa195e Setup global corba_storage variable. (mls_get_folder): Set 'update
2001-09-17    <NotZed@Ximian.com>

        * mail-local.c (storage_listener_startup): Setup global
        corba_storage variable.
        (mls_get_folder): Set 'update lstorage' on the newly opened
        folder.

svn path=/trunk/; revision=12915
2001-09-17 22:21:16 +00:00
0
c7e1b2cbb0 Dynamically create the folder type list from camel. (reconfigure_clicked):
2001-09-10    <NotZed@Ximian.com>

        * mail-local.c (mail_local_reconfigure_folder): Dynamically create
        the folder type list from camel.
        (reconfigure_clicked): And change code to handle changes.

2001-09-10    <NotZed@Ximian.com>

        * merged mail_local patch from peterw.  Many changes.

svn path=/trunk/; revision=12759
2001-09-11 00:32:20 +00:00
d671e29102 Studlycapsize all the IDs that are not. Likewise. Updated accordingly.
* Evolution-ShellComponent.idl: Studlycapsize all the IDs that are
not.
* Evolution-common.idl: Likewise.
* evolution-activity-client.c: Updated accordingly.
* evolution-shell-component.c: Likewise.
* evolution-storage.c: Likewise.
* e-activity-handler.c: Likewise.
* e-component-registry.c: Likewise.
* e-corba-storage.c: Likewise.
* e-shell-user-creatable-items-handlers.c: Likewise.

* e-local-storage.c (remove_folder): Remove unused variable.

* e-shell-view.c (update_for_current_uri): Assign zero to
`unread_count', not NULL.

* e-shell-importer.c (import_druid_finish): Remove unused
variable.

* e-shell-user-creatable-items-handler.c: #include
"e-corba-utils.h".

* e-shell-startup-wizard.c: #include "e-shell-startup-wizard.h".

* e-shell-startup-wizard.h: #include <glib.h>

* e-summary-weather.c (weather_make_html): Make local variable
`icon_name' const.  Remove unused variable `uri'.

* e-summary.h: Reformatted in GTK+ style.
(e_summary_remove_online_connection): Added prototype.

* e-summary-preferences.c (fill_mail_shown_clist): Constify local
variable `name'.

* e-summary-mail.c: #include "e-util/e-path.h".  Updated to match
the new studlyCapsification in shell/Evolution*.idl.

* mail-local.c: Match the studlyCapsification of
shell/Evolution*.idl.

* mail-config-druid.h: Change type of `event_source' from
`Bonobo_EventSource *' to `Bonobo_EventSource'.

* mail-accounts.c (mail_delete): Remove unused local variable
`label'.

* folder-info.c (do_get_info): `#if 0' unused variables.

* gui/component/addressbook-component.c: Get rid of a warning by
initializing the closing NULL element in folder_types correctly.

* gui/component/select-names/e-select-names.c: Updated to match
the studlyCapsification of attributes in shell/Evolution*.idl.

svn path=/trunk/; revision=12495
2001-08-28 00:18:34 +00:00
8cb5eafe19 Don't blindly make all vtrash folder types have a uri of vtrash:file:/,
2001-08-22  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (create_view): Don't blindly make all vtrash
	folder types have a uri of vtrash:file:/, instead only make it use
	vtrash:file:/ if it's a file: uri, else use physical_uri.

svn path=/trunk/; revision=12411
2001-08-22 23:30:27 +00:00
6b6dbf0a9b zero-ize the password before freeing. (forget_password): Same.
2001-08-21  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (mail_session_forget_password): zero-ize the
	password before freeing.
	(forget_password): Same.

svn path=/trunk/; revision=12350
2001-08-21 19:27:56 +00:00
a1a0a6bc4c Modify the url and set the protocol to mbox rather than hacking it and
2001-08-20  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (create_folder): Modify the url and set the
	protocol to mbox rather than hacking it and prepending mbox: to
	the uri.

	* mail-local.c (get_folder): Don't prepend the folder_name with
	the store's path because the hash key is folder_name, not
	/folder_name.

svn path=/trunk/; revision=12325
2001-08-20 21:49:09 +00:00