aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/gnome-cal.c
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2008-04-30 19:01:58 +0800
committerMilan Crha <mcrha@src.gnome.org>2008-04-30 19:01:58 +0800
commitbe98f84cbdf8536fe980e3b4216085003fcbce1e (patch)
tree2a203dec03b08d1fb299dca8a58ef96535471c5d /calendar/gui/gnome-cal.c
parent929ac5c61d7b300155ad9e73cfd3159934764314 (diff)
downloadgsoc2013-evolution-be98f84cbdf8536fe980e3b4216085003fcbce1e.tar
gsoc2013-evolution-be98f84cbdf8536fe980e3b4216085003fcbce1e.tar.gz
gsoc2013-evolution-be98f84cbdf8536fe980e3b4216085003fcbce1e.tar.bz2
gsoc2013-evolution-be98f84cbdf8536fe980e3b4216085003fcbce1e.tar.lz
gsoc2013-evolution-be98f84cbdf8536fe980e3b4216085003fcbce1e.tar.xz
gsoc2013-evolution-be98f84cbdf8536fe980e3b4216085003fcbce1e.tar.zst
gsoc2013-evolution-be98f84cbdf8536fe980e3b4216085003fcbce1e.zip
** Fix for bug #316390
2008-04-30 Milan Crha <mcrha@redhat.com> ** Fix for bug #316390 * addressbook/gui/widgets/e-addressbook-view.c: (categories_changed_cb), (get_master_list), (eab_view_dispose), (eab_view_new), (search_activated), (make_suboptions): Listen for changes in categories setup and propagate them to UI. * calendar/gui/e-memos.c: (struct _EMemosPrivate), (categories_changed_cb), (setup_widgets), (e_memos_init), (e_memos_destroy): * calendar/gui/gnome-cal.c: (struct _GnomeCalendarPrivate), (setup_widgets), (categories_changed_cb), (gnome_calendar_init), (gnome_calendar_destroy): * calendar/gui/e-tasks.c: (struct _ETasksPrivate), (categories_changed_cb), (setup_widgets), (e_tasks_init), (e_tasks_destroy): Listen for changes in categories setup and propagate them to UI. Note: be sure you've eds revision 8718 or better svn path=/trunk/; revision=35458
Diffstat (limited to 'calendar/gui/gnome-cal.c')
-rw-r--r--calendar/gui/gnome-cal.c19
1 files changed, 4 insertions, 15 deletions
diff --git a/calendar/gui/gnome-cal.c b/calendar/gui/gnome-cal.c
index 5108164c98..dfa066d0ba 100644
--- a/calendar/gui/gnome-cal.c
+++ b/calendar/gui/gnome-cal.c
@@ -45,7 +45,6 @@
#include <libedataserver/e-url.h>
#include <libedataserverui/e-passwords.h>
-#include "e-util/e-config-listener.h"
#include "shell/e-user-creatable-items-handler.h"
#include <libecal/e-cal-time-util.h>
#include <widgets/menus/gal-view-factory-etable.h>
@@ -103,8 +102,6 @@ struct _GnomeCalendarPrivate {
GList *clients_list[E_CAL_SOURCE_TYPE_LAST];
ECal *default_client[E_CAL_SOURCE_TYPE_LAST];
- EConfigListener *config_listener;
-
/*
* Fields for the calendar view
*/
@@ -1440,7 +1437,7 @@ month_view_adjustment_changed_cb (GtkAdjustment *adjustment, GnomeCalendar *gcal
}
static void
-config_categories_changed_cb (EConfigListener *config_listener, const char *key, gpointer user_data)
+categories_changed_cb (gpointer object, gpointer user_data)
{
GList *cat_list;
GPtrArray *cat_array;
@@ -1515,7 +1512,7 @@ setup_widgets (GnomeCalendar *gcal)
G_CALLBACK (search_bar_sexp_changed_cb), gcal);
g_signal_connect (priv->search_bar, "category_changed",
G_CALLBACK (search_bar_category_changed_cb), gcal);
- config_categories_changed_cb (priv->config_listener, "/apps/evolution/general/category_master_list", gcal);
+ categories_changed_cb (NULL, gcal);
gtk_widget_show (priv->search_bar);
gtk_box_pack_start (GTK_BOX (gcal), priv->search_bar, FALSE, FALSE, 6);
@@ -1751,8 +1748,7 @@ gnome_calendar_init (GnomeCalendar *gcal)
for (i = 0; i < E_CAL_SOURCE_TYPE_LAST; i++)
priv->clients[i] = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
- priv->config_listener = e_config_listener_new ();
- g_signal_connect (priv->config_listener, "key_changed", G_CALLBACK (config_categories_changed_cb), gcal);
+ e_categories_register_change_listener (G_CALLBACK (categories_changed_cb), gcal);
priv->current_view_type = GNOME_CAL_DAY_VIEW;
priv->range_selected = FALSE;
@@ -1796,14 +1792,7 @@ gnome_calendar_destroy (GtkObject *object)
GList *l;
int i;
- /* unset the config listener */
- if (priv->config_listener) {
- g_signal_handlers_disconnect_matched (priv->config_listener,
- G_SIGNAL_MATCH_DATA,
- 0, 0, NULL, NULL, gcal);
- g_object_unref (priv->config_listener);
- priv->config_listener = NULL;
- }
+ e_categories_unregister_change_listener (G_CALLBACK (categories_changed_cb), gcal);
/* Clean up the clients */
for (i = 0; i < E_CAL_SOURCE_TYPE_LAST; i++) {