diff options
Diffstat (limited to 'src/dom/smil.idl')
| -rwxr-xr-x | src/dom/smil.idl | 369 |
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_ + |
