* e-shell-startup-wizard.c (e_shell_startup_wizard_create):
Connect finish_func to the "next" signal for now, since GnomeDruid
seems to be borked.
* e-uri-schema-registry.c (schema_handler_new): g_object_ref()
@component instead of bonobo_object_ref().
* e-local-storage.c (create_folder): g_object_ref() for the
component_client, instead of bonobo_object_ref().
(remove_folder_step): Likewise.
svn path=/trunk/; revision=18741
* All: g_object_unref instead of bonobo_object_unref for the
EvolutionShellComponentClient and EvolutionShellClient interfaces.
svn path=/trunk/; revision=18555
* *.c, *.h: Changed all gtk_object_refs()/gtk_object_unrefs() into
g_object_refs()/g_object_unrefs() and all gtk_signal_connect_*()
into g_signal_connect_*(). [Except for some case where we have
gtk_signal_connect_full() or gtk_signal_connect_while_alive()
calls that cannot be trivially ported to use the g_signal_*
functions, we'll have to fix those later.]
* e-splash.c (impl_finalize): Finalize implementation, copied over
from impl_destroy.
(impl_destroy): Removed.
(class_init): Override finalize, not destroy.
* e-activity-handler.c: Ported from GtkObject to GObject.
* evolution-storage.c: Likewise.
* e-corba-shortcuts.c: Likewise.
* evolution-session.h: Likewise.
* evolution-config-control.c: Likewise.
* evolution-shell-component-dnd.c: Likewise.
* evolution-shell-component.c: Likewise.
* evolution-shell-view.c: Likewise.
* evolution-storage-set-view.c: Likewise.
* evolution-wizard.c: Likewise.
svn path=/trunk/; revision=18513
* e-folder-type-registry.c
(e_folder_type_registry_type_registered,
e_folder_type_registry_unregister_type): Fix the names of these
functions. (They previously used "register" instead of
"registry".)
* e-component-registry.c (register_type): Update for renaming
* e-local-storage.c (load_folder): Likewise
svn path=/trunk/; revision=17799
of the folders fails to load; otherwise, if the user has played
with ~/evolution, he might end up not seeing any folders at all.
svn path=/trunk/; revision=17606
* gui/component/addressbook-storage.c (load_source_data): Pass
zero as the @sorting_priority to evolution_storage_new_folder().
(addressbook_storage_add_source): Likewise.
* subscribe-dialog.c (recursive_add_folder): Pass zero as
@sorting_priority to evolution_storage_new_folder().
* mail-folder-cache.c (real_flush_updates): Pass zero as
@sorting_priority to evolution_storage_new_folder().
* evolution-test-component.c (setup_custom_storage): Pass
@sorting_priority to evolution_storage_new_folder() so we test it.
Also make /FirstFolder have an "inbox" custom icon.
* e-local-storage.c (new_folder): Pass zero as @sorting_priority
to evolution_storage_new_folder().
* evolution-storage.c (evolution_storage_new_folder): New arg
@sorting_priority; put it in the CORBA folder struct.
* evolution-shell-client.c
(impl_FolderSelectionListener_selected): Copy the sortingPriority
as well.
* e-folder.c (e_folder_to_corba): Set sortingPriority.
* e-corba-storage-registry.c
(impl_StorageRegistry_getFolderByUri): Set sortingPriority in the
new CORBA Folder struct.
* e-corba-storage.c (impl_StorageListener_notifyFolderCreated):
Set the custom_icon if folder->customIconName is not an empty
string. Likewise, set the sorting_priority
* Evolution-common.idl: New member sortingPriority in struct
Folder.
* e-storage-set-view.c (folder_sort_callback): Sort according to
the sorting_priorities.
* e-folder.c: New member sorting_priority in EFolderPrivate.
(init): Init to zero.
(e_folder_set_custom_icon): Emit "changed" if required.
(e_folder_set_sorting_priority): New.
svn path=/trunk/; revision=17404
* gui/component/addressbook-storage.c (load_source_data): Pass
NULL @custom_icon_name to evolution_storage_new_folder().
(addressbook_storage_add_source): Likewise. [Note we could be
passing a nice custom here. ;-)]
* subscribe-dialog.c (recursive_add_folder): Pass NULL for
@custom_icon_name to evolution_storage_new_folder().
* mail-folder-cache.c (real_flush_updates): Pass NULL for
@custom_icon_name to evolution_storage_new_folder().
* evolution-test-component.c (setup_custom_storage): Pass NULL for
@custom_icon_name to evolution_storage_new_folder().
* e-local-storage.c (new_folder): Pass the custom_icon_name here
to evolution_storage_new_folder().
* evolution-shell-client.c
(impl_FolderSelectionListener_selected): Set customIconName here
too.
* e-folder.c (e_folder_to_corba): Set customIconName too.
* e-corba-storage-registry.c
(impl_StorageRegistry_getFolderByUri): Set customIconName. Also,
use e_safe_corba_string() to clean up the code a bit.
* evolution-storage.c (evolution_storage_new_folder): New arg
@custom_icon_name.
* Evolution-common.idl: New member customIconName in struct
Folder.
svn path=/trunk/; revision=17397
* main.c (main): Call e_icon_factory_init().
* e-local-storage.c (setup_folder_as_stock): New arg @icon_name;
if not NULL, set up a custom icon for the folder.
(setup_stock_folders): Set up custom icons for inbox and outbox.
* e-storage-set-view.c (get_pixbuf_for_folder): If the folder has
a custom icon, return the custom icon.
* e-folder.c: New member custom_icon_name.
(init): Initialize to NULL.
(destroy): Free.
(e_folder_get_custom_icon): New.
(e_folder_set_custom_icon): New.
svn path=/trunk/; revision=17391
* e-corba-storage.c (impl_StorageListener_notifyFolderCreated):
Set the can_sync_offline property on the EFolder based on the
canSyncOffline value on the CORBA folder.
* evolution-test-component.c (setup_custom_storage): Pass FALSE
for @sync_offline to evolution_storage_new_folder().
* e-local-storage.c (new_folder): Pass FALSE for @sync_offline to
evolution_storage_new_folder().
* evolution-storage.h (evolution_storage_new_folder): New arg
@can_sync_offline.
* subscribe-dialog.c (recursive_add_folder): Pass TRUE for
@sync_offline to evolution_storage_new_folder().
* mail-folder-cache.c (real_flush_updates): Pass TRUE for
@sync_offline to evolution_storage_new_folder().
* gui/component/addressbook-storage.c (load_source_data): Pass
FALSE for @sync_offline to evolution_storage_new_folder().
(addressbook_storage_add_source): Pass FALSE for @sync_offline to
evolution_storage_new_folder().
svn path=/trunk/; revision=16947
* e-local-storage.c (construct): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
* evolution-storage.c: New member has_shared_folders in
EvolutionStoragePrivate.
(init): Initialize to FALSE.
(evolution_storage_new): New arg @has_shared_folders.
(evolution_storage_construct): Likewise.
(impl_Storage__get_folderList): Renamed from
impl_Storage__get_folder_list.
(impl_Storage__get_hasSharedFolders): New, implementation for
::hasSharedFolders.
(evolution_storage_get_epv): Install the CORBA method
implementation.
* Evolution-Storage.idl: Make Storage::name a readonly attribute. New attribute Storage::
* component-factory.c (add_storage): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
* gui/component/addressbook-storage.c
(addressbook_get_other_contact_storage): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
svn path=/trunk/; revision=16733
* e-folder-tree.c (e_folder_tree_add): Allow the caller to "add" a
root folder, if the existing root folder has no children.
(e_folder_tree_new): Use e_folder_tree_add to create the root
folder, since it can do that now.
* e-storage.c: (e_storage_construct): Replace toplevel_node_uri
and toplevel_node_type args with root_folder.
(e_storage_new): Likewise.
(*): Remove toplevel uri/type stuff everywhere. Also remove
display_name since now we will use the name of the root folder for
that.
* evolution-storage.c: Remove toplevel uri/type stuff everywhere.
* e-local-storage.c (construct): Pass root_folder to
e_storage_construct instead of toplevel uri/type.
Also, evolution_storage_new no longer takes toplevel uri/type.
* e-corba-storage.c (e_corba_storage_construct): Out with toplevel
uri/type, in with root_folder.
(e_corba_storage_new): Remove toplevel uri/type.
* e-shell.c (setup_local_storage): Create a top-level folder of
type "summary" for the Summary storage.
* e-storage-set-view.c (set_e_shortcut_selection): Remove
special-case for storages.
(etree_icon_at): Remove special case for figuring out storage
icons (but leave the code that makes the icon disappear once the
storage is opened).
(etree_value_at): Remove special case for storage names. (But
still make storages always bold.) Remove unused special-case code
for Summary.
* e-shortcuts.c (load_shortcuts): Remove special case for
storages, reorganize a bit.
* e-shortcuts-view.c (get_shortcut_info): Remove special case for
storages.
* e-shell-view.c (update_for_current_uri): Remove special case for
storages.
(socket_destroy_cb): Likewise.
(get_type_for_storage): No longer needed.
(get_view_for_uri): No longer needs to special-case storages (but
add a special case for folders of type "noselect", to make them
unselectable like storages-without-toplevel-views used to be).
* e-storage-set.c (get_storage_for_path): If passed "/foo", return
"/" as subpath_return so e_storage_set_get_folder will DTRT in the
NWO.
* Evolution-Storage.idl (addStorage): Remove the toplevel_node_uri
and toplevel_node_type arguments.
* e-corba-storage-registry.c (impl_StorageRegistry_addStorage):
Likewise.
svn path=/trunk/; revision=15965
* e-storage.c: Keep the storage name and display_name in
EStoragePriv.
(impl_get_name, impl_get_display_name): Return them.
(e_storage_construct): Set them here.
(e_storage_new): And here.
* e-local-storage.c: (impl_get_name, impl_get_display_name):
Removed.
(construct): Pass E_LOCAL_STORAGE_NAME and U_("Local Folders") to
e_storage_construct.
* e-corba-storage.c: Remove priv->name.
(get_name, get_display_name): Removed.
(e_corba_storage_construct): Pass name to e_storage_construct().
* e-summary-storage.[ch]: Gone. This didn't override anything in
EStorage but get_name/get_display_name, and the defaults for those
DTRT now.
* e-shell-constants.h: Move E_SUMMARY_STORAGE_NAME here from
e-summary-storage.h, and move E_LOCAL_STORAGE_NAME too for
consistency.
* e-storage-set-view.c: Fix up #includes.
* e-shell-importer.c: Likewise
* e-shell.c: Likewise. Create summary_storage as a plain EStorage
since ESummaryStorage is gone now.
* Makefile.am (evolution_SOURCES): Remove e-summary-storage.[ch]
svn path=/trunk/; revision=15955
* e-local-storage.c (storage_result_from_component_result): New.
(async_xfer_folder_callback): Use it so we get the right error
message.
(async_xfer_folder_complete): New arg @success. Don't remove the
directory and the metadata if @success is %FALSE.
svn path=/trunk/; revision=13991
* e-local-storage.c (async_xfer_folder_callback): Handle the
return codes properly, and invoke the result callback too.
svn path=/trunk/; revision=13965
* Evolution-Storage.idl: Remove "display_name" arg from update
methods. It was only there to do the "Inbox (5)" hack, which is
supported directly now.
* evolution-storage.c (impl_Storage_updateFolder): no longer takes
display_name.
(evolution_storage_update_folder,
evolution_storage_update_folder_by_uri): Likewise.
(class_init): Update signal signature.
* evolution-storage-listener.c
(impl_GNOME_Evolution_StorageListener_notifyFolderUpdated): No
longer takes display_name, but make it pass the unread_count along
in the signal it emits.
(class_init): Update signal signature.
* e-local-storage.c (bonobo_interface_update_folder_cb):
* e-corba-storage.c (impl_StorageListener_notifyFolderUpdated): No
longer take display_name.
svn path=/trunk/; revision=13587
* e-storage.c (e_storage_async_xfer_folder): Make this a no-op if
the source and the destination path are the same.
* e-local-storage.c (impl_async_xfer_folder): return after
returning `E_STORAGE_CANTCHANGESTOCKFOLDER' to the callback.
* e-storage-set-view.c (handle_evolution_path_drag_motion): Make
the check for dragging a folder over itself a little bit more
accurate.
svn path=/trunk/; revision=13550
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Free the
folder_command_data when destroying the dialog.
* e-local-storage.c (remove_folder): Free physical_uri if we
allocated it.
* e-shortcuts-view.c (pop_up_right_click_menu_for_group): Unref
the popup menu, don't destroy it.
(destroy_group_cb): Free the question string.
(rename_group_cb): Free the new_name.
* e-shell-importer.c (create_plugin_menu): Free the list of
importers.
(get_iid_for_filetype): Likewise.
(import_druid_finish): #ifdef out some g_strdups that are only
used by other #ifdef'ed-out code.
* e-shell-view.c: Make sure the keys in the uri_to_view hash get
freed.
* e-shell-folder-title-bar.c (set_title_bar_label_style): Unref
the style after setting it on the widget.
* e-shell-offline-handler.c (impl_destroy): free priv.
* e-storage-set-view.c (tree_drag_data_received): Make sure
target_type always gets freed.
* e-shell-folder-creation-dialog.c (add_folder_types): Don't leak
the type names.
svn path=/trunk/; revision=12715
2001-08-30 Peter Williams <peterw@ximian.com>
* e-local-storage.c (async_xfer_folder_complete): Remove the folder from
the EvolutionStorage as well as the EStorage.
2001-08-29 Peter Williams <peterw@ximian.com>
* e-storage-set-view.c (etree_node_destroy_func): Only call
remove_node_from_hash if it's not the root node.
(removed_storage_cb): Don't remove the node from the hash here,
because it will be removed in the node_destroyed callback.
(removed_folder_cb): Same.
* e-shell-view.c (e_shell_view_remove_control_for_uri): Disconnect
from the destroy signal so as not to confuse ourselves. Also, the
page remove in the notebook destroys the control and the socket, so don't
do that explicitly.
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Remove the control
for the source view if we're moving.
svn path=/trunk/; revision=12578
* 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-22 Peter Williams <peterw@ximian.com>
* e-local-storage.c (async_xfer_folder_callback): Fix the improper
construction of the new folder's physical URI.
svn path=/trunk/; revision=12391
2001-08-17 Jeffrey Stedfast <fejj@ximian.com>
* e-local-storage.c (setup_folder_as_stock): utf_name should not
be const as e_utf8_from_locale_string() returns an allocated
buffer.
svn path=/trunk/; revision=12158
2001-08-13 Jason Leach <jleach@ximian.com>
* e-local-storage.c (remove_folder_directory): Remove unused
variable @folder.
* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
Give icons to shortcuts added via Right-click->Add to Shortcut
Bar.
svn path=/trunk/; revision=11944
default folder names are not translated".]
* e-local-storage.c (setup_folder_as_stock): New helper function.
(setup_stock_folders): Use it to set the default folders as
"stock" folders. This will give them a translated name and also
make them unmodifiable.
(load_all_folders): Call `setup_stock_folders()' here.
* e-shell-folder-commands.c (delete_cb): Display an error dialog
if the deletion fails.
(e_shell_command_delete_folder): Pass the shell view to the delete
callback.
* e-storage.c (e_storage_result_to_string): Add a string for
`E_STORAGE_CANTCHANGESTOCKFOLDER' as well.
* e-local-storage.c (remove_folder): Don't allow a stock folder to
be removed.
(impl_async_xfer_folder): Don't allow a stock folder to be moved.
* e-corba-storage.c (async_remove_folder): Don't allow a stock
folder to be removed.
* e-storage.h: New enum value `E_STORAGE_CANTCHANGESTOCKFOLDER' in
`EStorageResult'.
* e-folder.c: Make member `self_highlight' a :1 int. New :1 int
member `is_stock'.
(init): Init `is_stock' to %FALSE.
(e_folder_set_is_stock): New.
(e_folder_get_is_stock): New.
* e-local-storage.c (bonobo_interface_update_folder_cb): For now,
don't set the display name.
svn path=/trunk/; revision=11931
2001-08-03 Jason Leach <jleach@ximian.com>
[Removing Evolution::LocalStorage interface, abstracting the
unread counts from a folder's name, also abstract unread counts
from a shortcut's name. Fixes#4489 and #5497]
* e-shortcuts.c (shortcut_item_new): Take an unread_count argument
now.
(shortcut_item_update): Ditto.
* e-shortcuts-view-model.c (get_name_with_unread): Get a string
containing a shortcut name and it's unread, because these are
abstracted now.
(load_group_into_model): Use the above function to make shortcuts
that have unread counts.
* e-storage-set-view.c (update_folder_with_unread_hash): Keep a
hash of folder names with unread counts, because the folder name
and it's unread count are to be separated, only the ETree is
supposed to present it as one string.
* e-shell-view.c: Renamed EShellView::view_title_bar to
folder_title_bar, to closer match the
* e-shell-view-menu.c (new_shortcut_dialog_folder_selected_cb):
Make a shortcut with the unread count.
* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
Make a shortcut with the unread count.
* e-local-storage.c: Updated for API changes.
* e-folder.c (e_folder_get_unread_count): New function, does what
it says.
(e_folder_set_unread_count): Ditto.
* e-corba-storage.c (impl_StorageListener_new_folder): Renamed to
match the IDL function name.
(impl_StorageListener_update_folder): Ditto.
(impl_StorageListener_removed_folder): Ditto.
* Evolution-Storage.idl (struct Folder): Replace the boolean
highlighted with a long unread_count.
(updateFolder): Brought in from the now dead
Evolution::LocalStorage.
* Evolution-Shell.idl (getLocalStorage): Return a Storage instead
of a LocalStorage.
* Evolution-LocalStorage.idl: Removed, no longer needed, only used
function, updateFolder, has been moved into Evolution::Storage
interface.
* evolution-local-storage.[ch]: Ditto.
* evolution-storage.c (impl_Storage_updateFolder): Implementation
of the updateFolder taken from ::LocalStorage.
(class_init): New "update_folder" signal, taken from
evolution-local-storage.c too.
(evolution_storage_update_folder): Take an @unread_count int
instead of a @highlighted boolean.
(evolution_storage_new_folder): Same for here.
(evolution_storage_update_folder_by_uri): And here.
* evolution-storage-listener.h: "update_folder" signal no longer
sends a @highlighted boolean.
2001-08-03 Jason Leach <jleach@ximian.com>
* e-shell-view-menu.c (update_offline_menu_item): Use Jakub's new
"Work Online" icon and fix a typo.
svn path=/trunk/; revision=11633
the ShellComponent interface. Updated the EvolutionShellComponent
GTK+ wrapper and all the component accordingly. Get the calendar to
use this so it can delete both tasks and calendar folders.
svn path=/trunk/; revision=11300
2001-07-20 Jason Leach <jleach@ximian.com>
[This is a better way to have "Local Folders" be shown as the
local storage name without breaking current user's shortcuts.]
* e-corba-storage.c (get_display_name): Implement this, but it's
only returning the real name now. Need to change the IDL soon to
let corba storages have separated display names.
* e-shortcuts.c (e_shortcuts_add_default_group): Set these default
shortcut URI's back to evolution:/local/
* e-shell-view.h (DEFAULT_URI): Set this back to
"evolution:/local/Inbox"
* e-storage-set-view.c (etree_value_at): Get the display name for
a storage rather than it's true name.
* e-local-storage.c (impl_get_display_name): Implemented for the
local folder (to return a translated "Local Folders").
* e-storage.c (e_storage_get_display_name): New virtual function
for retrieving the display name.
svn path=/trunk/; revision=11274
folders.]
* e-local-storage.c (remove_folder): Don't free the
`physical_path' on error, as it gets freed when freeing the
callback data.
svn path=/trunk/; revision=10842