<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_COMPONENT, /* 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>
<ENUM>
<NAME>CalComponentRangeType</NAME>
typedef enum {
CAL_COMPONENT_RANGE_SINGLE,
CAL_COMPONENT_RANGE_THISPRIOR,
CAL_COMPONENT_RANGE_THISFUTURE,
} CalComponentRangeType;
</ENUM>
<TYPEDEF>
<NAME>CalComponentRange</NAME>
typedef struct {
CalComponentRangeType type;
CalComponentDateTime *datetime;
} CalComponentRange;
</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>
<ENUM>
<NAME>CalComponentCUType</NAME>
typedef enum {
CAL_COMPONENT_CUTYPE_INDIVIDUAL,
CAL_COMPONENT_CUTYPE_GROUP,
CAL_COMPONENT_CUTYPE_RESOURCE,
CAL_COMPONENT_CUTYPE_ROOM,
CAL_COMPONENT_CUTYPE_UNKNOWN
} CalComponentCUType;
</ENUM>
<ENUM>
<NAME>CalComponentRole</NAME>
typedef enum {
CAL_COMPONENT_ROLE_CHAIR,
CAL_COMPONENT_ROLE_REQUIRED,
CAL_COMPONENT_ROLE_OPTIONAL,
CAL_COMPONENT_ROLE_NON,
CAL_COMPONENT_ROLE_UNKNOWN
} CalComponentRole;
</ENUM>
<ENUM>
<NAME>CalComponentPartStat</NAME>
typedef enum {
CAL_COMPONENT_PARTSTAT_NEEDSACTION,
CAL_COMPONENT_PARTSTAT_ACCEPTED,
CAL_COMPONENT_PARTSTAT_DECLINED,
CAL_COMPONENT_PARTSTAT_TENTATIVE,
CAL_COMPONENT_PARTSTAT_DELEGATED,
CAL_COMPONENT_PARTSTAT_COMPLETED,
CAL_COMPONENT_PARTSTAT_INPROCESS,
CAL_COMPONENT_PARTSTAT_UNKNOWN
} CalComponentPartStat;
</ENUM>
<TYPEDEF>
<NAME>CalComponentAttendee</NAME>
typedef struct {
const char *value;
const char *member;
CalComponentCUType cutype;
CalComponentRole role;
CalComponentPartStat status;
gboolean rsvp;
const char *delto;
const char *delfrom;
const char *sentby;
const char *cn;
const char *language;
} CalComponentAttendee;
</TYPEDEF>
<TYPEDEF>
<NAME>CalComponentOrganizer</NAME>
typedef struct {
const char *value;
const char *sentby;
const char *cn;
const char *language;
} CalComponentOrganizer;
</TYPEDEF>
<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_organizer</NAME>
<RETURNS>void </RETURNS>
CalComponent *comp, CalComponentOrganizer *organizer
</FUNCTION>
<FUNCTION>
<NAME>cal_component_set_organizer</NAME>
<RETURNS>void </RETURNS>
CalComponent *comp, CalComponentOrganizer *organizer
</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_recurid</NAME>
<RETURNS>void </RETURNS>
CalComponent *comp, CalComponentRange **recur_id
</FUNCTION>
<FUNCTION>
<NAME>cal_component_set_recurid</NAME>
<RETURNS>void </RETURNS>
CalComponent *comp, CalComponentRange *recur_id
</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_get_attendee_list</NAME>
<RETURNS>void </RETURNS>
CalComponent *comp, GSList **attendee_list
</FUNCTION>
<FUNCTION>
<NAME>cal_component_set_attendee_list</NAME>
<RETURNS>void </RETURNS>
CalComponent *comp, GSList *attendee_list
</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>
<FUNCTION>
<NAME>cal_component_free_attendee_list</NAME>
<RETURNS>void </RETURNS>
GSList *attendee_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_start;
time_t occur_end;
} 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>
<TYPEDEF>
<NAME>CalAlarmRepeat</NAME>
typedef struct {
/* Number of extra repetitions, zero for none */
int repetitions;
/* Interval between repetitions */
struct icaldurationtype duration;
} CalAlarmRepeat;
</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_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_clone</NAME>
<RETURNS>CalComponentAlarm *</RETURNS>
CalComponentAlarm *alarm
</FUNCTION>
<FUNCTION>
<NAME>cal_component_alarm_free</NAME>
<RETURNS>void </RETURNS>
CalComponentAlarm *alarm
</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_attach</NAME>
<RETURNS>void </RETURNS>
CalComponentAlarm *alarm, struct icalattachtype **attach
</FUNCTION>
<FUNCTION>
<NAME>cal_component_alarm_set_attach</NAME>
<RETURNS>void </RETURNS>
CalComponentAlarm *alarm, struct icalattachtype *attach
</FUNCTION>
<FUNCTION>
<NAME>cal_component_alarm_get_description</NAME>
<RETURNS>void </RETURNS>
CalComponentAlarm *alarm, CalComponentText *description
</FUNCTION>
<FUNCTION>
<NAME>cal_component_alarm_set_description</NAME>
<RETURNS>void </RETURNS>
CalComponentAlarm *alarm, CalComponentText *description
</FUNCTION>
<FUNCTION>
<NAME>cal_component_alarm_get_repeat</NAME>
<RETURNS>void </RETURNS>
CalComponentAlarm *alarm, CalAlarmRepeat *repeat
</FUNCTION>
<FUNCTION>
<NAME>cal_component_alarm_set_repeat</NAME>
<RETURNS>void </RETURNS>
CalComponentAlarm *alarm, CalAlarmRepeat repeat
</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>
<USER_FUNCTION>
<NAME>CalRecurInstanceFn</NAME>
<RETURNS>gboolean </RETURNS>
CalComponent *comp,
time_t instance_start,
time_t instance_end,
gpointer data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>CalRecurResolveTimezoneFn</NAME>
<RETURNS>icaltimezone *</RETURNS>
const char *tzid,
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,CalRecurResolveTimezoneFn tz_cb,gpointer tz_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>cal_util_new_top_level</NAME>
<RETURNS>icalcomponent *</RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>time_days_in_month</NAME>
<RETURNS>int </RETURNS>
int year, int month
</FUNCTION>
<FUNCTION>
<NAME>time_day_of_year</NAME>
<RETURNS>int </RETURNS>
int day, int month, int year
</FUNCTION>
<FUNCTION>
<NAME>time_day_of_week</NAME>
<RETURNS>int </RETURNS>
int day, int month, int year
</FUNCTION>
<FUNCTION>
<NAME>time_is_leap_year</NAME>
<RETURNS>gboolean </RETURNS>
int year
</FUNCTION>
<FUNCTION>
<NAME>time_leap_years_up_to</NAME>
<RETURNS>int </RETURNS>
int year
</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_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_year_begin</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_week_begin</NAME>
<RETURNS>time_t </RETURNS>
time_t t, int week_start_day
</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>time_add_day_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, int days, icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_add_week_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, int weeks, icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_add_month_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, int months, icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_year_begin_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_month_begin_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_week_begin_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, int week_start_day,icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_day_begin_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_day_end_with_zone</NAME>
<RETURNS>time_t </RETURNS>
time_t time, icaltimezone *zone
</FUNCTION>
<FUNCTION>
<NAME>time_to_gdate_with_zone</NAME>
<RETURNS>void </RETURNS>
GDate *date, time_t time, icaltimezone *zone
</FUNCTION>