From cc670cb2ca319599eebac658f1164dbb64d70c65 Mon Sep 17 00:00:00 2001 From: Federico Mena Quintero Date: Tue, 8 Feb 2000 07:08:29 +0000 Subject: New struct to wrap instances of calendar objects for recurrencies and 2000-02-08 Federico Mena Quintero * evolution-calendar.idl (CalObjInstance): New struct to wrap instances of calendar objects for recurrencies and alarms. (Cal::get_events_in_range): New method to get ocurring and recurring events by time range. * cal-backend.c (cal_backend_get_events_in_range): New function to get a list of event instances in a time range. (string_from_ical_object): New internal function. (cal_backend_get_object): Use string_from_ical_object() instead of doing everything ourselves. (cal_backend_get_events_in_range): New function to get a list of the events that occur or recur in a specified time range. * cal-client.c (cal_client_get_events_in_range): Implemented client-side function. * cal-util.h: * cal-util.c: New files with utilities and types common to the client and server parts. (CalObjInstance): New structure to hold an instance of an actual occurrence, recurrence, or alarm trigger of a calendar object. (cal_obj_instance_list_free): New function to free a list of calendar object instances. * cal.c (Cal_get_events_in_range): Implemented new method. * corba-cal.c (cal_repo_get_updated_objects): Free `str' with free(), not g_free(), since calendar_get_as_vcal_string() uses writeMemVObject(), which uses realloc(). Fixed in gnome-pim as well. svn path=/trunk/; revision=1693 --- calendar/cal-backend.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'calendar/cal-backend.h') diff --git a/calendar/cal-backend.h b/calendar/cal-backend.h index e972cbd59e..aa54a3339d 100644 --- a/calendar/cal-backend.h +++ b/calendar/cal-backend.h @@ -27,6 +27,7 @@ #include "evolution-calendar.h" #include "cal-common.h" #include "cal.h" +#include "cal-util.h" BEGIN_GNOME_DECLS @@ -39,9 +40,10 @@ BEGIN_GNOME_DECLS #define IS_CAL_BACKEND(obj) (GTK_CHECK_TYPE ((obj), CAL_BACKEND_TYPE)) #define IS_CAL_BACKEND_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), CAL_BACKEND_TYPE)) +/* Load status values */ typedef enum { - CAL_BACKEND_LOAD_SUCCESS, /* Loading OK */ - CAL_BACKEND_LOAD_ERROR /* We need better error reporting in libversit */ + CAL_BACKEND_LOAD_SUCCESS, /* Loading OK */ + CAL_BACKEND_LOAD_ERROR /* We need better error reporting in libversit */ } CalBackendLoadStatus; struct _CalBackend { @@ -68,6 +70,8 @@ CalBackendLoadStatus cal_backend_load (CalBackend *backend, GnomeVFSURI *uri); char *cal_backend_get_object (CalBackend *backend, const char *uid); +GList *cal_backend_get_events_in_range (CalBackend *backend, time_t start, time_t end); + END_GNOME_DECLS -- cgit v1.2.3