summaryrefslogtreecommitdiff
path: root/includes/js/dojox/gfx/tests/test_fx.html
blob: c7b5b81cc8103ec5b9686ea9b06fb94eb7cee324 (plain)
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
<!doctype html>
<html>
<head>
<title>Testing animation</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
	@import "../../../dojo/resources/dojo.css";
	@import "../../../dijit/tests/css/dijitTests.css";
</style>
<!--
The next line should include Microsoft's Silverligth.js, if you plan to use the silverlight backend
<script type="text/javascript" src="Silverlight.js"></script>
-->
<script type="text/javascript" src="../../../dojo/dojo.js" djConfig="isDebug: true"></script>
<!--
<script type="text/javascript" src="../_base.js"></script>
<script type="text/javascript" src="../shape.js"></script>
<script type="text/javascript" src="../path.js"></script>
<script type="text/javascript" src="../arc.js"></script>
<script type="text/javascript" src="../fx.js"></script>
-->
<!--<script type="text/javascript" src="../vml.js"></script>-->
<!--<script type="text/javascript" src="../svg.js"></script>-->
<!--<script type="text/javascript" src="../canvas.js"></script>-->
<!--<script type="text/javascript" src="../silverlight.js"></script>-->

<script type="text/javascript">
dojo.require("dojox.gfx");
dojo.require("dojox.gfx.fx");
dojo.require("dojo.colors");

var rect, text;

var makeShapes = function(){
	var surface = dojox.gfx.createSurface("test", 500, 500);
	rect = surface.createRect({x: 100, y: 100, width: 300, height: 300})
		.setFill("yellow").setStroke({
			color: "green",
			width: 5,
			join: "round"
		});
	text = surface.createText({x: 250, y: 250, text: "Hello!", align: "middle"})
		.setFill("black").setFont({family: "serif", size: "10pt"});
};

dojo.addOnLoad(makeShapes);

var animateStroke = function(){
	var anim = dojox.gfx.fx.animateStroke({
		duration:	5000,
		shape: 		rect,
		color:		{start: "green", end: "red"},
		width:		{start: 5, end: 15},
		join:		{values: ["miter", "bevel", "round"]}
	});
	dojo.byId("stroke").disabled = "disabled";
	dojo.connect(anim, "onEnd", function(){ dojo.byId("stroke").disabled = ""; });
	anim.play();
};

var animateFill = function(){
	var anim = dojox.gfx.fx.animateFill({
		duration:	5000,
		shape: 		rect,
		color:		{start: "yellow", end: "blue"}
	});
	dojo.byId("fill").disabled = "disabled";
	dojo.connect(anim, "onEnd", function(){ dojo.byId("fill").disabled = ""; });
	anim.play();
};

var animateFont = function(){
	var anim = dojox.gfx.fx.animateFont({
		duration:	5000,
		shape: 		text,
		variant:	{values: ["normal", "small-caps"]},
		size:		{start: 10, end: 50, unit: "pt"}
	});
	dojo.byId("font").disabled = "disabled";
	dojo.connect(anim, "onEnd", function(){ dojo.byId("font").disabled = ""; });
	anim.play();
};

var animateTransform = function(){
	var anim = dojox.gfx.fx.animateTransform({
		duration:	5000,
		shape: 		text,
		transform:	[
			{name: "rotategAt", start: [0, 250, 250], end: [360, 350, 350]},
			{name: "translate", start: [0, 0], end: [100, 100]}
		]
	});
	dojo.byId("transform").disabled = "disabled";
	dojo.connect(anim, "onEnd", function(){ dojo.byId("transform").disabled = ""; });
	anim.play();
};
</script>
</head>
<body>
<h1>Testing animation</h1>
<p>
	<button id="stroke" onclick="animateStroke();">Stroke</button>
	&nbsp;
	<button id="fill" onclick="animateFill();">Fill</button>
	&nbsp;
	<button id="font" onclick="animateFont();">Font</button>
	&nbsp;
	<button id="transform" onclick="animateTransform();">Transform</button>
</p>
<div id="test" style="width: 500px; height: 500px;"></div>
<p>That's all Folks!</p>
</body>
</html>