diff options
-rw-r--r-- | calendar/ChangeLog | 9 | ||||
-rw-r--r-- | calendar/calendar.error.xml | 6 | ||||
-rw-r--r-- | calendar/gui/e-calendar-view.c | 12 |
3 files changed, 27 insertions, 0 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 4df89fb7e2..b18d89024a 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,5 +1,14 @@ 2006-01-13 Chenthill Palanisamy <pchenthill@novell.com> + Fixes #271541 + * calendar.error.xml: Added a new message for displaying + error message while trying to create a new event in read only + calendars + * gui/e-calendar-view.c: (e_calendar_view_new_appointment_for): + Run the error dialog using the message. + +2006-01-13 Chenthill Palanisamy <pchenthill@novell.com> + Fixes #326735 * gui/dialogs/event-page.c: (event_page_fill_widgets): If the user is not the organizer, set the orignal organizer in diff --git a/calendar/calendar.error.xml b/calendar/calendar.error.xml index d262bb8495..c988dc371b 100644 --- a/calendar/calendar.error.xml +++ b/calendar/calendar.error.xml @@ -222,6 +222,12 @@ <button stock ="gtk-ok" response="GTK_RESPONSE_YES"/> </error> + <error id="prompt-read-only-cal" type="error" default="GTK_RESPONSE_YES"> + <_primary>Cannot create a new event</_primary> + <_secondary>The calendar you have selected is read-only</_secondary> + <button stock ="gtk-ok" response="GTK_RESPONSE_YES"/> + </error> + <error id="prompt-no-contents-offline-tasks" type="error" default="GTK_RESPONSE_YES"> <_primary>Error loading task list</_primary> <_secondary>The task list is not marked for offline usage.</_secondary> diff --git a/calendar/gui/e-calendar-view.c b/calendar/gui/e-calendar-view.c index 0f854b619b..9ebfa248d5 100644 --- a/calendar/gui/e-calendar-view.c +++ b/calendar/gui/e-calendar-view.c @@ -1680,6 +1680,7 @@ e_calendar_view_new_appointment_for (ECalendarView *cal_view, ECalComponentTransparency transparency; ECal *default_client = NULL; guint32 flags = 0; + gboolean readonly = FALSE; g_return_if_fail (E_IS_CALENDAR_VIEW (cal_view)); @@ -1692,6 +1693,17 @@ e_calendar_view_new_appointment_for (ECalendarView *cal_view, return; } + if (e_cal_is_read_only (default_client, &readonly, NULL) && readonly) { + GtkWidget *widget; + + widget = e_error_new (NULL, "calendar:prompt-read-only-cal", NULL); + + g_signal_connect ((GtkDialog *)widget, "response", G_CALLBACK (gtk_widget_destroy), + widget); + gtk_widget_show (widget); + return; + } + dt.value = &itt; if (all_day) dt.tzid = NULL; |