aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-cal-popup.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/gui/e-cal-popup.c')
-rw-r--r--calendar/gui/e-cal-popup.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/calendar/gui/e-cal-popup.c b/calendar/gui/e-cal-popup.c
index a0c3ce2c3b..2afb14e9c8 100644
--- a/calendar/gui/e-cal-popup.c
+++ b/calendar/gui/e-cal-popup.c
@@ -668,6 +668,7 @@ e_cal_popup_target_new_source(ECalPopup *eabp, ESourceSelector *selector)
const char *source_uri;
ESource *source;
const char *offline = NULL;
+ const char *delete = NULL;
/* TODO: this is duplicated for addressbook too */
@@ -698,6 +699,19 @@ e_cal_popup_target_new_source(ECalPopup *eabp, ESourceSelector *selector)
else {
mask &= ~E_CAL_POPUP_SOURCE_OFFLINE;
}
+
+ source = e_source_selector_peek_primary_selection (selector);
+ /*check for delete_status property here*/
+ delete = e_source_get_property (source, "delete");
+
+ if (delete && strcmp (delete,"no") == 0) {
+ /*set the menu item to non deletable */
+ mask &= ~E_CAL_POPUP_SOURCE_NO_DELETE;
+ }
+ else {
+ mask &= ~E_CAL_POPUP_SOURCE_DELETE;
+ }
+
t->target.mask = mask;