aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/idl
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/idl')
-rw-r--r--calendar/idl/evolution-calendar.idl64
1 files changed, 38 insertions, 26 deletions
diff --git a/calendar/idl/evolution-calendar.idl b/calendar/idl/evolution-calendar.idl
index bee377c76a..3e64e07888 100644
--- a/calendar/idl/evolution-calendar.idl
+++ b/calendar/idl/evolution-calendar.idl
@@ -16,17 +16,20 @@ module GNOME {
module Evolution {
module Calendar {
- /* A calendar object (event/todo/journal/etc), represented as an
+ /* A calendar component (event/todo/journal/etc), represented as an
* iCalendar string.
*/
typedef string CalObj;
- /* An unique identifier for a calendar object */
+ /* A unique identifier for a calendar component */
typedef string CalObjUID;
/* Sequence of unique identifiers */
typedef sequence<CalObjUID> CalObjUIDSeq;
+ /* A unique identifier for an alarm subcomponent */
+ typedef string CalAlarmUID;
+
/* Flags for getting UID sequences */
typedef long CalObjType;
const CalObjType TYPE_EVENT = 1 << 0;
@@ -51,11 +54,11 @@ module Calendar {
/* Used to store a time_t */
typedef unsigned long Time_t;
- /* An instance of a calendar object that actually occurs. These are
+ /* An instance of a calendar component that actually occurs. These are
* "virtual" objects in that they are used to represent instances of
* recurring events and alarms. "Real" objects just contain the
* information required to figure out the times at which they recur or
- * trigger.
+ * trigger.
*/
struct CalObjInstance {
CalObjUID uid;
@@ -63,6 +66,7 @@ module Calendar {
Time_t end;
};
+ /* Used to transfer a list of component occurrences */
typedef sequence<CalObjInstance> CalObjInstanceSeq;
/* An object change */
@@ -71,18 +75,28 @@ module Calendar {
CalObjChangeType type;
};
+ /* Used to transfer a list of changed components */
typedef sequence<CalObjChange> CalObjChangeSeq;
/* An alarm trigger instance */
struct CalAlarmInstance {
- CalObjUID uid;
- AlarmType type;
+ CalAlarmUID auid;
Time_t trigger;
Time_t occur;
};
+ /* Used to represent a list of alarm triggers for a single component */
typedef sequence<CalAlarmInstance> CalAlarmInstanceSeq;
+ /* Alarms for a component */
+ struct CalComponentAlarms {
+ CalObj calobj;
+ CalAlarmInstanceSeq alarms;
+ };
+
+ /* Used to represent a list of components plus their triggers */
+ typedef sequence<CalComponentAlarms> CalComponentAlarmsSeq;
+
interface Listener;
/* Calendar client interface */
@@ -94,48 +108,46 @@ module Calendar {
/* A calendar is identified by its URI */
readonly attribute string uri;
- /* Gets the number of objects of the specified types */
+ /* Gets the number of components of the specified types */
long countObjects (in CalObjType type);
- /* Gets an object based on its URI */
+ /* Gets a component based on its URI */
CalObj getObject (in CalObjUID uid)
raises (NotFound);
- /* Gets a list of UIDs based on object type */
+ /* Gets a list of UIDs based on component type */
CalObjUIDSeq getUIds (in CalObjType type);
- /* Gets a list of objects that changed based on object type */
+ /* Gets a list of components that changed based on object type */
CalObjChangeSeq getChanges (in CalObjType type, in string change_id);
- /* Gets a list of objects that occur or recur in the specified time range */
+ /* Gets a list of components that occur or recur in the specified time range */
CalObjUIDSeq getObjectsInRange (in CalObjType type,
in Time_t start, in Time_t end)
raises (InvalidRange);
- /*
- * Gets the objects whose alarms trigger in the specified time
- * range.
+ /* Gets a list of the components that have alarms that trigger
+ * in the specified range of time, and the trigger/occurrence
+ * structures themselves.
*/
- CalAlarmInstanceSeq getAlarmsInRange (in Time_t start, in Time_t end)
+ CalComponentAlarmsSeq getAlarmsInRange (in Time_t start, in Time_t end)
raises (InvalidRange);
- /*
- * Gets the alarms for the specified object that trigger in the
- * specified time range.
+ /* Gets the alarms for the specified component that trigger in
+ * the specified time range.
*/
- CalAlarmInstanceSeq getAlarmsForObject (in CalObjUID uid,
- in Time_t start, in Time_t end)
+ CalComponentAlarms getAlarmsForObject (in CalObjUID uid,
+ in Time_t start, in Time_t end)
raises (NotFound, InvalidRange);
- /*
- * Updates an object by adding it if it does not exist or by
- * changing an existing one.
+ /* Updates a component by adding it if it does not exist or by
+ * changing an existing one.
*/
void updateObject (in CalObjUID uid, in CalObj calobj)
raises (InvalidObject);
- /* Removes an object */
+ /* Removes a component */
void removeObject (in CalObjUID uid)
raises (NotFound);
};
@@ -157,10 +169,10 @@ module Calendar {
*/
void notifyCalLoaded (in LoadStatus status, in Cal cal);
- /* Called from a Calendar when an object is added or changed */
+ /* Called from a Calendar when a component is added or changed */
void notifyObjUpdated (in CalObjUID uid);
- /* Called from a Calendar when an object is removed */
+ /* Called from a Calendar when a component is removed */
void notifyObjRemoved (in CalObjUID uid);
};