[evolution] Cleanup up templates using EPluginUI callback feature.
- From: Matthew Barnes <mbarnes src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [evolution] Cleanup up templates using EPluginUI callback feature.
- Date: Tue, 1 Sep 2009 19:51:50 +0000 (UTC)
commit fddcc93ac6158fc2ac3ede1c0020ff97e7bd561d
Author: Matthew Barnes <mbarnes redhat com>
Date: Tue Sep 1 15:51:00 2009 -0400
Cleanup up templates using EPluginUI callback feature.
plugins/templates/org-gnome-templates.eplug.xml | 6 ++-
plugins/templates/templates.c | 37 ++++++----------------
2 files changed, 14 insertions(+), 29 deletions(-)
---
diff --git a/plugins/templates/org-gnome-templates.eplug.xml b/plugins/templates/org-gnome-templates.eplug.xml
index b4b8a81..7c19a6e 100644
--- a/plugins/templates/org-gnome-templates.eplug.xml
+++ b/plugins/templates/org-gnome-templates.eplug.xml
@@ -10,8 +10,10 @@
<author name="Diego Escalante Urrelo" email="diegoe gnome org"/>
<hook class="org.gnome.evolution.ui:1.0">
- <ui-manager id="org.gnome.evolution.shell"/>
- <ui-manager id="org.gnome.evolution.composer">
+ <ui-manager id="org.gnome.evolution.shell"
+ callback="init_shell_actions"/>
+ <ui-manager id="org.gnome.evolution.composer"
+ callback="init_composer_actions">
<menubar name='main-menu'>
<placeholder name='pre-edit-menu'>
<menu action='file-menu'>
diff --git a/plugins/templates/templates.c b/plugins/templates/templates.c
index fa693dc..f683269 100644
--- a/plugins/templates/templates.c
+++ b/plugins/templates/templates.c
@@ -68,10 +68,14 @@ enum {
CLUE_N_COLUMNS
};
-GtkWidget *e_plugin_lib_get_configure_widget (EPlugin *epl);
-
-gboolean e_plugin_ui_init (GtkUIManager *ui_manager, GObject *object);
-gint e_plugin_lib_enable (EPlugin *plugin, gboolean enabled);
+GtkWidget * e_plugin_lib_get_configure_widget
+ (EPlugin *plugin);
+gboolean init_composer_actions (GtkUIManager *ui_manager,
+ EMsgComposer *composer);
+gboolean init_shell_actions (GtkUIManager *ui_manager,
+ EShellWindow *shell_window);
+gint e_plugin_lib_enable (EPlugin *plugin,
+ gboolean enabled);
/* Thanks to attachment reminder plugin for this*/
static void commit_changes (UIData *ui);
@@ -764,7 +768,7 @@ exit:
em_utils_uids_free (uids);
}
-static gboolean
+gboolean
init_composer_actions (GtkUIManager *ui_manager,
EMsgComposer *composer)
{
@@ -780,7 +784,7 @@ init_composer_actions (GtkUIManager *ui_manager,
return TRUE;
}
-static gboolean
+gboolean
init_shell_actions (GtkUIManager *ui_manager,
EShellWindow *shell_window)
{
@@ -807,27 +811,6 @@ init_shell_actions (GtkUIManager *ui_manager,
return TRUE;
}
-gboolean
-e_plugin_ui_init (GtkUIManager *ui_manager,
- GObject *object)
-{
- /* XXX This is a scenario I hadn't considered when designing
- * EPluginUI: two different UI manager IDs with different
- * closures sharing the same plugin entry point. We know
- * the closures are both GObjects so we query the type.
- * Awkward, but it should work for now. */
-
- if (E_IS_MSG_COMPOSER (object))
- return init_composer_actions (
- ui_manager, E_MSG_COMPOSER (object));
-
- if (E_IS_SHELL_WINDOW (object))
- return init_shell_actions (
- ui_manager, E_SHELL_WINDOW (object));
-
- return FALSE;
-}
-
gint
e_plugin_lib_enable (EPlugin *plugin,
gboolean enabled)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]