|  |  |  | Evolution-Data-Server Manual: Calendar Client (libecal) |  | 
|---|---|---|---|---|
| Top | Description | ||||
                    CalObjInstance;
void                cal_obj_instance_list_free          (GList *list);
enum                CalObjModType;
enum                CalMode;
#define             cal_mode_to_corba                   (mode)
void                cal_obj_uid_list_free               (GList *list);
icalcomponent *     e_cal_util_new_top_level            (void);
icalcomponent *     e_cal_util_new_component            (icalcomponent_kind kind);
icalcomponent *     e_cal_util_parse_ics_string         (const gchar *string);
icalcomponent *     e_cal_util_parse_ics_file           (const gchar *filename);
ECalComponentAlarms * e_cal_util_generate_alarms_for_comp
                                                        (ECalComponent *comp,
                                                         time_t start,
                                                         time_t end,
                                                         ECalComponentAlarmAction *omit,
                                                         ECalRecurResolveTimezoneFn resolve_tzid,
                                                         gpointer user_data,
                                                         icaltimezone *default_timezone);
gint                e_cal_util_generate_alarms_for_list (GList *comps,
                                                         time_t start,
                                                         time_t end,
                                                         ECalComponentAlarmAction *omit,
                                                         GSList **comp_alarms,
                                                         ECalRecurResolveTimezoneFn resolve_tzid,
                                                         gpointer user_data,
                                                         icaltimezone *default_timezone);
const gchar *       e_cal_util_priority_to_string       (gint priority);
gint                e_cal_util_priority_from_string     (const gchar *string);
void                e_cal_util_add_timezones_from_component
                                                        (icalcomponent *vcal_comp,
                                                         icalcomponent *icalcomp);
gboolean            e_cal_util_component_is_instance    (icalcomponent *icalcomp);
gboolean            e_cal_util_component_has_alarms     (icalcomponent *icalcomp);
gboolean            e_cal_util_component_has_organizer  (icalcomponent *icalcomp);
gboolean            e_cal_util_component_has_recurrences
                                                        (icalcomponent *icalcomp);
gboolean            e_cal_util_component_has_rdates     (icalcomponent *icalcomp);
gboolean            e_cal_util_component_has_rrules     (icalcomponent *icalcomp);
gboolean            e_cal_util_component_has_attendee   (icalcomponent *icalcomp);
gboolean            e_cal_util_event_dates_match        (icalcomponent *icalcomp1,
                                                         icalcomponent *icalcomp2);
#define             CAL_STATIC_CAPABILITY_NO_ALARM_REPEAT
#define             CAL_STATIC_CAPABILITY_NO_AUDIO_ALARMS
#define             CAL_STATIC_CAPABILITY_NO_DISPLAY_ALARMS
#define             CAL_STATIC_CAPABILITY_NO_EMAIL_ALARMS
#define             CAL_STATIC_CAPABILITY_NO_PROCEDURE_ALARMS
#define             CAL_STATIC_CAPABILITY_NO_TASK_ASSIGNMENT
#define             CAL_STATIC_CAPABILITY_NO_THISANDFUTURE
#define             CAL_STATIC_CAPABILITY_NO_THISANDPRIOR
#define             CAL_STATIC_CAPABILITY_NO_TRANSPARENCY
#define             CAL_STATIC_CAPABILITY_ONE_ALARM_ONLY
#define             CAL_STATIC_CAPABILITY_ORGANIZER_MUST_ATTEND
#define             CAL_STATIC_CAPABILITY_ORGANIZER_NOT_EMAIL_ADDRESS
#define             CAL_STATIC_CAPABILITY_REMOVE_ALARMS
#define             CAL_STATIC_CAPABILITY_CREATE_MESSAGES
#define             CAL_STATIC_CAPABILITY_SAVE_SCHEDULES
#define             CAL_STATIC_CAPABILITY_NO_CONV_TO_ASSIGN_TASK
#define             CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR
#define             CAL_STATIC_CAPABILITY_NO_GEN_OPTIONS
#define             CAL_STATIC_CAPABILITY_REQ_SEND_OPTIONS
#define             CAL_STATIC_CAPABILITY_RECURRENCES_NO_MASTER
#define             CAL_STATIC_CAPABILITY_ORGANIZER_MUST_ACCEPT
#define             CAL_STATIC_CAPABILITY_DELEGATE_SUPPORTED
#define             CAL_STATIC_CAPABILITY_NO_ORGANIZER
#define             CAL_STATIC_CAPABILITY_DELEGATE_TO_MANY
#define             CAL_STATIC_CAPABILITY_HAS_UNACCEPTED_MEETING
icalcomponent *     e_cal_util_construct_instance       (icalcomponent *icalcomp,
                                                         struct icaltimetype rid);
void                e_cal_util_remove_instances         (icalcomponent *icalcomp,
                                                         struct icaltimetype rid,
                                                         CalObjModType mod);
gchar *             e_cal_util_get_system_timezone_location
                                                        (void);
icaltimezone *      e_cal_util_get_system_timezone      (void);
typedef struct {
	gchar *uid;			/* UID of the object */
	time_t start;			/* Start time of instance */
	time_t end;			/* End time of instance */
} CalObjInstance;
void cal_obj_instance_list_free (GList *list);
Frees a list of CalObjInstance structures.
| 
 | List of CalObjInstance structures. | 
typedef enum {
	CALOBJ_MOD_THIS          = 1 << 0,
	CALOBJ_MOD_THISANDPRIOR  = 1 << 1,
	CALOBJ_MOD_THISANDFUTURE = 1 << 2,
	CALOBJ_MOD_ALL           = 0x07
} CalObjModType;
typedef enum {
	CAL_MODE_INVALID = -1,
	CAL_MODE_LOCAL   = 1 << 0,
	CAL_MODE_REMOTE  = 1 << 1,
	CAL_MODE_ANY     = 0x07
} CalMode;
void cal_obj_uid_list_free (GList *list);
Frees a list of unique identifiers for calendar objects.
| 
 | List of strings with unique identifiers. | 
icalcomponent * e_cal_util_new_top_level (void);
Creates a new VCALENDAR component.
| Returns : | the newly created top level component. | 
icalcomponent * e_cal_util_new_component (icalcomponent_kind kind);
Creates a new icalcomponent of the specified kind.
| 
 | Kind of the component to create. | 
| Returns : | the newly created component. | 
icalcomponent * e_cal_util_parse_ics_string (const gchar *string);
Parses an iCalendar string and returns a new icalcomponent representing that string. Note that this function deals with multiple VCALENDAR's in the string, something that Mozilla used to do and which libical does not support.
| 
 | iCalendar string to be parsed. | 
| Returns : | a newly created icalcomponent or NULL if the string isn't a valid iCalendar string. | 
icalcomponent * e_cal_util_parse_ics_file (const gchar *filename);
Parses the given file, and, if it contains a valid iCalendar object, parse it and return a new icalcomponent.
| 
 | Name of the file to be parsed. | 
| Returns : | a newly created icalcomponent or NULL if the file doesn't contain a valid iCalendar object. | 
ECalComponentAlarms * e_cal_util_generate_alarms_for_comp (ECalComponent *comp, time_t start, time_t end, ECalComponentAlarmAction *omit, ECalRecurResolveTimezoneFn resolve_tzid, gpointer user_data, icaltimezone *default_timezone);
Generates alarm instances for a calendar component. Returns the instances structure, or NULL if no alarm instances occurred in the specified time range.
| 
 | The ECalComponent to generate alarms from. | 
| 
 | Start time. | 
| 
 | End time. | 
| 
 | Alarm types to omit | 
| 
 | Callback for resolving timezones | 
| 
 | Data to be passed to the resolve_tzid callback | 
| 
 | The timezone used to resolve DATE and floating DATE-TIME values. | 
| Returns : | a list of all the alarms found for the given component on the given time tange. The list of alarms should be freed by using the e_cal_component_free_alarm_list function. | 
gint e_cal_util_generate_alarms_for_list (GList *comps, time_t start, time_t end, ECalComponentAlarmAction *omit, GSList **comp_alarms, ECalRecurResolveTimezoneFn resolve_tzid, gpointer user_data, icaltimezone *default_timezone);
Iterates through all the components in the comps list and generates alarm
instances for them; putting them in the comp_alarms list.
| 
 | List of ECalComponent's. | 
| 
 | Start time. | 
| 
 | End time. | 
| 
 | Alarm types to omit | 
| 
 | List to be returned | 
| 
 | Callback for resolving timezones | 
| 
 | Data to be passed to the resolve_tzid callback | 
| 
 | The timezone used to resolve DATE and floating DATE-TIME values. | 
| Returns : | the number of elements it added to the list. | 
const gchar * e_cal_util_priority_to_string (gint priority);
Converts an iCalendar PRIORITY value to a translated string. Any unknown priority value (i.e. not 0-9) will be returned as "" (undefined).
| 
 | Priority value. | 
| Returns : | a string representing the PRIORITY value. This value is a constant, so it should never be freed. | 
gint e_cal_util_priority_from_string (const gchar *string);
Converts a translated priority string to an iCalendar priority value.
| 
 | A string representing the PRIORITY value. | 
| Returns : | the priority (0-9) or -1 if the priority string is not valid. | 
void                e_cal_util_add_timezones_from_component
                                                        (icalcomponent *vcal_comp,
                                                         icalcomponent *icalcomp);
Adds VTIMEZONE components to a VCALENDAR for all tzid's
in the given icalcomp.
| 
 | A VCALENDAR component. | 
| 
 | An iCalendar component, of any type. | 
gboolean e_cal_util_component_is_instance (icalcomponent *icalcomp);
Checks whether an icalcomponent is an instance of a recurring appointment or not.
| 
 | An icalcomponent. | 
| Returns : | TRUE if it is an instance, FALSE if not. | 
gboolean e_cal_util_component_has_alarms (icalcomponent *icalcomp);
Checks whether an icalcomponent has any alarm.
| 
 | An icalcomponent. | 
| Returns : | TRUE if it has alarms, FALSE otherwise. | 
gboolean e_cal_util_component_has_organizer (icalcomponent *icalcomp);
Checks whether an icalcomponent has an organizer or not.
| 
 | An icalcomponent. | 
| Returns : | TRUE if there is an organizer, FALSE if not. | 
gboolean e_cal_util_component_has_recurrences (icalcomponent *icalcomp);
Checks if an icalcomponent has recurrence dates or rules.
| 
 | An icalcomponent. | 
| Returns : | TRUE if there are recurrence dates/rules, FALSE if not. | 
gboolean e_cal_util_component_has_rdates (icalcomponent *icalcomp);
Checks if an icalcomponent has recurrence dates.
| 
 | An icalcomponent. | 
| Returns : | TRUE if there are recurrence dates, FALSE if not. | 
gboolean e_cal_util_component_has_rrules (icalcomponent *icalcomp);
Checks if an icalcomponent has recurrence rules.
| 
 | An icalcomponent. | 
| Returns : | TRUE if there are recurrence rules, FALSE if not. | 
gboolean e_cal_util_component_has_attendee (icalcomponent *icalcomp);
Checks if an icalcomponent has any attendees.
| 
 | An icalcomponent. | 
| Returns : | TRUE if there are attendees, FALSE if not. | 
gboolean e_cal_util_event_dates_match (icalcomponent *icalcomp1, icalcomponent *icalcomp2);
Compare the dates of two icalcomponent's to check if they match.
| 
 | An icalcomponent. | 
| 
 | An icalcomponent. | 
| Returns : | TRUE if the dates of both components match, FALSE otherwise. | 
#define CAL_STATIC_CAPABILITY_NO_ALARM_REPEAT "no-alarm-repeat"
#define CAL_STATIC_CAPABILITY_NO_AUDIO_ALARMS "no-audio-alarms"
#define CAL_STATIC_CAPABILITY_NO_DISPLAY_ALARMS "no-display-alarms"
#define CAL_STATIC_CAPABILITY_NO_EMAIL_ALARMS "no-email-alarms"
#define CAL_STATIC_CAPABILITY_NO_PROCEDURE_ALARMS "no-procedure-alarms"
#define CAL_STATIC_CAPABILITY_NO_TASK_ASSIGNMENT "no-task-assignment"
#define CAL_STATIC_CAPABILITY_NO_THISANDFUTURE "no-thisandfuture"
#define CAL_STATIC_CAPABILITY_NO_THISANDPRIOR "no-thisandprior"
#define CAL_STATIC_CAPABILITY_NO_TRANSPARENCY "no-transparency"
#define CAL_STATIC_CAPABILITY_ORGANIZER_MUST_ATTEND "organizer-must-attend"
#define CAL_STATIC_CAPABILITY_ORGANIZER_NOT_EMAIL_ADDRESS "organizer-not-email-address"
#define CAL_STATIC_CAPABILITY_CREATE_MESSAGES "create-messages"
#define CAL_STATIC_CAPABILITY_NO_CONV_TO_ASSIGN_TASK "no-conv-to-assign-task"
#define CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR "no-conv-to-recur"
#define CAL_STATIC_CAPABILITY_NO_GEN_OPTIONS "no-general-options"
#define CAL_STATIC_CAPABILITY_REQ_SEND_OPTIONS "require-send-options"
#define CAL_STATIC_CAPABILITY_RECURRENCES_NO_MASTER "recurrences-no-master-object"
#define CAL_STATIC_CAPABILITY_ORGANIZER_MUST_ACCEPT "organizer-must-accept"
#define CAL_STATIC_CAPABILITY_DELEGATE_SUPPORTED "delegate-support"
#define CAL_STATIC_CAPABILITY_DELEGATE_TO_MANY "delegate-to-many"
#define CAL_STATIC_CAPABILITY_HAS_UNACCEPTED_MEETING "has-unaccepted-meeting"
icalcomponent *     e_cal_util_construct_instance       (icalcomponent *icalcomp,
                                                         struct icaltimetype rid);
This checks that rid indicates a valid recurrence of icalcomp, and
if so, generates a copy of comp containing a RECURRENCE-ID of rid.
| 
 | A recurring icalcomponent | 
| 
 | The RECURRENCE-ID to construct a component for | 
| Returns : | the instance, or NULL. | 
void                e_cal_util_remove_instances         (icalcomponent *icalcomp,
                                                         struct icaltimetype rid,
                                                         CalObjModType mod);
Removes one or more instances from comp according to rid and mod.
FIXME: should probably have a return value indicating whether or not
icalcomp still has any instances
| 
 | A (recurring) icalcomponent | 
| 
 | The base RECURRENCE-ID to remove | 
| 
 | How to interpret rid | 
gchar * e_cal_util_get_system_timezone_location (void);
| Returns : | system timezone location string, NULL on an error.
Returned pointer should be freed with g_free(). |