Commit Graph

33 Commits

Author SHA1 Message Date
c0d998229d Stop abusing forward declarations. 2009-06-18 16:01:29 -04:00
948235c3d1 Prefer GLib basic types over C types. 2009-05-27 10:29:19 -04:00
cc3a98fc1a Merge branch 'master' into kill-bonobo
Conflicts:
	a11y/widgets/ea-combo-button.c
	a11y/widgets/ea-combo-button.h
	addressbook/gui/component/addressbook-component.c
	addressbook/gui/component/addressbook-component.h
	addressbook/gui/component/addressbook-view.c
	addressbook/gui/component/addressbook-view.h
	addressbook/gui/component/component-factory.c
	addressbook/gui/widgets/e-addressbook-view.c
	addressbook/gui/widgets/eab-contact-display.c
	addressbook/gui/widgets/eab-gui-util.h
	addressbook/gui/widgets/eab-menu.c
	addressbook/gui/widgets/eab-menu.h
	addressbook/gui/widgets/eab-popup-control.c
	addressbook/gui/widgets/eab-popup-control.h
	addressbook/gui/widgets/eab-popup.c
	addressbook/gui/widgets/eab-popup.h
	calendar/gui/cal-search-bar.c
	calendar/gui/calendar-commands.c
	calendar/gui/calendar-component.c
	calendar/gui/comp-editor-factory.c
	calendar/gui/comp-editor-factory.h
	calendar/gui/control-factory.c
	calendar/gui/dialogs/comp-editor.c
	calendar/gui/e-cal-component-memo-preview.c
	calendar/gui/e-cal-component-memo-preview.h
	calendar/gui/e-calendar-table.c
	calendar/gui/e-memo-table.c
	calendar/gui/e-memos.c
	calendar/gui/e-tasks.c
	calendar/gui/gnome-cal.c
	calendar/gui/gnome-cal.h
	calendar/gui/itip-bonobo-control.c
	calendar/gui/itip-bonobo-control.h
	calendar/gui/main.c
	calendar/gui/memos-component.c
	calendar/gui/memos-control.c
	calendar/gui/memos-control.h
	calendar/gui/migration.c
	calendar/gui/migration.h
	calendar/gui/tasks-component.c
	calendar/gui/tasks-control.c
	calendar/importers/main.c
	composer/Makefile.am
	composer/e-composer-header-table.c
	composer/e-composer-header.c
	composer/e-composer-header.h
	composer/e-composer-name-header.c
	composer/e-composer-private.c
	composer/e-composer-text-header.c
	composer/e-msg-composer.c
	composer/e-msg-composer.h
	e-util/e-corba-utils.h
	e-util/e-logger.c
	e-util/e-logger.h
	e-util/e-util-labels.c
	e-util/e-util-labels.h
	em-format/em-format.c
	mail/Makefile.am
	mail/e-mail-shell-migrate.c
	mail/em-account-editor.c
	mail/em-account-editor.h
	mail/em-composer-prefs.c
	mail/em-composer-utils.c
	mail/em-composer-utils.h
	mail/em-folder-browser.c
	mail/em-folder-tree-model.c
	mail/em-folder-tree.c
	mail/em-folder-tree.h
	mail/em-folder-utils.c
	mail/em-folder-utils.h
	mail/em-folder-view.c
	mail/em-format-html-display.c
	mail/em-format-html.c
	mail/em-mailer-prefs.c
	mail/em-mailer-prefs.h
	mail/em-message-browser.c
	mail/em-message-browser.h
	mail/em-network-prefs.h
	mail/em-popup.c
	mail/em-utils.c
	mail/importers/Makefile.am
	mail/mail-component-factory.c
	mail/mail-component.c
	mail/mail-config-factory.c
	mail/mail-config-factory.h
	mail/mail-config.c
	mail/mail-dialogs.glade
	mail/mail-types.h
	plugins/calendar-weather/calendar-weather.c
	plugins/mail-account-disable/mail-account-disable.c
	plugins/select-one-source/select-one-source.c
	po/POTFILES.in
	shell/e-component-registry.c
	shell/e-component-registry.h
	shell/e-component-view.c
	shell/e-component-view.h
	shell/e-corba-config-page.c
	shell/e-corba-config-page.h
	shell/e-shell-constants.h
	shell/e-shell-settings-dialog.c
	shell/e-shell-settings-dialog.h
	shell/e-shell-window-commands.c
	shell/e-shell-window.c
	shell/e-shell.h
	shell/e-sidebar.c
	shell/e-sidebar.h
	shell/e-user-creatable-items-handler.c
	shell/e-user-creatable-items-handler.h
	shell/es-menu.c
	shell/es-menu.h
	shell/evolution-component.h
	shell/evolution-config-control.c
	shell/evolution-config-control.h
	shell/evolution-listener.c
	shell/evolution-listener.h
	shell/evolution-shell-component-utils.c
	shell/evolution-shell-component-utils.h
	shell/importer/evolution-importer-client.c
	shell/importer/evolution-importer-client.h
	shell/importer/evolution-importer-listener.c
	shell/importer/evolution-importer-listener.h
	shell/importer/evolution-importer.c
	shell/importer/evolution-importer.h
	shell/importer/evolution-intelligent-importer.c
	shell/importer/evolution-intelligent-importer.h
	shell/importer/intelligent.c
	shell/main.c
	shell/test/evolution-test-component.c
	shell/test/evolution-test-component.h
	widgets/menus/gal-view-instance.c
	widgets/menus/gal-view-menus.c
	widgets/menus/gal-view-menus.h
	widgets/misc/Makefile.am
	widgets/misc/e-activity-handler.c
	widgets/misc/e-activity-handler.h
	widgets/misc/e-charset-picker.c
	widgets/misc/e-combo-button.c
	widgets/misc/e-combo-button.h
	widgets/misc/e-config-page.h
	widgets/misc/e-dropdown-button.c
	widgets/misc/e-dropdown-button.h
	widgets/misc/e-filter-bar.c
	widgets/misc/e-info-label.c
	widgets/misc/e-info-label.h
	widgets/misc/e-multi-config-dialog.c
	widgets/misc/e-multi-config-dialog.h
	widgets/misc/e-search-bar.c
	widgets/misc/e-search-bar.h
	widgets/misc/e-task-bar.c
	widgets/misc/e-task-bar.h
	widgets/misc/e-task-widget.c
	widgets/misc/e-task-widget.h
	widgets/misc/test-dropdown-button.c
	widgets/misc/test-error.c
	widgets/misc/test-info-label.c
	widgets/table/e-table-example-1.c
2009-05-27 08:37:17 -04:00
e4afd3f9fb Remove trailing whitespace, again. 2009-05-26 23:21:02 -04:00
2a771c3730 Implement yet more mail actions.
svn path=/branches/kill-bonobo/; revision=36918
2008-12-18 21:41:00 +00:00
c0a255eb90 Merge revisions 36016:36303 from trunk.
svn path=/branches/kill-bonobo/; revision=36307
2008-09-11 15:34:29 +00:00
14fa5c8a8c Change License from GPL to LGPL. 2nd batch.
More changes to come.

svn path=/trunk/; revision=36247
2008-09-02 16:25:53 +00:00
8e8d332b85 ** Part of bug #511488
2008-01-24  Milan Crha  <mcrha@redhat.com>

	** Part of bug #511488

	* mail/mail-vfolder.h:
	* mail/mail-vfolder.c: (vfolder_loaded): Function dropped.
	* mail/mail-vfolder.c: (vfolder_load_storage): Allow to call this function
	more than once, but do load the storage only once.
	* mail/em-folder-utils.c: (emfu_popup_new_folder_response):
	* mail/mail-vfolder.c: (vfolder_edit), (vfolder_gui_add_rule),
	(vfolder_gui_add_from_message), (vfolder_gui_add_from_address):
	* mail/em-folder-browser.c: (emfb_search_menu_activated):
	* mail/em-folder-view.c: (emp_uri_popup_vfolder_sender),
	(emp_uri_popup_vfolder_recipient), (vfolder_type_current):
	Ensure vfolder is running.

	* plugins/groupwise-features/share-folder-common.c: (users_dialog_response):
	The logic to check if vfolder is running has been changed, so reflect it here too.


svn path=/trunk/; revision=34878
2008-01-24 11:06:21 +00:00
39be7e3d9c ** Fix for bug #300336
2008-01-07  Milan Crha  <mcrha@redhat.com>

	** Fix for bug #300336

	* plugins/groupwise-features/share-folder-common.c: (users_dialog_response):
	Ensure vfolder is running.

	* mail/mail-vfolder.h: (vfolder_loaded):
	* mail/mail-vfolder.c: (vfolder_loaded): New helper function.
	* mail/em-folder-utils.c: (emfu_popup_new_folder_response):
	* mail/mail-vfolder.c: (vfolder_gui_add_rule),
	(vfolder_gui_add_from_message), (vfolder_gui_add_from_address):
	* mail/em-folder-browser.c: (emfb_search_menu_activated):
	* mail/em-folder-view.c: (emp_uri_popup_vfolder_sender),
	(emp_uri_popup_vfolder_recipient), (vfolder_type_current):
	Ensure vfolder is running.
	* mail/mail-component.c: (mc_startup): Do not start vfolder when
	disabled by option '/apps/evolution/mail/display/enable_vfolders'.
	* mail/evolution-mail.schemas.in: Added schema for new option.
	* mail/mail-config.glade:
	* mail/em-mailer-prefs.h:
	* mail/em-mailer-prefs.c: Added checkbox for "Enable Search Folders" option.

Note: if your schema failed to install, then the search folders will be hidden. Enable by hand then.

svn path=/trunk/; revision=34775
2008-01-07 12:12:13 +00:00
90aeb22682 Add missing headers. Add function prototypes.Fixes #347689.
2006-07-22 Yuri Pankov <yuri.pankov@gmail.com>

	* em-format-html-display.c: Add missing headers.
	* mail-vfolder.h: Add function prototypes.Fixes #347689.

svn path=/trunk/; revision=32381
2006-07-22 10:45:53 +00:00
318fc604c1 forward-reference structures
2005-05-16  Not Zed  <NotZed@Ximian.com>

        * mail-vfolder.h:
        * mail-autofilter.h: forward-reference structures

        * *.h: Make installed headers includable from mail/

        * Makefile.am (mailinclude_HEADERS): install various mail headers
        as first cut at public plugin api.

svn path=/trunk/; revision=29371
2005-05-16 07:53:53 +00:00
e6ee91aa26 New method to copy the selected text in the mail display, to the clipboard
2005-02-18  Rodney Dawes  <dobey@novell.com>

	* mail/em-folder-view.c (emfv_popup_copy_text): New method to copy
	the selected text in the mail display, to the clipboard
	(emfv_popup_items): Restructure this list for the new context menus
	layout that we are moving to, to improve the UI
	(emfv_popup): Add a third argument for whether we are on the mail
	display or not, so that we can pop up the correct portion of the menus
	Pass the on_display argument on to create the popup target
	Only generate the label items if we are on the list and not the display
	(emp_uri_popup_vfolder_{sender,recipient}): New methods to create
	vfolders to and from mailto: addresses from the context menu
	(emfv_enable_menus): Create the target here for clicking on the list
	(em_folder_view_get_popup_target): Add a third argument so that we
	can tell whether we are on the display or not
	Set the appropriate flags on the target for whether we are on the
	message display,, and whether or not there is selected text in it
	(emfv_list_right_click): We aren't rigt-clicking on the display here
	(emfv_popup_menu): We aren't right-clicking on the mail display here
	(emfv_uri_popups): Add the submenu for creating a vfolder from mailto:
	(emfv_format_popup_event): We are right-clickingo nt he display here

	* mail/em-folder-view.h: Add the new flags we need for the mail
	context menus popup target here
	(em_folderiew_get_popup_target): Add the on_display argument

	* mail/em-popup.c (emp_standard_uri_popups): Fix the label and mnemonic
	for the Send New Message popup item for mailto: addresses

	* mail/mail-autofilter.c (rule_from_address):
	(em_vfolder_rule_from_address): New methods to create a vfolder based
	on a CamelInternetAddress object that we get from the mailer

	* mail/mail-vfolder.[ch] (vfolder_gui_add_from_address): New method to
	create a vfolder rule based on the mailto: addresses

	Fixes #23822

svn path=/trunk/; revision=28814
2005-02-18 16:43:55 +00:00
a218c7d2f7 ** See #59885.
2004-06-17  Not Zed  <NotZed@Ximian.com>

        ** See #59885.

        ** Moved all of the mail specific filtering stuff from filter/* to
        here.  Renamed appropriately into em* space, etc.

        * em-filter-folder-element.c (emff_copy_value): implement for folders.

        * em-vfolder-rule.c (get_widget): read the vfolder glade from
        mail-config.glade.

        * mail-config.glade: moved the vfolder source selector here.

        * em-search-context.c: new mail search specific rule context.

        * mail-component.c (setup_search_context): use the new
        em_search_context.

        * vfolder-rule.c (validate): change error to mail context.

        * filter-folder.c (validate): change error to mail context.

        * Makefile.am (em-filter-i18n.h): added rule for i18n of mail
        filter type stuff.
        (libevolution_mail_la_SOURCES): added in the filter and vfolder
        rule stuff specific to mail.

        ** See #59885.

        * em-format-html-quote.[ch]: remove and remove from build, not
        used.

        * Makefile.am (libevolution_mail_la_LIBADD): add libeabutil and
        evolutionsmime.

        * mail-component-factory.c (factory): there is no mail_config
        anymore.

svn path=/trunk/; revision=26380
2004-06-17 07:34:50 +00:00
b6e44f08f7 Make displayed_uid public.
2004-01-20  Not Zed  <NotZed@Ximian.com>

        * em-folder-view.c (EMFolderView): Make displayed_uid public.

        * em-folder-browser.c (em_folder_browser_show_preview): use
        em_folder_view_set_message rather than message_list_select_uid.
        When clearing, clear view->displayed_uid too.

2004-01-20  Not Zed  <NotZed@Ximian.com>

        ** See bug #52965.

        * mail-component.c (mail_component_init): removed an epfixme, it
        already is an object.
        (impl_upgradeFromVersion): call mail_note_store after running the
        upgrade for local folders.

        * em-migrate.c (em_migrate): revert the vfolders.xml after we've
        imported them.

        * mail-vfolder.c (vfolder_revert): new api to re-load the vfolders
        file.

svn path=/trunk/; revision=24322
2004-01-20 04:32:41 +00:00
7d18bf233d Do not depend on e-folder-list.
* gui/component/addressbook-config.c: Do not depend on
e-folder-list.

* gui/component/select-names/e-select-names.c: Remove dependency
on evolution-folder-selector-button.
(e_addressbook_create_folder_selector): Just return a FIXME label
for now.
(folder_selected): #if 0 out.
(e_select_names_init): Do not connect.

* gui/component/select-names/e-select-names-manager.c
(e_select_names_manager_activate_dialog): Don't get a shell_client
arg anymore.
(load_completion_books): Stub out.

* gui/component/select-names/e-select-names.c
(e_select_names_new): Don't get an EvolutionShellClient anymore.
Don't create the folder selector button for now.

* gui/component/select-names/e-select-names.h: Remove dependency
on evolution-shell-client.

* gui/component/select-names/e-select-names-bonobo.c: Remove
dependency on evolution-shell-client.
(impl_SelectNames_activate_dialog): Stub out.

* gui/widgets/eab-gui-util.c: Remove dependency on
evolution-shell-client.
(eab_transfer_contacts): Stub out.

* importers/icalendar-importer.c: Do not #include shell stuff.

* gui/main.c: Do not #include <evolution-shell-client.h>.

* gui/e-itip-control.c: Do not #include
<e-folder-selector-button.h> nor <evolution-shell-client.h>.
(start_default_server): Return FALSE.
(default_server_started_cb): Do not connect the "selected" signal
on the button since it's now NULL.
(button_selected_cb): #if 0 out.

* gui/e-cal-list-view.h: Do not #include
"evolution-activity-client.h".

* gui/tasks-component.c (impl_createControls): Give an empty label
for the status bar.

* gui/e-day-view.h: Remove all deps on evolution-activity-client.

* e-msg-composer-hdrs.c: Do not #include
<evolution-folder-selector-button.h>.
(e_msg_composer_hdrs_set_post_to): #if 0 out for now.
(e_msg_composer_hdrs_get_post_to): Likewise.

* mail-vfolder.c: Do not #include "evolution-shell-component.h".

* Makefile.am (libevolution_mail_la_SOURCES): Don't compile
mail-importer.[ch] for now.

* mail-component-factory.c: Do not #include
<evolution-shell-client.h>.
* mail-config.c: Likewise.

* mail-vfolder.h: Do not #include <evolution-storage.h> or
<evolution-shell-component.h>.

* mail.h: Do not #include <evolution-storage.h>.

* mail-ops.h: Do not #include <evolution-storage.h>.
(mail_scan_subfolders): Remove prototype.
(mail_update_subfolders): Likewise.

svn path=/trunk/; revision=23595
2003-12-03 15:37:56 +00:00
0fb08f3ff8 Merge new-ui-branch to the trunk.
svn path=/trunk/; revision=22964
2003-10-21 18:28:34 +00:00
abafd9de4f Unref the driver before returning to main thread, so any closing
2002-08-06  Not Zed  <NotZed@Ximian.com>

        * mail-ops.c (filter_folder_filter): Unref the driver before
        returning to main thread, so any closing operations are handled
        async (as in fetch_mail_fetch()), for #28072.

        ** fixes for #24605.

        * mail-vfolder.c (vfolder_gui_add_from_mlist): Removed.

        * folder-browser.c (filter_type_uid,vfolder_type_uid): Changed to
        accept args directly.  Fixed callers.
        (filter_mlist_uid,vfolder_mlist_uid): Use filter_type_uid instead
        of mlist variant.
        (vfolder_type_current): new function to handle setup of vfolders
        from the main menu.  It now uses the vfolder_type_uid function the
        same as the popup.
        (vfolder_subject, vfolder_sender, vfolder_recipient,
        vfolder_mlist): Changed to use vfolder_type_current.
        (filter_type_current): Similar for filters.
        (filter_subject, filter_sender, filter_recipient,
        filter_mlist): Changed to use filter_type_current.

        * mail-autofilter.c (rule_from_message): Handle AUTO_MLIST type.
        (rule_from_mlist):
        (vfolder_rule_from_mlist):
        (filter_rule_from_mlist): Removed.
        (filter_gui_add_from_mlist): Removed.

        * mail-autofilter.h: Added AUTO_MLIST type.

svn path=/trunk/; revision=17704
2002-08-06 02:45:07 +00:00
8ae13b9883 Changed to get the address from the messageinfo of the current selected
2002-03-26  Not Zed  <NotZed@Ximian.com>

        * mail-callbacks.c (addrbook_sender): Changed to get the address
        from the messageinfo of the current selected message rather than
        from the current_message.
        (requeue_mail_reply): Only re-queue if we got a message, could
        potentially cause an infinite loop trying to get a message it
        can't.
        (reply_to_sender, reply_to_list, reply_to_all): Always pass NULL
        as the msg to mail_replay, this forces mail_reply to always load
        the message anew.  Fixes FIXME's and popup behaviour.  Basically
        this and stuff below fixes #8542.  Its probably not the nicest
        way, but it works.
        (mark_as_important): Use the flags properly, we can set all flags
        to any combination of on or off as we want, so we just need to
        call set_flags once, thats why its set flags and not set_option.
        (toggle_flags): Fixed the logic here also, so we dont have to call
        set_message_flags more than once, and also implement a true toggle
        for any number of simultaneous flags (whilst simplifying code).

        * mail-vfolder.c (vfolder_gui_add_from_mlist): Removed the 'msg'
        parameter, its not used, fixed callers.

        * folder-browser.c (on_right_click): Lookup the mlist from
        messageinfo, and change the 'no selected' logic slightly, fixes
        most of #8542.
        (filter_data_free): Free filter data struct.
        (vfolder_type_got_message): Actually create vfolder once we have
        the message we need to use for it.  Code could probably be changed
        to use messageinfo instead.
        (vfolder_type_uid): Lookup a message based on uid, and use that to
        create a vfolder based on type.
        (vfolder_subject_uid, vfolder_sender_uid, vfolder_receipient_uid,
        vfolder_mlist_uid): Callbacks for the popup menu, used to create
        rules based on the uid rather than the message, which it loads as
        required.
        (filter_type_got_message, filter_*_uid): Similar to vfolder
        stuff above.
        (filter_menu[]): Changed callbacks to popup specific ones, not
        folderbrowser specific ones used by bonobo.
        (on_right_click): Initialise callback data for the filter submenu
        so it can look up messages for callback implementation.

svn path=/trunk/; revision=16253
2002-03-26 06:55:05 +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
8
ae5590f88d Added remove flag - its not adduri, its removeuri, its less typing than
2001-10-18    <NotZed@Ximian.com>

        * mail-vfolder.c (vfolder_adduri): Added remove flag - its not
        adduri, its removeuri, its less typing than creating a removeuri.
        (vfolder_adduri_do): Implement the remove flag.
        (mail_vfolder_remove_uri): Changed to mail_vfolder_delte_uri, to
        indicate its actually been deleted.
        (mail_vfolder_add_uri): Added remove flag.
        (rule_changed): When adding existing folders to a new rule, strdup
        the list data.

        * mail-folder-cache.c (store_finalised): Unhook from all events
        when done.
        (mail_note_store_remove): Remove a store from being noted.
        (free_folder_info): Also if we have a folder, unhook all events.
        Also remove the uri from vfolders.
        (mail_note_folder): Remove warning about adding folders to stores
        that aren't added yet - we might actually be removing the store.

        * component-factory.c (mail_remove_storage): Call
        mail_note_store_remove when we remove the storage.

svn path=/trunk/; revision=13782
2001-10-19 00:45:02 +00:00
f620356a6f Call mail_vfolder_shutdown.
2001-10-15  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (owner_unset_cb): Call
	mail_vfolder_shutdown.

	* mail-vfolder.c (mail_vfolder_shutdown): Unref all of our
	VFolders.

	* mail-folder-cache.c (real_note_folder): Remember to unref the
	folder before returning if we have already noted this folder.

svn path=/trunk/; revision=13682
2001-10-15 20:18:08 +00:00
4
e46018cd88 If we're accessing a vfolder uri, then popup the vfolder editor instead of
2001-10-04    <NotZed@Ximian.com>

        * mail-callbacks.c (configure_folder): If we're accessing a
        vfolder uri, then popup the vfolder editor instead of trying the
        mail local one.

        * mail-vfolder.c (vfolder_edit_rule): Edit a vfolder by name.

svn path=/trunk/; revision=13419
2001-10-04 19:55:31 +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
5
c2a0bf66ba Major rewrite of most of the guts, handle changes based on signals and
2001-09-15    <NotZed@Ximian.com>

        * mail-vfolder.c: Major rewrite of most of the guts, handle
        changes based on signals and events, etc.  Use the main storage
        handling code that imap uses, etc.

        * mail-tools.c (mail_tool_uri_to_folder): Dont special case
        vfolder: anymore.

        * component-factory.c (owner_set_cb): use vfolder_load_storage(),
        new function to setup vfolder storage, after interaction has been
        enabled only.  This might need some tweaking ...
        (storage_remove_folder): Removed all the folder lookup stuff.
        Just delete the folder based on the path passed in.  There should
        be no reason this wouldn't work, right?

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

        * mail-ops.c (get_folderinfo_get): Only add vtrash folder info, if
        store supports vtrash.

        * component-factory.c (mail_load_storage_by_uri): Let 'vfolder'
        stores show up too.

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

        * mail-vfolder.c (vfolder_uri_to_folder): Open a vfolder then set
        its expression, since name?query open method is removed.

svn path=/trunk/; revision=12856
2001-09-15 08:13:41 +00:00
e60ee74985 Connect to the folder_remove signal on the storage. (vfolder_remove): New
2001-08-02  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c (vfolder_create_storage): Connect to the
	folder_remove signal on the storage.
	(vfolder_remove): New function to remove a vfolder.

svn path=/trunk/; revision=11591
2001-08-02 18:36:39 +00:00
57574f0be3 Cleaned up #includes. Remove unneccesary includes of <gnome.h>,
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
2001-03-29 20:53:17 +00:00
2de08e6b9a Remove very old camel lock stuff.
2001-03-03  Not Zed  <NotZed@Ximian.com>

        * mail-tools.c: Remove very old camel lock stuff.

        * mail-local.c (register_folder_registered): Add the local folder
        as a potential vfolder source.

        * folder-browser.c (got_folder): When we have a new folder,
        register it as a potential vfolder source.

        * mail-vfolder.c: Added the source rule to the vfolder_info.
        (vfolder_refresh): Store the rule in the vfolder info, etc.
        (vfolder_register_source): Function to register a newly opened
        folder with us.
        (vfolder_uri_to_folder): Save the folder in the vfolder_info too.
        (source_finalise): Handle clenaup when the folder dies.

svn path=/trunk/; revision=8534
2001-03-02 23:39:39 +00:00
f01589262c Fixes for changes to search bar. (search_save): Removed. (search_full):
2001-03-01  Not Zed  <NotZed@Ximian.com>

        * folder-browser.c (folder_browser_search_menu_activated): Fixes
        for changes to search bar.
        (search_save): Removed.
        (search_full): Removed.
        (search_full_clicked): Removed.
        (folder_browser_search_option_items[]): Removed.
        (folder_browser_search_query_changed): Changed for search bar
        changes.
        (folder_browser_clear_search): Removed.

        * mail-vfolder.c (vfolder_clone_rule): New function to clone a
        filter/search rule into a matching vfolder rule.

        * mail-send-recv.c (mail_receive_uri): Setup a timeout for status
        updates.
        (build_dialogue): Setup timeout id for status updates.
        (operation_status_timeout): New function to set the status via a
        timeout.
        (receive_done): Remove the timeout handler if we need to.
        (operation_status):
        (receive_status): Just update the info, and let the timeout
        handler update the gui.
        (do_free_status):
        (do_show_status): Removed gui thread status message processing.

2001-02-28  Not Zed  <NotZed@Ximian.com>

        * folder-browser.c (folder_browser_config_search): New function to
        configure the FilterRule for the search mechanism.

2001-02-27  Not Zed  <NotZed@Ximian.com>

        * folder-browser.c (folder_browser_gui_init): Setup the search bar
        as a filterbar.
        (got_folder): Set the whole search bar sensitive or not based on
        the search capability of the folder.

        * folder-browser.h: Changed to use efilterbar instead of esearchbar.

svn path=/trunk/; revision=8438
2001-03-01 00:58:16 +00:00
5c9c2f33b9 vfolder/filter on mailing list. Doesn't acutally work right yet.
* mail-vfolder.c (vfolder_gui_add_from_mlist): Rule to add mlist
	vfolder.

	* mail-autofilter.c (filter_gui_add_for_mailing_list): Removed.
	(rule_from_mlist): Build a generic match rule from an mlist.
	(vfolder_rule_from_mlist): Setup the vfolder rule for an mlist.
	(filter_rule_from_mlist): Setup a filter rule fro an mlist.
	(filter_gui_add_from_mlist): GUI thingy to do the work.

	* folder-browser.c (on_right_click): Added vfolder on mailing list
	to filter menu.
	(on_right_click): Use header_raw_check_mailign_list instead of
	mlist magic to get the mailing list name.
	(filter_mlist): Changed to use new add_from_mlist() call.
	(vfolder_mlist): New function for vfolder from mlist.

svn path=/trunk/; revision=8358
2001-02-23 00:31:23 +00:00
63f1ba7ab1 New handy dandy function to ref and return the vfolder storage (will
2001-02-19  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c (mail_vfolder_get_vfolder_storage): New handy
	dandy function to ref and return the vfolder storage (will
	probably be disavowed once I figure out how to get the vTrash
	folder to show up in the EvolutionLocalStorage).

	* main.c (main): Call vtrash_cleanup().

	* mail-vtrash.c: New file.
	(vtrash_uri_to_folder): vtrash: URI handler
	(vtrash_create): Replacement async vtrash function for the old one
	in mail-ops.c
	(vtrash_cleanup): Cleanup code - unrefs the cached vtrash folders
	and free's the hashtable.

	* Makefile.am: Added mail-vtrash.[c,h].

	* mail-tools.c (mail_tool_uri_to_folder): If we have a vtrash:
	URI, call the vtrash URI handler function rather than continuing
	on. Yes, I know this is a hack and it needs to be fixed.

	* mail-ops.c (mail_do_setup_trash): Removed.
	(mail_trash_get): Removed.

	* component-factory.c (owner_set_cb): Create the vTrash folder for
	the LocalStore here.

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

svn path=/trunk/; revision=8288
2001-02-19 23:38:53 +00:00
8cb514d6dd Merge with camel-async.
svn path=/trunk/; revision=4687
2000-08-10 17:30:50 +00:00
443b5a82a9 Helper function to add with confirm.
2000-08-09  Not Zed  <NotZed@HelixCode.com>

	* mail-autofilter.c (filter_gui_add_from_message): Helper function to add with confirm.

	* message-list.c (on_right_click): Added menu to install vfolders/filters from message.

svn path=/trunk/; revision=4646
2000-08-09 07:20:37 +00:00
72092414aa Configurable vfolder sources, and a button to save a search
as a new vfolder.

2000-07-31  Not Zed  <NotZed@HelixCode.com>

        * mail-vfolder.h: Header for vfolder functions.

        * folder-browser.c (mail_uri_to_folder): Use new scheme to open
        vfolders.
        (search_save): New button/function to save a search as a vfolder.

        * mail-vfolder.c (vfolder_edit): Made asynchronous.
        (vfolder_uri_to_folder): New function for loading vfolders and
        setting up their source folders.
        (vfolder_refresh): Change shell vfolder uri's to indirect
        references rather than the real vfolder uri.
        (vfolder_gui_add_rule): Add a rule with user confirmation.
        (vfolder_create_part): Get a new part by name, for creating rules
        in code.

        * message-thread.c (thread_messages): Check for uid lookup
        failure, which indicates an error in the folder or calling code.

svn path=/trunk/; revision=4422
2000-07-31 15:07:49 +00:00