aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@src.gnome.org>2001-05-16 03:34:22 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2001-05-16 03:34:22 +0800
commit6ed6055392bd305b99ab52179911d66f68734eb6 (patch)
tree255ae802e23624b9a66b0df8709202fdb3ca8a15
parentedd22b7ca188e7f0820ba34fbbfc2c8b90875a0d (diff)
downloadgsoc2013-evolution-6ed6055392bd305b99ab52179911d66f68734eb6.tar
gsoc2013-evolution-6ed6055392bd305b99ab52179911d66f68734eb6.tar.gz
gsoc2013-evolution-6ed6055392bd305b99ab52179911d66f68734eb6.tar.bz2
gsoc2013-evolution-6ed6055392bd305b99ab52179911d66f68734eb6.tar.lz
gsoc2013-evolution-6ed6055392bd305b99ab52179911d66f68734eb6.tar.xz
gsoc2013-evolution-6ed6055392bd305b99ab52179911d66f68734eb6.tar.zst
gsoc2013-evolution-6ed6055392bd305b99ab52179911d66f68734eb6.zip
yes, I am a dumbass
svn path=/trunk/; revision=9826
-rw-r--r--doc/devel/calendar/cal-util/evolution-cal-util-decl.txt791
-rw-r--r--help/devel/calendar/cal-util/evolution-cal-util-decl.txt791
2 files changed, 1582 insertions, 0 deletions
diff --git a/doc/devel/calendar/cal-util/evolution-cal-util-decl.txt b/doc/devel/calendar/cal-util/evolution-cal-util-decl.txt
new file mode 100644
index 0000000000..6f6994d8c4
--- /dev/null
+++ b/doc/devel/calendar/cal-util/evolution-cal-util-decl.txt
@@ -0,0 +1,791 @@
+<MACRO>
+<NAME>CAL_COMPONENT_TYPE</NAME>
+#define CAL_COMPONENT_TYPE (cal_component_get_type ())
+</MACRO>
+<MACRO>
+<NAME>CAL_COMPONENT</NAME>
+#define CAL_COMPONENT(obj) (GTK_CHECK_CAST ((obj), CAL_COMPONENT_TYPE, CalComponent))
+</MACRO>
+<MACRO>
+<NAME>CAL_COMPONENT_CLASS</NAME>
+#define CAL_COMPONENT_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), CAL_COMPONENT_TYPE, \
+ CalComponentClass))
+</MACRO>
+<MACRO>
+<NAME>IS_CAL_COMPONENT</NAME>
+#define IS_CAL_COMPONENT(obj) (GTK_CHECK_TYPE ((obj), CAL_COMPONENT_TYPE))
+</MACRO>
+<MACRO>
+<NAME>IS_CAL_COMPONENT_CLASS</NAME>
+#define IS_CAL_COMPONENT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), CAL_COMPONENT_TYPE))
+</MACRO>
+<ENUM>
+<NAME>CalComponentVType</NAME>
+typedef enum {
+ CAL_COMPONENT_NO_TYPE,
+ CAL_COMPONENT_EVENT,
+ CAL_COMPONENT_TODO,
+ CAL_COMPONENT_JOURNAL,
+ CAL_COMPONENT_FREEBUSY,
+ CAL_COMPONENT_TIMEZONE
+} CalComponentVType;
+</ENUM>
+<ENUM>
+<NAME>CalComponentField</NAME>
+typedef enum {
+ CAL_COMPONENT_FIELD_CATEGORIES, /* concatenation of the categories list */
+ CAL_COMPONENT_FIELD_CLASSIFICATION,
+ CAL_COMPONENT_FIELD_COMPLETED,
+ CAL_COMPONENT_FIELD_DTEND,
+ CAL_COMPONENT_FIELD_DTSTART,
+ CAL_COMPONENT_FIELD_DUE,
+ CAL_COMPONENT_FIELD_GEO,
+ CAL_COMPONENT_FIELD_PERCENT,
+ CAL_COMPONENT_FIELD_PRIORITY,
+ CAL_COMPONENT_FIELD_SUMMARY,
+ CAL_COMPONENT_FIELD_TRANSPARENCY,
+ CAL_COMPONENT_FIELD_URL,
+ CAL_COMPONENT_FIELD_HAS_ALARMS, /* not a real field */
+ CAL_COMPONENT_FIELD_ICON, /* not a real field */
+ CAL_COMPONENT_FIELD_COMPLETE, /* not a real field */
+ CAL_COMPONENT_FIELD_RECURRING, /* not a real field */
+ CAL_COMPONENT_FIELD_OVERDUE, /* not a real field */
+ CAL_COMPONENT_FIELD_COLOR, /* not a real field */
+ CAL_COMPONENT_FIELD_STATUS,
+ CAL_COMPONENT_FIELD_NUM_FIELDS
+} CalComponentField;
+</ENUM>
+<ENUM>
+<NAME>CalComponentClassification</NAME>
+typedef enum {
+ CAL_COMPONENT_CLASS_NONE,
+ CAL_COMPONENT_CLASS_PUBLIC,
+ CAL_COMPONENT_CLASS_PRIVATE,
+ CAL_COMPONENT_CLASS_CONFIDENTIAL,
+ CAL_COMPONENT_CLASS_UNKNOWN
+} CalComponentClassification;
+</ENUM>
+<TYPEDEF>
+<NAME>CalComponentDateTime</NAME>
+typedef struct {
+ /* Actual date/time value */
+ struct icaltimetype *value;
+
+ /* Timezone ID */
+ const char *tzid;
+} CalComponentDateTime;
+</TYPEDEF>
+<ENUM>
+<NAME>CalComponentPeriodType</NAME>
+typedef enum {
+ CAL_COMPONENT_PERIOD_DATETIME,
+ CAL_COMPONENT_PERIOD_DURATION
+} CalComponentPeriodType;
+</ENUM>
+<TYPEDEF>
+<NAME>CalComponentPeriod</NAME>
+typedef struct {
+ CalComponentPeriodType type;
+
+ struct icaltimetype start;
+
+ union {
+ struct icaltimetype end;
+ struct icaldurationtype duration;
+ } u;
+} CalComponentPeriod;
+</TYPEDEF>
+<TYPEDEF>
+<NAME>CalComponentText</NAME>
+typedef struct {
+ /* Description string */
+ const char *value;
+
+ /* Alternate representation URI */
+ const char *altrep;
+} CalComponentText;
+</TYPEDEF>
+<ENUM>
+<NAME>CalComponentTransparency</NAME>
+typedef enum {
+ CAL_COMPONENT_TRANSP_NONE,
+ CAL_COMPONENT_TRANSP_TRANSPARENT,
+ CAL_COMPONENT_TRANSP_OPAQUE,
+ CAL_COMPONENT_TRANSP_UNKNOWN
+} CalComponentTransparency;
+</ENUM>
+<STRUCT>
+<NAME>CalComponent</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>CalComponentClass</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>CalComponentPrivate</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>CalComponent</NAME>
+struct CalComponent {
+ GtkObject object;
+
+ /* Private data */
+ CalComponentPrivate *priv;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>cal_component_get_type</NAME>
+<RETURNS>GtkType </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_gen_uid</NAME>
+<RETURNS>char *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_new</NAME>
+<RETURNS>CalComponent *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_clone</NAME>
+<RETURNS>CalComponent *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_new_vtype</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentVType type
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_icalcomponent</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp, icalcomponent *icalcomp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_icalcomponent</NAME>
+<RETURNS>icalcomponent *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_vtype</NAME>
+<RETURNS>CalComponentVType </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_as_string</NAME>
+<RETURNS>char *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_commit_sequence</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_uid</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char **uid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_uid</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *uid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_categories</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char **categories
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_categories</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *categories
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_categories_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **categ_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_categories_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *categ_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_classification</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentClassification *classif
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_classification</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentClassification classif
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_comment_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_comment_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_completed</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype **t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_completed</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_created</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype **t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_created</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_description_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_description_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_dtend</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_dtend</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_dtstamp</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_dtstamp</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_dtstart</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_dtstart</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_due</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_due</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_exdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **exdate_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_exdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *exdate_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_exdates</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_exrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_exrule_property_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_exrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_exrules</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_exceptions</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_geo</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icalgeotype **geo
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_geo</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icalgeotype *geo
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_last_modified</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype **t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_last_modified</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_percent</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int **percent
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_percent</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int *percent
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_priority</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int **priority
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_priority</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int *priority
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_rdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **period_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_rdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *period_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_rdates</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_rrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_rrule_property_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_rrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_rrules</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_recurrences</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_sequence</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int **sequence
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_sequence</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int *sequence
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_status</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, icalproperty_status *status
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_status</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, icalproperty_status status
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_summary</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentText *summary
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_summary</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentText *summary
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_transparency</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentTransparency *transp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_transparency</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentTransparency transp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_url</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char **url
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_url</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *url
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_event_dates_match</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp1, CalComponent *comp2
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_categories_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *categ_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_datetime</NAME>
+<RETURNS>void </RETURNS>
+CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_exdate_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *exdate_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_geo</NAME>
+<RETURNS>void </RETURNS>
+struct icalgeotype *geo
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_icaltimetype</NAME>
+<RETURNS>void </RETURNS>
+struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_percent</NAME>
+<RETURNS>void </RETURNS>
+int *percent
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_priority</NAME>
+<RETURNS>void </RETURNS>
+int *priority
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_period_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *period_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_recur_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_sequence</NAME>
+<RETURNS>void </RETURNS>
+int *sequence
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_text_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *text_list
+</FUNCTION>
+<STRUCT>
+<NAME>CalComponentAlarm</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>CalAlarmInstance</NAME>
+typedef struct {
+ /* UID of the alarm that triggered */
+ const char *auid;
+
+ /* Trigger time, i.e. "5 minutes before the appointment" */
+ time_t trigger;
+
+ /* Actual event occurrence to which this trigger corresponds */
+ time_t occur;
+} CalAlarmInstance;
+</TYPEDEF>
+<TYPEDEF>
+<NAME>CalComponentAlarms</NAME>
+typedef struct {
+ /* The actual component */
+ CalComponent *comp;
+
+ /* List of CalAlarmInstance structures */
+ GSList *alarms;
+} CalComponentAlarms;
+</TYPEDEF>
+<ENUM>
+<NAME>CalAlarmAction</NAME>
+typedef enum {
+ CAL_ALARM_NONE,
+ CAL_ALARM_AUDIO,
+ CAL_ALARM_DISPLAY,
+ CAL_ALARM_EMAIL,
+ CAL_ALARM_PROCEDURE,
+ CAL_ALARM_UNKNOWN
+} CalAlarmAction;
+</ENUM>
+<ENUM>
+<NAME>CalAlarmTriggerType</NAME>
+typedef enum {
+ CAL_ALARM_TRIGGER_NONE,
+ CAL_ALARM_TRIGGER_RELATIVE_START,
+ CAL_ALARM_TRIGGER_RELATIVE_END,
+ CAL_ALARM_TRIGGER_ABSOLUTE
+} CalAlarmTriggerType;
+</ENUM>
+<TYPEDEF>
+<NAME>CalAlarmTrigger</NAME>
+typedef struct {
+ CalAlarmTriggerType type;
+
+ union {
+ struct icaldurationtype rel_duration;
+ struct icaltimetype abs_time;
+ } u;
+} CalAlarmTrigger;
+</TYPEDEF>
+<FUNCTION>
+<NAME>cal_component_has_alarms</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_add_alarm</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentAlarm *alarm
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_remove_alarm</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *auid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_alarm_uids</NAME>
+<RETURNS>GList *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_alarm</NAME>
+<RETURNS>CalComponentAlarm *</RETURNS>
+CalComponent *comp, const char *auid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_alarm_uids</NAME>
+<RETURNS>void </RETURNS>
+GList *alarm_uids
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarms_free</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarms *alarms
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_new</NAME>
+<RETURNS>CalComponentAlarm *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_uid</NAME>
+<RETURNS>const char *</RETURNS>
+CalComponentAlarm *alarm
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_action</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmAction *action
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_set_action</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmAction action
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_trigger</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmTrigger *trigger
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_set_trigger</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmTrigger trigger
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_free</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm
+</FUNCTION>
+<USER_FUNCTION>
+<NAME>CalRecurInstanceFn</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp,
+ time_t instance_start,
+ time_t instance_end,
+ gpointer data
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>cal_recur_generate_instances</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp,time_t start,time_t end,CalRecurInstanceFn cb,gpointer cb_data
+</FUNCTION>
+<TYPEDEF>
+<NAME>CalObjInstance</NAME>
+typedef struct {
+ char *uid; /* UID of the object */
+ time_t start; /* Start time of instance */
+ time_t end; /* End time of instance */
+} CalObjInstance;
+</TYPEDEF>
+<FUNCTION>
+<NAME>cal_obj_instance_list_free</NAME>
+<RETURNS>void </RETURNS>
+GList *list
+</FUNCTION>
+<ENUM>
+<NAME>CalObjType</NAME>
+typedef enum {
+ CALOBJ_TYPE_EVENT = 1 << 0,
+ CALOBJ_TYPE_TODO = 1 << 1,
+ CALOBJ_TYPE_JOURNAL = 1 << 2,
+ CALOBJ_TYPE_ANY = 0x07
+} CalObjType;
+</ENUM>
+<FUNCTION>
+<NAME>cal_obj_uid_list_free</NAME>
+<RETURNS>void </RETURNS>
+GList *list
+</FUNCTION>
+<FUNCTION>
+<NAME>isodate_from_time_t</NAME>
+<RETURNS>char *</RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_from_isodate</NAME>
+<RETURNS>time_t </RETURNS>
+const char *str
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_minutes</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int minutes
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_day</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int days
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_week</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int weeks
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_month</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int months
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_year</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int years
+</FUNCTION>
+<FUNCTION>
+<NAME>time_days_in_month</NAME>
+<RETURNS>int </RETURNS>
+int year, int month
+</FUNCTION>
+<FUNCTION>
+<NAME>time_from_day</NAME>
+<RETURNS>time_t </RETURNS>
+int year, int month, int day
+</FUNCTION>
+<FUNCTION>
+<NAME>time_year_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_year_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_month_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_month_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_week_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_week_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_day_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_day_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>print_time_t</NAME>
+<RETURNS>void </RETURNS>
+time_t t
+</FUNCTION>
diff --git a/help/devel/calendar/cal-util/evolution-cal-util-decl.txt b/help/devel/calendar/cal-util/evolution-cal-util-decl.txt
new file mode 100644
index 0000000000..6f6994d8c4
--- /dev/null
+++ b/help/devel/calendar/cal-util/evolution-cal-util-decl.txt
@@ -0,0 +1,791 @@
+<MACRO>
+<NAME>CAL_COMPONENT_TYPE</NAME>
+#define CAL_COMPONENT_TYPE (cal_component_get_type ())
+</MACRO>
+<MACRO>
+<NAME>CAL_COMPONENT</NAME>
+#define CAL_COMPONENT(obj) (GTK_CHECK_CAST ((obj), CAL_COMPONENT_TYPE, CalComponent))
+</MACRO>
+<MACRO>
+<NAME>CAL_COMPONENT_CLASS</NAME>
+#define CAL_COMPONENT_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), CAL_COMPONENT_TYPE, \
+ CalComponentClass))
+</MACRO>
+<MACRO>
+<NAME>IS_CAL_COMPONENT</NAME>
+#define IS_CAL_COMPONENT(obj) (GTK_CHECK_TYPE ((obj), CAL_COMPONENT_TYPE))
+</MACRO>
+<MACRO>
+<NAME>IS_CAL_COMPONENT_CLASS</NAME>
+#define IS_CAL_COMPONENT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), CAL_COMPONENT_TYPE))
+</MACRO>
+<ENUM>
+<NAME>CalComponentVType</NAME>
+typedef enum {
+ CAL_COMPONENT_NO_TYPE,
+ CAL_COMPONENT_EVENT,
+ CAL_COMPONENT_TODO,
+ CAL_COMPONENT_JOURNAL,
+ CAL_COMPONENT_FREEBUSY,
+ CAL_COMPONENT_TIMEZONE
+} CalComponentVType;
+</ENUM>
+<ENUM>
+<NAME>CalComponentField</NAME>
+typedef enum {
+ CAL_COMPONENT_FIELD_CATEGORIES, /* concatenation of the categories list */
+ CAL_COMPONENT_FIELD_CLASSIFICATION,
+ CAL_COMPONENT_FIELD_COMPLETED,
+ CAL_COMPONENT_FIELD_DTEND,
+ CAL_COMPONENT_FIELD_DTSTART,
+ CAL_COMPONENT_FIELD_DUE,
+ CAL_COMPONENT_FIELD_GEO,
+ CAL_COMPONENT_FIELD_PERCENT,
+ CAL_COMPONENT_FIELD_PRIORITY,
+ CAL_COMPONENT_FIELD_SUMMARY,
+ CAL_COMPONENT_FIELD_TRANSPARENCY,
+ CAL_COMPONENT_FIELD_URL,
+ CAL_COMPONENT_FIELD_HAS_ALARMS, /* not a real field */
+ CAL_COMPONENT_FIELD_ICON, /* not a real field */
+ CAL_COMPONENT_FIELD_COMPLETE, /* not a real field */
+ CAL_COMPONENT_FIELD_RECURRING, /* not a real field */
+ CAL_COMPONENT_FIELD_OVERDUE, /* not a real field */
+ CAL_COMPONENT_FIELD_COLOR, /* not a real field */
+ CAL_COMPONENT_FIELD_STATUS,
+ CAL_COMPONENT_FIELD_NUM_FIELDS
+} CalComponentField;
+</ENUM>
+<ENUM>
+<NAME>CalComponentClassification</NAME>
+typedef enum {
+ CAL_COMPONENT_CLASS_NONE,
+ CAL_COMPONENT_CLASS_PUBLIC,
+ CAL_COMPONENT_CLASS_PRIVATE,
+ CAL_COMPONENT_CLASS_CONFIDENTIAL,
+ CAL_COMPONENT_CLASS_UNKNOWN
+} CalComponentClassification;
+</ENUM>
+<TYPEDEF>
+<NAME>CalComponentDateTime</NAME>
+typedef struct {
+ /* Actual date/time value */
+ struct icaltimetype *value;
+
+ /* Timezone ID */
+ const char *tzid;
+} CalComponentDateTime;
+</TYPEDEF>
+<ENUM>
+<NAME>CalComponentPeriodType</NAME>
+typedef enum {
+ CAL_COMPONENT_PERIOD_DATETIME,
+ CAL_COMPONENT_PERIOD_DURATION
+} CalComponentPeriodType;
+</ENUM>
+<TYPEDEF>
+<NAME>CalComponentPeriod</NAME>
+typedef struct {
+ CalComponentPeriodType type;
+
+ struct icaltimetype start;
+
+ union {
+ struct icaltimetype end;
+ struct icaldurationtype duration;
+ } u;
+} CalComponentPeriod;
+</TYPEDEF>
+<TYPEDEF>
+<NAME>CalComponentText</NAME>
+typedef struct {
+ /* Description string */
+ const char *value;
+
+ /* Alternate representation URI */
+ const char *altrep;
+} CalComponentText;
+</TYPEDEF>
+<ENUM>
+<NAME>CalComponentTransparency</NAME>
+typedef enum {
+ CAL_COMPONENT_TRANSP_NONE,
+ CAL_COMPONENT_TRANSP_TRANSPARENT,
+ CAL_COMPONENT_TRANSP_OPAQUE,
+ CAL_COMPONENT_TRANSP_UNKNOWN
+} CalComponentTransparency;
+</ENUM>
+<STRUCT>
+<NAME>CalComponent</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>CalComponentClass</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>CalComponentPrivate</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>CalComponent</NAME>
+struct CalComponent {
+ GtkObject object;
+
+ /* Private data */
+ CalComponentPrivate *priv;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>cal_component_get_type</NAME>
+<RETURNS>GtkType </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_gen_uid</NAME>
+<RETURNS>char *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_new</NAME>
+<RETURNS>CalComponent *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_clone</NAME>
+<RETURNS>CalComponent *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_new_vtype</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentVType type
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_icalcomponent</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp, icalcomponent *icalcomp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_icalcomponent</NAME>
+<RETURNS>icalcomponent *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_vtype</NAME>
+<RETURNS>CalComponentVType </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_as_string</NAME>
+<RETURNS>char *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_commit_sequence</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_uid</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char **uid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_uid</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *uid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_categories</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char **categories
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_categories</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *categories
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_categories_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **categ_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_categories_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *categ_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_classification</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentClassification *classif
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_classification</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentClassification classif
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_comment_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_comment_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_completed</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype **t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_completed</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_created</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype **t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_created</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_description_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_description_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *text_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_dtend</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_dtend</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_dtstamp</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_dtstamp</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_dtstart</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_dtstart</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_due</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_due</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_exdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **exdate_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_exdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *exdate_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_exdates</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_exrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_exrule_property_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_exrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_exrules</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_exceptions</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_geo</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icalgeotype **geo
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_geo</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icalgeotype *geo
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_last_modified</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype **t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_last_modified</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_percent</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int **percent
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_percent</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int *percent
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_priority</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int **priority
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_priority</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int *priority
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_rdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **period_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_rdate_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *period_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_rdates</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_rrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_rrule_property_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList **recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_rrule_list</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, GSList *recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_rrules</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_has_recurrences</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_sequence</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int **sequence
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_sequence</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, int *sequence
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_status</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, icalproperty_status *status
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_status</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, icalproperty_status status
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_summary</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentText *summary
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_summary</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentText *summary
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_transparency</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentTransparency *transp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_transparency</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentTransparency transp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_url</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char **url
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_url</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *url
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_event_dates_match</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp1, CalComponent *comp2
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_categories_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *categ_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_datetime</NAME>
+<RETURNS>void </RETURNS>
+CalComponentDateTime *dt
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_exdate_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *exdate_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_geo</NAME>
+<RETURNS>void </RETURNS>
+struct icalgeotype *geo
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_icaltimetype</NAME>
+<RETURNS>void </RETURNS>
+struct icaltimetype *t
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_percent</NAME>
+<RETURNS>void </RETURNS>
+int *percent
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_priority</NAME>
+<RETURNS>void </RETURNS>
+int *priority
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_period_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *period_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_recur_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *recur_list
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_sequence</NAME>
+<RETURNS>void </RETURNS>
+int *sequence
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_text_list</NAME>
+<RETURNS>void </RETURNS>
+GSList *text_list
+</FUNCTION>
+<STRUCT>
+<NAME>CalComponentAlarm</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>CalAlarmInstance</NAME>
+typedef struct {
+ /* UID of the alarm that triggered */
+ const char *auid;
+
+ /* Trigger time, i.e. "5 minutes before the appointment" */
+ time_t trigger;
+
+ /* Actual event occurrence to which this trigger corresponds */
+ time_t occur;
+} CalAlarmInstance;
+</TYPEDEF>
+<TYPEDEF>
+<NAME>CalComponentAlarms</NAME>
+typedef struct {
+ /* The actual component */
+ CalComponent *comp;
+
+ /* List of CalAlarmInstance structures */
+ GSList *alarms;
+} CalComponentAlarms;
+</TYPEDEF>
+<ENUM>
+<NAME>CalAlarmAction</NAME>
+typedef enum {
+ CAL_ALARM_NONE,
+ CAL_ALARM_AUDIO,
+ CAL_ALARM_DISPLAY,
+ CAL_ALARM_EMAIL,
+ CAL_ALARM_PROCEDURE,
+ CAL_ALARM_UNKNOWN
+} CalAlarmAction;
+</ENUM>
+<ENUM>
+<NAME>CalAlarmTriggerType</NAME>
+typedef enum {
+ CAL_ALARM_TRIGGER_NONE,
+ CAL_ALARM_TRIGGER_RELATIVE_START,
+ CAL_ALARM_TRIGGER_RELATIVE_END,
+ CAL_ALARM_TRIGGER_ABSOLUTE
+} CalAlarmTriggerType;
+</ENUM>
+<TYPEDEF>
+<NAME>CalAlarmTrigger</NAME>
+typedef struct {
+ CalAlarmTriggerType type;
+
+ union {
+ struct icaldurationtype rel_duration;
+ struct icaltimetype abs_time;
+ } u;
+} CalAlarmTrigger;
+</TYPEDEF>
+<FUNCTION>
+<NAME>cal_component_has_alarms</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_add_alarm</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, CalComponentAlarm *alarm
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_remove_alarm</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, const char *auid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_alarm_uids</NAME>
+<RETURNS>GList *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_alarm</NAME>
+<RETURNS>CalComponentAlarm *</RETURNS>
+CalComponent *comp, const char *auid
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_free_alarm_uids</NAME>
+<RETURNS>void </RETURNS>
+GList *alarm_uids
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarms_free</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarms *alarms
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_new</NAME>
+<RETURNS>CalComponentAlarm *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_uid</NAME>
+<RETURNS>const char *</RETURNS>
+CalComponentAlarm *alarm
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_action</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmAction *action
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_set_action</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmAction action
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_trigger</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmTrigger *trigger
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_set_trigger</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalAlarmTrigger trigger
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_free</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm
+</FUNCTION>
+<USER_FUNCTION>
+<NAME>CalRecurInstanceFn</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp,
+ time_t instance_start,
+ time_t instance_end,
+ gpointer data
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>cal_recur_generate_instances</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp,time_t start,time_t end,CalRecurInstanceFn cb,gpointer cb_data
+</FUNCTION>
+<TYPEDEF>
+<NAME>CalObjInstance</NAME>
+typedef struct {
+ char *uid; /* UID of the object */
+ time_t start; /* Start time of instance */
+ time_t end; /* End time of instance */
+} CalObjInstance;
+</TYPEDEF>
+<FUNCTION>
+<NAME>cal_obj_instance_list_free</NAME>
+<RETURNS>void </RETURNS>
+GList *list
+</FUNCTION>
+<ENUM>
+<NAME>CalObjType</NAME>
+typedef enum {
+ CALOBJ_TYPE_EVENT = 1 << 0,
+ CALOBJ_TYPE_TODO = 1 << 1,
+ CALOBJ_TYPE_JOURNAL = 1 << 2,
+ CALOBJ_TYPE_ANY = 0x07
+} CalObjType;
+</ENUM>
+<FUNCTION>
+<NAME>cal_obj_uid_list_free</NAME>
+<RETURNS>void </RETURNS>
+GList *list
+</FUNCTION>
+<FUNCTION>
+<NAME>isodate_from_time_t</NAME>
+<RETURNS>char *</RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_from_isodate</NAME>
+<RETURNS>time_t </RETURNS>
+const char *str
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_minutes</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int minutes
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_day</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int days
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_week</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int weeks
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_month</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int months
+</FUNCTION>
+<FUNCTION>
+<NAME>time_add_year</NAME>
+<RETURNS>time_t </RETURNS>
+time_t time, int years
+</FUNCTION>
+<FUNCTION>
+<NAME>time_days_in_month</NAME>
+<RETURNS>int </RETURNS>
+int year, int month
+</FUNCTION>
+<FUNCTION>
+<NAME>time_from_day</NAME>
+<RETURNS>time_t </RETURNS>
+int year, int month, int day
+</FUNCTION>
+<FUNCTION>
+<NAME>time_year_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_year_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_month_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_month_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_week_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_week_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_day_begin</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>time_day_end</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>print_time_t</NAME>
+<RETURNS>void </RETURNS>
+time_t t
+</FUNCTION>