diff options
author | Hans Petter <hansp@src.gnome.org> | 2003-09-12 06:04:44 +0800 |
---|---|---|
committer | Hans Petter <hansp@src.gnome.org> | 2003-09-12 06:04:44 +0800 |
commit | 697761cc337aa77a47140c8df50ed84bc25e23f6 (patch) | |
tree | b785830f72e9938cceaa016a419c7b6d9892bada /calendar | |
parent | 733d77e657516f9a59b5c1a7b62acb87b03ec86f (diff) | |
download | gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar.gz gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar.zst gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.zip |
Import new libical from mainline HEAD and make appropriate changes to
Evolution.
svn path=/trunk/; revision=22538
Diffstat (limited to 'calendar')
-rw-r--r-- | calendar/ChangeLog | 33 | ||||
-rw-r--r-- | calendar/cal-util/Makefile.am | 4 | ||||
-rw-r--r-- | calendar/cal-util/cal-component.c | 87 | ||||
-rw-r--r-- | calendar/cal-util/cal-util.c | 10 | ||||
-rw-r--r-- | calendar/gui/e-cal-model-calendar.c | 20 | ||||
-rw-r--r-- | calendar/gui/e-cal-model-tasks.c | 6 | ||||
-rw-r--r-- | calendar/gui/e-cal-model.c | 17 | ||||
-rw-r--r-- | calendar/importers/Makefile.am | 6 | ||||
-rw-r--r-- | calendar/pcs/cal-backend-file.c | 6 |
9 files changed, 129 insertions, 60 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index a8c0b7b8bb..1113f7ea5d 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,36 @@ +2003-09-11 Hans Petter Jansson <hpj@ximian.com> + + * cal-util/Makefile.am (libcal_util_la_LIBADD): + libical-evolution.la -> libical.la + + * cal-util/cal-component.c (cal_component_get_classification) + (cal_component_set_classification) + (get_text_list) + (get_icaltimetype) + (get_datetime) + (get_period_list) + (get_recur_list) + (cal_component_get_transparency) + (cal_component_set_transparency): Adapt to new libical. + + * cal-util/cal-util.c (cal_util_event_dates_match): Ditto. + + * pcs/cal-backend-file.c (create_user_free_busy): Ditto. + + * gui/e-cal-model-tasks.c (get_completed) + (get_due) + (get_due_status): Ditto. + + * gui/e-cal-model.c (get_dtstart) + (set_classification): Ditto. + + * gui/e-cal-model-calendar.c (get_dtend) + (get_transparency) + (set_transparency): Adapt to new libical and fix a comparison bug. + + * importers/Makefile.am (libevolution_calendar_importers_la_LIBADD): + libical-evolution.la -> libical.la + 2003-09-11 Dan Winship <danw@ximian.com> * cal-util/Makefile.am (privlib_LTLIBRARIES): Remove diff --git a/calendar/cal-util/Makefile.am b/calendar/cal-util/Makefile.am index 004946bdbf..d070271c0b 100644 --- a/calendar/cal-util/Makefile.am +++ b/calendar/cal-util/Makefile.am @@ -26,7 +26,7 @@ libcal_util_la_SOURCES = \ timeutil.c libcal_util_la_LIBADD = \ - $(top_builddir)/libical/src/libical/libical-evolution.la + $(top_builddir)/libical/src/libical/libical.la libcal_utilincludedir = $(privincludedir)/cal-util @@ -50,4 +50,4 @@ test_recur_LDADD = \ $(EVOLUTION_CALENDAR_LIBS) EXTRA_DIST = \ - cal-util-marshal.list
\ No newline at end of file + cal-util-marshal.list diff --git a/calendar/cal-util/cal-component.c b/calendar/cal-util/cal-component.c index 671af4a9ec..22b9ee310f 100644 --- a/calendar/cal-util/cal-component.c +++ b/calendar/cal-util/cal-component.c @@ -1536,7 +1536,7 @@ void cal_component_get_classification (CalComponent *comp, CalComponentClassification *classif) { CalComponentPrivate *priv; - const char *class; + icalproperty_class class; g_return_if_fail (comp != NULL); g_return_if_fail (IS_CAL_COMPONENT (comp)); @@ -1552,14 +1552,21 @@ cal_component_get_classification (CalComponent *comp, CalComponentClassification class = icalproperty_get_class (priv->classification); - if (strcasecmp (class, "PUBLIC") == 0) - *classif = CAL_COMPONENT_CLASS_PUBLIC; - else if (strcasecmp (class, "PRIVATE") == 0) - *classif = CAL_COMPONENT_CLASS_PRIVATE; - else if (strcasecmp (class, "CONFIDENTIAL") == 0) - *classif = CAL_COMPONENT_CLASS_CONFIDENTIAL; - else - *classif = CAL_COMPONENT_CLASS_UNKNOWN; + switch (class) + { + case ICAL_CLASS_PUBLIC: + *classif = CAL_COMPONENT_CLASS_PUBLIC; + break; + case ICAL_CLASS_PRIVATE: + *classif = CAL_COMPONENT_CLASS_PRIVATE; + break; + case ICAL_CLASS_CONFIDENTIAL: + *classif = CAL_COMPONENT_CLASS_CONFIDENTIAL; + break; + default: + *classif = CAL_COMPONENT_CLASS_UNKNOWN; + break; + } } /** @@ -1574,7 +1581,7 @@ void cal_component_set_classification (CalComponent *comp, CalComponentClassification classif) { CalComponentPrivate *priv; - char *str; + icalproperty_class class; g_return_if_fail (comp != NULL); g_return_if_fail (IS_CAL_COMPONENT (comp)); @@ -1595,26 +1602,26 @@ cal_component_set_classification (CalComponent *comp, CalComponentClassification switch (classif) { case CAL_COMPONENT_CLASS_PUBLIC: - str = "PUBLIC"; + class = ICAL_CLASS_PUBLIC; break; case CAL_COMPONENT_CLASS_PRIVATE: - str = "PRIVATE"; + class = ICAL_CLASS_PRIVATE; break; case CAL_COMPONENT_CLASS_CONFIDENTIAL: - str = "CONFIDENTIAL"; + class = ICAL_CLASS_CONFIDENTIAL; break; default: g_assert_not_reached (); - str = NULL; + class = ICAL_CLASS_NONE; } if (priv->classification) - icalproperty_set_class (priv->classification, str); + icalproperty_set_class (priv->classification, class); else { - priv->classification = icalproperty_new_class (str); + priv->classification = icalproperty_new_class (class); icalcomponent_add_property (priv->icalcomp, priv->classification); } } @@ -1622,7 +1629,7 @@ cal_component_set_classification (CalComponent *comp, CalComponentClassification /* Gets a text list value */ static void get_text_list (GSList *text_list, - const char *(* get_prop_func) (icalproperty *prop), + const char *(* get_prop_func) (const icalproperty *prop), GSList **tl) { GSList *l; @@ -1808,7 +1815,7 @@ cal_component_set_contact_list (CalComponent *comp, GSList *text_list) /* Gets a struct icaltimetype value */ static void get_icaltimetype (icalproperty *prop, - struct icaltimetype (* get_prop_func) (icalproperty *prop), + struct icaltimetype (* get_prop_func) (const icalproperty *prop), struct icaltimetype **t) { if (!prop) { @@ -2001,7 +2008,7 @@ cal_component_set_description_list (CalComponent *comp, GSList *text_list) /* Gets a date/time and timezone pair */ static void get_datetime (struct datetime *datetime, - struct icaltimetype (* get_prop_func) (icalproperty *prop), + struct icaltimetype (* get_prop_func) (const icalproperty *prop), CalComponentDateTime *dt) { if (datetime->prop) { @@ -2353,7 +2360,7 @@ cal_component_set_due (CalComponent *comp, CalComponentDateTime *dt) /* Builds a list of CalComponentPeriod structures based on a list of icalproperties */ static void get_period_list (GSList *period_list, - struct icaldatetimeperiodtype (* get_prop_func) (icalproperty *prop), + struct icaldatetimeperiodtype (* get_prop_func) (const icalproperty *prop), GSList **list) { GSList *l; @@ -2620,7 +2627,7 @@ cal_component_has_exdates (CalComponent *comp) /* Gets a list of recurrence rules */ static void get_recur_list (GSList *recur_list, - struct icalrecurrencetype (* get_prop_func) (icalproperty *prop), + struct icalrecurrencetype (* get_prop_func) (const icalproperty *prop), GSList **list) { GSList *l; @@ -3843,7 +3850,7 @@ void cal_component_get_transparency (CalComponent *comp, CalComponentTransparency *transp) { CalComponentPrivate *priv; - const char *val; + icalproperty_transp ical_transp; g_return_if_fail (comp != NULL); g_return_if_fail (IS_CAL_COMPONENT (comp)); @@ -3857,14 +3864,24 @@ cal_component_get_transparency (CalComponent *comp, CalComponentTransparency *tr return; } - val = icalproperty_get_transp (priv->transparency); + ical_transp = icalproperty_get_transp (priv->transparency); - if (strcasecmp (val, "TRANSPARENT") == 0) - *transp = CAL_COMPONENT_TRANSP_TRANSPARENT; - else if (strcasecmp (val, "OPAQUE") == 0) - *transp = CAL_COMPONENT_TRANSP_OPAQUE; - else - *transp = CAL_COMPONENT_TRANSP_UNKNOWN; + switch (ical_transp) + { + case ICAL_TRANSP_TRANSPARENT: + case ICAL_TRANSP_TRANSPARENTNOCONFLICT: + *transp = CAL_COMPONENT_TRANSP_TRANSPARENT; + break; + + case ICAL_TRANSP_OPAQUE: + case ICAL_TRANSP_OPAQUENOCONFLICT: + *transp = CAL_COMPONENT_TRANSP_OPAQUE; + break; + + default: + *transp = CAL_COMPONENT_TRANSP_UNKNOWN; + break; + } } /** @@ -3878,7 +3895,7 @@ void cal_component_set_transparency (CalComponent *comp, CalComponentTransparency transp) { CalComponentPrivate *priv; - char *str; + icalproperty_transp ical_transp; g_return_if_fail (comp != NULL); g_return_if_fail (IS_CAL_COMPONENT (comp)); @@ -3900,22 +3917,22 @@ cal_component_set_transparency (CalComponent *comp, CalComponentTransparency tra switch (transp) { case CAL_COMPONENT_TRANSP_TRANSPARENT: - str = "TRANSPARENT"; + ical_transp = ICAL_TRANSP_TRANSPARENT; break; case CAL_COMPONENT_TRANSP_OPAQUE: - str = "OPAQUE"; + ical_transp = ICAL_TRANSP_OPAQUE; break; default: g_assert_not_reached (); - str = NULL; + ical_transp = ICAL_TRANSP_NONE; } if (priv->transparency) - icalproperty_set_transp (priv->transparency, str); + icalproperty_set_transp (priv->transparency, ical_transp); else { - priv->transparency = icalproperty_new_transp (str); + priv->transparency = icalproperty_new_transp (ical_transp); icalcomponent_add_property (priv->icalcomp, priv->transparency); } } diff --git a/calendar/cal-util/cal-util.c b/calendar/cal-util/cal-util.c index 690bb57f6f..1e03c86d75 100644 --- a/calendar/cal-util/cal-util.c +++ b/calendar/cal-util/cal-util.c @@ -755,13 +755,19 @@ cal_util_event_dates_match (icalcomponent *icalcomp1, icalcomponent *icalcomp2) return FALSE; } + + /* now match the timezones */ if (!(!c1_dtstart.zone && !c2_dtstart.zone) || - (c1_dtstart.zone && c2_dtstart.zone && !strcmp (c1_dtstart.zone, c2_dtstart.zone))) + (c1_dtstart.zone && c2_dtstart.zone && + !strcmp (icaltimezone_get_tzid ((icaltimezone *) c1_dtstart.zone), + icaltimezone_get_tzid ((icaltimezone *) c2_dtstart.zone)))) return FALSE; if (!(!c1_dtend.zone && !c2_dtend.zone) || - (c1_dtend.zone && c2_dtend.zone && !strcmp (c1_dtend.zone, c2_dtend.zone))) + (c1_dtend.zone && c2_dtend.zone && + !strcmp (icaltimezone_get_tzid ((icaltimezone *) c1_dtend.zone), + icaltimezone_get_tzid ((icaltimezone *) c2_dtend.zone)))) return FALSE; return TRUE; diff --git a/calendar/gui/e-cal-model-calendar.c b/calendar/gui/e-cal-model-calendar.c index 73ecaf3e94..82de4e6d5a 100644 --- a/calendar/gui/e-cal-model-calendar.c +++ b/calendar/gui/e-cal-model-calendar.c @@ -128,7 +128,7 @@ get_dtend (ECalModelComponent *comp_data) /* FIXME: handle errors */ cal_client_get_timezone (comp_data->client, - icaltimezone_get_tzid (icaltimezone_get_builtin_timezone (tt_end.zone)), + icaltime_get_tzid (tt_end), &zone); comp_data->dtend->zone = zone; } @@ -155,12 +155,14 @@ get_transparency (ECalModelComponent *comp_data) prop = icalcomponent_get_first_property (comp_data->icalcomp, ICAL_TRANSP_PROPERTY); if (prop) { - const char *transp; + icalproperty_transp transp; transp = icalproperty_get_transp (prop); - if (strcasecmp (transp, "TRANSPARENT") == 0) + if (transp == ICAL_TRANSP_TRANSPARENT || + transp == ICAL_TRANSP_TRANSPARENTNOCONFLICT) return _("Free"); - else if (strcasecmp (transp, "OPAQUE") == 0) + else if (transp == ICAL_TRANSP_OPAQUE || + transp == ICAL_TRANSP_OPAQUENOCONFLICT) return _("Busy"); } @@ -251,12 +253,12 @@ set_transparency (ECalModelComponent *comp_data, const void *value) icalproperty_free (prop); } } else { - const char *transp; + icalproperty_transp transp; - if (strcasecmp (value, "FREE")) - transp = "TRANSPARENT"; - else if (strcasecmp (value, "OPAQUE")) - transp = "OPAQUE"; + if (!strcasecmp (value, "FREE")) + transp = ICAL_TRANSP_TRANSPARENT; + else if (!strcasecmp (value, "OPAQUE")) + transp = ICAL_TRANSP_OPAQUE; else { if (prop) { icalcomponent_remove_property (comp_data->icalcomp, prop); diff --git a/calendar/gui/e-cal-model-tasks.c b/calendar/gui/e-cal-model-tasks.c index deeb341512..6bca52586c 100644 --- a/calendar/gui/e-cal-model-tasks.c +++ b/calendar/gui/e-cal-model-tasks.c @@ -222,7 +222,7 @@ get_completed (ECalModelComponent *comp_data) /* FIXME: handle errors */ cal_client_get_timezone (comp_data->client, - icaltimezone_get_tzid (icaltimezone_get_builtin_timezone (tt_completed.zone)), + icaltime_get_tzid (tt_completed), &zone); comp_data->completed->zone = zone; } @@ -252,7 +252,7 @@ get_due (ECalModelComponent *comp_data) /* FIXME: handle errors */ cal_client_get_timezone (comp_data->client, - icaltimezone_get_tzid (icaltimezone_get_builtin_timezone (tt_due.zone)), + icaltime_get_tzid (tt_due), &zone); comp_data->due->zone = zone; } @@ -398,7 +398,7 @@ get_due_status (ECalModelTasks *model, ECalModelComponent *comp_data) } else { /* Get the current time in the same timezone as the DUE date.*/ status = cal_client_get_timezone (comp_data->client, - icaltimezone_get_tzid (icaltimezone_get_builtin_timezone (due_tt.zone)), + icaltime_get_tzid (due_tt), &zone); if (status != CAL_CLIENT_GET_SUCCESS) return E_CAL_MODEL_TASKS_DUE_FUTURE; diff --git a/calendar/gui/e-cal-model.c b/calendar/gui/e-cal-model.c index 1f2e4a8f13..8a68cd07e5 100644 --- a/calendar/gui/e-cal-model.c +++ b/calendar/gui/e-cal-model.c @@ -336,7 +336,7 @@ get_dtstart (ECalModel *model, ECalModelComponent *comp_data) /* FIXME: handle errors */ cal_client_get_timezone (comp_data->client, - icaltimezone_get_tzid (icaltimezone_get_builtin_timezone (tt_start.zone)), + icaltime_get_tzid (tt_start), &zone); comp_data->dtstart->zone = zone; } @@ -476,11 +476,22 @@ set_classification (ECalModelComponent *comp_data, const char *value) icalproperty_free (prop); } } else { + icalproperty_class ical_class; + + if (!strcasecmp (value, "PUBLIC")) + ical_class = ICAL_CLASS_PUBLIC; + else if (!strcasecmp (value, "PRIVATE")) + ical_class = ICAL_CLASS_PRIVATE; + else if (!strcasecmp (value, "CONFIDENTIAL")) + ical_class = ICAL_CLASS_CONFIDENTIAL; + else + ical_class = ICAL_CLASS_NONE; + if (!prop) { - prop = icalproperty_new_class (value); + prop = icalproperty_new_class (ical_class); icalcomponent_add_property (comp_data->icalcomp, prop); } else - icalproperty_set_class (prop, value); + icalproperty_set_class (prop, ical_class); } } diff --git a/calendar/importers/Makefile.am b/calendar/importers/Makefile.am index 5f82341223..a1487c64a5 100644 --- a/calendar/importers/Makefile.am +++ b/calendar/importers/Makefile.am @@ -29,7 +29,7 @@ libevolution_calendar_importers_la_LDFLAGS = -avoid-version -module libevolution_calendar_importers_la_LIBADD = \ $(top_builddir)/shell/importer/libevolution-importer.la \ - $(top_builddir)/libical/src/libicalvcal/libicalvcal-evolution.la \ + $(top_builddir)/libical/src/libicalvcal/libicalvcal.la \ $(IMPORTERS_LIBS) # evolution_calendar_importer_SOURCES = \ @@ -43,8 +43,8 @@ libevolution_calendar_importers_la_LIBADD = \ # $(top_builddir)/calendar/cal-util/libcal-util.la \ # $(top_builddir)/calendar/cal-client/libcal-client.la \ # $(top_builddir)/libwombat/libwombat.la \ -# $(top_builddir)/libical/src/libical/libical-evolution.la \ -# $(top_builddir)/libical/src/libicalvcal/libicalvcal-evolution.la \ +# $(top_builddir)/libical/src/libical/libical.la \ +# $(top_builddir)/libical/src/libicalvcal/libicalvcal.la \ # $(EVOLUTION_CALENDAR_LIBS) server_in_files = GNOME_Evolution_Calendar_Importer.server.in.in diff --git a/calendar/pcs/cal-backend-file.c b/calendar/pcs/cal-backend-file.c index 81697602d4..b26f2fd74c 100644 --- a/calendar/pcs/cal-backend-file.c +++ b/calendar/pcs/cal-backend-file.c @@ -1203,9 +1203,9 @@ create_user_free_busy (CalBackendFile *cbfile, const char *address, const char * prop = icalcomponent_get_first_property (icalcomp, ICAL_TRANSP_PROPERTY); if (prop) { - const char *transp_val = icalproperty_get_transp (prop); - if (transp_val - && !strcasecmp (transp_val, "TRANSPARENT")) + icalproperty_transp transp_val = icalproperty_get_transp (prop); + if (transp_val == ICAL_TRANSP_TRANSPARENT || + transp_val == ICAL_TRANSP_TRANSPARENTNOCONFLICT) continue; } |