diff options
Diffstat (limited to 'calendar/gui/dialogs')
-rw-r--r-- | calendar/gui/dialogs/comp-editor.c | 18 | ||||
-rw-r--r-- | calendar/gui/dialogs/comp-editor.h | 1 | ||||
-rw-r--r-- | calendar/gui/dialogs/event-editor.c | 5 | ||||
-rw-r--r-- | calendar/gui/dialogs/task-editor.c | 6 |
4 files changed, 29 insertions, 1 deletions
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c index 8286b444e8..26cc13e179 100644 --- a/calendar/gui/dialogs/comp-editor.c +++ b/calendar/gui/dialogs/comp-editor.c @@ -990,6 +990,20 @@ setup_widgets (CompEditor *editor) } +void +comp_editor_sensitize_attachment_bar (CompEditor *editor, gboolean set) +{ + CompEditorPrivate *priv; + + g_return_if_fail (IS_COMP_EDITOR (editor)); + + priv = editor->priv; + + gtk_widget_set_sensitive (GTK_WIDGET (priv->attachment_bar), set); + gtk_widget_set_sensitive (GTK_WIDGET (priv->attachment_scrolled_window), set); + gtk_widget_set_sensitive (GTK_WIDGET (priv->attachment_expander), set); +} + /* Object initialization function for the calendar component editor */ static void comp_editor_init (CompEditor *editor) @@ -1769,6 +1783,7 @@ real_send_comp (CompEditor *editor, ECalComponentItipMethod method) if (!e_cal_component_has_attachments (priv->comp)) { if (itip_send_comp (method, priv->comp, priv->client, NULL, NULL)) { +#if 0 tmp_comp = priv->comp; g_object_ref (tmp_comp); comp_editor_edit_comp (editor, tmp_comp); @@ -1776,6 +1791,7 @@ real_send_comp (CompEditor *editor, ECalComponentItipMethod method) comp_editor_set_changed (editor, TRUE); save_comp (editor); +#endif return TRUE; } @@ -2014,7 +2030,7 @@ comp_editor_notify_client_changed (CompEditor *editor, ECal *client) if (!e_cal_is_read_only (client, &read_only, NULL)) read_only = TRUE; - + comp_editor_sensitize_attachment_bar (editor, !read_only); gtk_dialog_set_response_sensitive (GTK_DIALOG (editor), GTK_RESPONSE_OK, !read_only); } diff --git a/calendar/gui/dialogs/comp-editor.h b/calendar/gui/dialogs/comp-editor.h index 7203b3e722..84381a476f 100644 --- a/calendar/gui/dialogs/comp-editor.h +++ b/calendar/gui/dialogs/comp-editor.h @@ -99,6 +99,7 @@ void comp_editor_focus (CompEditor *editor); void comp_editor_notify_client_changed (CompEditor *editor, ECal *client); +void comp_editor_sensitize_attachment_bar (CompEditor *editor, gboolean set); G_END_DECLS diff --git a/calendar/gui/dialogs/event-editor.c b/calendar/gui/dialogs/event-editor.c index 5f46bb1222..20ded07a6c 100644 --- a/calendar/gui/dialogs/event-editor.c +++ b/calendar/gui/dialogs/event-editor.c @@ -129,6 +129,7 @@ EventEditor * event_editor_construct (EventEditor *ee, ECal *client) { EventEditorPrivate *priv; + gboolean read_only = FALSE; priv = ee->priv; @@ -147,6 +148,10 @@ event_editor_construct (EventEditor *ee, ECal *client) comp_editor_append_page (COMP_EDITOR (ee), COMP_EDITOR_PAGE (priv->recur_page), _("Recurrence")); + + if (!e_cal_is_read_only (client, &read_only, NULL)) + read_only = TRUE; + comp_editor_sensitize_attachment_bar (COMP_EDITOR (ee), !read_only); if (priv->is_meeting) { if (e_cal_get_static_capability (client, CAL_STATIC_CAPABILITY_REQ_SEND_OPTIONS)) diff --git a/calendar/gui/dialogs/task-editor.c b/calendar/gui/dialogs/task-editor.c index b28814f18e..199e8fe78a 100644 --- a/calendar/gui/dialogs/task-editor.c +++ b/calendar/gui/dialogs/task-editor.c @@ -125,6 +125,7 @@ TaskEditor * task_editor_construct (TaskEditor *te, ECal *client, gboolean is_assigned) { TaskEditorPrivate *priv; + gboolean read_only = FALSE; priv = te->priv; @@ -144,6 +145,11 @@ task_editor_construct (TaskEditor *te, ECal *client, gboolean is_assigned) comp_editor_append_page (COMP_EDITOR (te), COMP_EDITOR_PAGE (priv->task_details_page), _("Status")); + + if (!e_cal_is_read_only (client, &read_only, NULL)) + read_only = TRUE; + comp_editor_sensitize_attachment_bar (COMP_EDITOR (te), !read_only); + if (priv->is_assigned) { if (e_cal_get_static_capability (client, CAL_STATIC_CAPABILITY_REQ_SEND_OPTIONS)) task_page_show_options (priv->task_page); |