ActionScript 3.0 Design Patterns

(Chris Devlin) #1

172 | Chapter 4: Decorator Pattern


68 dealText.wordWrap=true;
69 dealText.multiline=true;
70 dealText.x=165;
71 dealText.y=230;
72 dealText.border=true;
73 dealText.borderColor=0xcc0000;
74 var dealerFormat:TextFormat=new TextFormat( );
75 dealerFormat.leftMargin=4;
76 dealerFormat.rightMargin=4;
77 dealText.defaultTextFormat=dealerFormat;
78 this.addChild (dealText);
79 }
80 //Add Check boxes for Options (Concrete Decorators)
81 private function getChecks ( ):void
82 {
83 var gizmos:Array=new Array("MP3","Heated Seats","GPS", "Rear View Video");
84 var saloon:uint=gizmos.length;
85 var giz:uint;
86 for (giz=0; giz<saloon; giz++)
87 {
88 checks[giz]=new CheckBox( );
89 this.addChild (checks[giz]);
90 checks[giz].width=150;
91 checks[giz].x=250;
92 checks[giz].y=80+(giz*30);
93 checks[giz].label=gizmos[giz];
94 }
95 }
96 //Add Radio buttons Auto (Concrete Components)
97 private function getRadios ( ):void
98 {
99 var car:Array=new Array("Escape","Mariner","Prius","Accord");
100 var saloon:uint=car.length;
101 var ride:uint;
102 for (ride=0; ride<saloon; ride++)
103 {
104 cars[ride]=new RadioButton( );
105 cars[ride].groupName="deals";
106 this.addChild (cars[ride]);
107 cars[ride].x=150;
108 cars[ride].y=80+(ride*30);
109 cars[ride].label=car[ride];
110 }
111 }
112 //Select Auto and create Concrete Component
113 private function getCar ( ):void
114 {
115 var tracker:String;
116 var hybrid:uint;
117 for (hybrid=0; hybrid<cars.length; hybrid++)
118 {
119 if (cars[hybrid].selected)

Example 4-48. Deal.as

Free download pdf