aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/idl
diff options
context:
space:
mode:
authorFederico Mena Quintero <federico@helixcode.com>2000-01-12 09:36:56 +0800
committerArturo Espinosa <unammx@src.gnome.org>2000-01-12 09:36:56 +0800
commitedcdb2068858eebca3c23978c91b827a077c02a1 (patch)
tree1700650ac8f91ba7341f10869528c97b18787c3a /calendar/idl
parenta097129f6847f85035f3b43cf3f36353b82124bc (diff)
downloadgsoc2013-evolution-edcdb2068858eebca3c23978c91b827a077c02a1.tar.gz
gsoc2013-evolution-edcdb2068858eebca3c23978c91b827a077c02a1.tar.zst
gsoc2013-evolution-edcdb2068858eebca3c23978c91b827a077c02a1.zip
New IDL for the personal calendar server.
2000-01-11 Federico Mena Quintero <federico@helixcode.com> * gnome-calendar.idl: New IDL for the personal calendar server. * cal.h cal.c: New files with the calendar object. * cal-listener.h cal-listener.c: New files with the calendar listener object. * cal-factory.h cal-factory.c: New files with the calendar factory object. svn path=/trunk/; revision=1555
Diffstat (limited to 'calendar/idl')
-rw-r--r--calendar/idl/evolution-calendar.idl63
1 files changed, 63 insertions, 0 deletions
diff --git a/calendar/idl/evolution-calendar.idl b/calendar/idl/evolution-calendar.idl
new file mode 100644
index 0000000000..6357a014d0
--- /dev/null
+++ b/calendar/idl/evolution-calendar.idl
@@ -0,0 +1,63 @@
+/* GNOME calendar interfaces
+ *
+ * Copyright (C) 2000 Eskil Heyn Olsen
+ * Copyright (C) 2000 Helix Code, Inc.
+ *
+ * Authors: Eskil Heyn Olsen <deity@eskil.dk>
+ * Federico Mena-Quintero <federico@helixcode.com>
+ */
+
+#ifndef _GNOME_CALENDAR_IDL_
+#define _GNOME_CALENDAR_IDL_
+
+#include <gnome-unknown.idl>
+
+module GNOME {
+
+module Calendar {
+ /* A calendar object (event/todo/journal/etc), represented as an
+ * iCalendar string.
+ */
+ typedef string CalObj;
+
+ /* An unique identifier for a calendar object */
+ typedef string CalObjUID;
+
+ interface Listener;
+
+ /* A calendar handle */
+ interface Cal : Unknown {
+ /* A calendar is identified by its URI */
+ readonly attribute string uri;
+ };
+
+ /* Listener for changes in a calendar */
+ interface Listener : Unknown {
+ /* Called from a CalFactory when a calendar is initially loaded
+ * or created. The listener must remember the cal object.
+ */
+ void cal_loaded (in Cal cal, in CalObj calobj);
+
+ /* Called from a Calendar when an object is added */
+ void obj_added (in CalObj calobj);
+
+ /* Called from a Calendar when an object is removed */
+ void obj_removed (in CalObjUID uid);
+
+ /* Called from a Calendar when an object is changed */
+ void obj_changed (in CalObj calobj);
+ };
+
+ /* A calendar factory, can load and create calendars */
+ interface CalFactory : Unknown {
+ /* Load a calendar from an URI */
+ void load (in string uri, in Listener listener);
+
+ /* Create a new calendar at the specified URI */
+ void create (in string uri, in Listener listener);
+ };
+};
+
+};
+
+#endif