OwlCyberSecurity - MANAGER
Edit File: Image.as
package { import flash.display.MovieClip; import flash.display.Loader; import flash.display.LoaderInfo; import flash.display.Bitmap; import flash.net.URLRequest; import flash.events.Event; import flash.events.HTTPStatusEvent; import flash.events.IOErrorEvent; import flash.text.TextField; import flash.events.MouseEvent; import Document; public class Image extends Document { private var sName:String = ""; private var sFileName:String = ""; private var myLoader:Loader; private var myImage:Bitmap; private var nImageHeight:Number = 0; private var nImageWidth:Number = 0; private var nImageHeight0:Number = 0; private var nImageWidth0:Number = 0; private var nMarges:Number = 10; private var nStep:Number = 50; public function Image():void { mcSizeUp.addEventListener(MouseEvent.CLICK, Expand); } public function AddImage(sImageFileName:String):void { sFileName = sImageFileName; myLoader = new Loader(); var myURL:URLRequest = new URLRequest(sFileName); myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, LoadEnd); myLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, LoadError); myLoader.load(myURL); } private function LoadEnd(pEvt:Event):void { myImage = Bitmap(myLoader.contentLoaderInfo.content); myImage.smoothing = true; addChild(myImage); SetSize(); Start(); } private function LoadError(pEvt:IOErrorEvent):void { trace("Loading error : "+sFileName); } public function SetName(sImageName:String):void { sName = sImageName; mcTexte.textImage.text=sName; } public function GetName():String { return sName; } public function SetSize():void { var nHeightTmp:Number = myImage.height; var nWidthTmp:Number = myImage.width; if (nImageHeight == 0) { nImageHeight = nHeightTmp*nImageWidth/nWidthTmp; } else { nImageWidth = nWidthTmp*nImageHeight/nHeightTmp; } mcCadre.scaleX *= (nImageWidth + 2*nMarges)/mcCadre.width; mcCadre.scaleY *= (nImageHeight + 4*nMarges)/mcCadre.height; //mcCadre.height = nImageWidth + 2*nMarges; //mcCadre.width = nImageHeight + 4*nMarges; myImage.width = nImageWidth; myImage.height = nImageHeight; myImage.x = -mcCadre.width/2+nMarges; myImage.y = -mcCadre.height/2+nMarges; mcTexte.mcTexteCadre.width = mcCadre.width; mcTexte.x = 0; mcTexte.y = mcCadre.height/2 - mcTexte.height/2; mcSizeUp.x = mcCadre.width/2 - mcSizeUp.width/2 - 5; mcSizeUp.y = mcCadre.height/2 - mcSizeUp.height/2 - 5; } public function SetHeight(nHeight:Number):void { nImageHeight = nHeight; } public function SetWidth(nWidth:Number):void { nImageWidth = nWidth; } private function Expand(event:MouseEvent):void { mcSizeUp.removeEventListener(MouseEvent.CLICK, Expand); RemoveEvent(); nImageHeight0 = nImageHeight; nImageWidth0 = nImageWidth; SetInitX(x); SetInitY(y); SetInitRot(rotation); addEventListener(Event.ENTER_FRAME,ChangingSizeUp); MovingCenter(); RotationZero(); } public function ChangingSizeUp(event:Event):void { event.stopPropagation(); mcSizeUp.visible = false; if ((nImageWidth <= (Globals.nMaxX - Globals.nMarges))&&(nImageHeight <= (Globals.nMaxY - Globals.nMarges))) { SetWidth(nImageWidth+nStep); SetHeight(nImageHeight+nStep); } else { removeEventListener(Event.ENTER_FRAME,ChangingSizeUp); addEventListener(MouseEvent.CLICK,Reset); } SetSize(); } public function ChangingSizeDown(event:Event):void { event.stopPropagation(); if ((nImageWidth > nImageWidth0 )||(nImageHeight > nImageHeight0 )) { trace(nImageWidth+" " +nImageWidth0); SetWidth(nImageWidth-nStep); SetHeight(nImageHeight-nStep); } else { removeEventListener(Event.ENTER_FRAME,ChangingSizeDown); StartDrag(); mcSizeUp.addEventListener(MouseEvent.CLICK, Expand); } SetSize(); } private function Reset(event:MouseEvent):void { addEventListener(Event.ENTER_FRAME,ChangingSizeDown); removeEventListener(MouseEvent.CLICK,Reset); Start(); mcSizeUp.visible = true; } } }