aboutsummaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
Diffstat (limited to 'shell')
-rw-r--r--shell/ChangeLog34
-rw-r--r--shell/Makefile.am2
-rw-r--r--shell/e-corba-storage.c38
-rw-r--r--shell/e-local-storage.c22
-rw-r--r--shell/e-local-storage.h3
-rw-r--r--shell/e-shell-constants.h3
-rw-r--r--shell/e-shell-importer.c2
-rw-r--r--shell/e-shell.c10
-rw-r--r--shell/e-storage-set-view.c2
-rw-r--r--shell/e-storage.c23
-rw-r--r--shell/e-storage.h6
-rw-r--r--shell/e-summary-storage.c126
-rw-r--r--shell/e-summary-storage.h65
13 files changed, 75 insertions, 261 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index e5f5f5983f..fd976a604c 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,5 +1,39 @@
2002-03-06 Dan Winship <danw@ximian.com>
+ * 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]
+
+2002-03-06 Dan Winship <danw@ximian.com>
+
* e-corba-storage-registry.c
(impl_StorageRegistry_removeListener): Fix up GList/GSList
confusion.
diff --git a/shell/Makefile.am b/shell/Makefile.am
index b884150927..35cea451f8 100644
--- a/shell/Makefile.am
+++ b/shell/Makefile.am
@@ -160,8 +160,6 @@ evolution_SOURCES = \
e-storage-set.h \
e-storage.c \
e-storage.h \
- e-summary-storage.c \
- e-summary-storage.h \
e-task-bar.c \
e-task-bar.h \
e-task-widget.c \
diff --git a/shell/e-corba-storage.c b/shell/e-corba-storage.c
index 1aa1c67674..9601d1d89d 100644
--- a/shell/e-corba-storage.c
+++ b/shell/e-corba-storage.c
@@ -39,8 +39,6 @@ static EStorageClass *parent_class = NULL;
typedef struct _StorageListenerServant StorageListenerServant;
struct _ECorbaStoragePrivate {
- char *name;
-
GNOME_Evolution_Storage storage_interface;
/* The Evolution::StorageListener interface we expose. */
@@ -217,8 +215,6 @@ destroy (GtkObject *object)
corba_storage = E_CORBA_STORAGE (object);
priv = corba_storage->priv;
- g_free (priv->name);
-
CORBA_exception_init (&ev);
if (priv->storage_interface != CORBA_OBJECT_NIL) {
@@ -250,31 +246,6 @@ destroy (GtkObject *object)
/* EStorage methods. */
-static const char *
-get_name (EStorage *storage)
-{
- ECorbaStorage *corba_storage;
- ECorbaStoragePrivate *priv;
-
- corba_storage = E_CORBA_STORAGE (storage);
- priv = corba_storage->priv;
-
- return priv->name;
-}
-static const char *
-get_display_name (EStorage *storage)
-{
- ECorbaStorage *corba_storage;
- ECorbaStoragePrivate *priv;
-
- corba_storage = E_CORBA_STORAGE (storage);
- priv = corba_storage->priv;
-
- /* FIXME: Abstract a display_name, return it. Necessary
- changes to the IDL and EvolutionStorage required. */
- return priv->name;
-}
-
struct async_folder_closure {
EStorageResultCallback callback;
EStorage *storage;
@@ -495,8 +466,6 @@ class_init (ECorbaStorageClass *klass)
object_class->destroy = destroy;
storage_class = E_STORAGE_CLASS (klass);
- storage_class->get_name = get_name;
- storage_class->get_display_name = get_display_name;
storage_class->async_create_folder = async_create_folder;
storage_class->async_remove_folder = async_remove_folder;
storage_class->async_xfer_folder = async_xfer_folder;
@@ -512,7 +481,6 @@ init (ECorbaStorage *corba_storage)
ECorbaStoragePrivate *priv;
priv = g_new (ECorbaStoragePrivate, 1);
- priv->name = NULL;
priv->storage_interface = CORBA_OBJECT_NIL;
corba_storage->priv = priv;
@@ -535,12 +503,12 @@ e_corba_storage_construct (ECorbaStorage *corba_storage,
g_return_if_fail (storage_interface != CORBA_OBJECT_NIL);
g_return_if_fail (name != NULL);
- e_storage_construct (E_STORAGE (corba_storage), toplevel_node_uri, toplevel_node_type);
+ /* FIXME: Need separate name and display name. */
+ e_storage_construct (E_STORAGE (corba_storage), name, name,
+ toplevel_node_uri, toplevel_node_type);
priv = corba_storage->priv;
- priv->name = g_strdup (name);
-
CORBA_exception_init (&ev);
Bonobo_Unknown_ref (storage_interface, &ev);
diff --git a/shell/e-local-storage.c b/shell/e-local-storage.c
index 97a26b5634..95175106ac 100644
--- a/shell/e-local-storage.c
+++ b/shell/e-local-storage.c
@@ -50,6 +50,7 @@
#include <gal/util/e-unicode-i18n.h>
#include "e-util/e-path.h"
#include "e-local-folder.h"
+#include "e-shell-constants.h"
#include "evolution-storage.h"
@@ -622,21 +623,6 @@ impl_destroy (GtkObject *object)
}
-/* EStorage methods. */
-
-static const char *
-impl_get_name (EStorage *storage)
-{
- return E_LOCAL_STORAGE_NAME;
-}
-
-static const char *
-impl_get_display_name (EStorage *storage)
-{
- return U_("Local Folders");
-}
-
-
/* Creating folders. */
static void
@@ -1004,8 +990,6 @@ class_init (ELocalStorageClass *class)
object_class->destroy = impl_destroy;
- storage_class->get_name = impl_get_name;
- storage_class->get_display_name = impl_get_display_name;
storage_class->async_create_folder = impl_async_create_folder;
storage_class->async_remove_folder = impl_async_remove_folder;
storage_class->async_xfer_folder = impl_async_xfer_folder;
@@ -1034,7 +1018,9 @@ construct (ELocalStorage *local_storage,
ELocalStoragePrivate *priv;
int base_path_len;
- e_storage_construct (E_STORAGE (local_storage), NULL, NULL);
+ e_storage_construct (E_STORAGE (local_storage),
+ E_LOCAL_STORAGE_NAME, U_("Local Folders"),
+ NULL, NULL);
priv = local_storage->priv;
diff --git a/shell/e-local-storage.h b/shell/e-local-storage.h
index 555d1ff812..c640c29b70 100644
--- a/shell/e-local-storage.h
+++ b/shell/e-local-storage.h
@@ -52,9 +52,6 @@ struct _ELocalStorageClass {
};
-#define E_LOCAL_STORAGE_NAME "local"
-
-
GtkType e_local_storage_get_type (void);
EStorage *e_local_storage_open (EFolderTypeRegistry *folder_type_registry,
diff --git a/shell/e-shell-constants.h b/shell/e-shell-constants.h
index 00635161d0..ce21d5db8e 100644
--- a/shell/e-shell-constants.h
+++ b/shell/e-shell-constants.h
@@ -32,4 +32,7 @@
#define E_SHELL_ICON_SIZE 48
#define E_SHELL_MINI_ICON_SIZE 16
+#define E_LOCAL_STORAGE_NAME "local"
+#define E_SUMMARY_STORAGE_NAME "summary"
+
#endif
diff --git a/shell/e-shell-importer.c b/shell/e-shell-importer.c
index c6e2bac359..54012965ab 100644
--- a/shell/e-shell-importer.c
+++ b/shell/e-shell-importer.c
@@ -46,7 +46,7 @@
#include "e-shell.h"
#include "e-shell-view.h"
-#include "e-local-storage.h" /* for E_LOCAL_STORAGE_NAME */
+#include "e-shell-constants.h"
#include "e-shell-folder-selection-dialog.h"
#include "importer/evolution-importer-client.h"
diff --git a/shell/e-shell.c b/shell/e-shell.c
index a22d255784..8b137adc68 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -45,6 +45,7 @@
#include <gal/widgets/e-gui-utils.h>
#include <gal/util/e-util.h>
+#include <gal/util/e-unicode-i18n.h>
#include "Evolution.h"
@@ -64,7 +65,6 @@
#include "e-shortcuts.h"
#include "e-storage-set.h"
#include "e-splash.h"
-#include "e-summary-storage.h"
#include "e-uri-schema-registry.h"
#include "evolution-storage-set-view-factory.h"
@@ -87,7 +87,7 @@ struct _EShellPrivate {
EStorageSet *storage_set;
ELocalStorage *local_storage;
- ESummaryStorage *summary_storage;
+ EStorage *summary_storage;
EShortcuts *shortcuts;
EFolderTypeRegistry *folder_type_registry;
@@ -657,8 +657,10 @@ setup_local_storage (EShell *shell)
e_storage_set_add_storage (priv->storage_set, local_storage);
priv->local_storage = E_LOCAL_STORAGE (local_storage);
- priv->summary_storage = E_SUMMARY_STORAGE (e_summary_storage_new ());
- e_storage_set_add_storage (priv->storage_set, E_STORAGE (priv->summary_storage));
+ priv->summary_storage = e_storage_new (E_SUMMARY_STORAGE_NAME,
+ U_("Summary"),
+ "/", "summary");
+ e_storage_set_add_storage (priv->storage_set, priv->summary_storage);
return TRUE;
}
diff --git a/shell/e-storage-set-view.c b/shell/e-storage-set-view.c
index 370cb7753e..68845aadd5 100644
--- a/shell/e-storage-set-view.c
+++ b/shell/e-storage-set-view.c
@@ -43,8 +43,6 @@
#include "e-util/e-gtk-utils.h"
#include "e-shell-constants.h"
-#include "e-local-storage.h"
-#include "e-summary-storage.h"
/*#define DEBUG_XML*/
diff --git a/shell/e-storage.c b/shell/e-storage.c
index f49cddcf39..7b55145d6e 100644
--- a/shell/e-storage.c
+++ b/shell/e-storage.c
@@ -50,6 +50,12 @@ struct _EStoragePrivate {
/* The set of folders we have in this storage. */
EFolderTree *folder_tree;
+ /* Internal name of the storage */
+ char *name;
+
+ /* User-visible localized UTF-8 name */
+ char *display_name;
+
/* URI for the toplevel node. */
char *toplevel_node_uri;
@@ -141,6 +147,8 @@ destroy (GtkObject *object)
if (priv->folder_tree != NULL)
e_folder_tree_destroy (priv->folder_tree);
+ g_free (priv->name);
+ g_free (priv->display_name);
g_free (priv->toplevel_node_uri);
g_free (priv->toplevel_node_type);
@@ -178,13 +186,13 @@ impl_get_folder (EStorage *storage,
static const char *
impl_get_name (EStorage *storage)
{
- return _("(No name)");
+ return storage->priv->name;
}
static const char *
impl_get_display_name (EStorage *storage)
{
- return _("(No name)");
+ return storage->priv->display_name;
}
static void
@@ -286,6 +294,8 @@ init (EStorage *storage)
void
e_storage_construct (EStorage *storage,
+ const char *name,
+ const char *display_name,
const char *toplevel_node_uri,
const char *toplevel_node_type)
{
@@ -296,6 +306,8 @@ e_storage_construct (EStorage *storage,
priv = storage->priv;
+ priv->name = g_strdup (name);
+ priv->display_name = g_strdup (display_name);
priv->toplevel_node_uri = g_strdup (toplevel_node_uri);
priv->toplevel_node_type = g_strdup (toplevel_node_type);
@@ -303,14 +315,17 @@ e_storage_construct (EStorage *storage,
}
EStorage *
-e_storage_new (const char *toplevel_node_uri,
+e_storage_new (const char *name,
+ const char *display_name,
+ const char *toplevel_node_uri,
const char *toplevel_node_type)
{
EStorage *new;
new = gtk_type_new (e_storage_get_type ());
- e_storage_construct (new, toplevel_node_uri, toplevel_node_type);
+ e_storage_construct (new, name, display_name,
+ toplevel_node_uri, toplevel_node_type);
return new;
}
diff --git a/shell/e-storage.h b/shell/e-storage.h
index ae74f242a6..9a64732503 100644
--- a/shell/e-storage.h
+++ b/shell/e-storage.h
@@ -111,9 +111,13 @@ struct _EStorageClass {
GtkType e_storage_get_type (void);
void e_storage_construct (EStorage *storage,
+ const char *name,
+ const char *display_name,
const char *toplevel_node_uri,
const char *toplevel_node_type);
-EStorage *e_storage_new (const char *toplevel_node_uri,
+EStorage *e_storage_new (const char *name,
+ const char *display_name,
+ const char *toplevel_node_uri,
const char *toplevel_node_type);
gboolean e_storage_path_is_relative (const char *path);
diff --git a/shell/e-summary-storage.c b/shell/e-summary-storage.c
deleted file mode 100644
index 19266fa419..0000000000
--- a/shell/e-summary-storage.c
+++ /dev/null
@@ -1,126 +0,0 @@
-/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
-/* e-summary-storage.c
- *
- * Copyright (C) 2001 Ximian, Inc.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public
- * License as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- * Author: Ettore Perazzoli <ettore@ximian.com>
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include "e-summary-storage.h"
-
-#include "e-folder.h"
-
-#include <gal/util/e-unicode-i18n.h>
-
-#include <gal/util/e-util.h>
-
-#include <gtk/gtktypeutils.h>
-
-#include <libgnome/gnome-i18n.h>
-
-
-#define PARENT_TYPE e_storage_get_type ()
-static EStorageClass *parent_class = NULL;
-
-
-/* GtkObject methods. */
-
-static void
-impl_destroy (GtkObject *object)
-{
- (* GTK_OBJECT_CLASS (parent_class)->destroy) (object);
-}
-
-
-/* EStorage methods. */
-
-static GList *
-impl_get_subfolder_paths (EStorage *storage,
- const char *path)
-{
- /* We never have any child folders. */
- return NULL;
-}
-
-static EFolder *
-impl_get_folder (EStorage *storage,
- const char *path)
-{
- return NULL;
-}
-
-static const char *
-impl_get_name (EStorage *storage)
-{
- return E_SUMMARY_STORAGE_NAME;
-}
-
-static const char *
-impl_get_display_name (EStorage *storage)
-{
- return U_("Summary");
-}
-
-
-static void
-class_init (GtkObjectClass *object_class)
-{
- EStorageClass *storage_class;
-
- object_class->destroy = impl_destroy;
-
- storage_class = E_STORAGE_CLASS (object_class);
- storage_class->get_subfolder_paths = impl_get_subfolder_paths;
- storage_class->get_folder = impl_get_folder;
- storage_class->get_name = impl_get_name;
- storage_class->get_display_name = impl_get_display_name;
-
- parent_class = gtk_type_class (PARENT_TYPE);
-}
-
-static void
-init (ESummaryStorage *summary_storage)
-{
- /* No members. */
-}
-
-
-/**
- * e_summary_storage_new:
- *
- * Create a new summary storage.
- *
- * Return value: The newly created ESummaryStorage object.
- **/
-EStorage *
-e_summary_storage_new (void)
-{
- EStorage *storage;
-
- storage = gtk_type_new (e_summary_storage_get_type ());
-
- e_storage_construct (storage, "/", "summary");
-
- return storage;
-}
-
-
-E_MAKE_TYPE (e_summary_storage, "ESummaryStorage", ESummaryStorage, class_init, init, PARENT_TYPE)
diff --git a/shell/e-summary-storage.h b/shell/e-summary-storage.h
deleted file mode 100644
index 4d5aab7641..0000000000
--- a/shell/e-summary-storage.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
-/* e-summary-storage.h
- *
- * Copyright (C) 2001 Ximian, Inc.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public
- * License as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- * Author: Ettore Perazzoli <ettore@ximian.com>
- */
-
-#ifndef _E_SUMMARY_STORAGE_H_
-#define _E_SUMMARY_STORAGE_H_
-
-#include "e-storage.h"
-
-#ifdef __cplusplus
-extern "C" {
-#pragma }
-#endif /* __cplusplus */
-
-#define E_TYPE_SUMMARY_STORAGE (e_summary_storage_get_type ())
-#define E_SUMMARY_STORAGE(obj) (GTK_CHECK_CAST ((obj), E_TYPE_SUMMARY_STORAGE, ESummaryStorage))
-#define E_SUMMARY_STORAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_SUMMARY_STORAGE, ESummaryStorageClass))
-#define E_IS_SUMMARY_STORAGE(obj) (GTK_CHECK_TYPE ((obj), E_TYPE_SUMMARY_STORAGE))
-#define E_IS_SUMMARY_STORAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), E_TYPE_SUMMARY_STORAGE))
-
-
-#define E_SUMMARY_STORAGE_NAME "summary"
-
-
-typedef struct _ESummaryStorage ESummaryStorage;
-typedef struct _ESummaryStoragePrivate ESummaryStoragePrivate;
-typedef struct _ESummaryStorageClass ESummaryStorageClass;
-
-struct _ESummaryStorage {
- EStorage parent;
-
- ESummaryStoragePrivate *priv;
-};
-
-struct _ESummaryStorageClass {
- EStorageClass parent_class;
-};
-
-
-GtkType e_summary_storage_get_type (void);
-EStorage *e_summary_storage_new (void);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* _E_SUMMARY_STORAGE_H_ */