aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/tasks-control.c
diff options
context:
space:
mode:
authorRodrigo Moya <rodrigo@ximian.com>2002-10-03 18:57:22 +0800
committerRodrigo Moya <rodrigo@src.gnome.org>2002-10-03 18:57:22 +0800
commit5a20dc84bb40f9ab827290eb67b4a41c81df1817 (patch)
tree2b6252ef4f5408a3b322a85d0afc10283057305a /calendar/gui/tasks-control.c
parent566e0fe148c54f18a2ff41a68c90444ed178b930 (diff)
downloadgsoc2013-evolution-5a20dc84bb40f9ab827290eb67b4a41c81df1817.tar.gz
gsoc2013-evolution-5a20dc84bb40f9ab827290eb67b4a41c81df1817.tar.zst
gsoc2013-evolution-5a20dc84bb40f9ab827290eb67b4a41c81df1817.zip
Fixes #30057
2002-10-02 Rodrigo Moya <rodrigo@ximian.com> Fixes #30057 * cal-client/cal-client.c (cal_client_is_read_only): added check of the status of the client before trying to make CORBA calls. * gui/calendar-commands.c (sensitize_calendar_commands, sensitize_taskpad_commands): * gui/tasks-control.c (sensitize_commands): * gui/dialogs/event-editor.c (set_menu_sens): * gui/dialogs/task-editor.c (set_menu_sens): * gui/e-calendar-table.c (e_calendar_table_on_right_click): * gui/e-day-view.c (e_day_view_on_event_right_click): * gui/e-week-view.c (e_week_view_show_popup_menu): take into account the read-onlyness of clients to disable/enable menu items. svn path=/trunk/; revision=18316
Diffstat (limited to 'calendar/gui/tasks-control.c')
-rw-r--r--calendar/gui/tasks-control.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/calendar/gui/tasks-control.c b/calendar/gui/tasks-control.c
index 1c7bc82b69..0f0166833c 100644
--- a/calendar/gui/tasks-control.c
+++ b/calendar/gui/tasks-control.c
@@ -230,21 +230,30 @@ static void
sensitize_commands (ETasks *tasks, BonoboControl *control, int n_selected)
{
BonoboUIComponent *uic;
+ gboolean read_only;
uic = bonobo_control_get_ui_component (control);
g_assert (uic != NULL);
+ read_only = cal_client_is_read_only (e_tasks_get_cal_client (tasks));
+
bonobo_ui_component_set_prop (uic, "/commands/TasksCut", "sensitive",
- n_selected == 0 ? "0" : "1",
+ n_selected == 0 || read_only ? "0" : "1",
NULL);
bonobo_ui_component_set_prop (uic, "/commands/TasksCopy", "sensitive",
n_selected == 0 ? "0" : "1",
NULL);
+ bonobo_ui_component_set_prop (uic, "/commands/TasksPaste", "sensitive",
+ n_selected == 0 || read_only ? "0" : "1",
+ NULL);
bonobo_ui_component_set_prop (uic, "/commands/TasksDelete", "sensitive",
- n_selected == 0 ? "0" : "1",
+ n_selected == 0 || read_only ? "0" : "1",
NULL);
bonobo_ui_component_set_prop (uic, "/commands/TasksMarkComplete", "sensitive",
- n_selected == 0 ? "0" : "1",
+ n_selected == 0 || read_only ? "0" : "1",
+ NULL);
+ bonobo_ui_component_set_prop (uic, "/commands/TasksExpunge", "sensitive",
+ read_only ? "0" : "1",
NULL);
}