STORY LOOP FURRY PORN GAMES C SERVICES [?] [R] RND POPULAR | Archived flashes: 229703 |
/disc/ · /res/ — /show/ · /fap/ · /gg/ · /swf/ | P0001 · P2596 · P5192 |
This is the info page for Flash #249578 |
516 455 0967 |
IAN TOPPLE |
ILLUSTRATOR ANIMATOR GRAPHIC DESIGNER |
<p align="left"><font face="Helvetica" size="22" color="#cccccc" letterSpacing="0.000000" kerning="1"><b>This is text</b></font></p> |
<p align="left"><font face="Helvetica" size="20" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>this is text</b></font></p> |
IanToppleartist@gmail.com |
IanToppleartist@gmail.com |
IanToppleartist@gmail.com |
If you don't see the animation click a second time. This is a bug I'm currently working on. |
X |
CLOSE |
Terror Film Festival Lonestar International Film Festival Kent Film Festival Digifestival A Night of Horror International Film Festival Griffon International Film Festival Fear No Film Festival NYC Picturestart Film Festival Dragon'Con Independent Short Film Festival Coney Island Film Festival Amberg Horror Fest South Beach International Animation Festival |
ACCEPTED INTO THE FOLLOWING FILM FESTIVALS |
This was my animation degree project I created in my senior year in college. Hand drawn animation and composited in AfterEffects. |
This was an animated music video I did for the rock band "The Silent Years" |
Animated using Flash |
This was my AfterEffects final. Created using: AferEffects, Photoshop and edited using Final Cut Pro. |
This was my final I created in my Intermediate Animation Studio. It's based off the comic Beezle and Bono Aventures I created. Created using Flash and edited using Final Cut Pro. |
This is a sample 3-d animation I created using Maya. |
MAGAZINE ADVERTISEMENT |
Web Advertisement |
Web Banners |
BOOK JACKET SAMPLE DESIGN |
POSTCARD SAMPLE DESIGN |
Front of Postcard |
Back of Postcard |
Sample Fake Website |
click on the link below thumbnail to view website. |
Created using Actionscript 3.0, Flash and PHP |
click here to view website |
Sample Fake Website. This is a general mockup of the interactivity it will have. (artwork is not mine) |
Created using Actionscript 3.0 and Flash |
<p align="left"><font face="Silom" size="14" color="#ffffff" letterSpacing="0.000000" kerning="1">this is text</font></p> |
<p align="left"><font face="Silom" size="16" color="#00ffff" letterSpacing="0.000000" kerning="1">Friends</font></p> |
Ian Topple 516 455 0967 IanToppleArtist@gmail.com www.IanTopple.com EXPERIENCE 2010 June Pharma Botanics, New York, NY Freelance Flash Web Designer -Created website for start up company specializing in anti-aging cream. January - present ABI Research, Oyster Bay, NY Part Time Graphic Designer -Designed graphics and images for new articles about their products. -Designed catalogs and advertisements. -Assisted in web development for the companies website. 2008-2009 August -December JULIUS M. FEINBLUM REAL ESTATE, Plainview, NY Marketing Manager/Graphic Desginer -Designed brochures and flyers for direct mailings and conventions. -Surpervised marketing and site reports on a time sensitive basis. -Created competitor maps listing furniture and mattress competitors in specific areas in the country. -Researched demographics, site plans, property owners and any other marketing information to aid in the brokers request. 2008 June - October THE SILENT YEARS, New York, NY Freelance animator -Animated music video for the song "Climb on my Back" by the rock band called the Silent Years. -Created concept designs, storyboards, animatics and animation. January - August BLOOD MOON PRODUCTIONS, Staten Island, NY Graphic Designer/Editorial Assistant -Designed book jackets, book layouts, posters, brochures and press materials. -In charge of office while publisher was away on business trips. -Responsible for shipping and managing large book orders. EDUCATION 2007 RHODE ISLAND SCHOOL OF DESIGN(RISD) , Providence, RI BFA, Illustration SKILLS Computer (PC and Mac) -Photoshop -Illustrator -InDesign -Flash/Actionscript 3.0 -Dreamweaver(CSS/HTML, XML) -QuarkXpress -AfterEffects -Maya (Basic) -Final Cut Pro -DVD Studio Pro EXHIBITS & AWARDS 2008 KENT FILM FESTIVAL, Kent, CT -My animated short "Getting Out" was nominated for best short animations. LONESTAR INTERNATIONAL FILM FESTIVAL, Fort Worth, TX -My animated short "Getting Out" was nominated for best short animations. |
<p align="left"><font face="Helvetica" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">this is text </font></p> |
<p align="left"></p> |
You can contact me at or you can reach me at 516 455 0967 and I will get back to you as soon as possible. Thanks! |
<p align="left"><font face="Silom" size="14" color="#ffffff" letterSpacing="0.000000" kerning="1">this is text</font></p> |
ActionScript [AS3]
Section 1//PropTween (com.greensock.core.PropTween) package com.greensock.core { public class PropTween { public var priority:int; public var start:Number; public var prevNode:PropTween; public var change:Number; public var target:Object; public var name:String; public var property:String; public var nextNode:PropTween; public var isPlugin:Boolean; public function PropTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Boolean, _arg7:PropTween=null, _arg8:int=0){ this.target = _arg1; this.property = _arg2; this.start = _arg3; this.change = _arg4; this.name = _arg5; this.isPlugin = _arg6; if (_arg7){ _arg7.prevNode = this; this.nextNode = _arg7; }; this.priority = _arg8; } } }//package com.greensock.coreSection 2//SimpleTimeline (com.greensock.core.SimpleTimeline) package com.greensock.core { public class SimpleTimeline extends TweenCore { public var autoRemoveChildren:Boolean; protected var _lastChild:TweenCore; protected var _firstChild:TweenCore; public function SimpleTimeline(_arg1:Object=null){ super(0, _arg1); } override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ var _local5:Number; var _local6:TweenCore; var _local4:TweenCore = _firstChild; this.cachedTotalTime = _arg1; this.cachedTime = _arg1; while (_local4) { _local6 = _local4.nextNode; if (((_local4.active) || ((((((_arg1 >= _local4.cachedStartTime)) && (!(_local4.cachedPaused)))) && (!(_local4.gc)))))){ if (!_local4.cachedReversed){ _local4.renderTime(((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale), _arg2, false); } else { _local5 = (_local4.cacheIsDirty) ? _local4.totalDuration : _local4.cachedTotalDuration; _local4.renderTime((_local5 - ((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale)), _arg2, false); }; }; _local4 = _local6; }; } public function addChild(_arg1:TweenCore):void{ if (((!(_arg1.gc)) && (_arg1.timeline))){ _arg1.timeline.remove(_arg1, true); }; _arg1.timeline = this; if (_arg1.gc){ _arg1.setEnabled(true, true); }; if (_firstChild){ _firstChild.prevNode = _arg1; }; _arg1.nextNode = _firstChild; _firstChild = _arg1; _arg1.prevNode = null; } public function remove(_arg1:TweenCore, _arg2:Boolean=false):void{ if (((!(_arg1.gc)) && (!(_arg2)))){ _arg1.setEnabled(false, true); }; if (_arg1.nextNode){ _arg1.nextNode.prevNode = _arg1.prevNode; } else { if (_lastChild == _arg1){ _lastChild = _arg1.prevNode; }; }; if (_arg1.prevNode){ _arg1.prevNode.nextNode = _arg1.nextNode; } else { if (_firstChild == _arg1){ _firstChild = _arg1.nextNode; }; }; } public function get rawTime():Number{ return (this.cachedTotalTime); } } }//package com.greensock.coreSection 3//TweenCore (com.greensock.core.TweenCore) package com.greensock.core { import com.greensock.*; public class TweenCore { public var initted:Boolean; protected var _hasUpdate:Boolean; public var active:Boolean; protected var _delay:Number; public var cachedTime:Number; public var cachedReversed:Boolean; public var nextNode:TweenCore; protected var _rawPrevTime:Number;// = -1 public var vars:Object; public var cachedTotalTime:Number; public var timeline:SimpleTimeline; public var data; public var cachedStartTime:Number; public var prevNode:TweenCore; public var cachedDuration:Number; public var gc:Boolean; protected var _pauseTime:Number; public var cacheIsDirty:Boolean; public var cachedPaused:Boolean; public var cachedTimeScale:Number; public var cachedTotalDuration:Number; public static const version:Number = 1.11; protected static var _classInitted:Boolean; public function TweenCore(_arg1:Number=0, _arg2:Object=null){ this.vars = ((_arg2) || ({})); this.cachedDuration = (this.cachedTotalDuration = ((_arg1) || (0))); _delay = ((this.vars.delay) || (0)); this.cachedTimeScale = ((this.vars.timeScale) || (1)); this.active = Boolean((((((_arg1 == 0)) && ((_delay == 0)))) && (!((this.vars.immediateRender == false))))); this.cachedTotalTime = (this.cachedTime = 0); this.data = this.vars.data; if (!_classInitted){ if (isNaN(TweenLite.rootFrame)){ TweenLite.initClass(); _classInitted = true; } else { return; }; }; var _local3:SimpleTimeline = ((this.vars.timeline is SimpleTimeline)) ? this.vars.timeline : (this.vars.useFrames) ? TweenLite.rootFramesTimeline : TweenLite.rootTimeline; this.cachedStartTime = (_local3.cachedTotalTime + _delay); _local3.addChild(this); if (this.vars.reversed){ this.cachedReversed = true; }; if (this.vars.paused){ this.paused = true; }; } public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ } public function get delay():Number{ return (_delay); } public function get duration():Number{ return (this.cachedDuration); } public function restart(_arg1:Boolean=false, _arg2:Boolean=true):void{ this.reversed = false; this.paused = false; this.setTotalTime((_arg1) ? -(_delay) : 0, _arg2); } public function set reversed(_arg1:Boolean):void{ if (_arg1 != this.cachedReversed){ this.cachedReversed = _arg1; setTotalTime(this.cachedTotalTime, true); }; } public function set startTime(_arg1:Number):void{ var _local2:Boolean = Boolean(((!((this.timeline == null))) && (((!((_arg1 == this.cachedStartTime))) || (this.gc))))); this.cachedStartTime = _arg1; if (_local2){ this.timeline.addChild(this); }; } public function set delay(_arg1:Number):void{ this.startTime = (this.startTime + (_arg1 - _delay)); _delay = _arg1; } public function resume():void{ this.paused = false; } public function get paused():Boolean{ return (this.cachedPaused); } public function play():void{ this.reversed = false; this.paused = false; } public function set duration(_arg1:Number):void{ this.cachedDuration = (this.cachedTotalDuration = _arg1); setDirtyCache(false); } public function complete(_arg1:Boolean=false, _arg2:Boolean=false):void{ if (!_arg1){ renderTime(this.cachedTotalDuration, _arg2, false); return; }; if (this.timeline.autoRemoveChildren){ this.setEnabled(false, false); } else { this.active = false; }; if (!_arg2){ if (((((this.vars.onComplete) && ((this.cachedTotalTime == this.cachedTotalDuration)))) && (!(this.cachedReversed)))){ this.vars.onComplete.apply(null, this.vars.onCompleteParams); } else { if (((((this.cachedReversed) && ((this.cachedTotalTime == 0)))) && (this.vars.onReverseComplete))){ this.vars.onReverseComplete.apply(null, this.vars.onReverseCompleteParams); }; }; }; } public function invalidate():void{ } public function get totalTime():Number{ return (this.cachedTotalTime); } public function get reversed():Boolean{ return (this.cachedReversed); } public function get startTime():Number{ return (this.cachedStartTime); } public function set currentTime(_arg1:Number):void{ setTotalTime(_arg1, false); } protected function setDirtyCache(_arg1:Boolean=true):void{ var _local2:TweenCore = (_arg1) ? this : this.timeline; while (_local2) { _local2.cacheIsDirty = true; _local2 = _local2.timeline; }; } public function reverse(_arg1:Boolean=true):void{ this.reversed = true; if (_arg1){ this.paused = false; } else { if (this.gc){ this.setEnabled(true, false); }; }; } public function set paused(_arg1:Boolean):void{ if (((!((_arg1 == this.cachedPaused))) && (this.timeline))){ if (_arg1){ _pauseTime = this.timeline.rawTime; } else { this.cachedStartTime = (this.cachedStartTime + (this.timeline.rawTime - _pauseTime)); _pauseTime = NaN; setDirtyCache(false); }; this.cachedPaused = _arg1; this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration)))); }; if (((!(_arg1)) && (this.gc))){ this.setTotalTime(this.cachedTotalTime, false); this.setEnabled(true, false); }; } public function kill():void{ setEnabled(false, false); } public function set totalTime(_arg1:Number):void{ setTotalTime(_arg1, false); } public function get currentTime():Number{ return (this.cachedTime); } protected function setTotalTime(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; var _local4:Number; if (this.timeline){ _local3 = (((_pauseTime) || ((_pauseTime == 0)))) ? _pauseTime : this.timeline.cachedTotalTime; if (this.cachedReversed){ _local4 = (this.cacheIsDirty) ? this.totalDuration : this.cachedTotalDuration; this.cachedStartTime = (_local3 - ((_local4 - _arg1) / this.cachedTimeScale)); } else { this.cachedStartTime = (_local3 - (_arg1 / this.cachedTimeScale)); }; if (!this.timeline.cacheIsDirty){ setDirtyCache(false); }; if (this.cachedTotalTime != _arg1){ renderTime(_arg1, _arg2, false); }; }; } public function pause():void{ this.paused = true; } public function set totalDuration(_arg1:Number):void{ this.duration = _arg1; } public function get totalDuration():Number{ return (this.cachedTotalDuration); } public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{ if (_arg1 == this.gc){ if (_arg1){ this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration)))); if (!_arg2){ this.timeline.addChild(this); }; } else { this.active = false; if (!_arg2){ this.timeline.remove(this, true); }; }; this.gc = !(_arg1); }; return (false); } } }//package com.greensock.coreSection 4//Back (com.greensock.easing.Back) package com.greensock.easing { public class Back { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=1.70158):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 1)) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=1.70158):Number{ _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * (((_arg5 + 1) * _arg1) - _arg5)) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=1.70158):Number{ _arg1 = (_arg1 / (_arg4 * 0.5)); if (_arg1 < 1){ _arg5 = (_arg5 * 1.525); return ((((_arg3 * 0.5) * ((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) - _arg5))) + _arg2)); }; _arg1 = (_arg1 - 2); _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 2)) + _arg2)); } } }//package com.greensock.easingSection 5//TweenLite (com.greensock.TweenLite) package com.greensock { import flash.display.*; import flash.events.*; import com.greensock.core.*; import flash.utils.*; import com.greensock.plugins.*; public class TweenLite extends TweenCore { protected var _hasPlugins:Boolean; public var propTweenLookup:Object; public var cachedPT1:PropTween; protected var _overwrite:uint; protected var _ease:Function; public var target:Object; public var ratio:Number;// = 0 protected var _overwrittenProps:Object; protected var _notifyPluginsOfEnabled:Boolean; public static const version:Number = 11.12; public static var rootTimeline:SimpleTimeline; public static var fastEaseLookup:Dictionary = new Dictionary(false); public static var onPluginEvent:Function; public static var rootFramesTimeline:SimpleTimeline; public static var defaultEase:Function = TweenLite.easeOut; public static var plugins:Object = {}; public static var masterList:Dictionary = new Dictionary(false); public static var overwriteManager:Object; public static var rootFrame:Number; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; private static var _shape:Shape = new Shape(); protected static var _reservedProps:Object = {ease:1, delay:1, overwrite:1, onComplete:1, onCompleteParams:1, useFrames:1, runBackwards:1, startAt:1, onUpdate:1, onUpdateParams:1, roundProps:1, onStart:1, onStartParams:1, onReverseComplete:1, onReverseCompleteParams:1, onRepeat:1, onRepeatParams:1, proxiedEase:1, easeParams:1, yoyo:1, onCompleteListener:1, onUpdateListener:1, onStartListener:1, onReverseCompleteListener:1, onRepeatListener:1, orientToBezier:1, timeScale:1, immediateRender:1, repeat:1, repeatDelay:1, timeline:1, data:1, paused:1}; public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ var _local5:TweenLite; super(_arg2, _arg3); this.target = _arg1; if ((((this.target is TweenCore)) && (("timeScale" in this.vars)))){ this.cachedTimeScale = 1; }; propTweenLookup = {}; _ease = defaultEase; _overwrite = (((!(("overwrite" in _arg3))) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite); var _local4:Array = masterList[_arg1]; if (!_local4){ masterList[_arg1] = [this]; } else { if (_overwrite == 1){ for each (_local5 in _local4) { if (!_local5.gc){ _local5.setEnabled(false, false); }; }; masterList[_arg1] = [this]; } else { _local4[_local4.length] = this; }; }; if (((this.active) || (this.vars.immediateRender))){ renderTime(0, false, true); }; } protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams))); } override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ var _local4:Boolean; var _local5:Number = this.cachedTime; if (((!(this.active)) && (!(this.cachedPaused)))){ this.active = true; }; if (_arg1 >= this.cachedDuration){ this.cachedTotalTime = (this.cachedTime = this.cachedDuration); this.ratio = 1; _local4 = true; if (this.cachedDuration == 0){ if ((((((_arg1 == 0)) || ((_rawPrevTime < 0)))) && (!((_rawPrevTime == _arg1))))){ _arg3 = true; }; _rawPrevTime = _arg1; }; } else { if (_arg1 <= 0){ this.cachedTotalTime = (this.cachedTime = (this.ratio = 0)); if (_arg1 < 0){ this.active = false; if (this.cachedDuration == 0){ if (_rawPrevTime > 0){ _arg3 = true; _local4 = true; }; _rawPrevTime = _arg1; }; }; if (((this.cachedReversed) && (!((_local5 == 0))))){ _local4 = true; }; } else { this.cachedTotalTime = (this.cachedTime = _arg1); this.ratio = _ease(_arg1, 0, 1, this.cachedDuration); }; }; if ((((this.cachedTime == _local5)) && (!(_arg3)))){ return; }; if (!this.initted){ init(); if (((!(_local4)) && (this.cachedTime))){ this.ratio = _ease(this.cachedTime, 0, 1, this.cachedDuration); }; }; if ((((((((_local5 == 0)) && (this.vars.onStart))) && (!((this.cachedTime == 0))))) && (!(_arg2)))){ this.vars.onStart.apply(null, this.vars.onStartParams); }; var _local6:PropTween = this.cachedPT1; while (_local6) { _local6.target[_local6.property] = (_local6.start + (this.ratio * _local6.change)); _local6 = _local6.nextNode; }; if (((_hasUpdate) && (!(_arg2)))){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local4){ if (((_hasPlugins) && (this.cachedPT1))){ onPluginEvent("onComplete", this); }; complete(true, _arg2); }; } override public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{ var _local3:Array; if (_arg1 == this.gc){ if (_arg1){ _local3 = TweenLite.masterList[this.target]; if (!_local3){ TweenLite.masterList[this.target] = [this]; } else { _local3[_local3.length] = this; }; }; super.setEnabled(_arg1, _arg2); if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){ return (onPluginEvent((_arg1) ? "onEnable" : "onDisable", this)); }; }; return (false); } protected function init():void{ var _local1:String; var _local2:int; var _local3:*; var _local4:Boolean; var _local5:Array; var _local6:PropTween; if (typeof(this.vars.ease) == "function"){ _ease = this.vars.ease; }; if (this.vars.easeParams){ this.vars.proxiedEase = _ease; _ease = easeProxy; }; this.cachedPT1 = null; this.propTweenLookup = {}; for (_local1 in this.vars) { if ((((_local1 in _reservedProps)) && (!((((_local1 == "timeScale")) && ((this.target is TweenCore))))))){ } else { if ((((_local1 in plugins)) && (new ((plugins[_local1] as Class)).onInitTween(this.target, this.vars[_local1], this)))){ this.cachedPT1 = new PropTween(_local3, "changeFactor", 0, 1, ((_local3.overwriteProps.length)==1) ? _local3.overwriteProps[0] : "_MULTIPLE_", true, this.cachedPT1); if (this.cachedPT1.name == "_MULTIPLE_"){ _local2 = _local3.overwriteProps.length; while (_local2--) { this.propTweenLookup[_local3.overwriteProps[_local2]] = this.cachedPT1; }; } else { this.propTweenLookup[this.cachedPT1.name] = this.cachedPT1; }; if (_local3.priority){ this.cachedPT1.priority = _local3.priority; _local4 = true; }; if (((_local3.onDisable) || (_local3.onEnable))){ _notifyPluginsOfEnabled = true; }; _hasPlugins = true; } else { this.cachedPT1 = new PropTween(this.target, _local1, Number(this.target[_local1]), ((typeof(this.vars[_local1]))=="number") ? (Number(this.vars[_local1]) - this.target[_local1]) : Number(this.vars[_local1]), _local1, false, this.cachedPT1); this.propTweenLookup[_local1] = this.cachedPT1; }; }; }; if (_local4){ onPluginEvent("onInit", this); }; if (this.vars.runBackwards){ _local6 = this.cachedPT1; while (_local6) { _local6.start = (_local6.start + _local6.change); _local6.change = -(_local6.change); _local6 = _local6.nextNode; }; }; _hasUpdate = Boolean(!((this.vars.onUpdate == null))); if (_overwrittenProps){ killVars(_overwrittenProps); if (this.cachedPT1 == null){ this.setEnabled(false, false); }; }; if ((((((((_overwrite > 1)) && (this.cachedPT1))) && (masterList[this.target]))) && ((_local5.length > 1)))){ if (overwriteManager.manageOverwrites(this, this.propTweenLookup, _local5, _overwrite)){ init(); }; }; this.initted = true; } public function killVars(_arg1:Object, _arg2:Boolean=true):Boolean{ var _local3:String; var _local4:PropTween; var _local5:Boolean; if (_overwrittenProps == null){ _overwrittenProps = {}; }; for (_local3 in _arg1) { if ((_local3 in propTweenLookup)){ _local4 = propTweenLookup[_local3]; if (((_local4.isPlugin) && ((_local4.name == "_MULTIPLE_")))){ _local4.target.killProps(_arg1); if (_local4.target.overwriteProps.length == 0){ _local4.name = ""; }; }; if (_local4.name != "_MULTIPLE_"){ if (_local4.nextNode){ _local4.nextNode.prevNode = _local4.prevNode; }; if (_local4.prevNode){ _local4.prevNode.nextNode = _local4.nextNode; } else { if (this.cachedPT1 == _local4){ this.cachedPT1 = _local4.nextNode; }; }; if (((_local4.isPlugin) && (_local4.target.onDisable))){ _local4.target.onDisable(); if (_local4.target.activeDisable){ _local5 = true; }; }; delete propTweenLookup[_local3]; }; }; if (_arg2){ _overwrittenProps[_local3] = 1; }; }; return (_local5); } override public function invalidate():void{ if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){ onPluginEvent("onDisable", this); }; this.cachedPT1 = null; _overwrittenProps = null; _hasUpdate = (this.initted = (this.active = (_notifyPluginsOfEnabled = false))); this.propTweenLookup = {}; } public static function initClass():void{ rootFrame = 0; rootTimeline = new SimpleTimeline(null); rootFramesTimeline = new SimpleTimeline(null); rootTimeline.cachedStartTime = (getTimer() * 0.001); rootFramesTimeline.cachedStartTime = rootFrame; rootTimeline.autoRemoveChildren = true; rootFramesTimeline.autoRemoveChildren = true; _shape.addEventListener(Event.ENTER_FRAME, updateAll, false, 0, true); if (overwriteManager == null){ overwriteManager = {mode:1, enabled:false}; }; } public static function killTweensOf(_arg1:Object, _arg2:Boolean=false):void{ var _local3:Array; var _local4:int; if ((_arg1 in masterList)){ _local3 = masterList[_arg1]; _local4 = _local3.length; while (_local4--) { if (!TweenLite(_local3[_local4]).gc){ if (_arg2){ TweenLite(_local3[_local4]).complete(false, false); } else { TweenLite(_local3[_local4]).setEnabled(false, false); }; }; }; delete masterList[_arg1]; }; } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; if (!("immediateRender" in _arg3)){ _arg3.immediateRender = true; }; return (new TweenLite(_arg1, _arg2, _arg3)); } protected static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (1 - (_arg1 / _arg4)); return ((1 - (_arg1 * _arg1))); } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, immediateRender:false, useFrames:_arg4, overwrite:0})); } protected static function updateAll(_arg1:Event=null):void{ var _local2:Dictionary; var _local3:Object; var _local4:Array; var _local5:int; rootTimeline.renderTime((((getTimer() * 0.001) - rootTimeline.cachedStartTime) * rootTimeline.cachedTimeScale), false, false); rootFrame++; rootFramesTimeline.renderTime(((rootFrame - rootFramesTimeline.cachedStartTime) * rootFramesTimeline.cachedTimeScale), false, false); if (!(rootFrame % 60)){ _local2 = masterList; for (_local3 in _local2) { _local4 = _local2[_local3]; _local5 = _local4.length; while (_local5--) { if (TweenLite(_local4[_local5]).gc){ _local4.splice(_local5, 1); }; }; if (_local4.length == 0){ delete _local2[_local3]; }; }; }; } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } } }//package com.greensockSection 6//UILoader (fl.containers.UILoader) package fl.containers { import flash.display.*; import flash.events.*; import flash.net.*; import fl.core.*; import flash.utils.*; import flash.system.*; import fl.events.*; public class UILoader extends UIComponent { protected var contentInited:Boolean;// = false protected var _maintainAspectRatio:Boolean;// = true protected var loader:Loader; protected var _autoLoad:Boolean;// = true protected var contentClip:Sprite; protected var _scaleContent:Boolean;// = true protected var _source:Object; private static var defaultStyles:Object = {}; protected function _unload(_arg1:Boolean=false):void{ var throwError = _arg1; if (loader != null){ clearLoadEvents(); contentClip.removeChild(loader); try { loader.close(); } catch(e:Error) { }; try { loader.unload(); } catch(e) { if (throwError){ throw (e); }; }; loader = null; return; }; contentInited = false; if (contentClip.numChildren){ contentClip.removeChildAt(0); }; } protected function handleComplete(_arg1:Event):void{ clearLoadEvents(); passEvent(_arg1); } override public function setSize(_arg1:Number, _arg2:Number):void{ if (((!(_scaleContent)) && ((_width > 0)))){ return; }; super.setSize(_arg1, _arg2); } override protected function draw():void{ if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function handleError(_arg1:Event):void{ passEvent(_arg1); clearLoadEvents(); loader.contentLoaderInfo.removeEventListener(Event.INIT, handleInit); } protected function initLoader():void{ loader = new Loader(); contentClip.addChild(loader); } protected function clearLoadEvents():void{ loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, handleError); loader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, handleError); loader.contentLoaderInfo.removeEventListener(Event.OPEN, passEvent); loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, passEvent); loader.contentLoaderInfo.removeEventListener(HTTPStatusEvent.HTTP_STATUS, passEvent); loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, handleComplete); } protected function drawLayout():void{ var _local2:Number; var _local3:Number; var _local6:LoaderInfo; if (!contentInited){ return; }; var _local1:Boolean; if (loader){ _local6 = loader.contentLoaderInfo; _local2 = _local6.width; _local3 = _local6.height; } else { _local2 = contentClip.width; _local3 = contentClip.height; }; var _local4:Number = _width; var _local5:Number = _height; if (!_scaleContent){ _width = contentClip.width; _height = contentClip.height; } else { sizeContent(contentClip, _local2, _local3, _width, _height); }; if (((!((_local4 == _width))) || (!((_local5 == _height))))){ dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, true)); }; } public function get scaleContent():Boolean{ return (_scaleContent); } override protected function configUI():void{ super.configUI(); contentClip = new Sprite(); addChild(contentClip); } public function get maintainAspectRatio():Boolean{ return (_maintainAspectRatio); } protected function passEvent(_arg1:Event):void{ dispatchEvent(_arg1); } public function get bytesTotal():uint{ return (((((loader == null)) || ((loader.contentLoaderInfo == null)))) ? 0 : loader.contentLoaderInfo.bytesTotal); } protected function sizeContent(_arg1:DisplayObject, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local8:Number; var _local9:Number; var _local6:Number = _arg4; var _local7:Number = _arg5; if (_maintainAspectRatio){ _local8 = (_arg4 / _arg5); _local9 = (_arg2 / _arg3); if (_local8 < _local9){ _local7 = (_local6 / _local9); } else { _local6 = (_local7 * _local9); }; }; _arg1.width = _local6; _arg1.height = _local7; _arg1.x = ((_arg4 / 2) - (_local6 / 2)); _arg1.y = ((_arg5 / 2) - (_local7 / 2)); } public function get source():Object{ return (_source); } public function set scaleContent(_arg1:Boolean):void{ if (_scaleContent == _arg1){ return; }; _scaleContent = _arg1; invalidate(InvalidationType.SIZE); } public function get bytesLoaded():uint{ return (((((loader == null)) || ((loader.contentLoaderInfo == null)))) ? 0 : loader.contentLoaderInfo.bytesLoaded); } public function loadBytes(_arg1:ByteArray, _arg2:LoaderContext=null):void{ var bytes = _arg1; var context = _arg2; _unload(); initLoader(); try { loader.loadBytes(bytes, context); } catch(error) { throw (error); }; } protected function handleInit(_arg1:Event):void{ loader.contentLoaderInfo.removeEventListener(Event.INIT, handleInit); contentInited = true; passEvent(_arg1); invalidate(InvalidationType.SIZE); } public function set autoLoad(_arg1:Boolean):void{ _autoLoad = _arg1; if (((((((_autoLoad) && ((loader == null)))) && (!((_source == null))))) && (!((_source == ""))))){ load(); }; } public function load(_arg1:URLRequest=null, _arg2:LoaderContext=null):void{ _unload(); if ((((((_arg1 == null)) || ((_arg1.url == null)))) && ((((_source == null)) || ((_source == "")))))){ return; }; var _local3:DisplayObject = getDisplayObjectInstance(source); if (_local3 != null){ contentClip.addChild(_local3); contentInited = true; invalidate(InvalidationType.SIZE); return; }; if (_arg1 == null){ _arg1 = new URLRequest(_source.toString()); }; if (_arg2 == null){ _arg2 = new LoaderContext(false, ApplicationDomain.currentDomain); }; initLoader(); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, handleError, false, 0, true); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, handleError, false, 0, true); loader.contentLoaderInfo.addEventListener(Event.OPEN, passEvent, false, 0, true); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, passEvent, false, 0, true); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, handleComplete, false, 0, true); loader.contentLoaderInfo.addEventListener(Event.INIT, handleInit, false, 0, true); loader.contentLoaderInfo.addEventListener(HTTPStatusEvent.HTTP_STATUS, passEvent, false, 0, true); loader.load(_arg1, _arg2); } public function get percentLoaded():Number{ return (((bytesTotal)<=0) ? 0 : ((bytesLoaded / bytesTotal) * 100)); } public function set maintainAspectRatio(_arg1:Boolean):void{ _maintainAspectRatio = _arg1; invalidate(InvalidationType.SIZE); } public function get autoLoad():Boolean{ return (_autoLoad); } public function set source(_arg1:Object):void{ if (_arg1 == ""){ return; }; _source = _arg1; _unload(); if (((_autoLoad) && (!((_source == null))))){ load(); }; } public function close():void{ try { loader.close(); } catch(error) { throw (error); }; } public function get content():DisplayObject{ if (loader != null){ return (loader.content); }; if (contentClip.numChildren){ return (contentClip.getChildAt(0)); }; return (null); } public function unload():void{ _source = null; _unload(true); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.containersSection 7//BaseButton (fl.controls.BaseButton) package fl.controls { import flash.display.*; import flash.events.*; import fl.core.*; import flash.utils.*; import fl.events.*; public class BaseButton extends UIComponent { protected var pressTimer:Timer; protected var _autoRepeat:Boolean;// = false protected var _selected:Boolean;// = false protected var background:DisplayObject; private var unlockedMouseState:String; protected var mouseState:String; private var _mouseStateLocked:Boolean;// = false private static var defaultStyles:Object = {upSkin:"Button_upSkin", downSkin:"Button_downSkin", overSkin:"Button_overSkin", disabledSkin:"Button_disabledSkin", selectedDisabledSkin:"Button_selectedDisabledSkin", selectedUpSkin:"Button_selectedUpSkin", selectedDownSkin:"Button_selectedDownSkin", selectedOverSkin:"Button_selectedOverSkin", focusRectSkin:null, focusRectPadding:null, repeatDelay:500, repeatInterval:35}; public function BaseButton(){ buttonMode = true; mouseChildren = false; useHandCursor = false; setupMouseEvents(); setMouseState("up"); pressTimer = new Timer(1, 0); pressTimer.addEventListener(TimerEvent.TIMER, buttonDown, false, 0, true); } override public function get enabled():Boolean{ return (super.enabled); } protected function startPress():void{ if (_autoRepeat){ pressTimer.delay = Number(getStyleValue("repeatDelay")); pressTimer.start(); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function drawLayout():void{ background.width = width; background.height = height; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; mouseEnabled = _arg1; } public function set autoRepeat(_arg1:Boolean):void{ _autoRepeat = _arg1; } protected function mouseEventHandler(_arg1:MouseEvent):void{ if (_arg1.type == MouseEvent.MOUSE_DOWN){ setMouseState("down"); startPress(); } else { if ((((_arg1.type == MouseEvent.ROLL_OVER)) || ((_arg1.type == MouseEvent.MOUSE_UP)))){ setMouseState("over"); endPress(); } else { if (_arg1.type == MouseEvent.ROLL_OUT){ setMouseState("up"); endPress(); }; }; }; } protected function drawBackground():void{ var _local1:String = (enabled) ? mouseState : "disabled"; if (selected){ _local1 = (("selected" + _local1.substr(0, 1).toUpperCase()) + _local1.substr(1)); }; _local1 = (_local1 + "Skin"); var _local2:DisplayObject = background; background = getDisplayObjectInstance(getStyleValue(_local1)); addChildAt(background, 0); if (((!((_local2 == null))) && (!((_local2 == background))))){ removeChild(_local2); }; } public function get selected():Boolean{ return (_selected); } protected function setupMouseEvents():void{ addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false, 0, true); } protected function endPress():void{ pressTimer.reset(); } public function set mouseStateLocked(_arg1:Boolean):void{ _mouseStateLocked = _arg1; if (_arg1 == false){ setMouseState(unlockedMouseState); } else { unlockedMouseState = mouseState; }; } public function get autoRepeat():Boolean{ return (_autoRepeat); } public function set selected(_arg1:Boolean):void{ if (_selected == _arg1){ return; }; _selected = _arg1; invalidate(InvalidationType.STATE); } protected function buttonDown(_arg1:TimerEvent):void{ if (!_autoRepeat){ endPress(); return; }; if (pressTimer.currentCount == 1){ pressTimer.delay = Number(getStyleValue("repeatInterval")); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } public function setMouseState(_arg1:String):void{ if (_mouseStateLocked){ unlockedMouseState = _arg1; return; }; if (mouseState == _arg1){ return; }; mouseState = _arg1; invalidate(InvalidationType.STATE); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controlsSection 8//Button (fl.controls.Button) package fl.controls { import flash.display.*; import fl.core.*; import fl.managers.*; public class Button extends LabelButton implements IFocusManagerComponent { protected var _emphasized:Boolean;// = false protected var emphasizedBorder:DisplayObject; private static var defaultStyles:Object = {emphasizedSkin:"Button_emphasizedSkin", emphasizedPadding:2}; public static var createAccessibilityImplementation:Function; public function set emphasized(_arg1:Boolean):void{ _emphasized = _arg1; invalidate(InvalidationType.STYLES); } override protected function initializeAccessibility():void{ if (Button.createAccessibilityImplementation != null){ Button.createAccessibilityImplementation(this); }; } protected function drawEmphasized():void{ var _local2:Number; if (emphasizedBorder != null){ removeChild(emphasizedBorder); }; emphasizedBorder = null; if (!_emphasized){ return; }; var _local1:Object = getStyleValue("emphasizedSkin"); if (_local1 != null){ emphasizedBorder = getDisplayObjectInstance(_local1); }; if (emphasizedBorder != null){ addChildAt(emphasizedBorder, 0); _local2 = Number(getStyleValue("emphasizedPadding")); emphasizedBorder.x = (emphasizedBorder.y = -(_local2)); emphasizedBorder.width = (width + (_local2 * 2)); emphasizedBorder.height = (height + (_local2 * 2)); }; } public function get emphasized():Boolean{ return (_emphasized); } override protected function draw():void{ if (((isInvalid(InvalidationType.STYLES)) || (isInvalid(InvalidationType.SIZE)))){ drawEmphasized(); }; super.draw(); if (emphasizedBorder != null){ setChildIndex(emphasizedBorder, (numChildren - 1)); }; } override public function drawFocus(_arg1:Boolean):void{ var _local2:Number; var _local3:*; super.drawFocus(_arg1); if (_arg1){ _local2 = Number(getStyleValue("emphasizedPadding")); if ((((_local2 < 0)) || (!(_emphasized)))){ _local2 = 0; }; _local3 = getStyleValue("focusRectPadding"); _local3 = ((_local3)==null) ? 2 : _local3; _local3 = (_local3 + _local2); uiFocusRect.x = -(_local3); uiFocusRect.y = -(_local3); uiFocusRect.width = (width + (_local3 * 2)); uiFocusRect.height = (height + (_local3 * 2)); }; } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(LabelButton.getStyleDefinition(), defaultStyles)); } } }//package fl.controlsSection 9//ButtonLabelPlacement (fl.controls.ButtonLabelPlacement) package fl.controls { public class ButtonLabelPlacement { public static const TOP:String = "top"; public static const LEFT:String = "left"; public static const BOTTOM:String = "bottom"; public static const RIGHT:String = "right"; } }//package fl.controlsSection 10//LabelButton (fl.controls.LabelButton) package fl.controls { import flash.display.*; import flash.events.*; import fl.core.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.ui.*; public class LabelButton extends BaseButton implements IFocusManagerComponent { protected var _toggle:Boolean;// = false public var textField:TextField; protected var mode:String;// = "center" protected var _labelPlacement:String;// = "right" protected var oldMouseState:String; protected var _label:String;// = "Label" protected var icon:DisplayObject; private static var defaultStyles:Object = {icon:null, upIcon:null, downIcon:null, overIcon:null, disabledIcon:null, selectedDisabledIcon:null, selectedUpIcon:null, selectedDownIcon:null, selectedOverIcon:null, textFormat:null, disabledTextFormat:null, textPadding:5, embedFonts:false}; public static var createAccessibilityImplementation:Function; override protected function draw():void{ if (textField.text != _label){ label = _label; }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); drawIcon(); drawTextFormat(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } override protected function drawLayout():void{ var _local7:Number; var _local8:Number; var _local1:Number = Number(getStyleValue("textPadding")); var _local2:String = ((((icon == null)) && ((mode == "center")))) ? ButtonLabelPlacement.TOP : _labelPlacement; textField.height = (textField.textHeight + 4); var _local3:Number = (textField.textWidth + 4); var _local4:Number = (textField.textHeight + 4); var _local5:Number = ((icon)==null) ? 0 : (icon.width + _local1); var _local6:Number = ((icon)==null) ? 0 : (icon.height + _local1); textField.visible = (label.length > 0); if (icon != null){ icon.x = Math.round(((width - icon.width) / 2)); icon.y = Math.round(((height - icon.height) / 2)); }; if (textField.visible == false){ textField.width = 0; textField.height = 0; } else { if ((((_local2 == ButtonLabelPlacement.BOTTOM)) || ((_local2 == ButtonLabelPlacement.TOP)))){ _local7 = Math.max(0, Math.min(_local3, (width - (2 * _local1)))); if ((height - 2) > _local4){ _local8 = _local4; } else { _local8 = (height - 2); }; _local3 = _local7; textField.width = _local3; _local4 = _local8; textField.height = _local4; textField.x = Math.round(((width - _local3) / 2)); textField.y = Math.round(((((height - textField.height) - _local6) / 2) + ((_local2)==ButtonLabelPlacement.BOTTOM) ? _local6 : 0)); if (icon != null){ icon.y = Math.round(((_local2)==ButtonLabelPlacement.BOTTOM) ? (textField.y - _local6) : ((textField.y + textField.height) + _local1)); }; } else { _local7 = Math.max(0, Math.min(_local3, ((width - _local5) - (2 * _local1)))); _local3 = _local7; textField.width = _local3; textField.x = Math.round(((((width - _local3) - _local5) / 2) + ((_local2)!=ButtonLabelPlacement.LEFT) ? _local5 : 0)); textField.y = Math.round(((height - textField.height) / 2)); if (icon != null){ icon.x = Math.round(((_local2)!=ButtonLabelPlacement.LEFT) ? (textField.x - _local5) : ((textField.x + _local3) + _local1)); }; }; }; super.drawLayout(); } protected function toggleSelected(_arg1:MouseEvent):void{ selected = !(selected); dispatchEvent(new Event(Event.CHANGE, true)); } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ setMouseState(oldMouseState); oldMouseState = null; endPress(); dispatchEvent(new MouseEvent(MouseEvent.CLICK)); }; } public function get labelPlacement():String{ return (_labelPlacement); } public function get toggle():Boolean{ return (_toggle); } protected function setEmbedFont(){ var _local1:Object = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } override public function get selected():Boolean{ return ((_toggle) ? _selected : false); } override protected function configUI():void{ super.configUI(); textField = new TextField(); textField.type = TextFieldType.DYNAMIC; textField.selectable = false; addChild(textField); } override protected function initializeAccessibility():void{ if (LabelButton.createAccessibilityImplementation != null){ LabelButton.createAccessibilityImplementation(this); }; } public function set labelPlacement(_arg1:String):void{ _labelPlacement = _arg1; invalidate(InvalidationType.SIZE); } protected function drawIcon():void{ var _local1:DisplayObject = icon; var _local2:String = (enabled) ? mouseState : "disabled"; if (selected){ _local2 = (("selected" + _local2.substr(0, 1).toUpperCase()) + _local2.substr(1)); }; _local2 = (_local2 + "Icon"); var _local3:Object = getStyleValue(_local2); if (_local3 == null){ _local3 = getStyleValue("icon"); }; if (_local3 != null){ icon = getDisplayObjectInstance(_local3); }; if (icon != null){ addChildAt(icon, 1); }; if (((!((_local1 == null))) && (!((_local1 == icon))))){ removeChild(_local1); }; } public function set label(_arg1:String):void{ _label = _arg1; if (textField.text != _label){ textField.text = _label; dispatchEvent(new ComponentEvent(ComponentEvent.LABEL_CHANGE)); }; invalidate(InvalidationType.SIZE); invalidate(InvalidationType.STYLES); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ if (oldMouseState == null){ oldMouseState = mouseState; }; setMouseState("down"); startPress(); }; } public function set toggle(_arg1:Boolean):void{ if (((!(_arg1)) && (super.selected))){ selected = false; }; _toggle = _arg1; if (_toggle){ addEventListener(MouseEvent.CLICK, toggleSelected, false, 0, true); } else { removeEventListener(MouseEvent.CLICK, toggleSelected); }; invalidate(InvalidationType.STATE); } override public function set selected(_arg1:Boolean):void{ _selected = _arg1; if (_toggle){ invalidate(InvalidationType.STATE); }; } protected function drawTextFormat():void{ var _local1:Object = UIComponent.getStyleDefinition(); var _local2:TextFormat = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); var _local3:TextFormat = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); } public function get label():String{ return (_label); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseButton.getStyleDefinition())); } } }//package fl.controlsSection 11//ScrollBar (fl.controls.ScrollBar) package fl.controls { import flash.events.*; import fl.core.*; import fl.events.*; public class ScrollBar extends UIComponent { private var _direction:String;// = "vertical" private var _minScrollPosition:Number;// = 0 private var _pageSize:Number;// = 10 private var _maxScrollPosition:Number;// = 0 protected var downArrow:BaseButton; private var _lineScrollSize:Number;// = 1 protected var upArrow:BaseButton; private var _scrollPosition:Number;// = 0 private var thumbScrollOffset:Number; protected var track:BaseButton; protected var thumb:LabelButton; protected var inDrag:Boolean;// = false private var _pageScrollSize:Number;// = 0 protected static const THUMB_STYLES:Object = {disabledSkin:"thumbDisabledSkin", downSkin:"thumbDownSkin", overSkin:"thumbOverSkin", upSkin:"thumbUpSkin", icon:"thumbIcon", textPadding:0}; public static const WIDTH:Number = 15; protected static const DOWN_ARROW_STYLES:Object = {disabledSkin:"downArrowDisabledSkin", downSkin:"downArrowDownSkin", overSkin:"downArrowOverSkin", upSkin:"downArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const UP_ARROW_STYLES:Object = {disabledSkin:"upArrowDisabledSkin", downSkin:"upArrowDownSkin", overSkin:"upArrowOverSkin", upSkin:"upArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const TRACK_STYLES:Object = {disabledSkin:"trackDisabledSkin", downSkin:"trackDownSkin", overSkin:"trackOverSkin", upSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {downArrowDisabledSkin:"ScrollArrowDown_disabledSkin", downArrowDownSkin:"ScrollArrowDown_downSkin", downArrowOverSkin:"ScrollArrowDown_overSkin", downArrowUpSkin:"ScrollArrowDown_upSkin", thumbDisabledSkin:"ScrollThumb_upSkin", thumbDownSkin:"ScrollThumb_downSkin", thumbOverSkin:"ScrollThumb_overSkin", thumbUpSkin:"ScrollThumb_upSkin", trackDisabledSkin:"ScrollTrack_skin", trackDownSkin:"ScrollTrack_skin", trackOverSkin:"ScrollTrack_skin", trackUpSkin:"ScrollTrack_skin", upArrowDisabledSkin:"ScrollArrowUp_disabledSkin", upArrowDownSkin:"ScrollArrowUp_downSkin", upArrowOverSkin:"ScrollArrowUp_overSkin", upArrowUpSkin:"ScrollArrowUp_upSkin", thumbIcon:"ScrollBar_thumbIcon", repeatDelay:500, repeatInterval:35}; public function ScrollBar(){ setStyles(); focusEnabled = false; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; downArrow.enabled = (track.enabled = (thumb.enabled = (upArrow.enabled = ((enabled) && ((_maxScrollPosition > _minScrollPosition)))))); updateThumb(); } override public function setSize(_arg1:Number, _arg2:Number):void{ if (_direction == ScrollBarDirection.HORIZONTAL){ super.setSize(_arg2, _arg1); } else { super.setSize(_arg1, _arg2); }; } public function set lineScrollSize(_arg1:Number):void{ if (_arg1 > 0){ _lineScrollSize = _arg1; }; } public function get minScrollPosition():Number{ return (_minScrollPosition); } protected function updateThumb():void{ var _local1:Number = ((_maxScrollPosition - _minScrollPosition) + _pageSize); if ((((((track.height <= 12)) || ((_maxScrollPosition <= _minScrollPosition)))) || ((((_local1 == 0)) || (isNaN(_local1)))))){ thumb.height = 12; thumb.visible = false; } else { thumb.height = Math.max(13, ((_pageSize / _local1) * track.height)); thumb.y = (track.y + ((track.height - thumb.height) * ((_scrollPosition - _minScrollPosition) / (_maxScrollPosition - _minScrollPosition)))); thumb.visible = enabled; }; } public function set minScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _arg1, _maxScrollPosition); } public function get lineScrollSize():Number{ return (_lineScrollSize); } public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ var _local3:Number = scrollPosition; _scrollPosition = Math.max(_minScrollPosition, Math.min(_maxScrollPosition, _arg1)); if (_local3 == _scrollPosition){ return; }; if (_arg2){ dispatchEvent(new ScrollEvent(_direction, (scrollPosition - _local3), scrollPosition)); }; updateThumb(); } public function get maxScrollPosition():Number{ return (_maxScrollPosition); } public function get scrollPosition():Number{ return (_scrollPosition); } override public function get height():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.width : super.height); } public function get pageSize():Number{ return (_pageSize); } public function set maxScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _minScrollPosition, _arg1); } protected function thumbReleaseHandler(_arg1:MouseEvent):void{ inDrag = false; mouseChildren = true; thumb.mouseStateLocked = false; stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler); } public function set pageScrollSize(_arg1:Number):void{ if (_arg1 >= 0){ _pageScrollSize = _arg1; }; } public function set scrollPosition(_arg1:Number):void{ setScrollPosition(_arg1, true); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ var _local1:Number; if (isInvalid(InvalidationType.SIZE)){ _local1 = super.height; downArrow.move(0, Math.max(upArrow.height, (_local1 - downArrow.height))); track.setSize(WIDTH, Math.max(0, (_local1 - (downArrow.height + upArrow.height)))); updateThumb(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ setStyles(); }; downArrow.drawNow(); upArrow.drawNow(); track.drawNow(); thumb.drawNow(); validate(); } override public function get width():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.height : super.width); } override protected function configUI():void{ super.configUI(); track = new BaseButton(); track.move(0, 14); track.useHandCursor = false; track.autoRepeat = true; track.focusEnabled = false; addChild(track); thumb = new LabelButton(); thumb.label = ""; thumb.setSize(WIDTH, 15); thumb.move(0, 15); thumb.focusEnabled = false; addChild(thumb); downArrow = new BaseButton(); downArrow.setSize(WIDTH, 14); downArrow.autoRepeat = true; downArrow.focusEnabled = false; addChild(downArrow); upArrow = new BaseButton(); upArrow.setSize(WIDTH, 14); upArrow.move(0, 0); upArrow.autoRepeat = true; upArrow.focusEnabled = false; addChild(upArrow); upArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); downArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); track.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbPressHandler, false, 0, true); enabled = false; } public function set pageSize(_arg1:Number):void{ if (_arg1 > 0){ _pageSize = _arg1; }; } public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ this.pageSize = _arg1; _minScrollPosition = _arg2; _maxScrollPosition = _arg3; if (_arg4 >= 0){ _pageScrollSize = _arg4; }; enabled = (_maxScrollPosition > _minScrollPosition); setScrollPosition(_scrollPosition, false); updateThumb(); } public function get pageScrollSize():Number{ return (((_pageScrollSize)==0) ? _pageSize : _pageScrollSize); } protected function handleThumbDrag(_arg1:MouseEvent):void{ var _local2:Number = Math.max(0, Math.min((track.height - thumb.height), ((mouseY - track.y) - thumbScrollOffset))); setScrollPosition((((_local2 / (track.height - thumb.height)) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition)); } protected function setStyles():void{ copyStylesToChild(downArrow, DOWN_ARROW_STYLES); copyStylesToChild(thumb, THUMB_STYLES); copyStylesToChild(track, TRACK_STYLES); copyStylesToChild(upArrow, UP_ARROW_STYLES); } protected function scrollPressHandler(_arg1:ComponentEvent):void{ var _local2:Number; var _local3:Number; _arg1.stopImmediatePropagation(); if (_arg1.currentTarget == upArrow){ setScrollPosition((_scrollPosition - _lineScrollSize)); } else { if (_arg1.currentTarget == downArrow){ setScrollPosition((_scrollPosition + _lineScrollSize)); } else { _local2 = (((track.mouseY / track.height) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition); _local3 = ((pageScrollSize)==0) ? pageSize : pageScrollSize; if (_scrollPosition < _local2){ setScrollPosition(Math.min(_local2, (_scrollPosition + _local3))); } else { if (_scrollPosition > _local2){ setScrollPosition(Math.max(_local2, (_scrollPosition - _local3))); }; }; }; }; } protected function thumbPressHandler(_arg1:MouseEvent):void{ inDrag = true; thumbScrollOffset = (mouseY - thumb.y); thumb.mouseStateLocked = true; mouseChildren = false; stage.addEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler, false, 0, true); } public function set direction(_arg1:String):void{ if (_direction == _arg1){ return; }; _direction = _arg1; if (isLivePreview){ return; }; setScaleY(1); var _local2 = (_direction == ScrollBarDirection.HORIZONTAL); if (((_local2) && (componentInspectorSetting))){ if (rotation == 90){ return; }; setScaleX(-1); rotation = -90; }; if (!componentInspectorSetting){ if (((_local2) && ((rotation == 0)))){ rotation = -90; setScaleX(-1); } else { if (((!(_local2)) && ((rotation == -90)))){ rotation = 0; setScaleX(1); }; }; }; invalidate(InvalidationType.SIZE); } public function get direction():String{ return (_direction); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controlsSection 12//ScrollBarDirection (fl.controls.ScrollBarDirection) package fl.controls { public class ScrollBarDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; } }//package fl.controlsSection 13//UIScrollBar (fl.controls.UIScrollBar) package fl.controls { import flash.events.*; import fl.core.*; import fl.events.*; import flash.text.*; public class UIScrollBar extends ScrollBar { protected var inEdit:Boolean;// = false protected var inScroll:Boolean;// = false protected var _scrollTarget:TextField; private static var defaultStyles:Object = {}; protected function updateScrollTargetProperties():void{ var _local1:Boolean; var _local2:Number; if (_scrollTarget == null){ setScrollProperties(pageSize, minScrollPosition, maxScrollPosition, pageScrollSize); scrollPosition = 0; } else { _local1 = (direction == ScrollBarDirection.HORIZONTAL); _local2 = (_local1) ? _scrollTarget.width : 10; setScrollProperties(_local2, (_local1) ? 0 : 1, (_local1) ? _scrollTarget.maxScrollH : _scrollTarget.maxScrollV, pageScrollSize); scrollPosition = (_local1) ? _scrollTarget.scrollH : _scrollTarget.scrollV; }; } override public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ var _local5:Number = _arg3; var _local6:Number = ((_arg2)<0) ? 0 : _arg2; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local5 = ((_arg3)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local5; } else { _local5 = ((_arg3)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local5; }; }; super.setScrollProperties(_arg1, _local6, _local5, _arg4); } protected function handleTargetScroll(_arg1:Event):void{ if (inDrag){ return; }; if (!enabled){ return; }; inEdit = true; updateScrollTargetProperties(); scrollPosition = ((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV; inEdit = false; } override public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ super.setScrollPosition(_arg1, _arg2); if (!_scrollTarget){ inScroll = false; return; }; updateTargetScroll(); } public function get scrollTargetName():String{ return (_scrollTarget.name); } override protected function draw():void{ if (isInvalid(InvalidationType.DATA)){ updateScrollTargetProperties(); }; super.draw(); } override public function set direction(_arg1:String):void{ if (isLivePreview){ return; }; super.direction = _arg1; updateScrollTargetProperties(); } protected function updateTargetScroll(_arg1:ScrollEvent=null):void{ if (inEdit){ return; }; if (direction == ScrollBarDirection.HORIZONTAL){ _scrollTarget.scrollH = scrollPosition; } else { _scrollTarget.scrollV = scrollPosition; }; } override public function set minScrollPosition(_arg1:Number):void{ super.minScrollPosition = ((_arg1)<0) ? 0 : _arg1; } override public function set maxScrollPosition(_arg1:Number):void{ var _local2:Number = _arg1; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local2 = ((_local2)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local2; } else { _local2 = ((_local2)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local2; }; }; super.maxScrollPosition = _local2; } protected function handleTargetChange(_arg1:Event):void{ inEdit = true; setScrollPosition(((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV, true); updateScrollTargetProperties(); inEdit = false; } public function update():void{ inEdit = true; updateScrollTargetProperties(); inEdit = false; } public function set scrollTargetName(_arg1:String):void{ var target = _arg1; try { scrollTarget = (parent.getChildByName(target) as TextField); } catch(error:Error) { throw (new Error("ScrollTarget not found, or is not a TextField")); }; } public function set scrollTarget(_arg1:TextField):void{ if (_scrollTarget != null){ _scrollTarget.removeEventListener(Event.CHANGE, handleTargetChange, false); _scrollTarget.removeEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false); _scrollTarget.removeEventListener(Event.SCROLL, handleTargetScroll, false); removeEventListener(ScrollEvent.SCROLL, updateTargetScroll, false); }; _scrollTarget = _arg1; if (_scrollTarget != null){ _scrollTarget.addEventListener(Event.CHANGE, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(Event.SCROLL, handleTargetScroll, false, 0, true); addEventListener(ScrollEvent.SCROLL, updateTargetScroll, false, 0, true); }; invalidate(InvalidationType.DATA); } public function get scrollTarget():TextField{ return (_scrollTarget); } override public function get direction():String{ return (super.direction); } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(defaultStyles, ScrollBar.getStyleDefinition())); } } }//package fl.controlsSection 14//ComponentShim (fl.core.ComponentShim) package fl.core { import flash.display.*; public dynamic class ComponentShim extends MovieClip { } }//package fl.coreSection 15//InvalidationType (fl.core.InvalidationType) package fl.core { public class InvalidationType { public static const SIZE:String = "size"; public static const ALL:String = "all"; public static const DATA:String = "data"; public static const SCROLL:String = "scroll"; public static const STATE:String = "state"; public static const STYLES:String = "styles"; public static const SELECTED:String = "selected"; public static const RENDERER_STYLES:String = "rendererStyles"; } }//package fl.coreSection 16//UIComponent (fl.core.UIComponent) package fl.core { import flash.display.*; import flash.events.*; import fl.managers.*; import flash.utils.*; import flash.system.*; import fl.events.*; import flash.text.*; public class UIComponent extends Sprite { protected var _x:Number; protected var _enabled:Boolean;// = true protected var callLaterMethods:Dictionary; private var _mouseFocusEnabled:Boolean;// = true private var tempText:TextField; private var _focusEnabled:Boolean;// = true protected var startHeight:Number; protected var _height:Number; protected var invalidateFlag:Boolean;// = false protected var _oldIMEMode:String;// = null protected var _inspector:Boolean;// = false protected var startWidth:Number; public var focusTarget:IFocusManagerComponent; protected var errorCaught:Boolean;// = false protected var invalidHash:Object; protected var sharedStyles:Object; protected var uiFocusRect:DisplayObject; protected var isLivePreview:Boolean;// = false protected var _imeMode:String;// = null protected var _width:Number; protected var instanceStyles:Object; public var version:String;// = "3.0.0.16" protected var isFocused:Boolean;// = false protected var _y:Number; public static var inCallLaterPhase:Boolean = false; private static var defaultStyles:Object = {focusRectSkin:"focusRectSkin", focusRectPadding:2, textFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), disabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultTextFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultDisabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0)}; public static var createAccessibilityImplementation:Function; private static var focusManagers:Dictionary = new Dictionary(false); public function UIComponent(){ instanceStyles = {}; sharedStyles = {}; invalidHash = {}; callLaterMethods = new Dictionary(); StyleManager.registerInstance(this); configUI(); invalidate(InvalidationType.ALL); tabEnabled = (this is IFocusManagerComponent); focusRect = false; if (tabEnabled){ addEventListener(FocusEvent.FOCUS_IN, focusInHandler); addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler); addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); }; initializeFocusManager(); addEventListener(Event.ENTER_FRAME, hookAccessibility, false, 0, true); } public function getStyle(_arg1:String):Object{ return (instanceStyles[_arg1]); } protected function checkLivePreview():Boolean{ var className:String; if (parent == null){ return (false); }; try { className = getQualifiedClassName(parent); } catch(e:Error) { }; return ((className == "fl.livepreview::LivePreviewParent")); } private function callLaterDispatcher(_arg1:Event):void{ var _local3:Object; if (_arg1.type == Event.ADDED_TO_STAGE){ removeEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher); stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); return; }; _arg1.target.removeEventListener(Event.RENDER, callLaterDispatcher); if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); return; }; inCallLaterPhase = true; var _local2:Dictionary = callLaterMethods; for (_local3 in _local2) { _local3(); delete _local2[_local3]; }; inCallLaterPhase = false; } protected function validate():void{ invalidHash = {}; } protected function focusOutHandler(_arg1:FocusEvent):void{ if (isOurFocus((_arg1.target as DisplayObject))){ drawFocus(false); isFocused = false; }; } public function set mouseFocusEnabled(_arg1:Boolean):void{ _mouseFocusEnabled = _arg1; } public function getFocus():InteractiveObject{ if (stage){ return (stage.focus); }; return (null); } override public function get height():Number{ return (_height); } private function addedHandler(_arg1:Event):void{ removeEventListener("addedToStage", addedHandler); initializeFocusManager(); } protected function getStyleValue(_arg1:String):Object{ return (((instanceStyles[_arg1])==null) ? sharedStyles[_arg1] : instanceStyles[_arg1]); } public function invalidate(_arg1:String="all", _arg2:Boolean=true):void{ invalidHash[_arg1] = true; if (_arg2){ this.callLater(draw); }; } protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((_arg1 == this)); } public function get enabled():Boolean{ return (_enabled); } protected function getScaleX():Number{ return (super.scaleX); } protected function getScaleY():Number{ return (super.scaleY); } public function get focusEnabled():Boolean{ return (_focusEnabled); } protected function afterComponentParameters():void{ } override public function get scaleY():Number{ return ((height / startHeight)); } protected function setIMEMode(_arg1:Boolean){ var enabled = _arg1; if (_imeMode != null){ if (enabled){ IME.enabled = true; _oldIMEMode = IME.conversionMode; try { if (((!(errorCaught)) && (!((IME.conversionMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _imeMode; }; errorCaught = false; } catch(e:Error) { errorCaught = true; throw (new Error(("IME mode not supported: " + _imeMode))); }; } else { if (((!((IME.conversionMode == IMEConversionMode.UNKNOWN))) && (!((_oldIMEMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _oldIMEMode; }; IME.enabled = false; }; }; } protected function draw():void{ if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } override public function set height(_arg1:Number):void{ if (_height == _arg1){ return; }; setSize(width, _arg1); } protected function configUI():void{ isLivePreview = checkLivePreview(); var _local1:Number = rotation; rotation = 0; var _local2:Number = super.width; var _local3:Number = super.height; var _local4 = 1; super.scaleY = _local4; super.scaleX = _local4; setSize(_local2, _local3); move(super.x, super.y); rotation = _local1; startWidth = _local2; startHeight = _local3; if (numChildren > 0){ removeChildAt(0); }; } protected function setScaleY(_arg1:Number):void{ super.scaleY = _arg1; } override public function get scaleX():Number{ return ((width / startWidth)); } protected function setScaleX(_arg1:Number):void{ super.scaleX = _arg1; } private function initializeFocusManager():void{ if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, addedHandler, false, 0, true); } else { createFocusManager(); }; } protected function keyDownHandler(_arg1:KeyboardEvent):void{ } public function set focusManager(_arg1:IFocusManager):void{ UIComponent.focusManagers[this] = _arg1; } public function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } protected function isInvalid(_arg1:String, ... _args):Boolean{ if (((invalidHash[_arg1]) || (invalidHash[InvalidationType.ALL]))){ return (true); }; while (_args.length > 0) { if (invalidHash[_args.pop()]){ return (true); }; }; return (false); } public function setStyle(_arg1:String, _arg2:Object):void{ if ((((instanceStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; instanceStyles[_arg1] = _arg2; invalidate(InvalidationType.STYLES); } override public function get visible():Boolean{ return (super.visible); } protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (isOurFocus((_arg1.target as DisplayObject))){ _local2 = focusManager; if (((_local2) && (_local2.showFocusIndicator))){ drawFocus(true); isFocused = true; }; }; } public function get componentInspectorSetting():Boolean{ return (_inspector); } override public function get x():Number{ return ((isNaN(_x)) ? super.x : _x); } override public function get y():Number{ return ((isNaN(_y)) ? super.y : _y); } public function set enabled(_arg1:Boolean):void{ if (_arg1 == _enabled){ return; }; _enabled = _arg1; invalidate(InvalidationType.STATE); } public function setSize(_arg1:Number, _arg2:Number):void{ _width = _arg1; _height = _arg2; invalidate(InvalidationType.SIZE); dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, false)); } protected function keyUpHandler(_arg1:KeyboardEvent):void{ } public function setSharedStyle(_arg1:String, _arg2:Object):void{ if ((((sharedStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; sharedStyles[_arg1] = _arg2; if (instanceStyles[_arg1] == null){ invalidate(InvalidationType.STYLES); }; } public function set focusEnabled(_arg1:Boolean):void{ _focusEnabled = _arg1; } override public function set width(_arg1:Number):void{ if (_width == _arg1){ return; }; setSize(_arg1, height); } public function setFocus():void{ if (stage){ stage.focus = this; }; } override public function set scaleX(_arg1:Number):void{ setSize((startWidth * _arg1), height); } public function get mouseFocusEnabled():Boolean{ return (_mouseFocusEnabled); } override public function set scaleY(_arg1:Number):void{ setSize(width, (startHeight * _arg1)); } protected function getDisplayObjectInstance(_arg1:Object):DisplayObject{ var skin = _arg1; var classDef:Object; if ((skin is Class)){ return ((new (skin) as DisplayObject)); }; if ((skin is DisplayObject)){ (skin as DisplayObject).x = 0; (skin as DisplayObject).y = 0; return ((skin as DisplayObject)); }; try { classDef = getDefinitionByName(skin.toString()); } catch(e:Error) { try { classDef = (loaderInfo.applicationDomain.getDefinition(skin.toString()) as Object); } catch(e:Error) { }; }; if (classDef == null){ return (null); }; return ((new (classDef) as DisplayObject)); } protected function copyStylesToChild(_arg1:UIComponent, _arg2:Object):void{ var _local3:String; for (_local3 in _arg2) { _arg1.setStyle(_local3, getStyleValue(_arg2[_local3])); }; } protected function initializeAccessibility():void{ if (UIComponent.createAccessibilityImplementation != null){ UIComponent.createAccessibilityImplementation(this); }; } public function get focusManager():IFocusManager{ var _local1:DisplayObject = this; while (_local1) { if (UIComponent.focusManagers[_local1] != null){ return (IFocusManager(UIComponent.focusManagers[_local1])); }; _local1 = _local1.parent; }; return (null); } override public function get width():Number{ return (_width); } protected function beforeComponentParameters():void{ } protected function callLater(_arg1:Function):void{ if (inCallLaterPhase){ return; }; callLaterMethods[_arg1] = true; if (stage != null){ stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); } else { addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); }; } public function move(_arg1:Number, _arg2:Number):void{ _x = _arg1; _y = _arg2; super.x = Math.round(_arg1); super.y = Math.round(_arg2); dispatchEvent(new ComponentEvent(ComponentEvent.MOVE)); } public function validateNow():void{ invalidate(InvalidationType.ALL, false); draw(); } override public function set visible(_arg1:Boolean):void{ if (super.visible == _arg1){ return; }; super.visible = _arg1; var _local2:String = (_arg1) ? ComponentEvent.SHOW : ComponentEvent.HIDE; dispatchEvent(new ComponentEvent(_local2, true)); } protected function createFocusManager():void{ if (focusManagers[stage] == null){ focusManagers[stage] = new FocusManager(stage); }; } protected function hookAccessibility(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, hookAccessibility); initializeAccessibility(); } public function set componentInspectorSetting(_arg1:Boolean):void{ _inspector = _arg1; if (_inspector){ beforeComponentParameters(); } else { afterComponentParameters(); }; } override public function set y(_arg1:Number):void{ move(_x, _arg1); } public function drawFocus(_arg1:Boolean):void{ var _local2:Number; isFocused = _arg1; if (((!((uiFocusRect == null))) && (contains(uiFocusRect)))){ removeChild(uiFocusRect); uiFocusRect = null; }; if (_arg1){ uiFocusRect = (getDisplayObjectInstance(getStyleValue("focusRectSkin")) as Sprite); if (uiFocusRect == null){ return; }; _local2 = Number(getStyleValue("focusRectPadding")); uiFocusRect.x = -(_local2); uiFocusRect.y = -(_local2); uiFocusRect.width = (width + (_local2 * 2)); uiFocusRect.height = (height + (_local2 * 2)); addChildAt(uiFocusRect, 0); }; } override public function set x(_arg1:Number):void{ move(_arg1, _y); } public function drawNow():void{ draw(); } public static function getStyleDefinition():Object{ return (defaultStyles); } public static function mergeStyles(... _args):Object{ var _local5:Object; var _local6:String; var _local2:Object = {}; var _local3:uint = _args.length; var _local4:uint; while (_local4 < _local3) { _local5 = _args[_local4]; for (_local6 in _local5) { if (_local2[_local6] != null){ } else { _local2[_local6] = _args[_local4][_local6]; }; }; _local4++; }; return (_local2); } } }//package fl.coreSection 17//ComponentEvent (fl.events.ComponentEvent) package fl.events { import flash.events.*; public class ComponentEvent extends Event { public static const HIDE:String = "hide"; public static const BUTTON_DOWN:String = "buttonDown"; public static const MOVE:String = "move"; public static const RESIZE:String = "resize"; public static const ENTER:String = "enter"; public static const LABEL_CHANGE:String = "labelChange"; public static const SHOW:String = "show"; public function ComponentEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function toString():String{ return (formatToString("ComponentEvent", "type", "bubbles", "cancelable")); } override public function clone():Event{ return (new ComponentEvent(type, bubbles, cancelable)); } } }//package fl.eventsSection 18//ScrollEvent (fl.events.ScrollEvent) package fl.events { import flash.events.*; public class ScrollEvent extends Event { private var _direction:String; private var _position:Number; private var _delta:Number; public static const SCROLL:String = "scroll"; public function ScrollEvent(_arg1:String, _arg2:Number, _arg3:Number){ super(ScrollEvent.SCROLL, false, false); _direction = _arg1; _delta = _arg2; _position = _arg3; } public function get position():Number{ return (_position); } public function get direction():String{ return (_direction); } public function get delta():Number{ return (_delta); } override public function toString():String{ return (formatToString("ScrollEvent", "type", "bubbles", "cancelable", "direction", "delta", "position")); } override public function clone():Event{ return (new ScrollEvent(_direction, _delta, _position)); } } }//package fl.eventsSection 19//FocusManager (fl.managers.FocusManager) package fl.managers { import flash.display.*; import flash.events.*; import fl.controls.*; import fl.core.*; import flash.utils.*; import flash.text.*; import flash.ui.*; public class FocusManager implements IFocusManager { private var focusableObjects:Dictionary; private var _showFocusIndicator:Boolean;// = true private var defButton:Button; private var focusableCandidates:Array; private var _form:DisplayObjectContainer; private var _defaultButtonEnabled:Boolean;// = true private var activated:Boolean;// = false private var _defaultButton:Button; private var calculateCandidates:Boolean;// = true private var lastFocus:InteractiveObject; private var lastAction:String; public function FocusManager(_arg1:DisplayObjectContainer){ focusableObjects = new Dictionary(true); if (_arg1 != null){ _form = _arg1; addFocusables(DisplayObject(_arg1)); _arg1.addEventListener(Event.ADDED, addedHandler); _arg1.addEventListener(Event.REMOVED, removedHandler); activate(); }; } public function get showFocusIndicator():Boolean{ return (_showFocusIndicator); } private function getIndexOfNextObject(_arg1:int, _arg2:Boolean, _arg3:Boolean, _arg4:String):int{ var _local7:DisplayObject; var _local8:IFocusManagerGroup; var _local9:int; var _local10:DisplayObject; var _local11:IFocusManagerGroup; var _local5:int = focusableCandidates.length; var _local6:int = _arg1; while (true) { if (_arg2){ _arg1--; } else { _arg1++; }; if (_arg3){ if (((_arg2) && ((_arg1 < 0)))){ break; }; if (((!(_arg2)) && ((_arg1 == _local5)))){ break; }; } else { _arg1 = ((_arg1 + _local5) % _local5); if (_local6 == _arg1){ break; }; }; if (isValidFocusCandidate(focusableCandidates[_arg1], _arg4)){ _local7 = DisplayObject(findFocusManagerComponent(focusableCandidates[_arg1])); if ((_local7 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local7); _local9 = 0; while (_local9 < focusableCandidates.length) { _local10 = focusableCandidates[_local9]; if ((_local10 is IFocusManagerGroup)){ _local11 = IFocusManagerGroup(_local10); if ((((_local11.groupName == _local8.groupName)) && (_local11.selected))){ _arg1 = _local9; break; }; }; _local9++; }; }; return (_arg1); }; }; return (_arg1); } private function mouseFocusChangeHandler(_arg1:FocusEvent):void{ if ((_arg1.relatedObject is TextField)){ return; }; _arg1.preventDefault(); } public function set form(_arg1:DisplayObjectContainer):void{ _form = _arg1; } private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{ var focusable:IFocusManagerComponent; var io:InteractiveObject; var doc:DisplayObjectContainer; var i:int; var child:DisplayObject; var o = _arg1; var skipTopLevel = _arg2; if (!skipTopLevel){ if ((o is IFocusManagerComponent)){ focusable = IFocusManagerComponent(o); if (focusable.focusEnabled){ if (((focusable.tabEnabled) && (isTabVisible(o)))){ focusableObjects[o] = true; calculateCandidates = true; }; o.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); o.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; } else { if ((o is InteractiveObject)){ io = (o as InteractiveObject); if (((((io) && (io.tabEnabled))) && ((findFocusManagerComponent(io) == io)))){ focusableObjects[io] = true; calculateCandidates = true; }; io.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); io.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; }; }; if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); o.addEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); if ((((((doc is Stage)) || ((doc.parent is Stage)))) || (doc.tabChildren))){ i = 0; while (i < doc.numChildren) { try { child = doc.getChildAt(i); if (child != null){ addFocusables(doc.getChildAt(i)); }; } catch(error:SecurityError) { }; i = (i + 1); }; }; }; } private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{ return (_arg1.getChildIndex(_arg2)); } public function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject{ var _local2:InteractiveObject = _arg1; while (_arg1) { if ((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))){ return (_arg1); }; _arg1 = _arg1.parent; }; return (_local2); } private function focusOutHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject = (_arg1.target as InteractiveObject); } private function isValidFocusCandidate(_arg1:DisplayObject, _arg2:String):Boolean{ var _local3:IFocusManagerGroup; if (!isEnabledAndVisible(_arg1)){ return (false); }; if ((_arg1 is IFocusManagerGroup)){ _local3 = IFocusManagerGroup(_arg1); if (_arg2 == _local3.groupName){ return (false); }; }; return (true); } private function setFocusToNextObject(_arg1:FocusEvent):void{ if (!hasFocusableObjects()){ return; }; var _local2:InteractiveObject = getNextFocusManagerComponent(_arg1.shiftKey); if (_local2){ setFocus(_local2); }; } private function sortFocusableObjectsTabIndex():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))){ focusableCandidates.push(_local2); }; }; focusableCandidates.sort(sortByTabIndex); } private function removeFocusables(_arg1:DisplayObject):void{ var _local2:Object; var _local3:DisplayObject; if ((_arg1 is DisplayObjectContainer)){ _arg1.removeEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); _arg1.removeEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); for (_local2 in focusableObjects) { _local3 = DisplayObject(_local2); if (DisplayObjectContainer(_arg1).contains(_local3)){ if (_local3 == lastFocus){ lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local2]; calculateCandidates = true; }; }; }; } private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{ while (_arg1 != InteractiveObject(form)) { if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (UIComponent(_arg1).enabled))){ return (_arg1); }; _arg1 = _arg1.parent; if (_arg1 == null){ break; }; }; return (null); } public function sendDefaultButtonEvent():void{ defButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); } private function addedHandler(_arg1:Event):void{ var _local2:DisplayObject = DisplayObject(_arg1.target); if (_local2.stage){ addFocusables(DisplayObject(_arg1.target)); }; } private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{ var _local3:TextField; var _local4:SimpleButton; var _local2:DisplayObjectContainer = DisplayObject(form).parent; while (_arg1 != _local2) { if ((_arg1 is UIComponent)){ if (!UIComponent(_arg1).enabled){ return (false); }; } else { if ((_arg1 is TextField)){ _local3 = TextField(_arg1); if ((((_local3.type == TextFieldType.DYNAMIC)) || (!(_local3.selectable)))){ return (false); }; } else { if ((_arg1 is SimpleButton)){ _local4 = SimpleButton(_arg1); if (!_local4.enabled){ return (false); }; }; }; }; if (!_arg1.visible){ return (false); }; _arg1 = _arg1.parent; }; return (true); } private function tabChildrenChangeHandler(_arg1:Event):void{ if (_arg1.target != _arg1.currentTarget){ return; }; calculateCandidates = true; var _local2:DisplayObjectContainer = DisplayObjectContainer(_arg1.target); if (_local2.tabChildren){ addFocusables(_local2, true); } else { removeFocusables(_local2); }; } private function deactivateHandler(_arg1:Event):void{ var _local2:InteractiveObject = InteractiveObject(_arg1.target); } public function setFocus(_arg1:InteractiveObject):void{ if ((_arg1 is IFocusManagerComponent)){ IFocusManagerComponent(_arg1).setFocus(); } else { form.stage.focus = _arg1; }; } public function getFocus():InteractiveObject{ var _local1:InteractiveObject = form.stage.focus; return (findFocusManagerComponent(_local1)); } private function hasFocusableObjects():Boolean{ var _local1:Object; for (_local1 in focusableObjects) { return (true); }; return (false); } private function tabIndexChangeHandler(_arg1:Event):void{ calculateCandidates = true; } public function set defaultButton(_arg1:Button):void{ var _local2:Button = (_arg1) ? Button(_arg1) : null; if (_local2 != _defaultButton){ if (_defaultButton){ _defaultButton.emphasized = false; }; if (defButton){ defButton.emphasized = false; }; _defaultButton = _local2; defButton = _local2; if (_local2){ _local2.emphasized = true; }; }; } private function sortFocusableObjects():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))) && ((_local2.tabIndex > 0)))){ sortFocusableObjectsTabIndex(); return; }; focusableCandidates.push(_local2); }; focusableCandidates.sort(sortByDepth); } private function keyFocusChangeHandler(_arg1:FocusEvent):void{ showFocusIndicator = true; if ((((((_arg1.keyCode == Keyboard.TAB)) || ((_arg1.keyCode == 0)))) && (!(_arg1.isDefaultPrevented())))){ setFocusToNextObject(_arg1); _arg1.preventDefault(); }; } private function getIndexOfFocusedObject(_arg1:DisplayObject):int{ var _local2:int = focusableCandidates.length; var _local3:int; _local3 = 0; while (_local3 < _local2) { if (focusableCandidates[_local3] == _arg1){ return (_local3); }; _local3++; }; return (-1); } public function hideFocus():void{ } private function removedHandler(_arg1:Event):void{ var _local2:int; var _local4:InteractiveObject; var _local3:DisplayObject = DisplayObject(_arg1.target); if ((((_local3 is IFocusManagerComponent)) && ((focusableObjects[_local3] == true)))){ if (_local3 == lastFocus){ IFocusManagerComponent(lastFocus).drawFocus(false); lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local3]; calculateCandidates = true; } else { if ((((_local3 is InteractiveObject)) && ((focusableObjects[_local3] == true)))){ _local4 = (_local3 as InteractiveObject); if (_local4){ if (_local4 == lastFocus){ lastFocus = null; }; delete focusableObjects[_local4]; calculateCandidates = true; }; _local3.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); }; }; removeFocusables(_local3); } private function sortByDepth(_arg1:InteractiveObject, _arg2:InteractiveObject):Number{ var _local5:int; var _local6:String; var _local7:String; var _local3 = ""; var _local4 = ""; var _local8 = "0000"; var _local9:DisplayObject = DisplayObject(_arg1); var _local10:DisplayObject = DisplayObject(_arg2); while (((!((_local9 == DisplayObject(form)))) && (_local9.parent))) { _local5 = getChildIndex(_local9.parent, _local9); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local3 = (_local7 + _local3); _local9 = _local9.parent; }; while (((!((_local10 == DisplayObject(form)))) && (_local10.parent))) { _local5 = getChildIndex(_local10.parent, _local10); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local4 = (_local7 + _local4); _local10 = _local10.parent; }; return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : 0); } public function get defaultButton():Button{ return (_defaultButton); } private function activateHandler(_arg1:Event):void{ var _local2:InteractiveObject = InteractiveObject(_arg1.target); if (lastFocus){ if ((lastFocus is IFocusManagerComponent)){ IFocusManagerComponent(lastFocus).setFocus(); } else { form.stage.focus = lastFocus; }; }; lastAction = "ACTIVATE"; } public function showFocus():void{ } public function set defaultButtonEnabled(_arg1:Boolean):void{ _defaultButtonEnabled = _arg1; } public function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject{ var _local8:IFocusManagerGroup; if (!hasFocusableObjects()){ return (null); }; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; var _local2:DisplayObject = form.stage.focus; _local2 = DisplayObject(findFocusManagerComponent(InteractiveObject(_local2))); var _local3 = ""; if ((_local2 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local2); _local3 = _local8.groupName; }; var _local4:int = getIndexOfFocusedObject(_local2); var _local5:Boolean; var _local6:int = _local4; if (_local4 == -1){ if (_arg1){ _local4 = focusableCandidates.length; }; _local5 = true; }; var _local7:int = getIndexOfNextObject(_local4, _arg1, _local5, _local3); return (findFocusManagerComponent(focusableCandidates[_local7])); } private function mouseDownHandler(_arg1:MouseEvent):void{ if (_arg1.isDefaultPrevented()){ return; }; var _local2:InteractiveObject = getTopLevelFocusTarget(InteractiveObject(_arg1.target)); if (!_local2){ return; }; showFocusIndicator = false; if (((((!((_local2 == lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local2 is TextField))))){ setFocus(_local2); }; lastAction = "MOUSEDOWN"; } private function isTabVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer = _arg1.parent; while (((((_local2) && (!((_local2 is Stage))))) && (!(((_local2.parent) && ((_local2.parent is Stage))))))) { if (!_local2.tabChildren){ return (false); }; _local2 = _local2.parent; }; return (true); } public function get nextTabIndex():int{ return (0); } private function keyDownHandler(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.TAB){ lastAction = "KEY"; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; }; if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){ sendDefaultButtonEvent(); }; } private function focusInHandler(_arg1:FocusEvent):void{ var _local3:Button; var _local2:InteractiveObject = InteractiveObject(_arg1.target); if (form.contains(_local2)){ lastFocus = findFocusManagerComponent(InteractiveObject(_local2)); if ((lastFocus is Button)){ _local3 = Button(lastFocus); if (defButton){ defButton.emphasized = false; defButton = _local3; _local3.emphasized = true; }; } else { if (((defButton) && (!((defButton == _defaultButton))))){ defButton.emphasized = false; defButton = _defaultButton; _defaultButton.emphasized = true; }; }; }; } private function tabEnabledChangeHandler(_arg1:Event):void{ calculateCandidates = true; var _local2:InteractiveObject = InteractiveObject(_arg1.target); var _local3 = (focusableObjects[_local2] == true); if (_local2.tabEnabled){ if (((!(_local3)) && (isTabVisible(_local2)))){ if (!(_local2 is IFocusManagerComponent)){ _local2.focusRect = false; }; focusableObjects[_local2] = true; }; } else { if (_local3){ delete focusableObjects[_local2]; }; }; } public function set showFocusIndicator(_arg1:Boolean):void{ _showFocusIndicator = _arg1; } public function get form():DisplayObjectContainer{ return (_form); } private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{ return (((_arg1.tabIndex > _arg2.tabIndex)) ? 1 : ((_arg1.tabIndex < _arg2.tabIndex)) ? -1 : sortByDepth(_arg1, _arg2)); } public function get defaultButtonEnabled():Boolean{ return (_defaultButtonEnabled); } public function activate():void{ if (activated){ return; }; form.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true); form.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true); form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true); form.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = true; if (lastFocus){ setFocus(lastFocus); }; } public function deactivate():void{ form.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); form.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.removeEventListener(Event.ACTIVATE, activateHandler); form.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler); form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = false; } } }//package fl.managersSection 20//IFocusManager (fl.managers.IFocusManager) package fl.managers { import flash.display.*; import fl.controls.*; public interface IFocusManager { function getFocus():InteractiveObject; function deactivate():void; function set defaultButton(_arg1:Button):void; function set showFocusIndicator(_arg1:Boolean):void; function get defaultButtonEnabled():Boolean; function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject; function get nextTabIndex():int; function get defaultButton():Button; function get showFocusIndicator():Boolean; function hideFocus():void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function setFocus(_arg1:InteractiveObject):void; function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject; } }//package fl.managersSection 21//IFocusManagerComponent (fl.managers.IFocusManagerComponent) package fl.managers { public interface IFocusManagerComponent { function set focusEnabled(_arg1:Boolean):void; function drawFocus(_arg1:Boolean):void; function setFocus():void; function get focusEnabled():Boolean; function get tabEnabled():Boolean; function get tabIndex():int; function get mouseFocusEnabled():Boolean; } }//package fl.managersSection 22//IFocusManagerGroup (fl.managers.IFocusManagerGroup) package fl.managers { public interface IFocusManagerGroup { function get groupName():String; function get selected():Boolean; function set groupName(_arg1:String):void; function set selected(_arg1:Boolean):void; } }//package fl.managersSection 23//StyleManager (fl.managers.StyleManager) package fl.managers { import fl.core.*; import flash.utils.*; import flash.text.*; public class StyleManager { private var classToInstancesDict:Dictionary; private var globalStyles:Object; private var styleToClassesHash:Object; private var classToStylesDict:Dictionary; private var classToDefaultStylesDict:Dictionary; private static var _instance:StyleManager; public function StyleManager(){ styleToClassesHash = {}; classToInstancesDict = new Dictionary(true); classToStylesDict = new Dictionary(true); classToDefaultStylesDict = new Dictionary(true); globalStyles = UIComponent.getStyleDefinition(); } public static function clearComponentStyle(_arg1:Object, _arg2:String):void{ var _local3:Class = getClassDef(_arg1); var _local4:Object = getInstance().classToStylesDict[_local3]; if (((!((_local4 == null))) && (!((_local4[_arg2] == null))))){ delete _local4[_arg2]; invalidateComponentStyle(_local3, _arg2); }; } private static function getClassDef(_arg1:Object):Class{ var component = _arg1; if ((component is Class)){ return ((component as Class)); }; try { return ((getDefinitionByName(getQualifiedClassName(component)) as Class)); } catch(e:Error) { if ((component is UIComponent)){ try { return ((component.loaderInfo.applicationDomain.getDefinition(getQualifiedClassName(component)) as Class)); } catch(e:Error) { }; }; }; return (null); } public static function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } public static function setComponentStyle(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Class = getClassDef(_arg1); var _local5:Object = getInstance().classToStylesDict[_local4]; if (_local5 == null){ _local5 = (getInstance().classToStylesDict[_local4] = {}); }; if (_local5 == _arg3){ return; }; _local5[_arg2] = _arg3; invalidateComponentStyle(_local4, _arg2); } private static function setSharedStyles(_arg1:UIComponent):void{ var _local5:String; var _local2:StyleManager = getInstance(); var _local3:Class = getClassDef(_arg1); var _local4:Object = _local2.classToDefaultStylesDict[_local3]; for (_local5 in _local4) { _arg1.setSharedStyle(_local5, getSharedStyle(_arg1, _local5)); }; } public static function getComponentStyle(_arg1:Object, _arg2:String):Object{ var _local3:Class = getClassDef(_arg1); var _local4:Object = getInstance().classToStylesDict[_local3]; return (((_local4)==null) ? null : _local4[_arg2]); } private static function getInstance(){ if (_instance == null){ _instance = new (StyleManager); }; return (_instance); } private static function invalidateComponentStyle(_arg1:Class, _arg2:String):void{ var _local4:Object; var _local5:UIComponent; var _local3:Dictionary = getInstance().classToInstancesDict[_arg1]; if (_local3 == null){ return; }; for (_local4 in _local3) { _local5 = (_local4 as UIComponent); if (_local5 == null){ } else { _local5.setSharedStyle(_arg2, getSharedStyle(_local5, _arg2)); }; }; } private static function invalidateStyle(_arg1:String):void{ var _local3:Object; var _local2:Dictionary = getInstance().styleToClassesHash[_arg1]; if (_local2 == null){ return; }; for (_local3 in _local2) { invalidateComponentStyle(Class(_local3), _arg1); }; } public static function registerInstance(_arg1:UIComponent):void{ var target:Class; var defaultStyles:Object; var styleToClasses:Object; var n:String; var instance = _arg1; var inst:StyleManager = getInstance(); var classDef:Class = getClassDef(instance); if (classDef == null){ return; }; if (inst.classToInstancesDict[classDef] == null){ inst.classToInstancesDict[classDef] = new Dictionary(true); target = classDef; while (defaultStyles == null) { if (target["getStyleDefinition"] != null){ defaultStyles = target["getStyleDefinition"](); break; }; try { target = (instance.loaderInfo.applicationDomain.getDefinition(getQualifiedSuperclassName(target)) as Class); } catch(err:Error) { try { target = (getDefinitionByName(getQualifiedSuperclassName(target)) as Class); } catch(e:Error) { defaultStyles = UIComponent.getStyleDefinition(); break; }; }; }; styleToClasses = inst.styleToClassesHash; for (n in defaultStyles) { if (styleToClasses[n] == null){ styleToClasses[n] = new Dictionary(true); }; styleToClasses[n][classDef] = true; }; inst.classToDefaultStylesDict[classDef] = defaultStyles; if (inst.classToStylesDict[classDef] == null){ inst.classToStylesDict[classDef] = {}; }; }; inst.classToInstancesDict[classDef][instance] = true; setSharedStyles(instance); } public static function getStyle(_arg1:String):Object{ return (getInstance().globalStyles[_arg1]); } private static function getSharedStyle(_arg1:UIComponent, _arg2:String):Object{ var _local3:Class = getClassDef(_arg1); var _local4:StyleManager = getInstance(); var _local5:Object = _local4.classToStylesDict[_local3][_arg2]; if (_local5 != null){ return (_local5); }; _local5 = _local4.globalStyles[_arg2]; if (_local5 != null){ return (_local5); }; return (_local4.classToDefaultStylesDict[_local3][_arg2]); } public static function setStyle(_arg1:String, _arg2:Object):void{ var _local3:Object = getInstance().globalStyles; if ((((_local3[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; _local3[_arg1] = _arg2; invalidateStyle(_arg1); } } }//package fl.managersSection 24//Back (fl.transitions.easing.Back) package fl.transitions.easing { public class Back { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0):Number{ if (!_arg5){ _arg5 = 1.70158; }; _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 1)) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0):Number{ if (!_arg5){ _arg5 = 1.70158; }; _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * (((_arg5 + 1) * _arg1) - _arg5)) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0):Number{ if (!_arg5){ _arg5 = 1.70158; }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) - _arg5))) + _arg2)); }; _arg1 = (_arg1 - 2); _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 2)) + _arg2)); } } }//package fl.transitions.easingSection 25//Strong (fl.transitions.easing.Strong) package fl.transitions.easing { public class Strong { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2)); } } }//package fl.transitions.easingSection 26//Tween (fl.transitions.Tween) package fl.transitions { import flash.display.*; import flash.events.*; import flash.utils.*; public class Tween extends EventDispatcher { private var _position:Number;// = NAN public var prevTime:Number;// = NAN public var prevPos:Number;// = NAN public var isPlaying:Boolean;// = false private var _fps:Number;// = NAN private var _time:Number;// = NAN public var begin:Number;// = NAN private var _finish:Number;// = NAN public var change:Number;// = NAN public var looping:Boolean;// = false private var _intervalID:uint;// = 0 public var func:Function; private var _timer:Timer;// = null private var _startTime:Number;// = NAN public var prop:String;// = "" private var _duration:Number;// = NAN public var obj:Object;// = null public var useSeconds:Boolean;// = false protected static var _mc:MovieClip = new MovieClip(); public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){ this.func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); }; super(); if (!arguments.length){ return; }; this.obj = _arg1; this.prop = _arg2; this.begin = _arg4; this.position = _arg4; this.duration = _arg6; this.useSeconds = _arg7; if ((_arg3 is Function)){ this.func = _arg3; }; this.finish = _arg5; this._timer = new Timer(100); this.start(); } public function continueTo(_arg1:Number, _arg2:Number):void{ this.begin = this.position; this.finish = _arg1; if (!isNaN(_arg2)){ this.duration = _arg2; }; this.start(); } protected function startEnterFrame():void{ var _local1:Number; if (isNaN(this._fps)){ _mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true); } else { _local1 = (1000 / this._fps); this._timer.delay = _local1; this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true); this._timer.start(); }; this.isPlaying = true; } public function stop():void{ this.stopEnterFrame(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position)); } private function fixTime():void{ if (this.useSeconds){ this._startTime = (getTimer() - (this._time * 1000)); }; } public function set FPS(_arg1:Number):void{ var _local2:Boolean = this.isPlaying; this.stopEnterFrame(); this._fps = _arg1; if (_local2){ this.startEnterFrame(); }; } public function get finish():Number{ return ((this.begin + this.change)); } public function get duration():Number{ return (this._duration); } protected function stopEnterFrame():void{ if (isNaN(this._fps)){ _mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame); } else { this._timer.stop(); }; this.isPlaying = false; } public function set time(_arg1:Number):void{ this.prevTime = this._time; if (_arg1 > this.duration){ if (this.looping){ this.rewind((_arg1 - this._duration)); this.update(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position)); } else { if (this.useSeconds){ this._time = this._duration; this.update(); }; this.stop(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position)); }; } else { if (_arg1 < 0){ this.rewind(); this.update(); } else { this._time = _arg1; this.update(); }; }; } public function getPosition(_arg1:Number=NaN):Number{ if (isNaN(_arg1)){ _arg1 = this._time; }; return (this.func(_arg1, this.begin, this.change, this._duration)); } public function set finish(_arg1:Number):void{ this.change = (_arg1 - this.begin); } public function set duration(_arg1:Number):void{ this._duration = ((_arg1)<=0) ? Infinity : _arg1; } public function get position():Number{ return (this.getPosition(this._time)); } public function setPosition(_arg1:Number):void{ this.prevPos = this._position; if (this.prop.length){ this.obj[this.prop] = (this._position = _arg1); }; this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position)); } public function resume():void{ this.fixTime(); this.startEnterFrame(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position)); } public function fforward():void{ this.time = this._duration; this.fixTime(); } protected function onEnterFrame(_arg1:Event):void{ this.nextFrame(); } public function yoyo():void{ this.continueTo(this.begin, this.time); } public function nextFrame():void{ if (this.useSeconds){ this.time = ((getTimer() - this._startTime) / 1000); } else { this.time = (this._time + 1); }; } protected function timerHandler(_arg1:TimerEvent):void{ this.nextFrame(); _arg1.updateAfterEvent(); } public function get FPS():Number{ return (this._fps); } public function rewind(_arg1:Number=0):void{ this._time = _arg1; this.fixTime(); this.update(); } public function set position(_arg1:Number):void{ this.setPosition(_arg1); } public function get time():Number{ return (this._time); } private function update():void{ this.setPosition(this.getPosition(this._time)); } public function start():void{ this.rewind(); this.startEnterFrame(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position)); } public function prevFrame():void{ if (!this.useSeconds){ this.time = (this._time - 1); }; } } }//package fl.transitionsSection 27//TweenEvent (fl.transitions.TweenEvent) package fl.transitions { import flash.events.*; public class TweenEvent extends Event { public var position:Number;// = NAN public var time:Number;// = NAN public static const MOTION_START:String = "motionStart"; public static const MOTION_STOP:String = "motionStop"; public static const MOTION_LOOP:String = "motionLoop"; public static const MOTION_CHANGE:String = "motionChange"; public static const MOTION_FINISH:String = "motionFinish"; public static const MOTION_RESUME:String = "motionResume"; public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){ super(_arg1, _arg4, _arg5); this.time = _arg2; this.position = _arg3; } override public function clone():Event{ return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable)); } } }//package fl.transitionsSection 28//AutoLayoutEvent (fl.video.AutoLayoutEvent) package fl.video { import flash.events.*; import flash.geom.*; public class AutoLayoutEvent extends LayoutEvent implements IVPEvent { private var _vp:uint; public static const AUTO_LAYOUT:String = "autoLayout"; public function AutoLayoutEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Rectangle=null, _arg5:Rectangle=null, _arg6:uint=0){ super(_arg1, _arg2, _arg3, _arg4, _arg5); _vp = _arg6; } public function set vp(_arg1:uint):void{ _vp = _arg1; } public function get vp():uint{ return (_vp); } override public function clone():Event{ return (new AutoLayoutEvent(type, bubbles, cancelable, Rectangle(oldBounds.clone()), Rectangle(oldRegistrationBounds.clone()), vp)); } } }//package fl.videoSection 29//ConnectClient (fl.video.ConnectClient) package fl.video { import flash.net.*; public class ConnectClient { public var owner:NCManager; public var nc:NetConnection; public var connIndex:uint; public var pending:Boolean; public function ConnectClient(_arg1:NCManager, _arg2:NetConnection, _arg3:uint=0){ this.owner = _arg1; this.nc = _arg2; this.connIndex = _arg3; this.pending = false; } public function onBWCheck(... _args):Number{ return (++owner._payload); } public function close():void{ } public function onBWDone(... _args):void{ var _local2:Number; if (_args.length > 0){ _local2 = _args[0]; }; owner.onConnected(nc, _local2); } } }//package fl.videoSection 30//ControlData (fl.video.ControlData) package fl.video { import flash.display.*; public class ControlData { public var state_mc:Array; public var origWidth:Number; public var handle_mc:Sprite; public var fullness_mc:DisplayObject; public var state:uint; public var leftMargin:Number; public var isDragging:Boolean; public var currentState_mc:DisplayObject; public var percentage:Number; public var owner:DisplayObject; public var origX:Number; public var origY:Number; public var bottomMargin:Number; public var disabled_mc:DisplayObject; public var enabled:Boolean; public var hit_mc:Sprite; public var origHeight:Number; public var index:int; public var mask_mc:DisplayObject; public var avatar:DisplayObject; public var cachedFocusRect:Boolean; public var captureFocus:Boolean; public var fill_mc:DisplayObject; public var topMargin:Number; public var uiMgr:UIManager; public var progress_mc:DisplayObject; public var rightMargin:Number; public var ctrl:DisplayObject; public var origScaleX:Number; public var origScaleY:Number; public function ControlData(_arg1:UIManager, _arg2:DisplayObject, _arg3:DisplayObject, _arg4:int){ var uiMgr = _arg1; var ctrl = _arg2; var owner = _arg3; var index = _arg4; super(); this.uiMgr = uiMgr; this.index = index; this.ctrl = ctrl; this.owner = owner; try { ctrl["uiMgr"] = uiMgr; } catch(re:ReferenceError) { }; } } }//package fl.videoSection 31//CuePointManager (fl.video.CuePointManager) package fl.video { public class CuePointManager { flvplayback_internal var _disabledCuePointsByNameOnly:Object; flvplayback_internal var navCuePoints:Array; flvplayback_internal var allCuePoints:Array; flvplayback_internal var _disabledCuePoints:Array; flvplayback_internal var _asCuePointTolerance:Number; flvplayback_internal var _linearSearchTolerance:Number; flvplayback_internal var _asCuePointIndex:int; flvplayback_internal var asCuePoints:Array; flvplayback_internal var flvCuePoints:Array; flvplayback_internal var _metadataLoaded:Boolean; flvplayback_internal var _id:uint; private var _owner:FLVPlayback; flvplayback_internal var eventCuePoints:Array; public static const SHORT_VERSION:String = "2.1"; public static const VERSION:String = "2.1.0.19"; flvplayback_internal static const DEFAULT_LINEAR_SEARCH_TOLERANCE:Number = 50; flvplayback_internal static var cuePointsReplace:Array = [""", "\"", "'", "'", ",", ",", "&", "&"]; public function CuePointManager(_arg1:FLVPlayback, _arg2:uint){ _owner = _arg1; _id = _arg2; reset(); _asCuePointTolerance = (_owner.getVideoPlayer(_id).playheadUpdateInterval / 2000); _linearSearchTolerance = DEFAULT_LINEAR_SEARCH_TOLERANCE; } flvplayback_internal function getCuePoint(_arg1:Array, _arg2:Boolean, _arg3):Object{ var _local4:Object; switch (typeof(_arg3)){ case "string": _local4 = {name:_arg3}; break; case "number": _local4 = {time:_arg3}; break; case "object": _local4 = _arg3; break; }; var _local5:int = getCuePointIndex(_arg1, _arg2, _local4.time, _local4.name); if (_local5 < 0){ return (null); }; _local4 = deepCopyObject(_arg1[_local5]); _local4.array = _arg1; _local4.index = _local5; return (_local4); } public function resetASCuePointIndex(_arg1:Number):void{ if ((((_arg1 <= 0)) || ((asCuePoints == null)))){ _asCuePointIndex = 0; return; }; var _local2:int = getCuePointIndex(asCuePoints, true, _arg1); _asCuePointIndex = ((asCuePoints[_local2].time)<_arg1) ? (_local2 + 1) : _local2; } public function set playheadUpdateInterval(_arg1:Number):void{ _asCuePointTolerance = (_arg1 / 2000); } flvplayback_internal function addOrDisable(_arg1:Boolean, _arg2:Object):void{ if (_arg1){ if (_arg2.type == CuePointType.ACTIONSCRIPT){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "Cannot disable actionscript cue points")); }; setFLVCuePointEnabled(false, _arg2); } else { if (_arg2.type == CuePointType.ACTIONSCRIPT){ addASCuePoint(_arg2); }; }; } public function processFLVCuePoints(_arg1:Array):void{ var _local2:int; var _local4:Object; _metadataLoaded = true; if ((((_arg1 == null)) || ((_arg1.length < 1)))){ flvCuePoints = null; navCuePoints = null; eventCuePoints = null; return; }; flvCuePoints = _arg1; navCuePoints = new Array(); eventCuePoints = new Array(); var _local3:Number = -1; var _local5:Array = _disabledCuePoints; var _local6:Number = 0; _disabledCuePoints = new Array(); var _local7:int; while ((_local4 = flvCuePoints[_local7++]) != undefined) { if ((((_local3 > 0)) && ((_local3 >= _local4.time)))){ flvCuePoints = null; navCuePoints = null; eventCuePoints = null; _disabledCuePoints = new Array(); _disabledCuePointsByNameOnly = new Object(); throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, ("Unsorted cuePoint found after time: " + _local3))); }; _local3 = _local4.time; while ((((_local6 < _local5.length)) && ((cuePointCompare(_local5[_local6].time, null, _local4) < 0)))) { _local6++; }; if (((!((_disabledCuePointsByNameOnly[_local4.name] == undefined))) || ((((_local6 < _local5.length)) && ((cuePointCompare(_local5[_local6].time, _local5[_local6].name, _local4) == 0)))))){ _disabledCuePoints.push({time:_local4.time, name:_local4.name}); }; if (_local4.type == CuePointType.NAVIGATION){ navCuePoints.push(_local4); } else { if (_local4.type == CuePointType.EVENT){ eventCuePoints.push(_local4); }; }; if ((((allCuePoints == null)) || ((allCuePoints.length < 1)))){ allCuePoints = new Array(); allCuePoints.push(_local4); } else { _local2 = getCuePointIndex(allCuePoints, true, _local4.time); _local2 = ((allCuePoints[_local2].time)>_local4.time) ? 0 : (_local2 + 1); allCuePoints.splice(_local2, 0, _local4); }; }; _disabledCuePointsByNameOnly = new Object(); } public function addASCuePoint(_arg1, _arg2:String=null, _arg3:Object=null):Object{ var _local4:Object; var _local7:int; var _local10:int; if (typeof(_arg1) == "object"){ _local4 = deepCopyObject(_arg1); } else { _local4 = {time:_arg1, name:_arg2, parameters:deepCopyObject(_arg3)}; }; if (_local4.parameters == null){ delete _local4.parameters; }; var _local5:Boolean = ((isNaN(_local4.time)) || ((_local4.time < 0))); if (_local5){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number")); }; var _local6 = (_local4.name == null); if (_local6){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "name cannot be undefined or null")); }; _local4.type = CuePointType.ACTIONSCRIPT; if ((((asCuePoints == null)) || ((asCuePoints.length < 1)))){ _local7 = 0; asCuePoints = new Array(); asCuePoints.push(_local4); } else { _local7 = getCuePointIndex(asCuePoints, true, _local4.time); _local7 = ((asCuePoints[_local7].time)>_local4.time) ? 0 : (_local7 + 1); asCuePoints.splice(_local7, 0, _local4); }; if ((((allCuePoints == null)) || ((allCuePoints.length < 1)))){ allCuePoints = new Array(); allCuePoints.push(_local4); } else { _local10 = getCuePointIndex(allCuePoints, true, _local4.time); _local10 = ((allCuePoints[_local10].time)>_local4.time) ? 0 : (_local10 + 1); allCuePoints.splice(_local10, 0, _local4); }; var _local8:Number = _owner.getVideoPlayer(_id).playheadTime; if (_local8 > 0){ if (_asCuePointIndex == _local7){ if (_local8 > asCuePoints[_local7].time){ _asCuePointIndex++; }; } else { if (_asCuePointIndex > _local7){ _asCuePointIndex++; }; }; } else { _asCuePointIndex = 0; }; var _local9:Object = deepCopyObject(asCuePoints[_local7]); _local9.array = asCuePoints; _local9.index = _local7; return (_local9); } public function get metadataLoaded():Boolean{ return (_metadataLoaded); } public function reset():void{ _metadataLoaded = false; allCuePoints = null; asCuePoints = null; _disabledCuePoints = new Array(); _disabledCuePointsByNameOnly = new Object(); flvCuePoints = null; navCuePoints = null; eventCuePoints = null; _asCuePointIndex = 0; } public function removeCuePoints(_arg1:Array, _arg2:Object):Number{ var _local3:int; var _local4:Object; var _local5:int; _local3 = getCuePointIndex(_arg1, true, -1, _arg2.name); while (_local3 >= 0) { _local4 = _arg1[_local3]; _arg1.splice(_local3, 1); _local3--; _local5++; _local3 = getNextCuePointIndexWithName(_local4.name, _arg1, _local3); }; return (_local5); } flvplayback_internal function unescape(_arg1:String):String{ var _local2:String = _arg1; var _local3:int; while (_local3 < cuePointsReplace.length) { var _temp1 = _local3; _local3 = (_local3 + 1); var _temp2 = _local3; _local3 = (_local3 + 1); _local2 = _local2.replace(cuePointsReplace[_temp1], cuePointsReplace[_temp2]); }; return (_local2); } public function setFLVCuePointEnabled(_arg1:Boolean, _arg2):int{ var _local3:Object; var _local7:int; var _local8:int; var _local9:Object; switch (typeof(_arg2)){ case "string": _local3 = {name:_arg2}; break; case "number": _local3 = {time:_arg2}; break; case "object": _local3 = _arg2; break; }; var _local4:Boolean = ((isNaN(_local3.time)) || ((_local3.time < 0))); var _local5 = (_local3.name == null); if (((_local4) && (_local5))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number and/or name must not be undefined or null")); }; var _local6:uint; if (_local4){ if (!_metadataLoaded){ if (_disabledCuePointsByNameOnly[_local3.name] == undefined){ if (!_arg1){ _disabledCuePointsByNameOnly[_local3.name] = new Array(); }; } else { if (_arg1){ delete _disabledCuePointsByNameOnly[_local3.name]; }; return (-1); }; removeCuePoints(_disabledCuePoints, _local3); return (-1); }; if (_arg1){ _local6 = removeCuePoints(_disabledCuePoints, _local3); } else { _local7 = getCuePointIndex(flvCuePoints, true, -1, _local3.name); while (_local7 >= 0) { _local9 = flvCuePoints[_local7]; _local8 = getCuePointIndex(_disabledCuePoints, true, _local9.time); if ((((_local8 < 0)) || (!((_disabledCuePoints[_local8].time == _local9.time))))){ _disabledCuePoints = insertCuePoint(_local8, _disabledCuePoints, {name:_local9.name, time:_local9.time}); _local6 = (_local6 + 1); }; _local7 = getNextCuePointIndexWithName(_local9.name, flvCuePoints, _local7); }; }; return (_local6); }; _local7 = getCuePointIndex(_disabledCuePoints, false, _local3.time, _local3.name); if (_local7 < 0){ if (_arg1){ if (!_metadataLoaded){ _local7 = getCuePointIndex(_disabledCuePoints, false, _local3.time); if (_local7 < 0){ _local8 = getCuePointIndex(_disabledCuePointsByNameOnly[_local3.name], true, _local3.time); if (cuePointCompare(_local3.time, null, _disabledCuePointsByNameOnly[_local3.name]) != 0){ _disabledCuePointsByNameOnly[_local3.name] = insertCuePoint(_local8, _disabledCuePointsByNameOnly[_local3.name], _local3); }; } else { _disabledCuePoints.splice(_local7, 1); }; }; return ((_metadataLoaded) ? 0 : -1); }; } else { if (_arg1){ _disabledCuePoints.splice(_local7, 1); _local6 = 1; } else { _local6 = 0; }; return ((_metadataLoaded) ? _local6 : -1); }; if (_metadataLoaded){ _local7 = getCuePointIndex(flvCuePoints, false, _local3.time, _local3.name); if (_local7 < 0){ return (0); }; if (_local5){ _local3.name = flvCuePoints[_local7].name; }; }; _local8 = getCuePointIndex(_disabledCuePoints, true, _local3.time); _disabledCuePoints = insertCuePoint(_local8, _disabledCuePoints, _local3); _local6 = 1; return ((_metadataLoaded) ? _local6 : -1); } public function isFLVCuePointEnabled(_arg1):Boolean{ var _local2:Object; var _local5:int; if (!_metadataLoaded){ return (true); }; switch (typeof(_arg1)){ case "string": _local2 = {name:_arg1}; break; case "number": _local2 = {time:_arg1}; break; case "object": _local2 = _arg1; break; }; var _local3:Boolean = ((isNaN(_local2.time)) || ((_local2.time < 0))); var _local4 = (_local2.name == null); if (((_local3) && (_local4))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number and/or name must not be undefined or null")); }; if (_local3){ _local5 = getCuePointIndex(flvCuePoints, true, -1, _local2.name); if (_local5 < 0){ return (true); }; while (_local5 >= 0) { if (getCuePointIndex(_disabledCuePoints, false, flvCuePoints[_local5].time, flvCuePoints[_local5].name) < 0){ return (true); }; _local5 = getNextCuePointIndexWithName(_local2.name, flvCuePoints, _local5); }; return (false); }; return ((getCuePointIndex(_disabledCuePoints, false, _local2.time, _local2.name) < 0)); } public function removeASCuePoint(_arg1):Object{ var _local2:Object; if ((((asCuePoints == null)) || ((asCuePoints.length < 1)))){ return (null); }; switch (typeof(_arg1)){ case "string": _local2 = {name:_arg1}; break; case "number": _local2 = {time:_arg1}; break; case "object": _local2 = _arg1; break; }; var _local3:int = getCuePointIndex(asCuePoints, false, _local2.time, _local2.name); if (_local3 < 0){ return (null); }; _local2 = asCuePoints[_local3]; asCuePoints.splice(_local3, 1); _local3 = getCuePointIndex(allCuePoints, false, _local2.time, _local2.name); if (_local3 > 0){ allCuePoints.splice(_local3, 1); }; if (_owner.getVideoPlayer(_id).playheadTime > 0){ if (_asCuePointIndex > _local3){ _asCuePointIndex--; }; } else { _asCuePointIndex = 0; }; return (_local2); } public function get id():uint{ return (_id); } public function processCuePointsProperty(_arg1:Array):void{ var _local3:uint; var _local4:String; var _local5:String; var _local6:Object; var _local7:Boolean; if ((((_arg1 == null)) || ((_arg1.length == 0)))){ return; }; var _local2:uint; var _local8:int; while (_local8 < (_arg1.length - 1)) { switch (_local2){ case 6: addOrDisable(_local7, _local6); _local2 = 0; case 0: var _temp1 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp1] != "t"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number")); }; _local6 = new Object(); _local6.time = (_arg1[_local8] / 1000); _local2++; break; case 1: var _temp2 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp2] != "n"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (_arg1[_local8] == undefined){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "name cannot be null or undefined")); }; _local6.name = unescape(_arg1[_local8]); _local2++; break; case 2: var _temp3 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp3] != "t"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "type must be number")); }; switch (_arg1[_local8]){ case 0: _local6.type = CuePointType.EVENT; break; case 1: _local6.type = CuePointType.NAVIGATION; break; case 2: _local6.type = CuePointType.ACTIONSCRIPT; break; default: throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "type must be 0, 1 or 2")); }; _local2++; break; case 3: var _temp4 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp4] != "d"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "disabled must be number")); }; _local7 = !((_arg1[_local8] == 0)); _local2++; break; case 4: var _temp5 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp5] != "p"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "num params must be number")); }; _local3 = _arg1[_local8]; _local2++; if (_local3 == 0){ _local2++; } else { _local6.parameters = new Object(); }; break; case 5: var _temp6 = _local8; _local8 = (_local8 + 1); _local4 = _arg1[_temp6]; _local5 = _arg1[_local8]; if ((_local4 is String)){ _local4 = unescape(_local4); }; if ((_local5 is String)){ _local5 = unescape(_local5); }; _local6.parameters[_local4] = _local5; _local3--; if (_local3 == 0){ _local2++; }; break; }; _local8++; }; if (_local2 == 6){ addOrDisable(_local7, _local6); } else { throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected end of cuePoint param string")); }; } flvplayback_internal function getNextCuePointIndexWithName(_arg1:String, _arg2:Array, _arg3:int):int{ var _local4:int; if (_arg1 == null){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "name cannot be undefined or null")); }; if (_arg2 == null){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "cuePoint.array undefined")); }; if (((((isNaN(_arg3)) || ((_arg3 < -1)))) || ((_arg3 >= _arg2.length)))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "cuePoint.index must be number between -1 and cuePoint.array.length")); }; _local4 = (_arg3 + 1); while (_local4 < _arg2.length) { if (_arg2[_local4].name == _arg1){ break; }; _local4++; }; if (_local4 < _arg2.length){ return (_local4); }; return (-1); } public function dispatchASCuePoints():void{ var _local1:Number = _owner.getVideoPlayer(_id).playheadTime; if (((_owner.getVideoPlayer(_id).stateResponsive) && (!((asCuePoints == null))))){ while ((((_asCuePointIndex < asCuePoints.length)) && ((asCuePoints[_asCuePointIndex].time <= (_local1 + _asCuePointTolerance))))) { _owner.dispatchEvent(new MetadataEvent(MetadataEvent.CUE_POINT, false, false, deepCopyObject(asCuePoints[_asCuePointIndex++]), _id)); }; }; } flvplayback_internal function getNextCuePointWithName(_arg1:Object):Object{ if (_arg1 == null){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "cuePoint parameter undefined")); }; if (((isNaN(_arg1.time)) || ((_arg1.time < 0)))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number")); }; var _local2:int = getNextCuePointIndexWithName(_arg1.name, _arg1.array, _arg1.index); if (_local2 < 0){ return (null); }; var _local3:Object = deepCopyObject(_arg1.array[_local2]); _local3.array = _arg1.array; _local3.index = _local2; return (_local3); } public function insertCuePoint(_arg1:int, _arg2:Array, _arg3:Object):Array{ if (_arg1 < 0){ _arg2 = new Array(); _arg2.push(_arg3); } else { if (_arg2[_arg1].time > _arg3.time){ _arg1 = 0; } else { _arg1++; }; _arg2.splice(_arg1, 0, _arg3); }; return (_arg2); } flvplayback_internal function getCuePointIndex(_arg1:Array, _arg2:Boolean, _arg3:Number=NaN, _arg4:String=null, _arg5:int=-1, _arg6:int=-1):int{ var _local9:int; var _local12:int; var _local13:int; var _local14:int; var _local15:int; if ((((_arg1 == null)) || ((_arg1.length < 1)))){ return (-1); }; var _local7:Boolean = ((isNaN(_arg3)) || ((_arg3 < 0))); var _local8 = (_arg4 == null); if (((_local7) && (_local8))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number and/or name must not be undefined or null")); }; if (_arg5 < 0){ _arg5 = 0; }; if (_arg6 < 0){ _arg6 = _arg1.length; }; if (((!(_local8)) && (((_arg2) || (_local7))))){ if (_local7){ _local12 = _arg5; } else { _local12 = getCuePointIndex(_arg1, _arg2, _arg3); }; _local13 = _local12; while (_local13 >= _arg5) { if (_arg1[_local13].name == _arg4){ break; }; _local13--; }; if (_local13 >= _arg5){ return (_local13); }; _local13 = (_local12 + 1); while (_local13 < _arg6) { if (_arg1[_local13].name == _arg4){ break; }; _local13++; }; if (_local13 < _arg6){ return (_local13); }; return (-1); }; if (_arg6 <= _linearSearchTolerance){ _local14 = (_arg5 + _arg6); _local15 = _arg5; while (_local15 < _local14) { _local9 = cuePointCompare(_arg3, _arg4, _arg1[_local15]); if (_local9 == 0){ return (_local15); }; if (_local9 < 0){ break; }; _local15++; }; if (_arg2){ if (_local15 > 0){ return ((_local15 - 1)); }; return (0); }; return (-1); }; var _local10:int = int((_arg6 / 2)); var _local11:int = (_arg5 + _local10); _local9 = cuePointCompare(_arg3, _arg4, _arg1[_local11]); if (_local9 < 0){ return (getCuePointIndex(_arg1, _arg2, _arg3, _arg4, _arg5, _local10)); }; if (_local9 > 0){ return (getCuePointIndex(_arg1, _arg2, _arg3, _arg4, (_local11 + 1), ((_local10 - 1) + (_arg6 % 2)))); }; return (_local11); } flvplayback_internal static function deepCopyObject(_arg1:Object, _arg2:uint=0):Object{ var _local4:*; if (_arg1 == null){ return (_arg1); }; var _local3:Object = new Object(); for (_local4 in _arg1) { if ((((_arg2 == 0)) && ((((_local4 == "array")) || ((_local4 == "index")))))){ } else { if (typeof(_arg1[_local4]) == "object"){ _local3[_local4] = deepCopyObject(_arg1[_local4], (_arg2 + 1)); } else { _local3[_local4] = _arg1[_local4]; }; }; }; return (_local3); } flvplayback_internal static function cuePointCompare(_arg1:Number, _arg2:String, _arg3:Object):int{ var _local4:Number = Math.round((_arg1 * 1000)); var _local5:Number = Math.round((_arg3.time * 1000)); if (_local4 < _local5){ return (-1); }; if (_local4 > _local5){ return (1); }; if (_arg2 != null){ if (_arg2 == _arg3.name){ return (0); }; if (_arg2 < _arg3.name){ return (-1); }; return (1); }; return (0); } } }//package fl.videoSection 32//CuePointType (fl.video.CuePointType) package fl.video { public final class CuePointType { public static const FLV:String = "flv"; public static const ALL:String = "all"; public static const ACTIONSCRIPT:String = "actionscript"; public static const EVENT:String = "event"; public static const NAVIGATION:String = "navigation"; } }//package fl.videoSection 33//FLVPlayback (fl.video.FLVPlayback) package fl.video { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.utils.*; public class FLVPlayback extends Sprite { private var _playheadUpdateInterval:Number; private var _align:String; flvplayback_internal var videoPlayerStateDict:Dictionary; flvplayback_internal var cuePointMgrs:Array; private var _volume:Number; flvplayback_internal var videoPlayerStates:Array; private var _origHeight:Number; private var _progressInterval:Number; private var _origWidth:Number; private var _seekToPrevOffset:Number; private var _scaleMode:String; flvplayback_internal var resizingNow:Boolean; flvplayback_internal var videoPlayers:Array; private var _bufferTime:Number; private var _aspectRatio:Boolean; flvplayback_internal var uiMgr:UIManager; private var previewImage_mc:Loader; private var _autoRewind:Boolean; private var _componentInspectorSetting:Boolean; flvplayback_internal var _firstStreamShown:Boolean; private var _visibleVP:uint; private var _idleTimeout:Number; private var _soundTransform:SoundTransform; flvplayback_internal var skinShowTimer:Timer; public var boundingBox_mc:DisplayObject; private var preview_mc:MovieClip; private var livePreviewHeight:Number; flvplayback_internal var _firstStreamReady:Boolean; private var _activeVP:uint; private var isLivePreview:Boolean; private var _topVP:uint; private var livePreviewWidth:Number; private var __forceNCMgr:NCManager; private var previewImageUrl:String; public static const SEEK_TO_PREV_OFFSET_DEFAULT:Number = 1; public static const SHORT_VERSION:String = "2.1"; flvplayback_internal static const skinShowTimerInterval:Number = 2000; public static const VERSION:String = "2.1.0.19"; flvplayback_internal static const DEFAULT_SKIN_SHOW_TIMER_INTERVAL:Number = 2000; public function FLVPlayback(){ mouseEnabled = false; isLivePreview = ((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent"))); _componentInspectorSetting = false; var _local1:Number = rotation; rotation = 0; _origWidth = super.width; _origHeight = super.height; super.scaleX = 1; super.scaleY = 1; rotation = _local1; var _local2:VideoPlayer = new VideoPlayer(0, 0); _local2.setSize(_origWidth, _origHeight); videoPlayers = new Array(); videoPlayers[0] = _local2; _align = _local2.align; _autoRewind = _local2.autoRewind; _scaleMode = _local2.scaleMode; _bufferTime = _local2.bufferTime; _idleTimeout = _local2.idleTimeout; _playheadUpdateInterval = _local2.playheadUpdateInterval; _progressInterval = _local2.progressInterval; _soundTransform = _local2.soundTransform; _volume = _local2.volume; _seekToPrevOffset = SEEK_TO_PREV_OFFSET_DEFAULT; _firstStreamReady = false; _firstStreamShown = false; resizingNow = false; uiMgr = new UIManager(this); if (isLivePreview){ uiMgr.visible = true; }; _activeVP = 0; _visibleVP = 0; _topVP = 0; videoPlayerStates = new Array(); videoPlayerStateDict = new Dictionary(true); cuePointMgrs = new Array(); createVideoPlayer(0); boundingBox_mc.visible = false; removeChild(boundingBox_mc); boundingBox_mc = null; if (isLivePreview){ previewImageUrl = ""; createLivePreviewMovieClip(); setSize(_origWidth, _origHeight); }; } public function setScale(_arg1:Number, _arg2:Number):void{ var _local6:VideoPlayer; var _local3:Rectangle = new Rectangle(x, y, width, height); var _local4:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local5:int; while (_local5 < videoPlayers.length) { _local6 = videoPlayers[_local5]; if (_local6 !== null){ _local6.setSize((_origWidth * _arg1), (_origWidth * _arg2)); }; _local5++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local3, _local4)); } public function stop():void{ var _local1:VideoPlayerState; var _local2:VideoPlayer; if (!_firstStreamShown){ _local1 = videoPlayerStates[_activeVP]; queueCmd(_local1, QueuedCommand.STOP); } else { _local2 = videoPlayers[_activeVP]; _local2.stop(); }; } public function set align(_arg1:String):void{ if (_activeVP == 0){ _align = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.align = _arg1; } public function getVideoPlayer(_arg1:Number):VideoPlayer{ return (videoPlayers[_arg1]); } public function get playheadTime():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.playheadTime); } public function get seekBarScrubTolerance():Number{ return (uiMgr.seekBarScrubTolerance); } public function get progressInterval():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.progressInterval); } public function set skinFadeTime(_arg1:int):void{ uiMgr.skinFadeTime = _arg1; } public function get scaleMode():String{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.scaleMode); } public function get skinFadeTime():int{ return (uiMgr.skinFadeTime); } public function get seekToPrevOffset():Number{ return (_seekToPrevOffset); } public function set scaleMode(_arg1:String):void{ if (_activeVP == 0){ _scaleMode = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.scaleMode = _arg1; } public function get source():String{ var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; if (_local1.isWaiting){ return (_local1.url); }; var _local2:VideoPlayer = videoPlayers[_activeVP]; return (_local2.source); } public function get activeVideoPlayerIndex():uint{ return (_activeVP); } public function set bufferingBar(_arg1:Sprite):void{ uiMgr.setControl(UIManager.BUFFERING_BAR, _arg1); } public function get ncMgr():INCManager{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.ncMgr); } public function closeVideoPlayer(_arg1:uint):void{ if (_arg1 == 0){ throw (new VideoError(VideoError.DELETE_DEFAULT_PLAYER)); }; if (videoPlayers[_arg1] == undefined){ return; }; var _local2:VideoPlayer = videoPlayers[_arg1]; if (_visibleVP == _arg1){ visibleVideoPlayerIndex = 0; }; if (_activeVP == _arg1){ activeVideoPlayerIndex = 0; }; removeChild(_local2); _local2.close(); delete videoPlayers[_arg1]; delete videoPlayerStates[_arg1]; delete videoPlayerStateDict[_local2]; } public function assignTabIndexes(_arg1:int):int{ if (tabIndex){ tabEnabled = false; tabChildren = true; if (isNaN(_arg1)){ _arg1 = tabIndex; }; }; var _local2:int = uiMgr.assignTabIndexes(_arg1); return (_local2); } public function set progressInterval(_arg1:Number):void{ if (_activeVP == 0){ _progressInterval = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.progressInterval = _arg1; } public function get metadataLoaded():Boolean{ var _local1:CuePointManager = cuePointMgrs[_activeVP]; return (_local1.metadataLoaded); } public function get playing():Boolean{ return ((state == VideoState.PLAYING)); } public function set playheadTime(_arg1:Number):void{ seek(_arg1); } public function get totalTime():Number{ if (isLivePreview){ return (1); }; var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; if (_local1.totalTimeSet){ return (_local1.totalTime); }; var _local2:VideoPlayer = videoPlayers[_activeVP]; return (_local2.totalTime); } public function set seekToPrevOffset(_arg1:Number):void{ _seekToPrevOffset = _arg1; } public function set volume(_arg1:Number):void{ var _local2:VideoPlayer; if (_volume == _arg1){ return; }; _volume = _arg1; if (!scrubbing){ _local2 = videoPlayers[_visibleVP]; _local2.volume = _volume; }; dispatchEvent(new SoundEvent(SoundEvent.SOUND_UPDATE, false, false, _local2.soundTransform)); } public function get skinAutoHide():Boolean{ return (uiMgr.skinAutoHide); } public function set source(_arg1:String):void{ var _local2:VideoPlayerState; var _local3:CuePointManager; if (isLivePreview){ return; }; if (_arg1 == null){ _arg1 = ""; }; if (_componentInspectorSetting){ _local2 = videoPlayerStates[_activeVP]; _local2.url = _arg1; if (_arg1.length > 0){ _local2.isWaiting = true; addEventListener(Event.ENTER_FRAME, doContentPathConnect); }; } else { if (source == _arg1){ return; }; _local3 = cuePointMgrs[_activeVP]; _local3.reset(); _local2 = videoPlayerStates[_activeVP]; _local2.url = _arg1; _local2.isWaiting = true; doContentPathConnect(_activeVP); }; } public function set activeVideoPlayerIndex(_arg1:uint):void{ if (_activeVP == _arg1){ return; }; _activeVP = _arg1; if (videoPlayers[_activeVP] == undefined){ createVideoPlayer(_activeVP); }; } override public function set soundTransform(_arg1:SoundTransform):void{ if (_arg1 == null){ return; }; _volume = _arg1.volume; _soundTransform.volume = (scrubbing) ? 0 : _arg1.volume; _soundTransform.leftToLeft = _arg1.leftToLeft; _soundTransform.leftToRight = _arg1.leftToRight; _soundTransform.rightToLeft = _arg1.rightToLeft; _soundTransform.rightToRight = _arg1.rightToRight; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.soundTransform = _soundTransform; dispatchEvent(new SoundEvent(SoundEvent.SOUND_UPDATE, false, false, _local2.soundTransform)); } public function get endTabIndex():int{ return (uiMgr.endTabIndex); } public function seekToNavCuePoint(_arg1):void{ var _local2:Object; if ((_arg1 is String)){ _local2 = {name:String(_arg1)}; } else { if ((_arg1 is Number)){ _local2 = {time:Number(_arg1)}; } else { _local2 = _arg1; }; }; if (_local2.name == undefined){ seekToNextNavCuePoint(_local2.time); return; }; if (isNaN(_local2.time)){ _local2.time = 0; }; var _local3:Object = findNearestCuePoint(_arg1, CuePointType.NAVIGATION); while (((!((_local3 == null))) && ((((_local3.time < _local2.time)) || (!(isFLVCuePointEnabled(_local3))))))) { _local3 = findNextCuePointWithName(_local3); }; if (_local3 == null){ throw (new VideoError(VideoError.INVALID_SEEK)); }; seek(_local3.time); } override public function set height(_arg1:Number):void{ var _local5:VideoPlayer; if (isLivePreview){ setSize(this.width, _arg1); return; }; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 != null){ _local5.height = _arg1; }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } override public function get scaleY():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((_local1.height / _origHeight)); } public function get bytesLoaded():uint{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.bytesLoaded); } override public function get scaleX():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((_local1.width / _origWidth)); } public function get forwardButton():Sprite{ return (uiMgr.getControl(UIManager.FORWARD_BUTTON)); } public function get seekBarInterval():Number{ return (uiMgr.seekBarInterval); } public function set bufferTime(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.bufferTime = _arg1; } public function set totalTime(_arg1:Number):void{ var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; _local2.totalTime = _arg1; _local2.totalTimeSet = true; } public function set skinAutoHide(_arg1:Boolean):void{ if (isLivePreview){ return; }; uiMgr.skinAutoHide = _arg1; } flvplayback_internal function queueCmd(_arg1:VideoPlayerState, _arg2:Number, _arg3:Number=NaN):void{ if (_arg1.cmdQueue == null){ _arg1.cmdQueue = new Array(); }; _arg1.cmdQueue.push(new QueuedCommand(_arg2, null, false, _arg3)); } public function get fullScreenSkinDelay():int{ return (uiMgr.fullScreenSkinDelay); } public function set isLive(_arg1:Boolean):void{ var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; _local2.isLive = _arg1; _local2.isLiveSet = true; } private function onCompletePreview(_arg1:Event):void{ var e = _arg1; try { previewImage_mc.width = livePreviewWidth; previewImage_mc.height = livePreviewHeight; } catch(e:Error) { }; } flvplayback_internal function showSkinNow(_arg1:TimerEvent):void{ skinShowTimer = null; uiMgr.visible = true; } override public function get y():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((super.y + _local1.y)); } public function get seekBar():Sprite{ return (uiMgr.getControl(UIManager.SEEK_BAR)); } public function get volumeBarInterval():Number{ return (uiMgr.volumeBarInterval); } public function seek(_arg1:Number):void{ var _local3:VideoPlayer; var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; if (!_firstStreamShown){ _local2.preSeekTime = 0; queueCmd(_local2, QueuedCommand.SEEK, _arg1); } else { _local2.preSeekTime = playheadTime; _local3 = videoPlayers[_activeVP]; _local3.seek(_arg1); }; } public function set registrationHeight(_arg1:Number):void{ height = _arg1; } public function get bufferingBarHidesAndDisablesOthers():Boolean{ return (uiMgr.bufferingBarHidesAndDisablesOthers); } flvplayback_internal function skinError(_arg1:String):void{ if (isLivePreview){ return; }; if (((_firstStreamReady) && (!(_firstStreamShown)))){ showFirstStream(); }; dispatchEvent(new SkinErrorEvent(SkinErrorEvent.SKIN_ERROR, false, false, _arg1)); } public function get registrationWidth():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.registrationWidth); } override public function get x():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((super.x + _local1.x)); } public function get state():String{ if (isLivePreview){ return (VideoState.STOPPED); }; var _local1:VideoPlayer = videoPlayers[_activeVP]; if ((((_activeVP == _visibleVP)) && (scrubbing))){ return (VideoState.SEEKING); }; var _local2:String = _local1.state; if (_local2 == VideoState.RESIZING){ return (VideoState.LOADING); }; var _local3:VideoPlayerState = videoPlayerStates[_activeVP]; if ((((((_local3.prevState == VideoState.LOADING)) && (_local3.autoPlay))) && ((_local2 == VideoState.STOPPED)))){ return (VideoState.LOADING); }; return (_local2); } public function set autoRewind(_arg1:Boolean):void{ if (_activeVP == 0){ _autoRewind = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.autoRewind = _arg1; } public function get volumeBar():Sprite{ return (uiMgr.getControl(UIManager.VOLUME_BAR)); } override public function set scaleY(_arg1:Number):void{ var _local5:VideoPlayer; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 !== null){ _local5.height = (_origHeight * _arg1); }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } flvplayback_internal function createVideoPlayer(_arg1:Number):void{ var skinDepth:int; var index = _arg1; if (isLivePreview){ return; }; var vp:VideoPlayer = videoPlayers[index]; if (vp == null){ var _local3 = new VideoPlayer(0, 0); vp = _local3; videoPlayers[index] = _local3; vp.setSize(registrationWidth, registrationHeight); }; vp.visible = false; vp.volume = 0; vp.name = String(index); var added:Boolean; if (uiMgr.skin_mc != null){ try { skinDepth = getChildIndex(uiMgr.skin_mc); if (skinDepth > 0){ addChildAt(vp, skinDepth); added = true; }; } catch(err:Error) { }; }; if (!added){ addChild(vp); }; _topVP = index; vp.autoRewind = _autoRewind; vp.scaleMode = _scaleMode; vp.bufferTime = _bufferTime; vp.idleTimeout = _idleTimeout; vp.playheadUpdateInterval = _playheadUpdateInterval; vp.progressInterval = _progressInterval; vp.soundTransform = _soundTransform; var vpState:VideoPlayerState = new VideoPlayerState(vp, index); videoPlayerStates[index] = vpState; videoPlayerStateDict[vp] = vpState; vp.addEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleAutoLayoutEvent); vp.addEventListener(MetadataEvent.CUE_POINT, handleMetadataEvent); vp.addEventListener(MetadataEvent.METADATA_RECEIVED, handleMetadataEvent); vp.addEventListener(VideoProgressEvent.PROGRESS, handleVideoProgressEvent); vp.addEventListener(VideoEvent.AUTO_REWOUND, handleVideoEvent); vp.addEventListener(VideoEvent.CLOSE, handleVideoEvent); vp.addEventListener(VideoEvent.COMPLETE, handleVideoEvent); vp.addEventListener(VideoEvent.PLAYHEAD_UPDATE, handleVideoEvent); vp.addEventListener(VideoEvent.STATE_CHANGE, handleVideoEvent); vp.addEventListener(VideoEvent.READY, handleVideoEvent); var cpMgr:CuePointManager = new CuePointManager(this, index); cuePointMgrs[index] = cpMgr; cpMgr.playheadUpdateInterval = _playheadUpdateInterval; } public function findNearestCuePoint(_arg1, _arg2:String="all"):Object{ var _local3:CuePointManager = cuePointMgrs[_activeVP]; switch (_arg2){ case "event": return (_local3.getCuePoint(_local3.eventCuePoints, true, _arg1)); case "navigation": return (_local3.getCuePoint(_local3.navCuePoints, true, _arg1)); case "flv": return (_local3.getCuePoint(_local3.flvCuePoints, true, _arg1)); case "actionscript": return (_local3.getCuePoint(_local3.asCuePoints, true, _arg1)); case "all": default: return (_local3.getCuePoint(_local3.allCuePoints, true, _arg1)); }; } override public function set scaleX(_arg1:Number):void{ var _local5:VideoPlayer; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 !== null){ _local5.width = (_origWidth * _arg1); }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } public function get muteButton():Sprite{ return (uiMgr.getControl(UIManager.MUTE_BUTTON)); } public function seekPercent(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_activeVP]; if (((((((((isNaN(_arg1)) || ((_arg1 < 0)))) || ((_arg1 > 100)))) || (isNaN(_local2.totalTime)))) || ((_local2.totalTime <= 0)))){ throw (new VideoError(VideoError.INVALID_SEEK)); }; seek(((_local2.totalTime * _arg1) / 100)); } public function set forwardButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.FORWARD_BUTTON, _arg1); } private function doContentPathConnect(_arg1):void{ if (isLivePreview){ return; }; var _local2:int; if ((_arg1 is int)){ _local2 = int(_arg1); } else { removeEventListener(Event.ENTER_FRAME, doContentPathConnect); }; var _local3:VideoPlayer = videoPlayers[_local2]; var _local4:VideoPlayerState = videoPlayerStates[_local2]; if (!_local4.isWaiting){ return; }; if (((_local4.autoPlay) && (_firstStreamShown))){ _local3.play(_local4.url, _local4.totalTime, _local4.isLive); } else { _local3.load(_local4.url, _local4.totalTime, _local4.isLive); }; _local4.isLiveSet = false; _local4.totalTimeSet = false; _local4.isWaiting = false; } public function get registrationX():Number{ return (super.x); } public function get registrationY():Number{ return (super.y); } public function bringVideoPlayerToFront(_arg1:uint):void{ var skinDepth:int; var index = _arg1; if (index == _topVP){ return; }; var vp:VideoPlayer = videoPlayers[index]; if (vp == null){ createVideoPlayer(index); vp = videoPlayers[index]; }; var moved:Boolean; if (uiMgr.skin_mc != null){ try { skinDepth = getChildIndex(uiMgr.skin_mc); if (skinDepth > 0){ setChildIndex(vp, (skinDepth - 1)); moved = true; }; } catch(err:Error) { }; }; if (!moved){ setChildIndex(vp, (numChildren - 1)); }; _topVP = index; } public function get startTabIndex():int{ if (uiMgr.startTabIndex){ return (uiMgr.startTabIndex); }; if (tabIndex){ return (tabIndex); }; return (uiMgr.startTabIndex); } public function set seekBarInterval(_arg1:Number):void{ uiMgr.seekBarInterval = _arg1; } public function get pauseButton():Sprite{ return (uiMgr.getControl(UIManager.PAUSE_BUTTON)); } public function addASCuePoint(_arg1, _arg2:String=null, _arg3:Object=null):Object{ var _local4:CuePointManager = cuePointMgrs[_activeVP]; return (_local4.addASCuePoint(_arg1, _arg2, _arg3)); } public function get playheadPercentage():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; if (isNaN(_local1.totalTime)){ return (NaN); }; return (((_local1.playheadTime / _local1.totalTime) * 100)); } public function setFLVCuePointEnabled(_arg1:Boolean, _arg2):Number{ var _local3:CuePointManager = cuePointMgrs[_activeVP]; return (_local3.setFLVCuePointEnabled(_arg1, _arg2)); } public function seekToNextNavCuePoint(_arg1:Number=NaN):void{ var _local2:VideoPlayer = videoPlayers[_activeVP]; if (((isNaN(_arg1)) || ((_arg1 < 0)))){ _arg1 = (_local2.playheadTime + 0.001); }; var _local3:Object = findNearestCuePoint(_arg1, CuePointType.NAVIGATION); if (_local3 == null){ seek(_local2.totalTime); return; }; var _local4:Number = _local3.index; if (_local3.time < _arg1){ _local4++; }; while ((((_local4 < _local3.array.length)) && (!(isFLVCuePointEnabled(_local3.array[_local4]))))) { _local4++; }; if (_local4 >= _local3.array.length){ _arg1 = _local2.totalTime; if (_local3.array[(_local3.array.length - 1)].time > _arg1){ _arg1 = _local3.array[(_local3.array.length - 1)]; }; seek(_arg1); } else { seek(_local3.array[_local4].time); }; } public function set fullScreenSkinDelay(_arg1:int):void{ uiMgr.fullScreenSkinDelay = _arg1; } public function get playheadUpdateInterval():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.playheadUpdateInterval); } public function load(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false):void{ if ((((_arg1 == null)) || ((_arg1.length == 0)))){ return; }; if (_arg1 == this.source){ return; }; this.autoPlay = false; this.totalTime = _arg2; this.isLive = _arg3; this.source = _arg1; } public function seekSeconds(_arg1:Number):void{ seek(_arg1); } public function set componentInspectorSetting(_arg1:Boolean):void{ _componentInspectorSetting = _arg1; } public function get idleTimeout():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.idleTimeout); } public function get scrubbing():Boolean{ var _local2:ControlData; var _local1:Sprite = seekBar; if (_local1 != null){ _local2 = uiMgr.ctrlDataDict[_local1]; return (_local2.isDragging); }; return (false); } public function set bitrate(_arg1:Number):void{ ncMgr.bitrate = _arg1; } public function removeASCuePoint(_arg1):Object{ var _local2:CuePointManager = cuePointMgrs[_activeVP]; return (_local2.removeASCuePoint(_arg1)); } public function get playPauseButton():Sprite{ return (uiMgr.getControl(UIManager.PLAY_PAUSE_BUTTON)); } public function get fullScreenTakeOver():Boolean{ return (uiMgr.fullScreenTakeOver); } public function get backButton():Sprite{ return (uiMgr.getControl(UIManager.BACK_BUTTON)); } public function set skin(_arg1:String):void{ uiMgr.skin = _arg1; } public function set fullScreenBackgroundColor(_arg1:uint):void{ uiMgr.fullScreenBackgroundColor = _arg1; } public function get fullScreenButton():Sprite{ return (uiMgr.getControl(UIManager.FULL_SCREEN_BUTTON)); } public function set seekBar(_arg1:Sprite):void{ uiMgr.setControl(UIManager.SEEK_BAR, _arg1); } override public function set x(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_visibleVP]; super.x = (_arg1 - _local2.x); } override public function set y(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_visibleVP]; super.y = (_arg1 - _local2.y); } public function set volumeBarInterval(_arg1:Number):void{ uiMgr.volumeBarInterval = _arg1; } public function get align():String{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.align); } public function get preferredHeight():int{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.videoHeight); } public function set bufferingBarHidesAndDisablesOthers(_arg1:Boolean):void{ uiMgr.bufferingBarHidesAndDisablesOthers = _arg1; } public function set autoPlay(_arg1:Boolean):void{ var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; _local2.autoPlay = _arg1; } public function set visibleVideoPlayerIndex(_arg1:uint):void{ var _local5:Rectangle; var _local6:Rectangle; if (_visibleVP == _arg1){ return; }; if (videoPlayers[_arg1] == undefined){ createVideoPlayer(_arg1); }; var _local2:VideoPlayer = videoPlayers[_arg1]; var _local3:VideoPlayer = videoPlayers[_visibleVP]; _local3.visible = false; _local3.volume = 0; _visibleVP = _arg1; if (_firstStreamShown){ uiMgr.setupSkinAutoHide(false); _local2.visible = true; _soundTransform.volume = (scrubbing) ? 0 : _volume; _local2.soundTransform = _soundTransform; } else { if (((((((_local2.stateResponsive) || ((_local2.state == VideoState.CONNECTION_ERROR)))) || ((_local2.state == VideoState.DISCONNECTED)))) && (uiMgr.skinReady))){ uiMgr.visible = true; uiMgr.setupSkinAutoHide(false); _firstStreamReady = true; if (uiMgr.skin == ""){ uiMgr.hookUpCustomComponents(); }; showFirstStream(); }; }; if (((!((_local2.height == _local3.height))) || (!((_local2.width == _local3.width))))){ _local5 = new Rectangle((_local3.x + super.x), (_local3.y + super.y), _local3.width, _local3.height); _local6 = new Rectangle((_local3.registrationX + super.x), (_local3.registrationY + super.y), _local3.registrationWidth, _local3.registrationHeight); dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local5, _local6)); }; var _local4:uint = _activeVP; _activeVP = _visibleVP; uiMgr.handleIVPEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, state, playheadTime, _visibleVP)); uiMgr.handleIVPEvent(new VideoEvent(VideoEvent.PLAYHEAD_UPDATE, false, false, state, playheadTime, _visibleVP)); if (_local2.isRTMP){ uiMgr.handleIVPEvent(new VideoEvent(VideoEvent.READY, false, false, state, playheadTime, _visibleVP)); } else { uiMgr.handleIVPEvent(new VideoProgressEvent(VideoProgressEvent.PROGRESS, false, false, bytesLoaded, bytesTotal, _visibleVP)); }; _activeVP = _local4; } public function get bufferingBar():Sprite{ return (uiMgr.getControl(UIManager.BUFFERING_BAR)); } flvplayback_internal function _scrubStart():void{ var _local1:Number = playheadTime; var _local2:VideoPlayer = videoPlayers[_visibleVP]; _volume = _local2.volume; _local2.volume = 0; dispatchEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, VideoState.SEEKING, _local1, _visibleVP)); dispatchEvent(new VideoEvent(VideoEvent.SCRUB_START, false, false, VideoState.SEEKING, _local1, _visibleVP)); } public function set playButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.PLAY_BUTTON, _arg1); } flvplayback_internal function handleAutoLayoutEvent(_arg1:AutoLayoutEvent):void{ var _local4:Rectangle; var _local5:Rectangle; var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:AutoLayoutEvent = AutoLayoutEvent(_arg1.clone()); _local3.oldBounds.x = (_local3.oldBounds.x + super.x); _local3.oldBounds.y = (_local3.oldBounds.y + super.y); _local3.oldRegistrationBounds.x = (_local3.oldRegistrationBounds.x + super.y); _local3.oldRegistrationBounds.y = (_local3.oldRegistrationBounds.y + super.y); _local3.vp = _local2.index; dispatchEvent(_local3); if (((!(resizingNow)) && ((_local2.index == _visibleVP)))){ _local4 = Rectangle(_arg1.oldBounds.clone()); _local5 = Rectangle(_arg1.oldRegistrationBounds.clone()); _local4.x = (_local4.x + super.x); _local4.y = (_local4.y + super.y); _local5.x = (_local5.x + super.y); _local5.y = (_local5.y + super.y); dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local4, _local5)); }; } public function findNextCuePointWithName(_arg1:Object):Object{ var _local2:CuePointManager = cuePointMgrs[_activeVP]; return (_local2.getNextCuePointWithName(_arg1)); } override public function get soundTransform():SoundTransform{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; var _local2:SoundTransform = _local1.soundTransform; if (scrubbing){ _local2.volume = _volume; }; return (_local2); } public function set registrationWidth(_arg1:Number):void{ width = _arg1; } flvplayback_internal function showFirstStream():void{ var _local3:VideoPlayerState; var _local4:int; _firstStreamShown = true; var _local1:VideoPlayer = videoPlayers[_visibleVP]; _local1.visible = true; if (!scrubbing){ _soundTransform.volume = _volume; _local1.soundTransform = _soundTransform; }; var _local2:int; while (_local2 < videoPlayers.length) { _local1 = videoPlayers[_local2]; if (_local1 != null){ _local3 = videoPlayerStates[_local2]; if ((((_local1.state == VideoState.STOPPED)) && (_local3.autoPlay))){ if (_local1.isRTMP){ _local1.play(); } else { _local3.prevState = VideoState.STOPPED; _local1.playWhenEnoughDownloaded(); }; }; if (_local3.cmdQueue != null){ _local4 = 0; while (_local4 < _local3.cmdQueue.length) { switch (_local3.cmdQueue[_local4].type){ case QueuedCommand.PLAY: _local1.play(); break; case QueuedCommand.PAUSE: _local1.pause(); break; case QueuedCommand.STOP: _local1.stop(); break; case QueuedCommand.SEEK: _local1.seek(_local3.cmdQueue[_local4].time); break; case QueuedCommand.PLAY_WHEN_ENOUGH: _local1.playWhenEnoughDownloaded(); break; }; _local4++; }; _local3.cmdQueue = null; }; }; _local2++; }; } public function get stateResponsive():Boolean{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.stateResponsive); } public function set skinBackgroundAlpha(_arg1:Number):void{ uiMgr.skinBackgroundAlpha = _arg1; } flvplayback_internal function handleVideoEvent(_arg1:VideoEvent):void{ var _local6:Number; var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:CuePointManager = cuePointMgrs[_local2.index]; var _local4:VideoEvent = VideoEvent(_arg1.clone()); _local4.vp = _local2.index; var _local5:String = ((((_local2.index == _visibleVP)) && (scrubbing))) ? VideoState.SEEKING : _arg1.state; switch (_arg1.type){ case VideoEvent.AUTO_REWOUND: dispatchEvent(_local4); dispatchEvent(new VideoEvent(VideoEvent.REWIND, false, false, _local5, _arg1.playheadTime, _local2.index)); _local3.resetASCuePointIndex(_arg1.playheadTime); break; case VideoEvent.PLAYHEAD_UPDATE: _local4.state = _local5; dispatchEvent(_local4); if (((!(isNaN(_local2.preSeekTime))) && (!((_arg1.state == VideoState.SEEKING))))){ _local6 = _local2.preSeekTime; _local2.preSeekTime = NaN; _local3.resetASCuePointIndex(_arg1.playheadTime); dispatchEvent(new VideoEvent(VideoEvent.SEEKED, false, false, _arg1.state, _arg1.playheadTime, _local2.index)); if (_local6 < _arg1.playheadTime){ dispatchEvent(new VideoEvent(VideoEvent.FAST_FORWARD, false, false, _arg1.state, _arg1.playheadTime, _local2.index)); } else { if (_local6 > _arg1.playheadTime){ dispatchEvent(new VideoEvent(VideoEvent.REWIND, false, false, _arg1.state, _arg1.playheadTime, _local2.index)); }; }; }; _local3.dispatchASCuePoints(); break; case VideoEvent.STATE_CHANGE: if ((((_local2.index == _visibleVP)) && (scrubbing))){ break; }; if (_arg1.state == VideoState.RESIZING){ break; }; if ((((((_local2.prevState == VideoState.LOADING)) && (_local2.autoPlay))) && ((_arg1.state == VideoState.STOPPED)))){ return; }; if ((((((((_arg1.state == VideoState.CONNECTION_ERROR)) && ((_arg1.vp == _visibleVP)))) && (!(_firstStreamShown)))) && (uiMgr.skinReady))){ showFirstStream(); uiMgr.visible = true; if (uiMgr.skin == ""){ uiMgr.hookUpCustomComponents(); }; if (skinShowTimer != null){ skinShowTimer.reset(); skinShowTimer = null; }; }; _local2.prevState = _arg1.state; _local4.state = _local5; dispatchEvent(_local4); if (_local2.owner.state != _arg1.state){ return; }; switch (_arg1.state){ case VideoState.BUFFERING: dispatchEvent(new VideoEvent(VideoEvent.BUFFERING_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; case VideoState.PAUSED: dispatchEvent(new VideoEvent(VideoEvent.PAUSED_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; case VideoState.PLAYING: dispatchEvent(new VideoEvent(VideoEvent.PLAYING_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; case VideoState.STOPPED: dispatchEvent(new VideoEvent(VideoEvent.STOPPED_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; }; break; case VideoEvent.READY: if (!_firstStreamReady){ if (_local2.index == _visibleVP){ _firstStreamReady = true; if (((uiMgr.skinReady) && (!(_firstStreamShown)))){ uiMgr.visible = true; if (uiMgr.skin == ""){ uiMgr.hookUpCustomComponents(); }; showFirstStream(); }; }; } else { if (((((_firstStreamShown) && ((_arg1.state == VideoState.STOPPED)))) && (_local2.autoPlay))){ if (_local2.owner.isRTMP){ _local2.owner.play(); } else { _local2.prevState = VideoState.STOPPED; _local2.owner.playWhenEnoughDownloaded(); }; }; }; _local4.state = _local5; dispatchEvent(_local4); break; case VideoEvent.CLOSE: case VideoEvent.COMPLETE: _local4.state = _local5; dispatchEvent(_local4); break; }; } public function get volume():Number{ return (_volume); } public function get metadata():Object{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.metadata); } public function set skinBackgroundColor(_arg1:uint):void{ uiMgr.skinBackgroundColor = _arg1; } public function set volumeBar(_arg1:Sprite):void{ uiMgr.setControl(UIManager.VOLUME_BAR, _arg1); } public function play(_arg1:String=null, _arg2:Number=NaN, _arg3:Boolean=false):void{ var _local4:VideoPlayerState; var _local5:VideoPlayer; if (_arg1 == null){ if (!_firstStreamShown){ _local4 = videoPlayerStates[_activeVP]; queueCmd(_local4, QueuedCommand.PLAY); } else { _local5 = videoPlayers[_activeVP]; _local5.play(); }; } else { if (_arg1 == this.source){ return; }; this.autoPlay = true; this.totalTime = _arg2; this.isLive = _arg3; this.source = _arg1; }; } public function get paused():Boolean{ return ((state == VideoState.PAUSED)); } override public function get height():Number{ if (isLivePreview){ return (livePreviewHeight); }; var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.height); } public function get isLive():Boolean{ var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; if (_local1.isLiveSet){ return (_local1.isLive); }; var _local2:VideoPlayer = videoPlayers[_activeVP]; return (_local2.isLive); } public function get registrationHeight():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.registrationHeight); } public function get bufferTime():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.bufferTime); } public function set volumeBarScrubTolerance(_arg1:Number):void{ uiMgr.volumeBarScrubTolerance = _arg1; } public function set skinScaleMaximum(_arg1:Number):void{ uiMgr.skinScaleMaximum = _arg1; } public function get autoRewind():Boolean{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.autoRewind); } public function set muteButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.MUTE_BUTTON, _arg1); } public function enterFullScreenDisplayState():void{ uiMgr.enterFullScreenDisplayState(); } flvplayback_internal function handleMetadataEvent(_arg1:MetadataEvent):void{ var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:CuePointManager = cuePointMgrs[_local2.index]; switch (_arg1.type){ case MetadataEvent.METADATA_RECEIVED: _local3.processFLVCuePoints(_arg1.info.cuePoints); break; case MetadataEvent.CUE_POINT: if (!_local3.isFLVCuePointEnabled(_arg1.info)){ return; }; break; }; var _local4:MetadataEvent = MetadataEvent(_arg1.clone()); _local4.vp = _local2.index; dispatchEvent(_local4); } public function playWhenEnoughDownloaded():void{ var _local1:VideoPlayerState; var _local2:VideoPlayer; if (!_firstStreamShown){ _local1 = videoPlayerStates[_activeVP]; queueCmd(_local1, QueuedCommand.PLAY_WHEN_ENOUGH); } else { _local2 = videoPlayers[_activeVP]; _local2.playWhenEnoughDownloaded(); }; } public function get bitrate():Number{ return (ncMgr.bitrate); } public function get fullScreenBackgroundColor():uint{ return (uiMgr.fullScreenBackgroundColor); } public function get skin():String{ return (uiMgr.skin); } public function set registrationX(_arg1:Number):void{ super.x = _arg1; } public function set registrationY(_arg1:Number):void{ super.y = _arg1; } public function get playButton():Sprite{ return (uiMgr.getControl(UIManager.PLAY_BUTTON)); } public function get visibleVideoPlayerIndex():uint{ return (_visibleVP); } public function setSize(_arg1:Number, _arg2:Number):void{ var _local6:VideoPlayer; var _local3:Rectangle = new Rectangle(x, y, this.width, this.height); var _local4:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); if (isLivePreview){ livePreviewWidth = _arg1; livePreviewHeight = _arg2; if (previewImage_mc != null){ previewImage_mc.width = _arg1; previewImage_mc.height = _arg2; }; preview_mc.box_mc.width = _arg1; preview_mc.box_mc.height = _arg2; if ((((preview_mc.box_mc.width < preview_mc.icon_mc.width)) || ((preview_mc.box_mc.height < preview_mc.icon_mc.height)))){ preview_mc.icon_mc.visible = false; } else { preview_mc.icon_mc.visible = true; preview_mc.icon_mc.x = ((preview_mc.box_mc.width - preview_mc.icon_mc.width) / 2); preview_mc.icon_mc.y = ((preview_mc.box_mc.height - preview_mc.icon_mc.height) / 2); }; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local3, _local4)); return; }; resizingNow = true; var _local5:int; while (_local5 < videoPlayers.length) { _local6 = videoPlayers[_local5]; if (_local6 != null){ _local6.setSize(_arg1, _arg2); }; _local5++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local3, _local4)); } override public function set width(_arg1:Number):void{ var _local5:VideoPlayer; if (isLivePreview){ setSize(_arg1, this.height); return; }; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 != null){ _local5.width = _arg1; }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } public function get isRTMP():Boolean{ if (isLivePreview){ return (true); }; var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.isRTMP); } public function set preview(_arg1:String):void{ var filename = _arg1; if (!isLivePreview){ return; }; previewImageUrl = filename; if (previewImage_mc != null){ removeChild(previewImage_mc); }; previewImage_mc = new Loader(); previewImage_mc.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompletePreview); previewImage_mc.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{ }); previewImage_mc.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function (_arg1:SecurityErrorEvent):void{ }); addChildAt(previewImage_mc, 1); previewImage_mc.load(new URLRequest(previewImageUrl)); } public function get skinBackgroundAlpha():Number{ return (uiMgr.skinBackgroundAlpha); } public function set pauseButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.PAUSE_BUTTON, _arg1); } public function get bytesTotal():uint{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.bytesTotal); } public function seekToPrevNavCuePoint(_arg1:Number=NaN):void{ var _local4:VideoPlayer; if (((isNaN(_arg1)) || ((_arg1 < 0)))){ _local4 = videoPlayers[_activeVP]; _arg1 = _local4.playheadTime; }; var _local2:Object = findNearestCuePoint(_arg1, CuePointType.NAVIGATION); if (_local2 == null){ seek(0); return; }; var _local3:Number = _local2.index; while ((((_local3 >= 0)) && (((!(isFLVCuePointEnabled(_local2.array[_local3]))) || ((_local2.array[_local3].time >= (_arg1 - _seekToPrevOffset))))))) { _local3--; }; if (_local3 < 0){ seek(0); } else { seek(_local2.array[_local3].time); }; } public function get autoPlay():Boolean{ var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; return (_local1.autoPlay); } public function set playheadPercentage(_arg1:Number):void{ seekPercent(_arg1); } public function isFLVCuePointEnabled(_arg1):Boolean{ var _local2:CuePointManager = cuePointMgrs[_activeVP]; return (_local2.isFLVCuePointEnabled(_arg1)); } public function get buffering():Boolean{ return ((state == VideoState.BUFFERING)); } public function get volumeBarScrubTolerance():Number{ return (uiMgr.volumeBarScrubTolerance); } public function get skinBackgroundColor():uint{ return (uiMgr.skinBackgroundColor); } public function get skinScaleMaximum():Number{ return (uiMgr.skinScaleMaximum); } public function set stopButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.STOP_BUTTON, _arg1); } public function get preferredWidth():int{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.videoWidth); } override public function get width():Number{ if (isLivePreview){ return (livePreviewWidth); }; var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.width); } public function set playheadUpdateInterval(_arg1:Number):void{ if (_activeVP == 0){ _playheadUpdateInterval = _arg1; }; var _local2:CuePointManager = cuePointMgrs[_activeVP]; _local2.playheadUpdateInterval = _arg1; var _local3:VideoPlayer = videoPlayers[_activeVP]; _local3.playheadUpdateInterval = _arg1; } public function get stopped():Boolean{ return ((state == VideoState.STOPPED)); } public function set fullScreenButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.FULL_SCREEN_BUTTON, _arg1); } public function get stopButton():Sprite{ return (uiMgr.getControl(UIManager.STOP_BUTTON)); } private function createLivePreviewMovieClip():void{ preview_mc = new MovieClip(); preview_mc.name = "preview_mc"; preview_mc.box_mc = new MovieClip(); preview_mc.box_mc.name = "box_mc"; preview_mc.box_mc.graphics.beginFill(0); preview_mc.box_mc.graphics.moveTo(0, 0); preview_mc.box_mc.graphics.lineTo(0, 100); preview_mc.box_mc.graphics.lineTo(100, 100); preview_mc.box_mc.graphics.lineTo(100, 0); preview_mc.box_mc.graphics.lineTo(0, 0); preview_mc.box_mc.graphics.endFill(); preview_mc.addChild(preview_mc.box_mc); preview_mc.icon_mc = new Icon(); preview_mc.icon_mc.name = "icon_mc"; preview_mc.addChild(preview_mc.icon_mc); addChild(preview_mc); } public function set idleTimeout(_arg1:Number):void{ if (_activeVP == 0){ _idleTimeout = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.idleTimeout = _arg1; } flvplayback_internal function skinLoaded():void{ if (isLivePreview){ return; }; var _local1:VideoPlayer = videoPlayers[_visibleVP]; if (((((_firstStreamReady) || ((_local1.state == VideoState.CONNECTION_ERROR)))) || ((_local1.state == VideoState.DISCONNECTED)))){ uiMgr.visible = true; if (!_firstStreamShown){ showFirstStream(); }; } else { if (skinShowTimer != null){ skinShowTimer.reset(); skinShowTimer = null; }; skinShowTimer = new Timer(DEFAULT_SKIN_SHOW_TIMER_INTERVAL, 1); skinShowTimer.addEventListener(TimerEvent.TIMER, showSkinNow); skinShowTimer.start(); }; dispatchEvent(new VideoEvent(VideoEvent.SKIN_LOADED, false, false, state, playheadTime, _visibleVP)); } flvplayback_internal function _scrubFinish():void{ var _local1:Number = playheadTime; var _local2:String = state; var _local3:VideoPlayer = videoPlayers[_visibleVP]; _soundTransform.volume = _volume; _local3.soundTransform = _soundTransform; if (_local2 != VideoState.SEEKING){ dispatchEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, _local2, _local1, _visibleVP)); }; dispatchEvent(new VideoEvent(VideoEvent.SCRUB_FINISH, false, false, _local2, _local1, _visibleVP)); } public function set playPauseButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.PLAY_PAUSE_BUTTON, _arg1); } public function set fullScreenTakeOver(_arg1:Boolean):void{ uiMgr.fullScreenTakeOver = _arg1; } public function set backButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.BACK_BUTTON, _arg1); } public function set cuePoints(_arg1:Array):void{ if (!_componentInspectorSetting){ return; }; cuePointMgrs[0].processCuePointsProperty(_arg1); } public function pause():void{ var _local1:VideoPlayerState; var _local2:VideoPlayer; if (!_firstStreamShown){ _local1 = videoPlayerStates[_activeVP]; queueCmd(_local1, QueuedCommand.PAUSE); } else { _local2 = videoPlayers[_activeVP]; _local2.pause(); }; } public function set seekBarScrubTolerance(_arg1:Number):void{ uiMgr.seekBarScrubTolerance = _arg1; } flvplayback_internal function handleVideoProgressEvent(_arg1:VideoProgressEvent):void{ var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:VideoProgressEvent = VideoProgressEvent(_arg1.clone()); _local3.vp = _local2.index; dispatchEvent(_local3); } public function findCuePoint(_arg1, _arg2:String="all"):Object{ var _local3:CuePointManager = cuePointMgrs[_activeVP]; switch (_arg2){ case "event": return (_local3.getCuePoint(_local3.eventCuePoints, false, _arg1)); case "navigation": return (_local3.getCuePoint(_local3.navCuePoints, false, _arg1)); case "flv": return (_local3.getCuePoint(_local3.flvCuePoints, false, _arg1)); case "actionscript": return (_local3.getCuePoint(_local3.asCuePoints, false, _arg1)); case "all": default: return (_local3.getCuePoint(_local3.allCuePoints, false, _arg1)); }; } } }//package fl.videoSection 34//flvplayback_internal (fl.video.flvplayback_internal) package fl.video { public namespace flvplayback_internal = "http://www.adobe.com/2007/flash/flvplayback/internal"; }//package fl.videoSection 35//FPADManager (fl.video.FPADManager) package fl.video { import flash.events.*; import flash.net.*; public class FPADManager { flvplayback_internal var _uriParam:String; flvplayback_internal var _parseResults:ParseResults; private var _owner:INCManager; flvplayback_internal var rtmpURL:String; flvplayback_internal var _url:String; flvplayback_internal var xmlLoader:URLLoader; flvplayback_internal var xml:XML; public static const VERSION:String = "2.1.0.19"; public static const SHORT_VERSION:String = "2.1"; public function FPADManager(_arg1:INCManager){ _owner = _arg1; } flvplayback_internal function connectXML(_arg1:String, _arg2:String, _arg3:String, _arg4:ParseResults):Boolean{ _uriParam = _arg2; _parseResults = _arg4; _url = ((_arg1 + "uri=") + _parseResults.protocol); if (_parseResults.serverName != null){ _url = (_url + ("/" + _parseResults.serverName)); }; if (_parseResults.portNumber != null){ _url = (_url + (":" + _parseResults.portNumber)); }; if (_parseResults.wrappedURL != null){ _url = (_url + ("/?" + _parseResults.wrappedURL)); }; _url = (_url + ("/" + _parseResults.appName)); _url = (_url + _arg3); xml = new XML(); xmlLoader = new URLLoader(); xmlLoader.addEventListener(Event.COMPLETE, xmlLoadEventHandler); xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, xmlLoadEventHandler); xmlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, xmlLoadEventHandler); xmlLoader.load(new URLRequest(_url)); return (false); } flvplayback_internal function xmlLoadEventHandler(_arg1:Event):void{ var proxy:String; var e = _arg1; try { if (e.type != Event.COMPLETE){ _owner.helperDone(this, false); } else { xml = new XML(xmlLoader.data); if ((((xml == null)) || ((xml.localName() == null)))){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" No root node found; if url is for an flv it must have .flv extension and take no parameters"))); } else { if (xml.localName() != "fpad"){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Root node not fpad"))); }; }; proxy = null; if ((((((xml.proxy.length() > 0)) && (xml.proxy.hasSimpleContent()))) && ((xml.proxy.*[0].nodeKind() == "text")))){ proxy = xml.proxy.*[0].toString(); }; if (proxy == null){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" fpad xml requires proxy tag."))); }; rtmpURL = ((((_parseResults.protocol + "/") + proxy) + "/?") + _uriParam); _owner.helperDone(this, true); }; } catch(err:Error) { _owner.helperDone(this, false); throw (err); }; } } }//package fl.videoSection 36//Icon (fl.video.Icon) package fl.video { import flash.display.*; public dynamic class Icon extends MovieClip { } }//package fl.videoSection 37//INCManager (fl.video.INCManager) package fl.video { import flash.net.*; public interface INCManager { function get timeout():uint; function set timeout(_arg1:uint):void; function get streamLength():Number; function get streamHeight():int; function connectToURL(_arg1:String):Boolean; function get streamName():String; function get bitrate():Number; function get isRTMP():Boolean; function helperDone(_arg1:Object, _arg2:Boolean):void; function getProperty(_arg1:String); function get streamWidth():int; function connectAgain():Boolean; function reconnect():void; function close():void; function set bitrate(_arg1:Number):void; function get netConnection():NetConnection; function get videoPlayer():VideoPlayer; function setProperty(_arg1:String, _arg2):void; function set videoPlayer(_arg1:VideoPlayer):void; } }//package fl.videoSection 38//IVPEvent (fl.video.IVPEvent) package fl.video { public interface IVPEvent { function get vp():uint; function get type():String; function set vp(_arg1:uint):void; } }//package fl.videoSection 39//LayoutEvent (fl.video.LayoutEvent) package fl.video { import flash.events.*; import flash.geom.*; public class LayoutEvent extends Event { private var _oldRegistrationBounds:Rectangle; private var _oldBounds:Rectangle; public static const LAYOUT:String = "layout"; public function LayoutEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Rectangle=null, _arg5:Rectangle=null){ super(_arg1, _arg2, _arg3); _oldBounds = _arg4; _oldRegistrationBounds = _arg5; } public function set oldRegistrationBounds(_arg1:Rectangle):void{ _oldRegistrationBounds = _arg1; } override public function clone():Event{ return (new LayoutEvent(type, bubbles, cancelable, Rectangle(oldBounds.clone()), Rectangle(oldRegistrationBounds.clone()))); } public function get oldRegistrationBounds():Rectangle{ return (_oldRegistrationBounds); } public function set oldBounds(_arg1:Rectangle):void{ _oldBounds = _arg1; } public function get oldBounds():Rectangle{ return (_oldBounds); } } }//package fl.videoSection 40//MetadataEvent (fl.video.MetadataEvent) package fl.video { import flash.events.*; public class MetadataEvent extends Event implements IVPEvent { private var _info:Object; private var _vp:uint; public static const METADATA_RECEIVED:String = "metadataReceived"; public static const CUE_POINT:String = "cuePoint"; public function MetadataEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Object=null, _arg5:uint=0){ super(_arg1, _arg2, _arg3); _info = _arg4; _vp = _arg5; } public function set info(_arg1:Object):void{ _info = _arg1; } public function get vp():uint{ return (_vp); } public function get info():Object{ return (_info); } public function set vp(_arg1:uint):void{ _vp = _arg1; } override public function clone():Event{ return (new MetadataEvent(type, bubbles, cancelable, info, vp)); } } }//package fl.videoSection 41//NCManager (fl.video.NCManager) package fl.video { import flash.events.*; import flash.net.*; import flash.utils.*; public class NCManager implements INCManager { public const DEFAULT_TIMEOUT:uint = 60000; flvplayback_internal var _serverName:String; flvplayback_internal var _tryNCTimer:Timer; flvplayback_internal var _autoSenseBW:Boolean; flvplayback_internal var _fpadZone:Number; flvplayback_internal var _appName:String; flvplayback_internal var _ncConnected:Boolean; flvplayback_internal var _fpadMgr:FPADManager; flvplayback_internal var _bitrate:Number; flvplayback_internal var _timeoutTimer:Timer; flvplayback_internal var _wrappedURL:String; flvplayback_internal var _payload:Number; flvplayback_internal var _nc:NetConnection; flvplayback_internal var _streamLength:Number; flvplayback_internal var _connTypeCounter:uint; flvplayback_internal var _streamWidth:int; flvplayback_internal var _proxyType:String; flvplayback_internal var _ncUri:String; flvplayback_internal var _contentPath:String; flvplayback_internal var _smilMgr:SMILManager; flvplayback_internal var _streamHeight:int; flvplayback_internal var _isRTMP:Boolean; flvplayback_internal var _tryNC:Array; flvplayback_internal var _streams:Array; flvplayback_internal var _owner:VideoPlayer; flvplayback_internal var _portNumber:String; flvplayback_internal var _streamName:String; flvplayback_internal var _objectEncoding:uint; public var fallbackServerName:String; flvplayback_internal var _protocol:String; public static const VERSION:String = "2.1.0.19"; public static const SHORT_VERSION:String = "2.1"; public function NCManager(){ _fpadZone = NaN; _objectEncoding = ObjectEncoding.AMF0; _proxyType = "best"; _timeoutTimer = new Timer(DEFAULT_TIMEOUT); _timeoutTimer.addEventListener(TimerEvent.TIMER, this._onFMSConnectTimeOut); _tryNCTimer = new Timer(1500, 1); _tryNCTimer.addEventListener(TimerEvent.TIMER, this.nextConnect); initNCInfo(); initOtherInfo(); _nc = null; _ncConnected = false; } flvplayback_internal function initNCInfo():void{ _isRTMP = false; _serverName = null; _wrappedURL = null; _portNumber = null; _appName = null; } flvplayback_internal function cleanConns():void{ var _local1:uint; _tryNCTimer.reset(); if (_tryNC != null){ _local1 = 0; while (_local1 < _tryNC.length) { if (_tryNC[_local1] != null){ _tryNC[_local1].removeEventListener(NetStatusEvent.NET_STATUS, connectOnStatus); if (_tryNC[_local1].client.pending){ _tryNC[_local1].addEventListener(NetStatusEvent.NET_STATUS, disconnectOnStatus); } else { _tryNC[_local1].close(); }; }; _tryNC[_local1] = null; _local1++; }; _tryNC = null; }; } public function get streamWidth():int{ return (_streamWidth); } public function connectToURL(_arg1:String):Boolean{ var canReuse:Boolean; var name:String; var url = _arg1; initOtherInfo(); _contentPath = url; if ((((_contentPath == null)) || ((_contentPath == "")))){ throw (new VideoError(VideoError.INVALID_SOURCE)); }; var parseResults:ParseResults = parseURL(_contentPath); if ((((parseResults.streamName == null)) || ((parseResults.streamName == "")))){ throw (new VideoError(VideoError.INVALID_SOURCE, url)); }; if (parseResults.isRTMP){ canReuse = canReuseOldConnection(parseResults); _isRTMP = true; _protocol = parseResults.protocol; _streamName = parseResults.streamName; _serverName = parseResults.serverName; _wrappedURL = parseResults.wrappedURL; _portNumber = parseResults.portNumber; _appName = parseResults.appName; if ((((((((_appName == null)) || ((_appName == "")))) || ((_streamName == null)))) || ((_streamName == "")))){ throw (new VideoError(VideoError.INVALID_SOURCE, url)); }; _autoSenseBW = (_streamName.indexOf(",") >= 0); return (((canReuse) || (connectRTMP()))); //unresolved jump }; name = parseResults.streamName; if ((((((((name.indexOf("?") < 0)) && ((((name.length < 4)) || (!((name.slice(-4).toLowerCase() == ".txt"))))))) && ((((name.length < 4)) || (!((name.slice(-4).toLowerCase() == ".xml"))))))) && ((((name.length < 5)) || (!((name.slice(-5).toLowerCase() == ".smil"))))))){ canReuse = canReuseOldConnection(parseResults); _isRTMP = false; _streamName = name; return (((canReuse) || (connectHTTP()))); }; if (name.indexOf("/fms/fpad") >= 0){ try { return (connectFPAD(name)); } catch(err:Error) { }; }; _smilMgr = new SMILManager(this); return (_smilMgr.connectXML(name)); } public function get streamName():String{ return (_streamName); } flvplayback_internal function reconnectOnStatus(_arg1:NetStatusEvent):void{ if ((((_arg1.info.code == "NetConnection.Connect.Failed")) || ((_arg1.info.code == "NetConnection.Connect.Rejected")))){ _nc = null; _ncConnected = false; _owner.ncReconnected(); }; } public function get videoPlayer():VideoPlayer{ return (_owner); } flvplayback_internal function getStreamLengthResult(_arg1:Number):void{ if (_arg1 > 0){ _streamLength = _arg1; }; _owner.ncConnected(); } flvplayback_internal function canReuseOldConnection(_arg1:ParseResults):Boolean{ if ((((_nc == null)) || (!(_ncConnected)))){ return (false); }; if (!_arg1.isRTMP){ if (!_isRTMP){ return (true); }; _owner.close(); _nc = null; _ncConnected = false; initNCInfo(); return (false); }; if (_isRTMP){ if ((((((((((_arg1.serverName == _serverName)) && ((_arg1.appName == _appName)))) && ((_arg1.protocol == _protocol)))) && ((_arg1.portNumber == _portNumber)))) && ((_arg1.wrappedURL == _wrappedURL)))){ return (true); }; _owner.close(); _nc = null; _ncConnected = false; }; initNCInfo(); return (false); } public function helperDone(_arg1:Object, _arg2:Boolean):void{ var _local3:ParseResults; var _local4:String; var _local7:Number; if (!_arg2){ _nc = null; _ncConnected = false; _owner.ncConnected(); _smilMgr = null; _fpadMgr = null; return; }; var _local5:Boolean; if (_arg1 == _fpadMgr){ _local4 = _fpadMgr.rtmpURL; _fpadMgr = null; _local3 = parseURL(_local4); _isRTMP = _local3.isRTMP; _protocol = _local3.protocol; _serverName = _local3.serverName; _portNumber = _local3.portNumber; _wrappedURL = _local3.wrappedURL; _appName = _local3.appName; _streamName = _local3.streamName; _local7 = _fpadZone; _fpadZone = NaN; connectRTMP(); _fpadZone = _local7; return; }; if (_arg1 != _smilMgr){ return; }; _streamWidth = _smilMgr.width; _streamHeight = _smilMgr.height; _local4 = _smilMgr.baseURLAttr[0]; if (((!((_local4 == null))) && (!((_local4 == ""))))){ if (_local4.charAt((_local4.length - 1)) != "/"){ _local4 = (_local4 + "/"); }; _local3 = parseURL(_local4); _isRTMP = _local3.isRTMP; _local5 = true; _streamName = _local3.streamName; if (_isRTMP){ _protocol = _local3.protocol; _serverName = _local3.serverName; _portNumber = _local3.portNumber; _wrappedURL = _local3.wrappedURL; _appName = _local3.appName; if ((((_appName == null)) || ((_appName == "")))){ _smilMgr = null; throw (new VideoError(VideoError.INVALID_XML, ("Base RTMP URL must include application name: " + _local4))); }; if (_smilMgr.baseURLAttr.length > 1){ _local3 = parseURL(_smilMgr.baseURLAttr[1]); if (_local3.serverName != null){ fallbackServerName = _local3.serverName; }; }; }; }; _streams = _smilMgr.videoTags; _smilMgr = null; var _local6:uint; while (_local6 < _streams.length) { _local4 = _streams[_local6].src; _local3 = parseURL(_local4); if (!_local5){ _isRTMP = _local3.isRTMP; _local5 = true; if (_isRTMP){ _protocol = _local3.protocol; if (_streams.length > 1){ throw (new VideoError(VideoError.INVALID_XML, "Cannot switch between multiple absolute RTMP URLs, must use meta tag base attribute.")); }; _serverName = _local3.serverName; _portNumber = _local3.portNumber; _wrappedURL = _local3.wrappedURL; _appName = _local3.appName; if ((((_appName == null)) || ((_appName == "")))){ throw (new VideoError(VideoError.INVALID_XML, ("Base RTMP URL must include application name: " + _local4))); }; } else { if ((((_local3.streamName.indexOf("/fms/fpad") >= 0)) && ((_streams.length > 1)))){ throw (new VideoError(VideoError.INVALID_XML, "Cannot switch between multiple absolute fpad URLs, must use meta tag base attribute.")); }; }; } else { if (((((((!((_streamName == null))) && (!((_streamName == ""))))) && (!(_local3.isRelative)))) && ((_streams.length > 1)))){ throw (new VideoError(VideoError.INVALID_XML, "When using meta tag base attribute, cannot use absolute URLs for video or ref tag src attributes.")); }; }; _streams[_local6].parseResults = _local3; _local6++; }; _autoSenseBW = (_streams.length > 1); if (!_autoSenseBW){ if (_streamName != null){ _streamName = (_streamName + _streams[0].parseResults.streamName); } else { _streamName = _streams[0].parseResults.streamName; }; if (((_isRTMP) && ((_streamName.substr(-4).toLowerCase() == ".flv")))){ _streamName = _streamName.substr(0, (_streamName.length - 4)); }; _streamLength = _streams[0].dur; }; if (_isRTMP){ connectRTMP(); } else { if (((!((_streamName == null))) && ((_streamName.indexOf("/fms/fpad") >= 0)))){ connectFPAD(_streamName); } else { if (_autoSenseBW){ bitrateMatch(); }; connectHTTP(); _owner.ncConnected(); }; }; } public function getProperty(_arg1:String){ switch (_arg1){ case "fallbackServerName": return (fallbackServerName); case "fpadZone": return (_fpadZone); case "objectEncoding": return (_objectEncoding); case "proxyType": return (_proxyType); default: throw (new VideoError(VideoError.UNSUPPORTED_PROPERTY, _arg1)); }; } flvplayback_internal function connectRTMP():Boolean{ _timeoutTimer.stop(); _timeoutTimer.start(); _tryNC = new Array(); var _local1:int = ((((_protocol == "rtmp:/")) || ((_protocol == "rtmpe:/")))) ? 2 : 1; var _local2:uint; while (_local2 < _local1) { _tryNC[_local2] = new NetConnection(); _tryNC[_local2].objectEncoding = _objectEncoding; _tryNC[_local2].proxyType = _proxyType; if (!isNaN(_fpadZone)){ _tryNC[_local2].fpadZone = _fpadZone; }; _tryNC[_local2].client = new ConnectClient(this, _tryNC[_local2], _local2); _tryNC[_local2].addEventListener(NetStatusEvent.NET_STATUS, connectOnStatus); _local2++; }; nextConnect(); return (false); } public function reconnect():void{ if (!_isRTMP){ throw (new Error("Cannot call reconnect on an http connection")); }; _nc.client = new ReconnectClient(this); _nc.addEventListener(NetStatusEvent.NET_STATUS, reconnectOnStatus); _nc.connect(_ncUri, false); } public function get netConnection():NetConnection{ return (_nc); } public function get bitrate():Number{ return (_bitrate); } public function setProperty(_arg1:String, _arg2):void{ switch (_arg1){ case "fallbackServerName": fallbackServerName = String(_arg2); break; case "fpadZone": _fpadZone = Number(_arg2); break; case "objectEncoding": _objectEncoding = uint(_arg2); break; case "proxyType": _proxyType = String(_arg2); break; default: throw (new VideoError(VideoError.UNSUPPORTED_PROPERTY, _arg1)); }; } public function get timeout():uint{ return (_timeoutTimer.delay); } flvplayback_internal function connectHTTP():Boolean{ _nc = new NetConnection(); _nc.connect(null); _ncConnected = true; return (true); } public function set videoPlayer(_arg1:VideoPlayer):void{ _owner = _arg1; } flvplayback_internal function bitrateMatch():void{ var _local1:Number = _bitrate; if (isNaN(_local1)){ _local1 = 0; }; var _local2:uint = _streams.length; var _local3:uint; while (_local3 < _streams.length) { if (((isNaN(_streams[_local3].bitrate)) || ((_local1 >= _streams[_local3].bitrate)))){ _local2 = _local3; break; }; _local3++; }; if (_local2 == _streams.length){ throw (new VideoError(VideoError.NO_BITRATE_MATCH)); }; if (_streamName != null){ _streamName = (_streamName + _streams[_local2].src); } else { _streamName = _streams[_local2].src; }; if (((_isRTMP) && ((_streamName.substr(-4).toLowerCase() == ".flv")))){ _streamName = _streamName.substr(0, (_streamName.length - 4)); }; _streamLength = _streams[_local2].dur; } flvplayback_internal function disconnectOnStatus(_arg1:NetStatusEvent):void{ if (_arg1.info.code == "NetConnection.Connect.Success"){ _arg1.target.removeEventListener(NetStatusEvent.NET_STATUS, disconnectOnStatus); _arg1.target.close(); }; } flvplayback_internal function nextConnect(_arg1:TimerEvent=null):void{ var _local2:String; var _local3:String; if (_connTypeCounter == 0){ _local2 = _protocol; _local3 = _portNumber; } else { _local3 = null; if (_protocol == "rtmp:/"){ _local2 = "rtmpt:/"; } else { if (_protocol == "rtmpe:/"){ _local2 = "rtmpte:/"; } else { _tryNC.pop(); return; }; }; }; var _local4:String = (((_local2 + ((_serverName)==null) ? "" : ((("/" + _serverName) + ((_local3)==null) ? "" : (":" + _local3)) + "/")) + ((_wrappedURL)==null) ? "" : (_wrappedURL + "/")) + _appName); _tryNC[_connTypeCounter].client.pending = true; _tryNC[_connTypeCounter].connect(_local4, _autoSenseBW); if (_connTypeCounter < (_tryNC.length - 1)){ _connTypeCounter++; _tryNCTimer.reset(); _tryNCTimer.start(); }; } flvplayback_internal function connectFPAD(_arg1:String):Boolean{ var _local2:Object = /^(.+)(\?|\&)(uri=)([^&]+)(\&.*)?$/.exec(_arg1); if (_local2 == null){ throw (new VideoError(VideoError.INVALID_SOURCE, ("fpad url must include uri parameter: " + _arg1))); }; var _local3:String = (_local2[1] + _local2[2]); var _local4:String = _local2[4]; var _local5:String = ((_local2[5])==undefined) ? "" : _local2[5]; var _local6:ParseResults = parseURL(_local4); if (!_local6.isRTMP){ throw (new VideoError(VideoError.INVALID_SOURCE, ("fpad url uri parameter must be rtmp url: " + _arg1))); }; _fpadMgr = new FPADManager(this); return (_fpadMgr.connectXML(_local3, _local4, _local5, _local6)); } public function get isRTMP():Boolean{ return (_isRTMP); } public function get streamLength():Number{ return (_streamLength); } public function connectAgain():Boolean{ var _local1:int = _appName.indexOf("/"); if (_local1 < 0){ _local1 = _streamName.indexOf("/"); if (_local1 >= 0){ _appName = (_appName + "/"); _appName = (_appName + _streamName.slice(0, _local1)); _streamName = _streamName.slice((_local1 + 1)); }; return (false); }; var _local2:String = _appName.slice((_local1 + 1)); _local2 = (_local2 + "/"); _local2 = (_local2 + _streamName); _streamName = _local2; _appName = _appName.slice(0, _local1); close(); _payload = 0; _connTypeCounter = 0; cleanConns(); connectRTMP(); return (true); } flvplayback_internal function parseURL(_arg1:String):ParseResults{ var _local5:int; var _local6:int; var _local7:String; var _local8:ParseResults; var _local2:ParseResults = new ParseResults(); var _local3:int; var _local4:int = _arg1.indexOf(":/", _local3); if (_local4 >= 0){ _local4 = (_local4 + 2); _local2.protocol = _arg1.slice(_local3, _local4).toLowerCase(); _local2.isRelative = false; } else { _local2.isRelative = true; }; if (((!((_local2.protocol == null))) && ((((((((((_local2.protocol == "rtmp:/")) || ((_local2.protocol == "rtmpt:/")))) || ((_local2.protocol == "rtmps:/")))) || ((_local2.protocol == "rtmpe:/")))) || ((_local2.protocol == "rtmpte:/")))))){ _local2.isRTMP = true; _local3 = _local4; if (_arg1.charAt(_local3) == "/"){ _local3++; _local5 = _arg1.indexOf(":", _local3); _local6 = _arg1.indexOf("/", _local3); if (_local6 < 0){ if (_local5 < 0){ _local2.serverName = _arg1.slice(_local3); } else { _local4 = _local5; _local2.portNumber = _arg1.slice(_local3, _local4); _local3 = (_local4 + 1); _local2.serverName = _arg1.slice(_local3); }; return (_local2); }; if ((((_local5 >= 0)) && ((_local5 < _local6)))){ _local4 = _local5; _local2.serverName = _arg1.slice(_local3, _local4); _local3 = (_local4 + 1); _local4 = _local6; _local2.portNumber = _arg1.slice(_local3, _local4); } else { _local4 = _local6; _local2.serverName = _arg1.slice(_local3, _local4); }; _local3 = (_local4 + 1); }; if (_arg1.charAt(_local3) == "?"){ _local7 = _arg1.slice((_local3 + 1)); _local8 = parseURL(_local7); if ((((_local8.protocol == null)) || (!(_local8.isRTMP)))){ throw (new VideoError(VideoError.INVALID_SOURCE, _arg1)); }; _local2.wrappedURL = "?"; _local2.wrappedURL = (_local2.wrappedURL + _local8.protocol); if (_local8.serverName != null){ _local2.wrappedURL = (_local2.wrappedURL + "/"); _local2.wrappedURL = (_local2.wrappedURL + _local8.serverName); }; if (_local8.portNumber != null){ _local2.wrappedURL = (_local2.wrappedURL + (":" + _local8.portNumber)); }; if (_local8.wrappedURL != null){ _local2.wrappedURL = (_local2.wrappedURL + "/"); _local2.wrappedURL = (_local2.wrappedURL + _local8.wrappedURL); }; _local2.appName = _local8.appName; _local2.streamName = _local8.streamName; return (_local2); }; _local4 = _arg1.indexOf("/", _local3); if (_local4 < 0){ _local2.appName = _arg1.slice(_local3); return (_local2); }; _local2.appName = _arg1.slice(_local3, _local4); _local3 = (_local4 + 1); _local4 = _arg1.indexOf("/", _local3); if (_local4 < 0){ _local2.streamName = _arg1.slice(_local3); if (_local2.streamName.slice(-4).toLowerCase() == ".flv"){ _local2.streamName = _local2.streamName.slice(0, -4); }; return (_local2); }; _local2.appName = (_local2.appName + "/"); _local2.appName = (_local2.appName + _arg1.slice(_local3, _local4)); _local3 = (_local4 + 1); _local2.streamName = _arg1.slice(_local3); if (_local2.streamName.slice(-4).toLowerCase() == ".flv"){ _local2.streamName = _local2.streamName.slice(0, -4); }; } else { _local2.isRTMP = false; _local2.streamName = _arg1; }; return (_local2); } flvplayback_internal function initOtherInfo():void{ _contentPath = null; _streamName = null; _streamWidth = -1; _streamHeight = -1; _streamLength = NaN; _streams = null; _autoSenseBW = false; _payload = 0; _connTypeCounter = 0; cleanConns(); } public function set timeout(_arg1:uint):void{ _timeoutTimer.delay = _arg1; } flvplayback_internal function _onFMSConnectTimeOut(_arg1:TimerEvent=null):void{ cleanConns(); _nc = null; _ncConnected = false; if (!connectAgain()){ _owner.ncConnected(); }; } public function get streamHeight():int{ return (_streamHeight); } flvplayback_internal function connectOnStatus(_arg1:NetStatusEvent):void{ var _local2:ParseResults; _arg1.target.client.pending = false; if (_arg1.info.code == "NetConnection.Connect.Success"){ _nc = _tryNC[_arg1.target.client.connIndex]; cleanConns(); } else { if ((((((_arg1.info.code == "NetConnection.Connect.Rejected")) && (!((_arg1.info.ex == null))))) && ((_arg1.info.ex.code == 302)))){ _connTypeCounter = 0; cleanConns(); _local2 = parseURL(_arg1.info.ex.redirect); if (_local2.isRTMP){ _protocol = _local2.protocol; _serverName = _local2.serverName; _wrappedURL = _local2.wrappedURL; _portNumber = _local2.portNumber; _appName = _local2.appName; if (_local2.streamName != null){ _appName = (_appName + ("/" + _local2.streamName)); }; connectRTMP(); } else { tryFallBack(); }; } else { if ((((((_arg1.info.code == "NetConnection.Connect.Failed")) || ((_arg1.info.code == "NetConnection.Connect.Rejected")))) && ((_arg1.target.client.connIndex == (_tryNC.length - 1))))){ if (!connectAgain()){ tryFallBack(); }; }; }; }; } flvplayback_internal function onReconnected():void{ _ncConnected = true; _owner.ncReconnected(); } flvplayback_internal function tryFallBack():void{ if ((((_serverName == fallbackServerName)) || ((fallbackServerName == null)))){ _nc = null; _ncConnected = false; _owner.ncConnected(); } else { _connTypeCounter = 0; cleanConns(); _serverName = fallbackServerName; connectRTMP(); }; } public function set bitrate(_arg1:Number):void{ if (!_isRTMP){ _bitrate = _arg1; }; } flvplayback_internal function onConnected(_arg1:NetConnection, _arg2:Number):void{ var _local3:Array; var _local4:uint; var _local5:String; _timeoutTimer.stop(); _arg1.removeEventListener(NetStatusEvent.NET_STATUS, connectOnStatus); _nc = _arg1; _ncUri = _nc.uri; _ncConnected = true; if (_autoSenseBW){ _bitrate = (_arg2 * 0x0400); if (_streams != null){ bitrateMatch(); } else { _local3 = _streamName.split(","); _local4 = 0; while (_local4 < _local3.length) { _local5 = stripFrontAndBackWhiteSpace(_local3[_local4]); if ((_local4 + 1) < _local3.length){ if (_arg2 <= Number(_local3[(_local4 + 1)])){ _streamName = _local5; break; }; } else { _streamName = _local5; break; }; _local4 = (_local4 + 2); }; if (_streamName.slice(-4).toLowerCase() == ".flv"){ _streamName = _streamName.slice(0, -4); }; }; }; if (((!(_owner.isLive)) && (isNaN(_streamLength)))){ _nc.call("getStreamLength", new Responder(getStreamLengthResult), _streamName); } else { _owner.ncConnected(); }; } public function close():void{ if (_nc){ _nc.close(); _ncConnected = false; }; } flvplayback_internal static function stripFrontAndBackWhiteSpace(_arg1:String):String{ var _local2:uint; var _local3:uint = _arg1.length; var _local4:int; var _local5:int = _local3; _local2 = 0; for (;_local2 < _local3;_local2++) { switch (_arg1.charCodeAt(_local2)){ case 9: case 10: case 13: case 32: continue; }; _local4 = _local2; break; }; _local2 = _local3; for (;_local2 >= 0;_local2--) { switch (_arg1.charCodeAt(_local2)){ case 9: case 10: case 13: case 32: continue; }; _local5 = (_local2 + 1); break; }; if (_local5 <= _local4){ return (""); }; return (_arg1.slice(_local4, _local5)); } } }//package fl.videoSection 42//ParseResults (fl.video.ParseResults) package fl.video { public class ParseResults { public var portNumber:String; public var streamName:String; public var appName:String; public var serverName:String; public var isRTMP:Boolean; public var wrappedURL:String; public var isRelative:Boolean; public var protocol:String; } }//package fl.videoSection 43//QueuedCommand (fl.video.QueuedCommand) package fl.video { public class QueuedCommand { public var isLive:Boolean; public var type:uint; public var time:Number; public var url:String; public static const LOAD:uint = 1; public static const STOP:uint = 3; public static const PLAY_WHEN_ENOUGH:uint = 5; public static const PLAY:uint = 0; public static const PAUSE:uint = 2; public static const SEEK:uint = 4; public function QueuedCommand(_arg1:uint, _arg2:String, _arg3:Boolean, _arg4:Number){ this.type = _arg1; this.url = _arg2; this.isLive = _arg3; this.time = _arg4; } } }//package fl.videoSection 44//ReconnectClient (fl.video.ReconnectClient) package fl.video { public class ReconnectClient { public var owner:NCManager; public function ReconnectClient(_arg1:NCManager){ this.owner = _arg1; } public function close():void{ } public function onBWDone(... _args):void{ owner.onReconnected(); } } }//package fl.videoSection 45//SeekBarAccImpl (fl.video.SeekBarAccImpl) package fl.video { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.accessibility.*; public class SeekBarAccImpl extends AccessibilityImplementation { private var _timer:Timer; private var _vc:FLVPlayback; protected var master:Sprite; protected var role:uint; private var _cachedPercentage:Number; private static const ROLE_SYSTEM_INDICATOR:uint = 39; private static const ROLE_SLIDER:uint = 51; private static const STATE_SYSTEM_FOCUSABLE:uint = 0x100000; private static const EVENT_OBJECT_SELECTION:uint = 32774; private static const ROLE_SYSTEM_PUSHBUTTON:uint = 43; private static const STATE_SYSTEM_FOCUSED:uint = 4; private static const STATE_SYSTEM_SELECTABLE:uint = 0x200000; private static const EVENT_OBJECT_FOCUS:uint = 32773; private static const STATE_SYSTEM_SELECTED:uint = 2; private static const EVENT_OBJECT_VALUECHANGE:uint = 32782; private static const EVENT_OBJECT_LOCATIONCHANGE:uint = 32779; private static const STATE_SYSTEM_NORMAL:uint = 0; private static const STATE_SYSTEM_UNAVAILABLE:uint = 1; public function SeekBarAccImpl(_arg1:Sprite){ var n:int; var i:int; var sprite = _arg1; super(); stub = false; master = sprite; if (!master.accessibilityProperties){ master.accessibilityProperties = new AccessibilityProperties(); }; master.accessibilityProperties.forceSimple = true; var events:Array = eventsToHandle; if (events){ n = events.length; i = 0; while (i < n) { master.addEventListener(events[i], eventHandler); i = (i + 1); }; }; master.addEventListener(FocusEvent.FOCUS_IN, focusInHandler); try { _vc = Object(master).uiMgr._vc; _vc.addEventListener(VideoEvent.PLAYHEAD_UPDATE, eventHandler); } catch(e:Error) { }; role = SeekBarAccImpl.ROLE_SLIDER; } protected function getName(_arg1:uint):String{ var _local2 = ""; switch (_arg1){ case 1: _local2 = "Page Left"; break; case 2: _local2 = "Position"; break; case 3: _local2 = "Page Right"; break; case 0: _local2 = ""; break; }; return (_local2); } override public function get_accName(_arg1:uint):String{ var _local2 = ""; if ((((((((_arg1 == 0)) && (master.accessibilityProperties))) && (master.accessibilityProperties.name))) && (!((master.accessibilityProperties.name == ""))))){ _local2 = (_local2 + (master.accessibilityProperties.name + " ")); }; _local2 = (_local2 + (getName(_arg1) + getStatusName())); return ((((!((_local2 == null))) && (!((_local2 == ""))))) ? _local2 : null); } private function secondsToTime(_arg1:Number):String{ var _local2:String; var _local3:String; var _local4:String; var _local5:int; var _local6:int; var _local7:Number; _local5 = ((_arg1)>=3600) ? (_arg1 / 3600) : 0; _local6 = ((_arg1)>=60) ? ((_arg1 / 60) - (_local5 * 60)) : 0; _local7 = (_arg1 - ((_local5 * 3600) + (_local6 * 60))); _local2 = String(_local5); _local3 = ((((String(_local6).length == 1)) && ((_local5 > 0)))) ? ("0" + String(_local6)) : String(_local6); _local4 = ((String(Math.floor(_local7)).length)==1) ? ("0" + String(_local7)) : String(_local7); var _local8:String = ((_local3 + ":") + _local4); if (_local5 > 0){ _local8 = ((((_local2 + ":") + _local3) + ":") + _local4); }; return (_local8); } override public function accDoDefaultAction(_arg1:uint):void{ var nearestCuePoint:Object; var nextCuePoint:Object; var childID = _arg1; var percent:Number = _vc.playheadPercentage; nearestCuePoint = _vc.findNearestCuePoint(_vc.playheadTime); if (childID == 1){ percent = (percent - (_vc.seekBarScrubTolerance * 2)); _vc.playheadPercentage = Math.max(percent, 0); } else { if (childID == 3){ if (_vc.playheadPercentage >= 99){ return; }; if (((!((nearestCuePoint == null))) && ((nearestCuePoint.index < ((nearestCuePoint.array as Array).length - 1))))){ try { nextCuePoint = _vc.findCuePoint(nearestCuePoint.array[(nearestCuePoint.index + 1)]); if (((nextCuePoint) && (_vc.isFLVCuePointEnabled(nextCuePoint)))){ if (isNaN(Number(_vc.metadata.videocodecid))){ _vc.playheadPercentage = Math.max(((nextCuePoint.time / _vc.totalTime) * 100), Math.min(99, (_vc.playheadPercentage + (_vc.seekBarScrubTolerance * 2)))); } else { _vc.playheadTime = nextCuePoint.time; }; }; } catch(err:Error) { }; }; }; }; } protected function eventHandler(_arg1:Event):void{ var _local2:SeekBarAccImpl; if (Accessibility.active){ switch (_arg1.type){ case VideoEvent.PLAYHEAD_UPDATE: _cachedPercentage = _vc.playheadPercentage; _local2 = this; if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_SELECTION); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; if (!_timer){ _timer = new Timer(10); _timer.removeEventListener(TimerEvent.TIMER, sendAccessibilityEvent); _timer.addEventListener(TimerEvent.TIMER, sendAccessibilityEvent); _timer.start(); }; break; }; }; } private function sendAccessibilityEvent(_arg1:TimerEvent):void{ if (_cachedPercentage != _vc.playheadPercentage){ _arg1.target.stop(); _arg1.target.removeEventListener(TimerEvent.TIMER, sendAccessibilityEvent); _timer = undefined; if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_SELECTION); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; }; } override public function accLocation(_arg1:uint){ var _local2:Object = master; var _local3:UIManager = (_vc.uiMgr as UIManager); var _local4:DisplayObject = (_local3.controls[UIManager.SEEK_BAR] as DisplayObject); var _local5:Dictionary = (UIManager(_local3).ctrlDataDict as Dictionary); var _local6:ControlData = _local5[_local4]; switch (_arg1){ case 0: if (_local6.hit_mc){ _local2 = _local6.hit_mc; }; break; case 1: case 3: if (_local6.progress_mc){ _local2 = _local6.progress_mc; }; break; default: break; }; return (_local2); } override public function get_accState(_arg1:uint):uint{ var _local2:uint = getState(_arg1); return (_local2); } private function getStatusName():String{ return (""); } protected function getState(_arg1:uint):uint{ var _local2:uint = STATE_SYSTEM_NORMAL; if (_arg1 == 0){ if (((!(master.mouseEnabled)) || (!(master.tabEnabled)))){ _local2 = (_local2 | STATE_SYSTEM_UNAVAILABLE); } else { _local2 = (_local2 | STATE_SYSTEM_FOCUSABLE); }; if (Sprite(master).stage.focus == master){ _local2 = (_local2 | STATE_SYSTEM_FOCUSED); }; }; return (_local2); } override public function get_accDefaultAction(_arg1:uint):String{ if ((((_arg1 == 1)) || ((_arg1 == 3)))){ return ("Press"); }; return (null); } override public function getChildIDArray():Array{ var _local1:Array = []; var _local2:uint; while (_local2 < 3) { _local1[_local2] = (_local2 + 1); _local2++; }; return (_local1); } private function focusInHandler(_arg1:Event):void{ if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_FOCUS); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; } override public function get_accRole(_arg1:uint):uint{ if (_arg1 == 0){ return (role); }; if (_arg1 == 2){ return (ROLE_SYSTEM_INDICATOR); }; return (ROLE_SYSTEM_PUSHBUTTON); } override public function get_accValue(_arg1:uint):String{ if (_arg1 == 0){ return ((Math.round(_vc.playheadPercentage).toString() + "%")); }; return (null); } protected function get eventsToHandle():Array{ return ([]); } public static function createAccessibilityImplementation(_arg1:Sprite):void{ _arg1.accessibilityImplementation = new SeekBarAccImpl(_arg1); } public static function enableAccessibility():void{ } } }//package fl.videoSection 46//SkinErrorEvent (fl.video.SkinErrorEvent) package fl.video { import flash.events.*; public class SkinErrorEvent extends ErrorEvent { public static const SKIN_ERROR:String = "skinError"; public function SkinErrorEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=""){ super(_arg1, _arg2, _arg3, _arg4); } override public function clone():Event{ return (new SkinErrorEvent(type, bubbles, cancelable, text)); } } }//package fl.videoSection 47//SMILManager (fl.video.SMILManager) package fl.video { import flash.events.*; import flash.net.*; public class SMILManager { flvplayback_internal var width:int; flvplayback_internal var xmlLoader:URLLoader; flvplayback_internal var xml:XML; flvplayback_internal var height:int; private var _url:String; flvplayback_internal var videoTags:Array; flvplayback_internal var baseURLAttr:Array; private var _owner:INCManager; public static const VERSION:String = "2.1.0.19"; public static const SHORT_VERSION:String = "2.1"; public function SMILManager(_arg1:INCManager){ _owner = _arg1; width = -1; height = -1; } flvplayback_internal function parseSwitch(_arg1:XML):void{ var _local2:String; var _local3:XML; for (_local2 in _arg1.*) { _local3 = _arg1.*[_local2]; if (_local3.nodeKind() != "element"){ } else { switch (_local3.localName()){ case "video": case "ref": videoTags.push(parseVideo(_local3)); break; default: break; }; }; }; } flvplayback_internal function parseVideo(_arg1:XML):Object{ var _local2:Object = new Object(); if (_arg1.@src.length() > 0){ _local2.src = _arg1.@src.toString(); }; if (_arg1.@["system-bitrate"].length() > 0){ _local2.bitrate = int(_arg1.@["system-bitrate"].toString()); }; if (_arg1.@dur.length() > 0){ _local2.dur = parseTime(_arg1.@dur.toString()); }; return (_local2); } flvplayback_internal function connectXML(_arg1:String):Boolean{ _url = fixURL(_arg1); xmlLoader = new URLLoader(); xmlLoader.addEventListener(Event.COMPLETE, xmlLoadEventHandler); xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, xmlLoadEventHandler); xmlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, xmlLoadEventHandler); xmlLoader.load(new URLRequest(_url)); return (false); } flvplayback_internal function fixURL(_arg1:String):String{ var _local2:String; if (/^(http:|https:)/i.test(_arg1)){ _local2 = ((_arg1.indexOf("?"))>=0) ? "&" : "?"; return ((((_arg1 + _local2) + "FLVPlaybackVersion=") + SHORT_VERSION)); }; return (_arg1); } flvplayback_internal function xmlLoadEventHandler(_arg1:Event):void{ var e = _arg1; try { if (e.type != Event.COMPLETE){ _owner.helperDone(this, false); } else { baseURLAttr = new Array(); videoTags = new Array(); xml = new XML(xmlLoader.data); if ((((xml == null)) || ((xml.localName() == null)))){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" No root node found; if url is for an flv it must have .flv extension and take no parameters"))); } else { if (xml.localName() != "smil"){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Root node not smil"))); }; }; checkForIllegalNodes(xml, "element", ["head", "body"]); if (xml.head.length() > 0){ parseHead(xml.head[0]); }; if (xml.body.length() < 1){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Tag body is required."))); } else { parseBody(xml.body[0]); }; _owner.helperDone(this, true); }; } catch(err:Error) { _owner.helperDone(this, false); throw (err); } finally { xmlLoader.removeEventListener(Event.COMPLETE, xmlLoadEventHandler); xmlLoader.removeEventListener(IOErrorEvent.IO_ERROR, xmlLoadEventHandler); xmlLoader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, xmlLoadEventHandler); xmlLoader = null; }; } flvplayback_internal function checkForIllegalNodes(_arg1:XML, _arg2:String, _arg3:Array):void{ var _local4:String; var _local5:Boolean; var _local6:XML; var _local7:String; var _local8:String; for (_local4 in _arg1.*) { _local5 = false; _local6 = _arg1.*[_local4]; if (_local6.nodeKind() != _arg2){ } else { _local7 = _local6.localName(); for (_local8 in _arg3) { if (_arg3[_local8] == _local7){ _local5 = true; break; }; }; if (!_local5){ throw (new VideoError(VideoError.INVALID_XML, (((((((("URL: \"" + _url) + "\" ") + _arg2) + " ") + _local7) + " not supported in ") + _arg1.localName()) + " tag."))); }; }; }; } flvplayback_internal function parseHead(_arg1:XML):void{ checkForIllegalNodes(_arg1, "element", ["meta", "layout"]); if (_arg1.meta.length() > 0){ checkForIllegalNodes(_arg1.meta[0], "element", []); checkForIllegalNodes(_arg1.meta[0], "attribute", ["base"]); if (_arg1.meta.@base.length() > 0){ baseURLAttr.push(_arg1.meta.@base.toString()); }; }; if (_arg1.layout.length() > 0){ parseLayout(_arg1.layout[0]); }; } flvplayback_internal function parseBody(_arg1:XML):void{ var _local2:XML; var _local4:Object; if (((!((_arg1.*.length() == 1))) || (!((_arg1.*[0].nodeKind() == "element"))))){ throw (new VideoError(VideoError.INVALID_XML, (((("URL: \"" + _url) + "\" Tag ") + _arg1.localName()) + " is required to contain exactly one tag."))); }; _local2 = _arg1.*[0]; var _local3:String = _local2.localName(); switch (_local3){ case "switch": parseSwitch(_local2); break; case "video": case "ref": _local4 = parseVideo(_local2); videoTags.push(_local4); break; default: throw (new VideoError(VideoError.INVALID_XML, (((((("URL: \"" + _url) + "\" Tag ") + _local3) + " not supported in ") + _arg1.localName()) + " tag."))); }; if (videoTags.length < 1){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" At least one video of ref tag is required."))); }; } flvplayback_internal function parseTime(_arg1:String):Number{ var _local3:Number; var _local4:Number; var _local2:Object = /^((\d+):)?(\d+):((\d+)(.\d+)?)$/.exec(_arg1); if (_local2 == null){ _local3 = Number(_arg1); if (((isNaN(_local3)) || ((_local3 < 0)))){ throw (new VideoError(VideoError.INVALID_XML, ("Invalid dur value: " + _arg1))); }; return (_local3); //unresolved jump }; _local4 = 0; _local4 = (_local4 + ((uint(_local2[2]) * 60) * 60)); _local4 = (_local4 + (uint(_local2[3]) * 60)); _local4 = (_local4 + Number(_local2[4])); return (_local4); } flvplayback_internal function parseLayout(_arg1:XML):void{ var _local2:XML; var _local3:Number; var _local4:Number; checkForIllegalNodes(_arg1, "element", ["root-layout"]); if (_arg1["root-layout"].length() > 1){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Only one base attribute supported in meta tag."))); }; if (_arg1["root-layout"].length() > 0){ _local2 = _arg1["root-layout"][0]; if (_local2.@width.length() > 0){ _local3 = Number(_local2.@width[0]); }; if (_local2.@height.length() > 0){ _local4 = Number(_local2.@height[0]); }; if (((((((isNaN(_local3)) || ((_local3 < 0)))) || (isNaN(_local4)))) || ((_local4 < 0)))){ throw (new VideoError(VideoError.INVALID_XML, (((("URL: \"" + _url) + "\" Tag ") + _arg1.localName()) + " requires attributes width and height. Width and height must be numbers greater than or equal to 0."))); }; width = Math.round(_local3); height = Math.round(_local4); }; } } }//package fl.videoSection 48//SoundEvent (fl.video.SoundEvent) package fl.video { import flash.events.*; import flash.media.*; public class SoundEvent extends Event { private var _soundTransform:SoundTransform; public static const SOUND_UPDATE:String = "soundUpdate"; public function SoundEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:SoundTransform=null){ super(_arg1, _arg2, _arg3); _soundTransform = _arg4; } public function get soundTransform():SoundTransform{ return (_soundTransform); } override public function clone():Event{ return (new SoundEvent(type, bubbles, cancelable, soundTransform)); } } }//package fl.videoSection 49//UIManager (fl.video.UIManager) package fl.video { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.utils.*; import flash.system.*; import flash.accessibility.*; import flash.ui.*; public class UIManager { flvplayback_internal var cacheStageBGColor:uint; flvplayback_internal var _bufferingDelayTimer:Timer; public var ctrlDataDict:Dictionary; flvplayback_internal var _skinAutoHide:Boolean; flvplayback_internal var placeholderLeft:Number; flvplayback_internal var _playAfterScrub:Boolean; public var customClips:Array; flvplayback_internal var _skinFadeStartTime:int; flvplayback_internal var delayedControls:Array; flvplayback_internal var _lastScrubPos:Number; flvplayback_internal var endTabIndex:int; flvplayback_internal var _skinAutoHideLastMotionTime:int; flvplayback_internal var _volumeBarTimer:Timer; flvplayback_internal var cacheFLVPlaybackScaleMode:Array; flvplayback_internal var borderScale9Rects:Array; flvplayback_internal var _volumeBarScrubTolerance:Number; flvplayback_internal var fullScreenSourceRectMinAspectRatio:Number; flvplayback_internal var _skin:String; flvplayback_internal var fullScreenSourceRectMinHeight:uint; flvplayback_internal var _bufferingBarHides:Boolean; flvplayback_internal var videoRight:Number; flvplayback_internal var placeholderRight:Number; flvplayback_internal var cachedSoundLevel:Number; flvplayback_internal var videoBottom:Number; flvplayback_internal var border_mc:DisplayObject; flvplayback_internal var _skinFadingTimer:Timer; flvplayback_internal var borderAlpha:Number; flvplayback_internal var borderColorTransform:ColorTransform; flvplayback_internal var borderColor:uint; flvplayback_internal var __visible:Boolean; flvplayback_internal var cacheFLVPlaybackLocation:Rectangle; flvplayback_internal var cacheFLVPlaybackIndex:int; flvplayback_internal var _skinReady:Boolean; flvplayback_internal var hitTarget_mc:Sprite; flvplayback_internal var controls:Array; flvplayback_internal var cacheFLVPlaybackAlign:Array; flvplayback_internal var startTabIndex:int; flvplayback_internal var _skinAutoHideMouseX:Number; flvplayback_internal var _skinAutoHideMouseY:Number; flvplayback_internal var layout_mc:Sprite; flvplayback_internal var cacheSkinAutoHide:Boolean; flvplayback_internal var cacheStageScaleMode:String; flvplayback_internal var videoTop:Number; flvplayback_internal var _skinFadingMaxTime:int; flvplayback_internal var placeholderTop:Number; flvplayback_internal var focusRect:Boolean;// = true flvplayback_internal var _lastVolumePos:Number; flvplayback_internal var mouseCaptureCtrl:int; flvplayback_internal var _seekBarScrubTolerance:Number; flvplayback_internal var borderPrevRect:Rectangle; flvplayback_internal var skinTemplate:Sprite; flvplayback_internal var _progressPercent:Number; flvplayback_internal var videoLeft:Number; flvplayback_internal var _fullScreenVideoWidth:Number; flvplayback_internal var _isMuted:Boolean; flvplayback_internal var _skinAutoHideTimer:Timer; flvplayback_internal var _fullScreenBgColor:uint; flvplayback_internal var _vc:FLVPlayback; flvplayback_internal var _bufferingOn:Boolean; flvplayback_internal var _seekBarTimer:Timer; flvplayback_internal var _controlsEnabled:Boolean; flvplayback_internal var _fullScreen:Boolean; flvplayback_internal var placeholderBottom:Number; flvplayback_internal var fullScreenSourceRectMinWidth:uint; flvplayback_internal var _fullScreenTakeOver:Boolean; flvplayback_internal var skin_mc:Sprite; flvplayback_internal var _fullScreenAccel:Boolean; flvplayback_internal var _fullScreenVideoHeight:Number; flvplayback_internal var skinLoadDelayCount:uint; flvplayback_internal var _skinFadingIn:Boolean; flvplayback_internal var _skinAutoHideMotionTimeout:int; flvplayback_internal var borderCopy:Sprite; flvplayback_internal var accessibilityPropertyNames:Array; flvplayback_internal var cacheStageAlign:String; flvplayback_internal var cacheFLVPlaybackParent:DisplayObjectContainer; flvplayback_internal var skinLoader:Loader; flvplayback_internal var _skinScaleMaximum:Number; public static const VOLUME_BAR_HIT:int = 12; public static const MUTE_OFF_BUTTON:int = 10; public static const BACK_BUTTON:int = 5; public static const FORWARD_BUTTON:int = 6; public static const STOP_BUTTON:int = 2; public static const NUM_BUTTONS:int = 13; public static const NORMAL_STATE:uint = 0; public static const SEEK_BAR_HANDLE:int = 3; public static const PLAY_BUTTON:int = 1; public static const MUTE_BUTTON:int = 15; public static const DOWN_STATE:uint = 2; public static const SEEK_BAR_SCRUB_TOLERANCE_DEFAULT:Number = 5; public static const FULL_SCREEN_OFF_BUTTON:int = 8; flvplayback_internal static const SKIN_AUTO_HIDE_MOTION_TIMEOUT_DEFAULT:Number = 3000; public static const SEEK_BAR:int = 17; public static const VOLUME_BAR_SCRUB_TOLERANCE_DEFAULT:Number = 0; public static const FULL_SCREEN_ON_BUTTON:int = 7; public static const SHOW_CONTROLS_BUTTON:Number = 30; public static const FULL_SCREEN_BUTTON:int = 14; public static const BUFFERING_BAR:int = 16; public static const VERSION:String = "2.1.0.19"; public static const VOLUME_BAR_HANDLE:int = 11; public static const PAUSE_BUTTON:int = 0; flvplayback_internal static const SKIN_AUTO_HIDE_INTERVAL:Number = 200; public static const CAPTIONS_ON_BUTTON:Number = 28; public static const OVER_STATE:uint = 1; flvplayback_internal static const SKIN_FADING_INTERVAL:Number = 100; public static const VOLUME_BAR:int = 18; public static const CAPTIONS_OFF_BUTTON:Number = 29; public static const SHORT_VERSION:String = "2.1"; public static const SEEK_BAR_INTERVAL_DEFAULT:Number = 250; flvplayback_internal static const SKIN_FADING_MAX_TIME_DEFAULT:Number = 500; public static const SEEK_BAR_HIT:int = 4; public static const PLAY_PAUSE_BUTTON:int = 13; public static const BUFFERING_DELAY_INTERVAL_DEFAULT:Number = 1000; public static const MUTE_ON_BUTTON:int = 9; public static const HIDE_CONTROLS_BUTTON:Number = 31; public static const FULL_SCREEN_SOURCE_RECT_MIN_HEIGHT:uint = 240; public static const NUM_CONTROLS:int = 19; public static const VOLUME_BAR_INTERVAL_DEFAULT:Number = 250; public static const FULL_SCREEN_SOURCE_RECT_MIN_WIDTH:uint = 320; flvplayback_internal static var layoutNameToIndexMappings:Object = null; flvplayback_internal static var buttonSkinLinkageIDs:Array = ["upLinkageID", "overLinkageID", "downLinkageID"]; flvplayback_internal static var layoutNameArray:Array = ["pause_mc", "play_mc", "stop_mc", null, null, "back_mc", "forward_mc", null, null, null, null, null, null, "playpause_mc", "fullScreenToggle_mc", "volumeMute_mc", "bufferingBar_mc", "seekBar_mc", "volumeBar_mc", "seekBarHandle_mc", "seekBarHit_mc", "seekBarProgress_mc", "seekBarFullness_mc", "volumeBarHandle_mc", "volumeBarHit_mc", "volumeBarProgress_mc", "volumeBarFullness_mc", "progressFill_mc"]; flvplayback_internal static var skinClassPrefixes:Array = ["pauseButton", "playButton", "stopButton", null, null, "backButton", "forwardButton", "fullScreenButtonOn", "fullScreenButtonOff", "muteButtonOn", "muteButtonOff", null, null, null, null, null, "bufferingBar", "seekBar", "volumeBar"]; flvplayback_internal static var customComponentClassNames:Array = ["PauseButton", "PlayButton", "StopButton", null, null, "BackButton", "ForwardButton", null, null, null, null, null, null, "PlayPauseButton", "FullScreenButton", "MuteButton", "BufferingBar", "SeekBar", "VolumeBar"]; public function UIManager(_arg1:FLVPlayback){ var vc = _arg1; accessibilityPropertyNames = ["Pause", "Play", "Stop", "Seek Bar", null, "Back", "Forward", "Go Full Screen", "Exit Full Screen", "Volume Mute On", "Volume Mute Off", "Volume", null, null, null, null, "Buffering", null, null, null, null, null, null, null, null, null, null, null, "Captions Off", "Captions On", "Show Video Player Controls", "Hide Video Player Controls"]; super(); _vc = vc; _skin = null; _skinAutoHide = false; cacheSkinAutoHide = _skinAutoHide; _skinFadingMaxTime = SKIN_FADING_MAX_TIME_DEFAULT; _skinAutoHideMotionTimeout = SKIN_AUTO_HIDE_MOTION_TIMEOUT_DEFAULT; _skinReady = true; __visible = false; _bufferingBarHides = false; _controlsEnabled = true; _lastScrubPos = 0; _lastVolumePos = 0; cachedSoundLevel = _vc.volume; _isMuted = false; controls = new Array(); customClips = null; ctrlDataDict = new Dictionary(true); skin_mc = null; skinLoader = null; skinTemplate = null; layout_mc = null; border_mc = null; borderCopy = null; borderPrevRect = null; borderScale9Rects = null; borderAlpha = 0.85; borderColor = 4697035; borderColorTransform = new ColorTransform(0, 0, 0, 0, 71, 171, 203, (0xFF * borderAlpha)); _seekBarScrubTolerance = SEEK_BAR_SCRUB_TOLERANCE_DEFAULT; _volumeBarScrubTolerance = VOLUME_BAR_SCRUB_TOLERANCE_DEFAULT; _bufferingOn = false; mouseCaptureCtrl = -1; _seekBarTimer = new Timer(SEEK_BAR_INTERVAL_DEFAULT); _seekBarTimer.addEventListener(TimerEvent.TIMER, seekBarListener); _volumeBarTimer = new Timer(VOLUME_BAR_INTERVAL_DEFAULT); _volumeBarTimer.addEventListener(TimerEvent.TIMER, volumeBarListener); _bufferingDelayTimer = new Timer(BUFFERING_DELAY_INTERVAL_DEFAULT, 1); _bufferingDelayTimer.addEventListener(TimerEvent.TIMER, doBufferingDelay); _skinAutoHideTimer = new Timer(SKIN_AUTO_HIDE_INTERVAL); _skinAutoHideTimer.addEventListener(TimerEvent.TIMER, skinAutoHideHitTest); _skinFadingTimer = new Timer(SKIN_FADING_INTERVAL); _skinFadingTimer.addEventListener(TimerEvent.TIMER, skinFadeMore); _vc.addEventListener(MetadataEvent.METADATA_RECEIVED, handleIVPEvent); _vc.addEventListener(VideoEvent.PLAYHEAD_UPDATE, handleIVPEvent); _vc.addEventListener(VideoProgressEvent.PROGRESS, handleIVPEvent); _vc.addEventListener(VideoEvent.STATE_CHANGE, handleIVPEvent); _vc.addEventListener(VideoEvent.READY, handleIVPEvent); _vc.addEventListener(LayoutEvent.LAYOUT, handleLayoutEvent); _vc.addEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleLayoutEvent); _vc.addEventListener(SoundEvent.SOUND_UPDATE, handleSoundEvent); _vc.addEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.addEventListener(Event.REMOVED_FROM_STAGE, handleEvent); fullScreenSourceRectMinWidth = FULL_SCREEN_SOURCE_RECT_MIN_WIDTH; fullScreenSourceRectMinHeight = FULL_SCREEN_SOURCE_RECT_MIN_HEIGHT; fullScreenSourceRectMinAspectRatio = (FULL_SCREEN_SOURCE_RECT_MIN_WIDTH / FULL_SCREEN_SOURCE_RECT_MIN_HEIGHT); _fullScreen = false; _fullScreenTakeOver = true; _fullScreenBgColor = 0; _fullScreenAccel = false; if (_vc.stage != null){ _vc.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, handleMouseFocusChangeEvent); try { _fullScreen = (_vc.stage.displayState == StageDisplayState.FULL_SCREEN); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); } catch(se:SecurityError) { }; }; if (layoutNameToIndexMappings == null){ initLayoutNameToIndexMappings(); }; } public function get seekBarScrubTolerance():Number{ return (_seekBarScrubTolerance); } flvplayback_internal function removeButtonListeners(_arg1:Sprite):void{ if (_arg1 == null){ return; }; _arg1.removeEventListener(MouseEvent.ROLL_OVER, handleButtonEvent); _arg1.removeEventListener(MouseEvent.ROLL_OUT, handleButtonEvent); _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, handleButtonEvent); _arg1.removeEventListener(MouseEvent.CLICK, handleButtonEvent); _arg1.removeEventListener(Event.ENTER_FRAME, skinButtonControl); } public function set skinFadeTime(_arg1:int):void{ _skinFadingMaxTime = _arg1; } public function get skinFadeTime():int{ return (_skinFadingMaxTime); } flvplayback_internal function finishLoad(_arg1:Event):void{ var i:int; var cachedActivePlayerIndex:int; var state:String; var j:int; var e = _arg1; try { skinLoadDelayCount++; if (skinLoadDelayCount < 2){ return; } else { _vc.removeEventListener(Event.ENTER_FRAME, finishLoad); }; focusRect = isFocusRectActive(); i = 0; while (i < NUM_CONTROLS) { if (delayedControls[i] != undefined){ setControl(i, delayedControls[i]); }; i = (i + 1); }; if (_fullScreenTakeOver){ enterFullScreenTakeOver(); } else { exitFullScreenTakeOver(); }; layoutSkin(); setupSkinAutoHide(false); skin_mc.visible = __visible; _vc.addChild(skin_mc); _skinReady = true; _vc.skinLoaded(); cachedActivePlayerIndex = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; state = _vc.state; j = 0; while (j < NUM_CONTROLS) { if (controls[j] == undefined){ } else { setEnabledAndVisibleForState(j, state); if (j < NUM_BUTTONS){ skinButtonControl(controls[j]); }; }; j = (j + 1); }; _vc.activeVideoPlayerIndex = cachedActivePlayerIndex; } catch(err:Error) { _vc.skinError(err.message); removeSkin(); }; } flvplayback_internal function downloadSkin():void{ if (skinLoader == null){ skinLoader = new Loader(); skinLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, handleLoad); skinLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, handleLoadErrorEvent); skinLoader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, handleLoadErrorEvent); }; skinLoader.load(new URLRequest(_skin)); } flvplayback_internal function removeSkin():void{ var i:int; if (skinLoader != null){ try { skinLoader.close(); } catch(e1:Error) { }; skinLoader = null; }; if (skin_mc != null){ i = 0; while (i < NUM_CONTROLS) { if (controls[i] == undefined){ } else { if (i < NUM_BUTTONS){ removeButtonListeners(controls[i]); }; delete ctrlDataDict[controls[i]]; delete controls[i]; }; i = (i + 1); }; try { skin_mc.parent.removeChild(skin_mc); } catch(e2:Error) { }; skin_mc = null; }; skinTemplate = null; layout_mc = null; border_mc = null; borderCopy = null; borderPrevRect = null; borderScale9Rects = null; } flvplayback_internal function positionBar(_arg1:Sprite, _arg2:String, _arg3:Number):void{ var ctrl = _arg1; var type = _arg2; var percent = _arg3; try { if ((((ctrl["positionBar"] is Function)) && (ctrl["positionBar"](type, percent)))){ return; }; } catch(re2:ReferenceError) { }; var ctrlData:ControlData = ctrlDataDict[ctrl]; var bar:DisplayObject = ctrlData[(type + "_mc")]; if (bar == null){ return; }; var barData:ControlData = ctrlDataDict[bar]; if (bar.parent == ctrl){ if (barData.fill_mc == null){ bar.scaleX = ((barData.origScaleX * percent) / 100); } else { positionMaskedFill(bar, percent); }; } else { bar.x = (ctrl.x + barData.leftMargin); bar.y = (ctrl.y + barData.origY); if (barData.fill_mc == null){ bar.width = ((((ctrl.width - barData.leftMargin) - barData.rightMargin) * percent) / 100); } else { positionMaskedFill(bar, percent); }; }; } flvplayback_internal function setupButtonSkin(_arg1:int, _arg2:DisplayObject):Sprite{ var _local3:String = skinClassPrefixes[_arg1]; if (_local3 == null){ return (null); }; var _local4:Sprite = new Sprite(); var _local5:ControlData = new ControlData(this, _local4, null, _arg1); ctrlDataDict[_local4] = _local5; _local5.state_mc = new Array(); _local5.state_mc[NORMAL_STATE] = setupButtonSkinState(_local4, skinTemplate, (_local3 + "NormalState")); _local5.state_mc[NORMAL_STATE].visible = true; _local5.state_mc[OVER_STATE] = setupButtonSkinState(_local4, skinTemplate, (_local3 + "OverState"), _local5.state_mc[NORMAL_STATE]); _local5.state_mc[DOWN_STATE] = setupButtonSkinState(_local4, skinTemplate, (_local3 + "DownState"), _local5.state_mc[NORMAL_STATE]); _local5.disabled_mc = setupButtonSkinState(_local4, skinTemplate, (_local3 + "DisabledState"), _local5.state_mc[NORMAL_STATE]); if ((_arg2 is InteractiveObject)){ _local4.tabIndex = InteractiveObject(_arg2).tabIndex; }; return (_local4); } public function get skinReady():Boolean{ return (_skinReady); } public function get skinAutoHide():Boolean{ return (_skinAutoHide); } flvplayback_internal function dispatchMessage(_arg1:int):void{ var ctrl:Sprite; var ctrlData:ControlData; var handle:Sprite; var index = _arg1; if ((((index == SEEK_BAR_HANDLE)) || ((index == SEEK_BAR_HIT)))){ _vc._scrubStart(); }; var cachedActivePlayerIndex:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; switch (index){ case PAUSE_BUTTON: _vc.pause(); break; case PLAY_BUTTON: _vc.play(); break; case STOP_BUTTON: _vc.stop(); break; case SEEK_BAR_HIT: case SEEK_BAR_HANDLE: ctrl = controls[SEEK_BAR]; ctrlData = ctrlDataDict[ctrl]; calcPercentageFromHandle(ctrl); _lastScrubPos = ctrlData.percentage; if (index == SEEK_BAR_HIT){ handle = controls[SEEK_BAR_HANDLE]; handle.x = handle.parent.mouseX; handle.y = handle.parent.mouseY; }; _vc.removeEventListener(VideoEvent.PLAYHEAD_UPDATE, handleIVPEvent); if (((_vc.playing) || (_vc.buffering))){ _playAfterScrub = true; } else { if (_vc.state != VideoState.SEEKING){ _playAfterScrub = false; }; }; _seekBarTimer.start(); startHandleDrag(ctrl); _vc.pause(); break; case VOLUME_BAR_HIT: case VOLUME_BAR_HANDLE: ctrl = controls[VOLUME_BAR]; ctrlData = ctrlDataDict[ctrl]; calcPercentageFromHandle(ctrl); _lastVolumePos = ctrlData.percentage; if (index == VOLUME_BAR_HIT){ handle = controls[VOLUME_BAR_HANDLE]; handle.x = handle.parent.mouseX; handle.y = handle.parent.mouseY; }; _vc.removeEventListener(SoundEvent.SOUND_UPDATE, handleSoundEvent); _volumeBarTimer.start(); startHandleDrag(ctrl); break; case BACK_BUTTON: _vc.seekToPrevNavCuePoint(); break; case FORWARD_BUTTON: _vc.seekToNextNavCuePoint(); break; case MUTE_ON_BUTTON: if (!_isMuted){ _isMuted = true; cachedSoundLevel = _vc.volume; _vc.volume = 0; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; break; case MUTE_OFF_BUTTON: if (_isMuted){ _isMuted = false; _vc.volume = cachedSoundLevel; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; break; case FULL_SCREEN_ON_BUTTON: if (((!(_fullScreen)) && (!((_vc.stage == null))))){ enterFullScreenDisplayState(); setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); }; break; case FULL_SCREEN_OFF_BUTTON: if (((_fullScreen) && (!((_vc.stage == null))))){ try { _vc.stage.displayState = StageDisplayState.NORMAL; } catch(se:SecurityError) { }; setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); }; break; default: throw (new Error("Unknown ButtonControl")); }; _vc.activeVideoPlayerIndex = cachedActivePlayerIndex; } flvplayback_internal function handleFullScreenEvent(_arg1:FullScreenEvent):void{ _fullScreen = _arg1.fullScreen; setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); if (((_fullScreen) && (_fullScreenTakeOver))){ enterFullScreenTakeOver(); } else { if (!_fullScreen){ exitFullScreenTakeOver(); }; }; } flvplayback_internal function handleLayoutEvent(_arg1:LayoutEvent):void{ var _local2:int; if (((((((_fullScreen) && (_fullScreenTakeOver))) && (_fullScreenAccel))) && (!((_vc.stage == null))))){ if (((((((((!((_vc.registrationX == 0))) || (!((_vc.registrationY == 0))))) || (!((_vc.parent == _vc.stage))))) || (!((_vc.registrationWidth == _vc.stage.stageWidth))))) || (!((_vc.registrationHeight == _vc.stage.stageHeight))))){ _vc.stage.displayState = StageDisplayState.NORMAL; return; }; _local2 = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; if (_vc.align != VideoAlign.CENTER){ cacheFLVPlaybackAlign[_vc.visibleVideoPlayerIndex] = _vc.align; _vc.align = VideoAlign.CENTER; }; if (_vc.scaleMode != VideoScaleMode.MAINTAIN_ASPECT_RATIO){ cacheFLVPlaybackScaleMode[_vc.visibleVideoPlayerIndex] = _vc.scaleMode; _vc.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO; _vc.activeVideoPlayerIndex = _local2; return; }; _vc.activeVideoPlayerIndex = _local2; }; layoutSkin(); setupSkinAutoHide(false); } flvplayback_internal function seekBarListener(_arg1:TimerEvent):void{ var _local2:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; var _local3:Sprite = controls[SEEK_BAR]; if (_local3 == null){ return; }; var _local4:ControlData = ctrlDataDict[_local3]; calcPercentageFromHandle(_local3); var _local5:Number = _local4.percentage; if (_arg1 == null){ _seekBarTimer.stop(); if (_local5 != _lastScrubPos){ _vc.seekPercent(_local5); }; _vc.addEventListener(VideoEvent.PLAYHEAD_UPDATE, handleIVPEvent); if (_playAfterScrub){ _vc.play(); }; } else { if (_vc.getVideoPlayer(_vc.visibleVideoPlayerIndex).state == VideoState.SEEKING){ } else { if ((((((((_seekBarScrubTolerance <= 0)) || ((Math.abs((_local5 - _lastScrubPos)) > _seekBarScrubTolerance)))) || ((_local5 < _seekBarScrubTolerance)))) || ((_local5 > (100 - _seekBarScrubTolerance))))){ if (_local5 != _lastScrubPos){ _lastScrubPos = _local5; _vc.seekPercent(_local5); }; }; }; }; _vc.activeVideoPlayerIndex = _local2; } private function handleMouseFocusChangeEvent(_arg1:FocusEvent):void{ var ctrlData:ControlData; var focusCtrlData:ControlData; var ctrl:Sprite; var setFocusedControl:Function; var event = _arg1; try { ctrlData = ctrlDataDict[event.relatedObject]; } catch(error:ReferenceError) { }; if (ctrlData == null){ return; }; var index:int = ctrlData.index; var currentFocus:InteractiveObject = (event.target.stage.focus as InteractiveObject); var focusControl:InteractiveObject; switch (index){ case PLAY_BUTTON: focusControl = (controls[PAUSE_BUTTON] as InteractiveObject); break; case PAUSE_BUTTON: focusControl = (controls[PLAY_BUTTON] as InteractiveObject); break; case STOP_BUTTON: case BACK_BUTTON: case FORWARD_BUTTON: case SEEK_BAR_HANDLE: case VOLUME_BAR_HANDLE: focusControl = (controls[event.relatedObject] as InteractiveObject); break; case SEEK_BAR_HIT: focusControl = (controls[SEEK_BAR_HANDLE] as InteractiveObject); break; case VOLUME_BAR_HIT: focusControl = (controls[VOLUME_BAR_HANDLE] as InteractiveObject); break; case MUTE_ON_BUTTON: focusControl = (controls[MUTE_OFF_BUTTON] as InteractiveObject); break; case MUTE_OFF_BUTTON: focusControl = (controls[MUTE_ON_BUTTON] as InteractiveObject); break; case FULL_SCREEN_ON_BUTTON: focusControl = (controls[FULL_SCREEN_OFF_BUTTON] as InteractiveObject); break; case FULL_SCREEN_OFF_BUTTON: focusControl = (controls[FULL_SCREEN_ON_BUTTON] as InteractiveObject); break; }; if (focusControl != null){ try { focusCtrlData = ctrlDataDict[focusControl]; focusCtrlData.cachedFocusRect = focusControl.focusRect; } catch(error:ReferenceError) { }; focusControl.focusRect = false; if (focusControl.visible){ focusControl.stage.focus = focusControl; focusControl.focusRect = focusCtrlData.cachedFocusRect; } else { ctrl = (event.currentTarget as Sprite); setFocusedControl = function (_arg1:Event):void{ if (_arg1.target.visible){ _arg1.target.stage.focus = _arg1.target; _arg1.target.focusRect = focusCtrlData.cachedFocusRect; _arg1.target.removeEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; focusControl.addEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; } public function get seekBarInterval():Number{ return (_seekBarTimer.delay); } public function set skinAutoHide(_arg1:Boolean):void{ if (_arg1 == _skinAutoHide){ return; }; _skinAutoHide = _arg1; cacheSkinAutoHide = _arg1; setupSkinAutoHide(true); } flvplayback_internal function setCustomClip(_arg1:DisplayObject):void{ var scale9Grid:Rectangle; var diff:Number; var numBorderBitmaps:int; var i:int; var lastXDim:Number; var floorLastXDim:Number; var lastYDim:Number; var floorLastYDim:Number; var newRect:Rectangle; var dispObj = _arg1; var dCopy:DisplayObject = new (dispObj["constructor"]); skin_mc.addChild(dCopy); var ctrlData:ControlData = new ControlData(this, dCopy, null, -1); ctrlDataDict[dCopy] = ctrlData; ctrlData.avatar = dispObj; customClips.push(dCopy); dCopy.accessibilityProperties = new AccessibilityProperties(); dCopy.accessibilityProperties.silent = true; if (dispObj.name == "border_mc"){ border_mc = dCopy; try { borderCopy = (ctrlData.avatar["colorMe"]) ? new Sprite() : null; } catch(re:ReferenceError) { borderCopy = null; }; if (borderCopy != null){ border_mc.visible = false; scale9Grid = border_mc.scale9Grid; scale9Grid.x = Math.round(scale9Grid.x); scale9Grid.y = Math.round(scale9Grid.y); scale9Grid.width = Math.round(scale9Grid.width); diff = ((scale9Grid.x + scale9Grid.width) - border_mc.scale9Grid.right); if (diff > 0.5){ scale9Grid.width--; } else { if (diff < -0.5){ scale9Grid.width++; }; }; scale9Grid.height = Math.round(scale9Grid.height); diff = ((scale9Grid.y + scale9Grid.height) - border_mc.scale9Grid.bottom); if (diff > 0.5){ scale9Grid.height--; } else { if (diff < -0.5){ scale9Grid.height++; }; }; if (scale9Grid != null){ borderScale9Rects = new Array(); lastXDim = (border_mc.width - (scale9Grid.x + scale9Grid.width)); floorLastXDim = Math.floor(lastXDim); if ((lastXDim - floorLastXDim) < 0.05){ lastXDim = floorLastXDim; } else { lastXDim = (floorLastXDim + 1); }; lastYDim = (border_mc.height - (scale9Grid.y + scale9Grid.height)); floorLastYDim = Math.floor(lastYDim); if ((lastYDim - floorLastYDim) < 0.05){ lastYDim = floorLastYDim; } else { lastYDim = (floorLastYDim + 1); }; newRect = new Rectangle(0, 0, scale9Grid.x, scale9Grid.y); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(scale9Grid.x, 0, scale9Grid.width, scale9Grid.y); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle((scale9Grid.x + scale9Grid.width), 0, lastXDim, scale9Grid.y); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(0, scale9Grid.y, scale9Grid.x, scale9Grid.height); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(scale9Grid.x, scale9Grid.y, scale9Grid.width, scale9Grid.height); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle((scale9Grid.x + scale9Grid.width), scale9Grid.y, lastXDim, scale9Grid.height); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(0, (scale9Grid.y + scale9Grid.height), scale9Grid.x, lastYDim); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(scale9Grid.x, (scale9Grid.y + scale9Grid.height), scale9Grid.width, lastYDim); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle((scale9Grid.x + scale9Grid.width), (scale9Grid.y + scale9Grid.height), lastXDim, lastYDim); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); i = 0; while (i < borderScale9Rects.length) { if (borderScale9Rects[i] != null){ break; }; i = (i + 1); }; if (i >= borderScale9Rects.length){ borderScale9Rects = null; }; }; numBorderBitmaps = ((borderScale9Rects)==null) ? 1 : 9; i = 0; while (i < numBorderBitmaps) { if ((((borderScale9Rects == null)) || (!((borderScale9Rects[i] == null))))){ borderCopy.addChild(new Bitmap()); }; i = (i + 1); }; borderCopy.accessibilityProperties = new AccessibilityProperties(); borderCopy.accessibilityProperties.silent = true; skin_mc.addChild(borderCopy); borderPrevRect = null; }; }; } public function get fullScreenSkinDelay():int{ return (_skinAutoHideMotionTimeout); } flvplayback_internal function doBufferingDelay(_arg1:TimerEvent):void{ _bufferingDelayTimer.reset(); var _local2:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; if (_vc.state == VideoState.BUFFERING){ _bufferingOn = true; handleIVPEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, VideoState.BUFFERING, NaN, _vc.visibleVideoPlayerIndex)); }; _vc.activeVideoPlayerIndex = _local2; } flvplayback_internal function volumeBarListener(_arg1:TimerEvent):void{ var _local2:Sprite = controls[VOLUME_BAR]; if (_local2 == null){ return; }; var _local3:ControlData = ctrlDataDict[_local2]; calcPercentageFromHandle(_local2); var _local4:Number = _local3.percentage; var _local5 = (_arg1 == null); if (_local5){ _volumeBarTimer.stop(); _vc.addEventListener(SoundEvent.SOUND_UPDATE, handleSoundEvent); }; if (((((((((_local5) || ((_volumeBarScrubTolerance <= 0)))) || ((Math.abs((_local4 - _lastVolumePos)) > _volumeBarScrubTolerance)))) || ((_local4 < _volumeBarScrubTolerance)))) || ((_local4 > (100 - _volumeBarScrubTolerance))))){ if (_local4 != _lastVolumePos){ if (_isMuted){ cachedSoundLevel = (_local4 / 100); } else { _vc.volume = (_local4 / 100); }; _lastVolumePos = _local4; }; }; } public function get visible():Boolean{ return (__visible); } flvplayback_internal function isFocusRectActive():Boolean{ var i:int; var doc:DisplayObjectContainer; var child:DisplayObject; var classReference:Class; var c:*; var o:InteractiveObject = _vc.parent; while (o) { if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); }; i = 0; while (i < doc.numChildren) { try { child = (doc.getChildAt(i) as DisplayObject); classReference = (getDefinitionByName("fl.core.UIComponent") as Class); if (((((!((child == null))) && (!((child == _vc))))) && ((child is classReference)))){ c = (child as classReference); if (c.focusManager.showFocusIndicator){ return (false); }; break; }; } catch(e:Error) { }; i = (i + 1); }; o = o.parent; }; return (true); } flvplayback_internal function fixUpBar(_arg1:DisplayObject, _arg2:String, _arg3:DisplayObject, _arg4:String):void{ var bar:DisplayObject; var definitionHolder = _arg1; var propPrefix = _arg2; var ctrl = _arg3; var name = _arg4; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData[name] != null){ return; }; try { bar = ctrl[name]; } catch(re:ReferenceError) { bar = null; }; if (bar == null){ try { bar = createSkin(definitionHolder, (propPrefix + "LinkageID")); } catch(ve:VideoError) { bar = null; }; if (bar == null){ return; }; if (ctrl.parent != null){ if (getBooleanPropSafe(ctrl, (propPrefix + "Below"))){ ctrl.parent.addChildAt(bar, ctrl.parent.getChildIndex(ctrl)); } else { ctrl.parent.addChild(bar); }; }; }; ctrlData[name] = bar; var barData:ControlData = ctrlDataDict[bar]; if (barData == null){ barData = new ControlData(this, bar, ctrl, -1); ctrlDataDict[bar] = barData; }; } public function get volumeBarInterval():Number{ return (_volumeBarTimer.delay); } public function get bufferingBarHidesAndDisablesOthers():Boolean{ return (_bufferingBarHides); } flvplayback_internal function calcLayoutControl(_arg1:DisplayObject):Rectangle{ var ctrl = _arg1; var rect:Rectangle = new Rectangle(); if (ctrl == null){ return (rect); }; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData == null){ return (rect); }; if (ctrlData.avatar == null){ return (rect); }; var anchorRight:Boolean; var anchorLeft:Boolean; var anchorTop:Boolean; var anchorBottom:Boolean; try { anchorRight = ctrlData.avatar["anchorRight"]; } catch(re1:ReferenceError) { anchorRight = false; }; try { anchorLeft = ctrlData.avatar["anchorLeft"]; } catch(re1:ReferenceError) { anchorLeft = true; }; try { anchorTop = ctrlData.avatar["anchorTop"]; } catch(re1:ReferenceError) { anchorTop = false; }; try { anchorBottom = ctrlData.avatar["anchorBottom"]; } catch(re1:ReferenceError) { anchorBottom = true; }; if (anchorRight){ if (anchorLeft){ rect.x = ((ctrlData.avatar.x - placeholderLeft) + videoLeft); rect.width = ((((ctrlData.avatar.x + ctrlData.avatar.width) - placeholderRight) + videoRight) - rect.x); ctrlData.origWidth = NaN; } else { rect.x = ((ctrlData.avatar.x - placeholderRight) + videoRight); rect.width = ctrl.width; }; } else { rect.x = ((ctrlData.avatar.x - placeholderLeft) + videoLeft); rect.width = ctrl.width; }; if (anchorTop){ if (anchorBottom){ rect.y = ((ctrlData.avatar.y - placeholderTop) + videoTop); rect.height = ((((ctrlData.avatar.y + ctrlData.avatar.height) - placeholderBottom) + videoBottom) - rect.y); ctrlData.origHeight = NaN; } else { rect.y = ((ctrlData.avatar.y - placeholderTop) + videoTop); rect.height = ctrl.height; }; } else { rect.y = ((ctrlData.avatar.y - placeholderBottom) + videoBottom); rect.height = ctrl.height; }; try { if ((ctrl["layoutSelf"] is Function)){ rect = ctrl["layoutSelf"](rect); }; } catch(re3:ReferenceError) { }; return (rect); } flvplayback_internal function skinFadeMore(_arg1:TimerEvent):void{ var _local2:Number; if (((((!(_skinFadingIn)) && ((skin_mc.alpha <= 0.5)))) || (((_skinFadingIn) && ((skin_mc.alpha >= 0.95)))))){ skin_mc.visible = _skinFadingIn; skin_mc.alpha = 1; _skinFadingTimer.stop(); } else { _local2 = ((getTimer() - _skinFadeStartTime) / _skinFadingMaxTime); if (!_skinFadingIn){ _local2 = (1 - _local2); }; if (_local2 < 0){ _local2 = 0; } else { if (_local2 > 1){ _local2 = 1; }; }; skin_mc.alpha = _local2; }; } flvplayback_internal function resetPlayPause():void{ if (controls[PLAY_PAUSE_BUTTON] == undefined){ return; }; var _local1:int = PAUSE_BUTTON; while (_local1 <= PLAY_BUTTON) { removeButtonListeners(controls[_local1]); delete ctrlDataDict[controls[_local1]]; delete controls[_local1]; _local1++; }; delete ctrlDataDict[controls[PLAY_PAUSE_BUTTON]]; delete controls[PLAY_PAUSE_BUTTON]; } public function setControl(_arg1:int, _arg2:Sprite):void{ var index = _arg1; var ctrl = _arg2; if (ctrl == controls[index]){ return; }; if (ctrl){ ctrl.tabEnabled = false; }; switch (index){ case PAUSE_BUTTON: case PLAY_BUTTON: resetPlayPause(); break; case PLAY_PAUSE_BUTTON: if ((((ctrl == null)) || (!((ctrl.parent == skin_mc))))){ resetPlayPause(); }; if (ctrl != null){ setControl(PAUSE_BUTTON, Sprite(ctrl.getChildByName("pause_mc"))); setControl(PLAY_BUTTON, Sprite(ctrl.getChildByName("play_mc"))); }; break; case FULL_SCREEN_BUTTON: if (ctrl != null){ setControl(FULL_SCREEN_ON_BUTTON, Sprite(ctrl.getChildByName("on_mc"))); setControl(FULL_SCREEN_OFF_BUTTON, Sprite(ctrl.getChildByName("off_mc"))); }; break; case MUTE_BUTTON: if (ctrl != null){ setControl(MUTE_ON_BUTTON, Sprite(ctrl.getChildByName("on_mc"))); setControl(MUTE_OFF_BUTTON, Sprite(ctrl.getChildByName("off_mc"))); }; break; }; if (controls[index] != null){ try { delete controls[index]["uiMgr"]; } catch(re:ReferenceError) { }; if (index < NUM_BUTTONS){ removeButtonListeners(controls[index]); }; delete ctrlDataDict[controls[index]]; delete controls[index]; }; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData == null){ ctrlData = new ControlData(this, ctrl, null, index); ctrlDataDict[ctrl] = ctrlData; } else { ctrlData.index = index; }; if (index >= NUM_BUTTONS){ controls[index] = ctrl; switch (index){ case SEEK_BAR: addBarControl(ctrl); break; case VOLUME_BAR: addBarControl(ctrl); ctrlData.percentage = (_vc.volume * 100); break; case BUFFERING_BAR: if (ctrl.parent == skin_mc){ finishAddBufferingBar(); } else { ctrl.addEventListener(Event.ENTER_FRAME, finishAddBufferingBar); }; break; }; setEnabledAndVisibleForState(index, _vc.state); } else { controls[index] = ctrl; addButtonControl(ctrl); }; } flvplayback_internal function bitmapCopyBorder():void{ var _local2:BitmapData; var _local3:Matrix; var _local4:Number; var _local5:Number; var _local6:Rectangle; var _local7:int; var _local8:Number; var _local9:Number; var _local10:int; var _local11:Bitmap; var _local12:Number; var _local13:Number; if ((((border_mc == null)) || ((borderCopy == null)))){ return; }; var _local1:Rectangle = border_mc.getBounds(skin_mc); if ((((borderPrevRect == null)) || (!(borderPrevRect.equals(_local1))))){ borderCopy.x = _local1.x; borderCopy.y = _local1.y; _local3 = new Matrix(border_mc.scaleX, 0, 0, border_mc.scaleY, 0, 0); if (borderScale9Rects == null){ _local2 = new BitmapData(_local1.width, _local1.height, true, 0); _local2.draw(border_mc, _local3, borderColorTransform); Bitmap(borderCopy.getChildAt(0)).bitmapData = _local2; } else { _local4 = 0; _local5 = 0; _local6 = new Rectangle(0, 0, 0, 0); _local7 = 0; _local8 = 0; if (borderScale9Rects[3] != null){ _local8 = (_local8 + borderScale9Rects[3].width); }; if (borderScale9Rects[5] != null){ _local8 = (_local8 + borderScale9Rects[5].width); }; _local9 = 0; if (borderScale9Rects[1] != null){ _local9 = (_local9 + borderScale9Rects[1].height); }; if (borderScale9Rects[7] != null){ _local9 = (_local9 + borderScale9Rects[7].height); }; _local10 = 0; while (_local10 < borderScale9Rects.length) { if ((_local10 % 3) == 0){ _local4 = 0; _local5 = (_local5 + _local6.height); }; if (borderScale9Rects[_local10] == null){ } else { _local6 = Rectangle(borderScale9Rects[_local10]).clone(); _local3.a = 1; if ((((((_local10 == 1)) || ((_local10 == 4)))) || ((_local10 == 7)))){ _local12 = ((_local1.width - _local8) / _local6.width); _local6.x = (_local6.x * _local12); _local6.width = (_local6.width * _local12); _local6.width = Math.round(_local6.width); _local3.a = (_local3.a * _local12); }; _local3.tx = -(_local6.x); _local6.x = 0; _local3.d = 1; if ((((_local10 >= 3)) && ((_local10 <= 5)))){ _local13 = ((_local1.height - _local9) / _local6.height); _local6.y = (_local6.y * _local13); _local6.height = (_local6.height * _local13); _local6.height = Math.round(_local6.height); _local3.d = (_local3.d * _local13); }; _local3.ty = -(_local6.y); _local6.y = 0; _local2 = new BitmapData(_local6.width, _local6.height, true, 0); _local2.draw(border_mc, _local3, borderColorTransform, null, _local6, false); _local11 = Bitmap(borderCopy.getChildAt(_local7)); _local7++; _local11.bitmapData = _local2; _local11.x = _local4; _local11.y = _local5; _local4 = (_local4 + _local6.width); }; _local10++; }; }; borderPrevRect = _local1; }; } flvplayback_internal function createSkin(_arg1:DisplayObject, _arg2:String):DisplayObject{ var stateSkinDesc:*; var theClass:Class; var definitionHolder = _arg1; var skinName = _arg2; try { stateSkinDesc = definitionHolder[skinName]; if ((stateSkinDesc is String)){ try { theClass = Class(definitionHolder.loaderInfo.applicationDomain.getDefinition(stateSkinDesc)); } catch(err1:Error) { theClass = Class(getDefinitionByName(stateSkinDesc)); }; return (DisplayObject(new (theClass))); } else { if ((stateSkinDesc is Class)){ return (new (stateSkinDesc)); } else { if ((stateSkinDesc is DisplayObject)){ return (stateSkinDesc); }; }; }; } catch(err2:Error) { throw (new VideoError(VideoError.MISSING_SKIN_STYLE, skinName)); }; return (null); } flvplayback_internal function hookUpCustomComponents():void{ var i:int; var dispObj:DisplayObject; var name:String; var index:int; var ctrl:Sprite; focusRect = isFocusRectActive(); var searchHash:Object = new Object(); var doTheSearch:Boolean; i = 0; while (i < NUM_CONTROLS) { if (controls[i] == null){ searchHash[customComponentClassNames[i]] = i; doTheSearch = true; }; i = (i + 1); }; if (!doTheSearch){ return; }; i = 0; while (i < _vc.parent.numChildren) { dispObj = _vc.parent.getChildAt(i); name = getQualifiedClassName(dispObj); if (searchHash[name] != undefined){ if (typeof(searchHash[name]) == "number"){ index = int(searchHash[name]); try { ctrl = Sprite(dispObj); if ((((((index >= NUM_BUTTONS)) || ((ctrl["placeholder_mc"] is DisplayObject)))) && ((ctrl["uiMgr"] == null)))){ setControl(index, ctrl); searchHash[name] = ctrl; }; } catch(err:Error) { }; }; }; i = (i + 1); }; } flvplayback_internal function addButtonControl(_arg1:Sprite):void{ if (_arg1 == null){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; _arg1.buttonMode = true; _arg1.tabEnabled = true; _arg1.tabChildren = true; _arg1.focusRect = focusRect; _arg1.accessibilityProperties = new AccessibilityProperties(); _arg1.accessibilityProperties.forceSimple = true; _arg1.accessibilityProperties.silent = true; if (accessibilityPropertyNames[_local2.index] != null){ _arg1.accessibilityProperties.name = accessibilityPropertyNames[_local2.index]; _arg1.accessibilityProperties.silent = false; }; if ((((_local2.index == VOLUME_BAR_HIT)) || ((_local2.index == SEEK_BAR_HIT)))){ _arg1.buttonMode = false; _arg1.tabEnabled = false; _arg1.tabChildren = false; _arg1.focusRect = false; _arg1.accessibilityProperties.silent = true; }; if ((((_local2.index == VOLUME_BAR_HANDLE)) || ((_local2.index == SEEK_BAR_HANDLE)))){ _arg1.graphics.moveTo(0, -18); _arg1.graphics.lineStyle(0, 0, 0); _arg1.graphics.lineTo(0, -18); _arg1.buttonMode = false; _arg1.focusRect = true; _arg1.accessibilityProperties.silent = false; configureBarAccessibility(_local2.index); }; _arg1.mouseChildren = false; var _local3:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; _local2.state = NORMAL_STATE; setEnabledAndVisibleForState(_local2.index, _vc.state); _arg1.addEventListener(MouseEvent.ROLL_OVER, handleButtonEvent); _arg1.addEventListener(MouseEvent.ROLL_OUT, handleButtonEvent); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, handleButtonEvent); _arg1.addEventListener(MouseEvent.CLICK, handleButtonEvent); _arg1.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyEvent); _arg1.addEventListener(KeyboardEvent.KEY_UP, handleKeyEvent); _arg1.addEventListener(FocusEvent.FOCUS_IN, handleFocusEvent); _arg1.addEventListener(FocusEvent.FOCUS_OUT, handleFocusEvent); if (_arg1.parent == skin_mc){ skinButtonControl(_arg1); } else { _arg1.addEventListener(Event.ENTER_FRAME, skinButtonControl); }; _vc.activeVideoPlayerIndex = _local3; } flvplayback_internal function exitFullScreenTakeOver():void{ var fullScreenBG:Sprite; var cacheActiveIndex:int; var i:int; var vp:VideoPlayer; if (cacheFLVPlaybackParent == null){ return; }; _vc.removeEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.removeEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); try { if (_fullScreenAccel){ _vc.stage.fullScreenSourceRect = new Rectangle(0, 0, -1, -1); } else { _vc.stage.align = cacheStageAlign; _vc.stage.scaleMode = cacheStageScaleMode; }; fullScreenBG = Sprite(_vc.getChildByName("fullScreenBG")); if (fullScreenBG != null){ _vc.removeChild(fullScreenBG); }; if (hitTarget_mc != null){ hitTarget_mc.graphics.clear(); hitTarget_mc.graphics.lineStyle(0, 0, 0); hitTarget_mc.graphics.drawRect(0, 0, _vc.width, _vc.height); }; if (_vc.parent != cacheFLVPlaybackParent){ cacheFLVPlaybackParent.addChildAt(_vc, cacheFLVPlaybackIndex); } else { cacheFLVPlaybackParent.setChildIndex(_vc, cacheFLVPlaybackIndex); }; cacheActiveIndex = _vc.activeVideoPlayerIndex; i = 0; while (i < _vc.videoPlayers.length) { vp = (_vc.videoPlayers[i] as VideoPlayer); if (vp != null){ _vc.activeVideoPlayerIndex = i; if (cacheFLVPlaybackScaleMode[i] != undefined){ _vc.scaleMode = cacheFLVPlaybackScaleMode[i]; }; if (cacheFLVPlaybackAlign[i]){ _vc.align = cacheFLVPlaybackAlign[i]; }; }; i = (i + 1); }; _vc.activeVideoPlayerIndex = cacheActiveIndex; _vc.registrationX = cacheFLVPlaybackLocation.x; _vc.registrationY = cacheFLVPlaybackLocation.y; _vc.setSize(cacheFLVPlaybackLocation.width, cacheFLVPlaybackLocation.height); } catch(err:Error) { }; _vc.addEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); _fullScreen = false; _fullScreenAccel = false; cacheStageAlign = null; cacheStageScaleMode = null; cacheFLVPlaybackParent = null; cacheFLVPlaybackIndex = 0; cacheFLVPlaybackLocation = null; cacheFLVPlaybackScaleMode = null; cacheFLVPlaybackAlign = null; if (_skinAutoHide != cacheSkinAutoHide){ _skinAutoHide = cacheSkinAutoHide; setupSkinAutoHide(false); }; } flvplayback_internal function positionMaskedFill(_arg1:DisplayObject, _arg2:Number):void{ var ctrlData:ControlData; var slideReveal:Boolean; var maskSprite:Sprite; var barData:ControlData; var ctrl = _arg1; var percent = _arg2; if (ctrl == null){ return; }; ctrlData = ctrlDataDict[ctrl]; var fill:DisplayObject = ctrlData.fill_mc; if (fill == null){ return; }; var mask:DisplayObject = ctrlData.mask_mc; if (ctrlData.mask_mc == null){ try { var _local4 = ctrl["mask_mc"]; mask = _local4; ctrlData.mask_mc = _local4; } catch(re:ReferenceError) { ctrlData.mask_mc = null; }; if (ctrlData.mask_mc == null){ maskSprite = new Sprite(); _local4 = maskSprite; mask = _local4; ctrlData.mask_mc = _local4; maskSprite.graphics.beginFill(0xFFFFFF); maskSprite.graphics.drawRect(0, 0, 1, 1); maskSprite.graphics.endFill(); barData = ctrlDataDict[fill]; maskSprite.x = barData.origX; maskSprite.y = barData.origY; maskSprite.width = barData.origWidth; maskSprite.height = barData.origHeight; maskSprite.visible = false; fill.parent.addChild(maskSprite); fill.mask = maskSprite; }; if (ctrlData.mask_mc != null){ calcBarMargins(ctrl, "mask", true); }; }; var fillData:ControlData = ctrlDataDict[fill]; var maskData:ControlData = ctrlDataDict[mask]; try { slideReveal = fill["slideReveal"]; } catch(re:ReferenceError) { slideReveal = false; }; if (fill.parent == ctrl){ if (slideReveal){ fill.x = ((maskData.origX - fillData.origWidth) + ((fillData.origWidth * percent) / 100)); } else { mask.width = ((fillData.origWidth * percent) / 100); }; } else { if (fill.parent == ctrl.parent){ if (slideReveal){ mask.x = (ctrl.x + maskData.leftMargin); mask.y = (ctrl.y + maskData.topMargin); mask.width = ((ctrl.width - maskData.rightMargin) - maskData.leftMargin); mask.height = ((ctrl.height - maskData.topMargin) - maskData.bottomMargin); fill.x = ((mask.x - fillData.origWidth) + ((maskData.origWidth * percent) / 100)); fill.y = (ctrl.y + fillData.topMargin); } else { fill.x = (ctrl.x + fillData.leftMargin); fill.y = (ctrl.y + fillData.topMargin); mask.x = fill.x; mask.y = fill.y; mask.width = ((((ctrl.width - fillData.rightMargin) - fillData.leftMargin) * percent) / 100); mask.height = ((ctrl.height - fillData.topMargin) - fillData.bottomMargin); }; }; }; } flvplayback_internal function calcPercentageFromHandle(_arg1:Sprite):void{ if (_arg1 == null){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; if ((((_arg1["calcPercentageFromHandle"] is Function)) && (_arg1["calcPercentageFromHandle"]()))){ if (_local2.percentage < 0){ _local2.percentage = 0; }; if (_local2.percentage > 100){ _local2.percentage = 100; }; return; }; var _local3:Sprite = _local2.handle_mc; if (_local3 == null){ return; }; var _local4:ControlData = ctrlDataDict[_local3]; var _local5:Number = (isNaN(_local2.origWidth)) ? _arg1.width : _local2.origWidth; var _local6:Number = ((_local5 - _local4.rightMargin) - _local4.leftMargin); var _local7:Number = (_local3.x - (_arg1.x + _local4.leftMargin)); _local2.percentage = ((_local7 / _local6) * 100); if (_local2.percentage < 0){ _local2.percentage = 0; }; if (_local2.percentage > 100){ _local2.percentage = 100; }; if (_local2.fullness_mc != null){ positionBar(_arg1, "fullness", _local2.percentage); }; } flvplayback_internal function setTwoButtonHolderSkin(_arg1:int, _arg2:int, _arg3:String, _arg4:int, _arg5:String, _arg6:DisplayObject):Sprite{ var _local7:Sprite; var _local8:Sprite; var _local9:ControlData; _local8 = new Sprite(); _local9 = new ControlData(this, _local8, null, _arg1); ctrlDataDict[_local8] = _local9; skin_mc.addChild(_local8); _local7 = setupButtonSkin(_arg2, _arg6); _local7.name = _arg3; _local7.visible = true; _local8.addChild(_local7); _local7 = setupButtonSkin(_arg4, _arg6); _local7.name = _arg5; _local7.visible = false; _local8.addChild(_local7); return (_local8); } flvplayback_internal function handleRelease(_arg1:int):void{ var _local2:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; if (_arg1 == SEEK_BAR){ seekBarListener(null); } else { if (_arg1 == VOLUME_BAR){ volumeBarListener(null); }; }; stopHandleDrag(controls[_arg1]); _vc.activeVideoPlayerIndex = _local2; if (_arg1 == SEEK_BAR){ _vc._scrubFinish(); }; } public function set seekBarInterval(_arg1:Number):void{ if (_seekBarTimer.delay == _arg1){ return; }; _seekBarTimer.delay = _arg1; } flvplayback_internal function skinAutoHideHitTest(_arg1:TimerEvent, _arg2:Boolean=true):void{ var visibleVP:VideoPlayer; var hit:Boolean; var e = _arg1; var doFade = _arg2; try { if (!__visible){ skin_mc.visible = false; if (hitTarget_mc){ hitTarget_mc.accessibilityProperties.name = accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; }; } else { if (_vc.stage != null){ visibleVP = _vc.getVideoPlayer(_vc.visibleVideoPlayerIndex); hit = visibleVP.hitTestPoint(_vc.stage.mouseX, _vc.stage.mouseY, true); if (((((_fullScreen) && (_fullScreenTakeOver))) && (!((e == null))))){ if ((((_vc.stage.mouseX == _skinAutoHideMouseX)) && ((_vc.stage.mouseY == _skinAutoHideMouseY)))){ if ((getTimer() - _skinAutoHideLastMotionTime) > _skinAutoHideMotionTimeout){ hit = false; }; } else { _skinAutoHideLastMotionTime = getTimer(); _skinAutoHideMouseX = _vc.stage.mouseX; _skinAutoHideMouseY = _vc.stage.mouseY; }; }; if (((!(hit)) && (!((border_mc == null))))){ hit = border_mc.hitTestPoint(_vc.stage.mouseX, _vc.stage.mouseY, true); if (((((hit) && (_fullScreen))) && (_fullScreenTakeOver))){ _skinAutoHideLastMotionTime = getTimer(); }; }; if (((!(doFade)) || ((_skinFadingMaxTime <= 0)))){ _skinFadingTimer.stop(); skin_mc.visible = hit; skin_mc.alpha = 1; } else { if (((((((hit) && (skin_mc.visible))) && (((!(_skinFadingTimer.running)) || (_skinFadingIn))))) || (((!(hit)) && (((!(skin_mc.visible)) || (((_skinFadingTimer.running) && (!(_skinFadingIn)))))))))){ } else { _skinFadingTimer.stop(); _skinFadingIn = hit; if (((_skinFadingIn) && ((skin_mc.alpha == 1)))){ skin_mc.alpha = 0; }; _skinFadeStartTime = getTimer(); _skinFadingTimer.start(); skin_mc.visible = true; }; }; if (hitTarget_mc){ hitTarget_mc.accessibilityProperties.name = (hit) ? accessibilityPropertyNames[HIDE_CONTROLS_BUTTON] : accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; }; }; }; } catch(se:SecurityError) { _skinAutoHideTimer.stop(); _skinFadingTimer.stop(); skin_mc.visible = __visible; skin_mc.alpha = 1; if (hitTarget_mc){ hitTarget_mc.accessibilityProperties.name = accessibilityPropertyNames[HIDE_CONTROLS_BUTTON]; }; }; if (((hitTarget_mc) && (Capabilities.hasAccessibility))){ Accessibility.updateProperties(); }; } flvplayback_internal function layoutControl(_arg1:DisplayObject):void{ var _local4:Sprite; var _local5:Rectangle; if (_arg1 == null){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; if (_local2 == null){ return; }; if (_local2.avatar == null){ return; }; var _local3:Rectangle = calcLayoutControl(_arg1); _arg1.x = _local3.x; _arg1.y = _local3.y; _arg1.width = _local3.width; _arg1.height = _local3.height; switch (_local2.index){ case SEEK_BAR: case VOLUME_BAR: if (((!((_local2.hit_mc == null))) && ((_local2.hit_mc.parent == skin_mc)))){ _local4 = _local2.hit_mc; _local5 = calcLayoutControl(_local4); _local4.x = _local5.x; _local4.y = _local5.y; _local4.width = _local5.width; _local4.height = _local5.height; }; if (_local2.progress_mc != null){ if (isNaN(_progressPercent)){ _progressPercent = (_vc.isRTMP) ? 100 : 0; }; positionBar(Sprite(_arg1), "progress", _progressPercent); }; positionHandle(Sprite(_arg1)); break; case BUFFERING_BAR: positionMaskedFill(_arg1, 100); break; }; } public function set fullScreenSkinDelay(_arg1:int):void{ _skinAutoHideMotionTimeout = _arg1; } flvplayback_internal function captureMouseEvent(_arg1:MouseEvent):void{ _arg1.stopPropagation(); } flvplayback_internal function positionHandle(_arg1:Sprite):void{ if (_arg1 == null){ return; }; if ((((_arg1["positionHandle"] is Function)) && (_arg1["positionHandle"]()))){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; var _local3:Sprite = _local2.handle_mc; if (_local3 == null){ return; }; var _local4:ControlData = ctrlDataDict[_local3]; var _local5:Number = (isNaN(_local2.origWidth)) ? _arg1.width : _local2.origWidth; var _local6:Number = ((_local5 - _local4.rightMargin) - _local4.leftMargin); _local3.x = ((_arg1.x + _local4.leftMargin) + ((_local6 * _local2.percentage) / 100)); _local3.y = (_arg1.y + _local4.origY); if (_local2.fullness_mc != null){ positionBar(_arg1, "fullness", _local2.percentage); }; } flvplayback_internal function handleMouseUp(_arg1:MouseEvent):void{ var _local3:ControlData; var _local2:Sprite = controls[mouseCaptureCtrl]; if (_local2 != null){ _local3 = ctrlDataDict[_local2]; _local3.state = (_local2.hitTestPoint(_arg1.stageX, _arg1.stageY, true)) ? OVER_STATE : NORMAL_STATE; skinButtonControl(_local2); switch (mouseCaptureCtrl){ case SEEK_BAR_HANDLE: case SEEK_BAR_HIT: handleRelease(SEEK_BAR); break; case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: handleRelease(VOLUME_BAR); break; case FULL_SCREEN_OFF_BUTTON: case FULL_SCREEN_ON_BUTTON: dispatchMessage(_local3.index); break; }; }; _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_DOWN, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_OUT, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_OVER, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_UP, handleMouseUp); _arg1.currentTarget.removeEventListener(MouseEvent.ROLL_OUT, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.ROLL_OVER, captureMouseEvent, true); } public function set visible(_arg1:Boolean):void{ if (__visible == _arg1){ return; }; __visible = _arg1; if (!__visible){ skin_mc.visible = false; } else { setupSkinAutoHide(false); }; } public function get bufferingDelayInterval():Number{ return (_bufferingDelayTimer.delay); } flvplayback_internal function handleFocusEvent(_arg1:FocusEvent):void{ var _local2:ControlData = ctrlDataDict[_arg1.currentTarget]; if (_local2 == null){ return; }; switch (_arg1.type){ case FocusEvent.FOCUS_IN: switch (_arg1.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: _arg1.target.focusRect = false; break; }; _local2.state = OVER_STATE; break; case FocusEvent.FOCUS_OUT: switch (_arg1.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: _arg1.target.focusRect = true; break; case controls[STOP_BUTTON]: if (!_local2.enabled){ _arg1.target.tabEnabled = false; }; break; }; _local2.state = NORMAL_STATE; break; }; skinButtonControl(_arg1.currentTarget); } public function set fullScreenBackgroundColor(_arg1:uint):void{ if (_fullScreenBgColor != _arg1){ _fullScreenBgColor = _arg1; if (_vc){ }; }; } public function get fullScreenTakeOver():Boolean{ return (_fullScreenTakeOver); } public function set skin(_arg1:String):void{ var _local2:String; if (_arg1 == null){ removeSkin(); _skin = null; _skinReady = true; } else { _local2 = String(_arg1); if (_arg1 == _skin){ return; }; removeSkin(); _skin = String(_arg1); _skinReady = (_skin == ""); if (!_skinReady){ downloadSkin(); }; }; } public function set volumeBarInterval(_arg1:Number):void{ if (_volumeBarTimer.delay == _arg1){ return; }; _volumeBarTimer.delay = _arg1; } flvplayback_internal function setSkin(_arg1:int, _arg2:DisplayObject):void{ var _local3:Sprite; var _local4:ControlData; var _local5:String; if (_arg1 >= NUM_CONTROLS){ return; }; if (_arg1 < NUM_BUTTONS){ _local3 = setupButtonSkin(_arg1, _arg2); skin_mc.addChild(_local3); _local4 = ctrlDataDict[_local3]; } else { switch (_arg1){ case PLAY_PAUSE_BUTTON: _local3 = setTwoButtonHolderSkin(_arg1, PLAY_BUTTON, "play_mc", PAUSE_BUTTON, "pause_mc", _arg2); _local4 = ctrlDataDict[_local3]; break; case FULL_SCREEN_BUTTON: _local3 = setTwoButtonHolderSkin(_arg1, FULL_SCREEN_ON_BUTTON, "on_mc", FULL_SCREEN_OFF_BUTTON, "off_mc", _arg2); _local4 = ctrlDataDict[_local3]; break; case MUTE_BUTTON: _local3 = setTwoButtonHolderSkin(_arg1, MUTE_ON_BUTTON, "on_mc", MUTE_OFF_BUTTON, "off_mc", _arg2); _local4 = ctrlDataDict[_local3]; break; case SEEK_BAR: case VOLUME_BAR: _local5 = skinClassPrefixes[_arg1]; _local3 = Sprite(createSkin(skinTemplate, _local5)); if (_local3 != null){ skin_mc.addChild(_local3); _local4 = new ControlData(this, _local3, null, _arg1); ctrlDataDict[_local3] = _local4; _local4.progress_mc = setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Progress"), "progress_mc"); _local4.fullness_mc = setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Fullness"), "fullness_mc"); _local4.hit_mc = Sprite(setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Hit"), "hit_mc")); _local4.handle_mc = Sprite(setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Handle"), "handle_mc", true)); _local3.width = _arg2.width; _local3.height = _arg2.height; _local3.accessibilityProperties = new AccessibilityProperties(); _local3.accessibilityProperties.silent = true; }; break; case BUFFERING_BAR: _local5 = skinClassPrefixes[_arg1]; _local3 = Sprite(createSkin(skinTemplate, _local5)); if (_local3 != null){ skin_mc.addChild(_local3); _local4 = new ControlData(this, _local3, null, _arg1); ctrlDataDict[_local3] = _local4; _local4.fill_mc = setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Fill"), "fill_mc"); _local3.width = _arg2.width; _local3.height = _arg2.height; _local4.fill_mc.accessibilityProperties = new AccessibilityProperties(); _local4.fill_mc.accessibilityProperties.silent = true; _local3.accessibilityProperties = new AccessibilityProperties(); _local3.accessibilityProperties.silent = true; }; break; }; }; _local4.avatar = _arg2; ctrlDataDict[_local3] = _local4; delayedControls[_arg1] = _local3; } flvplayback_internal function configureBarAccessibility(_arg1:int):void{ switch (_arg1){ case SEEK_BAR_HANDLE: SeekBarAccImpl.createAccessibilityImplementation(controls[SEEK_BAR_HANDLE]); break; case VOLUME_BAR_HANDLE: VolumeBarAccImpl.createAccessibilityImplementation(controls[VOLUME_BAR_HANDLE]); break; }; } public function set bufferingBarHidesAndDisablesOthers(_arg1:Boolean):void{ _bufferingBarHides = _arg1; } flvplayback_internal function handleSoundEvent(_arg1:SoundEvent):void{ var _local3:ControlData; if (((_isMuted) && ((_arg1.soundTransform.volume > 0)))){ _isMuted = false; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; var _local2:Sprite = controls[VOLUME_BAR]; if (_local2 != null){ _local3 = ctrlDataDict[_local2]; _local3.percentage = ((_isMuted) ? cachedSoundLevel : _arg1.soundTransform.volume * 100); if (_local3.percentage < 0){ _local3.percentage = 0; } else { if (_local3.percentage > 100){ _local3.percentage = 100; }; }; positionHandle(_local2); }; } flvplayback_internal function stopHandleDrag(_arg1:Sprite):void{ var ctrl = _arg1; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; try { if ((((ctrl["stopHandleDrag"] is Function)) && (ctrl["stopHandleDrag"]()))){ ctrlData.isDragging = false; return; }; } catch(re:ReferenceError) { }; var handle:Sprite = ctrlData.handle_mc; if (handle == null){ return; }; handle.stopDrag(); ctrlData.isDragging = false; handle.stage.focus = handle; } public function set skinBackgroundAlpha(_arg1:Number):void{ if (borderAlpha != _arg1){ borderAlpha = _arg1; borderColorTransform.alphaOffset = (0xFF * _arg1); borderPrevRect = null; layoutSkin(); }; } public function getControl(_arg1:int):Sprite{ return (controls[_arg1]); } public function set skinScaleMaximum(_arg1:Number):void{ _skinScaleMaximum = _arg1; } public function set volumeBarScrubTolerance(_arg1:Number):void{ _volumeBarScrubTolerance = _arg1; } flvplayback_internal function calcBarMargins(_arg1:DisplayObject, _arg2:String, _arg3:Boolean):void{ var ctrl = _arg1; var type = _arg2; var symmetricMargins = _arg3; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; var bar:DisplayObject = ctrlData[(type + "_mc")]; if (bar == null){ try { bar = ctrl[(type + "_mc")]; } catch(re:ReferenceError) { bar = null; }; if (bar == null){ return; }; ctrlData[(type + "_mc")] = bar; }; var barData:ControlData = ctrlDataDict[bar]; if (barData == null){ barData = new ControlData(this, bar, ctrl, -1); ctrlDataDict[bar] = barData; }; barData.leftMargin = getNumberPropSafe(ctrl, (type + "LeftMargin")); if (((isNaN(barData.leftMargin)) && ((bar.parent == ctrl.parent)))){ barData.leftMargin = (bar.x - ctrl.x); }; barData.rightMargin = getNumberPropSafe(ctrl, (type + "RightMargin")); if (isNaN(barData.rightMargin)){ if (symmetricMargins){ barData.rightMargin = barData.leftMargin; } else { if (bar.parent == ctrl.parent){ barData.rightMargin = (((ctrl.width - bar.width) - bar.x) + ctrl.x); }; }; }; barData.topMargin = getNumberPropSafe(ctrl, (type + "TopMargin")); if (((isNaN(barData.topMargin)) && ((bar.parent == ctrl.parent)))){ barData.topMargin = (bar.y - ctrl.y); }; barData.bottomMargin = getNumberPropSafe(ctrl, (type + "BottomMargin")); if (isNaN(barData.bottomMargin)){ if (symmetricMargins){ barData.bottomMargin = barData.topMargin; } else { if (bar.parent == ctrl.parent){ barData.bottomMargin = (((ctrl.height - bar.height) - bar.y) + ctrl.y); }; }; }; barData.origX = getNumberPropSafe(ctrl, (type + "X")); if (isNaN(barData.origX)){ if (bar.parent == ctrl.parent){ barData.origX = (bar.x - ctrl.x); } else { if (bar.parent == ctrl){ barData.origX = bar.x; }; }; }; barData.origY = getNumberPropSafe(ctrl, (type + "Y")); if (isNaN(barData.origY)){ if (bar.parent == ctrl.parent){ barData.origY = (bar.y - ctrl.y); } else { if (bar.parent == ctrl){ barData.origY = bar.y; }; }; }; barData.origWidth = bar.width; barData.origHeight = bar.height; barData.origScaleX = bar.scaleX; barData.origScaleY = bar.scaleY; } public function set skinBackgroundColor(_arg1:uint):void{ if (borderColor != _arg1){ borderColor = _arg1; borderColorTransform.redOffset = ((borderColor >> 16) & 0xFF); borderColorTransform.greenOffset = ((borderColor >> 8) & 0xFF); borderColorTransform.blueOffset = (borderColor & 0xFF); borderPrevRect = null; layoutSkin(); }; } flvplayback_internal function handleLoad(_arg1:Event):void{ var i:int; var dispObj:DisplayObject; var index:Number; var e = _arg1; try { skin_mc = new Sprite(); if (e != null){ skinTemplate = Sprite(skinLoader.content); }; layout_mc = skinTemplate; customClips = new Array(); delayedControls = new Array(); i = 0; while (i < layout_mc.numChildren) { dispObj = layout_mc.getChildAt(i); index = layoutNameToIndexMappings[dispObj.name]; if (!isNaN(index)){ setSkin(int(index), dispObj); } else { if (dispObj.name != "video_mc"){ setCustomClip(dispObj); }; }; i = (i + 1); }; skinLoadDelayCount = 0; _vc.addEventListener(Event.ENTER_FRAME, finishLoad); } catch(err:Error) { _vc.skinError(err.message); removeSkin(); }; } flvplayback_internal function finishAddBufferingBar(_arg1:Event=null):void{ if (_arg1 != null){ _arg1.currentTarget.removeEventListener(Event.ENTER_FRAME, finishAddBufferingBar); }; var _local2:Sprite = controls[BUFFERING_BAR]; calcBarMargins(_local2, "fill", true); fixUpBar(_local2, "fill", _local2, "fill_mc"); positionMaskedFill(_local2, 100); } flvplayback_internal function handleButtonEvent(_arg1:MouseEvent):void{ var topLevel:DisplayObject; var e = _arg1; var ctrlData:ControlData = ctrlDataDict[e.currentTarget]; switch (e.type){ case MouseEvent.ROLL_OVER: ctrlData.state = OVER_STATE; break; case MouseEvent.ROLL_OUT: ctrlData.state = NORMAL_STATE; break; case MouseEvent.MOUSE_DOWN: ctrlData.state = DOWN_STATE; mouseCaptureCtrl = ctrlData.index; switch (mouseCaptureCtrl){ case SEEK_BAR_HANDLE: case SEEK_BAR_HIT: case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: dispatchMessage(ctrlData.index); break; }; topLevel = _vc.stage; try { topLevel.addEventListener(MouseEvent.MOUSE_DOWN, captureMouseEvent, true); } catch(se:SecurityError) { topLevel = _vc.root; topLevel.addEventListener(MouseEvent.MOUSE_DOWN, captureMouseEvent, true); }; topLevel.addEventListener(MouseEvent.MOUSE_OUT, captureMouseEvent, true); topLevel.addEventListener(MouseEvent.MOUSE_OVER, captureMouseEvent, true); topLevel.addEventListener(MouseEvent.MOUSE_UP, handleMouseUp); topLevel.addEventListener(MouseEvent.ROLL_OUT, captureMouseEvent, true); topLevel.addEventListener(MouseEvent.ROLL_OVER, captureMouseEvent, true); break; case MouseEvent.CLICK: switch (mouseCaptureCtrl){ case SEEK_BAR_HANDLE: case SEEK_BAR_HIT: case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: case FULL_SCREEN_OFF_BUTTON: case FULL_SCREEN_ON_BUTTON: break; default: dispatchMessage(ctrlData.index); break; }; return; }; skinButtonControl(e.currentTarget); } flvplayback_internal function applySkinState(_arg1:ControlData, _arg2:DisplayObject):void{ if (_arg2 != _arg1.currentState_mc){ if (_arg1.currentState_mc != null){ _arg1.currentState_mc.visible = false; }; _arg1.currentState_mc = _arg2; _arg1.currentState_mc.visible = true; }; } flvplayback_internal function handleLoadErrorEvent(_arg1:ErrorEvent):void{ _skinReady = true; _vc.skinError(_arg1.toString()); } flvplayback_internal function addBarControl(_arg1:Sprite):void{ var _local2:ControlData = ctrlDataDict[_arg1]; _local2.isDragging = false; _local2.percentage = 0; if ((((_arg1.parent == skin_mc)) && (!((skin_mc == null))))){ finishAddBarControl(_arg1); } else { _arg1.addEventListener(Event.REMOVED_FROM_STAGE, cleanupHandle); _arg1.addEventListener(Event.ENTER_FRAME, finishAddBarControl); }; } flvplayback_internal function handleEvent(_arg1:Event):void{ var e = _arg1; switch (e.type){ case Event.ADDED_TO_STAGE: _fullScreen = false; if (_vc.stage != null){ try { _fullScreen = (_vc.stage.displayState == StageDisplayState.FULL_SCREEN); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); } catch(se:SecurityError) { }; }; if (!_fullScreen){ _fullScreenAccel = false; }; setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); if (((_fullScreen) && (_fullScreenTakeOver))){ enterFullScreenTakeOver(); } else { if (!_fullScreen){ exitFullScreenTakeOver(); }; }; layoutSkin(); setupSkinAutoHide(false); break; case Event.REMOVED_FROM_STAGE: _vc.stage.removeEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); break; }; } flvplayback_internal function skinButtonControl(_arg1:Object):void{ var ctrl:Sprite; var e:Event; var ctrlOrEvent = _arg1; if (ctrlOrEvent == null){ return; }; if ((ctrlOrEvent is Event)){ e = Event(ctrlOrEvent); ctrl = Sprite(e.currentTarget); ctrl.removeEventListener(Event.ENTER_FRAME, skinButtonControl); } else { ctrl = Sprite(ctrlOrEvent); }; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData == null){ return; }; try { if (ctrl["placeholder_mc"] != undefined){ ctrl.removeChild(ctrl["placeholder_mc"]); ctrl["placeholder_mc"] = null; }; } catch(re:ReferenceError) { }; if (ctrlData.state_mc == null){ ctrlData.state_mc = new Array(); }; if (ctrlData.state_mc[NORMAL_STATE] == undefined){ ctrlData.state_mc[NORMAL_STATE] = setupButtonSkinState(ctrl, ctrl, buttonSkinLinkageIDs[NORMAL_STATE], null); }; if (((ctrlData.enabled) && (_controlsEnabled))){ if (ctrlData.state_mc[ctrlData.state] == undefined){ ctrlData.state_mc[ctrlData.state] = setupButtonSkinState(ctrl, ctrl, buttonSkinLinkageIDs[ctrlData.state], ctrlData.state_mc[NORMAL_STATE]); }; if (ctrlData.state_mc[ctrlData.state] != ctrlData.currentState_mc){ if (ctrlData.currentState_mc != null){ ctrlData.currentState_mc.visible = false; }; ctrlData.currentState_mc = ctrlData.state_mc[ctrlData.state]; ctrlData.currentState_mc.visible = true; }; applySkinState(ctrlData, ctrlData.state_mc[ctrlData.state]); } else { ctrlData.state = NORMAL_STATE; if (ctrlData.disabled_mc == null){ ctrlData.disabled_mc = setupButtonSkinState(ctrl, ctrl, "disabledLinkageID", ctrlData.state_mc[NORMAL_STATE]); }; applySkinState(ctrlData, ctrlData.disabled_mc); }; } public function set controlsEnabled(_arg1:Boolean):void{ if (_controlsEnabled == _arg1){ return; }; _controlsEnabled = _arg1; var _local2:int; while (_local2 < NUM_BUTTONS) { skinButtonControl(controls[_local2]); _local2++; }; } flvplayback_internal function setupSkinAutoHide(_arg1:Boolean):void{ var uiMgr:UIManager; var clickHandler:Function; var doFade = _arg1; if (((_skinAutoHide) && (!((skin_mc == null))))){ if (!hitTarget_mc){ hitTarget_mc = new Sprite(); hitTarget_mc.accessibilityProperties = new AccessibilityProperties(); hitTarget_mc.accessibilityProperties.name = accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; customClips.push(hitTarget_mc); uiMgr = this; clickHandler = function (_arg1):void{ if (_arg1.type == FocusEvent.FOCUS_IN){ uiMgr._skinAutoHide = false; } else { if (_arg1.type == MouseEvent.CLICK){ uiMgr._skinAutoHide = !(uiMgr._skinAutoHide); }; }; uiMgr.setupSkinAutoHide(true); if (uiMgr._skinAutoHide){ _arg1.target.accessibilityProperties.name = accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; } else { _arg1.target.accessibilityProperties.name = accessibilityPropertyNames[HIDE_CONTROLS_BUTTON]; }; if (Accessibility.active){ Accessibility.updateProperties(); }; }; hitTarget_mc.useHandCursor = false; hitTarget_mc.buttonMode = true; hitTarget_mc.tabEnabled = true; hitTarget_mc.tabChildren = true; hitTarget_mc.focusRect = true; hitTarget_mc.addEventListener(FocusEvent.FOCUS_IN, clickHandler); hitTarget_mc.addEventListener(MouseEvent.CLICK, clickHandler); hitTarget_mc.accessibilityProperties.silent = _fullScreen; hitTarget_mc.tabEnabled = !(_fullScreen); if (Accessibility.active){ Accessibility.updateProperties(); }; _vc.addChild(hitTarget_mc); }; hitTarget_mc.graphics.clear(); hitTarget_mc.graphics.lineStyle(0, 0xFF0000, 0); hitTarget_mc.graphics.drawRect(0, 0, _vc.width, _vc.height); skinAutoHideHitTest(null, doFade); _skinAutoHideTimer.start(); } else { if (skin_mc != null){ if (((((((doFade) && ((_skinFadingMaxTime > 0)))) && (((!(skin_mc.visible)) || ((skin_mc.alpha < 1)))))) && (__visible))){ _skinFadingTimer.stop(); _skinFadeStartTime = getTimer(); _skinFadingIn = true; if (skin_mc.alpha == 1){ skin_mc.alpha = 0; }; _skinFadingTimer.start(); } else { if (_skinFadingMaxTime <= 0){ _skinFadingTimer.stop(); skin_mc.alpha = 1; }; }; skin_mc.visible = __visible; }; _skinAutoHideTimer.stop(); }; } public function get skin():String{ return (_skin); } flvplayback_internal function finishAddBarControl(_arg1:Object):void{ var ctrl:Sprite; var e:Event; var ctrlOrEvent = _arg1; if (ctrlOrEvent == null){ return; }; if ((ctrlOrEvent is Event)){ e = Event(ctrlOrEvent); ctrl = Sprite(e.currentTarget); ctrl.removeEventListener(Event.ENTER_FRAME, finishAddBarControl); } else { ctrl = Sprite(ctrlOrEvent); }; var ctrlData:ControlData = ctrlDataDict[ctrl]; try { if ((ctrl["addBarControl"] is Function)){ var _local3 = ctrl; _local3["addBarControl"](); }; } catch(re:ReferenceError) { }; ctrlData.origWidth = ctrl.width; ctrlData.origHeight = ctrl.height; fixUpBar(ctrl, "progress", ctrl, "progress_mc"); calcBarMargins(ctrl, "progress", false); if (ctrlData.progress_mc != null){ fixUpBar(ctrl, "progressBarFill", ctrlData.progress_mc, "fill_mc"); calcBarMargins(ctrlData.progress_mc, "fill", false); calcBarMargins(ctrlData.progress_mc, "mask", false); if (isNaN(_progressPercent)){ _progressPercent = (_vc.isRTMP) ? 100 : 0; }; positionBar(ctrl, "progress", _progressPercent); }; fixUpBar(ctrl, "fullness", ctrl, "fullness_mc"); calcBarMargins(ctrl, "fullness", false); if (ctrlData.fullness_mc != null){ fixUpBar(ctrl, "fullnessBarFill", ctrlData.fullness_mc, "fill_mc"); calcBarMargins(ctrlData.fullness_mc, "fill", false); calcBarMargins(ctrlData.fullness_mc, "mask", false); }; fixUpBar(ctrl, "hit", ctrl, "hit_mc"); fixUpBar(ctrl, "handle", ctrl, "handle_mc"); calcBarMargins(ctrl, "handle", true); switch (ctrlData.index){ case SEEK_BAR: setControl(SEEK_BAR_HANDLE, ctrlData.handle_mc); if (ctrlData.hit_mc != null){ setControl(SEEK_BAR_HIT, ctrlData.hit_mc); }; break; case VOLUME_BAR: setControl(VOLUME_BAR_HANDLE, ctrlData.handle_mc); if (ctrlData.hit_mc != null){ setControl(VOLUME_BAR_HIT, ctrlData.hit_mc); }; break; }; positionHandle(ctrl); ctrl.accessibilityProperties = new AccessibilityProperties(); ctrl.accessibilityProperties.silent = true; } public function get fullScreenBackgroundColor():uint{ return (_fullScreenBgColor); } public function enterFullScreenDisplayState():void{ var theRect:Rectangle; var vp:VideoPlayer; var effectiveWidth:int; var effectiveHeight:int; var videoAspectRatio:Number; var screenAspectRatio:Number; var effectiveMinWidth:int; var effectiveMinHeight:int; var skinScaleMinWidth:int; var skinScaleMinHeight:int; if (((!(_fullScreen)) && (!((_vc.stage == null))))){ if (_fullScreenTakeOver){ try { theRect = _vc.stage.fullScreenSourceRect; _fullScreenAccel = true; vp = _vc.getVideoPlayer(_vc.visibleVideoPlayerIndex); effectiveWidth = vp.videoWidth; effectiveHeight = vp.videoHeight; videoAspectRatio = (effectiveWidth / effectiveHeight); screenAspectRatio = (_vc.stage.fullScreenWidth / _vc.stage.fullScreenHeight); if (videoAspectRatio > screenAspectRatio){ effectiveHeight = (effectiveWidth / screenAspectRatio); } else { if (videoAspectRatio < screenAspectRatio){ effectiveWidth = (effectiveHeight * screenAspectRatio); }; }; effectiveMinWidth = fullScreenSourceRectMinWidth; effectiveMinHeight = fullScreenSourceRectMinHeight; if (fullScreenSourceRectMinAspectRatio > screenAspectRatio){ effectiveMinHeight = (effectiveMinWidth / screenAspectRatio); } else { if (fullScreenSourceRectMinAspectRatio < screenAspectRatio){ effectiveMinWidth = (effectiveMinHeight * screenAspectRatio); }; }; skinScaleMinWidth = (_vc.stage.fullScreenWidth / _skinScaleMaximum); skinScaleMinHeight = (_vc.stage.fullScreenHeight / _skinScaleMaximum); if ((((effectiveMinWidth < skinScaleMinWidth)) || ((effectiveMinHeight < skinScaleMinHeight)))){ effectiveMinWidth = skinScaleMinWidth; effectiveMinHeight = skinScaleMinHeight; }; if ((((effectiveWidth < effectiveMinWidth)) || ((effectiveHeight < effectiveMinHeight)))){ effectiveWidth = effectiveMinWidth; effectiveHeight = effectiveMinHeight; }; _vc.stage.fullScreenSourceRect = new Rectangle(0, 0, effectiveWidth, effectiveHeight); _vc.stage.displayState = StageDisplayState.FULL_SCREEN; } catch(re:ReferenceError) { _fullScreenAccel = false; } catch(re:SecurityError) { _fullScreenAccel = false; }; }; try { _vc.stage.displayState = StageDisplayState.FULL_SCREEN; } catch(se:SecurityError) { }; }; } flvplayback_internal function setupBarSkinPart(_arg1:Sprite, _arg2:DisplayObject, _arg3:Sprite, _arg4:String, _arg5:String, _arg6:Boolean=false):DisplayObject{ var part:DisplayObject; var partAvatar:DisplayObject; var ctrlData:ControlData; var partData:ControlData; var ctrl = _arg1; var avatar = _arg2; var definitionHolder = _arg3; var skinName = _arg4; var partName = _arg5; var required = _arg6; try { part = ctrl[partName]; } catch(re:ReferenceError) { part = null; }; if (part == null){ try { part = createSkin(definitionHolder, skinName); } catch(ve:VideoError) { if (required){ throw (ve); }; }; if (part != null){ skin_mc.addChild(part); part.x = ctrl.x; part.y = ctrl.y; partAvatar = layout_mc.getChildByName((skinName + "_mc")); if (partAvatar != null){ if (partName == "hit_mc"){ ctrlData = ctrlDataDict[ctrl]; partData = new ControlData(this, part, controls[ctrlData.index], -1); partData.avatar = partAvatar; ctrlDataDict[part] = partData; } else { part.x = (part.x + (partAvatar.x - avatar.x)); part.y = (part.y + (partAvatar.y - avatar.y)); part.width = partAvatar.width; part.height = partAvatar.height; }; if ((((part is InteractiveObject)) && ((partAvatar is InteractiveObject)))){ InteractiveObject(part).tabIndex = InteractiveObject(partAvatar).tabIndex; }; }; }; }; if (((required) && ((part == null)))){ throw (new VideoError(VideoError.MISSING_SKIN_STYLE, skinName)); }; if (part != null){ part.accessibilityProperties = new AccessibilityProperties(); part.accessibilityProperties.silent = true; }; return (part); } flvplayback_internal function startHandleDrag(_arg1:Sprite):void{ var ctrl = _arg1; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; try { if ((((ctrl["startHandleDrag"] is Function)) && (ctrl["startHandleDrag"]()))){ ctrlData.isDragging = true; return; }; } catch(re:ReferenceError) { }; var handle:Sprite = ctrlData.handle_mc; if (handle == null){ return; }; var handleData:ControlData = ctrlDataDict[handle]; var theY:Number = (ctrl.y + handleData.origY); var theWidth:Number = (isNaN(ctrlData.origWidth)) ? ctrl.width : ctrlData.origWidth; var bounds:Rectangle = new Rectangle((ctrl.x + handleData.leftMargin), theY, (theWidth - handleData.rightMargin), 0); handle.startDrag(false, bounds); ctrlData.isDragging = true; handle.focusRect = false; handle.stage.focus = handle; } public function get skinBackgroundAlpha():Number{ return (borderAlpha); } public function get volumeBarScrubTolerance():Number{ return (_volumeBarScrubTolerance); } public function get skinScaleMaximum():Number{ return (_skinScaleMaximum); } public function get skinBackgroundColor():uint{ return (borderColor); } public function get controlsEnabled():Boolean{ return (_controlsEnabled); } flvplayback_internal function handleKeyEvent(_arg1:KeyboardEvent):void{ var ctrlData:ControlData; var focusControl:InteractiveObject; var percent:Number; var nearestCuePoint:Object; var nextCuePoint:Object; var wasMuted:Boolean; var num:Number; var ctrl:Sprite; var setFocusedControl:Function; var event = _arg1; ctrlData = ctrlDataDict[event.currentTarget]; var k:int = event.keyCode; var ka:int = event.charCode; var kaBool:Boolean = (((ka >= 48)) && ((ka <= 57))); ka = int(String.fromCharCode(event.charCode)); switch (event.type){ case KeyboardEvent.KEY_DOWN: switch (event.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: if (((!((k == Keyboard.TAB))) && ((((((((((((((((((k == Keyboard.UP)) || ((k == Keyboard.DOWN)))) || ((k == Keyboard.LEFT)))) || ((k == Keyboard.RIGHT)))) || ((k == Keyboard.PAGE_UP)))) || ((k == Keyboard.PAGE_DOWN)))) || ((k == Keyboard.HOME)))) || ((k == Keyboard.END)))) || (((!(isNaN(ka))) && (kaBool))))))){ focusControl = (event.target as InteractiveObject); focusControl.stage.focus = focusControl; if (event.target == controls[SEEK_BAR_HANDLE]){ percent = _vc.playheadPercentage; nearestCuePoint = _vc.findNearestCuePoint(_vc.playheadTime); if ((((k == Keyboard.LEFT)) || ((k == Keyboard.DOWN)))){ percent = (percent - (_vc.seekBarScrubTolerance * 2)); _vc.playheadPercentage = Math.max(percent, 0); } else { if ((((k == Keyboard.RIGHT)) || ((k == Keyboard.UP)))){ if (_vc.playheadPercentage >= 99){ return; }; if (((!((nearestCuePoint == null))) && ((nearestCuePoint.index < ((nearestCuePoint.array as Array).length - 1))))){ try { nextCuePoint = _vc.findCuePoint(nearestCuePoint.array[(nearestCuePoint.index + 1)]); if (((nextCuePoint) && (_vc.isFLVCuePointEnabled(nextCuePoint)))){ if (isNaN(Number(_vc.metadata.videocodecid))){ _vc.playheadPercentage = Math.max(((nextCuePoint.time / _vc.totalTime) * 100), Math.min(99, (_vc.playheadPercentage + (_vc.seekBarScrubTolerance * 2)))); } else { _vc.playheadTime = nextCuePoint.time; }; }; } catch(err:Error) { }; } else { percent = (percent + _vc.seekBarScrubTolerance); _vc.playheadPercentage = Math.min(99, percent); }; } else { if ((((k == Keyboard.PAGE_UP)) || ((k == Keyboard.HOME)))){ _vc.playheadPercentage = 0; } else { if ((((k == Keyboard.PAGE_DOWN)) || ((k == Keyboard.END)))){ _vc.playheadPercentage = 99; }; }; }; }; } else { wasMuted = _isMuted; num = (_isMuted) ? (Math.round((cachedSoundLevel * 1000)) / 100) : (Math.round((_vc.volume * 1000)) / 100); if ((((k == Keyboard.LEFT)) || ((k == Keyboard.DOWN)))){ if (Math.floor(num) != num){ _vc.volume = (Math.floor(num) / 10); } else { _vc.volume = Math.max(0, ((num - 1) / 10)); }; } else { if ((((k == Keyboard.RIGHT)) || ((k == Keyboard.UP)))){ if (Math.round(num) != num){ _vc.volume = (Math.round(num) / 10); } else { _vc.volume = Math.min(1, ((num + 1) / 10)); }; } else { if ((((k == Keyboard.PAGE_UP)) || ((k == Keyboard.HOME)))){ _vc.volume = 1; } else { if ((((k == Keyboard.PAGE_DOWN)) || ((k == Keyboard.END)))){ _vc.volume = 0; } else { if (((!(isNaN(ka))) && (kaBool))){ _vc.volume = Math.min(1, ((ka + 1) / 10)); }; }; }; }; }; cachedSoundLevel = _vc.volume; if (wasMuted){ _isMuted = true; cachedSoundLevel = _vc.volume; _vc.volume = 0; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; }; }; break; case controls[PAUSE_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[PLAY_BUTTON] as InteractiveObject); }; break; case controls[PLAY_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[PAUSE_BUTTON] as InteractiveObject); }; break; case controls[STOP_BUTTON]: case controls[BACK_BUTTON]: case controls[FORWARD_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; event.target.tabEnabled = true; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (event.target as InteractiveObject); }; break; case controls[MUTE_ON_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[MUTE_OFF_BUTTON] as InteractiveObject); }; break; case controls[MUTE_OFF_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[MUTE_ON_BUTTON] as InteractiveObject); }; break; case controls[FULL_SCREEN_ON_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; dispatchMessage(FULL_SCREEN_ON_BUTTON); }; break; case controls[FULL_SCREEN_OFF_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; dispatchMessage(FULL_SCREEN_OFF_BUTTON); }; break; }; skinButtonControl(event.currentTarget); break; case KeyboardEvent.KEY_UP: switch (event.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: if (((!((k == Keyboard.TAB))) && ((((((((((((((((k == Keyboard.UP)) || ((k == Keyboard.DOWN)))) || ((k == Keyboard.LEFT)))) || ((k == Keyboard.RIGHT)))) || ((k == Keyboard.PAGE_UP)))) || ((k == Keyboard.PAGE_DOWN)))) || ((k == Keyboard.HOME)))) || ((k == Keyboard.END)))))){ focusControl = (event.target as InteractiveObject); focusControl.stage.focus = focusControl; }; break; default: ctrlData.state = OVER_STATE; break; }; break; }; if (focusControl != null){ if (focusControl.visible){ ctrlData.state = NORMAL_STATE; if (!focusControl.tabEnabled){ focusControl.tabEnabled = true; }; focusControl.stage.focus = focusControl; } else { ctrl = (event.currentTarget as Sprite); setFocusedControl = function (_arg1:Event):void{ if (_arg1.target.visible){ ctrlData.state = NORMAL_STATE; if (!_arg1.target.tabEnabled){ _arg1.target.tabEnabled = true; }; _arg1.target.stage.focus = _arg1.target; _arg1.target.removeEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; focusControl.addEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; } flvplayback_internal function handleIVPEvent(_arg1:IVPEvent):void{ var _local3:int; var _local4:VideoEvent; var _local5:Sprite; var _local6:ControlData; var _local7:VideoProgressEvent; var _local8:VideoPlayerState; var _local9:Number; var _local10:Number; var _local11:Number; if (_arg1.vp != _vc.visibleVideoPlayerIndex){ return; }; var _local2:uint = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; switch (_arg1.type){ case VideoEvent.STATE_CHANGE: _local4 = VideoEvent(_arg1); if (_local4.state == VideoState.BUFFERING){ if (!_bufferingOn){ _bufferingDelayTimer.reset(); _bufferingDelayTimer.start(); }; } else { _bufferingDelayTimer.reset(); _bufferingOn = false; }; if (_local4.state == VideoState.LOADING){ _progressPercent = (_vc.getVideoPlayer(_arg1.vp).isRTMP) ? 100 : 0; _local3 = SEEK_BAR; while (_local3 <= VOLUME_BAR) { _local5 = controls[_local3]; if (controls[_local3] == null){ } else { _local6 = ctrlDataDict[_local5]; if (_local6.progress_mc != null){ positionBar(_local5, "progress", _progressPercent); }; }; _local3++; }; }; _local3 = 0; while (_local3 < NUM_CONTROLS) { if (controls[_local3] == undefined){ } else { setEnabledAndVisibleForState(_local3, _local4.state); if (_local3 < NUM_BUTTONS){ skinButtonControl(controls[_local3]); }; }; _local3++; }; break; case VideoEvent.READY: case MetadataEvent.METADATA_RECEIVED: _local3 = 0; while (_local3 < NUM_CONTROLS) { if (controls[_local3] == undefined){ } else { setEnabledAndVisibleForState(_local3, _vc.state); if (_local3 < NUM_BUTTONS){ skinButtonControl(controls[_local3]); }; }; _local3++; }; if (_vc.getVideoPlayer(_arg1.vp).isRTMP){ _progressPercent = 100; _local3 = SEEK_BAR; while (_local3 <= VOLUME_BAR) { _local5 = controls[_local3]; if (_local5 == null){ } else { _local6 = ctrlDataDict[_local5]; if (_local6.progress_mc != null){ positionBar(_local5, "progress", _progressPercent); }; }; _local3++; }; }; break; case VideoEvent.PLAYHEAD_UPDATE: if (((((((!((controls[SEEK_BAR] == undefined))) && (!(_vc.isLive)))) && (!(isNaN(_vc.totalTime))))) && (!((_vc.getVideoPlayer(_vc.visibleVideoPlayerIndex).state == VideoState.SEEKING))))){ _local4 = VideoEvent(_arg1); _local10 = ((_local4.playheadTime / _vc.totalTime) * 100); if (_local10 < 0){ _local10 = 0; } else { if (_local10 > 100){ _local10 = 100; }; }; _local5 = controls[SEEK_BAR]; _local6 = ctrlDataDict[_local5]; _local6.percentage = _local10; positionHandle(_local5); }; break; case VideoProgressEvent.PROGRESS: _local7 = VideoProgressEvent(_arg1); _progressPercent = ((_local7.bytesTotal)<=0) ? 100 : ((_local7.bytesLoaded / _local7.bytesTotal) * 100); _local8 = _vc.videoPlayerStates[_arg1.vp]; _local9 = _local8.minProgressPercent; if (((!(isNaN(_local9))) && ((_local9 > _progressPercent)))){ _progressPercent = _local9; }; if (!isNaN(_vc.totalTime)){ _local11 = ((_vc.playheadTime / _vc.totalTime) * 100); if (_local11 > _progressPercent){ _progressPercent = _local11; _local8.minProgressPercent = _progressPercent; }; }; _local3 = SEEK_BAR; while (_local3 <= VOLUME_BAR) { _local5 = controls[_local3]; if (_local5 == null){ } else { _local6 = ctrlDataDict[_local5]; if (_local6.progress_mc != null){ positionBar(_local5, "progress", _progressPercent); }; }; _local3++; }; break; }; _vc.activeVideoPlayerIndex = _local2; } flvplayback_internal function layoutSkin():void{ var i:int; var borderRect:Rectangle; var forceSkinAutoHide:Boolean; var minWidth:Number; var vidWidth:Number; var minHeight:Number; var vidHeight:Number; if (layout_mc == null){ return; }; if (skinLoadDelayCount < 2){ return; }; var video_mc:DisplayObject = layout_mc["video_mc"]; if (video_mc == null){ throw (new Error("No layout_mc.video_mc")); }; placeholderLeft = video_mc.x; placeholderRight = (video_mc.x + video_mc.width); placeholderTop = video_mc.y; placeholderBottom = (video_mc.y + video_mc.height); videoLeft = (_vc.x - _vc.registrationX); videoRight = (videoLeft + _vc.width); videoTop = (_vc.y - _vc.registrationY); videoBottom = (videoTop + _vc.height); if (((((_fullScreen) && (_fullScreenTakeOver))) && (!((border_mc == null))))){ borderRect = calcLayoutControl(border_mc); forceSkinAutoHide = false; if ((((borderRect.width > 0)) && ((borderRect.height > 0)))){ if (borderRect.x < 0){ placeholderLeft = (placeholderLeft + (videoLeft - borderRect.x)); forceSkinAutoHide = true; }; if ((borderRect.x + borderRect.width) > _vc.registrationWidth){ placeholderRight = (placeholderRight + ((borderRect.x + borderRect.width) - videoRight)); forceSkinAutoHide = true; }; if (borderRect.y < 0){ placeholderTop = (placeholderTop + (videoTop - borderRect.y)); forceSkinAutoHide = true; }; if ((borderRect.y + borderRect.height) > _vc.registrationHeight){ placeholderBottom = (placeholderBottom + ((borderRect.y + borderRect.height) - videoBottom)); forceSkinAutoHide = true; }; if (forceSkinAutoHide){ _skinAutoHide = true; setupSkinAutoHide(true); }; }; }; try { if (!isNaN(layout_mc["minWidth"])){ minWidth = layout_mc["minWidth"]; vidWidth = (videoRight - videoLeft); if ((((minWidth > 0)) && ((minWidth > vidWidth)))){ videoLeft = (videoLeft - ((minWidth - vidWidth) / 2)); videoRight = (minWidth + videoLeft); }; }; } catch(re1:ReferenceError) { }; try { if (!isNaN(layout_mc["minHeight"])){ minHeight = layout_mc["minHeight"]; vidHeight = (videoBottom - videoTop); if ((((minHeight > 0)) && ((minHeight > vidHeight)))){ videoTop = (videoTop - ((minHeight - vidHeight) / 2)); videoBottom = (minHeight + videoTop); }; }; } catch(re2:ReferenceError) { }; i = 0; while (i < customClips.length) { layoutControl(customClips[i]); if (customClips[i] == border_mc){ bitmapCopyBorder(); }; i = (i + 1); }; i = 0; while (i < NUM_CONTROLS) { layoutControl(controls[i]); i = (i + 1); }; } public function set bufferingDelayInterval(_arg1:Number):void{ if (_bufferingDelayTimer.delay == _arg1){ return; }; _bufferingDelayTimer.delay = _arg1; } flvplayback_internal function setupButtonSkinState(_arg1:Sprite, _arg2:Sprite, _arg3:String, _arg4:DisplayObject=null):DisplayObject{ var stateSkin:DisplayObject; var ctrl = _arg1; var definitionHolder = _arg2; var skinName = _arg3; var defaultSkin = _arg4; try { stateSkin = createSkin(definitionHolder, skinName); } catch(ve:VideoError) { if (defaultSkin != null){ stateSkin = null; } else { throw (ve); }; }; if (stateSkin != null){ stateSkin.visible = false; ctrl.addChild(stateSkin); } else { if (defaultSkin != null){ stateSkin = defaultSkin; }; }; return (stateSkin); } flvplayback_internal function setEnabledAndVisibleForState(_arg1:int, _arg2:String):void{ var _local6:ControlData; var _local7:Boolean; var _local8:ControlData; var _local9:ControlData; var _local10:ControlData; var _local11:ControlData; var _local3:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; var _local4:String = _arg2; if ((((_local4 == VideoState.BUFFERING)) && (!(_bufferingOn)))){ _local4 = VideoState.PLAYING; }; var _local5:Sprite = controls[_arg1]; if (_local5 == null){ return; }; _local6 = ctrlDataDict[_local5]; if (_local6 == null){ return; }; switch (_arg1){ case VOLUME_BAR: case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: _local6.enabled = true; break; case FULL_SCREEN_ON_BUTTON: _local6.enabled = !(_fullScreen); if (controls[FULL_SCREEN_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case FULL_SCREEN_OFF_BUTTON: _local6.enabled = _fullScreen; if (controls[FULL_SCREEN_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case MUTE_ON_BUTTON: _local6.enabled = !(_isMuted); if (controls[MUTE_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case MUTE_OFF_BUTTON: _local6.enabled = _isMuted; if (controls[MUTE_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; default: switch (_local4){ case VideoState.LOADING: case VideoState.CONNECTION_ERROR: _local6.enabled = false; break; case VideoState.DISCONNECTED: _local6.enabled = ((!((_vc.source == null))) && (!((_vc.source == "")))); break; case VideoState.SEEKING: break; default: _local6.enabled = true; break; }; break; }; switch (_arg1){ case SEEK_BAR: switch (_local4){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.REWINDING: case VideoState.SEEKING: _local6.enabled = true; break; case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; default: _local6.enabled = false; break; }; if (_local6.enabled){ _local6.enabled = !(isNaN(_vc.totalTime)); }; if (_local6.handle_mc != null){ _local8 = ctrlDataDict[_local6.handle_mc]; _local8.enabled = _local6.enabled; _local6.handle_mc.visible = _local8.enabled; }; if (_local6.hit_mc != null){ _local9 = ctrlDataDict[_local6.hit_mc]; _local9.enabled = _local6.enabled; _local6.hit_mc.visible = _local9.enabled; }; _local7 = ((((((!(_bufferingBarHides)) || (_local6.enabled))) || ((controls[BUFFERING_BAR] == undefined)))) || (!(controls[BUFFERING_BAR].visible))); _local5.visible = _local7; if (_local6.progress_mc != null){ _local6.progress_mc.visible = _local7; _local10 = ctrlDataDict[_local6.progress_mc]; if (_local10.fill_mc != null){ _local10.fill_mc.visible = _local7; }; }; if (_local6.fullness_mc != null){ _local6.fullness_mc.visible = _local7; _local11 = ctrlDataDict[_local6.fullness_mc]; if (_local11.fill_mc != null){ _local11.fill_mc.visible = _local7; }; }; break; case BUFFERING_BAR: switch (_local4){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.REWINDING: case VideoState.SEEKING: _local6.enabled = false; break; default: _local6.enabled = true; break; }; _local5.visible = _local6.enabled; if (_local6.fill_mc != null){ _local6.fill_mc.visible = _local6.enabled; }; break; case PAUSE_BUTTON: switch (_local4){ case VideoState.DISCONNECTED: case VideoState.STOPPED: case VideoState.PAUSED: case VideoState.REWINDING: _local6.enabled = false; break; case VideoState.PLAYING: _local6.enabled = true; break; case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; }; if (controls[PLAY_PAUSE_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case PLAY_BUTTON: switch (_local4){ case VideoState.PLAYING: _local6.enabled = false; break; case VideoState.STOPPED: case VideoState.PAUSED: _local6.enabled = true; break; case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; }; if (controls[PLAY_PAUSE_BUTTON] != undefined){ _local5.visible = !(controls[PAUSE_BUTTON].visible); }; break; case STOP_BUTTON: switch (_local4){ case VideoState.DISCONNECTED: case VideoState.STOPPED: _local6.enabled = false; _local5.tabEnabled = false; break; case VideoState.PAUSED: case VideoState.PLAYING: case VideoState.BUFFERING: _local6.enabled = true; _local5.tabEnabled = true; break; }; break; case BACK_BUTTON: case FORWARD_BUTTON: switch (_local4){ case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); _local5.tabEnabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; }; }; _local5.mouseEnabled = _local6.enabled; _vc.activeVideoPlayerIndex = _local3; } public function set fullScreenTakeOver(_arg1:Boolean):void{ var v = _arg1; if (_fullScreenTakeOver != v){ _fullScreenTakeOver = v; if (_fullScreenTakeOver){ enterFullScreenTakeOver(); } else { if (((((!((_vc.stage == null))) && (_fullScreen))) && (_fullScreenAccel))){ try { _vc.stage.displayState = StageDisplayState.NORMAL; } catch(se:SecurityError) { }; }; exitFullScreenTakeOver(); }; }; } flvplayback_internal function enterFullScreenTakeOver():void{ var i:int; var fullScreenBG:Sprite; var vp:VideoPlayer; if (((!(_fullScreen)) || (!((cacheFLVPlaybackParent == null))))){ return; }; _vc.removeEventListener(LayoutEvent.LAYOUT, handleLayoutEvent); _vc.removeEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleLayoutEvent); _vc.removeEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.removeEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); try { cacheFLVPlaybackScaleMode = new Array(); cacheFLVPlaybackAlign = new Array(); i = 0; while (i < _vc.videoPlayers.length) { vp = (_vc.videoPlayers[i] as VideoPlayer); if (vp != null){ cacheFLVPlaybackScaleMode[i] = vp.scaleMode; cacheFLVPlaybackAlign[i] = vp.align; }; i = (i + 1); }; cacheFLVPlaybackParent = _vc.parent; cacheFLVPlaybackIndex = _vc.parent.getChildIndex(_vc); cacheFLVPlaybackLocation = new Rectangle(_vc.registrationX, _vc.registrationY, _vc.registrationWidth, _vc.registrationHeight); if (!_fullScreenAccel){ cacheStageAlign = _vc.stage.align; cacheStageScaleMode = _vc.stage.scaleMode; _vc.stage.align = StageAlign.TOP_LEFT; _vc.stage.scaleMode = StageScaleMode.NO_SCALE; }; _vc.align = VideoAlign.CENTER; _vc.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO; _vc.registrationX = 0; _vc.registrationY = 0; _vc.setSize(_vc.stage.stageWidth, _vc.stage.stageHeight); if (_vc.stage != _vc.parent){ _vc.stage.addChild(_vc); } else { _vc.stage.setChildIndex(_vc, (_vc.stage.numChildren - 1)); }; fullScreenBG = Sprite(_vc.getChildByName("fullScreenBG")); if (fullScreenBG == null){ fullScreenBG = new Sprite(); fullScreenBG.name = "fullScreenBG"; _vc.addChildAt(fullScreenBG, 0); } else { _vc.setChildIndex(fullScreenBG, 0); }; fullScreenBG.graphics.beginFill(_fullScreenBgColor); fullScreenBG.graphics.drawRect(0, 0, _vc.stage.stageWidth, _vc.stage.stageHeight); layoutSkin(); setupSkinAutoHide(false); if (hitTarget_mc != null){ hitTarget_mc.graphics.clear(); hitTarget_mc.graphics.lineStyle(0, 0, 0); hitTarget_mc.graphics.drawRect(0, 0, _vc.stage.stageWidth, _vc.stage.stageHeight); }; } catch(err:Error) { cacheFLVPlaybackParent = null; }; _vc.addEventListener(LayoutEvent.LAYOUT, handleLayoutEvent); _vc.addEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleLayoutEvent); _vc.addEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); } public function set seekBarScrubTolerance(_arg1:Number):void{ _seekBarScrubTolerance = _arg1; } flvplayback_internal function cleanupHandle(_arg1:Object):void{ var e:Event; var ctrl:Sprite; var ctrlData:ControlData; var ctrlOrEvent = _arg1; try { if ((ctrlOrEvent is Event)){ e = Event(ctrlOrEvent); }; ctrl = ((e == null)) ? Sprite(ctrlOrEvent) : Sprite(e.currentTarget); ctrlData = ctrlDataDict[ctrl]; if ((((ctrlData == null)) || ((e == null)))){ ctrl.removeEventListener(Event.REMOVED_FROM_STAGE, cleanupHandle, false); if (ctrlData == null){ return; }; }; ctrl.removeEventListener(Event.ENTER_FRAME, finishAddBarControl); if (ctrlData.handle_mc != null){ if (ctrlData.handle_mc.parent != null){ ctrlData.handle_mc.parent.removeChild(ctrlData.handle_mc); }; delete ctrlDataDict[ctrlData.handle_mc]; ctrlData.handle_mc = null; }; if (ctrlData.hit_mc != null){ if (ctrlData.hit_mc.parent != null){ ctrlData.hit_mc.parent.removeChild(ctrlData.hit_mc); }; delete ctrlDataDict[ctrlData.hit_mc]; ctrlData.hit_mc = null; }; } catch(err:Error) { }; } flvplayback_internal function assignTabIndexes(_arg1:int):int{ var controlsSlice:Array; var customSlice:Array; var sortedControls:Array; var i:int; var ctrl:Sprite; var startTabbing = _arg1; if (startTabbing){ startTabIndex = startTabbing; endTabIndex = (startTabIndex + 1); } else { if (_vc.tabIndex){ startTabIndex = _vc.tabIndex; endTabIndex = (startTabIndex + 1); } else { return (endTabIndex); }; }; var sortByPosition:Function = function (_arg1:DisplayObject, _arg2:DisplayObject):int{ var _local3:Rectangle = _arg1.getBounds(_vc); var _local4:Rectangle = _arg2.getBounds(_vc); if (_local3.x > _local4.x){ return (1); }; if (_local3.x < _local4.x){ return (-1); }; if (_local3.y > _local4.y){ return (-1); }; if (_local3.y < _local4.y){ return (1); }; return (0); }; try { controlsSlice = controls.slice(); if (((customClips) && ((customClips.length > 0)))){ customSlice = customClips.slice(); }; sortedControls = (customSlice) ? controlsSlice.concat(customSlice) : controlsSlice; sortedControls.sort(sortByPosition); while (i < sortedControls.length) { ctrl = (sortedControls[i] as Sprite); ctrl.tabIndex = ++endTabIndex; if (!ctrl.tabEnabled){ ctrl.tabEnabled = false; }; i = (i + 1); }; } catch(err:Error) { }; return (++endTabIndex); } flvplayback_internal static function getNumberPropSafe(_arg1:Object, _arg2:String):Number{ var numProp:*; var obj = _arg1; var propName = _arg2; try { numProp = obj[propName]; return (Number(numProp)); } catch(re:ReferenceError) { }; return (NaN); } flvplayback_internal static function getBooleanPropSafe(_arg1:Object, _arg2:String):Boolean{ var boolProp:*; var obj = _arg1; var propName = _arg2; try { boolProp = obj[propName]; return (Boolean(boolProp)); } catch(re:ReferenceError) { }; return (false); } flvplayback_internal static function initLayoutNameToIndexMappings():void{ layoutNameToIndexMappings = new Object(); var _local1:int; while (_local1 < layoutNameArray.length) { if (layoutNameArray[_local1] != null){ layoutNameToIndexMappings[layoutNameArray[_local1]] = _local1; }; _local1++; }; } } }//package fl.videoSection 50//VideoAlign (fl.video.VideoAlign) package fl.video { public final class VideoAlign { public static const CENTER:String = "center"; public static const LEFT:String = "left"; public static const BOTTOM_RIGHT:String = "bottomRight"; public static const BOTTOM:String = "bottom"; public static const TOP_LEFT:String = "topLeft"; public static const TOP_RIGHT:String = "topRight"; public static const TOP:String = "top"; public static const BOTTOM_LEFT:String = "bottomLeft"; public static const RIGHT:String = "right"; } }//package fl.videoSection 51//VideoError (fl.video.VideoError) package fl.video { public class VideoError extends Error { private var _code:uint; public static const INVALID_SOURCE:uint = 1004; flvplayback_internal static const ERROR_MSG:Array = ["Unable to make connection to server or to find FLV on server", "No matching cue point found", "Illegal cue point", "Invalid seek", "Invalid source", "Invalid xml", "No bitrate match, must be no default flv", "Cannot delete default VideoPlayer", "VideoPlayer.iNCManagerClass has not been set or its value is invalid", "Null url parameter sent to load()", "Skin is missing a required style definition or its value is invalid", "Unsupported property", "VideoPlayer.netStreamClientClass has not been set or its value is invalid"]; public static const NULL_URL_LOAD:uint = 1009; public static const INVALID_XML:uint = 1005; flvplayback_internal static const BASE_ERROR_CODE:uint = 1000; public static const DELETE_DEFAULT_PLAYER:uint = 1007; public static const SHORT_VERSION:String = "2.1"; public static const UNSUPPORTED_PROPERTY:uint = 1011; public static const ILLEGAL_CUE_POINT:uint = 1002; public static const INVALID_SEEK:uint = 1003; public static const NO_CONNECTION:uint = 1000; public static const MISSING_SKIN_STYLE:uint = 1010; public static const INCMANAGER_CLASS_UNSET:uint = 1008; public static const NO_BITRATE_MATCH:uint = 1006; public static const NETSTREAM_CLIENT_CLASS_UNSET:uint = 1012; public static const VERSION:String = "2.1.0.19"; public function VideoError(_arg1:uint, _arg2:String=null){ super((((("" + _arg1) + ": ") + ERROR_MSG[(_arg1 - BASE_ERROR_CODE)]) + ((_arg2)==null) ? "" : (": " + _arg2))); name = "VideoError"; _code = _arg1; } public function get code():uint{ return (_code); } } }//package fl.videoSection 52//VideoEvent (fl.video.VideoEvent) package fl.video { import flash.events.*; public class VideoEvent extends Event implements IVPEvent { private var _playheadTime:Number; private var _vp:uint; private var _state:String; public static const FAST_FORWARD:String = "fastForward"; public static const READY:String = "ready"; public static const SKIN_LOADED:String = "skinLoaded"; public static const SCRUB_FINISH:String = "scrubFinish"; public static const BUFFERING_STATE_ENTERED:String = "bufferingStateEntered"; public static const STOPPED_STATE_ENTERED:String = "stoppedStateEntered"; public static const AUTO_REWOUND:String = "autoRewound"; public static const SCRUB_START:String = "scrubStart"; public static const PLAYHEAD_UPDATE:String = "playheadUpdate"; public static const SEEKED:String = "seeked"; public static const PLAYING_STATE_ENTERED:String = "playingStateEntered"; public static const CLOSE:String = "close"; public static const PAUSED_STATE_ENTERED:String = "pausedStateEntered"; public static const COMPLETE:String = "complete"; public static const REWIND:String = "rewind"; public static const STATE_CHANGE:String = "stateChange"; public function VideoEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:Number=NaN, _arg6:uint=0){ super(_arg1, _arg2, _arg3); _state = _arg4; _playheadTime = _arg5; _vp = _arg6; } public function get playheadTime():Number{ return (_playheadTime); } public function set playheadTime(_arg1:Number):void{ _playheadTime = _arg1; } public function set state(_arg1:String):void{ _state = _arg1; } public function get state():String{ return (_state); } public function set vp(_arg1:uint):void{ _vp = _arg1; } public function get vp():uint{ return (_vp); } override public function clone():Event{ return (new VideoEvent(type, bubbles, cancelable, state, playheadTime, vp)); } } }//package fl.videoSection 53//VideoPlayer (fl.video.VideoPlayer) package fl.video { import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.utils.*; public class VideoPlayer extends Video { protected var _align:String; protected var _registrationWidth:Number; flvplayback_internal var _updateProgressTimer:Timer; flvplayback_internal var _atEndCheckPlayhead:Number; flvplayback_internal var _hiddenForResize:Boolean; flvplayback_internal var startProgressTime:Number; protected var _volume:Number; flvplayback_internal var _invalidSeekTime:Boolean; protected var _isLive:Boolean; flvplayback_internal var _readyDispatched:Boolean; flvplayback_internal var lastUpdateTimeStuckCount:Number; protected var _ns:NetStream; protected var _streamLength:Number; flvplayback_internal var _bufferState:String; flvplayback_internal var _rtmpDoSeekTimer:Timer; flvplayback_internal var lastUpdateTimeStuckCountMax:int;// = 10 protected var _contentPath:String; flvplayback_internal var _lastUpdateTime:Number; protected var _metadata:Object; protected var __visible:Boolean; flvplayback_internal var autoResizeMetadataDelayMax:Number;// = 5 protected var _scaleMode:String; flvplayback_internal var _sawPlayStop:Boolean; flvplayback_internal var _atEnd:Boolean; flvplayback_internal var _sawSeekNotify:Boolean; flvplayback_internal var _idleTimeoutTimer:Timer; flvplayback_internal var _prevVideoWidth:int; protected var _registrationX:Number; protected var _registrationY:Number; protected var _bufferTime:Number; flvplayback_internal var _cachedState:String; flvplayback_internal var totalDownloadTime:Number; flvplayback_internal var _cachedPlayheadTime:Number; protected var _autoPlay:Boolean; protected var _autoRewind:Boolean; flvplayback_internal var _invalidSeekRecovery:Boolean; flvplayback_internal var _hiddenRewindPlayheadTime:Number; flvplayback_internal var _prevVideoHeight:int; protected var _ncMgr:INCManager; protected var _soundTransform:SoundTransform; flvplayback_internal var _httpDoSeekCount:Number; flvplayback_internal var oldRegistrationBounds:Rectangle; flvplayback_internal var _cmdQueue:Array; flvplayback_internal var _updateTimeTimer:Timer; flvplayback_internal var _startingPlay:Boolean; flvplayback_internal var httpDoSeekMaxCount:Number;// = 4 flvplayback_internal var _httpDoSeekTimer:Timer; flvplayback_internal var baselineProgressTime:Number; flvplayback_internal var _autoResizeTimer:Timer; flvplayback_internal var _autoResizeDone:Boolean; protected var _state:String; protected var _videoWidth:int; flvplayback_internal var _finishAutoResizeTimer:Timer; flvplayback_internal var _resizeImmediatelyOnMetadata:Boolean; flvplayback_internal var _currentPos:Number; flvplayback_internal var oldBounds:Rectangle; protected var _videoHeight:int; flvplayback_internal var _delayedBufferingTimer:Timer; flvplayback_internal var waitingForEnough:Boolean; flvplayback_internal var _hiddenForResizeMetadataDelay:Number; protected var _registrationHeight:Number; flvplayback_internal var autoResizePlayheadTimeout:Number;// = 0.5 flvplayback_internal var _rtmpDoStopAtEndTimer:Timer; flvplayback_internal var _lastSeekTime:Number; flvplayback_internal var totalProgressTime:Number; flvplayback_internal static const FINISH_AUTO_RESIZE_INTERVAL:Number = 250; flvplayback_internal static const DEFAULT_AUTO_RESIZE_PLAYHEAD_TIMEOUT:Number = 0.5; flvplayback_internal static const DEFAULT_AUTO_RESIZE_METADATA_DELAY_MAX:Number = 5; public static const SHORT_VERSION:String = "2.1"; flvplayback_internal static const HTTP_DO_SEEK_INTERVAL:Number = 250; flvplayback_internal static const DEFAULT_HTTP_DO_SEEK_MAX_COUNT:Number = 4; flvplayback_internal static const RTMP_DO_SEEK_INTERVAL:Number = 100; flvplayback_internal static const HTTP_DELAYED_BUFFERING_INTERVAL:Number = 100; public static const DEFAULT_UPDATE_TIME_INTERVAL:Number = 250; flvplayback_internal static const AUTO_RESIZE_INTERVAL:Number = 100; public static const DEFAULT_IDLE_TIMEOUT_INTERVAL:Number = 300000; flvplayback_internal static const DEFAULT_LAST_UPDATE_TIME_STUCK_COUNT_MAX:int = 10; flvplayback_internal static const RTMP_DO_STOP_AT_END_INTERVAL:Number = 500; public static const VERSION:String = "2.1.0.19"; public static const DEFAULT_UPDATE_PROGRESS_INTERVAL:Number = 250; public static var netStreamClientClass:Object = VideoPlayerClient; public static var iNCManagerClass:Object = "fl.video.NCManager"; flvplayback_internal static var BUFFER_FLUSH:String = "bufferFlush"; flvplayback_internal static var BUFFER_FULL:String = "bufferFull"; flvplayback_internal static var BUFFER_EMPTY:String = "bufferEmpty"; public function VideoPlayer(_arg1:int=320, _arg2:int=240){ super(_arg1, _arg2); _registrationX = x; _registrationY = y; _registrationWidth = _arg1; _registrationHeight = _arg2; _state = VideoState.DISCONNECTED; _cachedState = _state; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _cachedPlayheadTime = 0; _metadata = null; _startingPlay = false; _invalidSeekTime = false; _invalidSeekRecovery = false; _currentPos = 0; _atEnd = false; _streamLength = 0; _cmdQueue = new Array(); _readyDispatched = false; _autoResizeDone = false; _lastUpdateTime = NaN; lastUpdateTimeStuckCount = 0; _sawSeekNotify = false; _hiddenForResize = false; _hiddenForResizeMetadataDelay = 0; _resizeImmediatelyOnMetadata = false; _videoWidth = -1; _videoHeight = -1; _prevVideoWidth = 0; _prevVideoHeight = 0; _updateTimeTimer = new Timer(DEFAULT_UPDATE_TIME_INTERVAL); _updateTimeTimer.addEventListener(TimerEvent.TIMER, doUpdateTime); _updateProgressTimer = new Timer(DEFAULT_UPDATE_PROGRESS_INTERVAL); _updateProgressTimer.addEventListener(TimerEvent.TIMER, doUpdateProgress); _idleTimeoutTimer = new Timer(DEFAULT_IDLE_TIMEOUT_INTERVAL, 1); _idleTimeoutTimer.addEventListener(TimerEvent.TIMER, doIdleTimeout); _autoResizeTimer = new Timer(AUTO_RESIZE_INTERVAL); _autoResizeTimer.addEventListener(TimerEvent.TIMER, doAutoResize); _rtmpDoStopAtEndTimer = new Timer(RTMP_DO_STOP_AT_END_INTERVAL); _rtmpDoStopAtEndTimer.addEventListener(TimerEvent.TIMER, rtmpDoStopAtEnd); _rtmpDoSeekTimer = new Timer(RTMP_DO_SEEK_INTERVAL); _rtmpDoSeekTimer.addEventListener(TimerEvent.TIMER, rtmpDoSeek); _httpDoSeekTimer = new Timer(HTTP_DO_SEEK_INTERVAL); _httpDoSeekTimer.addEventListener(TimerEvent.TIMER, httpDoSeek); _httpDoSeekCount = 0; _finishAutoResizeTimer = new Timer(FINISH_AUTO_RESIZE_INTERVAL, 1); _finishAutoResizeTimer.addEventListener(TimerEvent.TIMER, finishAutoResize); _delayedBufferingTimer = new Timer(HTTP_DELAYED_BUFFERING_INTERVAL); _delayedBufferingTimer.addEventListener(TimerEvent.TIMER, doDelayedBuffering); _isLive = false; _align = VideoAlign.CENTER; _scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO; _autoPlay = true; _autoRewind = false; _bufferTime = 0.1; _soundTransform = new SoundTransform(); _volume = _soundTransform.volume; __visible = true; _contentPath = ""; waitingForEnough = false; baselineProgressTime = NaN; startProgressTime = NaN; totalDownloadTime = NaN; totalProgressTime = NaN; } public function get playheadTime():Number{ var _local1:Number = ((_ns)==null) ? _currentPos : _ns.time; if (((!((_metadata == null))) && (!((_metadata.audiodelay == undefined))))){ _local1 = (_local1 - _metadata.audiodelay); if (_local1 < 0){ _local1 = 0; }; }; return (_local1); } public function stop():void{ if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.STOP); return; }; execQueuedCmds(); }; }; if ((((_state == VideoState.STOPPED)) || ((_ns == null)))){ return; }; if (_ncMgr.isRTMP){ if (((_autoRewind) && (!(_isLive)))){ _currentPos = 0; _play(0, 0); _state = VideoState.STOPPED; setState(VideoState.REWINDING); } else { closeNS(true); setState(VideoState.STOPPED); }; } else { _pause(true); if (_autoRewind){ _seek(0); _state = VideoState.STOPPED; setState(VideoState.REWINDING); } else { setState(VideoState.STOPPED); }; }; } public function setScale(_arg1:Number, _arg2:Number):void{ super.scaleX = _arg1; super.scaleY = _arg2; _registrationWidth = width; _registrationHeight = height; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.x = _registrationX; super.y = _registrationY; break; }; } public function set playheadTime(_arg1:Number):void{ seek(_arg1); } override public function get videoWidth():int{ if (_videoWidth > 0){ return (_videoWidth); }; if (((((!((_metadata == null))) && (!(isNaN(_metadata.width))))) && (!(isNaN(_metadata.height))))){ if ((((_metadata.width == _metadata.height)) && (_readyDispatched))){ return (super.videoWidth); }; return (int(_metadata.width)); }; if (_readyDispatched){ return (super.videoWidth); }; return (-1); } public function get scaleMode():String{ return (_scaleMode); } public function get progressInterval():Number{ return (_updateProgressTimer.delay); } public function set align(_arg1:String):void{ if (_align != _arg1){ switch (_arg1){ case VideoAlign.CENTER: case VideoAlign.TOP: case VideoAlign.LEFT: case VideoAlign.BOTTOM: case VideoAlign.RIGHT: case VideoAlign.TOP_LEFT: case VideoAlign.TOP_RIGHT: case VideoAlign.BOTTOM_LEFT: case VideoAlign.BOTTOM_RIGHT: break; default: return; }; _align = _arg1; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; }; }; } public function set scaleMode(_arg1:String):void{ if (_scaleMode != _arg1){ switch (_arg1){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: case VideoScaleMode.EXACT_FIT: break; default: return; }; if ((((((_scaleMode == VideoScaleMode.EXACT_FIT)) && (_resizeImmediatelyOnMetadata))) && ((((_videoWidth < 0)) || ((_videoHeight < 0)))))){ _resizeImmediatelyOnMetadata = false; }; _scaleMode = _arg1; startAutoResize(); }; } public function get source():String{ return (_contentPath); } flvplayback_internal function doUpdateTime(_arg1:TimerEvent=null):void{ var _local2:Number = playheadTime; if (_local2 != _atEndCheckPlayhead){ _atEndCheckPlayhead = NaN; }; switch (_state){ case VideoState.STOPPED: case VideoState.PAUSED: case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: _updateTimeTimer.stop(); break; case VideoState.PLAYING: case VideoState.BUFFERING: if (((((((((!((_ncMgr == null))) && (!(_ncMgr.isRTMP)))) && ((_lastUpdateTime == _local2)))) && (!((_ns == null))))) && ((_ns.bytesLoaded == _ns.bytesTotal)))){ if (lastUpdateTimeStuckCount > lastUpdateTimeStuckCountMax){ lastUpdateTimeStuckCount = 0; httpDoStopAtEnd(); } else { lastUpdateTimeStuckCount++; }; }; }; if (_lastUpdateTime != _local2){ dispatchEvent(new VideoEvent(VideoEvent.PLAYHEAD_UPDATE, false, false, _state, _local2)); _lastUpdateTime = _local2; lastUpdateTimeStuckCount = 0; }; } flvplayback_internal function rtmpNetStatus(_arg1:NetStatusEvent):void{ if (_state == VideoState.CONNECTION_ERROR){ return; }; switch (_arg1.info.code){ case "NetStream.Play.Stop": if (_startingPlay){ return; }; switch (_state){ case VideoState.RESIZING: if (_hiddenForResize){ finishAutoResize(); }; break; case VideoState.LOADING: case VideoState.STOPPED: case VideoState.PAUSED: break; default: _sawPlayStop = true; if (((!(_rtmpDoStopAtEndTimer.running)) && ((((_bufferState == BUFFER_FLUSH)) || ((((_ns.bufferTime <= 0.1)) && ((_ns.bufferLength <= 0.1)))))))){ _cachedPlayheadTime = playheadTime; _rtmpDoStopAtEndTimer.reset(); _rtmpDoStopAtEndTimer.start(); }; break; }; break; case "NetStream.Buffer.Empty": switch (_bufferState){ case BUFFER_FULL: if (_sawPlayStop){ rtmpDoStopAtEnd(); } else { if (_state == VideoState.PLAYING){ setState(VideoState.BUFFERING); }; }; break; }; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; break; case "NetStream.Buffer.Flush": if (((_sawSeekNotify) && ((_state == VideoState.SEEKING)))){ _bufferState = BUFFER_EMPTY; _sawPlayStop = false; setStateFromCachedState(false); doUpdateTime(); execQueuedCmds(); }; if (((((!(_rtmpDoStopAtEndTimer.running)) && (_sawPlayStop))) && ((((_bufferState == BUFFER_EMPTY)) || ((((_ns.bufferTime <= 0.1)) && ((_ns.bufferLength <= 0.1)))))))){ _cachedPlayheadTime = playheadTime; _rtmpDoStopAtEndTimer.reset(); _rtmpDoStopAtEndTimer.start(); }; switch (_bufferState){ case BUFFER_EMPTY: if (!_hiddenForResize){ if ((((((_state == VideoState.LOADING)) && ((_cachedState == VideoState.PLAYING)))) || ((_state == VideoState.BUFFERING)))){ setState(VideoState.PLAYING); } else { if (_cachedState == VideoState.BUFFERING){ _cachedState = VideoState.PLAYING; }; }; }; _bufferState = BUFFER_FLUSH; break; default: if (_state == VideoState.BUFFERING){ setStateFromCachedState(); }; break; }; break; case "NetStream.Buffer.Full": if (((_sawSeekNotify) && ((_state == VideoState.SEEKING)))){ _bufferState = BUFFER_EMPTY; _sawPlayStop = false; setStateFromCachedState(false); doUpdateTime(); execQueuedCmds(); }; switch (_bufferState){ case BUFFER_EMPTY: _bufferState = BUFFER_FULL; if (!_hiddenForResize){ if ((((((_state == VideoState.LOADING)) && ((_cachedState == VideoState.PLAYING)))) || ((_state == VideoState.BUFFERING)))){ setState(VideoState.PLAYING); } else { if (_cachedState == VideoState.BUFFERING){ _cachedState = VideoState.PLAYING; }; }; if (_rtmpDoStopAtEndTimer.running){ _sawPlayStop = true; _rtmpDoStopAtEndTimer.reset(); }; }; break; case BUFFER_FLUSH: _bufferState = BUFFER_FULL; if (_rtmpDoStopAtEndTimer.running){ _sawPlayStop = true; _rtmpDoStopAtEndTimer.reset(); }; break; }; if (_state == VideoState.BUFFERING){ setStateFromCachedState(); }; break; case "NetStream.Pause.Notify": if ((((_state == VideoState.RESIZING)) && (_hiddenForResize))){ finishAutoResize(); }; break; case "NetStream.Unpause.Notify": if (_state == VideoState.PAUSED){ _state = VideoState.PLAYING; setState(VideoState.BUFFERING); } else { _cachedState = VideoState.PLAYING; }; break; case "NetStream.Play.Start": _rtmpDoStopAtEndTimer.reset(); _bufferState = BUFFER_EMPTY; _sawPlayStop = false; if (_startingPlay){ _startingPlay = false; _cachedPlayheadTime = playheadTime; } else { if (_state == VideoState.PLAYING){ setState(VideoState.BUFFERING); }; }; break; case "NetStream.Play.Reset": _rtmpDoStopAtEndTimer.reset(); if (_state == VideoState.REWINDING){ _rtmpDoSeekTimer.reset(); if ((((playheadTime == 0)) || ((playheadTime < _cachedPlayheadTime)))){ setStateFromCachedState(); } else { _cachedPlayheadTime = playheadTime; _rtmpDoSeekTimer.start(); }; }; break; case "NetStream.Seek.Notify": if (playheadTime != _cachedPlayheadTime){ setStateFromCachedState(false); doUpdateTime(); execQueuedCmds(); } else { _sawSeekNotify = true; _rtmpDoSeekTimer.start(); }; break; case "Netstream.Play.UnpublishNotify": break; case "Netstream.Play.PublishNotify": break; case "NetStream.Play.StreamNotFound": closeNS(false); if (!_ncMgr.connectAgain()){ setState(VideoState.CONNECTION_ERROR); }; break; case "NetStream.Play.Failed": case "NetStream.Failed": case "NetStream.Play.FileStructureInvalid": case "NetStream.Play.NoSupportedTrackFound": setState(VideoState.CONNECTION_ERROR); break; }; } public function get ncMgr():INCManager{ if (_ncMgr == null){ createINCManager(); }; return (_ncMgr); } public function set progressInterval(_arg1:Number):void{ _updateProgressTimer.delay = _arg1; } flvplayback_internal function createINCManager():void{ var theClass:Class; try { if ((iNCManagerClass is String)){ theClass = Class(getDefinitionByName(String(iNCManagerClass))); } else { if ((iNCManagerClass is Class)){ theClass = Class(iNCManagerClass); }; }; } catch(e:Error) { theClass = null; }; if (theClass == null){ throw (new VideoError(VideoError.INCMANAGER_CLASS_UNSET, ((iNCManagerClass)==null) ? "null" : iNCManagerClass.toString())); }; _ncMgr = new (theClass); _ncMgr.videoPlayer = this; } flvplayback_internal function doAutoResize(_arg1:TimerEvent=null):void{ var _local3:int; var _local4:int; var _local5:Number; var _local6:Number; if (_autoResizeTimer.running){ switch (_state){ case VideoState.RESIZING: case VideoState.LOADING: break; case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: _autoResizeTimer.reset(); return; default: if (!stateResponsive){ return; }; }; if (((((((((!((super.videoWidth == _prevVideoWidth))) || (!((super.videoHeight == _prevVideoHeight))))) || ((_bufferState == BUFFER_FULL)))) || ((_bufferState == BUFFER_FLUSH)))) || ((_ns.time > autoResizePlayheadTimeout)))){ if (((((_hiddenForResize) && (!(_ns.client.ready)))) && ((_hiddenForResizeMetadataDelay < autoResizeMetadataDelayMax)))){ _hiddenForResizeMetadataDelay++; return; }; _autoResizeTimer.reset(); } else { return; }; }; if (_autoResizeDone){ setState(_cachedState); return; }; oldBounds = new Rectangle(x, y, width, height); oldRegistrationBounds = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); _autoResizeDone = true; var _local2:Boolean = _readyDispatched; _readyDispatched = true; _local3 = videoWidth; _local4 = videoHeight; _readyDispatched = _local2; switch (_scaleMode){ case VideoScaleMode.NO_SCALE: super.width = Math.round(_local3); super.height = Math.round(_local4); break; case VideoScaleMode.EXACT_FIT: super.width = registrationWidth; super.height = registrationHeight; break; case VideoScaleMode.MAINTAIN_ASPECT_RATIO: default: _local5 = ((_local3 * _registrationHeight) / _local4); _local6 = ((_local4 * _registrationWidth) / _local3); if (_local6 < _registrationHeight){ super.width = _registrationWidth; super.height = _local6; } else { if (_local5 < _registrationWidth){ super.width = _local5; super.height = _registrationHeight; } else { super.width = _registrationWidth; super.height = _registrationHeight; }; }; }; switch (_align){ case VideoAlign.CENTER: case VideoAlign.TOP: case VideoAlign.BOTTOM: default: super.x = Math.round((_registrationX + ((_registrationWidth - width) / 2))); break; case VideoAlign.LEFT: case VideoAlign.TOP_LEFT: case VideoAlign.BOTTOM_LEFT: super.x = Math.round(_registrationX); break; case VideoAlign.RIGHT: case VideoAlign.TOP_RIGHT: case VideoAlign.BOTTOM_RIGHT: super.x = Math.round((_registrationX + (_registrationWidth - width))); break; }; switch (_align){ case VideoAlign.CENTER: case VideoAlign.LEFT: case VideoAlign.RIGHT: default: super.y = Math.round((_registrationY + ((_registrationHeight - height) / 2))); break; case VideoAlign.TOP: case VideoAlign.TOP_LEFT: case VideoAlign.TOP_RIGHT: super.y = Math.round(_registrationY); break; case VideoAlign.BOTTOM: case VideoAlign.BOTTOM_LEFT: case VideoAlign.BOTTOM_RIGHT: super.y = Math.round((_registrationY + (_registrationHeight - height))); break; }; if (_hiddenForResize){ _hiddenRewindPlayheadTime = playheadTime; if (_state == VideoState.LOADING){ _cachedState = VideoState.PLAYING; }; if (!_ncMgr.isRTMP){ _pause(true); _seek(0); _finishAutoResizeTimer.reset(); _finishAutoResizeTimer.start(); } else { if (!_isLive){ _currentPos = 0; _play(0, 0); setState(VideoState.RESIZING); } else { if (_autoPlay){ _finishAutoResizeTimer.reset(); _finishAutoResizeTimer.start(); } else { finishAutoResize(); }; }; }; } else { dispatchEvent(new AutoLayoutEvent(AutoLayoutEvent.AUTO_LAYOUT, false, false, oldBounds, oldRegistrationBounds)); }; } public function get totalTime():Number{ return (_streamLength); } public function set volume(_arg1:Number):void{ var _local2:SoundTransform = soundTransform; _local2.volume = _arg1; soundTransform = _local2; } flvplayback_internal function _play(_arg1:int=0, _arg2:int=-1):void{ waitingForEnough = false; _rtmpDoStopAtEndTimer.reset(); _startingPlay = true; _ns.play(_ncMgr.streamName, (_isLive) ? -1 : _arg1, _arg2); } flvplayback_internal function finishAutoResize(_arg1:TimerEvent=null):void{ if (stateResponsive){ return; }; _hiddenForResize = false; super.visible = __visible; volume = _volume; dispatchEvent(new AutoLayoutEvent(AutoLayoutEvent.AUTO_LAYOUT, false, false, oldBounds, oldRegistrationBounds)); if (_autoPlay){ if (_ncMgr.isRTMP){ if (!_isLive){ _currentPos = 0; _play(0); }; if (_state == VideoState.RESIZING){ setState(VideoState.LOADING); _cachedState = VideoState.PLAYING; }; } else { waitingForEnough = true; _cachedState = _state; _state = VideoState.PAUSED; checkReadyForPlay(bytesLoaded, bytesTotal); if (waitingForEnough){ _state = _cachedState; setState(VideoState.PAUSED); } else { _cachedState = VideoState.PLAYING; }; }; } else { setState(VideoState.STOPPED); }; } public function set soundTransform(_arg1:SoundTransform):void{ if (_arg1 == null){ return; }; if (_hiddenForResize){ _volume = _arg1.volume; }; _soundTransform = new SoundTransform(); _soundTransform.volume = (_hiddenForResize) ? 0 : _arg1.volume; _soundTransform.leftToLeft = _arg1.leftToLeft; _soundTransform.leftToRight = _arg1.leftToRight; _soundTransform.rightToLeft = _arg1.rightToLeft; _soundTransform.rightToRight = _arg1.rightToRight; if (_ns != null){ _ns.soundTransform = _soundTransform; }; } flvplayback_internal function onCuePoint(_arg1:Object):void{ if (((!(_hiddenForResize)) || (((!(isNaN(_hiddenRewindPlayheadTime))) && ((playheadTime < _hiddenRewindPlayheadTime)))))){ dispatchEvent(new MetadataEvent(MetadataEvent.CUE_POINT, false, false, _arg1)); }; } flvplayback_internal function httpNetStatus(_arg1:NetStatusEvent):void{ switch (_arg1.info.code){ case "NetStream.Play.Stop": _delayedBufferingTimer.reset(); if (_invalidSeekTime){ _invalidSeekTime = false; _invalidSeekRecovery = true; setState(_cachedState); seek(playheadTime); } else { switch (_state){ case VideoState.SEEKING: httpDoSeek(null); case VideoState.PLAYING: case VideoState.BUFFERING: httpDoStopAtEnd(); break; }; }; break; case "NetStream.Seek.InvalidTime": if (_invalidSeekRecovery){ _invalidSeekTime = false; _invalidSeekRecovery = false; setState(_cachedState); seek(0); } else { _invalidSeekTime = true; _httpDoSeekCount = 0; _httpDoSeekTimer.start(); }; break; case "NetStream.Buffer.Empty": _bufferState = BUFFER_EMPTY; if (_state == VideoState.PLAYING){ _delayedBufferingTimer.reset(); _delayedBufferingTimer.start(); }; break; case "NetStream.Buffer.Full": case "NetStream.Buffer.Flush": _delayedBufferingTimer.reset(); _bufferState = BUFFER_FULL; if (!_hiddenForResize){ if ((((((_state == VideoState.LOADING)) && ((_cachedState == VideoState.PLAYING)))) || ((_state == VideoState.BUFFERING)))){ setState(VideoState.PLAYING); } else { if (_cachedState == VideoState.BUFFERING){ _cachedState = VideoState.PLAYING; }; }; }; break; case "NetStream.Seek.Notify": _invalidSeekRecovery = false; switch (_state){ case VideoState.SEEKING: case VideoState.REWINDING: _httpDoSeekCount = 0; _httpDoSeekTimer.start(); break; }; break; case "NetStream.Play.StreamNotFound": case "NetStream.Play.FileStructureInvalid": case "NetStream.Play.NoSupportedTrackFound": setState(VideoState.CONNECTION_ERROR); break; }; } flvplayback_internal function httpDoSeek(_arg1:TimerEvent):void{ var _local2:Boolean = (((_state == VideoState.REWINDING)) || ((_state == VideoState.SEEKING))); if (((((_local2) && ((_httpDoSeekCount < httpDoSeekMaxCount)))) && ((((_cachedPlayheadTime == playheadTime)) || (_invalidSeekTime))))){ _httpDoSeekCount++; return; }; _httpDoSeekCount = 0; _httpDoSeekTimer.reset(); if (!_local2){ return; }; setStateFromCachedState(false); if (_invalidSeekTime){ _invalidSeekTime = false; _invalidSeekRecovery = true; seek(playheadTime); } else { doUpdateTime(); _lastSeekTime = playheadTime; execQueuedCmds(); }; } override public function set height(_arg1:Number):void{ super.height = (_registrationHeight = _arg1); switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.height = _arg1; break; }; } public function get bytesLoaded():uint{ if ((((_ns == null)) || (_ncMgr.isRTMP))){ return (uint.MIN_VALUE); }; return (_ns.bytesLoaded); } public function set bufferTime(_arg1:Number):void{ _bufferTime = _arg1; if (_ns != null){ _ns.bufferTime = _bufferTime; }; } public function get netConnection():NetConnection{ if (_ncMgr != null){ return (_ncMgr.netConnection); }; return (null); } flvplayback_internal function onMetaData(_arg1:Object):void{ if (_metadata != null){ return; }; _metadata = _arg1; if (isNaN(_streamLength)){ _streamLength = _arg1.duration; }; if (((_resizeImmediatelyOnMetadata) && (_ns.client.ready))){ _resizeImmediatelyOnMetadata = false; _autoResizeTimer.reset(); _autoResizeDone = false; doAutoResize(); }; dispatchEvent(new MetadataEvent(MetadataEvent.METADATA_RECEIVED, false, false, _arg1)); } flvplayback_internal function queueCmd(_arg1:Number, _arg2:String=null, _arg3:Boolean=false, _arg4:Number=NaN):void{ _cmdQueue.push(new QueuedCommand(_arg1, _arg2, _arg3, _arg4)); } public function seek(_arg1:Number):void{ if (_invalidSeekTime){ return; }; if (((isNaN(_arg1)) || ((_arg1 < 0)))){ throw (new VideoError(VideoError.INVALID_SEEK)); }; if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; flushQueuedCmds(); queueCmd(QueuedCommand.SEEK, null, false, _arg1); setState(VideoState.LOADING); _cachedState = VideoState.LOADING; _ncMgr.reconnect(); return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.SEEK, null, false, _arg1); return; }; execQueuedCmds(); }; }; if (_ns == null){ _createStream(); }; if (((_atEnd) && ((_arg1 < playheadTime)))){ _atEnd = false; }; switch (_state){ case VideoState.PLAYING: _state = VideoState.BUFFERING; case VideoState.BUFFERING: case VideoState.PAUSED: _seek(_arg1); setState(VideoState.SEEKING); break; case VideoState.STOPPED: if (_ncMgr.isRTMP){ _play(0); _pause(true); }; _seek(_arg1); _state = VideoState.PAUSED; setState(VideoState.SEEKING); break; }; } public function set registrationHeight(_arg1:Number):void{ height = _arg1; } override public function get visible():Boolean{ if (!_hiddenForResize){ __visible = super.visible; }; return (__visible); } public function get registrationWidth():Number{ return (_registrationWidth); } public function get state():String{ return (_state); } public function set autoRewind(_arg1:Boolean):void{ _autoRewind = _arg1; } override public function set scaleX(_arg1:Number):void{ super.scaleX = _arg1; _registrationWidth = width; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; }; } override public function set scaleY(_arg1:Number):void{ super.scaleY = _arg1; _registrationHeight = height; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; }; } flvplayback_internal function flushQueuedCmds():void{ while (_cmdQueue.length > 0) { _cmdQueue.pop(); }; } public function get registrationX():Number{ return (_registrationX); } flvplayback_internal function _setUpStream():void{ if (((!(isNaN(_ncMgr.streamLength))) && ((_ncMgr.streamLength >= 0)))){ _streamLength = _ncMgr.streamLength; }; _videoWidth = ((_ncMgr.streamWidth)>=0) ? _ncMgr.streamWidth : -1; _videoHeight = ((_ncMgr.streamHeight)>=0) ? _ncMgr.streamHeight : -1; _resizeImmediatelyOnMetadata = (((((_videoWidth >= 0)) && ((_videoHeight >= 0)))) || ((_scaleMode == VideoScaleMode.EXACT_FIT))); if (!_hiddenForResize){ __visible = super.visible; super.visible = false; _volume = volume; volume = 0; _hiddenForResize = true; }; _hiddenForResizeMetadataDelay = 0; _play(0); if (_currentPos > 0){ _seek(_currentPos); _currentPos = 0; }; _autoResizeTimer.reset(); _autoResizeTimer.start(); } public function get registrationY():Number{ return (_registrationY); } flvplayback_internal function httpDoStopAtEnd():void{ if ((((((_atEndCheckPlayhead == playheadTime)) && (!((_atEndCheckPlayhead == _lastUpdateTime))))) && (!((playheadTime == 0))))){ _atEnd = false; _seek(0); return; }; _atEndCheckPlayhead = NaN; _atEnd = true; if (isNaN(_streamLength)){ _streamLength = _ns.time; }; _pause(true); setState(VideoState.STOPPED); if (_state != VideoState.STOPPED){ return; }; doUpdateTime(); if (_state != VideoState.STOPPED){ return; }; dispatchEvent(new VideoEvent(VideoEvent.COMPLETE, false, false, _state, playheadTime)); if (_state != VideoState.STOPPED){ return; }; if (_autoRewind){ _atEnd = false; _pause(true); _seek(0); setState(VideoState.REWINDING); }; } public function ncConnected():void{ if ((((_ncMgr == null)) || ((_ncMgr.netConnection == null)))){ setState(VideoState.CONNECTION_ERROR); } else { if (_ns == null){ _createStream(); _setUpStream(); }; }; } override public function set visible(_arg1:Boolean):void{ __visible = _arg1; if (!_hiddenForResize){ super.visible = __visible; }; } public function get idleTimeout():Number{ return (_idleTimeoutTimer.delay); } public function get playheadUpdateInterval():Number{ return (_updateTimeTimer.delay); } override public function set y(_arg1:Number):void{ var _local2:Number; if (this.y != _arg1){ _local2 = (_arg1 - this.y); super.y = _arg1; _registrationY = (_registrationY + _local2); }; } public function load(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false):void{ if (_arg1 == null){ throw (new VideoError(VideoError.NULL_URL_LOAD)); }; if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (((((!(stateResponsive)) && (!((_state == VideoState.DISCONNECTED))))) && (!((_state == VideoState.CONNECTION_ERROR))))){ queueCmd(QueuedCommand.LOAD, _arg1, _arg3, _arg2); return; }; execQueuedCmds(); }; _autoPlay = false; _load(_arg1, _arg2, _arg3); } override public function set x(_arg1:Number):void{ var _local2:Number; if (this.x != _arg1){ _local2 = (_arg1 - this.x); super.x = _arg1; _registrationX = (_registrationX + _local2); }; } flvplayback_internal function doDelayedBuffering(_arg1:TimerEvent):void{ switch (_state){ case VideoState.LOADING: case VideoState.RESIZING: break; case VideoState.PLAYING: _delayedBufferingTimer.reset(); if (((((((((!(isNaN(totalTime))) && ((totalTime > 0)))) && ((bytesLoaded > 0)))) && ((bytesLoaded < uint.MAX_VALUE)))) && ((bytesLoaded < bytesTotal)))){ pause(); if (_state == VideoState.PAUSED){ waitingForEnough = true; playWhenEnoughDownloaded(); }; } else { setState(VideoState.BUFFERING); }; break; default: _delayedBufferingTimer.reset(); break; }; } flvplayback_internal function _pause(_arg1:Boolean):void{ _atEndCheckPlayhead = playheadTime; _rtmpDoStopAtEndTimer.reset(); if (_arg1){ _ns.pause(); } else { _ns.resume(); }; } flvplayback_internal function createNetStreamClient():Object{ var theClass:Class; var theInst:Object; try { if ((netStreamClientClass is String)){ theClass = Class(getDefinitionByName(String(netStreamClientClass))); } else { if ((netStreamClientClass is Class)){ theClass = Class(netStreamClientClass); }; }; if (theClass != null){ theInst = new theClass(this); }; } catch(e:Error) { theClass = null; theInst = null; }; if (theInst == null){ throw (new VideoError(VideoError.NETSTREAM_CLIENT_CLASS_UNSET, ((netStreamClientClass)==null) ? "null" : netStreamClientClass.toString())); }; return (theInst); } public function get align():String{ return (_align); } public function set registrationWidth(_arg1:Number):void{ width = _arg1; } public function get soundTransform():SoundTransform{ if (_ns != null){ _soundTransform = _ns.soundTransform; }; var _local1:SoundTransform = new SoundTransform(); _local1.volume = (_hiddenForResize) ? _volume : _soundTransform.volume; _local1.leftToLeft = _soundTransform.leftToLeft; _local1.leftToRight = _soundTransform.leftToRight; _local1.rightToLeft = _soundTransform.rightToLeft; _local1.rightToRight = _soundTransform.rightToRight; return (_local1); } public function get volume():Number{ return (soundTransform.volume); } public function get stateResponsive():Boolean{ switch (_state){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.BUFFERING: return (true); default: return (false); }; } public function get bufferTime():Number{ if (_ns != null){ _bufferTime = _ns.bufferTime; }; return (_bufferTime); } public function get metadata():Object{ return (_metadata); } public function play(_arg1:String=null, _arg2:Number=NaN, _arg3:Boolean=false):void{ if (_arg1 != null){ if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (((((!(stateResponsive)) && (!((_state == VideoState.DISCONNECTED))))) && (!((_state == VideoState.CONNECTION_ERROR))))){ queueCmd(QueuedCommand.PLAY, _arg1, _arg3, _arg2); return; }; execQueuedCmds(); }; _autoPlay = true; _load(_arg1, _arg2, _arg3); return; }; if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; flushQueuedCmds(); queueCmd(QueuedCommand.PLAY); setState(VideoState.LOADING); _cachedState = VideoState.LOADING; _ncMgr.reconnect(); return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.PLAY); return; }; execQueuedCmds(); }; }; if (_ns == null){ _createStream(); }; switch (_state){ case VideoState.BUFFERING: if (_ncMgr.isRTMP){ _play(0); if (_atEnd){ _atEnd = false; _currentPos = 0; setState(VideoState.REWINDING); } else { if (_currentPos > 0){ _seek(_currentPos); _currentPos = 0; }; }; }; case VideoState.PLAYING: return; case VideoState.STOPPED: if (_ncMgr.isRTMP){ if (_isLive){ _play(-1); setState(VideoState.BUFFERING); } else { _play(0); if (_atEnd){ _atEnd = false; _currentPos = 0; _state = VideoState.BUFFERING; setState(VideoState.REWINDING); } else { if (_currentPos > 0){ _seek(_currentPos); _currentPos = 0; setState(VideoState.BUFFERING); } else { setState(VideoState.BUFFERING); }; }; }; } else { _pause(false); if (_atEnd){ _atEnd = false; _seek(0); _state = VideoState.BUFFERING; setState(VideoState.REWINDING); } else { if (_bufferState == BUFFER_EMPTY){ setState(VideoState.BUFFERING); } else { setState(VideoState.PLAYING); }; }; }; break; case VideoState.PAUSED: _pause(false); if (!_ncMgr.isRTMP){ if (_bufferState == BUFFER_EMPTY){ setState(VideoState.BUFFERING); } else { setState(VideoState.PLAYING); }; } else { setState(VideoState.BUFFERING); }; break; }; } public function get isLive():Boolean{ return (_isLive); } flvplayback_internal function setStateFromCachedState(_arg1:Boolean=true):void{ switch (_cachedState){ case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.BUFFERING: setState(_cachedState, _arg1); break; default: setState(VideoState.STOPPED, _arg1); break; }; } public function ncReconnected():void{ if ((((_ncMgr == null)) || ((_ncMgr.netConnection == null)))){ setState(VideoState.CONNECTION_ERROR); } else { _ns = null; _state = VideoState.STOPPED; execQueuedCmds(); }; } public function get registrationHeight():Number{ return (_registrationHeight); } public function get autoRewind():Boolean{ return (_autoRewind); } flvplayback_internal function startAutoResize():void{ switch (_state){ case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: return; default: if (_ns == null){ return; }; _autoResizeDone = false; if (((stateResponsive) && (((((((((!((super.videoWidth == 0))) || (!((super.videoHeight == 0))))) || ((_bufferState == BUFFER_FULL)))) || ((_bufferState == BUFFER_FLUSH)))) || ((_ns.time > autoResizePlayheadTimeout)))))){ doAutoResize(); } else { _autoResizeTimer.reset(); _autoResizeTimer.start(); }; break; }; } flvplayback_internal function setState(_arg1:String, _arg2:Boolean=true):void{ if (_arg1 == _state){ return; }; _hiddenRewindPlayheadTime = NaN; _cachedState = _state; _cachedPlayheadTime = playheadTime; _state = _arg1; var _local3:String = _state; dispatchEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, _local3, playheadTime)); if (!_readyDispatched){ switch (_local3){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.BUFFERING: _readyDispatched = true; dispatchEvent(new VideoEvent(VideoEvent.READY, false, false, _local3, playheadTime)); break; }; }; switch (_cachedState){ case VideoState.REWINDING: dispatchEvent(new VideoEvent(VideoEvent.AUTO_REWOUND, false, false, _local3, playheadTime)); if (((_ncMgr.isRTMP) && ((_local3 == VideoState.STOPPED)))){ closeNS(); }; break; }; switch (_local3){ case VideoState.STOPPED: case VideoState.PAUSED: if (_ncMgr.isRTMP){ _idleTimeoutTimer.reset(); _idleTimeoutTimer.start(); }; break; case VideoState.SEEKING: case VideoState.REWINDING: _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _idleTimeoutTimer.reset(); break; case VideoState.PLAYING: case VideoState.BUFFERING: _updateTimeTimer.start(); _idleTimeoutTimer.reset(); break; case VideoState.LOADING: case VideoState.RESIZING: _idleTimeoutTimer.reset(); break; }; if (_arg2){ execQueuedCmds(); }; } flvplayback_internal function _seek(_arg1:Number):void{ _rtmpDoStopAtEndTimer.reset(); if (((((!((_metadata == null))) && (!((_metadata.audiodelay == undefined))))) && (((isNaN(_streamLength)) || (((_arg1 + _metadata.audiodelay) < _streamLength)))))){ _arg1 = (_arg1 + _metadata.audiodelay); }; _ns.seek(_arg1); _lastSeekTime = _arg1; _invalidSeekTime = false; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _sawSeekNotify = false; } flvplayback_internal function doIdleTimeout(_arg1:TimerEvent):void{ close(); } public function playWhenEnoughDownloaded():void{ if (((!((_ncMgr == null))) && (_ncMgr.isRTMP))){ play(); return; }; if (!isXnOK()){ throw (new VideoError(VideoError.NO_CONNECTION)); }; if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.PLAY_WHEN_ENOUGH); return; }; execQueuedCmds(); }; waitingForEnough = true; checkReadyForPlay(bytesLoaded, bytesTotal); } flvplayback_internal function rtmpDoSeek(_arg1:TimerEvent):void{ if (((!((_state == VideoState.REWINDING))) && (!((_state == VideoState.SEEKING))))){ _rtmpDoSeekTimer.reset(); _sawSeekNotify = false; } else { if (playheadTime != _cachedPlayheadTime){ _rtmpDoSeekTimer.reset(); _sawSeekNotify = false; setStateFromCachedState(false); doUpdateTime(); _lastSeekTime = playheadTime; execQueuedCmds(); }; }; } public function get netStream():NetStream{ return (_ns); } public function set registrationX(_arg1:Number):void{ var _local2:Number; if (_registrationX != _arg1){ _local2 = (_arg1 - _registrationX); _registrationX = _arg1; this.x = (this.x + _local2); }; } flvplayback_internal function doUpdateProgress(_arg1:TimerEvent):void{ if (_ns == null){ return; }; var _local2:uint = _ns.bytesLoaded; var _local3:uint = _ns.bytesTotal; if (_local3 < uint.MAX_VALUE){ dispatchEvent(new VideoProgressEvent(VideoProgressEvent.PROGRESS, false, false, _local2, _local3)); }; if ((((((_state == VideoState.DISCONNECTED)) || ((_state == VideoState.CONNECTION_ERROR)))) || ((_local2 >= _local3)))){ _updateProgressTimer.stop(); }; checkEnoughDownloaded(_local2, _local3); } public function set registrationY(_arg1:Number):void{ var _local2:Number; if (_registrationY != _arg1){ _local2 = (_arg1 - _registrationY); _registrationY = _arg1; this.y = (this.y + _local2); }; } override public function get videoHeight():int{ if (_videoHeight > 0){ return (_videoHeight); }; if (((((!((_metadata == null))) && (!(isNaN(_metadata.width))))) && (!(isNaN(_metadata.height))))){ if ((((_metadata.width == _metadata.height)) && (_readyDispatched))){ return (super.videoHeight); }; return (int(_metadata.height)); }; if (_readyDispatched){ return (super.videoHeight); }; return (-1); } public function setSize(_arg1:Number, _arg2:Number):void{ super.width = (_registrationWidth = _arg1); super.height = (_registrationHeight = _arg2); switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.x = _registrationX; super.y = _registrationY; break; }; } public function get isRTMP():Boolean{ if (_ncMgr == null){ return (false); }; return (_ncMgr.isRTMP); } override public function set width(_arg1:Number):void{ super.width = (_registrationWidth = _arg1); switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.width = _arg1; break; }; } public function get bytesTotal():uint{ if ((((_ns == null)) || (_ncMgr.isRTMP))){ return (uint.MAX_VALUE); }; return (_ns.bytesTotal); } flvplayback_internal function isXnOK():Boolean{ if (_state == VideoState.LOADING){ return (true); }; if (_state == VideoState.CONNECTION_ERROR){ return (false); }; if (_state != VideoState.DISCONNECTED){ if ((((((_ncMgr == null)) || ((_ncMgr.netConnection == null)))) || (((_ncMgr.isRTMP) && (!(_ncMgr.netConnection.connected)))))){ setState(VideoState.DISCONNECTED); return (false); }; return (true); }; return (false); } flvplayback_internal function _createStream():void{ _ns = null; var _local1:NetStream = new NetStream(_ncMgr.netConnection); if (_ncMgr.isRTMP){ _local1.addEventListener(NetStatusEvent.NET_STATUS, rtmpNetStatus); } else { _local1.addEventListener(NetStatusEvent.NET_STATUS, httpNetStatus); }; _local1.client = createNetStreamClient(); _local1.bufferTime = _bufferTime; _local1.soundTransform = soundTransform; _ns = _local1; attachNetStream(_ns); } flvplayback_internal function checkReadyForPlay(_arg1:uint, _arg2:uint):void{ var _local3:Number; if (_arg1 >= _arg2){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); return; }; if (isNaN(baselineProgressTime)){ return; }; if (((isNaN(totalTime)) || ((totalTime < 0)))){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); } else { if (totalDownloadTime > 1.5){ _local3 = ((totalProgressTime - baselineProgressTime) / totalDownloadTime); if ((totalTime - playheadTime) > ((totalTime - totalProgressTime) / _local3)){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); }; }; }; } flvplayback_internal function closeNS(_arg1:Boolean=false):void{ if (_ns != null){ if (_arg1){ doUpdateTime(); _currentPos = _ns.time; }; _updateTimeTimer.reset(); _updateProgressTimer.reset(); _idleTimeoutTimer.reset(); _autoResizeTimer.reset(); _rtmpDoStopAtEndTimer.reset(); _rtmpDoSeekTimer.reset(); _httpDoSeekTimer.reset(); _finishAutoResizeTimer.reset(); _delayedBufferingTimer.reset(); _ns.removeEventListener(NetStatusEvent.NET_STATUS, rtmpNetStatus); _ns.removeEventListener(NetStatusEvent.NET_STATUS, httpNetStatus); _ns.close(); _ns = null; }; } public function set playheadUpdateInterval(_arg1:Number):void{ _updateTimeTimer.delay = _arg1; } flvplayback_internal function _load(_arg1:String, _arg2:Number, _arg3:Boolean):void{ _prevVideoWidth = super.videoWidth; _prevVideoHeight = super.videoHeight; _autoResizeDone = false; _cachedPlayheadTime = 0; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _metadata = null; _startingPlay = false; _invalidSeekTime = false; _invalidSeekRecovery = false; _isLive = _arg3; _contentPath = _arg1; _currentPos = 0; _streamLength = (((isNaN(_arg2)) || ((_arg2 <= 0)))) ? NaN : _arg2; _atEnd = false; _readyDispatched = false; _lastUpdateTime = NaN; lastUpdateTimeStuckCount = 0; _sawSeekNotify = false; waitingForEnough = false; baselineProgressTime = NaN; startProgressTime = NaN; totalDownloadTime = NaN; totalProgressTime = NaN; _httpDoSeekCount = 0; _updateTimeTimer.reset(); _updateProgressTimer.reset(); _idleTimeoutTimer.reset(); _autoResizeTimer.reset(); _rtmpDoStopAtEndTimer.reset(); _rtmpDoSeekTimer.reset(); _httpDoSeekTimer.reset(); _finishAutoResizeTimer.reset(); _delayedBufferingTimer.reset(); closeNS(false); if (_ncMgr == null){ createINCManager(); }; var _local4:Boolean = _ncMgr.connectToURL(_contentPath); setState(VideoState.LOADING); _cachedState = VideoState.LOADING; if (_local4){ _createStream(); _setUpStream(); }; if (!_ncMgr.isRTMP){ _updateProgressTimer.start(); }; } flvplayback_internal function rtmpDoStopAtEnd(_arg1:TimerEvent=null):void{ if (_rtmpDoStopAtEndTimer.running){ switch (_state){ case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: _rtmpDoStopAtEndTimer.reset(); return; }; if ((((_arg1 == null)) || ((_cachedPlayheadTime == playheadTime)))){ _rtmpDoStopAtEndTimer.reset(); } else { _cachedPlayheadTime = playheadTime; return; }; }; if ((((((((_atEndCheckPlayhead == playheadTime)) && (!((_atEndCheckPlayhead == _lastSeekTime))))) && (!(_isLive)))) && (!((playheadTime == 0))))){ _atEnd = false; _currentPos = 0; _play(0); return; }; _atEndCheckPlayhead = NaN; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _atEnd = true; setState(VideoState.STOPPED); if (_state != VideoState.STOPPED){ return; }; doUpdateTime(); if (_state != VideoState.STOPPED){ return; }; dispatchEvent(new VideoEvent(VideoEvent.COMPLETE, false, false, _state, playheadTime)); if (_state != VideoState.STOPPED){ return; }; if (((((_autoRewind) && (!(_isLive)))) && (!((playheadTime == 0))))){ _atEnd = false; _currentPos = 0; _play(0, 0); setState(VideoState.REWINDING); } else { closeNS(); }; } public function set idleTimeout(_arg1:Number):void{ _idleTimeoutTimer.delay = _arg1; } flvplayback_internal function checkEnoughDownloaded(_arg1:uint, _arg2:uint):void{ if ((((_arg1 == 0)) || ((_arg2 == uint.MAX_VALUE)))){ return; }; if (((isNaN(totalTime)) || ((totalTime <= 0)))){ if (((waitingForEnough) && (stateResponsive))){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); }; return; }; if (_arg1 >= _arg2){ if (waitingForEnough){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); }; return; }; if (isNaN(baselineProgressTime)){ baselineProgressTime = ((_arg1 / _arg2) * totalTime); }; if (isNaN(startProgressTime)){ startProgressTime = getTimer(); } else { totalDownloadTime = ((getTimer() - startProgressTime) / 1000); totalProgressTime = ((_arg1 / _arg2) * totalTime); if (waitingForEnough){ checkReadyForPlay(_arg1, _arg2); }; }; } public function pause():void{ if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.PAUSE); return; }; execQueuedCmds(); }; }; if ((((((_state == VideoState.PAUSED)) || ((_state == VideoState.STOPPED)))) || ((_ns == null)))){ return; }; _pause(true); setState(VideoState.PAUSED); } public function close():void{ closeNS(true); if (((!((_ncMgr == null))) && (_ncMgr.isRTMP))){ _ncMgr.close(); }; setState(VideoState.DISCONNECTED); dispatchEvent(new VideoEvent(VideoEvent.CLOSE, false, false, _state, playheadTime)); } flvplayback_internal function execQueuedCmds():void{ var nextCmd:Object; while ((((((_cmdQueue.length > 0)) && (((((stateResponsive) || ((_state == VideoState.DISCONNECTED)))) || ((_state == VideoState.CONNECTION_ERROR)))))) && (((!((_cmdQueue[0].url == null))) || (((!((_state == VideoState.DISCONNECTED))) && (!((_state == VideoState.CONNECTION_ERROR))))))))) { try { nextCmd = _cmdQueue.shift(); _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; switch (nextCmd.type){ case QueuedCommand.PLAY: play(nextCmd.url, nextCmd.time, nextCmd.isLive); break; case QueuedCommand.LOAD: load(nextCmd.url, nextCmd.time, nextCmd.isLive); break; case QueuedCommand.PAUSE: pause(); break; case QueuedCommand.STOP: stop(); break; case QueuedCommand.SEEK: seek(nextCmd.time); break; case QueuedCommand.PLAY_WHEN_ENOUGH: playWhenEnoughDownloaded(); break; }; } finally { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; }; }; }; } } }//package fl.videoSection 54//VideoPlayerClient (fl.video.VideoPlayerClient) package fl.video { public dynamic class VideoPlayerClient { protected var _owner:VideoPlayer; protected var gotMetadata:Boolean; public function VideoPlayerClient(_arg1:VideoPlayer){ _owner = _arg1; gotMetadata = false; } public function get ready():Boolean{ return (gotMetadata); } public function get owner():VideoPlayer{ return (_owner); } public function onCuePoint(_arg1:Object, ... _args):void{ _arg1.name; _arg1.time; _arg1.type; _owner.onCuePoint(_arg1); } public function onMetaData(_arg1:Object, ... _args):void{ _arg1.duration; _arg1.width; _arg1.height; _owner.onMetaData(_arg1); gotMetadata = true; } } }//package fl.videoSection 55//VideoPlayerState (fl.video.VideoPlayerState) package fl.video { public class VideoPlayerState { public var autoPlay:Boolean; public var isWaiting:Boolean; public var isLiveSet:Boolean; public var index:int; public var prevState:String; public var preSeekTime:Number; public var minProgressPercent:Number; public var url:String; public var totalTimeSet:Boolean; public var owner:VideoPlayer; public var isLive:Boolean; public var cmdQueue:Array; public var totalTime:Number; public function VideoPlayerState(_arg1:VideoPlayer, _arg2:int){ this.owner = _arg1; this.index = _arg2; this.url = ""; this.isLive = false; this.isLiveSet = true; this.totalTime = NaN; this.totalTimeSet = true; this.autoPlay = (_arg2 == 0); this.isWaiting = false; this.preSeekTime = NaN; this.cmdQueue = null; } } }//package fl.videoSection 56//VideoProgressEvent (fl.video.VideoProgressEvent) package fl.video { import flash.events.*; public class VideoProgressEvent extends ProgressEvent implements IVPEvent { private var _vp:uint; public static const PROGRESS:String = "progress"; public function VideoProgressEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:uint=0){ super(_arg1, _arg2, _arg3, _arg4, _arg5); _vp = _arg6; } public function set vp(_arg1:uint):void{ _vp = _arg1; } public function get vp():uint{ return (_vp); } override public function clone():Event{ return (new VideoProgressEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, vp)); } } }//package fl.videoSection 57//VideoScaleMode (fl.video.VideoScaleMode) package fl.video { public final class VideoScaleMode { public static const EXACT_FIT:String = "exactFit"; public static const MAINTAIN_ASPECT_RATIO:String = "maintainAspectRatio"; public static const NO_SCALE:String = "noScale"; } }//package fl.videoSection 58//VideoState (fl.video.VideoState) package fl.video { public final class VideoState { public static const CONNECTION_ERROR:String = "connectionError"; public static const BUFFERING:String = "buffering"; public static const SEEKING:String = "seeking"; public static const STOPPED:String = "stopped"; public static const PAUSED:String = "paused"; public static const RESIZING:String = "resizing"; public static const PLAYING:String = "playing"; public static const DISCONNECTED:String = "disconnected"; public static const LOADING:String = "loading"; public static const REWINDING:String = "rewinding"; flvplayback_internal static var EXEC_QUEUED_CMD:String = "execQueuedCmd"; } }//package fl.videoSection 59//VolumeBarAccImpl (fl.video.VolumeBarAccImpl) package fl.video { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.accessibility.*; public class VolumeBarAccImpl extends AccessibilityImplementation { protected var master:Sprite; protected var role:uint; private var _vc:FLVPlayback; private static const ROLE_SYSTEM_INDICATOR:uint = 39; private static const ROLE_SLIDER:uint = 51; private static const STATE_SYSTEM_FOCUSABLE:uint = 0x100000; private static const EVENT_OBJECT_SELECTION:uint = 32774; private static const ROLE_SYSTEM_PUSHBUTTON:uint = 43; private static const STATE_SYSTEM_FOCUSED:uint = 4; private static const STATE_SYSTEM_SELECTABLE:uint = 0x200000; private static const ROLE_WINDOW:uint = 9; private static const EVENT_OBJECT_FOCUS:uint = 32773; private static const STATE_SYSTEM_SELECTED:uint = 2; private static const EVENT_OBJECT_VALUECHANGE:uint = 32782; private static const EVENT_OBJECT_LOCATIONCHANGE:uint = 32779; private static const STATE_SYSTEM_NORMAL:uint = 0; private static const STATE_SYSTEM_UNAVAILABLE:uint = 1; public function VolumeBarAccImpl(_arg1:Sprite){ var n:int; var i:int; var sprite = _arg1; super(); stub = false; master = sprite; if (!master.accessibilityProperties){ master.accessibilityProperties = new AccessibilityProperties(); }; master.accessibilityProperties.forceSimple = true; var events:Array = eventsToHandle; if (events){ n = events.length; i = 0; while (i < n) { master.addEventListener(events[i], eventHandler); i = (i + 1); }; }; master.addEventListener(FocusEvent.FOCUS_IN, focusInHandler); try { _vc = Object(master).uiMgr._vc; _vc.addEventListener(SoundEvent.SOUND_UPDATE, eventHandler); } catch(e:Error) { }; role = VolumeBarAccImpl.ROLE_SLIDER; } override public function get_accState(_arg1:uint):uint{ var _local2:uint = getState(_arg1); return (_local2); } protected function getName(_arg1:uint):String{ var _local2 = ""; switch (_arg1){ case 1: _local2 = "Page Left"; break; case 2: _local2 = "Position"; break; case 3: _local2 = "Page Right"; break; case 0: _local2 = ""; break; }; return (_local2); } override public function get_accName(_arg1:uint):String{ var _local2 = ""; if ((((((((_arg1 == 0)) && (master.accessibilityProperties))) && (master.accessibilityProperties.name))) && (!((master.accessibilityProperties.name == ""))))){ _local2 = (_local2 + (master.accessibilityProperties.name + " ")); }; _local2 = (_local2 + (getName(_arg1) + getStatusName())); return ((((!((_local2 == null))) && (!((_local2 == ""))))) ? _local2 : null); } override public function get_accDefaultAction(_arg1:uint):String{ if ((((_arg1 == 1)) || ((_arg1 == 3)))){ return ("Press"); }; return (null); } protected function getState(_arg1:uint):uint{ var _local2:uint = STATE_SYSTEM_NORMAL; if (_arg1 == 0){ if (((!(master.mouseEnabled)) || (!(master.tabEnabled)))){ _local2 = (_local2 | STATE_SYSTEM_UNAVAILABLE); } else { _local2 = (_local2 | STATE_SYSTEM_FOCUSABLE); }; if (Sprite(master).stage.focus == master){ _local2 = (_local2 | STATE_SYSTEM_FOCUSED); }; }; return (_local2); } override public function accDoDefaultAction(_arg1:uint):void{ var _local2:UIManager = (_vc.uiMgr as UIManager); var _local3:Boolean = _local2._isMuted; var _local4:Number = (_local3) ? (Math.round((_local2.cachedSoundLevel * 1000)) / 100) : (Math.round((_vc.volume * 1000)) / 100); if (_arg1 == 1){ if (Math.floor(_local4) != _local4){ _vc.volume = (Math.floor(_local4) / 10); } else { _vc.volume = Math.max(0, ((_local4 - 1) / 10)); }; } else { if (_arg1 == 3){ if (Math.round(_local4) != _local4){ _vc.volume = (Math.round(_local4) / 10); } else { _vc.volume = Math.min(1, ((_local4 + 1) / 10)); }; }; }; _local2.cachedSoundLevel = _vc.volume; if (_local3){ _local2._isMuted = true; _local2.cachedSoundLevel = _vc.volume; _vc.volume = 0; _local2.setEnabledAndVisibleForState(UIManager.MUTE_OFF_BUTTON, VideoState.PLAYING); _local2.skinButtonControl(_local2.controls[UIManager.MUTE_OFF_BUTTON]); _local2.setEnabledAndVisibleForState(UIManager.MUTE_ON_BUTTON, VideoState.PLAYING); _local2.skinButtonControl(_local2.controls[UIManager.MUTE_ON_BUTTON]); }; } private function focusInHandler(_arg1:Event):void{ if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_FOCUS); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; } override public function get_accRole(_arg1:uint):uint{ if (_arg1 == 0){ return (role); }; if (_arg1 == 2){ return (ROLE_SYSTEM_INDICATOR); }; return (ROLE_SYSTEM_PUSHBUTTON); } protected function eventHandler(_arg1:Event):void{ if (_arg1.type == SoundEvent.SOUND_UPDATE){ if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_SELECTION); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; }; } override public function get_accValue(_arg1:uint):String{ var _local2:Number; if (_arg1 == 0){ _local2 = (Math.round((_vc.volume * 10000)) / 100); return ((String(_local2) + "%")); }; return (null); } private function getStatusName():String{ return (""); } protected function get eventsToHandle():Array{ return ([]); } override public function accLocation(_arg1:uint){ var _local7:DisplayObject; var _local2:Object = master; var _local3:UIManager = (_vc.uiMgr as UIManager); var _local4:DisplayObject = (_local3.controls[UIManager.VOLUME_BAR] as DisplayObject); var _local5:Dictionary = (UIManager(_local3).ctrlDataDict as Dictionary); var _local6:ControlData = _local5[_local4]; if (_local5[_local6.fullness_mc].mask_mc){ _local7 = DisplayObject(_local5[_local6.fullness_mc].mask_mc); }; switch (_arg1){ case 1: case 3: if (_local7){ _local2 = _local7; }; break; default: break; }; return (_local2); } override public function getChildIDArray():Array{ var _local1:Array = []; var _local2:uint; while (_local2 < 3) { _local1[_local2] = (_local2 + 1); _local2++; }; return (_local1); } public static function createAccessibilityImplementation(_arg1:Sprite):void{ _arg1.accessibilityImplementation = new VolumeBarAccImpl(_arg1); } public static function enableAccessibility():void{ } } }//package fl.videoSection 60//Animations_46 (Ianswebsite_fla.Animations_46) package Ianswebsite_fla { import flash.display.*; public dynamic class Animations_46 extends MovieClip { public function Animations_46(){ addFrameScript(11, frame12); } function frame12(){ stop(); } } }//package Ianswebsite_flaSection 61//Comicsfinal_45 (Ianswebsite_fla.Comicsfinal_45) package Ianswebsite_fla { import flash.display.*; public dynamic class Comicsfinal_45 extends MovieClip { public function Comicsfinal_45(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12); } function frame1(){ stop(); } function frame2(){ stop(); } function frame3(){ stop(); } function frame4(){ stop(); } function frame5(){ stop(); } function frame6(){ stop(); } function frame7(){ stop(); } function frame8(){ stop(); } function frame10(){ stop(); } function frame11(){ stop(); } function frame12(){ stop(); } function frame9(){ stop(); } } }//package Ianswebsite_flaSection 62//comicthumbs_43 (Ianswebsite_fla.comicthumbs_43) package Ianswebsite_fla { import flash.display.*; public dynamic class comicthumbs_43 extends MovieClip { public function comicthumbs_43(){ addFrameScript(17, frame18); } function frame18(){ stop(); } } }//package Ianswebsite_flaSection 63//fineart_73 (Ianswebsite_fla.fineart_73) package Ianswebsite_fla { import flash.display.*; public dynamic class fineart_73 extends MovieClip { public function fineart_73(){ addFrameScript(12, frame13); } function frame13(){ stop(); } } }//package Ianswebsite_flaSection 64//GdImgFineart_mc_70 (Ianswebsite_fla.GdImgFineart_mc_70) package Ianswebsite_fla { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class GdImgFineart_mc_70 extends MovieClip { public var SimmiWebsite:URLRequest; public var SampleSiteTwo:MovieClip; public var SiteMockup:URLRequest; public var SimmiSite:MovieClip; public function GdImgFineart_mc_70(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16); } public function fakeSiteOne(_arg1:MouseEvent):void{ navigateToURL(SimmiWebsite); } function frame10(){ stop(); } function frame11(){ stop(); } function frame12(){ stop(); } function frame13(){ stop(); } function frame15(){ stop(); SimmiSite.buttonMode = true; SimmiWebsite = new URLRequest("http://www.iantopple.com/SimmiSampleSite.swf"); SimmiSite.addEventListener(MouseEvent.CLICK, fakeSiteOne); } function frame16(){ stop(); SampleSiteTwo.buttonMode = true; SiteMockup = new URLRequest("http://www.iantopple.com/Sample%20site%20for%20Drigz%20with%20image%20loader/Drgiz%20correct%20site5.swf"); SampleSiteTwo.addEventListener(MouseEvent.CLICK, fakeSiteTwo); } function frame14(){ stop(); } function frame1(){ stop(); } function frame2(){ stop(); } function frame3(){ stop(); } function frame4(){ stop(); } function frame5(){ stop(); } function frame6(){ stop(); } function frame7(){ stop(); } function frame8(){ stop(); } public function fakeSiteTwo(_arg1:MouseEvent):void{ navigateToURL(SiteMockup); } function frame9(){ stop(); } } }//package Ianswebsite_flaSection 65//GettingOutpopup_48 (Ianswebsite_fla.GettingOutpopup_48) package Ianswebsite_fla { import fl.video.*; import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.utils.*; import flash.system.*; import flash.text.*; import flash.accessibility.*; import flash.ui.*; import adobe.utils.*; import flash.errors.*; import flash.external.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class GettingOutpopup_48 extends MovieClip { public var __id0_:FLVPlayback; public var xbutton_mc:SimpleButton; public var __setPropDict:Dictionary; public function GettingOutpopup_48(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6); } public function theXbutton(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop(1); } public function theXbutton4(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop(1); } function frame1(){ stop(); } function frame2(){ if ((((__setPropDict[__id0_] == undefined)) || (!((int(__setPropDict[__id0_]) == 2))))){ __setPropDict[__id0_] = 2; __setProp___id0__GettingOutpopup_Layer4_1(); }; stop(); xbutton_mc.addEventListener(MouseEvent.CLICK, theXbutton); } function frame3(){ if ((((__setPropDict[__id0_] == undefined)) || (!((int(__setPropDict[__id0_]) == 3))))){ __setPropDict[__id0_] = 3; __setProp___id0__GettingOutpopup_Layer4_2(); }; stop(); xbutton_mc.addEventListener(MouseEvent.CLICK, theXbutton1); } function frame4(){ if ((((__setPropDict[__id0_] == undefined)) || (!((int(__setPropDict[__id0_]) == 4))))){ __setPropDict[__id0_] = 4; __setProp___id0__GettingOutpopup_Layer4_3(); }; stop(); xbutton_mc.addEventListener(MouseEvent.CLICK, theXbutton2); } function frame5(){ if ((((__setPropDict[__id0_] == undefined)) || (!((int(__setPropDict[__id0_]) == 5))))){ __setPropDict[__id0_] = 5; __setProp___id0__GettingOutpopup_Layer4_4(); }; stop(); xbutton_mc.addEventListener(MouseEvent.CLICK, theXbutton3); } function frame6(){ if ((((__setPropDict[__id0_] == undefined)) || (!((int(__setPropDict[__id0_]) == 6))))){ __setPropDict[__id0_] = 6; __setProp___id0__GettingOutpopup_Layer4_5(); }; stop(); xbutton_mc.addEventListener(MouseEvent.CLICK, theXbutton4); } function __setProp___id0__GettingOutpopup_Layer4_1(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.autoPlay = true; __id0_.isLive = false; __id0_.scaleMode = "maintainAspectRatio"; __id0_.skin = "SkinUnderAllNoFullNoCaptionIan.swf"; __id0_.skinAutoHide = false; __id0_.skinBackgroundAlpha = 1; __id0_.skinBackgroundColor = 0x663300; __id0_.source = "agettingout.flv"; __id0_.volume = 1; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id0__GettingOutpopup_Layer4_2(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.autoPlay = true; __id0_.isLive = false; __id0_.scaleMode = "maintainAspectRatio"; __id0_.skin = "SkinUnderAllNoFullNoCaption.swf"; __id0_.skinAutoHide = false; __id0_.skinBackgroundAlpha = 1; __id0_.skinBackgroundColor = 0x330000; __id0_.source = "The Silent Years.flv"; __id0_.volume = 1; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id0__GettingOutpopup_Layer4_3(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.autoPlay = true; __id0_.isLive = false; __id0_.scaleMode = "maintainAspectRatio"; __id0_.skin = "SkinUnderAllNoFullNoCaption.swf"; __id0_.skinAutoHide = false; __id0_.skinBackgroundAlpha = 1; __id0_.skinBackgroundColor = 0x330000; __id0_.source = "aafterEffectsfinal.flv"; __id0_.volume = 1; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id0__GettingOutpopup_Layer4_4(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.autoPlay = true; __id0_.isLive = false; __id0_.scaleMode = "maintainAspectRatio"; __id0_.skin = "SkinUnderAllNoFullNoCaption.swf"; __id0_.skinAutoHide = false; __id0_.skinBackgroundAlpha = 1; __id0_.skinBackgroundColor = 0x330000; __id0_.source = "BeezleandBonotherealone.flv"; __id0_.volume = 1; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id0__GettingOutpopup_Layer4_5(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.autoPlay = true; __id0_.isLive = false; __id0_.scaleMode = "maintainAspectRatio"; __id0_.skin = "SkinUnderAllNoFullNoCaption.swf"; __id0_.skinAutoHide = false; __id0_.skinBackgroundAlpha = 1; __id0_.skinBackgroundColor = 0x330000; __id0_.source = "IanTopple_FrogAnim.flv"; __id0_.volume = 1; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } public function theXbutton1(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop(1); } public function theXbutton2(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop(1); } public function theXbutton3(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop(1); } } }//package Ianswebsite_flaSection 66//graphicdesignpage_52 (Ianswebsite_fla.graphicdesignpage_52) package Ianswebsite_fla { import flash.display.*; import com.greensock.*; import com.greensock.easing.*; public dynamic class graphicdesignpage_52 extends MovieClip { public var dadswebbanner:MovieClip; public var mobilemarketing:MovieClip; public var MixedMCover:MovieClip; public var JackoCover:MovieClip; public var simmiwebsite:MovieClip; public var mmlayout:MovieClip; public var TechInvest:MovieClip; public var postcardsampleone:MovieClip; public var OtherFlyer:MovieClip; public var MervCover:MovieClip; public var webad4:MovieClip; public var IPTVMagazineAd:MovieClip; public var postcardsampletwo:MovieClip; public var AnalystInsider:MovieClip; public var OfallonFlyer:MovieClip; public var samplesitetwo:MovieClip; public function graphicdesignpage_52(){ addFrameScript(0, frame1, 17, frame18); } function frame18(){ stop(); } function frame1(){ TweenLite.from(IPTVMagazineAd, 0.3, {x:50, ease:Back.easeOut}); TweenLite.from(TechInvest, 0.3, {x:50, ease:Back.easeOut, delay:0.1}); TweenLite.from(AnalystInsider, 0.3, {x:50, ease:Back.easeOut, delay:0.2}); TweenLite.from(mobilemarketing, 0.3, {x:50, ease:Back.easeOut, delay:0.3}); TweenLite.from(dadswebbanner, 0.3, {x:50, ease:Back.easeOut, delay:0.4}); TweenLite.from(webad4, 0.3, {x:50, ease:Back.easeOut, delay:0.5}); TweenLite.from(JackoCover, 0.3, {x:50, ease:Back.easeOut, delay:0.6}); TweenLite.from(MervCover, 0.3, {x:50, ease:Back.easeOut, delay:0.7}); TweenLite.from(OfallonFlyer, 0.3, {x:50, ease:Back.easeOut, delay:0.8}); TweenLite.from(OtherFlyer, 0.3, {x:50, ease:Back.easeOut, delay:0.9}); TweenLite.from(MixedMCover, 0.3, {x:50, ease:Back.easeOut, delay:1}); TweenLite.from(postcardsampleone, 0.3, {x:50, ease:Back.easeOut, delay:1.1}); TweenLite.from(postcardsampletwo, 0.3, {x:50, ease:Back.easeOut, delay:1.2}); TweenLite.from(mmlayout, 0.3, {x:50, ease:Back.easeOut, delay:1.3}); TweenLite.from(simmiwebsite, 0.3, {x:50, ease:Back.easeOut, delay:1.4}); TweenLite.from(samplesitetwo, 0.3, {x:50, ease:Back.easeOut, delay:1.5}); } } }//package Ianswebsite_flaSection 67//illusimages_41 (Ianswebsite_fla.illusimages_41) package Ianswebsite_fla { import flash.display.*; public dynamic class illusimages_41 extends MovieClip { public function illusimages_41(){ addFrameScript(0, frame1, 1, frame2, 2, frame3); } function frame1(){ stop(); } function frame2(){ stop(); } function frame3(){ stop(); } } }//package Ianswebsite_flaSection 68//illustrationthumbnails_34 (Ianswebsite_fla.illustrationthumbnails_34) package Ianswebsite_fla { import flash.display.*; import com.greensock.*; import com.greensock.easing.*; public dynamic class illustrationthumbnails_34 extends MovieClip { public var charactertwothumb:MovieClip; public var sickthumb:MovieClip; public var characteronethumb:MovieClip; public function illustrationthumbnails_34(){ addFrameScript(0, frame1, 16, frame17); } function frame1(){ TweenLite.from(characteronethumb, 0.3, {x:627, ease:Back.easeOut}); TweenLite.from(charactertwothumb, 0.3, {x:685.45, ease:Back.easeOut, delay:0.1}); TweenLite.from(sickthumb, 0.3, {x:743.15, ease:Back.easeOut, delay:0.3}); } function frame17(){ stop(); } } }//package Ianswebsite_flaSection 69//linksbtn_79 (Ianswebsite_fla.linksbtn_79) package Ianswebsite_fla { import flash.display.*; public dynamic class linksbtn_79 extends MovieClip { public var buttonLabel3_mc:MovieClip; public function linksbtn_79(){ addFrameScript(0, frame1, 8, frame9, 19, frame20, 20, frame21); } function frame1(){ stop(); } function frame20(){ gotoAndStop("up"); } function frame21(){ stop(); } function frame9(){ stop(); } } }//package Ianswebsite_flaSection 70//linksbtncopy_86 (Ianswebsite_fla.linksbtncopy_86) package Ianswebsite_fla { import flash.display.*; public dynamic class linksbtncopy_86 extends MovieClip { public var buttonLabel5_mc:MovieClip; public function linksbtncopy_86(){ addFrameScript(0, frame1, 8, frame9, 19, frame20, 20, frame21); } function frame9(){ stop(); } function frame1(){ stop(); } function frame20(){ gotoAndStop("up"); } function frame21(){ stop(); } } }//package Ianswebsite_flaSection 71//MainTimeline (Ianswebsite_fla.MainTimeline) package Ianswebsite_fla { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import com.greensock.*; import flash.utils.*; import flash.system.*; import flash.text.*; import fl.transitions.easing.*; import com.greensock.easing.*; import fl.transitions.*; import flash.accessibility.*; import flash.ui.*; import adobe.utils.*; import flash.errors.*; import flash.external.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class MainTimeline extends MovieClip { public var comicstrans_mc:MovieClip; public var PortImgMisc_mc:MovieClip; public var fadeComicsImg:Tween; public var loader:URLLoader; public var contact_mc:MovieClip; public var PortImgGD_mc:MovieClip; public var myBlog_mc:MovieClip; public var email2:URLRequest; public var resume:URLRequest; public var PortImgFineart_mc:MovieClip; public var illustrations_mc:MovieClip; public var aboutcontext_txt:TextField; public var fadeFineartImg:Tween; public var Animartimgs_mc:MovieClip; public var gdtrans_mc:MovieClip; public var GettingOutPop_mc:MovieClip; public var animations_mc:MovieClip; public var comicsfinal_mc:MovieClip; public var thumbImgscomics_mc:MovieClip; public var Devonlink:URLRequest; public var Brian_mc:MovieClip; public var resumePdf_mc:MovieClip; public var fineartimgs_mc:MovieClip; public var bloglink:URLRequest; public var fadeGDImg:Tween; public var Justinlink:URLRequest; public var activePage:String; public var myMask:MovieClip; public var miscimgs_mc:MovieClip; public var bounds:Rectangle; public var comicsthumbs:MovieClip; public var fadeIllusImg:Tween; public var thumbImgsillus_mc:MovieClip; public var Brianlink:URLRequest; public var resume_mc:MovieClip; public var home_mc:MovieClip; public var oldY:Number; public var fadeMiscImg:Tween; public var portImgsIllus_mc:MovieClip; public var Devon_mc:MovieClip; public var scrollMC:MovieClip; public var fineart_mc:MovieClip; public var Kennethlink:URLRequest; public var pStatus_txt:TextField; public var Kenneth_mc:MovieClip; public var email_btn:SimpleButton; public var ResumePages_mc:MovieClip; public var Justin_mc:MovieClip; public var RESUME_HEIGHT:Number; public var transmiscart_mc:MovieClip; public var miscellaneous_mc:MovieClip; public var about_mc:MovieClip; public var illustrans_mc:MovieClip; public var email:URLRequest; public var iantopple_mc:MovieClip; public var Hellen_mc:MovieClip; public var comics_mc:MovieClip; public var graphicdesign_mc:MovieClip; public var contact_txt:TextField; public var pBar_mc:MovieClip; public var transfineart_mc:MovieClip; public var Helenlink:URLRequest; public var MASK_HEIGHT:Number; public var links_mc:MovieClip; public var thumbImgsgd_mc:MovieClip; public var scrolling:Boolean; public function MainTimeline(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12); } public function goContact(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("contactPg"); resetBtns(); activePage = "contact"; trace(activePage); } public function goillus(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("illuspg"); resetBtns(); activePage = "illus"; trace(activePage); } public function onComplete(_arg1:Event):void{ aboutcontext_txt.htmlText = _arg1.target.data; } public function goFineArt(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("finartPg"); resetBtns(); activePage = "fineart"; trace(activePage); } public function whichPage(_arg1):void{ if (activePage == "home"){ home_mc.gotoAndStop("active"); } else { if (activePage == "about"){ about_mc.gotoAndStop("active"); } else { if (activePage == "illus"){ illustrations_mc.gotoAndStop("active"); } else { if (activePage == "contact"){ contact_mc.gotoAndStop("active"); } else { if (activePage == "animation"){ animations_mc.gotoAndStop("active"); } else { if (activePage == "comics"){ comics_mc.gotoAndStop("active"); } else { if (activePage == "fineart"){ fineart_mc.gotoAndStop("active"); } else { if (activePage == "graphicdesign"){ graphicdesign_mc.gotoAndStop("active"); } else { if (activePage == "misc"){ miscellaneous_mc.gotoAndStop("active"); } else { if (activePage == "resume"){ resume_mc.gotoAndStop("active"); } else { if (activePage == "links"){ links_mc.gotoAndStop("active"); }; }; }; }; }; }; }; }; }; }; }; } function frame11(){ loader = new URLLoader(); loader.load(new URLRequest("abouttext/aboutpage.txt")); loader.addEventListener(Event.COMPLETE, onComplete); } function frame12(){ stop(); iantopple_mc.buttonLabel5_mc.buttonLabel5_txt.text = "IanToppleartist@gmail.com"; iantopple_mc.buttonLabel5_mc.buttonLabel5_txt.mouseEnabled = false; iantopple_mc.buttonMode = true; iantopple_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim6); iantopple_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim6); email2 = new URLRequest("mailto: iantoppleartist@gmail.com"); iantopple_mc.addEventListener(MouseEvent.CLICK, emailMe); } public function emailMe(_arg1:MouseEvent):void{ navigateToURL(email); } function frame10(){ stop(); resumePdf_mc.buttonLabel4_mc.buttonLabel4_txt.text = "Click here for pdf"; resumePdf_mc.buttonLabel4_mc.buttonLabel4_txt.mouseEnabled = false; resumePdf_mc.buttonMode = true; resumePdf_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim4); resumePdf_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim4); resume = new URLRequest("Ian Topple resume.pdf"); resumePdf_mc.addEventListener(MouseEvent.CLICK, getresume); scrollMC.buttonMode = true; RESUME_HEIGHT = 1084; MASK_HEIGHT = 458.8; oldY = ResumePages_mc.y; ResumePages_mc.x = myMask.x; ResumePages_mc.y = myMask.y; ResumePages_mc.mask = myMask; bounds = new Rectangle(scrollMC.x, scrollMC.y, 0, 458.8); scrolling = false; scrollMC.addEventListener(MouseEvent.MOUSE_DOWN, startScroll); stage.addEventListener(MouseEvent.MOUSE_UP, stopScroll); addEventListener(Event.ENTER_FRAME, enterHandler); } public function emailMe2(_arg1:MouseEvent):void{ navigateToURL(email2); } public function OutAnim(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("out"); } public function showcomicimg11(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg11"); } function frame4(){ stop(); fadeComicsImg = new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); thumbImgscomics_mc.comicsbtn1.addEventListener(MouseEvent.CLICK, showcomicimg1); thumbImgscomics_mc.comicsbtn2.addEventListener(MouseEvent.CLICK, showcomicimg2); thumbImgscomics_mc.comicsbtn3.addEventListener(MouseEvent.CLICK, showcomicimg3); thumbImgscomics_mc.comicsbtn4.addEventListener(MouseEvent.CLICK, showcomicimg4); thumbImgscomics_mc.comicsbtn5.addEventListener(MouseEvent.CLICK, showcomicimg5); thumbImgscomics_mc.comicsbtn6.addEventListener(MouseEvent.CLICK, showcomicimg6); thumbImgscomics_mc.comicsbtn7.addEventListener(MouseEvent.CLICK, showcomicimg7); thumbImgscomics_mc.comicsbtn8.addEventListener(MouseEvent.CLICK, showcomicimg8); thumbImgscomics_mc.comicsbtn9.addEventListener(MouseEvent.CLICK, showcomicimg9); thumbImgscomics_mc.comicsbtn10.addEventListener(MouseEvent.CLICK, showcomicimg10); thumbImgscomics_mc.comicsbtn11.addEventListener(MouseEvent.CLICK, showcomicimg11); thumbImgscomics_mc.comicsbtn12.addEventListener(MouseEvent.CLICK, showcomicimg12); } function frame5(){ stop(); Animartimgs_mc.animartbtn1.addEventListener(MouseEvent.CLICK, showAnimImage1); Animartimgs_mc.animartbtn2.addEventListener(MouseEvent.CLICK, showAnimImage2); Animartimgs_mc.animartbtn3.addEventListener(MouseEvent.CLICK, showAnimImage3); Animartimgs_mc.animartbtn4.addEventListener(MouseEvent.CLICK, showAnimImage4); Animartimgs_mc.animartbtn5.addEventListener(MouseEvent.CLICK, showAnimImage5); } function frame6(){ stop(); fadeGDImg = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); thumbImgsgd_mc.gdbtn1.addEventListener(MouseEvent.CLICK, showGDImage1); thumbImgsgd_mc.gdbtn2.addEventListener(MouseEvent.CLICK, showGDImage2); thumbImgsgd_mc.gdbtn3.addEventListener(MouseEvent.CLICK, showGDImage3); thumbImgsgd_mc.gdbtn4.addEventListener(MouseEvent.CLICK, showGDImage4); thumbImgsgd_mc.gdbtn5.addEventListener(MouseEvent.CLICK, showGDImage5); thumbImgsgd_mc.gdbtn6.addEventListener(MouseEvent.CLICK, showGDImage6); thumbImgsgd_mc.gdbtn7.addEventListener(MouseEvent.CLICK, showGDImage7); thumbImgsgd_mc.gdbtn8.addEventListener(MouseEvent.CLICK, showGDImage8); thumbImgsgd_mc.gdbtn9.addEventListener(MouseEvent.CLICK, showGDImage9); thumbImgsgd_mc.gdbtn10.addEventListener(MouseEvent.CLICK, showGDImage10); thumbImgsgd_mc.gdbtn11.addEventListener(MouseEvent.CLICK, showGDImage11); thumbImgsgd_mc.gdbtn12.addEventListener(MouseEvent.CLICK, showGDImage12); thumbImgsgd_mc.gdbtn13.addEventListener(MouseEvent.CLICK, showGDImage13); thumbImgsgd_mc.gdbtn14.addEventListener(MouseEvent.CLICK, showGDImage14); thumbImgsgd_mc.gdbtn15.addEventListener(MouseEvent.CLICK, showGDImage15); thumbImgsgd_mc.gdbtn16.addEventListener(MouseEvent.CLICK, showGDImage16); } public function showcomicimg10(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg10"); } function frame7(){ stop(); fadeFineartImg = new Tween(transfineart_mc, "alpha", Back.easeOut, 1, 0, 2, true); fineartimgs_mc.fineartbtn1.addEventListener(MouseEvent.CLICK, showImage1); fineartimgs_mc.fineartbtn2.addEventListener(MouseEvent.CLICK, showImage2); fineartimgs_mc.fineartbtn3.addEventListener(MouseEvent.CLICK, showImage3); fineartimgs_mc.fineartbtn4.addEventListener(MouseEvent.CLICK, showImage4); fineartimgs_mc.fineartbtn5.addEventListener(MouseEvent.CLICK, showImage5); fineartimgs_mc.fineartbtn6.addEventListener(MouseEvent.CLICK, showImage6); } function frame2(){ stop(); activePage = "home"; illustrations_mc.buttonLabel_mc.buttonLabel_txt.text = "ILLUSTRATIONS"; comics_mc.buttonLabel_mc.buttonLabel_txt.text = "COMICS"; animations_mc.buttonLabel_mc.buttonLabel_txt.text = "ANIMATIONS"; graphicdesign_mc.buttonLabel_mc.buttonLabel_txt.text = "GRAPHIC DESIGN"; fineart_mc.buttonLabel_mc.buttonLabel_txt.text = "FINE ART"; miscellaneous_mc.buttonLabel_mc.buttonLabel_txt.text = "MISCELLANEOUS"; home_mc.buttonLabel2_mc.buttonLabel2_txt.text = "HOME"; about_mc.buttonLabel2_mc.buttonLabel2_txt.text = "ABOUT"; resume_mc.buttonLabel2_mc.buttonLabel2_txt.text = "RESUME"; contact_mc.buttonLabel2_mc.buttonLabel2_txt.text = "CONTACT"; links_mc.buttonLabel2_mc.buttonLabel2_txt.text = "LINKS"; illustrations_mc.buttonLabel_mc.buttonLabel_txt.mouseEnabled = false; comics_mc.buttonLabel_mc.buttonLabel_txt.mouseEnabled = false; animations_mc.buttonLabel_mc.buttonLabel_txt.mouseEnabled = false; graphicdesign_mc.buttonLabel_mc.buttonLabel_txt.mouseEnabled = false; fineart_mc.buttonLabel_mc.buttonLabel_txt.mouseEnabled = false; miscellaneous_mc.buttonLabel_mc.buttonLabel_txt.mouseEnabled = false; home_mc.buttonLabel2_mc.buttonLabel2_txt.mouseEnabled = false; about_mc.buttonLabel2_mc.buttonLabel2_txt.mouseEnabled = false; resume_mc.buttonLabel2_mc.buttonLabel2_txt.mouseEnabled = false; contact_mc.buttonLabel2_mc.buttonLabel2_txt.mouseEnabled = false; links_mc.buttonLabel2_mc.buttonLabel2_txt.mouseEnabled = false; illustrations_mc.buttonMode = true; comics_mc.buttonMode = true; animations_mc.buttonMode = true; graphicdesign_mc.buttonMode = true; fineart_mc.buttonMode = true; miscellaneous_mc.buttonMode = true; home_mc.buttonMode = true; about_mc.buttonMode = true; resume_mc.buttonMode = true; contact_mc.buttonMode = true; links_mc.buttonMode = true; illustrations_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); comics_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); animations_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); graphicdesign_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); fineart_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); miscellaneous_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); home_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); about_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); resume_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); contact_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); links_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim); illustrations_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); comics_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); animations_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); graphicdesign_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); fineart_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); miscellaneous_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); home_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); about_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); resume_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); contact_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); links_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim); email = new URLRequest("mailto: iantoppleartist@gmail.com"); email_btn.addEventListener(MouseEvent.CLICK, emailMe); illustrations_mc.addEventListener(MouseEvent.CLICK, goillus); home_mc.addEventListener(MouseEvent.CLICK, goHome); graphicdesign_mc.addEventListener(MouseEvent.CLICK, goGD); animations_mc.addEventListener(MouseEvent.CLICK, goAnim); fineart_mc.addEventListener(MouseEvent.CLICK, goFineArt); comics_mc.addEventListener(MouseEvent.CLICK, goComics); links_mc.addEventListener(MouseEvent.CLICK, goLinks); resume_mc.addEventListener(MouseEvent.CLICK, goResume); miscellaneous_mc.addEventListener(MouseEvent.CLICK, goMisc); about_mc.addEventListener(MouseEvent.CLICK, goAbout); contact_mc.addEventListener(MouseEvent.CLICK, goContact); addEventListener(Event.ENTER_FRAME, whichPage); } function frame8(){ stop(); fadeMiscImg = new Tween(transmiscart_mc, "alpha", Back.easeOut, 1, 0, 2, true); miscimgs_mc.miscbtn1.addEventListener(MouseEvent.CLICK, showMisc1); miscimgs_mc.miscbtn2.addEventListener(MouseEvent.CLICK, showMisc2); miscimgs_mc.miscbtn3.addEventListener(MouseEvent.CLICK, showMisc3); miscimgs_mc.miscbtn4.addEventListener(MouseEvent.CLICK, showMisc4); } function frame9(){ stop(); myBlog_mc.buttonLabel3_mc.buttonLabel3_txt.text = "My Blog"; Hellen_mc.buttonLabel3_mc.buttonLabel3_txt.text = "Helen Zhu"; Devon_mc.buttonLabel3_mc.buttonLabel3_txt.text = "Devon Cady-Lee"; Brian_mc.buttonLabel3_mc.buttonLabel3_txt.text = "Brian Elig"; Kenneth_mc.buttonLabel3_mc.buttonLabel3_txt.text = "Kenneth Sanders"; Justin_mc.buttonLabel3_mc.buttonLabel3_txt.text = "Justin Wolfson"; myBlog_mc.buttonLabel3_mc.buttonLabel3_txt.mouseEnabled = false; Hellen_mc.buttonLabel3_mc.buttonLabel3_txt.mouseEnabled = false; Devon_mc.buttonLabel3_mc.buttonLabel3_txt.mouseEnabled = false; Brian_mc.buttonLabel3_mc.buttonLabel3_txt.mouseEnabled = false; Kenneth_mc.buttonLabel3_mc.buttonLabel3_txt.mouseEnabled = false; Justin_mc.buttonLabel3_mc.buttonLabel3_txt.mouseEnabled = false; myBlog_mc.buttonMode = true; Hellen_mc.buttonMode = true; Devon_mc.buttonMode = true; Brian_mc.buttonMode = true; Kenneth_mc.buttonMode = true; Justin_mc.buttonMode = true; myBlog_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim3); Hellen_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim3); Devon_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim3); Brian_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim3); Kenneth_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim3); Justin_mc.addEventListener(MouseEvent.ROLL_OVER, OverAnim3); myBlog_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim3); Hellen_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim3); Devon_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim3); Brian_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim3); Kenneth_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim3); Justin_mc.addEventListener(MouseEvent.ROLL_OUT, OutAnim3); bloglink = new URLRequest("http://istmin.blogspot.com"); myBlog_mc.addEventListener(MouseEvent.CLICK, blog); Helenlink = new URLRequest("http://www.Helenzhu.com"); Hellen_mc.addEventListener(MouseEvent.CLICK, HelenLink); Devonlink = new URLRequest("http://www.Gorrem.com"); Devon_mc.addEventListener(MouseEvent.CLICK, DevonLink); Brianlink = new URLRequest("http://www.BrianElig.com"); Brian_mc.addEventListener(MouseEvent.CLICK, BrianLink); Kennethlink = new URLRequest("http://www.KennethSandersArt.com"); Kenneth_mc.addEventListener(MouseEvent.CLICK, KennethLink); Justinlink = new URLRequest("http://www.sparkletoast.com"); Justin_mc.addEventListener(MouseEvent.CLICK, JustinLink); } function frame1(){ stop(); loaderInfo.addEventListener(ProgressEvent.PROGRESS, checkLoading); } public function goComics(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("comicsPg"); resetBtns(); activePage = "comics"; trace(activePage); } public function showAnimImage1(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(GettingOutPop_mc, "y", Strong.easeOut, -637.6, 280.5, 2, true); GettingOutPop_mc.gotoAndStop("GO"); } public function showAnimImage2(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(GettingOutPop_mc, "y", Strong.easeOut, -637.6, 280.5, 2, true); GettingOutPop_mc.gotoAndStop("MusicV"); } public function showAnimImage3(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(GettingOutPop_mc, "y", Strong.easeOut, -637.6, 280.5, 2, true); GettingOutPop_mc.gotoAndStop("AF"); } public function showAnimImage4(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(GettingOutPop_mc, "y", Strong.easeOut, -637.6, 280.5, 2, true); GettingOutPop_mc.gotoAndStop("BandA"); } public function showcomicimg12(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg12"); } function frame3(){ stop(); fadeIllusImg = new Tween(illustrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); thumbImgsillus_mc.illusbtn1.addEventListener(MouseEvent.CLICK, showImageIllus1); thumbImgsillus_mc.illusbtn2.addEventListener(MouseEvent.CLICK, showImageIllus2); thumbImgsillus_mc.illusbtn3.addEventListener(MouseEvent.CLICK, showImageIllus3); thumbImgsillus_mc.illusbtn4.addEventListener(MouseEvent.CLICK, showImageIllus4); thumbImgsillus_mc.illusbtn5.addEventListener(MouseEvent.CLICK, showImageIllus5); thumbImgsillus_mc.illusbtn6.addEventListener(MouseEvent.CLICK, showImageIllus6); } public function showAnimImage5(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(GettingOutPop_mc, "y", Strong.easeOut, -637.6, 280.5, 2, true); GettingOutPop_mc.gotoAndStop("Maya"); } public function DevonLink(_arg1:MouseEvent):void{ navigateToURL(Devonlink); } public function showGDImage10(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage10"); } public function showGDImage11(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage11"); } public function showGDImage12(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage12"); } public function showGDImage13(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage13"); } public function showGDImage14(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage14"); } public function showGDImage15(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage15"); } public function showGDImage16(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage16"); } public function JustinLink(_arg1:MouseEvent):void{ navigateToURL(Justinlink); } public function BrianLink(_arg1:MouseEvent):void{ navigateToURL(Brianlink); } public function getresume(_arg1:MouseEvent):void{ navigateToURL(resume); } public function showImageIllus1(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(illustrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); portImgsIllus_mc.gotoAndStop("illusimg1"); } public function showImageIllus2(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(illustrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); portImgsIllus_mc.gotoAndStop("illusimg2"); } public function showImageIllus3(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(illustrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); portImgsIllus_mc.gotoAndStop("illusimg3"); } public function showImageIllus4(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(illustrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); portImgsIllus_mc.gotoAndStop("illusimg4"); } public function showImageIllus6(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(illustrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); portImgsIllus_mc.gotoAndStop("illusimg6"); } public function showImageIllus5(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(illustrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); portImgsIllus_mc.gotoAndStop("illusimg5"); } public function checkLoading(_arg1:ProgressEvent):void{ var _local2:Number = ((_arg1.bytesLoaded / _arg1.bytesTotal) * 100); pBar_mc.scaleY = (_local2 / 100); pStatus_txt.text = (int(_local2) + "%"); if (_local2 == 100){ gotoAndPlay("homePg"); }; } public function goAnim(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("animationsPg"); resetBtns(); activePage = "animation"; trace(activePage); } public function OverAnim(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("over"); } public function goResume(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("ResumePg"); resetBtns(); activePage = "resume"; trace(activePage); } public function KennethLink(_arg1:MouseEvent):void{ navigateToURL(Kennethlink); } public function showcomicimg1(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg1"); } public function showcomicimg2(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg2"); } public function showcomicimg3(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg3"); } public function showcomicimg4(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg4"); } public function showcomicimg5(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg5"); } public function showcomicimg6(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg6"); } public function showcomicimg7(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg7"); } public function showcomicimg8(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg8"); } public function showcomicimg9(_arg1:MouseEvent):void{ new Tween(comicstrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); comicsfinal_mc.gotoAndStop("comicsPg9"); } public function enterHandler(_arg1:Event):void{ var _local2:Number; var _local3:Number; var _local4:Number; if (scrolling == true){ _local2 = Math.round((scrollMC.y - bounds.y)); _local3 = (_local2 / MASK_HEIGHT); oldY = ResumePages_mc.y; _local4 = (-(((RESUME_HEIGHT - MASK_HEIGHT) * _local3)) + myMask.y); if (Math.abs((oldY - _local4)) > 5){ TweenLite.to(ResumePages_mc, 0.3, {y:_local4}); }; }; } public function stopScroll(_arg1:Event):void{ scrolling = false; scrollMC.stopDrag(); } public function showGDImage4(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage4"); } public function showGDImage5(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage5"); } public function showGDImage6(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage6"); } public function showGDImage7(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage7"); } public function showGDImage1(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage1"); } public function showGDImage2(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage2"); } public function showGDImage3(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage3"); } public function showGDImage8(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage8"); } public function showGDImage9(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(gdtrans_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgGD_mc.gotoAndStop("GDPage9"); } public function goAbout(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("aboutPg"); resetBtns(); activePage = "about"; trace(activePage); } public function resetBtns():void{ home_mc.gotoAndStop("up"); about_mc.gotoAndStop("up"); illustrations_mc.gotoAndStop("up"); contact_mc.gotoAndStop("up"); animations_mc.gotoAndStop("up"); comics_mc.gotoAndStop("up"); fineart_mc.gotoAndStop("up"); graphicdesign_mc.gotoAndStop("up"); miscellaneous_mc.gotoAndStop("up"); resume_mc.gotoAndStop("up"); links_mc.gotoAndStop("up"); } public function showImage1(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transfineart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgFineart_mc.gotoAndStop("fineartimg1"); } public function showImage3(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transfineart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgFineart_mc.gotoAndStop("fineartimg3"); } public function showImage4(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transfineart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgFineart_mc.gotoAndStop("fineartimg4"); } public function showImage5(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transfineart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgFineart_mc.gotoAndStop("fineartimg5"); } public function showImage6(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transfineart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgFineart_mc.gotoAndStop("fineartimg6"); } public function showImage2(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transfineart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgFineart_mc.gotoAndStop("fineartimg2"); } public function blog(_arg1:MouseEvent):void{ navigateToURL(bloglink); } public function OverAnim3(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("over"); } public function goLinks(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("LinksPg"); resetBtns(); activePage = "links"; trace(activePage); } public function OutAnim3(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("out"); } public function OutAnim4(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("out"); } public function OverAnim4(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("over"); } public function OutAnim6(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("out"); } public function goGD(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("graphicdesignPg"); resetBtns(); activePage = "graphicdesign"; trace(activePage); } public function showMisc1(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transmiscart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgMisc_mc.gotoAndStop("miscartimg1"); } public function showMisc2(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transmiscart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgMisc_mc.gotoAndStop("miscartimg2"); } public function showMisc3(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transmiscart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgMisc_mc.gotoAndStop("miscartimg3"); } public function showMisc4(_arg1:MouseEvent):void{ var _local2:Tween = new Tween(transmiscart_mc, "alpha", Back.easeOut, 1, 0, 2, true); PortImgMisc_mc.gotoAndStop("miscartimg4"); } public function OverAnim6(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("over"); } public function startScroll(_arg1:Event):void{ scrolling = true; scrollMC.startDrag(false, bounds); } public function goHome(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("homePg"); resetBtns(); activePage = "home"; trace(activePage); } public function goMisc(_arg1:MouseEvent):void{ SoundMixer.stopAll(); gotoAndStop("MiscPg"); resetBtns(); activePage = "misc"; trace(activePage); } public function HelenLink(_arg1:MouseEvent):void{ navigateToURL(Helenlink); } } }//package Ianswebsite_flaSection 72//misc_76 (Ianswebsite_fla.misc_76) package Ianswebsite_fla { import flash.display.*; public dynamic class misc_76 extends MovieClip { public function misc_76(){ addFrameScript(14, frame15); } function frame15(){ stop(); } } }//package Ianswebsite_flaSection 73//miscimages_78 (Ianswebsite_fla.miscimages_78) package Ianswebsite_fla { import flash.display.*; public dynamic class miscimages_78 extends MovieClip { public function miscimages_78(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4); } function frame1(){ stop(); } function frame2(){ stop(); } function frame3(){ stop(); } function frame4(){ stop(); } } }//package Ianswebsite_flaSection 74//navmc_14 (Ianswebsite_fla.navmc_14) package Ianswebsite_fla { import flash.display.*; public dynamic class navmc_14 extends MovieClip { public var buttonLabel_mc:MovieClip; public function navmc_14(){ addFrameScript(0, frame1, 8, frame9, 19, frame20, 20, frame21); } function frame1(){ stop(); } function frame20(){ gotoAndStop("up"); } function frame9(){ stop(); } function frame21(){ stop(); } } }//package Ianswebsite_flaSection 75//portImgsFineArt_mc_75 (Ianswebsite_fla.portImgsFineArt_mc_75) package Ianswebsite_fla { import flash.display.*; public dynamic class portImgsFineArt_mc_75 extends MovieClip { public function portImgsFineArt_mc_75(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6); } function frame1(){ stop(); } function frame2(){ stop(); } function frame3(){ stop(); } function frame4(){ stop(); } function frame5(){ stop(); } function frame6(){ stop(); } } }//package Ianswebsite_flaSection 76//resumebtncopy_84 (Ianswebsite_fla.resumebtncopy_84) package Ianswebsite_fla { import flash.display.*; public dynamic class resumebtncopy_84 extends MovieClip { public var buttonLabel4_mc:MovieClip; public function resumebtncopy_84(){ addFrameScript(0, frame1, 8, frame9, 19, frame20, 20, frame21); } function frame1(){ stop(); } function frame20(){ gotoAndStop("up"); } function frame9(){ stop(); } function frame21(){ stop(); } } }//package Ianswebsite_flaSection 77//secondbutton_17 (Ianswebsite_fla.secondbutton_17) package Ianswebsite_fla { import flash.display.*; public dynamic class secondbutton_17 extends MovieClip { public var buttonLabel2_mc:MovieClip; public function secondbutton_17(){ addFrameScript(0, frame1, 8, frame9, 19, frame20, 20, frame21); } function frame21(){ stop(); } function frame1(){ stop(); } function frame20(){ gotoAndStop("up"); } function frame9(){ stop(); } } }//package Ianswebsite_flaSection 78//xbuttonmovieclip_50 (Ianswebsite_fla.xbuttonmovieclip_50) package Ianswebsite_fla { import flash.display.*; public dynamic class xbuttonmovieclip_50 extends MovieClip { public function xbuttonmovieclip_50(){ addFrameScript(4, frame5); } function frame5(){ stop(); } } }//package Ianswebsite_flaSection 79//focusRectSkin (focusRectSkin) package { import flash.display.*; public dynamic class focusRectSkin extends MovieClip { } }//packageSection 80//ScrollArrowDown_disabledSkin (ScrollArrowDown_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_disabledSkin extends MovieClip { } }//packageSection 81//ScrollArrowDown_downSkin (ScrollArrowDown_downSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_downSkin extends MovieClip { } }//packageSection 82//ScrollArrowDown_overSkin (ScrollArrowDown_overSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_overSkin extends MovieClip { } }//packageSection 83//ScrollArrowDown_upSkin (ScrollArrowDown_upSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_upSkin extends MovieClip { } }//packageSection 84//ScrollArrowUp_disabledSkin (ScrollArrowUp_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_disabledSkin extends MovieClip { } }//packageSection 85//ScrollArrowUp_downSkin (ScrollArrowUp_downSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_downSkin extends MovieClip { } }//packageSection 86//ScrollArrowUp_overSkin (ScrollArrowUp_overSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_overSkin extends MovieClip { } }//packageSection 87//ScrollArrowUp_upSkin (ScrollArrowUp_upSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_upSkin extends MovieClip { } }//packageSection 88//ScrollBar_thumbIcon (ScrollBar_thumbIcon) package { import flash.display.*; public dynamic class ScrollBar_thumbIcon extends MovieClip { } }//packageSection 89//ScrollThumb_downSkin (ScrollThumb_downSkin) package { import flash.display.*; public dynamic class ScrollThumb_downSkin extends MovieClip { } }//packageSection 90//ScrollThumb_overSkin (ScrollThumb_overSkin) package { import flash.display.*; public dynamic class ScrollThumb_overSkin extends MovieClip { } }//packageSection 91//ScrollThumb_upSkin (ScrollThumb_upSkin) package { import flash.display.*; public dynamic class ScrollThumb_upSkin extends MovieClip { } }//packageSection 92//ScrollTrack_skin (ScrollTrack_skin) package { import flash.display.*; public dynamic class ScrollTrack_skin extends MovieClip { } }//package
Library Items
Symbol 1 Graphic | Used by:2 | |
Symbol 2 MovieClip | Uses:1 | Used by:34 |
Symbol 3 MovieClip {fl.core.ComponentShim} | Used by:34 | |
Symbol 4 Graphic | Used by:5 | |
Symbol 5 MovieClip {focusRectSkin} | Uses:4 | Used by:34 |
Symbol 6 Graphic | Used by:7 | |
Symbol 7 MovieClip {ScrollTrack_skin} | Uses:6 | Used by:34 |
Symbol 8 Graphic | Used by:11 | |
Symbol 9 Graphic | Used by:10 13 17 27 | |
Symbol 10 MovieClip | Uses:9 | Used by:11 21 23 |
Symbol 11 MovieClip {ScrollArrowUp_downSkin} | Uses:8 10 | Used by:34 |
Symbol 12 Graphic | Used by:13 | |
Symbol 13 MovieClip {ScrollArrowDown_downSkin} | Uses:12 9 | Used by:34 |
Symbol 14 Graphic | Used by:15 | |
Symbol 15 MovieClip {ScrollThumb_downSkin} | Uses:14 | Used by:34 |
Symbol 16 Graphic | Used by:17 | |
Symbol 17 MovieClip {ScrollArrowDown_overSkin} | Uses:16 9 | Used by:34 |
Symbol 18 Graphic | Used by:19 | |
Symbol 19 MovieClip {ScrollThumb_overSkin} | Uses:18 | Used by:34 |
Symbol 20 Graphic | Used by:21 | |
Symbol 21 MovieClip {ScrollArrowUp_overSkin} | Uses:20 10 | Used by:34 |
Symbol 22 Graphic | Used by:23 | |
Symbol 23 MovieClip {ScrollArrowUp_upSkin} | Uses:22 10 | Used by:34 |
Symbol 24 Graphic | Used by:25 | |
Symbol 25 MovieClip {ScrollThumb_upSkin} | Uses:24 | Used by:34 |
Symbol 26 Graphic | Used by:27 | |
Symbol 27 MovieClip {ScrollArrowDown_upSkin} | Uses:26 9 | Used by:34 |
Symbol 28 Graphic | Used by:29 | |
Symbol 29 MovieClip {ScrollArrowDown_disabledSkin} | Uses:28 | Used by:34 |
Symbol 30 Graphic | Used by:31 | |
Symbol 31 MovieClip {ScrollArrowUp_disabledSkin} | Uses:30 | Used by:34 |
Symbol 32 Graphic | Used by:33 | |
Symbol 33 MovieClip {ScrollBar_thumbIcon} | Uses:32 | Used by:34 |
Symbol 34 MovieClip {fl.controls.UIScrollBar} | Uses:2 3 5 7 11 13 15 17 19 21 23 25 27 29 31 33 | |
Symbol 35 MovieClip {fl.containers.UILoader} | ||
Symbol 36 Graphic | Used by:37 | |
Symbol 37 MovieClip | Uses:36 | Used by:41 |
Symbol 38 Bitmap | Used by:39 | |
Symbol 39 Graphic | Uses:38 | Used by:40 |
Symbol 40 MovieClip {fl.video.Icon} | Uses:39 | Used by:41 |
Symbol 41 MovieClip {fl.video.FLVPlayback} | Uses:37 40 | Used by:224 |
Symbol 42 Font | Used by:43 | |
Symbol 43 EditableText | Uses:42 | Used by:Timeline |
Symbol 44 Bitmap | Used by:46 | |
Symbol 45 Bitmap | Used by:46 | |
Symbol 46 Graphic | Uses:44 45 | Used by:47 |
Symbol 47 MovieClip | Uses:46 | Used by:Timeline |
Symbol 48 Graphic | Used by:49 | |
Symbol 49 MovieClip | Uses:48 | Used by:Timeline |
Symbol 50 MovieClip {fl.controls.Button} | ||
Symbol 51 Graphic | Used by:142 Timeline | |
Symbol 52 Font | Used by:53 54 87 88 91 374 377 392 | |
Symbol 53 Text | Uses:52 | Used by:Timeline |
Symbol 54 Text | Uses:52 | Used by:Timeline |
Symbol 55 Font | Used by:56 80 83 206 209 210 214 215 216 219 220 221 222 223 275 280 289 292 305 306 307 313 314 315 321 322 379 | |
Symbol 56 Text | Uses:55 | Used by:58 |
Symbol 57 Graphic | Used by:58 | |
Symbol 58 MovieClip | Uses:56 57 | Used by:Timeline |
Symbol 59 Graphic | Used by:Timeline | |
Symbol 60 Graphic | Used by:61 | |
Symbol 61 MovieClip | Uses:60 | Used by:77 |
Symbol 62 Graphic | Used by:63 | |
Symbol 63 MovieClip | Uses:62 | Used by:76 |
Symbol 64 Graphic | Used by:67 | |
Symbol 65 Graphic | Used by:66 | |
Symbol 66 MovieClip | Uses:65 | Used by:67 |
Symbol 67 MovieClip | Uses:64 66 | Used by:76 |
Symbol 68 Graphic | Used by:69 | |
Symbol 69 MovieClip | Uses:68 | Used by:76 |
Symbol 70 Graphic | Used by:71 | |
Symbol 71 MovieClip | Uses:70 | Used by:76 |
Symbol 72 Graphic | Used by:73 | |
Symbol 73 MovieClip | Uses:72 | Used by:76 |
Symbol 74 Graphic | Used by:75 | |
Symbol 75 MovieClip | Uses:74 | Used by:76 |
Symbol 76 MovieClip | Uses:63 67 69 71 73 75 | Used by:77 |
Symbol 77 MovieClip | Uses:61 76 | Used by:Timeline |
Symbol 78 Graphic | Used by:79 85 | |
Symbol 79 MovieClip | Uses:78 | Used by:82 |
Symbol 80 EditableText | Uses:55 | Used by:81 |
Symbol 81 MovieClip | Uses:80 | Used by:82 |
Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} | Uses:79 81 | Used by:Timeline |
Symbol 83 EditableText | Uses:55 | Used by:84 |
Symbol 84 MovieClip | Uses:83 | Used by:86 |
Symbol 85 MovieClip | Uses:78 | Used by:86 |
Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} | Uses:84 85 | Used by:Timeline |
Symbol 87 Text | Uses:52 | Used by:93 |
Symbol 88 Text | Uses:52 | Used by:92 |
Symbol 89 Graphic | Used by:90 | |
Symbol 90 MovieClip | Uses:89 | Used by:92 |
Symbol 91 Text | Uses:52 | Used by:92 |
Symbol 92 MovieClip | Uses:88 90 91 | Used by:93 |
Symbol 93 Button | Uses:87 92 | Used by:Timeline |
Symbol 94 Bitmap | Used by:95 | |
Symbol 95 Graphic | Uses:94 | Used by:96 141 |
Symbol 96 MovieClip | Uses:95 | Used by:103 |
Symbol 97 Bitmap | Used by:98 140 | |
Symbol 98 Graphic | Uses:97 | Used by:103 |
Symbol 99 Bitmap | Used by:100 | |
Symbol 100 Graphic | Uses:99 | Used by:103 |
Symbol 101 Bitmap | Used by:102 299 | |
Symbol 102 Graphic | Uses:101 | Used by:103 |
Symbol 103 MovieClip | Uses:96 98 100 102 | Used by:Timeline |
Symbol 104 Graphic | Used by:122 | |
Symbol 105 Graphic | Used by:106 | |
Symbol 106 MovieClip | Uses:105 | Used by:122 |
Symbol 107 Graphic | Used by:108 | |
Symbol 108 MovieClip | Uses:107 | Used by:122 |
Symbol 109 Graphic | Used by:110 | |
Symbol 110 MovieClip | Uses:109 | Used by:122 |
Symbol 111 Graphic | Used by:112 | |
Symbol 112 MovieClip | Uses:111 | Used by:122 |
Symbol 113 Graphic | Used by:114 | |
Symbol 114 MovieClip | Uses:113 | Used by:122 |
Symbol 115 Graphic | Used by:116 | |
Symbol 116 MovieClip | Uses:115 | Used by:122 |
Symbol 117 Graphic | Used by:121 | |
Symbol 118 Graphic | Used by:119 | |
Symbol 119 MovieClip | Uses:118 | Used by:121 |
Symbol 120 Graphic | Used by:121 | |
Symbol 121 MovieClip | Uses:117 119 120 | Used by:122 |
Symbol 122 MovieClip | Uses:104 106 108 110 112 114 116 121 | Used by:Timeline |
Symbol 123 Bitmap | Used by:124 | |
Symbol 124 Graphic | Uses:123 | Used by:125 |
Symbol 125 MovieClip | Uses:124 | Used by:132 |
Symbol 126 Bitmap | Used by:127 | |
Symbol 127 Graphic | Uses:126 | Used by:128 |
Symbol 128 MovieClip | Uses:127 | Used by:132 |
Symbol 129 Bitmap | Used by:130 | |
Symbol 130 Graphic | Uses:129 | Used by:131 |
Symbol 131 MovieClip | Uses:130 | Used by:132 |
Symbol 132 MovieClip {Ianswebsite_fla.illustrationthumbnails_34} | Uses:125 128 131 | Used by:Timeline |
Symbol 133 Graphic | Used by:135 136 211 212 376 388 394 | |
Symbol 134 Graphic | Used by:135 136 | |
Symbol 135 MovieClip | Uses:133 134 | Used by:136 |
Symbol 136 Button | Uses:135 133 134 | Used by:137 168 205 274 340 363 |
Symbol 137 MovieClip | Uses:136 | Used by:Timeline |
Symbol 138 Bitmap | Used by:139 | |
Symbol 139 Graphic | Uses:138 | Used by:141 |
Symbol 140 Graphic | Uses:97 | Used by:141 |
Symbol 141 MovieClip {Ianswebsite_fla.illusimages_41} | Uses:95 139 140 | Used by:Timeline |
Symbol 142 MovieClip | Uses:51 | Used by:Timeline |
Symbol 143 Bitmap | Used by:144 | |
Symbol 144 Graphic | Uses:143 | Used by:167 |
Symbol 145 Bitmap | Used by:146 | |
Symbol 146 Graphic | Uses:145 | Used by:167 |
Symbol 147 Bitmap | Used by:148 | |
Symbol 148 Graphic | Uses:147 | Used by:167 |
Symbol 149 Bitmap | Used by:150 | |
Symbol 150 Graphic | Uses:149 | Used by:167 |
Symbol 151 Bitmap | Used by:152 | |
Symbol 152 Graphic | Uses:151 | Used by:167 |
Symbol 153 Bitmap | Used by:154 | |
Symbol 154 Graphic | Uses:153 | Used by:167 |
Symbol 155 Bitmap | Used by:156 | |
Symbol 156 Graphic | Uses:155 | Used by:167 |
Symbol 157 Bitmap | Used by:158 | |
Symbol 158 Graphic | Uses:157 | Used by:167 |
Symbol 159 Bitmap | Used by:160 | |
Symbol 160 Graphic | Uses:159 | Used by:167 |
Symbol 161 Bitmap | Used by:162 | |
Symbol 162 Graphic | Uses:161 | Used by:167 |
Symbol 163 Bitmap | Used by:164 | |
Symbol 164 Graphic | Uses:163 | Used by:167 |
Symbol 165 Bitmap | Used by:166 | |
Symbol 166 Graphic | Uses:165 | Used by:167 |
Symbol 167 MovieClip {Ianswebsite_fla.comicthumbs_43} | Uses:144 146 148 150 152 154 156 158 160 162 164 166 | Used by:Timeline |
Symbol 168 MovieClip | Uses:136 | Used by:Timeline |
Symbol 169 Bitmap | Used by:170 | |
Symbol 170 Graphic | Uses:169 | Used by:193 |
Symbol 171 Bitmap | Used by:172 174 | |
Symbol 172 Graphic | Uses:171 | Used by:193 |
Symbol 173 Bitmap | Used by:174 | |
Symbol 174 Graphic | Uses:173 171 | Used by:193 |
Symbol 175 Bitmap | Used by:176 | |
Symbol 176 Graphic | Uses:175 | Used by:193 |
Symbol 177 Bitmap | Used by:178 | |
Symbol 178 Graphic | Uses:177 | Used by:193 |
Symbol 179 Bitmap | Used by:180 | |
Symbol 180 Graphic | Uses:179 | Used by:193 |
Symbol 181 Bitmap | Used by:182 | |
Symbol 182 Graphic | Uses:181 | Used by:193 |
Symbol 183 Bitmap | Used by:184 | |
Symbol 184 Graphic | Uses:183 | Used by:193 |
Symbol 185 Bitmap | Used by:186 | |
Symbol 186 Graphic | Uses:185 | Used by:193 |
Symbol 187 Bitmap | Used by:188 | |
Symbol 188 Graphic | Uses:187 | Used by:193 |
Symbol 189 Bitmap | Used by:190 | |
Symbol 190 Graphic | Uses:189 | Used by:193 |
Symbol 191 Bitmap | Used by:192 | |
Symbol 192 Graphic | Uses:191 | Used by:193 |
Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} | Uses:170 172 174 176 178 180 182 184 186 188 190 192 | Used by:Timeline |
Symbol 194 Bitmap | Used by:195 | |
Symbol 195 Graphic | Uses:194 | Used by:204 |
Symbol 196 Bitmap | Used by:197 | |
Symbol 197 Graphic | Uses:196 | Used by:204 |
Symbol 198 Bitmap | Used by:199 | |
Symbol 199 Graphic | Uses:198 | Used by:204 |
Symbol 200 Bitmap | Used by:201 | |
Symbol 201 Graphic | Uses:200 | Used by:204 |
Symbol 202 Bitmap | Used by:203 | |
Symbol 203 Graphic | Uses:202 | Used by:204 |
Symbol 204 MovieClip {Ianswebsite_fla.Animations_46} | Uses:195 197 199 201 203 | Used by:Timeline |
Symbol 205 MovieClip | Uses:136 | Used by:Timeline |
Symbol 206 Text | Uses:55 | Used by:224 |
Symbol 207 Graphic | Used by:224 376 388 394 | |
Symbol 208 Graphic | Used by:211 212 | |
Symbol 209 Text | Uses:55 | Used by:211 212 |
Symbol 210 Text | Uses:55 | Used by:211 212 |
Symbol 211 MovieClip {Ianswebsite_fla.xbuttonmovieclip_50} | Uses:208 209 133 210 | Used by:212 |
Symbol 212 Button | Uses:208 209 211 133 210 | Used by:224 |
Symbol 213 Graphic | Used by:224 | |
Symbol 214 Text | Uses:55 | Used by:224 |
Symbol 215 Text | Uses:55 | Used by:224 |
Symbol 216 Text | Uses:55 | Used by:224 |
Symbol 217 Graphic | Used by:218 | |
Symbol 218 MovieClip | Uses:217 | Used by:224 |
Symbol 219 Text | Uses:55 | Used by:224 |
Symbol 220 Text | Uses:55 | Used by:224 |
Symbol 221 Text | Uses:55 | Used by:224 |
Symbol 222 Text | Uses:55 | Used by:224 |
Symbol 223 Text | Uses:55 | Used by:224 |
Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} | Uses:206 207 212 213 214 215 216 218 41 219 220 221 222 223 | Used by:Timeline |
Symbol 225 Bitmap | Used by:226 | |
Symbol 226 Graphic | Uses:225 | Used by:227 |
Symbol 227 MovieClip | Uses:226 | Used by:273 |
Symbol 228 Bitmap | Used by:229 | |
Symbol 229 Graphic | Uses:228 | Used by:230 |
Symbol 230 MovieClip | Uses:229 | Used by:273 |
Symbol 231 Bitmap | Used by:232 | |
Symbol 232 Graphic | Uses:231 | Used by:233 |
Symbol 233 MovieClip | Uses:232 | Used by:273 |
Symbol 234 Bitmap | Used by:235 | |
Symbol 235 Graphic | Uses:234 | Used by:236 |
Symbol 236 MovieClip | Uses:235 | Used by:273 |
Symbol 237 Bitmap | Used by:238 | |
Symbol 238 Graphic | Uses:237 | Used by:239 |
Symbol 239 MovieClip | Uses:238 | Used by:273 |
Symbol 240 Bitmap | Used by:241 | |
Symbol 241 Graphic | Uses:240 | Used by:242 |
Symbol 242 MovieClip | Uses:241 | Used by:273 |
Symbol 243 Bitmap | Used by:244 | |
Symbol 244 Graphic | Uses:243 | Used by:245 |
Symbol 245 MovieClip | Uses:244 | Used by:273 |
Symbol 246 Bitmap | Used by:247 | |
Symbol 247 Graphic | Uses:246 | Used by:248 |
Symbol 248 MovieClip | Uses:247 | Used by:273 |
Symbol 249 Bitmap | Used by:250 | |
Symbol 250 Graphic | Uses:249 | Used by:251 |
Symbol 251 MovieClip | Uses:250 | Used by:273 |
Symbol 252 Bitmap | Used by:253 | |
Symbol 253 Graphic | Uses:252 | Used by:254 |
Symbol 254 MovieClip | Uses:253 | Used by:273 |
Symbol 255 Bitmap | Used by:256 | |
Symbol 256 Graphic | Uses:255 | Used by:257 |
Symbol 257 MovieClip | Uses:256 | Used by:273 |
Symbol 258 Bitmap | Used by:259 | |
Symbol 259 Graphic | Uses:258 | Used by:260 |
Symbol 260 MovieClip | Uses:259 | Used by:273 |
Symbol 261 Bitmap | Used by:262 | |
Symbol 262 Graphic | Uses:261 | Used by:263 |
Symbol 263 MovieClip | Uses:262 | Used by:273 |
Symbol 264 Bitmap | Used by:265 | |
Symbol 265 Graphic | Uses:264 | Used by:266 |
Symbol 266 MovieClip | Uses:265 | Used by:273 |
Symbol 267 Bitmap | Used by:268 | |
Symbol 268 Graphic | Uses:267 | Used by:269 |
Symbol 269 MovieClip | Uses:268 | Used by:273 |
Symbol 270 Bitmap | Used by:271 | |
Symbol 271 Graphic | Uses:270 | Used by:272 |
Symbol 272 MovieClip | Uses:271 | Used by:273 |
Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} | Uses:227 230 233 236 239 242 245 248 251 254 257 260 263 266 269 272 | Used by:Timeline |
Symbol 274 MovieClip | Uses:136 | Used by:Timeline |
Symbol 275 Text | Uses:55 | Used by:326 |
Symbol 276 Bitmap | Used by:277 | |
Symbol 277 Graphic | Uses:276 | Used by:326 |
Symbol 278 Bitmap | Used by:279 | |
Symbol 279 Graphic | Uses:278 | Used by:326 |
Symbol 280 Text | Uses:55 | Used by:326 |
Symbol 281 Bitmap | Used by:282 | |
Symbol 282 Graphic | Uses:281 | Used by:326 |
Symbol 283 Bitmap | Used by:284 | |
Symbol 284 Graphic | Uses:283 | Used by:326 |
Symbol 285 Bitmap | Used by:286 | |
Symbol 286 Graphic | Uses:285 | Used by:326 |
Symbol 287 Bitmap | Used by:288 | |
Symbol 288 Graphic | Uses:287 | Used by:326 |
Symbol 289 Text | Uses:55 | Used by:326 |
Symbol 290 Bitmap | Used by:291 | |
Symbol 291 Graphic | Uses:290 | Used by:326 |
Symbol 292 Text | Uses:55 | Used by:326 |
Symbol 293 Bitmap | Used by:294 | |
Symbol 294 Graphic | Uses:293 | Used by:326 |
Symbol 295 Bitmap | Used by:296 | |
Symbol 296 Graphic | Uses:295 | Used by:326 |
Symbol 297 Bitmap | Used by:298 | |
Symbol 298 Graphic | Uses:297 | Used by:326 |
Symbol 299 Graphic | Uses:101 | Used by:326 |
Symbol 300 Bitmap | Used by:301 | |
Symbol 301 Graphic | Uses:300 | Used by:326 |
Symbol 302 Bitmap | Used by:304 | |
Symbol 303 Bitmap | Used by:304 | |
Symbol 304 Graphic | Uses:302 303 | Used by:326 |
Symbol 305 Text | Uses:55 | Used by:326 |
Symbol 306 Text | Uses:55 | Used by:326 |
Symbol 307 Text | Uses:55 | Used by:326 |
Symbol 308 Bitmap | Used by:310 | |
Symbol 309 Bitmap | Used by:310 | |
Symbol 310 Graphic | Uses:308 309 | Used by:326 |
Symbol 311 Bitmap | Used by:312 | |
Symbol 312 Graphic | Uses:311 | Used by:326 |
Symbol 313 Text | Uses:55 | Used by:326 |
Symbol 314 Text | Uses:55 | Used by:326 |
Symbol 315 Text | Uses:55 | Used by:326 |
Symbol 316 Font | Used by:317 379 386 | |
Symbol 317 Text | Uses:316 | Used by:318 |
Symbol 318 MovieClip | Uses:317 | Used by:326 |
Symbol 319 Bitmap | Used by:320 | |
Symbol 320 Graphic | Uses:319 | Used by:326 |
Symbol 321 Text | Uses:55 | Used by:326 |
Symbol 322 Text | Uses:55 | Used by:326 |
Symbol 323 Bitmap | Used by:324 | |
Symbol 324 Graphic | Uses:323 | Used by:325 |
Symbol 325 MovieClip | Uses:324 | Used by:326 |
Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} | Uses:275 277 279 280 282 284 286 288 289 291 292 294 296 298 299 301 304 305 306 307 310 312 313 314 315 318 320 321 322 325 | Used by:Timeline |
Symbol 327 Bitmap | Used by:328 | |
Symbol 328 Graphic | Uses:327 | Used by:339 |
Symbol 329 Bitmap | Used by:330 | |
Symbol 330 Graphic | Uses:329 | Used by:339 |
Symbol 331 Bitmap | Used by:332 | |
Symbol 332 Graphic | Uses:331 | Used by:339 |
Symbol 333 Bitmap | Used by:334 | |
Symbol 334 Graphic | Uses:333 | Used by:339 |
Symbol 335 Bitmap | Used by:336 | |
Symbol 336 Graphic | Uses:335 | Used by:339 |
Symbol 337 Bitmap | Used by:338 | |
Symbol 338 Graphic | Uses:337 | Used by:339 |
Symbol 339 MovieClip {Ianswebsite_fla.fineart_73} | Uses:328 330 332 334 336 338 | Used by:Timeline |
Symbol 340 MovieClip | Uses:136 | Used by:Timeline |
Symbol 341 Bitmap | Used by:342 | |
Symbol 342 Graphic | Uses:341 | Used by:353 |
Symbol 343 Bitmap | Used by:344 | |
Symbol 344 Graphic | Uses:343 | Used by:353 |
Symbol 345 Bitmap | Used by:346 | |
Symbol 346 Graphic | Uses:345 | Used by:353 |
Symbol 347 Bitmap | Used by:348 | |
Symbol 348 Graphic | Uses:347 | Used by:353 |
Symbol 349 Bitmap | Used by:350 | |
Symbol 350 Graphic | Uses:349 | Used by:353 |
Symbol 351 Bitmap | Used by:352 | |
Symbol 352 Graphic | Uses:351 | Used by:353 |
Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} | Uses:342 344 346 348 350 352 | Used by:Timeline |
Symbol 354 Bitmap | Used by:355 | |
Symbol 355 Graphic | Uses:354 | Used by:362 |
Symbol 356 Bitmap | Used by:357 | |
Symbol 357 Graphic | Uses:356 | Used by:362 |
Symbol 358 Bitmap | Used by:359 | |
Symbol 359 Graphic | Uses:358 | Used by:362 |
Symbol 360 Bitmap | Used by:361 | |
Symbol 361 Graphic | Uses:360 | Used by:362 |
Symbol 362 MovieClip {Ianswebsite_fla.misc_76} | Uses:355 357 359 361 | Used by:Timeline |
Symbol 363 MovieClip | Uses:136 | Used by:Timeline |
Symbol 364 Bitmap | Used by:365 | |
Symbol 365 Graphic | Uses:364 | Used by:373 |
Symbol 366 Bitmap | Used by:368 | |
Symbol 367 Bitmap | Used by:368 | |
Symbol 368 Graphic | Uses:366 367 | Used by:373 |
Symbol 369 Bitmap | Used by:370 | |
Symbol 370 Graphic | Uses:369 | Used by:373 |
Symbol 371 Bitmap | Used by:372 | |
Symbol 372 Graphic | Uses:371 | Used by:373 |
Symbol 373 MovieClip {Ianswebsite_fla.miscimages_78} | Uses:365 368 370 372 | Used by:Timeline |
Symbol 374 EditableText | Uses:52 | Used by:375 |
Symbol 375 MovieClip | Uses:374 | Used by:376 |
Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} | Uses:133 207 375 | Used by:Timeline |
Symbol 377 EditableText | Uses:52 | Used by:Timeline |
Symbol 378 Font | Used by:379 | |
Symbol 379 Text | Uses:316 55 378 | Used by:380 |
Symbol 380 MovieClip | Uses:379 | Used by:Timeline |
Symbol 381 Graphic | Used by:Timeline | |
Symbol 382 Graphic | Used by:383 | |
Symbol 383 MovieClip | Uses:382 | Used by:Timeline |
Symbol 384 Graphic | Used by:385 | |
Symbol 385 MovieClip | Uses:384 | Used by:Timeline |
Symbol 386 EditableText | Uses:316 | Used by:387 |
Symbol 387 MovieClip | Uses:386 | Used by:388 |
Symbol 388 MovieClip {Ianswebsite_fla.resumebtncopy_84} | Uses:133 207 387 | Used by:Timeline |
Symbol 389 Font | Used by:390 391 | |
Symbol 390 EditableText | Uses:389 | Used by:Timeline |
Symbol 391 Text | Uses:389 | Used by:Timeline |
Symbol 392 EditableText | Uses:52 | Used by:393 |
Symbol 393 MovieClip | Uses:392 | Used by:394 |
Symbol 394 MovieClip {Ianswebsite_fla.linksbtncopy_86} | Uses:133 207 393 | Used by:Timeline |
Instance Names
"pStatus_txt" | Frame 1 | Symbol 43 EditableText |
"pBar_mc" | Frame 1 | Symbol 49 MovieClip |
"illustrations_mc" | Frame 2 | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} |
"comics_mc" | Frame 2 | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} |
"animations_mc" | Frame 2 | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} |
"graphicdesign_mc" | Frame 2 | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} |
"fineart_mc" | Frame 2 | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} |
"miscellaneous_mc" | Frame 2 | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} |
"home_mc" | Frame 2 | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} |
"about_mc" | Frame 2 | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} |
"resume_mc" | Frame 2 | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} |
"contact_mc" | Frame 2 | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} |
"links_mc" | Frame 2 | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} |
"email_btn" | Frame 2 | Symbol 93 Button |
"thumbImgsillus_mc" | Frame 3 | Symbol 137 MovieClip |
"portImgsIllus_mc" | Frame 3 | Symbol 141 MovieClip {Ianswebsite_fla.illusimages_41} |
"illustrans_mc" | Frame 3 | Symbol 142 MovieClip |
"comicsthumbs" | Frame 4 | Symbol 167 MovieClip {Ianswebsite_fla.comicthumbs_43} |
"thumbImgscomics_mc" | Frame 4 | Symbol 168 MovieClip |
"comicsfinal_mc" | Frame 4 | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} |
"comicstrans_mc" | Frame 4 | Symbol 142 MovieClip |
"Animartimgs_mc" | Frame 5 | Symbol 205 MovieClip |
"GettingOutPop_mc" | Frame 5 | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} |
"thumbImgsgd_mc" | Frame 6 | Symbol 274 MovieClip |
"PortImgGD_mc" | Frame 6 | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} |
"gdtrans_mc" | Frame 6 | Symbol 142 MovieClip |
"fineartimgs_mc" | Frame 7 | Symbol 340 MovieClip |
"PortImgFineart_mc" | Frame 7 | Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} |
"transfineart_mc" | Frame 7 | Symbol 142 MovieClip |
"miscimgs_mc" | Frame 8 | Symbol 363 MovieClip |
"PortImgMisc_mc" | Frame 8 | Symbol 373 MovieClip {Ianswebsite_fla.miscimages_78} |
"transmiscart_mc" | Frame 8 | Symbol 142 MovieClip |
"myBlog_mc" | Frame 9 | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} |
"Hellen_mc" | Frame 9 | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} |
"Devon_mc" | Frame 9 | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} |
"Brian_mc" | Frame 9 | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} |
"Kenneth_mc" | Frame 9 | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} |
"Justin_mc" | Frame 9 | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} |
"ResumePages_mc" | Frame 10 | Symbol 380 MovieClip |
"myMask" | Frame 10 | Symbol 383 MovieClip |
"scrollMC" | Frame 10 | Symbol 385 MovieClip |
"resumePdf_mc" | Frame 10 | Symbol 388 MovieClip {Ianswebsite_fla.resumebtncopy_84} |
"aboutcontext_txt" | Frame 11 | Symbol 390 EditableText |
"iantopple_mc" | Frame 12 | Symbol 394 MovieClip {Ianswebsite_fla.linksbtncopy_86} |
"boundingBox_mc" | Symbol 41 MovieClip {fl.video.FLVPlayback} Frame 1 | Symbol 37 MovieClip |
"buttonLabel_txt" | Symbol 81 MovieClip Frame 1 | Symbol 80 EditableText |
"buttonLabel_mc" | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} Frame 1 | Symbol 81 MovieClip |
"buttonLabel2_txt" | Symbol 84 MovieClip Frame 1 | Symbol 83 EditableText |
"buttonLabel2_mc" | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} Frame 1 | Symbol 84 MovieClip |
"sickthumb" | Symbol 132 MovieClip {Ianswebsite_fla.illustrationthumbnails_34} Frame 1 | Symbol 125 MovieClip |
"charactertwothumb" | Symbol 132 MovieClip {Ianswebsite_fla.illustrationthumbnails_34} Frame 1 | Symbol 128 MovieClip |
"characteronethumb" | Symbol 132 MovieClip {Ianswebsite_fla.illustrationthumbnails_34} Frame 1 | Symbol 131 MovieClip |
"illusbtn1" | Symbol 137 MovieClip Frame 1 | Symbol 136 Button |
"illusbtn2" | Symbol 137 MovieClip Frame 1 | Symbol 136 Button |
"illusbtn3" | Symbol 137 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn1" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn2" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn3" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn4" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn5" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn6" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn7" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn8" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn9" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn10" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn11" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"comicsbtn12" | Symbol 168 MovieClip Frame 1 | Symbol 136 Button |
"animartbtn1" | Symbol 205 MovieClip Frame 1 | Symbol 136 Button |
"animartbtn2" | Symbol 205 MovieClip Frame 1 | Symbol 136 Button |
"animartbtn3" | Symbol 205 MovieClip Frame 1 | Symbol 136 Button |
"animartbtn4" | Symbol 205 MovieClip Frame 1 | Symbol 136 Button |
"animartbtn5" | Symbol 205 MovieClip Frame 1 | Symbol 136 Button |
"xbutton_mc" | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} Frame 2 | Symbol 212 Button |
"__id0_" | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} Frame 2 | Symbol 41 MovieClip {fl.video.FLVPlayback} |
"TechInvest" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 227 MovieClip |
"AnalystInsider" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 230 MovieClip |
"mobilemarketing" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 233 MovieClip |
"dadswebbanner" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 236 MovieClip |
"JackoCover" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 239 MovieClip |
"MervCover" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 242 MovieClip |
"OfallonFlyer" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 245 MovieClip |
"OtherFlyer" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 248 MovieClip |
"MixedMCover" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 251 MovieClip |
"postcardsampleone" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 254 MovieClip |
"postcardsampletwo" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 257 MovieClip |
"IPTVMagazineAd" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 260 MovieClip |
"webad4" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 263 MovieClip |
"mmlayout" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 266 MovieClip |
"simmiwebsite" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 269 MovieClip |
"samplesitetwo" | Symbol 273 MovieClip {Ianswebsite_fla.graphicdesignpage_52} Frame 1 | Symbol 272 MovieClip |
"gdbtn7" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn8" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn1" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn2" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn3" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn4" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn5" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn6" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn9" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn10" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn11" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn12" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn13" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn14" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn15" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"gdbtn16" | Symbol 274 MovieClip Frame 1 | Symbol 136 Button |
"SimmiSite" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 15 | Symbol 318 MovieClip |
"SampleSiteTwo" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 16 | Symbol 318 MovieClip |
"fineartbtn1" | Symbol 340 MovieClip Frame 1 | Symbol 136 Button |
"fineartbtn2" | Symbol 340 MovieClip Frame 1 | Symbol 136 Button |
"fineartbtn3" | Symbol 340 MovieClip Frame 1 | Symbol 136 Button |
"fineartbtn4" | Symbol 340 MovieClip Frame 1 | Symbol 136 Button |
"fineartbtn5" | Symbol 340 MovieClip Frame 1 | Symbol 136 Button |
"fineartbtn6" | Symbol 340 MovieClip Frame 1 | Symbol 136 Button |
"miscbtn1" | Symbol 363 MovieClip Frame 1 | Symbol 136 Button |
"miscbtn2" | Symbol 363 MovieClip Frame 1 | Symbol 136 Button |
"miscbtn3" | Symbol 363 MovieClip Frame 1 | Symbol 136 Button |
"miscbtn4" | Symbol 363 MovieClip Frame 1 | Symbol 136 Button |
"buttonLabel3_txt" | Symbol 375 MovieClip Frame 1 | Symbol 374 EditableText |
"buttonLabel3_mc" | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} Frame 1 | Symbol 375 MovieClip |
"buttonLabel4_txt" | Symbol 387 MovieClip Frame 1 | Symbol 386 EditableText |
"buttonLabel4_mc" | Symbol 388 MovieClip {Ianswebsite_fla.resumebtncopy_84} Frame 1 | Symbol 387 MovieClip |
"buttonLabel5_txt" | Symbol 393 MovieClip Frame 1 | Symbol 392 EditableText |
"buttonLabel5_mc" | Symbol 394 MovieClip {Ianswebsite_fla.linksbtncopy_86} Frame 1 | Symbol 393 MovieClip |
Special Tags
FileAttributes (69) | Timeline Frame 1 | Access local files only, Metadata present, AS3. |
SWFMetaData (77) | Timeline Frame 1 | 1284 bytes "<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmln ..." |
Protect (24) | Timeline Frame 1 | 0 bytes "" |
Labels
"check" | Frame 1 |
"homePg" | Frame 2 |
"illuspg" | Frame 3 |
"comicsPg" | Frame 4 |
"animationsPg" | Frame 5 |
"graphicdesignPg" | Frame 6 |
"finartPg" | Frame 7 |
"MiscPg" | Frame 8 |
"LinksPg" | Frame 9 |
"ResumePg" | Frame 10 |
"aboutPg" | Frame 11 |
"contactPg" | Frame 12 |
"up" | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} Frame 1 |
"over" | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} Frame 2 |
"out" | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} Frame 10 |
"active" | Symbol 82 MovieClip {Ianswebsite_fla.navmc_14} Frame 21 |
"up" | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} Frame 1 |
"over" | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} Frame 2 |
"out" | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} Frame 10 |
"active" | Symbol 86 MovieClip {Ianswebsite_fla.secondbutton_17} Frame 21 |
"illusimg1" | Symbol 141 MovieClip {Ianswebsite_fla.illusimages_41} Frame 1 |
"illusimg2" | Symbol 141 MovieClip {Ianswebsite_fla.illusimages_41} Frame 2 |
"illusimg3" | Symbol 141 MovieClip {Ianswebsite_fla.illusimages_41} Frame 3 |
"comicsPg1" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 1 |
"comicsPg2" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 2 |
"comicsPg3" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 3 |
"comicsPg4" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 4 |
"comicsPg5" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 5 |
"comicsPg6" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 6 |
"comicsPg7" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 7 |
"comicsPg8" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 8 |
"comicsPg9" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 9 |
"comicsPg10" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 10 |
"comicsPg11" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 11 |
"comicsPg12" | Symbol 193 MovieClip {Ianswebsite_fla.Comicsfinal_45} Frame 12 |
"GO" | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} Frame 2 |
"MusicV" | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} Frame 3 |
"AF" | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} Frame 4 |
"BandA" | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} Frame 5 |
"Maya" | Symbol 224 MovieClip {Ianswebsite_fla.GettingOutpopup_48} Frame 6 |
"GDPage1" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 1 |
"GDPage2" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 2 |
"GDPage3" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 3 |
"GDPage4" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 4 |
"GDPage5" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 5 |
"GDPage6" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 6 |
"GDPage7" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 7 |
"GDPage8" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 8 |
"GDPage9" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 9 |
"GDPage10" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 10 |
"GDPage11" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 11 |
"GDPage12" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 12 |
"GDPage13" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 13 |
"GDPage14" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 14 |
"GDPage15" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 15 |
"GDPage16" | Symbol 326 MovieClip {Ianswebsite_fla.GdImgFineart_mc_70} Frame 16 |
"fineartimg1" | Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} Frame 1 |
"fineartimg2" | Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} Frame 2 |
"fineartimg3" | Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} Frame 3 |
"fineartimg4" | Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} Frame 4 |
"fineartimg5" | Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} Frame 5 |
"fineartimg6" | Symbol 353 MovieClip {Ianswebsite_fla.portImgsFineArt_mc_75} Frame 6 |
"miscartimg1" | Symbol 373 MovieClip {Ianswebsite_fla.miscimages_78} Frame 1 |
"miscartimg2" | Symbol 373 MovieClip {Ianswebsite_fla.miscimages_78} Frame 2 |
"miscartimg3" | Symbol 373 MovieClip {Ianswebsite_fla.miscimages_78} Frame 3 |
"miscartimg4" | Symbol 373 MovieClip {Ianswebsite_fla.miscimages_78} Frame 4 |
"up" | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} Frame 1 |
"over" | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} Frame 2 |
"out" | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} Frame 10 |
"active" | Symbol 376 MovieClip {Ianswebsite_fla.linksbtn_79} Frame 21 |
"up" | Symbol 388 MovieClip {Ianswebsite_fla.resumebtncopy_84} Frame 1 |
"over" | Symbol 388 MovieClip {Ianswebsite_fla.resumebtncopy_84} Frame 2 |
"out" | Symbol 388 MovieClip {Ianswebsite_fla.resumebtncopy_84} Frame 10 |
"active" | Symbol 388 MovieClip {Ianswebsite_fla.resumebtncopy_84} Frame 21 |
"up" | Symbol 394 MovieClip {Ianswebsite_fla.linksbtncopy_86} Frame 1 |
"over" | Symbol 394 MovieClip {Ianswebsite_fla.linksbtncopy_86} Frame 2 |
"out" | Symbol 394 MovieClip {Ianswebsite_fla.linksbtncopy_86} Frame 10 |
"active" | Symbol 394 MovieClip {Ianswebsite_fla.linksbtncopy_86} Frame 21 |
|