| Evolution API Reference: libecal, the Calendar Library |
|---|
e-cal-utile-cal-util — Various utility functions. |
CalObjInstance;
void cal_obj_instance_list_free (GList *list);
enum CalObjModType;
enum CalMode;
void cal_obj_uid_list_free (GList *list);
icalcomponent* e_cal_util_new_top_level (void);
icalcomponent* e_cal_util_parse_ics_file (const char *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);
int 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);
icaltimezone* e_cal_util_resolve_tzid (const char *tzid,
gpointer data);
char* e_cal_util_priority_to_string (int priority);
int e_cal_util_priority_from_string (const char *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_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_SAVE_SCHEDULES
icalcomponent* e_cal_util_construct_instance
(icalcomponent *icalcomp,
struct icaltimetype rid);
void e_cal_util_remove_instances (icalcomponent *icalcomp,
struct icaltimetype rid,
CalObjModType mod);
typedef struct {
char *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 : |
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 : |
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_parse_ics_file (const char *filename);
Parses the given file, and, if it contains a valid iCalendar object, parse it and return a corresponding icalcomponent.
filename : |
Name of the file to be parsed. |
| Returns : | an icalcomponent. |
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.
comp : |
The ECalComponent to generate alarms from. |
start : |
Start time. |
end : |
End time. |
omit : |
|
resolve_tzid : |
Callback for resolving timezones |
user_data : |
Data to be passed to the resolve_tzid callback |
default_timezone : |
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. |
int 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.
comps : |
List of ECalComponent's. |
start : |
Start time. |
end : |
End time. |
omit : |
|
comp_alarms : |
List to be returned |
resolve_tzid : |
Callback for resolving timezones |
user_data : |
Data to be passed to the resolve_tzid callback |
default_timezone : |
The timezone used to resolve DATE and floating DATE-TIME values. |
| Returns : | the number of elements it added to the list. |
icaltimezone* e_cal_util_resolve_tzid (const char *tzid,
gpointer data);
tzid : |
|
data : |
|
| Returns : |
char* e_cal_util_priority_to_string (int 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 : |
Priority value. |
| Returns : | a string representing the PRIORITY value. This value is a constant, so it should never be freed. |
int e_cal_util_priority_from_string (const char *string);
Converts a translated priority string to an iCalendar priority value.
string : |
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.
vcal_comp : |
A VCALENDAR component. |
icalcomp : |
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.
icalcomp : |
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.
icalcomp : |
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.
icalcomp : |
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.
icalcomp : |
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.
icalcomp : |
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.
icalcomp : |
An icalcomponent. |
| Returns : | TRUE if there are recurrence rules, 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.
icalcomp1 : |
An icalcomponent. |
icalcomp2 : |
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"
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.
icalcomp : |
A recurring icalcomponent |
rid : |
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
icalcomp : |
A (recurring) icalcomponent |
rid : |
The base RECURRENCE-ID to remove |
mod : |
How to interpret rid
|
| << e-cal-types | ECalView >> |