aboutsummaryrefslogtreecommitdiffstats
path: root/doc/devel/calendar/cal-util/evolution-cal-util-decl.txt
diff options
context:
space:
mode:
authorFederico Mena Quintero <federico@src.gnome.org>2000-08-15 07:59:13 +0800
committerFederico Mena Quintero <federico@src.gnome.org>2000-08-15 07:59:13 +0800
commitbf9f26b7733b298c31415734d6f41d30e9213b54 (patch)
treeaa80ed4f38f7c9876287dd6568986816c138f3a5 /doc/devel/calendar/cal-util/evolution-cal-util-decl.txt
parent1f10ac10737d23e1e2a1243b4baccb5839f02e5d (diff)
downloadgsoc2013-evolution-bf9f26b7733b298c31415734d6f41d30e9213b54.tar
gsoc2013-evolution-bf9f26b7733b298c31415734d6f41d30e9213b54.tar.gz
gsoc2013-evolution-bf9f26b7733b298c31415734d6f41d30e9213b54.tar.bz2
gsoc2013-evolution-bf9f26b7733b298c31415734d6f41d30e9213b54.tar.lz
gsoc2013-evolution-bf9f26b7733b298c31415734d6f41d30e9213b54.tar.xz
gsoc2013-evolution-bf9f26b7733b298c31415734d6f41d30e9213b54.tar.zst
gsoc2013-evolution-bf9f26b7733b298c31415734d6f41d30e9213b54.zip
Added the cal-util library to the documentation framework - Federico
svn path=/trunk/; revision=4839
Diffstat (limited to 'doc/devel/calendar/cal-util/evolution-cal-util-decl.txt')
-rw-r--r--doc/devel/calendar/cal-util/evolution-cal-util-decl.txt852
1 files changed, 852 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..eb108b868f
--- /dev/null
+++ b/doc/devel/calendar/cal-util/evolution-cal-util-decl.txt
@@ -0,0 +1,852 @@
+<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_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>CalComponentAlarm</NAME>
+</STRUCT>
+<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_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_get_exrule_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_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_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_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_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_get_pilot_id</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, unsigned long *pilot_id
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_pilot_id</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, unsigned long pilot_id
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_pilot_status</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, unsigned long *pilot_status
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_set_pilot_status</NAME>
+<RETURNS>void </RETURNS>
+CalComponent *comp, unsigned long pilot_status
+</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>
+<ENUM>
+<NAME>CalComponentAlarmAction</NAME>
+typedef enum {
+ CAL_COMPONENT_ALARM_NONE,
+ CAL_COMPONENT_ALARM_AUDIO,
+ CAL_COMPONENT_ALARM_DISPLAY,
+ CAL_COMPONENT_ALARM_EMAIL,
+ CAL_COMPONENT_ALARM_PROCEDURE,
+ CAL_COMPONENT_ALARM_UNKNOWN
+} CalComponentAlarmAction;
+</ENUM>
+<ENUM>
+<NAME>CalComponentAlarmTriggerType</NAME>
+typedef enum {
+ CAL_COMPONENT_ALARM_TRIGGER_RELATIVE,
+ CAL_COMPONENT_ALARM_TRIGGER_ABSOLUTE
+} CalComponentAlarmTriggerType;
+</ENUM>
+<ENUM>
+<NAME>CalComponentAlarmTriggerRelated</NAME>
+typedef enum {
+ CAL_COMPONENT_ALARM_TRIGGER_RELATED_START,
+ CAL_COMPONENT_ALARM_TRIGGER_RELATED_END
+} CalComponentAlarmTriggerRelated;
+</ENUM>
+<TYPEDEF>
+<NAME>CalComponentAlarmTrigger</NAME>
+typedef struct {
+ CalComponentAlarmTriggerType type;
+
+ union {
+ struct {
+ struct icaldurationtype duration;
+ CalComponentAlarmTriggerRelated related;
+ } relative;
+
+ struct icaltimetype absolute;
+ } u;
+} CalComponentAlarmTrigger;
+</TYPEDEF>
+<FUNCTION>
+<NAME>cal_component_get_first_alarm</NAME>
+<RETURNS>CalComponentAlarm *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_get_next_alarm</NAME>
+<RETURNS>CalComponentAlarm *</RETURNS>
+CalComponent *comp
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_free</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_action</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalComponentAlarmAction *action
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_set_action</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalComponentAlarmAction action
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_get_trigger</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalComponentAlarmTrigger **trigger
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_set_trigger</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarm *alarm, CalComponentAlarmTrigger *trigger
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_component_alarm_free_trigger</NAME>
+<RETURNS>void </RETURNS>
+CalComponentAlarmTrigger *trigger
+</FUNCTION>
+<ENUM>
+<NAME>CalRecurType</NAME>
+typedef enum {
+ CAL_RECUR_YEARLY,
+ CAL_RECUR_MONTHLY,
+ CAL_RECUR_WEEKLY,
+ CAL_RECUR_DAILY,
+ CAL_RECUR_HOURLY,
+ CAL_RECUR_MINUTELY,
+ CAL_RECUR_SECONDLY
+} CalRecurType;
+</ENUM>
+<TYPEDEF>
+<NAME>CalRecurrence</NAME>
+typedef struct {
+ CalRecurType type;
+
+ int interval;
+
+ /* Specifies the end of the recurrence. No occurrences are generated
+ after this date. If it is 0, the event recurs forever. */
+ time_t enddate;
+
+ /* WKST property - the week start day: 0 = Monday to 6 = Sunday. */
+ gint week_start_day;
+
+
+ /* NOTE: I've used GList's here, but it doesn't matter if we use
+ other data structures like arrays. The code should be easy to
+ change. So long as it is easy to see if the modifier is set. */
+
+ /* For BYMONTH modifier. A list of GINT_TO_POINTERs, 0-11. */
+ GList *bymonth;
+
+ /* For BYWEEKNO modifier. A list of GINT_TO_POINTERs, [+-]1-53. */
+ GList *byweekno;
+
+ /* For BYYEARDAY modifier. A list of GINT_TO_POINTERs, [+-]1-366. */
+ GList *byyearday;
+
+ /* For BYMONTHDAY modifier. A list of GINT_TO_POINTERs, [+-]1-31. */
+ GList *bymonthday;
+
+ /* For BYDAY modifier. A list of GINT_TO_POINTERs, in pairs.
+ The first of each pair is the weekday, 0 = Monday to 6 = Sunday.
+ The second of each pair is the week number [+-]0-53. */
+ GList *byday;
+
+ /* For BYHOUR modifier. A list of GINT_TO_POINTERs, 0-23. */
+ GList *byhour;
+
+ /* For BYMINUTE modifier. A list of GINT_TO_POINTERs, 0-59. */
+ GList *byminute;
+
+ /* For BYSECOND modifier. A list of GINT_TO_POINTERs, 0-60. */
+ GList *bysecond;
+
+ /* For BYSETPOS modifier. A list of GINT_TO_POINTERs, +ve or -ve. */
+ GList *bysetpos;
+} CalRecurrence;
+</TYPEDEF>
+<STRUCT>
+<NAME>CalObjTime</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>CalObjTime</NAME>
+struct CalObjTime {
+ guint16 year;
+ guint8 month; /* 0 - 11 */
+ guint8 day; /* 1 - 31 */
+ guint8 hour; /* 0 - 23 */
+ guint8 minute; /* 0 - 59 */
+ guint8 second; /* 0 - 59 (maybe 60 for leap second) */
+};
+</STRUCT>
+<USER_FUNCTION>
+<NAME>CalRecurInstanceFn</NAME>
+<RETURNS>gboolean </RETURNS>
+CalComponent *comp,
+ time_t instance_start,
+ time_t instace_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>
+<FUNCTION>
+<NAME>cal_recur_from_icalrecurrencetype</NAME>
+<RETURNS>CalRecurrence *</RETURNS>
+struct icalrecurrencetype *ir
+</FUNCTION>
+<FUNCTION>
+<NAME>cal_recur_free</NAME>
+<RETURNS>void </RETURNS>
+CalRecurrence *r
+</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>
+<TYPEDEF>
+<NAME>CalAlarmInstance</NAME>
+typedef struct {
+ char *uid; /* UID of object */
+#if 0
+ enum AlarmType type; /* Type of alarm */
+#endif
+ time_t trigger; /* Alarm trigger time */
+ time_t occur; /* Occurrence time */
+} CalAlarmInstance;
+</TYPEDEF>
+<FUNCTION>
+<NAME>cal_alarm_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>time_from_icaltimetype</NAME>
+<RETURNS>time_t </RETURNS>
+struct icaltimetype itt
+</FUNCTION>
+<FUNCTION>
+<NAME>time_from_isodate</NAME>
+<RETURNS>time_t </RETURNS>
+char *str
+</FUNCTION>
+<FUNCTION>
+<NAME>time_from_start_duration</NAME>
+<RETURNS>time_t </RETURNS>
+time_t start, char *duration
+</FUNCTION>
+<FUNCTION>
+<NAME>isodate_from_time_t</NAME>
+<RETURNS>char *</RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>get_time_t_hour</NAME>
+<RETURNS>int </RETURNS>
+time_t t
+</FUNCTION>
+<FUNCTION>
+<NAME>isodiff_to_secs</NAME>
+<RETURNS>int </RETURNS>
+char *str
+</FUNCTION>
+<FUNCTION>
+<NAME>isodiff_from_secs</NAME>
+<RETURNS>char *</RETURNS>
+int secs
+</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>format_simple_hour</NAME>
+<RETURNS>char *</RETURNS>
+int hour, int use_am_pm
+</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_day_hour</NAME>
+<RETURNS>time_t </RETURNS>
+time_t t, int hour
+</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>parse_date</NAME>
+<RETURNS>time_t </RETURNS>
+char *str
+</FUNCTION>
+<FUNCTION>
+<NAME>print_time_t</NAME>
+<RETURNS>void </RETURNS>
+time_t t
+</FUNCTION>