Upstream version 11.39.266.0
[platform/framework/web/crosswalk.git] / src / third_party / trace-viewer / third_party / tvcm / src / tvcm / ui / animation.html
1 <!DOCTYPE html>
2 <!--
3 Copyright (c) 2014 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file.
6 -->
7 <link rel="import" href="/tvcm.html">
8 <script>
9 'use strict';
10
11 tvcm.exportTo('tvcm.ui', function() {
12   /**
13    * Represents a procedural animation that can be run by an
14    * tvcm.ui.AnimationController.
15    *
16    * @constructor
17    */
18   function Animation() {
19   }
20
21   Animation.prototype = {
22
23     /**
24      * Called when an animation has been queued after a running animation.
25      *
26      * @return {boolean} True if the animation can take on the responsibilities
27      * of the running animation. If true, takeOverFor will be called on the
28      * animation.
29      *
30      * This can be used to build animations that accelerate as pairs of them are
31      * queued.
32      */
33     canTakeOverFor: function(existingAnimation) {
34       throw new Error('Not implemented');
35     },
36
37     /**
38      * Called to take over responsiblities of an existingAnimation.
39      *
40      * At this point, the existingAnimation has been ticked one last time, then
41      * stopped. This animation will be started after this returns and has the
42      * job of finishing(or transitioning away from) the effect the existing
43      * animation was trying to accomplish.
44      */
45     takeOverFor: function(existingAnimation, newStartTimestamp, target) {
46       throw new Error('Not implemented');
47     },
48
49     start: function(timestamp, target) {
50       throw new Error('Not implemented');
51     },
52
53     /**
54      * Called when an animation is stopped before it finishes. The animation can
55      * do what it wants here, usually nothing.
56      *
57      * @param {Number} timestamp When the animation was stopped.
58      * @param {Object} target The object being animated. May be undefined, take
59      * care.
60      * @param {boolean} willBeTakenOverByAnotherAnimation Whether this animation
61      * is going to be handed to another animation's takeOverFor function.
62      */
63     didStopEarly: function(timestamp, target,
64                            willBeTakenOverByAnotherAnimation) {
65     },
66
67     /**
68      * @return {boolean} true if the animation is finished.
69      */
70     tick: function(timestamp, target) {
71       throw new Error('Not implemented');
72     }
73   };
74
75   return {
76     Animation: Animation
77   };
78 });
79 </script>