aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-tasks.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/gui/e-tasks.c')
-rw-r--r--calendar/gui/e-tasks.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/calendar/gui/e-tasks.c b/calendar/gui/e-tasks.c
index 162634c035..0072e26873 100644
--- a/calendar/gui/e-tasks.c
+++ b/calendar/gui/e-tasks.c
@@ -36,6 +36,7 @@
#include "e-util/e-categories-config.h"
#include "e-util/e-time-utils.h"
#include "e-util/e-url.h"
+#include "shell/e-user-creatable-items-handler.h"
#include <libecal/e-cal-time-util.h>
#include "widgets/menus/gal-view-menus.h"
#include "dialogs/delete-error.h"
@@ -75,6 +76,8 @@ struct _ETasksPrivate {
GalViewMenus *view_menus;
GList *notifications;
+
+ EUserCreatableItemsHandler *creatable_items_handler;
};
@@ -692,6 +695,14 @@ e_tasks_set_ui_component (ETasks *tasks,
g_return_if_fail (ui_component == NULL || BONOBO_IS_UI_COMPONENT (ui_component));
e_search_bar_set_ui_component (E_SEARCH_BAR (tasks->priv->search_bar), ui_component);
+
+ if (ui_component) {
+ if (!tasks->priv->creatable_items_handler) {
+ tasks->priv->creatable_items_handler =
+ e_user_creatable_items_handler_new ("tasks");
+ }
+ e_user_creatable_items_handler_activate (tasks->priv->creatable_items_handler, ui_component);
+ }
}
@@ -733,6 +744,11 @@ e_tasks_destroy (GtkObject *object)
calendar_config_remove_notification (GPOINTER_TO_UINT (l->data));
priv->notifications = NULL;
+ if (priv->creatable_items_handler) {
+ g_object_unref (priv->creatable_items_handler);
+ priv->creatable_items_handler = NULL;
+ }
+
g_free (priv);
tasks->priv = NULL;
}