aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/dialogs/cal-prefs-dialog.c
diff options
context:
space:
mode:
authorChenthill Palanisamy <pchen@src.gnome.org>2006-11-07 20:24:27 +0800
committerChenthill Palanisamy <pchen@src.gnome.org>2006-11-07 20:24:27 +0800
commit2f3f9457ae0630e788fdd99214709dda64ee3d1a (patch)
treee70816276fea011db35d9c3dcfe1579f0a30240d /calendar/gui/dialogs/cal-prefs-dialog.c
parent3053e7ad00c3ddf9cae531ef89143de36d14c226 (diff)
downloadgsoc2013-evolution-2f3f9457ae0630e788fdd99214709dda64ee3d1a.tar
gsoc2013-evolution-2f3f9457ae0630e788fdd99214709dda64ee3d1a.tar.gz
gsoc2013-evolution-2f3f9457ae0630e788fdd99214709dda64ee3d1a.tar.bz2
gsoc2013-evolution-2f3f9457ae0630e788fdd99214709dda64ee3d1a.tar.lz
gsoc2013-evolution-2f3f9457ae0630e788fdd99214709dda64ee3d1a.tar.xz
gsoc2013-evolution-2f3f9457ae0630e788fdd99214709dda64ee3d1a.tar.zst
gsoc2013-evolution-2f3f9457ae0630e788fdd99214709dda64ee3d1a.zip
Fixes #208318.
svn path=/trunk/; revision=32956
Diffstat (limited to 'calendar/gui/dialogs/cal-prefs-dialog.c')
-rw-r--r--calendar/gui/dialogs/cal-prefs-dialog.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/calendar/gui/dialogs/cal-prefs-dialog.c b/calendar/gui/dialogs/cal-prefs-dialog.c
index bd22a5f21e..9763ce3e57 100644
--- a/calendar/gui/dialogs/cal-prefs-dialog.c
+++ b/calendar/gui/dialogs/cal-prefs-dialog.c
@@ -325,6 +325,8 @@ alarms_selection_changed (ESourceSelector *selector, CalendarPrefsDialog *prefs)
GSList *selection;
GSList *l;
GSList *groups;
+ ESource *source;
+ gchar *alarm;
/* first we clear all the alarm flags from all sources */
g_message ("Clearing selection");
@@ -332,8 +334,12 @@ alarms_selection_changed (ESourceSelector *selector, CalendarPrefsDialog *prefs)
ESourceGroup *group = E_SOURCE_GROUP (groups->data);
GSList *sources;
for (sources = e_source_group_peek_sources (group); sources; sources = sources->next) {
- ESource *source = E_SOURCE (sources->data);
+ source = E_SOURCE (sources->data);
+ alarm = e_source_get_property (source, "alarm");
+ if (alarm && !g_ascii_strcasecmp (alarm, "never"))
+ continue;
+
g_message ("Unsetting for %s", e_source_peek_name (source));
e_source_set_property (source, "alarm", "false");
}
@@ -343,6 +349,12 @@ alarms_selection_changed (ESourceSelector *selector, CalendarPrefsDialog *prefs)
property on those sources */
selection = e_source_selector_get_selection (selector);
for (l = selection; l; l = l->next) {
+ source = E_SOURCE (l->data);
+
+ alarm = e_source_get_property (source, "alarm");
+ if (alarm && !g_ascii_strcasecmp (alarm, "never"))
+ continue;
+
g_message ("Setting for %s", e_source_peek_name (E_SOURCE (l->data)));
e_source_set_property (E_SOURCE (l->data), "alarm", "true");
}