source: code/Website/open-flash-chart/Loading.as@ 7849

Last change on this file since 7849 was 7849, checked in by dennisw, 15 years ago
File size: 2.5 KB
RevLine 
[7849]1/**
2* ...
3* @author Default
4* @version 0.1
5*/
6
7package {
8 import flash.display.Sprite;
9 import flash.text.TextField;
10 import flash.text.TextFormat;
11 import flash.events.Event;
12 import flash.filters.DropShadowFilter;
13
14 public class Loading extends Sprite {
15 private var tf:TextField;
16
17 public function Loading( text:String ) {
18
19 this.tf = new TextField();
20 this.tf.text = text;
21
22 var fmt:TextFormat = new TextFormat();
23 fmt.color = 0x000000;
24 fmt.font = "Verdana";
25 fmt.size = 12;
26 fmt.align = "center";
27
28 this.tf.setTextFormat(fmt);
29 this.tf.autoSize = "left";
30 this.tf.x = 5;
31 this.tf.y = 5;
32
33 //
34 // HACK! For some reason the Stage.height is not
35 // correct the very first time this object is created
36 // so we wait untill the first frame before placing
37 // the movie clip at the center of the Stage.
38 //
39
40 this.addEventListener( Event.ENTER_FRAME, this.onEnter );
41
42 this.addChild( this.tf );
43
44 this.graphics.lineStyle( 2, 0x808080, 1 );
45 this.graphics.beginFill( 0xf0f0f0 );
46 this.graphics.drawRoundRect(0, 0, this.tf.width + 10, this.tf.height + 10, 5, 5);
47
48 var spin:Sprite = new Sprite();
49 spin.x = this.tf.width + 40;
50 spin.y = (this.tf.height + 10) / 2;
51
52 var radius:Number = 15;
53 var dots:Number = 6;
54 var colours:Array = [0xF0F0F0,0xD0D0D0,0xB0B0B0,0x909090,0x707070,0x505050,0x303030];
55
56 for( var i:Number=0; i<dots; i++ )
57 {
58 var deg:Number = (360/dots)*i;
59 var radians:Number = deg * (Math.PI/180);
60 var x:Number = radius * Math.cos(radians);
61 var y:Number = radius * Math.sin(radians);
62
63 spin.graphics.lineStyle(0, 0, 0);
64 spin.graphics.beginFill( colours[i], 1 );
65 spin.graphics.drawCircle( x, y, 4 );
66 }
67
68 this.addChild( spin );
69
70 var dropShadow:DropShadowFilter = new DropShadowFilter();
71 dropShadow.blurX = 4;
72 dropShadow.blurY = 4;
73 dropShadow.distance = 4;
74 dropShadow.angle = 45;
75 dropShadow.quality = 2;
76 dropShadow.alpha = 0.5;
77 // apply shadow filter
78 this.filters = [dropShadow];
79
80 /*
81
82
83
84 spin.onEnterFrame = function ()
85 {
86 this._rotation += 5;
87 }
88
89 */
90 }
91
92 private function onEnter(event:Event):void {
93
94 if( this.stage ) {
95 this.x = (this.stage.stageWidth/2)-((this.tf.width+10)/2);
96 this.y = (this.stage.stageHeight/2)-((this.tf.height+10)/2);
97 // this.removeEventListener( Event.ENTER_FRAME, this.onEnter );
98 // tr.ace('ppp');
99 }
100 this.getChildAt(1).rotation += 5;
101 }
102
103 }
104
105}
Note: See TracBrowser for help on using the repository browser.