/** * Flash Video for Professionals: MVC Player * http://www.flashconnections.com * @author James O'Reilly */ package com.flashconnections.pattern.mvc { import flash.display.MovieClip; import com.flashconnections.core.Core; import com.flashconnections.pattern.mvc.Controller; import com.flashconnections.pattern.mvc.ifc.Iactionscript_video_com_flashconnections_pattern_mvc_View; import com.flashconnections.pattern.mvc.Model; import com.flashconnections.ui.util.ifc.ICoordinateSpace; public class actionscript_video_com_flashconnections_pattern_mvc_View extends Core implements Iactionscript_video_com_flashconnections_pattern_mvc_View, ICoordinateSpace { public var _x:Number; public var _y:Number; public var _w:Number; public var _h:Number; private var _model:Model; private var _controller:Controller; private var _container:MovieClip; private var _content:MovieClip; public function actionscript_video_com_flashconnections_pattern_mvc_View(model:Model, controller:Controller, container:MovieClip) { setModel(model); setController(controller); getModel().setactionscript_video_com_flashconnections_pattern_mvc_View(this); getController().setactionscript_video_com_flashconnections_pattern_mvc_View(this); getController().setModel(getModel()); setContainer(container); } public function setModel(val:Model):void { _model = val; } public function getModel():Model { return _model; } public function setController(val:Controller):void { _controller = val; getController().setactionscript_video_com_flashconnections_pattern_mvc_View(this); } public function getController():Controller { return _controller; } public function getDefaultController():Controller { return null; } public function setContainer(val:MovieClip):void { _container = val; } public function getContainer():MovieClip { return _container; } public function setContent(val:MovieClip):void { _content = val; } public function getContent():MovieClip { return _content; } public function init():void {} public function layout():void {} // methods from ICoordinateSpace public function initCoordinates(x:Number, y:Number, w:Number, h:Number):void { setX(x); setY(y); setWidth(w); setHeight(h); } //interface implementations //instance public function setName(val:String):void {} public function getName():String { return null; } //visibility public function show():void {} public function hide():void {} public function destroy():void {} //size public function setSize(W:Number, H:Number):void { _w = W; _h = H; } public function getSize():Object { return {w:_w, h:_h}; } public function setWidth(val:Number):void { _w = val; } public function getWidth():Number { return _w; } public function setHeight(val:Number):void { _h = val; } public function getHeight():Number { return _h; } //position public function setPosition(X:Number, Y:Number):void { _x = X; _y = Y; } public function getPosition():Object { return {x:_x, y:_y}; } public function setX(val:Number):void { _x = val; } public function getX():Number { return _x; } public function setY(val:Number):void { _y = val; } public function getY():Number { return _y; } //bounds public function getBounds():Object { return {xMin:_x, xMax:_x + _w, yMin:_y, yMax:_y + _h}; } public function setRight(val:Number):void { _w = val - _x; } public function getRight():Number { return _x + _w; } public function setBottom(val:Number):void { _h = val - _y; } public function getBottom():Number { return _y + _h; } public function toString():String { return "com.flashconnections.pattern.mvc.actionscript_video_com_flashconnections_pattern_mvc_View"; } } }