From 7065f6dba35467cb77519e0b9144659581746289 Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Thu, 7 Mar 2002 18:26:57 +0000 Subject: Make storages-with-toplevel-views less of a hack. * 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 --- shell/e-local-storage.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'shell/e-local-storage.c') diff --git a/shell/e-local-storage.c b/shell/e-local-storage.c index 95175106ac..70bcabf6b1 100644 --- a/shell/e-local-storage.c +++ b/shell/e-local-storage.c @@ -1016,11 +1016,13 @@ construct (ELocalStorage *local_storage, const char *base_path) { ELocalStoragePrivate *priv; + EFolder *root_folder; int base_path_len; + root_folder = e_folder_new (U_("Local Folders"), "noselect", ""); e_storage_construct (E_STORAGE (local_storage), - E_LOCAL_STORAGE_NAME, U_("Local Folders"), - NULL, NULL); + E_LOCAL_STORAGE_NAME, + root_folder); priv = local_storage->priv; @@ -1038,8 +1040,7 @@ construct (ELocalStorage *local_storage, priv->base_path = g_strndup (base_path, base_path_len); g_assert (priv->bonobo_interface == NULL); - priv->bonobo_interface = evolution_storage_new (E_LOCAL_STORAGE_NAME, - NULL, NULL); + priv->bonobo_interface = evolution_storage_new (E_LOCAL_STORAGE_NAME); gtk_signal_connect (GTK_OBJECT (priv->bonobo_interface), "create_folder", GTK_SIGNAL_FUNC (bonobo_interface_create_folder_cb), -- cgit v1.2.3