1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef __com_sun_star_animations_XAnimationNode_idl__
20 #define __com_sun_star_animations_XAnimationNode_idl__
22 #include
<com
/sun
/star
/container
/XChild.idl
>
23 #include
<com
/sun
/star
/beans
/NamedValue.idl
>
26 module com
{ module sun
{ module star
{ module animations
{
31 interface XAnimationNode
: ::com
::sun
::star
::container
::XChild
33 /** a value from AnimationNodeType.
35 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-timeContainer
37 [readonly, attribute
] short Type
;
39 /** a sequence of values that define the beginning of this element
43 <li>`double` describes the element begin as an offset in seconds from an implicit syncbase.
44 The definition of the implicit syncbase depends upon the element's parent time container.
45 The offset is measured in parent simple time.</li>
46 <li>Event describes an event and an optional offset that determine the
47 element begin. The element begin is defined relative to the time that the event
49 <li>Timing::INDEFINITE the begin of the element will be determined by an
50 external event to the element.</li>
51 <li>sequence<any> a sequence of values described above if more than
52 one begin value is defined for this element.</li>
53 <li>`VOID` if no begin behavior is defined for this element.</li>
56 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-begin
58 [attribute
] any Begin
;
60 /** defines the length of the simple duration.
64 <li>`double` specifies the length of the simple duration in seconds.</li>
65 <li>Timing::INDEFINITE specifies the simple duration as indefinite.</li>
66 <li>Timing::MEDIA specifies the simple duration as the intrinsic media duration. This is only valid for elements that define media.</li>
67 <li>`VOID` the simple duration for the element is defined to be the implicit duration of the element.</li>
70 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-dur
72 [attribute
] any Duration
;
74 /** a sequence of values that define the ending of this element
78 <li>`double` describes the element end as an offset in seconds from an implicit syncbase.
79 The definition of the implicit syncbase depends upon the element's parent time container.
80 The offset is measured in parent simple time.</li>
81 <li>Event describes an event and an optional offset that determine the
82 element end. The element end is defined relative to the time that the event
84 <li>Timing::INDEFINITE the end of the element will be determined by an
85 external event to the element.</li>
86 <li>sequence<any> a sequence of values described above if more than
87 one begin value is defined for this element.</li>
88 <li>`VOID` if no end behavior is defined for this element.</li>
91 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-end
95 /** controls the implicit duration of time containers,
96 as a function of the children.
98 The EndSync attribute is only valid for
99 par and excl time container elements, and media elements with timed
100 children (e.g. animate or area elements).
103 either a `short` constant from EndSync,
104 an interface reference to a child XTimeContainer
107 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-endsync
109 [attribute
] any EndSync
;
111 /** the number of iterations of the simple duration.
116 this is a numeric value that specifies the number of iterations.
117 It can include partial iterations expressed as fraction values.
118 A fractional value describes a portion of the simple duration.
119 Values must be greater than 0.</li>
120 <li>Timing::INDEFINITE the element is defined to repeat indefinitely
121 (subject to the constraints of the parent time container).</li>
123 no repeat count is defined for this element.</li>
127 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-repeatCount
129 [attribute
] any RepeatCount
;
131 /** the total duration for repeat.
136 specifies the duration in element active time
137 to repeat the simple duration in seconds.</li>
138 <li>Timing::INDEFINITE the element is defined to repeat indefinitely
139 (subject to the constraints of the parent time container).</li>
141 No repeat duration is defined for this element. </li>
144 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-repeatDur
146 [attribute
] any RepeatDuration
;
148 /** the attribute that specify the behavior how an element
149 should be extended beyond the active duration by freezing the final
150 state of the element.
153 a value from AnimationFill.
156 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-fill
158 [attribute
] short Fill
;
160 /** the default value for the fill behavior for this element and all
165 <li>The values AnimationFill::REMOVE, AnimationFill::FREEZE,
166 AnimationFill::HOLD, AnimationFill::TRANSITION and AnimationFill::AUTO
167 specify that the element fill behavior is the respective value.</li>
168 <li>The value AnimationFill::INHERIT specifies that the value of this attribute
169 (and of the fill behavior) are inherited from the #FillDefault value of the parent
170 element. If there is no parent element, the value is AnimationFill::AUTO.</li>
174 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-fillDefault
176 [attribute
] short FillDefault
;
178 /** defines the restart behavior of this element.
181 a `short` value from AnimationRestart.
183 @see AnimationRestart
184 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-restart
186 [attribute
] short Restart
;
188 /** defines the default restart behavior for this element and all descendants.
191 a value from Restart.
193 @see AnimationRestart
194 @see http://www.w3.org/TR/smil20/smil-timing.html#adef-restartDefault
196 [attribute
] short RestartDefault
;
198 /** defines the acceleration for this element.
200 Element time will accelerate from a rate of 0 at the beginning up
201 to a run rate, over the course of the specified proportion of the
205 a value between 0 (no acceleration) and 1 (acceleration until end
206 of the elements duration).
208 @see http://www.w3.org/TR/smil20/smil-timemanip.html#adef-accelerate
210 [attribute
] double Acceleration
;
212 /** defines the deceleration for this element.
213 Element time will deceleration from a run rate to a rate of 0 at the
214 ending, over the course of the specified proportion of the
218 a value between 0 (no deceleration) and 1 (deceleration from beginning
219 of the elements duration).
221 @see http://www.w3.org/TR/smil20/smil-timemanip.html#adef-decelerate
223 [attribute
] double Decelerate
;
225 /** defines the auto reverse settings for this element.
229 <li>`FALSE` if the animation is played normal.</li>
230 <li>`TRUE` if the animation is played forwards and then backwards. This doubles the duration</li>
233 @see http://www.w3.org/TR/smil20/smil-timemanip.html#adef-autoReverse
235 [attribute
] boolean AutoReverse
;
239 [attribute
] sequence
< ::com
::sun
::star
::beans
::NamedValue
> UserData
;
247 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */