From 1359335208dd9260b6b0541b692e534fa70bed7b Mon Sep 17 00:00:00 2001 From: JP Rosevear Date: Wed, 10 Oct 2001 14:37:14 +0000 Subject: fix logic checks 2001-10-10 JP Rosevear * pcs/cal-factory.c (add_uri): fix logic checks * gui/dialogs/event-editor.c (event_editor_init): init the exisiting_org boolean (set_menu_sens): base sensitivity on existing_org boolean (event_editor_edit_comp): set exisiting_org boolean * gui/dialogs/task-editor.c: same as above * gui/calendar-offline-handler.c (add_connection): handle the protocol or host being unknown * cal-util/cal-component.c (cal_component_has_organizer): implement svn path=/trunk/; revision=13552 --- calendar/gui/dialogs/event-editor.c | 14 +++++++++++--- calendar/gui/dialogs/task-editor.c | 14 +++++++++++--- 2 files changed, 22 insertions(+), 6 deletions(-) (limited to 'calendar/gui/dialogs') diff --git a/calendar/gui/dialogs/event-editor.c b/calendar/gui/dialogs/event-editor.c index 0b5fe9ec16..f464015fb0 100644 --- a/calendar/gui/dialogs/event-editor.c +++ b/calendar/gui/dialogs/event-editor.c @@ -49,6 +49,7 @@ struct _EventEditorPrivate { EMeetingModel *model; gboolean meeting_shown; + gboolean existing_org; gboolean updating; }; @@ -137,18 +138,22 @@ static void set_menu_sens (EventEditor *ee) { EventEditorPrivate *priv; + gboolean sens; priv = ee->priv; + sens = priv->meeting_shown; comp_editor_set_ui_prop (COMP_EDITOR (ee), "/commands/ActionScheduleMeeting", - "sensitive", priv->meeting_shown ? "0" : "1"); + "sensitive", sens ? "0" : "1"); + + sens = sens && priv->existing_org; comp_editor_set_ui_prop (COMP_EDITOR (ee), "/commands/ActionRefreshMeeting", - "sensitive", priv->meeting_shown ? "1" : "0"); + "sensitive", sens ? "1" : "0"); comp_editor_set_ui_prop (COMP_EDITOR (ee), "/commands/ActionCancelMeeting", - "sensitive", priv->meeting_shown ? "1" : "0"); + "sensitive", sens ? "1" : "0"); } static void @@ -207,6 +212,7 @@ event_editor_init (EventEditor *ee) verbs); priv->meeting_shown = TRUE; + priv->existing_org = FALSE; priv->updating = FALSE; init_widgets (ee); @@ -239,6 +245,8 @@ event_editor_edit_comp (CompEditor *editor, CalComponent *comp) priv = ee->priv; priv->updating = TRUE; + + priv->existing_org = cal_component_has_organizer (comp); cal_component_get_attendee_list (comp, &attendees); if (attendees == NULL) { diff --git a/calendar/gui/dialogs/task-editor.c b/calendar/gui/dialogs/task-editor.c index 3c09dece79..774a9cc1c3 100644 --- a/calendar/gui/dialogs/task-editor.c +++ b/calendar/gui/dialogs/task-editor.c @@ -44,6 +44,7 @@ struct _TaskEditorPrivate { EMeetingModel *model; gboolean meeting_shown; + gboolean existing_org; gboolean updating; }; @@ -128,18 +129,22 @@ static void set_menu_sens (TaskEditor *te) { TaskEditorPrivate *priv; + gboolean sens; priv = te->priv; + sens = priv->meeting_shown; comp_editor_set_ui_prop (COMP_EDITOR (te), "/commands/ActionAssignTask", - "sensitive", priv->meeting_shown ? "0" : "1"); + "sensitive", sens ? "0" : "1"); + + sens = sens && priv->existing_org; comp_editor_set_ui_prop (COMP_EDITOR (te), "/commands/ActionRefreshTask", - "sensitive", priv->meeting_shown ? "1" : "0"); + "sensitive", sens ? "1" : "0"); comp_editor_set_ui_prop (COMP_EDITOR (te), "/commands/ActionCancelTask", - "sensitive", priv->meeting_shown ? "1" : "0"); + "sensitive", sens ? "1" : "0"); } static void @@ -188,6 +193,7 @@ task_editor_init (TaskEditor *te) verbs); priv->meeting_shown = TRUE; + priv->existing_org = FALSE; priv->updating = FALSE; init_widgets (te); @@ -206,6 +212,8 @@ task_editor_edit_comp (CompEditor *editor, CalComponent *comp) priv->updating = TRUE; + priv->existing_org = cal_component_has_organizer (comp); + cal_component_get_attendee_list (comp, &attendees); if (attendees == NULL) { comp_editor_remove_page (editor, COMP_EDITOR_PAGE (priv->meet_page)); -- cgit v1.2.3