From a7891fc47c13de34909e29ef2ca2064608857dd1 Mon Sep 17 00:00:00 2001 From: Rodrigo Moya Date: Fri, 6 May 2005 03:29:56 +0000 Subject: Fixes #271679 2005-05-06 Rodrigo Moya Fixes #271679 * gui/dialogs/comp-editor.c (save_comp): * gui/e-week-view.c (e_week_view_on_editing_stopped, e_week_view_change_event_time): set correct start/end times for individual instances and remove all rules and exceptions. (e_week_view_reshape_event_span): show recurrence icons for detached instances also. * gui/e-day-view.c (e_day_view_finish_resize, e_day_view_finish_long_event_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, e_day_view_change_event_time): set the correct start/end times when modifying individual instances and remove all rules and exceptions. (e_day_view_on_top_canvas_motion, e_day_view_on_main_canvas_motion): disable D&D for recurring events. (e_day_view_reshape_long_event, e_day_view_reshape_day_event): check for detached instances and show recurrence icons for them also. * gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons): * gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event): * gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event): check for detached instances and show recurrence icons for them also. * gui/e-cal-model.c (set_instance_times): don't use the RECURRENCE-ID to get the datetime. * gui/e-calendar-view.c (e_calendar_view_delete_selected_occurrence): exceptions need to be date only. (e_calendar_view_copy_clipboard): remove RECURRENCE-IDs from components we copy to the clipboard. (e_calendar_view_cut_clipboard): when cutting instances, remove only the selected instances. (on_unrecur_appointment): use MOD_ALL to modify the master object and remove recurrence-id from detached event. * gui/dialogs/recur-comp.c (recur_component_dialog): re-enabled. svn path=/trunk/; revision=29276 --- calendar/gui/dialogs/comp-editor.c | 8 +++++++- calendar/gui/dialogs/recur-comp.c | 13 ------------- 2 files changed, 7 insertions(+), 14 deletions(-) (limited to 'calendar/gui/dialogs') diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c index 26cc13e179..1e41a74ff4 100644 --- a/calendar/gui/dialogs/comp-editor.c +++ b/calendar/gui/dialogs/comp-editor.c @@ -650,6 +650,12 @@ save_comp (CompEditor *editor) if (!cal_comp_is_on_server (priv->comp, priv->client)) { result = e_cal_create_object (priv->client, icalcomp, NULL, &error); } else { + if (priv->mod == CALOBJ_MOD_THIS) { + e_cal_component_set_rdate_list (priv->comp, NULL); + e_cal_component_set_rrule_list (priv->comp, NULL); + e_cal_component_set_exdate_list (priv->comp, NULL); + e_cal_component_set_exrule_list (priv->comp, NULL); + } result = e_cal_modify_object (priv->client, icalcomp, priv->mod, &error); } @@ -1830,7 +1836,7 @@ real_send_comp (CompEditor *editor, ECalComponentItipMethod method) comp_editor_set_changed (editor, TRUE); - return FALSE; + return FALSE; } diff --git a/calendar/gui/dialogs/recur-comp.c b/calendar/gui/dialogs/recur-comp.c index 734516e904..cfffa29c69 100644 --- a/calendar/gui/dialogs/recur-comp.c +++ b/calendar/gui/dialogs/recur-comp.c @@ -36,7 +36,6 @@ recur_component_dialog (ECal *client, CalObjModType *mod, GtkWindow *parent) { -#if 0 char *str; GtkWidget *dialog, *rb_this, *rb_prior, *rb_future, *rb_all, *hbox; GtkWidget *placeholder, *vbox; @@ -134,16 +133,4 @@ recur_component_dialog (ECal *client, gtk_widget_destroy (dialog); return ret; -#endif - - icalproperty *prop; - - prop = icalcomponent_get_first_property (e_cal_component_get_icalcomponent (comp), - ICAL_RECURRENCEID_PROPERTY); - if (prop) - icalcomponent_remove_property (e_cal_component_get_icalcomponent (comp), prop); - - *mod = CALOBJ_MOD_ALL; - - return TRUE; } -- cgit v1.2.3