From a7ac69cdc61b193cbc62fbe908652cebf1ee8f2d Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Fri, 31 Oct 2003 16:49:30 +0000 Subject: Add CAL_STATIC_CAPABILITY_NO_THISANDFUTURE and * cal-util/cal-util.h: Add CAL_STATIC_CAPABILITY_NO_THISANDFUTURE and CAL_STATIC_CAPABILITY_NO_THISANDPRIOR * gui/dialogs/recur-comp.c (recur_component_dialog): Add a CalClient argument. Use cal_client_get_static_capability to decide whether or not to offer THISANDFUTURE and THISANDPRIOR options * gui/dialogs/comp-editor.c (prompt_to_save_changes, save_cmd, save_close_cmd): Pass a CalClient to recur_component_dialog. * gui/e-day-view.c (e_day_view_finish_long_event_resize, e_day_view_finish_resize, e_day_view_on_editing_stopped, e_day_view_on_top_canvas_drag_data_received, e_day_view_on_main_canvas_drag_data_received): Likewise * gui/e-week-view.c (e_week_view_on_editing_stopped): Likewise * gui/calendar-component.c (impl_createControls): set an exception if we fail, so evo won't crash. svn path=/trunk/; revision=23152 --- calendar/gui/e-day-view.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) (limited to 'calendar/gui/e-day-view.c') diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c index 660957647f..d6678487c7 100644 --- a/calendar/gui/e-day-view.c +++ b/calendar/gui/e-day-view.c @@ -3755,7 +3755,7 @@ e_day_view_finish_long_event_resize (EDayView *day_view) } if (cal_component_has_recurrences (comp)) { - if (!recur_component_dialog (comp, &mod, NULL)) { + if (!recur_component_dialog (client, comp, &mod, NULL)) { gtk_widget_queue_draw (day_view->top_canvas); goto out; } @@ -3838,7 +3838,7 @@ e_day_view_finish_resize (EDayView *day_view) day_view->resize_drag_pos = E_CAL_VIEW_POS_NONE; if (cal_component_has_recurrences (comp)) { - if (!recur_component_dialog (comp, &mod, NULL)) { + if (!recur_component_dialog (client, comp, &mod, NULL)) { gtk_widget_queue_draw (day_view->top_canvas); goto out; } @@ -5657,6 +5657,7 @@ e_day_view_on_editing_stopped (EDayView *day_view, gchar *text = NULL; CalComponentText summary; CalComponent *comp; + CalClient *client; gboolean on_server; /* Note: the item we are passed here isn't reliable, so we just stop @@ -5703,7 +5704,8 @@ e_day_view_on_editing_stopped (EDayView *day_view, comp = cal_component_new (); cal_component_set_icalcomponent (comp, icalcomponent_new_clone (event->comp_data->icalcomp)); - on_server = cal_comp_is_on_server (comp, event->comp_data->client); + client = event->comp_data->client; + on_server = cal_comp_is_on_server (comp, client); if (string_is_empty (text) && !on_server) { const char *uid; @@ -5734,24 +5736,24 @@ e_day_view_on_editing_stopped (EDayView *day_view, cal_component_set_summary (comp, &summary); if (!on_server) { - if (!cal_client_create_object (event->comp_data->client, icalcomp, NULL, NULL)) + if (!cal_client_create_object (client, icalcomp, NULL, NULL)) g_message (G_STRLOC ": Could not create the object!"); } else { CalObjModType mod = CALOBJ_MOD_ALL; GtkWindow *toplevel; if (cal_component_has_recurrences (comp)) { - if (!recur_component_dialog (comp, &mod, NULL)) { + if (!recur_component_dialog (client, comp, &mod, NULL)) { goto out; } } /* FIXME When sending here, what exactly should we send? */ toplevel = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (day_view))); - if (cal_client_modify_object (event->comp_data->client, icalcomp, mod, NULL)) { - if (itip_organizer_is_user (comp, event->comp_data->client) - && send_component_dialog (toplevel, event->comp_data->client, comp, FALSE)) + if (cal_client_modify_object (client, icalcomp, mod, NULL)) { + if (itip_organizer_is_user (comp, client) + && send_component_dialog (toplevel, client, comp, FALSE)) itip_send_comp (CAL_COMPONENT_METHOD_REQUEST, comp, - event->comp_data->client, NULL); + client, NULL); } } @@ -6850,7 +6852,7 @@ e_day_view_on_top_canvas_drag_data_received (GtkWidget *widget, gnome_canvas_item_show (event->canvas_item); if (cal_component_has_recurrences (comp)) { - if (!recur_component_dialog (comp, &mod, NULL)) + if (!recur_component_dialog (client, comp, &mod, NULL)) return; } @@ -7044,7 +7046,7 @@ e_day_view_on_main_canvas_drag_data_received (GtkWidget *widget, gnome_canvas_item_show (event->canvas_item); if (cal_component_has_recurrences (comp)) { - if (!recur_component_dialog (comp, &mod, NULL)) { + if (!recur_component_dialog (client, comp, &mod, NULL)) { g_object_unref (comp); return; } -- cgit v1.2.3