CalComponent
RFC 2445 iCalendar component object.
The #CalComponent object provides a wrapper over the &libical;
functions for manipulating calendar components. #CalComponent
presents a GTK+-like interface to calendar components according to
RFC 2445.
While &libical; supports almost all of the features of the
iCalendar RFCs, applications are normally not interested in all
the mindless gunk that is there. Still, applications should do
their best not to drop extension fields from calendar components
or any other extra information they do not support (including
standard fields they are not interested in). The #CalComponent
object provides a wrapper over
icalcomponent structures from &libical;
so that no information in them will be lost even if the
application is not designed to handle it. Also, #CalComponent
provides a higher-level API to many of the &libical; operations so
as to make it less painful to deal with iCalendar components.
A #CalComponent object starts out empty. It must be initialized
from an existing icalcomponent structure
by using the cal_component_set_icalcomponent() function, or from a
completely new data by specifying the desired component type to
the cal_component_set_new_vtype() function.
#CalComponent will create an internal map of the properties in the
icalcomponent structure and then allow
random access to them via the #CalComponent API functions;
normally the &libical; API would have to be used by creating many
iterators and other unpleasant constructs. #CalComponent keeps
handles to the properties it scanned from the
icalcomponent and will let the parent
application modify them at any time without having to do any
iteration.
Eventually a #CalComponent may be turned into the RFC 2445 string
representation of an iCalendar component by using the
cal_component_get_as_string() function. Applications can then
transfer this interoperable
“Interoperable.” Heavens, I love that word.
string to other programs that deal with iCalendar.
Casts a #GtkObject to a #CalComponent.
@obj: A GTK+ object.
Calendar component types as defined by RFC 2445. These values can
be used to create a new calendar component by passing them to the
cal_component_set_new_vtype() function. They are also the return
value of the cal_component_get_vtype() function. The only time
the @CAL_COMPONENT_NO_TYPE value is used is when querying the
vtype of an uninitialized #CalComponent.
@CAL_COMPONENT_NO_TYPE:
@CAL_COMPONENT_EVENT:
@CAL_COMPONENT_TODO:
@CAL_COMPONENT_JOURNAL:
@CAL_COMPONENT_FREEBUSY:
@CAL_COMPONENT_TIMEZONE:
These values are used as identifiers for #ETable columns. These
are used by the calendar GUI code in &Evolution;.
@CAL_COMPONENT_FIELD_CATEGORIES:
@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:
@CAL_COMPONENT_FIELD_ICON:
@CAL_COMPONENT_FIELD_COMPLETE:
@CAL_COMPONENT_FIELD_RECURRING:
@CAL_COMPONENT_FIELD_OVERDUE:
@CAL_COMPONENT_FIELD_COLOR:
@CAL_COMPONENT_FIELD_STATUS:
@CAL_COMPONENT_FIELD_COMPONENT:
@CAL_COMPONENT_FIELD_NUM_FIELDS:
Values for the access classification property of a calendar
component.
@CAL_COMPONENT_CLASS_NONE:
@CAL_COMPONENT_CLASS_PUBLIC:
@CAL_COMPONENT_CLASS_PRIVATE:
@CAL_COMPONENT_CLASS_CONFIDENTIAL:
@CAL_COMPONENT_CLASS_UNKNOWN:
This structure defines a date and time value.
Defines how a period of time is specified.
@CAL_COMPONENT_PERIOD_DATETIME:
@CAL_COMPONENT_PERIOD_DURATION:
This structure defines a period of time.
This structure defines the value of a text property that may have
an alternate representation parameter.
@CAL_COMPONENT_TRANSP_NONE:
@CAL_COMPONENT_TRANSP_TRANSPARENT:
@CAL_COMPONENT_TRANSP_OPAQUE:
@CAL_COMPONENT_TRANSP_UNKNOWN:
@Returns:
@Returns:
@comp:
@Returns:
@comp:
@type:
@comp:
@icalcomp:
@Returns:
@comp:
@Returns:
@comp:
@Returns:
@comp:
@Returns:
@comp:
@comp:
@uid:
@comp:
@uid:
@comp:
@categories:
@comp:
@categories:
@comp:
@categ_list:
@comp:
@categ_list:
@comp:
@classif:
@comp:
@classif:
@comp:
@text_list:
@comp:
@text_list:
@comp:
@t:
@comp:
@t:
@comp:
@t:
@comp:
@t:
@comp:
@text_list:
@comp:
@text_list:
@comp:
@dt:
@comp:
@dt:
@comp:
@t:
@comp:
@t:
@comp:
@dt:
@comp:
@dt:
@comp:
@dt:
@comp:
@dt:
@comp:
@exdate_list:
@comp:
@exdate_list:
@comp:
@Returns:
@comp:
@recur_list:
@comp:
@recur_list:
@comp:
@recur_list:
@comp:
@Returns:
@comp:
@Returns:
@comp:
@geo:
@comp:
@geo:
@comp:
@t:
@comp:
@t:
@comp:
@percent:
@comp:
@percent:
@comp:
@priority:
@comp:
@priority:
@comp:
@period_list:
@comp:
@period_list:
@comp:
@Returns:
@comp:
@recur_list:
@comp:
@recur_list:
@comp:
@recur_list:
@comp:
@Returns:
@comp:
@Returns:
@comp:
@sequence:
@comp:
@sequence:
@comp:
@status:
@comp:
@status:
@comp:
@summary:
@comp:
@summary:
@comp:
@transp:
@comp:
@transp:
@comp:
@url:
@comp:
@url:
@categ_list:
@dt:
@exdate_list:
@geo:
@t:
@percent:
@priority:
@period_list:
@recur_list:
@sequence:
@text_list:
@CAL_ALARM_NONE:
@CAL_ALARM_AUDIO:
@CAL_ALARM_DISPLAY:
@CAL_ALARM_EMAIL:
@CAL_ALARM_PROCEDURE:
@CAL_ALARM_UNKNOWN:
@CAL_ALARM_TRIGGER_NONE:
@CAL_ALARM_TRIGGER_RELATIVE_START:
@CAL_ALARM_TRIGGER_RELATIVE_END:
@CAL_ALARM_TRIGGER_ABSOLUTE:
@comp:
@Returns:
@comp:
@Returns:
@comp:
@auid:
@Returns:
@alarm:
@alarms:
@alarm:
@Returns:
@alarm:
@action:
@alarm:
@action:
@alarm:
@trigger:
@alarm:
@trigger: