File: xml_animation.html

package info (click to toggle)
cegui-mk2 0.7.6-2
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 105,384 kB
  • sloc: cpp: 142,729; ansic: 27,984; sh: 11,010; makefile: 2,275; python: 916; xml: 17
file content (314 lines) | stat: -rw-r--r-- 11,992 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Crazy Eddies GUI System: Animation XML files.</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<script type="text/javascript">
function hasClass(ele,cls) {
  return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}

function addClass(ele,cls) {
  if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}

function removeClass(ele,cls) {
  if (hasClass(ele,cls)) {
    var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
    ele.className=ele.className.replace(reg,' ');
  }
}

function toggleVisibility(linkObj) {
 var base = linkObj.getAttribute('id');
 var summary = document.getElementById(base + '-summary');
 var content = document.getElementById(base + '-content');
 var trigger = document.getElementById(base + '-trigger');
 if ( hasClass(linkObj,'closed') ) {
   summary.style.display = 'none';
   content.style.display = 'block';
   trigger.src = 'open.png';
   removeClass(linkObj,'closed');
   addClass(linkObj,'opened');
 } else if ( hasClass(linkObj,'opened') ) {
   summary.style.display = 'block';
   content.style.display = 'none';
   trigger.src = 'closed.png';
   removeClass(linkObj,'opened');
   addClass(linkObj,'closed');
 }
 return false;
}
</script>
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Crazy Eddies GUI System&#160;<span id="projectnumber">0.7.6</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">Animation XML files. </div>  </div>
</div>
<div class="contents">
<div class="textblock"><dl class="author"><dt><b>Author:</b></dt><dd>Paul D Turner</dd></dl>
<p>Animation XML files allow the specification of animations for <a class="el" href="namespaceCEGUI.html" title="Main namespace for Crazy Eddie&#39;s GUI Library.">CEGUI</a>, which can later be instantiated and targetted to specific GUI elements. The same system and XML formats are also valid as part of Falagard WidgetLook definitions.</p>
<h2><a class="anchor" id="xml_animation_contents"></a>
Animation XML Element List:</h2>
<p><a class="el" href="xml_animation.html#xml_animation_affector">&lt;Affector&gt; Element</a> <br/>
 <a class="el" href="xml_animation.html#xml_animation_animationdefinition">&lt;AnimationDefinition&gt; Element</a> <br/>
 <a class="el" href="xml_animation.html#xml_animation_animations">&lt;Animations&gt; Element</a> <br/>
 <a class="el" href="xml_animation.html#xml_animation_keyframe">&lt;KeyFrame&gt; Element</a> <br/>
 <a class="el" href="xml_animation.html#xml_animation_subscription">&lt;Subscription&gt; Element</a> <br/>
</p>
<p><br/>
 </p>
<h2><a class="anchor" id="xml_animation_overview"></a>
Overview</h2>
<p>The reference for each element is arranged into sections, as described below:</p>
<ul>
<li>Purpose:<ul>
<li>This section describes what the elements general purpose is within the specifications.</li>
</ul>
</li>
</ul>
<ul>
<li>Attributes:<ul>
<li>This section describes available attributes for the elements, and whether they are required or optional.</li>
</ul>
</li>
</ul>
<ul>
<li>Usage:<ul>
<li>Describes where the element may appear, whether the element may have sub-elements, and other important usage information.</li>
</ul>
</li>
</ul>
<ul>
<li>Examples:<ul>
<li>For many elements, this section will contain brief examples showing the element used in context.</li>
</ul>
</li>
</ul>
<p><br/>
 </p>
<h2><a class="anchor" id="xml_animation_affector"></a>
&lt;Affector&gt; Element</h2>
<ul>
<li>Purpose:<ul>
<li>The &lt;Affector&gt; element specifies the name of a property that will be affected (have it's value changed) as part of the animation and how the changes are to be applied to that property over time.</li>
</ul>
</li>
</ul>
<ul>
<li>Attributes:<ul>
<li><code>property:</code> Required attribute that specifies the name of the property that will be changed by this affector.</li>
<li><code>applicationMethod:</code> Optional attribute that specifies how interpolated property values are to be applied. Valid options are:<ul>
<li><code>"absolute"</code>: The interpolated value is set as the new property value (default setting).</li>
<li><code>"relative"</code>: The interpolated value is added to the starting value of the property.</li>
<li><code>"relative multiply"</code>: The interpolated value is multiplied with the starting value of the property.</li>
</ul>
</li>
<li><code>interpolator:</code> Required attribute that specifies the name of the interpolator that will interpret the property value to smoothly transition from one key frame value to another. The interpolator name specified must be registered with the system. Stock interpolators are provided for the following:<ul>
<li><code>"bool"</code> </li>
<li><code>"colour"</code> </li>
<li><code>"ColourRect"</code> </li>
<li><code>"float"</code> </li>
<li><code>"int"</code> </li>
<li><code>"Point"</code> </li>
<li><code>"Rect"</code> </li>
<li><code>"Size"</code> </li>
<li><code>"String"</code> </li>
<li><code>"UBox"</code> </li>
<li><code>"UDim"</code> </li>
<li><code>"uint"</code> </li>
<li><code>"URect"</code> </li>
<li><code>"UVector2"</code> </li>
<li><code>"Vector3"</code> </li>
</ul>
</li>
</ul>
</li>
</ul>
<ul>
<li>Usage:<ul>
<li>The &lt;Affector&gt; element may only appear as a sub-element of the &lt;AnimationDefinition&gt; element.</li>
<li>The &lt;Affector&gt; element may contain one or more &lt;KeyFrame&gt; elements.</li>
</ul>
</li>
</ul>
<ul>
<li>Examples:<ul>
<li>TODO</li>
</ul>
</li>
</ul>
<p><br/>
 </p>
<h2><a class="anchor" id="xml_animation_animationdefinition"></a>
&lt;AnimationDefinition&gt; Element</h2>
<ul>
<li>Purpose:<ul>
<li>The &lt;AnimationDefinition&gt; element is used to define a single named animation that can be instantiated and applied to GUI elements.</li>
</ul>
</li>
</ul>
<ul>
<li>Attributes:<ul>
<li><code>name:</code> Required attribute that specifies a system-unique name for the animation.</li>
<li><code>duration:</code> Required attribute that specifies the overall duration of the animation in seconds.</li>
<li><code>replayMode:</code> Optional attribute that specifies if and how the animation will be replayed / repeated. Acceptable values are:<ul>
<li><code>"loop"</code>: Animation plays through, then restarts from the beginning (default setting).</li>
<li><code>"once"</code>: Animation plays one time and then stops.</li>
<li><code>"bounce"</code>: Animation plays forwards and then backwards in a continual cycle.</li>
</ul>
</li>
<li><code>autoStart:</code> Optional boolean attribute that specifies whether the animation will start playing immediately. Default value is 'false' which means some external event must trigger the animation if it is to be seen.</li>
</ul>
</li>
</ul>
<ul>
<li>Usage:<ul>
<li>The &lt;AnimationDefinition&gt; element may appear as a sub-element of either a root &lt;Animations&gt; element, or within a Falagard system &lt;WidgetLook&gt; element.</li>
<li>The &lt;AnimationDefinition&gt; element must contain at least one &lt;Affector&gt; sub-element.</li>
<li>The &lt;AnimationDefinition&gt; element may then contain zero or more &lt;Subscription&gt; sub-elements.</li>
</ul>
</li>
</ul>
<ul>
<li>Examples:<ul>
<li>TODO</li>
</ul>
</li>
</ul>
<p><br/>
 </p>
<h2><a class="anchor" id="xml_animation_animations"></a>
&lt;Animations&gt; Element</h2>
<ul>
<li>Purpose:<ul>
<li>The &lt;Animations&gt; element is the root element in an animations XML file and it's purpose is to contain any number of &lt;AnimationDefinition&gt; elements.</li>
</ul>
</li>
</ul>
<ul>
<li>Attributes:<ul>
<li>None.</li>
</ul>
</li>
</ul>
<ul>
<li>Usage:<ul>
<li>The &lt;Animations&gt; element may not appear as a sub-element of any other elements.</li>
<li>The &lt;Animations&gt; element may contain only &lt;AnimationDefinition&gt; elements as sub-elements (any number).</li>
</ul>
</li>
</ul>
<ul>
<li>Examples:<ul>
<li>TODO</li>
</ul>
</li>
</ul>
<p><br/>
 </p>
<h2><a class="anchor" id="xml_animation_keyframe"></a>
&lt;KeyFrame&gt; Element</h2>
<ul>
<li>Purpose:<ul>
<li>The &lt;KeyFrame&gt; element is used to specify the value of the affected property at a given time position. Key frames can use values of properties of the affected window. If the source property is not empty, the properties value is saved when animation starts and used as the value for this key frame.</li>
</ul>
</li>
</ul>
<ul>
<li>Attributes:<ul>
<li><code>position:</code> Required attribute that specifies the time interval within the animation at which point the value for this key frame should be reached. This value should be between zero and the total duration of the animation being defined.</li>
<li><code>value:</code> Optional attribute that specifies a value for the affected property that should be in effect at the specified position within the animation. If this attribute is not given, you should specify the <code>sourceProperty</code> attribute.</li>
<li><code>sourceProperty:</code> Optional attribute specifying the name of a property from which the target value of this key frame will be fetched. If this attribute is not specified, you should specify the <code>value</code> attribute.</li>
<li><code>progression:</code> Optional attribute indicating the method of progression towards this key frame value over time. The available options are:<ul>
<li><code>"linear"</code> (default value(.</li>
<li><code>"discrete"</code> </li>
<li><code>"quadratic accelerating"</code> </li>
<li><code>"quadratic decelerating"</code> </li>
</ul>
</li>
</ul>
</li>
</ul>
<ul>
<li>Usage:<ul>
<li>The &lt;KeyFrame&gt; element may only appear as sub-elements of the &lt;Affector&gt; element.</li>
<li>The &lt;KeyFrame&gt; element may not contain any sub-elements.</li>
</ul>
</li>
</ul>
<ul>
<li>Examples:<ul>
<li>TODO</li>
</ul>
</li>
</ul>
<p><br/>
 </p>
<h2><a class="anchor" id="xml_animation_subscription"></a>
&lt;Subscription&gt; Element</h2>
<ul>
<li>Purpose:<ul>
<li>The &lt;Subscription&gt; element defines a subscription to an event on the target EventSet that will trigger a specified action for the animation.</li>
</ul>
</li>
</ul>
<ul>
<li>Attributes:<ul>
<li><code>event:</code> Required attribute that specifies the event that will trigger the given action.</li>
<li><code>action:</code> Required attribute that specifies the action that will be taken when the specified event is fired. Possible values are:<ul>
<li><code>"Start"</code> </li>
<li><code>"Stop"</code> </li>
<li><code>"Pause"</code> </li>
<li><code>"Unpause"</code> </li>
<li><code>"TogglePause"</code> </li>
</ul>
</li>
</ul>
</li>
</ul>
<ul>
<li>Usage:<ul>
<li>The &lt;Subscription&gt; element may only appear as a sub-element of the &lt;AnimationDefinition&gt; element.</li>
<li>The &lt;Subscription&gt; element may not contain any sub-elements.</li>
</ul>
</li>
</ul>
<ul>
<li>Examples:<ul>
<li>TODO </li>
</ul>
</li>
</ul>
</div></div>
<hr class="footer"/><address class="footer"><small>Generated on Sun Jan 22 2012 16:07:40 for Crazy Eddies GUI System by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>