summaryrefslogtreecommitdiff
path: root/calendar/base/public/calIEvent.idl
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/base/public/calIEvent.idl')
-rw-r--r--calendar/base/public/calIEvent.idl42
1 files changed, 42 insertions, 0 deletions
diff --git a/calendar/base/public/calIEvent.idl b/calendar/base/public/calIEvent.idl
new file mode 100644
index 000000000..d9bbd5ef8
--- /dev/null
+++ b/calendar/base/public/calIEvent.idl
@@ -0,0 +1,42 @@
+/* -*- Mode: idl; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#include "calIItemBase.idl"
+
+interface calIDuration;
+
+//
+// calIEvent
+//
+// An interface for an event (analogous to a VEVENT)
+//
+
+[scriptable, uuid(5ab15c1c-e295-4d8e-a9a9-ba5bc848b59a)]
+interface calIEvent : calIItemBase
+{
+ // these attributes are marked readonly, as the calIDates are owned
+ // by the event; however, the actual calIDate objects are not read
+ // only and are intended to be manipulated to adjust dates.
+
+ /**
+ * The (inclusive) start of the event.
+ */
+ attribute calIDateTime startDate;
+
+ /**
+ * The (non-inclusive) end of the event.
+ * Note that for all-day events, non-inclusive means that this will be set
+ * to the day after the last day of the event.
+ * If startDate.isDate is set, endDate.isDate must also be set.
+ */
+ attribute calIDateTime endDate;
+
+ /**
+ * The duration of the event.
+ * equal to endDate - startDate
+ */
+ readonly attribute calIDuration duration;
+
+};