aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-05-09 06:18:58 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-05-09 06:18:58 +0800
commite18f9eb725e0be78db138e9eb0d58ed4d3370c82 (patch)
treec5d5a2580bfde5e90336ab08299d4519d425b885
parent538b8a736343c38907a2e8dbea3ba496c0d24ee7 (diff)
downloadgsoc2013-evolution-e18f9eb725e0be78db138e9eb0d58ed4d3370c82.tar.gz
gsoc2013-evolution-e18f9eb725e0be78db138e9eb0d58ed4d3370c82.tar.zst
gsoc2013-evolution-e18f9eb725e0be78db138e9eb0d58ed4d3370c82.zip
Adapt tasks to EShellBackend changes.
-rw-r--r--calendar/modules/e-task-shell-backend.c167
-rw-r--r--calendar/modules/e-task-shell-backend.h6
-rw-r--r--calendar/modules/e-task-shell-migrate.c2
-rw-r--r--calendar/modules/e-task-shell-sidebar.c9
-rw-r--r--calendar/modules/e-task-shell-view-actions.c129
-rw-r--r--calendar/modules/e-task-shell-view-private.c16
-rw-r--r--calendar/modules/e-task-shell-view-private.h8
-rw-r--r--calendar/modules/e-task-shell-view.c42
-rw-r--r--calendar/modules/e-task-shell-view.h5
-rw-r--r--doc/reference/shell/Makefile.am3
-rw-r--r--doc/reference/shell/eshell-docs.sgml2
-rw-r--r--doc/reference/shell/eshell-sections.txt70
-rw-r--r--doc/reference/shell/eshell.types2
-rw-r--r--doc/reference/shell/tmpl/e-shell-view.sgml15
-rw-r--r--doc/reference/shell/tmpl/e-shell-window.sgml4
-rw-r--r--doc/reference/shell/tmpl/e-shell.sgml6
-rw-r--r--doc/reference/shell/tmpl/eshell-unused.sgml214
17 files changed, 494 insertions, 206 deletions
diff --git a/calendar/modules/e-task-shell-backend.c b/calendar/modules/e-task-shell-backend.c
index 1dba011c96..6a89a27938 100644
--- a/calendar/modules/e-task-shell-backend.c
+++ b/calendar/modules/e-task-shell-backend.c
@@ -19,6 +19,8 @@
*
*/
+#include "e-task-shell-backend.h"
+
#include <string.h>
#include <glib/gi18n.h>
#include <libecal/e-cal.h>
@@ -37,19 +39,31 @@
#include "calendar/gui/dialogs/calendar-setup.h"
#include "calendar/gui/dialogs/task-editor.h"
+#include "e-task-shell-migrate.h"
#include "e-task-shell-view.h"
-#include "e-task-shell-backend-migrate.h"
-#define MODULE_NAME "tasks"
-#define MODULE_ALIASES ""
-#define MODULE_SCHEMES "task"
-#define MODULE_SORT_ORDER 600
+#define E_TASK_SHELL_BACKEND_GET_PRIVATE(obj) \
+ (G_TYPE_INSTANCE_GET_PRIVATE \
+ ((obj), E_TYPE_TASK_SHELL_BACKEND, ETaskShellBackendPrivate))
#define WEB_BASE_URI "webcal://"
#define PERSONAL_RELATIVE_URI "system"
+struct _ETaskShellBackendPrivate {
+ ESourceList *source_list;
+};
+
+enum {
+ PROP_0,
+ PROP_SOURCE_LIST
+};
+
/* Module Entry Point */
-void e_shell_backend_init (GTypeModule *type_module);
+void e_module_load (GTypeModule *type_module);
+void e_module_unload (GTypeModule *type_module);
+
+GType e_task_shell_backend_type = 0;
+static gpointer parent_class;
static void
task_module_ensure_sources (EShellBackend *shell_backend)
@@ -484,32 +498,49 @@ task_module_window_created_cb (EShellBackend *shell_backend,
source_entries, G_N_ELEMENTS (source_entries));
}
-static EShellBackendInfo module_info = {
+static void
+task_shell_backend_get_property (GObject *object,
+ guint property_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ switch (property_id) {
+ case PROP_SOURCE_LIST:
+ g_value_set_object (
+ value,
+ e_task_shell_backend_get_source_list (
+ E_TASK_SHELL_BACKEND (object)));
+ return;
+ }
- MODULE_NAME,
- MODULE_ALIASES,
- MODULE_SCHEMES,
- MODULE_SORT_ORDER,
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+}
- /* start */ NULL,
- /* is_busy */ NULL,
- /* shutdown */ NULL,
- e_task_shell_backend_migrate
-};
+static void
+task_shell_backend_dispose (GObject *object)
+{
+ ETaskShellBackendPrivate *priv;
-void
-e_shell_backend_init (GTypeModule *type_module)
+ priv = E_TASK_SHELL_BACKEND_GET_PRIVATE (object);
+
+ if (priv->source_list != NULL) {
+ g_object_unref (priv->source_list);
+ priv->source_list = NULL;
+ }
+
+ /* Chain up to parent's dispose() method. */
+ G_OBJECT_CLASS (parent_class)->dispose (object);
+}
+
+static void
+task_shell_backend_constructed (GObject *object)
{
EShell *shell;
EShellBackend *shell_backend;
- shell_backend = E_SHELL_BACKEND (type_module);
+ shell_backend = E_SHELL_BACKEND (object);
shell = e_shell_backend_get_shell (shell_backend);
- e_shell_backend_set_info (
- shell_backend, &module_info,
- e_task_shell_view_get_type (type_module));
-
task_module_ensure_sources (shell_backend);
g_signal_connect_swapped (
@@ -520,3 +551,93 @@ e_shell_backend_init (GTypeModule *type_module)
shell, "window-created",
G_CALLBACK (task_module_window_created_cb), shell_backend);
}
+
+static void
+task_shell_backend_class_init (ETaskShellBackendClass *class)
+{
+ GObjectClass *object_class;
+ EShellBackendClass *shell_backend_class;
+
+ parent_class = g_type_class_peek_parent (class);
+ g_type_class_add_private (class, sizeof (ETaskShellBackendPrivate));
+
+ object_class = G_OBJECT_CLASS (class);
+ object_class->get_property = task_shell_backend_get_property;
+ object_class->dispose = task_shell_backend_dispose;
+ object_class->constructed = task_shell_backend_constructed;
+
+ shell_backend_class = E_SHELL_BACKEND_CLASS (class);
+ shell_backend_class->name = "tasks";
+ shell_backend_class->aliases = "";
+ shell_backend_class->schemes = "task";
+ shell_backend_class->sort_order = 600;
+ shell_backend_class->view_type = E_TYPE_TASK_SHELL_VIEW;
+ shell_backend_class->start = NULL;
+ shell_backend_class->is_busy = NULL;
+ shell_backend_class->shutdown = NULL;
+ shell_backend_class->migrate = e_task_shell_backend_migrate;
+
+ g_object_class_install_property (
+ object_class,
+ PROP_SOURCE_LIST,
+ g_param_spec_object (
+ "source-list",
+ _("Source List"),
+ _("The registry of task lists"),
+ E_TYPE_SOURCE_LIST,
+ G_PARAM_READABLE));
+}
+
+static void
+task_shell_backend_init (ETaskShellBackend *task_shell_backend)
+{
+ task_shell_backend->priv =
+ E_TASK_SHELL_BACKEND_GET_PRIVATE (task_shell_backend);
+}
+
+GType
+e_task_shell_backend_get_type (GTypeModule *type_module)
+{
+ if (e_task_shell_backend_type == 0) {
+ const GTypeInfo type_info = {
+ sizeof (ETaskShellBackendClass),
+ (GBaseInitFunc) NULL,
+ (GBaseFinalizeFunc) NULL,
+ (GClassInitFunc) task_shell_backend_class_init,
+ (GClassFinalizeFunc) NULL,
+ NULL, /* class_data */
+ sizeof (ETaskShellBackend),
+ 0, /* n_preallocs */
+ (GInstanceInitFunc) task_shell_backend_init,
+ NULL /* value_table */
+ };
+
+ e_task_shell_backend_type =
+ g_type_module_register_type (
+ type_module, E_TYPE_SHELL_BACKEND,
+ "ETaskShellBackend", &type_info, 0);
+ }
+
+ return e_task_shell_backend_type;
+}
+
+ESourceList *
+e_task_shell_backend_get_source_list (ETaskShellBackend *task_shell_backend)
+{
+ g_return_val_if_fail (
+ E_IS_TASK_SHELL_BACKEND (task_shell_backend), NULL);
+
+ return task_shell_backend->priv->source_list;
+}
+
+void
+e_module_load (GTypeModule *type_module)
+{
+ e_task_shell_backend_get_type (type_module);
+ e_task_shell_view_get_type (type_module);
+}
+
+void
+e_module_unload (GTypeModule *type_module)
+{
+}
diff --git a/calendar/modules/e-task-shell-backend.h b/calendar/modules/e-task-shell-backend.h
index d57eb12fd1..7326ea9f03 100644
--- a/calendar/modules/e-task-shell-backend.h
+++ b/calendar/modules/e-task-shell-backend.h
@@ -23,6 +23,7 @@
#define E_TASK_SHELL_BACKEND_H
#include <shell/e-shell-backend.h>
+#include <libedataserver/e-source-list.h>
/* Standard GObject macros */
#define E_TYPE_TASK_SHELL_BACKEND \
@@ -60,7 +61,10 @@ struct _ETaskShellBackendClass {
EShellBackendClass parent_class;
};
-GType e_task_shell_backend_get_type (GTypeModule *type_module);
+GType e_task_shell_backend_get_type
+ (GTypeModule *type_module);
+ESourceList * e_task_shell_backend_get_source_list
+ (ETaskShellBackend *task_shell_backend);
G_END_DECLS
diff --git a/calendar/modules/e-task-shell-migrate.c b/calendar/modules/e-task-shell-migrate.c
index 4658215f06..76e53f765c 100644
--- a/calendar/modules/e-task-shell-migrate.c
+++ b/calendar/modules/e-task-shell-migrate.c
@@ -19,7 +19,7 @@
*
*/
-#include "e-task-shell-backend-migrate.h"
+#include "e-task-shell-migrate.h"
#include <string.h>
#include <sys/types.h>
diff --git a/calendar/modules/e-task-shell-sidebar.c b/calendar/modules/e-task-shell-sidebar.c
index 9631321edb..df6ae4eadf 100644
--- a/calendar/modules/e-task-shell-sidebar.c
+++ b/calendar/modules/e-task-shell-sidebar.c
@@ -32,6 +32,7 @@
#include "calendar/gui/e-task-list-selector.h"
#include "calendar/gui/misc.h"
+#include "e-task-shell-backend.h"
#include "e-task-shell-view.h"
#define E_TASK_SHELL_SIDEBAR_GET_PRIVATE(obj) \
@@ -334,8 +335,8 @@ task_shell_sidebar_constructed (GObject *object)
{
ETaskShellSidebarPrivate *priv;
EShellView *shell_view;
+ EShellBackend *shell_backend;
EShellSidebar *shell_sidebar;
- ETaskShellView *task_shell_view;
ESourceSelector *selector;
ESourceList *source_list;
ESource *source;
@@ -353,8 +354,10 @@ task_shell_sidebar_constructed (GObject *object)
shell_sidebar = E_SHELL_SIDEBAR (object);
shell_view = e_shell_sidebar_get_shell_view (shell_sidebar);
- task_shell_view = E_TASK_SHELL_VIEW (shell_view);
- source_list = e_task_shell_view_get_source_list (task_shell_view);
+ shell_backend = e_shell_view_get_shell_backend (shell_view);
+
+ source_list = e_task_shell_backend_get_source_list (
+ E_TASK_SHELL_BACKEND (shell_backend));
container = GTK_CONTAINER (shell_sidebar);
diff --git a/calendar/modules/e-task-shell-view-actions.c b/calendar/modules/e-task-shell-view-actions.c
index d924043e5f..5de630e7d0 100644
--- a/calendar/modules/e-task-shell-view-actions.c
+++ b/calendar/modules/e-task-shell-view-actions.c
@@ -203,69 +203,72 @@ static void
action_task_list_delete_cb (GtkAction *action,
ETaskShellView *task_shell_view)
{
- ETaskShellContent *task_shell_content;
- ETaskShellSidebar *task_shell_sidebar;
- EShellWindow *shell_window;
- EShellView *shell_view;
- ECalendarTable *task_table;
- ECal *client;
- ECalModel *model;
- ESourceSelector *selector;
- ESourceGroup *source_group;
- ESourceList *source_list;
- ESource *source;
- gint response;
- gchar *uri;
- GError *error = NULL;
-
- shell_view = E_SHELL_VIEW (task_shell_view);
- shell_window = e_shell_view_get_shell_window (shell_view);
-
- task_shell_content = task_shell_view->priv->task_shell_content;
- task_table = e_task_shell_content_get_task_table (task_shell_content);
- model = e_calendar_table_get_model (task_table);
-
- task_shell_sidebar = task_shell_view->priv->task_shell_sidebar;
- selector = e_task_shell_sidebar_get_selector (task_shell_sidebar);
- source = e_source_selector_peek_primary_selection (selector);
- g_return_if_fail (E_IS_SOURCE (source));
-
- /* Ask for confirmation. */
- response = e_error_run (
- GTK_WINDOW (shell_window),
- "calendar:prompt-delete-task-list",
- e_source_peek_name (source));
- if (response != GTK_RESPONSE_YES)
- return;
-
- uri = e_source_get_uri (source);
- client = e_cal_model_get_client_for_uri (model, uri);
- if (client == NULL)
- client = e_cal_new_from_uri (uri, E_CAL_SOURCE_TYPE_JOURNAL);
- g_free (uri);
-
- g_return_if_fail (client != NULL);
-
- if (!e_cal_remove (client, &error)) {
- g_warning ("%s", error->message);
- g_error_free (error);
- return;
- }
-
- if (e_source_selector_source_is_selected (selector, source)) {
- e_task_shell_sidebar_remove_source (
- task_shell_sidebar, source);
- e_source_selector_unselect_source (selector, source);
- }
-
- source_group = e_source_peek_group (source);
- e_source_group_remove_source (source_group, source);
-
- source_list = task_shell_view->priv->source_list;
- if (!e_source_list_sync (source_list, &error)) {
- g_warning ("%s", error->message);
- g_error_free (error);
- }
+ ETaskShellBackend *task_shell_backend;
+ ETaskShellContent *task_shell_content;
+ ETaskShellSidebar *task_shell_sidebar;
+ EShellWindow *shell_window;
+ EShellView *shell_view;
+ ECalendarTable *task_table;
+ ECal *client;
+ ECalModel *model;
+ ESourceSelector *selector;
+ ESourceGroup *source_group;
+ ESourceList *source_list;
+ ESource *source;
+ gint response;
+ gchar *uri;
+ GError *error = NULL;
+
+ shell_view = E_SHELL_VIEW (task_shell_view);
+ shell_window = e_shell_view_get_shell_window (shell_view);
+
+ task_shell_backend = task_shell_view->priv->task_shell_backend;
+ source_list = e_task_shell_backend_get_source_list (task_shell_backend);
+
+ task_shell_content = task_shell_view->priv->task_shell_content;
+ task_table = e_task_shell_content_get_task_table (task_shell_content);
+ model = e_calendar_table_get_model (task_table);
+
+ task_shell_sidebar = task_shell_view->priv->task_shell_sidebar;
+ selector = e_task_shell_sidebar_get_selector (task_shell_sidebar);
+ source = e_source_selector_peek_primary_selection (selector);
+ g_return_if_fail (E_IS_SOURCE (source));
+
+ /* Ask for confirmation. */
+ response = e_error_run (
+ GTK_WINDOW (shell_window),
+ "calendar:prompt-delete-task-list",
+ e_source_peek_name (source));
+ if (response != GTK_RESPONSE_YES)
+ return;
+
+ uri = e_source_get_uri (source);
+ client = e_cal_model_get_client_for_uri (model, uri);
+ if (client == NULL)
+ client = e_cal_new_from_uri (uri, E_CAL_SOURCE_TYPE_JOURNAL);
+ g_free (uri);
+
+ g_return_if_fail (client != NULL);
+
+ if (!e_cal_remove (client, &error)) {
+ g_warning ("%s", error->message);
+ g_error_free (error);
+ return;
+ }
+
+ if (e_source_selector_source_is_selected (selector, source)) {
+ e_task_shell_sidebar_remove_source (
+ task_shell_sidebar, source);
+ e_source_selector_unselect_source (selector, source);
+ }
+
+ source_group = e_source_peek_group (source);
+ e_source_group_remove_source (source_group, source);
+
+ if (!e_source_list_sync (source_list, &error)) {
+ g_warning ("%s", error->message);
+ g_error_free (error);
+ }
}
static void
diff --git a/calendar/modules/e-task-shell-view-private.c b/calendar/modules/e-task-shell-view-private.c
index bdafe6862c..926ace8aa6 100644
--- a/calendar/modules/e-task-shell-view-private.c
+++ b/calendar/modules/e-task-shell-view-private.c
@@ -214,16 +214,6 @@ void
e_task_shell_view_private_init (ETaskShellView *task_shell_view,
EShellViewClass *shell_view_class)
{
- ETaskShellViewPrivate *priv = task_shell_view->priv;
- ESourceList *source_list;
- GObject *object;
-
- object = G_OBJECT (shell_view_class->type_module);
- source_list = g_object_get_data (object, "source-list");
- g_return_if_fail (E_IS_SOURCE_LIST (source_list));
-
- priv->source_list = g_object_ref (source_list);
-
if (!gal_view_collection_loaded (shell_view_class->view_collection))
task_shell_view_load_view_collection (shell_view_class);
@@ -239,6 +229,7 @@ e_task_shell_view_private_constructed (ETaskShellView *task_shell_view)
ETaskShellContent *task_shell_content;
ETaskShellSidebar *task_shell_sidebar;
EShellView *shell_view;
+ EShellBackend *shell_backend;
EShellContent *shell_content;
EShellSidebar *shell_sidebar;
EShellWindow *shell_window;
@@ -249,6 +240,7 @@ e_task_shell_view_private_constructed (ETaskShellView *task_shell_view)
guint id;
shell_view = E_SHELL_VIEW (task_shell_view);
+ shell_backend = e_shell_view_get_shell_backend (shell_view);
shell_content = e_shell_view_get_shell_content (shell_view);
shell_sidebar = e_shell_view_get_shell_sidebar (shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
@@ -257,6 +249,7 @@ e_task_shell_view_private_constructed (ETaskShellView *task_shell_view)
e_shell_window_add_action_group (shell_window, "tasks-filter");
/* Cache these to avoid lots of awkward casting. */
+ priv->task_shell_backend = g_object_ref (shell_backend);
priv->task_shell_content = g_object_ref (shell_content);
priv->task_shell_sidebar = g_object_ref (shell_sidebar);
@@ -382,8 +375,7 @@ e_task_shell_view_private_dispose (ETaskShellView *task_shell_view)
ETaskShellViewPrivate *priv = task_shell_view->priv;
GList *iter;
- DISPOSE (priv->source_list);
-
+ DISPOSE (priv->task_shell_backend);
DISPOSE (priv->task_shell_content);
DISPOSE (priv->task_shell_sidebar);
diff --git a/calendar/modules/e-task-shell-view-private.h b/calendar/modules/e-task-shell-view-private.h
index 415363730a..c613e9e9fe 100644
--- a/calendar/modules/e-task-shell-view-private.h
+++ b/calendar/modules/e-task-shell-view-private.h
@@ -47,6 +47,7 @@
#include "calendar/gui/dialogs/copy-source-dialog.h"
#include "calendar/gui/dialogs/task-editor.h"
+#include "e-task-shell-backend.h"
#include "e-task-shell-content.h"
#include "e-task-shell-sidebar.h"
#include "e-task-shell-view-actions.h"
@@ -93,13 +94,8 @@ enum {
struct _ETaskShellViewPrivate {
- /*** Module Data ***/
-
- ESourceList *source_list;
-
- /*** Other Stuff ***/
-
/* These are just for convenience. */
+ ETaskShellBackend *task_shell_backend;
ETaskShellContent *task_shell_content;
ETaskShellSidebar *task_shell_sidebar;
diff --git a/calendar/modules/e-task-shell-view.c b/calendar/modules/e-task-shell-view.c
index 3bf84100cc..5869be7a96 100644
--- a/calendar/modules/e-task-shell-view.c
+++ b/calendar/modules/e-task-shell-view.c
@@ -21,32 +21,10 @@
#include "e-task-shell-view-private.h"
-enum {
- PROP_0,
- PROP_SOURCE_LIST
-};
-
GType e_task_shell_view_type = 0;
static gpointer parent_class;
static void
-task_shell_view_get_property (GObject *object,
- guint property_id,
- GValue *value,
- GParamSpec *pspec)
-{
- switch (property_id) {
- case PROP_SOURCE_LIST:
- g_value_set_object (
- value, e_task_shell_view_get_source_list (
- E_TASK_SHELL_VIEW (object)));
- return;
- }
-
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
-}
-
-static void
task_shell_view_dispose (GObject *object)
{
e_task_shell_view_private_dispose (E_TASK_SHELL_VIEW (object));
@@ -223,7 +201,6 @@ task_shell_view_class_init (ETaskShellViewClass *class,
g_type_class_add_private (class, sizeof (ETaskShellViewPrivate));
object_class = G_OBJECT_CLASS (class);
- object_class->get_property = task_shell_view_get_property;
object_class->dispose = task_shell_view_dispose;
object_class->finalize = task_shell_view_finalize;
object_class->constructed = task_shell_view_constructed;
@@ -235,20 +212,9 @@ task_shell_view_class_init (ETaskShellViewClass *class,
shell_view_class->ui_manager_id = "org.gnome.evolution.tasks";
shell_view_class->search_options = "/task-search-options";
shell_view_class->search_rules = "tasktypes.xml";
- shell_view_class->type_module = type_module;
shell_view_class->new_shell_content = e_task_shell_content_new;
shell_view_class->new_shell_sidebar = e_task_shell_sidebar_new;
shell_view_class->update_actions = task_shell_view_update_actions;
-
- g_object_class_install_property (
- object_class,
- PROP_SOURCE_LIST,
- g_param_spec_object (
- "source-list",
- _("Source List"),
- _("The registry of task lists"),
- E_TYPE_SOURCE_LIST,
- G_PARAM_READABLE));
}
static void
@@ -286,11 +252,3 @@ e_task_shell_view_get_type (GTypeModule *type_module)
return e_task_shell_view_type;
}
-
-ESourceList *
-e_task_shell_view_get_source_list (ETaskShellView *task_shell_view)
-{
- g_return_val_if_fail (E_IS_TASK_SHELL_VIEW (task_shell_view), NULL);
-
- return task_shell_view->priv->source_list;
-}
diff --git a/calendar/modules/e-task-shell-view.h b/calendar/modules/e-task-shell-view.h
index cc5b2350c1..c94864b4b9 100644
--- a/calendar/modules/e-task-shell-view.h
+++ b/calendar/modules/e-task-shell-view.h
@@ -61,10 +61,7 @@ struct _ETaskShellViewClass {
EShellViewClass parent_class;
};
-GType e_task_shell_view_get_type
- (GTypeModule *type_module);
-ESourceList * e_task_shell_view_get_source_list
- (ETaskShellView *task_shell_view);
+GType e_task_shell_view_get_type (GTypeModule *type_module);
G_END_DECLS
diff --git a/doc/reference/shell/Makefile.am b/doc/reference/shell/Makefile.am
index 1bdf90651b..95e6b09565 100644
--- a/doc/reference/shell/Makefile.am
+++ b/doc/reference/shell/Makefile.am
@@ -72,8 +72,8 @@ GTKDOC_LIBS= \
$(top_builddir)/shell/e-shell-nm.o \
$(top_builddir)/shell/e-shell-window-private.o \
$(top_builddir)/shell/es-event.o \
+ $(top_builddir)/shell/.libs/e-shell-backend.o \
$(top_builddir)/shell/.libs/e-shell-content.o \
- $(top_builddir)/shell/.libs/e-shell-module.o \
$(top_builddir)/shell/.libs/e-shell-settings.o \
$(top_builddir)/shell/.libs/e-shell-sidebar.o \
$(top_builddir)/shell/.libs/e-shell-switcher.o \
@@ -92,6 +92,7 @@ GTKDOC_LIBS= \
$(top_builddir)/e-util/.libs/e-logger.o \
$(top_builddir)/e-util/.libs/e-marshal.o \
$(top_builddir)/e-util/.libs/e-mktemp.o \
+ $(top_builddir)/e-util/.libs/e-module.o \
$(top_builddir)/e-util/.libs/e-plugin.o \
$(top_builddir)/e-util/.libs/e-plugin-ui.o \
$(top_builddir)/e-util/.libs/e-popup.o \
diff --git a/doc/reference/shell/eshell-docs.sgml b/doc/reference/shell/eshell-docs.sgml
index 0e2c83cc77..3d7bdcd36e 100644
--- a/doc/reference/shell/eshell-docs.sgml
+++ b/doc/reference/shell/eshell-docs.sgml
@@ -14,7 +14,7 @@ url="http://mbarnes.fedorapeople.org/docs/eshell/">http://mbarnes.fedorapeople.o
<chapter>
<title>The Shell</title>
<xi:include href="xml/e-shell.xml"/>
- <xi:include href="xml/e-shell-module.xml"/>
+ <xi:include href="xml/e-shell-backend.xml"/>
<xi:include href="xml/e-shell-window.xml"/>
<xi:include href="xml/e-shell-view.xml"/>
<xi:include href="xml/e-shell-content.xml"/>
diff --git a/doc/reference/shell/eshell-sections.txt b/doc/reference/shell/eshell-sections.txt
index 9ab9974fd1..c3e3a3598a 100644
--- a/doc/reference/shell/eshell-sections.txt
+++ b/doc/reference/shell/eshell-sections.txt
@@ -3,10 +3,10 @@
<TITLE>EShell</TITLE>
EShell
e_shell_get_default
-e_shell_get_shell_modules
+e_shell_get_shell_backends
e_shell_get_canonical_name
-e_shell_get_module_by_name
-e_shell_get_module_by_scheme
+e_shell_get_backend_by_name
+e_shell_get_backend_by_scheme
e_shell_get_shell_settings
e_shell_get_gconf_client
e_shell_create_shell_window
@@ -40,6 +40,37 @@ e_shell_migrate_error_quark
</SECTION>
<SECTION>
+<FILE>e-shell-backend</FILE>
+<TITLE>EShellBackend</TITLE>
+EShellBackend
+EShellBackendInfo
+e_shell_backend_new
+e_shell_backend_compare
+e_shell_backend_get_config_dir
+e_shell_backend_get_data_dir
+e_shell_backend_get_filename
+e_shell_backend_get_shell
+e_shell_backend_get_shell_view_type
+e_shell_backend_add_activity
+e_shell_backend_start
+e_shell_backend_is_busy
+e_shell_backend_shutdown
+e_shell_backend_migrate
+e_shell_backend_set_info
+<SUBSECTION Standard>
+E_SHELL_BACKEND
+E_IS_SHELL_BACKEND
+E_TYPE_SHELL_BACKEND
+E_SHELL_BACKEND_CLASS
+E_IS_SHELL_BACKEND_CLASS
+E_SHELL_BACKEND_GET_CLASS
+EShellBackendClass
+e_shell_backend_get_type
+<SUBSECTION Private>
+EShellBackendPrivate
+</SECTION>
+
+<SECTION>
<FILE>e-shell-content</FILE>
<TITLE>EShellContent</TITLE>
EShellContent
@@ -86,37 +117,6 @@ EShellContentPrivate
</SECTION>
<SECTION>
-<FILE>e-shell-module</FILE>
-<TITLE>EShellModule</TITLE>
-EShellModule
-EShellModuleInfo
-e_shell_module_new
-e_shell_module_compare
-e_shell_module_get_config_dir
-e_shell_module_get_data_dir
-e_shell_module_get_filename
-e_shell_module_get_shell
-e_shell_module_get_shell_view_type
-e_shell_module_add_activity
-e_shell_module_start
-e_shell_module_is_busy
-e_shell_module_shutdown
-e_shell_module_migrate
-e_shell_module_set_info
-<SUBSECTION Standard>
-E_SHELL_MODULE
-E_IS_SHELL_MODULE
-E_TYPE_SHELL_MODULE
-E_SHELL_MODULE_CLASS
-E_IS_SHELL_MODULE_CLASS
-E_SHELL_MODULE_GET_CLASS
-EShellModuleClass
-e_shell_module_get_type
-<SUBSECTION Private>
-EShellModulePrivate
-</SECTION>
-
-<SECTION>
<FILE>e-shell-settings</FILE>
<TITLE>EShellSettings</TITLE>
EShellSettings
@@ -234,11 +234,11 @@ e_shell_view_is_active
e_shell_view_get_page_num
e_shell_view_set_page_num
e_shell_view_get_size_group
+e_shell_view_get_shell_backend
e_shell_view_get_shell_content
e_shell_view_get_shell_sidebar
e_shell_view_get_shell_taskbar
e_shell_view_get_shell_window
-e_shell_view_get_shell_module
e_shell_view_update_actions
e_shell_view_show_popup_menu
e_shell_view_new_view_instance
diff --git a/doc/reference/shell/eshell.types b/doc/reference/shell/eshell.types
index b0933d219f..7ad399f7c9 100644
--- a/doc/reference/shell/eshell.types
+++ b/doc/reference/shell/eshell.types
@@ -1,6 +1,6 @@
e_shell_get_type
+e_shell_backend_get_type
e_shell_content_get_type
-e_shell_module_get_type
e_shell_sidebar_get_type
e_shell_switcher_get_type
e_shell_taskbar_get_type
diff --git a/doc/reference/shell/tmpl/e-shell-view.sgml b/doc/reference/shell/tmpl/e-shell-view.sgml
index fb10778576..2119b2793e 100644
--- a/doc/reference/shell/tmpl/e-shell-view.sgml
+++ b/doc/reference/shell/tmpl/e-shell-view.sgml
@@ -47,12 +47,12 @@ EShellView
</para>
-<!-- ##### ARG EShellView:shell-content ##### -->
+<!-- ##### ARG EShellView:shell-backend ##### -->
<para>
</para>
-<!-- ##### ARG EShellView:shell-module ##### -->
+<!-- ##### ARG EShellView:shell-content ##### -->
<para>
</para>
@@ -94,7 +94,6 @@ EShellView
@ui_manager_id:
@search_options:
@search_rules:
-@type_module:
@view_collection:
@new_shell_content:
@new_shell_sidebar:
@@ -192,7 +191,7 @@ EShellView
@Returns:
-<!-- ##### FUNCTION e_shell_view_get_shell_content ##### -->
+<!-- ##### FUNCTION e_shell_view_get_shell_backend ##### -->
<para>
</para>
@@ -201,7 +200,7 @@ EShellView
@Returns:
-<!-- ##### FUNCTION e_shell_view_get_shell_sidebar ##### -->
+<!-- ##### FUNCTION e_shell_view_get_shell_content ##### -->
<para>
</para>
@@ -210,7 +209,7 @@ EShellView
@Returns:
-<!-- ##### FUNCTION e_shell_view_get_shell_taskbar ##### -->
+<!-- ##### FUNCTION e_shell_view_get_shell_sidebar ##### -->
<para>
</para>
@@ -219,7 +218,7 @@ EShellView
@Returns:
-<!-- ##### FUNCTION e_shell_view_get_shell_window ##### -->
+<!-- ##### FUNCTION e_shell_view_get_shell_taskbar ##### -->
<para>
</para>
@@ -228,7 +227,7 @@ EShellView
@Returns:
-<!-- ##### FUNCTION e_shell_view_get_shell_module ##### -->
+<!-- ##### FUNCTION e_shell_view_get_shell_window ##### -->
<para>
</para>
diff --git a/doc/reference/shell/tmpl/e-shell-window.sgml b/doc/reference/shell/tmpl/e-shell-window.sgml
index f1bbeac5e7..9571632bae 100644
--- a/doc/reference/shell/tmpl/e-shell-window.sgml
+++ b/doc/reference/shell/tmpl/e-shell-window.sgml
@@ -172,7 +172,7 @@ EShellWindow
</para>
@shell_window:
-@module_name:
+@backend_name:
@entries:
@n_entries:
@@ -183,7 +183,7 @@ EShellWindow
</para>
@shell_window:
-@module_name:
+@backend_name:
@entries:
@n_entries:
diff --git a/doc/reference/shell/tmpl/e-shell.sgml b/doc/reference/shell/tmpl/e-shell.sgml
index 04935e1de6..f1c5acec53 100644
--- a/doc/reference/shell/tmpl/e-shell.sgml
+++ b/doc/reference/shell/tmpl/e-shell.sgml
@@ -102,7 +102,7 @@ EShell
@Returns:
-<!-- ##### FUNCTION e_shell_get_shell_modules ##### -->
+<!-- ##### FUNCTION e_shell_get_shell_backends ##### -->
<para>
</para>
@@ -121,7 +121,7 @@ EShell
@Returns:
-<!-- ##### FUNCTION e_shell_get_module_by_name ##### -->
+<!-- ##### FUNCTION e_shell_get_backend_by_name ##### -->
<para>
</para>
@@ -131,7 +131,7 @@ EShell
@Returns:
-<!-- ##### FUNCTION e_shell_get_module_by_scheme ##### -->
+<!-- ##### FUNCTION e_shell_get_backend_by_scheme ##### -->
<para>
</para>
diff --git a/doc/reference/shell/tmpl/eshell-unused.sgml b/doc/reference/shell/tmpl/eshell-unused.sgml
index 57aef32237..72168ee8e2 100644
--- a/doc/reference/shell/tmpl/eshell-unused.sgml
+++ b/doc/reference/shell/tmpl/eshell-unused.sgml
@@ -166,6 +166,30 @@ e-shell-marshal
Migration
+<!-- ##### SECTION ./tmpl/e-shell-module.sgml:Long_Description ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION ./tmpl/e-shell-module.sgml:See_Also ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION ./tmpl/e-shell-module.sgml:Short_Description ##### -->
+
+
+
+<!-- ##### SECTION ./tmpl/e-shell-module.sgml:Stability_Level ##### -->
+
+
+
+<!-- ##### SECTION ./tmpl/e-shell-module.sgml:Title ##### -->
+EShellModule
+
+
<!-- ##### SECTION ./tmpl/e-shell-window-actions.sgml:Long_Description ##### -->
<para>
@@ -461,6 +485,52 @@ intelligent
@E_SHELL_LINE_STATUS_OFFLINE:
@E_SHELL_LINE_STATUS_FORCED_OFFLINE:
+<!-- ##### STRUCT EShellModule ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SIGNAL EShellModule::activity-added ##### -->
+<para>
+
+</para>
+
+@eshellmodule: the object which received the signal.
+@arg1:
+
+<!-- ##### ARG EShellModule:filename ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG EShellModule:shell ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT EShellModuleInfo ##### -->
+<para>
+
+</para>
+
+@name:
+@aliases:
+@schemes:
+@sort_order:
+@start:
+@is_busy:
+@shutdown:
+@migrate:
+
+<!-- ##### ARG EShellView:shell-module ##### -->
+<para>
+
+</para>
+
+
<!-- ##### STRUCT EShellWindowPrivate ##### -->
<para>
@@ -1805,6 +1875,24 @@ intelligent
@shell:
@Returns:
+<!-- ##### FUNCTION e_shell_get_module_by_name ##### -->
+<para>
+
+</para>
+
+@shell:
+@name:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_get_module_by_scheme ##### -->
+<para>
+
+</para>
+
+@shell:
+@scheme:
+@Returns:
+
<!-- ##### FUNCTION e_shell_get_online_mode ##### -->
<para>
@@ -1821,6 +1909,14 @@ intelligent
@shell:
@Returns:
+<!-- ##### FUNCTION e_shell_get_shell_modules ##### -->
+<para>
+
+</para>
+
+@shell:
+@Returns:
+
<!-- ##### FUNCTION e_shell_get_shell_windows ##### -->
<para>
@@ -1887,6 +1983,116 @@ intelligent
@Returns:
+<!-- ##### FUNCTION e_shell_module_add_activity ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@activity:
+
+<!-- ##### FUNCTION e_shell_module_compare ##### -->
+<para>
+
+</para>
+
+@shell_module_a:
+@shell_module_b:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_get_config_dir ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_get_data_dir ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_get_filename ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_get_shell ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_get_shell_view_type ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_is_busy ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_migrate ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@major:
+@minor:
+@micro:
+@error:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_new ##### -->
+<para>
+
+</para>
+
+@shell:
+@filename:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_set_info ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@info:
+@shell_view_type:
+
+<!-- ##### FUNCTION e_shell_module_shutdown ##### -->
+<para>
+
+</para>
+
+@shell_module:
+@Returns:
+
+<!-- ##### FUNCTION e_shell_module_start ##### -->
+<para>
+
+</para>
+
+@shell_module:
+
<!-- ##### FUNCTION e_shell_module_upgrade ##### -->
<para>
@@ -1931,6 +2137,14 @@ intelligent
@shell:
@Returns:
+<!-- ##### FUNCTION e_shell_view_get_shell_module ##### -->
+<para>
+
+</para>
+
+@shell_view:
+@Returns:
+
<!-- ##### VARIABLE e_test_shell_view_type ##### -->
<para>