Version 5.2.6.1, tag libreoffice-5.2.6.1
[LibreOffice.git] / offapi / com / sun / star / animations / XAnimate.idl
blob4ff7c07666ac071057405a130e996488176a39df
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
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_XAnimate_idl__
20 #define __com_sun_star_animations_XAnimate_idl__
22 #include <com/sun/star/animations/XAnimationNode.idl>
23 #include <com/sun/star/animations/TimeFilterPair.idl>
26 module com { module sun { module star { module animations {
29 /** Interface for generic animation.
31 @see http://www.w3.org/TR/smil20/animation.html#edef-animate
33 interface XAnimate : XAnimationNode
35 /** This attribute specifies the target element to be animated.
36 <br>
37 See documentation of used animation engine for supported targets.
39 [attribute] any Target;
41 /** This attribute specifies an optional subitem from the target element
42 that should be animated.
43 <br>
44 A value of zero should always be the default and animate the complete target.
45 <br>
46 See documentation of used animation engine for supported subitems.
48 [attribute] short SubItem;
50 /** Specifies the target attribute.
52 @see http://www.w3.org/TR/smil20/animation.html#adef-attributeName
54 [attribute] string AttributeName;
56 /** A sequence of one or more values, each of which must be a legal value for
57 the specified attribute.
59 @see http://www.w3.org/TR/smil20/animation.html#adef-values
61 [attribute] sequence< any > Values;
63 /**
65 [attribute] sequence< double > KeyTimes;
67 /**
68 @see AnimationValueType
70 [attribute] short ValueType;
72 /** Specifies the interpolation mode for the animation.
73 <br>
74 If the target attribute does not support linear interpolation (e.g. for strings),
75 or if the values attribute has only one value, the CalcMode attribute is ignored
76 and discrete interpolation is used.
78 @see AnimationCalcMode;
80 [attribute] short CalcMode;
82 /** Controls whether or not the animation is cumulative.
84 @see http://www.w3.org/TR/smil20/animation.html#adef-accumulate
86 [attribute] boolean Accumulate;
88 /** Controls whether or not the animation is additive.
90 @see AnimationAdditiveMode
91 @see http://www.w3.org/TR/smil20/animation.html#adef-additive
93 [attribute] short Additive;
95 /** Specifies the starting value of the animation.
96 <br>
97 Must be a legal value for the specified attribute.
98 Ignored if the #Values attribute is specified.
100 @see http://www.w3.org/TR/smil20/animation.html#adef-from
102 [attribute] any From;
104 /** Specifies the ending value of the animation.
105 <br>
106 Must be a legal value for the specified attribute.
107 Ignored if the #Values attribute is specified.
109 @see http://www.w3.org/TR/smil20/animation.html#adef-to
111 [attribute] any To;
113 /** Specifies a relative offset value for the animation.
114 <br>
115 Must be a legal value of a domain for which addition to the attributeType
116 domain is defined and which yields a value in the attributeType domain.
117 Ignored if the values attribute is specified.
118 Ignored if the #Values attribute is specified.
120 @see http://www.w3.org/TR/smil20/animation.html#adef-by
122 [attribute] any By;
124 /** todo: timeFilter="0,0; 0.14,0.36; 0.43,0.73; 0.71,0.91; 1.0,1.0" ?
126 [attribute] sequence< TimeFilterPair > TimeFilter;
128 /** if this string is set, its contents will be parsed as a formula.
129 All values are used as a parameter for this formula and the computed
130 result will be used.
132 [attribute] string Formula;
136 }; }; }; };
138 #endif
140 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */