Top | ![]() |
![]() |
![]() |
![]() |
ICalTimezone * | (*ECalRecurResolveTimezoneCb) () |
gboolean | (*ECalRecurInstanceCb) () |
gboolean | e_cal_recur_generate_instances_sync () |
time_t | e_cal_recur_obtain_enddate () |
gboolean | e_cal_recur_ensure_end_dates () |
const gchar * | e_cal_recur_get_localized_nth () |
void | (*ECalRecurFormatDateTimeFunc) () |
gchar * | e_cal_recur_describe_recurrence_ex () |
gchar * | e_cal_recur_describe_recurrence () |
ICalTimezone * (*ECalRecurResolveTimezoneCb) (const gchar *tzid
,gpointer user_data
,GCancellable *cancellable
,GError **error
);
Resolve timezone by its ID provided as tzid
. The returned object,
if not NULL
, is owned by the callback implementation and should
not be freed.
tzid |
timezone ID to resolve |
|
user_data |
user data used for this callback |
|
cancellable |
optional GCancellable object, or |
|
error |
return location for a GError, or |
an ICalTimezone object for tzid
,
or NULL
, on error or if not found.
[transfer none][nullable]
Since: 3.34
gboolean (*ECalRecurInstanceCb) (ICalComponent *icomp
,ICalTime *instance_start
,ICalTime *instance_end
,gpointer user_data
,GCancellable *cancellable
,GError **error
);
Callback used by e_cal_recur_generate_instances_sync()
, called
for each instance of a (recurring) component within given time range.
icomp |
an ICalComponent |
|
instance_start |
start time of an instance |
|
instance_end |
end time of an instance |
|
user_data |
user data used for this callback in |
|
cancellable |
optional GCancellable object, or |
|
error |
return location for a GError, or |
Since: 3.34
gboolean e_cal_recur_generate_instances_sync (ICalComponent *icalcomp
,ICalTime *interval_start
,ICalTime *interval_end
,ECalRecurInstanceCb callback
,gpointer callback_user_data
,ECalRecurResolveTimezoneCb get_tz_callback
,gpointer get_tz_callback_user_data
,ICalTimezone *default_timezone
,GCancellable *cancellable
,GError **error
);
Calls the given callback function for each occurrence of the event that
intersects the range between the given start
and end
times (the end time is
not included). Note that the occurrences may start before the given start
time.
If the callback routine returns FALSE the occurrence generation stops.
The start and end times are required valid times, start before end time.
The get_tz_callback
is used to resolve references to timezones. It is passed
a TZID and should return the ICalTimezone * corresponding to that TZID. We need to
do this as we access timezones in different ways on the client & server.
The default_timezone argument is used for DTSTART or DTEND properties that are DATE values or do not have a TZID (i.e. floating times).
icalcomp |
an ICalComponent |
|
interval_start |
an interval start, for which generate instances |
|
interval_end |
an interval end, for which generate instances |
|
callback |
a callback to be called for each instance. |
[scope call] |
callback_user_data |
user data for |
[closure callback] |
get_tz_callback |
a callback to call when resolving timezone. |
[scope call] |
get_tz_callback_user_data |
user data for |
[closure get_tz_callback] |
default_timezone |
a default ICalTimezone |
|
cancellable |
a GCancellable; can be |
|
error |
a GError to set an error, if any. |
[out] |
Since: 3.20
time_t e_cal_recur_obtain_enddate (ICalRecurrence *ir
,ICalProperty *prop
,ICalTimezone *zone
,gboolean convert_end_date
);
gboolean e_cal_recur_ensure_end_dates (ECalComponent *comp
,gboolean refresh
,ECalRecurResolveTimezoneCb tz_cb
,gpointer tz_cb_data
,GCancellable *cancellable
,GError **error
);
This recalculates the end dates for recurrence & exception rules which use
the COUNT property. If refresh
is TRUE
it will recalculate all enddates
for rules which use COUNT. If refresh
is FALSE
, it will only calculate
the enddate if it hasn't already been set. It returns TRUE
if the component
was changed, i.e. if the component should be saved at some point.
We store the enddate in the E_CAL_EVOLUTION_ENDDATE_PARAMETER
parameter of the RRULE
or EXRULE.
comp |
||
refresh |
|
|
tz_cb |
function to call to resolve timezones. |
[scope call] |
tz_cb_data |
user data to pass to |
[closure tz_cb_data] |
cancellable |
optional GCancellable object, or |
|
error |
return location for a GError, or |
Since: 2.32
const gchar *
e_cal_recur_get_localized_nth (gint nth
);
Localized text for the nth position, counting from zero, which means for '0' it'll return "1st", for '1' it'll return "2nd" and so on, up to 30, when it'll return "31st".
Since: 3.28
void (*ECalRecurFormatDateTimeFunc) (ICalTime *itt
,gchar *buffer
,gint buffer_size
);
Format the date/time value from itt
into buffer
, whose size cannot
exceed buffer_size
letters.
itt |
an ICalTime to format to string |
|
buffer |
a buffer to fill with the result |
|
buffer_size |
the |
Since: 3.38
gchar * e_cal_recur_describe_recurrence_ex (ICalComponent *icalcomp
,GDateWeekday week_start_day
,guint32 flags
,ECalRecurFormatDateTimeFunc datetime_fmt_func
);
Describes some simple types of recurrences in a human-readable and localized way.
The flags
influence the output format and what to do when the icalcomp
contains more complicated recurrence, some which the function cannot describe.
The week_start_day
is used for weekly recurrences, to start the list of selected
days at that day.
If datetime_fmt_func
is NULL
, the e_time_format_date_and_time()
is used
to format data/time value.
Free the returned string with g_free()
, when no longer needed.
icalcomp |
an ICalComponent |
|
week_start_day |
a day when the week starts |
|
flags |
bit-or of ECalRecurDescribeRecurrenceFlags |
|
datetime_fmt_func |
formatting function for date/time value. |
[nullable][scope call] |
a newly allocated string, which
describes the recurrence of the icalcomp
, or NULL, when the icalcomp
doesn't recur or the recurrence is too complicated to describe, also
according to given flags
.
[nullable][transfer full]
Since: 3.38
gchar * e_cal_recur_describe_recurrence (ICalComponent *icalcomp
,GDateWeekday week_start_day
,guint32 flags
);
Describes some simple types of recurrences in a human-readable and localized way.
The flags
influence the output format and what to do when the icalcomp
contains more complicated recurrence, some which the function cannot describe.
The week_start_day
is used for weekly recurrences, to start the list of selected
days at that day.
Uses e_time_format_date_and_time()
to format the date/time value in the string.
Call e_cal_recur_describe_recurrence_ex()
with a custom formatting function.
Free the returned string with g_free()
, when no longer needed.
icalcomp |
an ICalComponent |
|
week_start_day |
a day when the week starts |
|
flags |
bit-or of ECalRecurDescribeRecurrenceFlags |
a newly allocated string, which
describes the recurrence of the icalcomp
, or NULL, when the icalcomp
doesn't recur or the recurrence is too complicated to describe, also
according to given flags
.
[nullable][transfer full]
Since: 3.30
#define E_CAL_EVOLUTION_ENDDATE_PARAMETER "X-EVOLUTION-ENDDATE"
The X parameter name being used to store the enddate in RRULE and EXRULE properties.
Since: 3.34