summaryrefslogtreecommitdiffstats
path: root/src/dom/smil.idl
diff options
context:
space:
mode:
Diffstat (limited to 'src/dom/smil.idl')
-rwxr-xr-xsrc/dom/smil.idl369
1 files changed, 369 insertions, 0 deletions
diff --git a/src/dom/smil.idl b/src/dom/smil.idl
new file mode 100755
index 000000000..29fd3754d
--- /dev/null
+++ b/src/dom/smil.idl
@@ -0,0 +1,369 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more
+ * details.
+ */
+
+// File: smil.idl
+#ifndef _SMIL_IDL_
+#define _SMIL_IDL_
+
+#include "dom.idl"
+#include "views.idl"
+#include "events.idl"
+
+#pragma prefix "dom.w3c.org"
+module smil
+{
+ typedef dom::DOMString DOMString;
+ typedef dom::Element Element;
+ typedef dom::NodeList NodeList;
+ typedef dom::Document Document;
+
+ interface SMILRegionElement;
+
+ interface ElementLayout {
+ attribute DOMString title;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString backgroundColor;
+ // raises(dom::DOMException) on setting
+
+ attribute long height;
+ // raises(dom::DOMException) on setting
+
+ attribute long width;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface SMILRegionInterface {
+ attribute SMILRegionElement region;
+ };
+
+ interface Time {
+ readonly attribute boolean resolved;
+ readonly attribute double resolvedOffset;
+ // TimeTypes
+ const unsigned short SMIL_TIME_INDEFINITE = 0;
+ const unsigned short SMIL_TIME_OFFSET = 1;
+ const unsigned short SMIL_TIME_SYNC_BASED = 2;
+ const unsigned short SMIL_TIME_EVENT_BASED = 3;
+ const unsigned short SMIL_TIME_WALLCLOCK = 4;
+ const unsigned short SMIL_TIME_MEDIA_MARKER = 5;
+
+ readonly attribute unsigned short timeType;
+ attribute double offset;
+ // raises(dom::DOMException) on setting
+
+ attribute Element baseElement;
+ // raises(dom::DOMException) on setting
+
+ attribute boolean baseBegin;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString event;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString marker;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface TimeList {
+ Time item(in unsigned long index);
+ readonly attribute unsigned long length;
+ };
+
+ interface ElementTime {
+ attribute TimeList begin;
+ // raises(dom::DOMException) on setting
+
+ attribute TimeList end;
+ // raises(dom::DOMException) on setting
+
+ attribute float dur;
+ // raises(dom::DOMException) on setting
+
+ // restartTypes
+ const unsigned short RESTART_ALWAYS = 0;
+ const unsigned short RESTART_NEVER = 1;
+ const unsigned short RESTART_WHEN_NOT_ACTIVE = 2;
+
+ attribute unsigned short restart;
+ // raises(dom::DOMException) on setting
+
+ // fillTypes
+ const unsigned short FILL_REMOVE = 0;
+ const unsigned short FILL_FREEZE = 1;
+
+ attribute unsigned short fill;
+ // raises(dom::DOMException) on setting
+
+ attribute float repeatCount;
+ // raises(dom::DOMException) on setting
+
+ attribute float repeatDur;
+ // raises(dom::DOMException) on setting
+
+ boolean beginElement();
+ boolean endElement();
+ void pauseElement();
+ void resumeElement();
+ void seekElement(inout float seekTo);
+ };
+
+ interface ElementTimeManipulation {
+ attribute float speed;
+ // raises(dom::DOMException) on setting
+
+ attribute float accelerate;
+ // raises(dom::DOMException) on setting
+
+ attribute float decelerate;
+ // raises(dom::DOMException) on setting
+
+ attribute boolean autoReverse;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface ElementTimeContainer : ElementTime {
+ readonly attribute NodeList timeChildren;
+ NodeList getActiveChildrenAt(in float instant);
+ };
+
+ interface ElementSyncBehavior {
+ readonly attribute DOMString syncBehavior;
+ readonly attribute float syncTolerance;
+ readonly attribute DOMString defaultSyncBehavior;
+ readonly attribute float defaultSyncTolerance;
+ readonly attribute boolean syncMaster;
+ };
+
+ interface ElementParallelTimeContainer : ElementTimeContainer {
+ attribute DOMString endSync;
+ // raises(dom::DOMException) on setting
+
+ float getImplicitDuration();
+ };
+
+ interface ElementSequentialTimeContainer : ElementTimeContainer {
+ };
+
+ interface ElementExclusiveTimeContainer : ElementTimeContainer {
+ attribute DOMString endSync;
+ // raises(dom::DOMException) on setting
+
+ NodeList getPausedElements();
+ };
+
+ interface ElementTimeControl {
+ boolean beginElement()
+ raises(dom::DOMException);
+ boolean beginElementAt(in float offset)
+ raises(dom::DOMException);
+ boolean endElement()
+ raises(dom::DOMException);
+ boolean endElementAt(in float offset)
+ raises(dom::DOMException);
+ };
+
+ interface ElementTargetAttributes {
+ attribute DOMString attributeName;
+ // attributeTypes
+ const unsigned short ATTRIBUTE_TYPE_AUTO = 0;
+ const unsigned short ATTRIBUTE_TYPE_CSS = 1;
+ const unsigned short ATTRIBUTE_TYPE_XML = 2;
+
+ attribute unsigned short attributeType;
+ };
+
+ interface ElementTest {
+ attribute long systemBitrate;
+ // raises(dom::DOMException) on setting
+
+ attribute boolean systemCaptions;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString systemLanguage;
+ // raises(dom::DOMException) on setting
+
+ readonly attribute boolean systemRequired;
+ readonly attribute boolean systemScreenSize;
+ readonly attribute boolean systemScreenDepth;
+ attribute DOMString systemOverdubOrSubtitle;
+ // raises(dom::DOMException) on setting
+
+ attribute boolean systemAudioDesc;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface SMILDocument : Document, ElementSequentialTimeContainer {
+ };
+
+ interface SMILElement : Element {
+ attribute DOMString id;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface SMILLayoutElement : SMILElement {
+ readonly attribute DOMString type;
+ readonly attribute boolean resolved;
+ };
+
+ interface SMILTopLayoutElement : SMILElement, ElementLayout {
+ };
+
+ interface SMILRootLayoutElement : SMILElement, ElementLayout {
+ };
+
+ interface SMILRegionElement : SMILElement, ElementLayout {
+ attribute DOMString fit;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString top;
+ // raises(dom::DOMException) on setting
+
+ attribute long zIndex;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface TimeEvent : events::Event {
+ readonly attribute views::AbstractView view;
+ readonly attribute long detail;
+ void initTimeEvent(in DOMString typeArg,
+ in views::AbstractView viewArg,
+ in long detailArg);
+ };
+
+ interface SMILMediaElement : ElementTime, SMILElement {
+ attribute DOMString abstractAttr;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString alt;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString author;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString clipBegin;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString clipEnd;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString copyright;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString longdesc;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString port;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString readIndex;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString rtpformat;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString src;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString stripRepeat;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString title;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString transport;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString type;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface SMILRefElement : SMILMediaElement {
+ };
+
+ interface SMILAnimation : SMILElement, ElementTargetAttributes, ElementTime, ElementTimeControl {
+ // additiveTypes
+ const unsigned short ADDITIVE_REPLACE = 0;
+ const unsigned short ADDITIVE_SUM = 1;
+
+ attribute unsigned short additive;
+ // raises(dom::DOMException) on setting
+
+ // accumulateTypes
+ const unsigned short ACCUMULATE_NONE = 0;
+ const unsigned short ACCUMULATE_SUM = 1;
+
+ attribute unsigned short accumulate;
+ // raises(dom::DOMException) on setting
+
+ // calcModeTypes
+ const unsigned short CALCMODE_DISCRETE = 0;
+ const unsigned short CALCMODE_LINEAR = 1;
+ const unsigned short CALCMODE_PACED = 2;
+ const unsigned short CALCMODE_SPLINE = 3;
+
+ attribute unsigned short calcMode;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString keySplines;
+ // raises(dom::DOMException) on setting
+
+ attribute TimeList keyTimes;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString values;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString from;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString to;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString by;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface SMILAnimateElement : SMILAnimation {
+ };
+
+ interface SMILSetElement : ElementTimeControl, ElementTime, ElementTargetAttributes, SMILElement {
+ attribute DOMString to;
+ };
+
+ interface SMILAnimateMotionElement : SMILAnimateElement {
+ attribute DOMString path;
+ // raises(dom::DOMException) on setting
+
+ attribute DOMString origin;
+ // raises(dom::DOMException) on setting
+
+ };
+
+ interface SMILAnimateColorElement : SMILAnimation {
+ };
+
+ interface SMILSwitchElement : SMILElement {
+ Element getSelectedElement();
+ };
+};
+
+#endif // _SMIL_IDL_
+