aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-tasks.c
diff options
context:
space:
mode:
authorDamon Chaplin <damon@ximian.com>2001-03-05 08:11:35 +0800
committerDamon Chaplin <damon@src.gnome.org>2001-03-05 08:11:35 +0800
commitd842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d (patch)
tree9bd19bd8db1552c3f7d66a75f5c98ef2a102d891 /calendar/gui/e-tasks.c
parent7b7acde405898803001e1614e6ffd15df7682391 (diff)
downloadgsoc2013-evolution-d842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d.tar
gsoc2013-evolution-d842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d.tar.gz
gsoc2013-evolution-d842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d.tar.bz2
gsoc2013-evolution-d842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d.tar.lz
gsoc2013-evolution-d842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d.tar.xz
gsoc2013-evolution-d842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d.tar.zst
gsoc2013-evolution-d842e1a20e3ab2fd38582d2ccc863e4bbcb87d0d.zip
keep list of all Tasks folders so we can update the preference settings
2001-03-05 Damon Chaplin <damon@ximian.com> * gui/e-tasks.c: keep list of all Tasks folders so we can update the preference settings when necessary. * gui/gnome-cal.c: configure the TaskPad according to the settings. * gui/e-calendar-table.c: use ECellCombo and ECellDateEdit for fields, so the tasks folders is almost usable now. * gui/calendar-model.c: added support for the Status property. * gui/calendar-config.[hc]: added convenience functions to setup ECalendarTable and ECellDateEdit objects. * gui/calendar-commands.c: connected to "destroy" signal of calendars so we can remove them from all_calendars list. * gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_update_config): call e_tasks_update_all_config_settings() to update all the settings in the Tasks folders as well. * cal-util/cal-component.h: added CAL_COMPONENT_FIELD_STATUS. * cal-util/cal-component.c (cal_component_get_transparency): fixed calls to strcasecmp so they check for '== 0'. Applied patch from Miguel... 2001-02-27 Miguel de Icaza <miguel@ximian.com> * gui/e-day-view.c (e_day_view_on_event_right_click): Reorganize the menus to have entries always in a consistent fashion, as reported to the genepool mailing list. (e_day_view_on_event_right_click): Added a FIXME comment to the FIXME comment without a FIXME. Now we use e_popup_menu. This allows us to hide/show items on demand, and to sensitize/de-sensitize items depending on their state. This will also let us add icon support (when we get nice icons for this) * gui/e-week-view.c (e_week_view_show_popup_menu): Ditto. The files popup-menu.c and popup-menu.h can now be removed. svn path=/trunk/; revision=8549
Diffstat (limited to 'calendar/gui/e-tasks.c')
-rw-r--r--calendar/gui/e-tasks.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/calendar/gui/e-tasks.c b/calendar/gui/e-tasks.c
index 92917d6d55..237f90959e 100644
--- a/calendar/gui/e-tasks.c
+++ b/calendar/gui/e-tasks.c
@@ -37,6 +37,10 @@
#include "e-tasks.h"
+/* A list of all of the ETasks widgets in use. We use this to update the
+ user preference settings. This will change when we switch to GConf. */
+static GList *all_tasks = NULL;
+
/* Private part of the GnomeCalendar structure */
struct _ETasksPrivate {
@@ -160,6 +164,7 @@ setup_widgets (ETasks *tasks)
gtk_table_attach (GTK_TABLE (tasks), priv->tasks_view, 0, 1, 1, 2,
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
gtk_widget_show (priv->tasks_view);
+ calendar_config_configure_e_calendar_table (E_CALENDAR_TABLE (priv->tasks_view));
gtk_signal_connect (GTK_OBJECT (E_CALENDAR_TABLE (priv->tasks_view)->model),
"categories-changed",
@@ -212,6 +217,8 @@ e_tasks_new (void)
return NULL;
}
+ all_tasks = g_list_prepend (all_tasks, tasks);
+
return GTK_WIDGET (tasks);
}
@@ -246,6 +253,8 @@ e_tasks_destroy (GtkObject *object)
g_free (priv);
tasks->priv = NULL;
+ all_tasks = g_list_remove (all_tasks, tasks);
+
if (GTK_OBJECT_CLASS (parent_class)->destroy)
(* GTK_OBJECT_CLASS (parent_class)->destroy) (object);
}
@@ -565,3 +574,20 @@ e_tasks_setup_menus (ETasks *tasks,
gtk_object_sink (GTK_OBJECT (collection));
}
+
+
+/* This updates all the preference settings for all the ETasks widgets in use.
+ */
+void
+e_tasks_update_all_config_settings ()
+{
+ ETasks *tasks;
+ ETasksPrivate *priv;
+ GList *elem;
+
+ for (elem = all_tasks; elem; elem = elem->next) {
+ tasks = E_TASKS (elem->data);
+ priv = tasks->priv;
+ calendar_config_configure_e_calendar (E_CALENDAR_TABLE (priv->tasks_view));
+ }
+}