ActionScript 3.0 Design Patterns

(Chris Devlin) #1

372 | Chapter 10: State Pattern


Example 10-13. TestVid.as


package
{
//Implement FMS2 App and Test State Machine #7
import flash.display.Sprite;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.media.Video;
import flash.text.TextField;
import flash.text.TextFieldType;
import flash.events.MouseEvent;
import flash.events.NetStatusEvent;


public class TestVid extends Sprite
{
private var nc:NetConnection=new NetConnection( );
private var ns:NetStream;
private var vid:Video=new Video(320,240);
private var vidTest:VideoWorks;
private var playBtn:NetBtn;
private var stopBtn:NetBtn;
private var flv:String;
private var flv_txt:TextField;
private var dummy:Object;


public function TestVid ( )
{
nc.connect (null);
ns=new NetStream(nc);
addChild (vid);
vid.x=(stage.stageWidth/2)-(vid.width/2);
vid.y=(stage.stageHeight/2)-(vid.height/2);


//Instantiate State Machine
vidTest=new VideoWorks( );


//Play and Stop Buttons
playBtn=new NetBtn("Play");
addChild (playBtn);
playBtn.x=(stage.stageWidth/2)-50;
playBtn.y=350;
stopBtn=new NetBtn("Stop");
addChild (stopBtn);
stopBtn.x=(stage.stageWidth/2)+50;
stopBtn.y=350;


//Add Event Listeners
playBtn.addEventListener (MouseEvent.CLICK,doPlay);
stopBtn.addEventListener (MouseEvent.CLICK,doStop);


//Add the text field
flv_txt= new TextField( );
flv_txt.border=true;

Free download pdf