diff options
Diffstat (limited to 'calendar')
-rw-r--r-- | calendar/ChangeLog | 12 | ||||
-rw-r--r-- | calendar/gui/dialogs/alarm-list-dialog.c | 13 | ||||
-rw-r--r-- | calendar/gui/dialogs/event-page.c | 2 |
3 files changed, 23 insertions, 4 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 4599b34cd3..32b78b0729 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,14 @@ +2004-12-06 Rodrigo Moya <rodrigo@novell.com> + + Fixes #67403 + + * gui/dialogs/event-page.c (sensitize_widgets): don't unsensitize + the 'Customize' button, to allow users to look at the alarm list + for read only events. + + * gui/dialogs/alarm-list-dialog.c (sensitize_buttons): unsensitize + buttons if the event is read only. + 2004-12-02 Chenthill Palanisamy <pchenthill@novell.com> * gui/dialogs/task-editor.[ch] (task_editor_new), (task_editor_construct), @@ -35,6 +46,7 @@ week_view->last_edited_comp_string for the same reason above. 2004-11-29 Chenthill Palanisamy <pchenthill@novell.com> + * calendar-errors.xml.h: committng this file. Missed to commit this one. diff --git a/calendar/gui/dialogs/alarm-list-dialog.c b/calendar/gui/dialogs/alarm-list-dialog.c index add08c1dfa..31d98e6087 100644 --- a/calendar/gui/dialogs/alarm-list-dialog.c +++ b/calendar/gui/dialogs/alarm-list-dialog.c @@ -93,16 +93,23 @@ sensitize_buttons (Dialog *dialog) { GtkTreeSelection *selection; GtkTreeIter iter; - gboolean have_selected; + gboolean have_selected, read_only = FALSE; + GError *error = NULL; + + if (!e_cal_is_read_only (dialog->ecal, &read_only, &error)) { + if (error->code != E_CALENDAR_STATUS_BUSY) + read_only = TRUE; + g_error_free (error); + } selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->list)); have_selected = gtk_tree_selection_get_selected (selection, NULL, &iter); - if (e_cal_get_one_alarm_only (dialog->ecal) && have_selected) + if ((e_cal_get_one_alarm_only (dialog->ecal) && have_selected) || read_only) gtk_widget_set_sensitive (dialog->add, FALSE); else gtk_widget_set_sensitive (dialog->add, TRUE); - gtk_widget_set_sensitive (dialog->delete, have_selected); + gtk_widget_set_sensitive (dialog->delete, have_selected && !read_only); } /* Callback used for the "add reminder" button */ diff --git a/calendar/gui/dialogs/event-page.c b/calendar/gui/dialogs/event-page.c index d0a4283366..d28b3cb986 100644 --- a/calendar/gui/dialogs/event-page.c +++ b/calendar/gui/dialogs/event-page.c @@ -611,7 +611,7 @@ sensitize_widgets (EventPage *epage) gtk_widget_set_sensitive (priv->show_time_as_busy, !read_only); gtk_widget_set_sensitive (priv->alarm, !read_only); gtk_widget_set_sensitive (priv->alarm_time, !read_only && !custom && alarm); - gtk_widget_set_sensitive (priv->alarm_custom, !read_only && alarm); + gtk_widget_set_sensitive (priv->alarm_custom, alarm); if (custom) gtk_widget_show (priv->alarm_warning); else |