snippets / src/charts/Node.as

Language: Xml - First posted by sawantilak on 2008-05-21 19:06 (4 months, 2 weeks)
Link to the snippet: http://www.friendsnippets.org/snippet/313/

src/charts/Node.as

 1 package charts
2 {
3 import flash.display.DisplayObject;
4 import flash.events.Event;
5
6 import mx.core.IFlexDisplayObject;
7 import mx.core.UIComponent;
8 import mx.core.mx_internal;
9 import mx.events.FlexEvent;
10 import mx.messaging.messages.ErrorMessage;
11 import mx.styles.ISimpleStyleClient;
12
13 use namespace mx_internal;
14
15 //[Style(name="upSkin",type="Class",inherit="no")]
16
17 public class Node extends UIComponent
18 {
19 public var nodeId:int = -1;
20
21 public function Node(/*nodeId_:int*/)
22 {
23 //nodeId = nodeId_;
24 addEventListener(FlexEvent.INITIALIZE, myInitialize);
25 }
26
27 protected function myInitialize(event:Event):void
28 {
29 if(nodeId == -1)
30 throw new Error("The Node ID Property is Mandatory");
31 }
32
33 protected override function updateDisplayList(unscaledWidth:Number,
34 unscaledHeight:Number):void
35 {
36 showSkin("upSkin");
37 }
38
39 mx_internal function showSkin(skinName:String):void
40 {
41 var skinClass:Class = Class(getStyle(skinName));
42 var skin:IFlexDisplayObject = IFlexDisplayObject(getChildByName(skinName));
43
44 if (!skin)
45 {
46 if (skinClass)
47 {
48 skin = IFlexDisplayObject(new skinClass());
49 skin.name = skinName;
50 (skin as ISimpleStyleClient).styleName = this;
51 addChild(DisplayObject(skin));
52 skin.setActualSize(unscaledWidth, unscaledHeight);
53 }
54 }
55
56 }
57
58
59 }
60 }
In order to post a comment, you should have a friendsnippet account. Please sign-in.

0 comments

May '08