Code

Translations. French translation minor update.
[inkscape.git] / src / dom / work / smil.idl
1 /*
2  * Copyright (c) 2000 World Wide Web Consortium,
3  * (Massachusetts Institute of Technology, Institut National de
4  * Recherche en Informatique et en Automatique, Keio University). All
5  * Rights Reserved. This program is distributed under the W3C's Software
6  * Intellectual Property License. This program is distributed in the
7  * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
8  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more
10  * details.
11  */
13 // File: smil.idl
14 #ifndef _SMIL_IDL_
15 #define _SMIL_IDL_
17 #include "dom.idl"
18 #include "views.idl"
19 #include "events.idl"
21 #pragma prefix "dom.w3c.org"
22 module smil
23 {
24   typedef dom::DOMString DOMString;
25   typedef dom::Element Element;
26   typedef dom::NodeList NodeList;
27   typedef dom::Document Document;
29   interface SMILRegionElement;
31   interface ElementLayout {
32              attribute DOMString        title;
33                                         // raises(dom::DOMException) on setting
35              attribute DOMString        backgroundColor;
36                                         // raises(dom::DOMException) on setting
38              attribute long             height;
39                                         // raises(dom::DOMException) on setting
41              attribute long             width;
42                                         // raises(dom::DOMException) on setting
44   };
46   interface SMILRegionInterface {
47              attribute SMILRegionElement  region;
48   };
50   interface Time {
51     readonly attribute boolean          resolved;
52     readonly attribute double           resolvedOffset;
53     // TimeTypes
54     const unsigned short      SMIL_TIME_INDEFINITE           = 0;
55     const unsigned short      SMIL_TIME_OFFSET               = 1;
56     const unsigned short      SMIL_TIME_SYNC_BASED           = 2;
57     const unsigned short      SMIL_TIME_EVENT_BASED          = 3;
58     const unsigned short      SMIL_TIME_WALLCLOCK            = 4;
59     const unsigned short      SMIL_TIME_MEDIA_MARKER         = 5;
61     readonly attribute unsigned short   timeType;
62              attribute double           offset;
63                                         // raises(dom::DOMException) on setting
65              attribute Element          baseElement;
66                                         // raises(dom::DOMException) on setting
68              attribute boolean          baseBegin;
69                                         // raises(dom::DOMException) on setting
71              attribute DOMString        event;
72                                         // raises(dom::DOMException) on setting
74              attribute DOMString        marker;
75                                         // raises(dom::DOMException) on setting
77   };
79   interface TimeList {
80     Time               item(in unsigned long index);
81     readonly attribute unsigned long    length;
82   };
84   interface ElementTime {
85              attribute TimeList         begin;
86                                         // raises(dom::DOMException) on setting
88              attribute TimeList         end;
89                                         // raises(dom::DOMException) on setting
91              attribute float            dur;
92                                         // raises(dom::DOMException) on setting
94     // restartTypes
95     const unsigned short      RESTART_ALWAYS                 = 0;
96     const unsigned short      RESTART_NEVER                  = 1;
97     const unsigned short      RESTART_WHEN_NOT_ACTIVE        = 2;
99              attribute unsigned short   restart;
100                                         // raises(dom::DOMException) on setting
102     // fillTypes
103     const unsigned short      FILL_REMOVE                    = 0;
104     const unsigned short      FILL_FREEZE                    = 1;
106              attribute unsigned short   fill;
107                                         // raises(dom::DOMException) on setting
109              attribute float            repeatCount;
110                                         // raises(dom::DOMException) on setting
112              attribute float            repeatDur;
113                                         // raises(dom::DOMException) on setting
115     boolean            beginElement();
116     boolean            endElement();
117     void               pauseElement();
118     void               resumeElement();
119     void               seekElement(inout float seekTo);
120   };
122   interface ElementTimeManipulation {
123              attribute float            speed;
124                                         // raises(dom::DOMException) on setting
126              attribute float            accelerate;
127                                         // raises(dom::DOMException) on setting
129              attribute float            decelerate;
130                                         // raises(dom::DOMException) on setting
132              attribute boolean          autoReverse;
133                                         // raises(dom::DOMException) on setting
135   };
137   interface ElementTimeContainer : ElementTime {
138     readonly attribute NodeList         timeChildren;
139     NodeList           getActiveChildrenAt(in float instant);
140   };
142   interface ElementSyncBehavior {
143     readonly attribute DOMString        syncBehavior;
144     readonly attribute float            syncTolerance;
145     readonly attribute DOMString        defaultSyncBehavior;
146     readonly attribute float            defaultSyncTolerance;
147     readonly attribute boolean          syncMaster;
148   };
150   interface ElementParallelTimeContainer : ElementTimeContainer {
151              attribute DOMString        endSync;
152                                         // raises(dom::DOMException) on setting
154     float              getImplicitDuration();
155   };
157   interface ElementSequentialTimeContainer : ElementTimeContainer {
158   };
160   interface ElementExclusiveTimeContainer : ElementTimeContainer {
161              attribute DOMString        endSync;
162                                         // raises(dom::DOMException) on setting
164     NodeList           getPausedElements();
165   };
167   interface ElementTimeControl {
168     boolean            beginElement()
169                                         raises(dom::DOMException);
170     boolean            beginElementAt(in float offset)
171                                         raises(dom::DOMException);
172     boolean            endElement()
173                                         raises(dom::DOMException);
174     boolean            endElementAt(in float offset)
175                                         raises(dom::DOMException);
176   };
178   interface ElementTargetAttributes {
179              attribute DOMString        attributeName;
180     // attributeTypes
181     const unsigned short      ATTRIBUTE_TYPE_AUTO            = 0;
182     const unsigned short      ATTRIBUTE_TYPE_CSS             = 1;
183     const unsigned short      ATTRIBUTE_TYPE_XML             = 2;
185              attribute unsigned short   attributeType;
186   };
188   interface ElementTest {
189              attribute long             systemBitrate;
190                                         // raises(dom::DOMException) on setting
192              attribute boolean          systemCaptions;
193                                         // raises(dom::DOMException) on setting
195              attribute DOMString        systemLanguage;
196                                         // raises(dom::DOMException) on setting
198     readonly attribute boolean          systemRequired;
199     readonly attribute boolean          systemScreenSize;
200     readonly attribute boolean          systemScreenDepth;
201              attribute DOMString        systemOverdubOrSubtitle;
202                                         // raises(dom::DOMException) on setting
204              attribute boolean          systemAudioDesc;
205                                         // raises(dom::DOMException) on setting
207   };
209   interface SMILDocument : Document, ElementSequentialTimeContainer {
210   };
212   interface SMILElement : Element {
213              attribute DOMString        id;
214                                         // raises(dom::DOMException) on setting
216   };
218   interface SMILLayoutElement : SMILElement {
219     readonly attribute DOMString        type;
220     readonly attribute boolean          resolved;
221   };
223   interface SMILTopLayoutElement : SMILElement, ElementLayout {
224   };
226   interface SMILRootLayoutElement : SMILElement, ElementLayout {
227   };
229   interface SMILRegionElement : SMILElement, ElementLayout {
230              attribute DOMString        fit;
231                                         // raises(dom::DOMException) on setting
233              attribute DOMString        top;
234                                         // raises(dom::DOMException) on setting
236              attribute long             zIndex;
237                                         // raises(dom::DOMException) on setting
239   };
241   interface TimeEvent : events::Event {
242     readonly attribute views::AbstractView  view;
243     readonly attribute long             detail;
244     void               initTimeEvent(in DOMString typeArg, 
245                                      in views::AbstractView viewArg, 
246                                      in long detailArg);
247   };
249   interface SMILMediaElement : ElementTime, SMILElement {
250              attribute DOMString        abstractAttr;
251                                         // raises(dom::DOMException) on setting
253              attribute DOMString        alt;
254                                         // raises(dom::DOMException) on setting
256              attribute DOMString        author;
257                                         // raises(dom::DOMException) on setting
259              attribute DOMString        clipBegin;
260                                         // raises(dom::DOMException) on setting
262              attribute DOMString        clipEnd;
263                                         // raises(dom::DOMException) on setting
265              attribute DOMString        copyright;
266                                         // raises(dom::DOMException) on setting
268              attribute DOMString        longdesc;
269                                         // raises(dom::DOMException) on setting
271              attribute DOMString        port;
272                                         // raises(dom::DOMException) on setting
274              attribute DOMString        readIndex;
275                                         // raises(dom::DOMException) on setting
277              attribute DOMString        rtpformat;
278                                         // raises(dom::DOMException) on setting
280              attribute DOMString        src;
281                                         // raises(dom::DOMException) on setting
283              attribute DOMString        stripRepeat;
284                                         // raises(dom::DOMException) on setting
286              attribute DOMString        title;
287                                         // raises(dom::DOMException) on setting
289              attribute DOMString        transport;
290                                         // raises(dom::DOMException) on setting
292              attribute DOMString        type;
293                                         // raises(dom::DOMException) on setting
295   };
297   interface SMILRefElement : SMILMediaElement {
298   };
300   interface SMILAnimation : SMILElement, ElementTargetAttributes, ElementTime, ElementTimeControl {
301     // additiveTypes
302     const unsigned short      ADDITIVE_REPLACE               = 0;
303     const unsigned short      ADDITIVE_SUM                   = 1;
305              attribute unsigned short   additive;
306                                         // raises(dom::DOMException) on setting
308     // accumulateTypes
309     const unsigned short      ACCUMULATE_NONE                = 0;
310     const unsigned short      ACCUMULATE_SUM                 = 1;
312              attribute unsigned short   accumulate;
313                                         // raises(dom::DOMException) on setting
315     // calcModeTypes
316     const unsigned short      CALCMODE_DISCRETE              = 0;
317     const unsigned short      CALCMODE_LINEAR                = 1;
318     const unsigned short      CALCMODE_PACED                 = 2;
319     const unsigned short      CALCMODE_SPLINE                = 3;
321              attribute unsigned short   calcMode;
322                                         // raises(dom::DOMException) on setting
324              attribute DOMString        keySplines;
325                                         // raises(dom::DOMException) on setting
327              attribute TimeList         keyTimes;
328                                         // raises(dom::DOMException) on setting
330              attribute DOMString        values;
331                                         // raises(dom::DOMException) on setting
333              attribute DOMString        from;
334                                         // raises(dom::DOMException) on setting
336              attribute DOMString        to;
337                                         // raises(dom::DOMException) on setting
339              attribute DOMString        by;
340                                         // raises(dom::DOMException) on setting
342   };
344   interface SMILAnimateElement : SMILAnimation {
345   };
347   interface SMILSetElement : ElementTimeControl, ElementTime, ElementTargetAttributes, SMILElement {
348              attribute DOMString        to;
349   };
351   interface SMILAnimateMotionElement : SMILAnimateElement {
352              attribute DOMString        path;
353                                         // raises(dom::DOMException) on setting
355              attribute DOMString        origin;
356                                         // raises(dom::DOMException) on setting
358   };
360   interface SMILAnimateColorElement : SMILAnimation {
361   };
363   interface SMILSwitchElement : SMILElement {
364     Element            getSelectedElement();
365   };
366 };
368 #endif // _SMIL_IDL_