STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228095
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2561 · P5121

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/39257519?noj=FRM39257519-5DC" width="1" height="1"></div>

Logicly.swf

This is the info page for
Flash #51088

(Click the ID number above for more basic data on this flash file.)


ActionScript [AS3]
Section 1
//CollapsiblePanel (com.flextoolbox.containers.CollapsiblePanel) package com.flextoolbox.containers { import mx.core.*; import flash.events.*; import mx.styles.*; import mx.controls.*; import mx.effects.*; import mx.containers.*; import flash.utils.*; public class CollapsiblePanel extends Panel { private var expandedHeight:Number; private var _collapsed:Boolean;// = false private var collapsedChanged:Boolean;// = false private var originalVScrollPolicy:String; private var tween:Tween; protected var forcedUnscaledHeight:Number;// = NAN protected var savedMeasuredHeight:Number;// = NAN private var collapseButton:Button; private static const DEFAULT_COLLAPSE_BUTTON_STYLE_NAME:String = "flextoolbox_collapsiblePanelButton"; private static var collapseButtonOverSkin:Class = CollapsiblePanel_collapseButtonOverSkin; private static var collapseButtonUpSkin:Class = CollapsiblePanel_collapseButtonUpSkin; private static var collapseButtonDisabledSkin:Class = CollapsiblePanel_collapseButtonDisabledSkin; private static var collapseButtonDownSkin:Class = CollapsiblePanel_collapseButtonDownSkin; override public function styleChanged(_arg1:String):void{ var _local3:String; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "collapseButtonStyleName")))){ if (this.collapseButton){ _local3 = this.getStyle("collapseButtonStyleName"); this.collapseButton.styleName = _local3; }; }; } override protected function layoutChrome(_arg1:Number, _arg2:Number):void{ var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; super.layoutChrome(_arg1, _arg2); var _local3:EdgeMetrics = EdgeMetrics.EMPTY; var _local4:Number = getStyle("borderThickness"); if ((((((getQualifiedClassName(this.border) == "mx.skins.halo::PanelSkin")) && (!((getStyle("borderStyle") == "default"))))) && (_local4))){ _local3 = new EdgeMetrics(_local4, _local4, _local4, _local4); }; var _local5:EdgeMetrics = ((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) ? borderMetrics : _local3; var _local6:int = getHeaderHeight(); var _local7:Number = _local5.left; var _local8:Number = _local5.top; if (collapseButton){ collapseButton.setActualSize(collapseButton.getExplicitOrMeasuredWidth(), collapseButton.getExplicitOrMeasuredHeight()); collapseButton.move((_local7 + 10), ((_local6 - collapseButton.getExplicitOrMeasuredHeight()) / 2)); _local11 = 10; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local9 = titleTextField.nonZeroTextHeight; } else { _local9 = titleTextField.getUITextFormat().measureText(titleTextField.text).height; }; _local10 = ((_local6 - _local9) / 2); _local12 = ((_local7 + 10) + collapseButton.getExplicitOrMeasuredWidth()); titleTextField.move(_local12, (_local10 - 1)); _local13 = (_local5.left + _local5.right); _local14 = ((((_arg1 - _local11) - 4) - _local13) - statusTextField.textWidth); statusTextField.move(_local14, (_local10 - 1)); statusTextField.setActualSize((statusTextField.textWidth + 8), (statusTextField.textHeight + UITextField.TEXT_HEIGHT_PADDING)); _local15 = ((titleTextField.x + titleTextField.textWidth) + 8); if (statusTextField.x < _local15){ statusTextField.width = Math.max((statusTextField.width - (_local15 - statusTextField.x)), 0); statusTextField.x = _local15; }; }; } private function titleBar_doubleClickHandler(_arg1:MouseEvent):void{ if (!this.enabled){ return; }; this.collapsed = !(this._collapsed); if (this._collapsed){ this.dispatchEvent(new Event("minimize")); } else { this.dispatchEvent(new Event("restore")); }; } protected function cleanUpAfterTween():void{ var _local1:int; var _local2:IUIComponent; this.tween = null; if (!this._collapsed){ _local1 = 0; while (_local1 < this.numChildren) { _local2 = (this.getChildAt(_local1) as IUIComponent); _local2.setVisible(true, true); _local1++; }; }; this.verticalScrollPolicy = this.originalVScrollPolicy; } public function get collapsed():Boolean{ return (_collapsed); } override protected function createChildren():void{ if (!closeButton){ closeButton = new Button(); }; super.createChildren(); if (titleBar){ titleBar.doubleClickEnabled = true; titleBar.addEventListener(MouseEvent.DOUBLE_CLICK, titleBar_doubleClickHandler); }; if (!collapseButton){ collapseButton = new Button(); collapseButton.styleName = this.getStyle("collapseButtonStyleName"); collapseButton.explicitHeight = (collapseButton.explicitWidth = 16); collapseButton.focusEnabled = false; collapseButton.enabled = enabled; collapseButton.addEventListener(MouseEvent.CLICK, collapseButton_clickHandler); titleBar.addChild(collapseButton); collapseButton.owner = this; }; } override protected function measure():void{ super.measure(); this.savedMeasuredHeight = this.measuredHeight; if (((this.tween) || (this.collapsed))){ this.measuredHeight = this.forcedUnscaledHeight; }; } private function collapseButton_clickHandler(_arg1:MouseEvent):void{ collapsed = !(_collapsed); if (_collapsed){ dispatchEvent(new Event("minimize")); } else { dispatchEvent(new Event("restore")); }; } public function set collapsed(_arg1:Boolean):void{ if (this._collapsed == _arg1){ return; }; this._collapsed = _arg1; this.collapsedChanged = true; this.invalidateSize(); this.invalidateDisplayList(); } private function onTweenEnd(_arg1:Number):void{ this.onTweenUpdate(_arg1); this.cleanUpAfterTween(); } private function onTweenUpdate(_arg1:Number):void{ this.forcedUnscaledHeight = _arg1; this.invalidateSize(); this.invalidateDisplayList(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local3:Number; var _local4:Number; var _local5:int; var _local6:Number; var _local7:IUIComponent; if (collapsedChanged){ collapsedChanged = false; if (this.tween){ this.tween.stop(); this.cleanUpAfterTween(); }; this.originalVScrollPolicy = verticalScrollPolicy; this.verticalScrollPolicy = ScrollPolicy.OFF; _local3 = this.forcedUnscaledHeight; _local4 = (isNaN(this.explicitHeight)) ? this.savedMeasuredHeight : this.explicitHeight; if (this._collapsed){ _local4 = getHeaderHeight(); }; _local5 = 0; while (_local5 < this.numChildren) { _local7 = (this.getChildAt(_local5) as IUIComponent); _local7.setVisible(false, true); _local5++; }; _local6 = this.getStyle("collapseDuration"); this.tween = new Tween(this, _local3, _local4, _local6); this.tween.setTweenHandlers(onTweenUpdate, onTweenEnd); this.onTweenUpdate(_local3); return; } else { if (!this.tween){ this.forcedUnscaledHeight = (this._collapsed) ? this.getHeaderHeight() : _arg2; }; }; super.updateDisplayList(_arg1, this.forcedUnscaledHeight); } override protected function get unscaledHeight():Number{ if (this.collapsed){ return (this.forcedUnscaledHeight); }; return (super.unscaledHeight); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("CollapsiblePanel"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.collapseButtonStyleName = DEFAULT_COLLAPSE_BUTTON_STYLE_NAME; this.collapseDuration = 150; }; StyleManager.setStyleDeclaration("CollapsiblePanel", styles, false); styles = StyleManager.getStyleDeclaration(("." + DEFAULT_COLLAPSE_BUTTON_STYLE_NAME)); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.upSkin = collapseButtonUpSkin; this.downSkin = collapseButtonDownSkin; this.overSkin = collapseButtonOverSkin; this.disabledSkin = collapseButtonDisabledSkin; }; StyleManager.setStyleDeclaration(("." + DEFAULT_COLLAPSE_BUTTON_STYLE_NAME), styles, false); } initializeStyles(); } }//package com.flextoolbox.containers
Section 2
//CollapsiblePanel_collapseButtonDisabledSkin (com.flextoolbox.containers.CollapsiblePanel_collapseButtonDisabledSkin) package com.flextoolbox.containers { import mx.core.*; public class CollapsiblePanel_collapseButtonDisabledSkin extends SpriteAsset { } }//package com.flextoolbox.containers
Section 3
//CollapsiblePanel_collapseButtonDownSkin (com.flextoolbox.containers.CollapsiblePanel_collapseButtonDownSkin) package com.flextoolbox.containers { import mx.core.*; public class CollapsiblePanel_collapseButtonDownSkin extends SpriteAsset { } }//package com.flextoolbox.containers
Section 4
//CollapsiblePanel_collapseButtonOverSkin (com.flextoolbox.containers.CollapsiblePanel_collapseButtonOverSkin) package com.flextoolbox.containers { import mx.core.*; public class CollapsiblePanel_collapseButtonOverSkin extends SpriteAsset { } }//package com.flextoolbox.containers
Section 5
//CollapsiblePanel_collapseButtonUpSkin (com.flextoolbox.containers.CollapsiblePanel_collapseButtonUpSkin) package com.flextoolbox.containers { import mx.core.*; public class CollapsiblePanel_collapseButtonUpSkin extends SpriteAsset { } }//package com.flextoolbox.containers
Section 6
//ANDGate (com.flextoolbox.controls.logic.ANDGate) package com.flextoolbox.controls.logic { import mx.styles.*; import com.flextoolbox.skins.*; public class ANDGate extends DualInputLogicGate { public function ANDGate(){ super(); this.logicFunction = function (_arg1:Boolean, _arg2:Boolean):Boolean{ return (((_arg1) && (_arg2))); }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ANDGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = ANDGateSkin; }; StyleManager.setStyleDeclaration("ANDGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 7
//Clock (com.flextoolbox.controls.logic.Clock) package com.flextoolbox.controls.logic { import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import com.flextoolbox.logicly.view.*; import com.flextoolbox.controls.*; import com.flextoolbox.managers.*; import flash.utils.*; import com.flextoolbox.skins.*; public class Clock extends UIComponent implements IWiredLogicControl { protected var outputJack:OutputWireJack; protected var timer:Timer; protected var _data:Boolean;// = false private var _wireManager:IWireManager; protected var wireManagerChanged:Boolean;// = false protected var skin:DisplayObject; protected static const ticker:Timer = new Timer(1000); private static var _active:Boolean = false; public function Clock(){ this.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } public function set wireManager(_arg1:IWireManager):void{ this._wireManager = _arg1; this.wireManagerChanged = true; this.invalidateProperties(); this.dispatchEvent(new Event("wireManagerChange")); } override protected function commitProperties():void{ super.commitProperties(); if (this.wireManagerChanged){ this.outputJack.wireManager = this.wireManager; this.wireManagerChanged = false; }; this.outputJack.data = this.data; this.skin.name = (this.data) ? "onSkin" : "offSkin"; } override protected function createChildren():void{ super.createChildren(); if (!this.skin){ this.createSkin(); }; if (!this.outputJack){ this.outputJack = new OutputWireJack(); this.outputJack.styleName = this.getStyle("outputJackStyleName"); this.outputJack.connectionAngle = 0; this.addChild(this.outputJack); }; } public function disconnect():void{ this.outputJack.disconnectAll(); } override protected function measure():void{ var _local2:IFlexDisplayObject; super.measure(); var _local1:Number = this.getStyle("wireJackSize"); if ((this.skin is IFlexDisplayObject)){ _local2 = IFlexDisplayObject(this.skin); this.measuredWidth = (_local2.measuredWidth + (1.5 * _local1)); this.measuredHeight = _local2.measuredHeight; } else { this.measuredWidth = (this.skin.width + (2 * _local1)); this.measuredHeight = this.skin.height; }; } protected function createSkin():void{ if (this.skin){ this.removeChild(this.skin); this.skin = null; }; var _local1:Object = this.getStyle("skin"); this.skin = new (_local1); if ((this.skin is ISimpleStyleClient)){ ISimpleStyleClient(this.skin).styleName = this; }; this.addChild(this.skin); } private function register(_arg1:Clock):void{ ticker.addEventListener(TimerEvent.TIMER, _arg1.tickerUpdateHandler); } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "skin")))){ if (this.skin){ this.removeChild(this.skin); this.skin = null; }; this.createSkin(); this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); }; if (((_local2) || ((_arg1 == "outputJackStyleName")))){ _local3 = this.getStyle("outputJackStyleName"); if (this.outputJack){ this.outputJack.styleName = _local3; }; }; } protected function tickerUpdateHandler(_arg1:TimerEvent):void{ this._data = !(this._data); this.invalidateProperties(); this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } private function addedToStageHandler(_arg1:Event):void{ if (!(this.parent is EditingSurface)){ return; }; register(this); this.addEventListener(Event.REMOVED_FROM_STAGE, removedFromStageHandler); } public function get wireManager():IWireManager{ return (this._wireManager); } public function get data():Boolean{ return (this._data); } private function removedFromStageHandler(_arg1:Event):void{ unregister(this); this.removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStageHandler); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("borderColor"); var _local4:Number = this.getStyle("borderThickness"); var _local5:Number = this.getStyle("wireJackSize"); var _local6:Number = (_arg1 - (1.5 * _local5)); if ((skin is IFlexDisplayObject)){ IFlexDisplayObject(this.skin).setActualSize(_local6, _arg2); }; this.graphics.clear(); this.graphics.lineStyle(_local4, _local3); this.graphics.moveTo(_local6, (_arg2 / 2)); this.graphics.lineTo((_arg1 - _local5), (_arg2 / 2)); this.outputJack.setActualSize(_local5, _local5); this.outputJack.move((_arg1 - _local5), ((_arg2 - _local5) / 2)); } private function unregister(_arg1:Clock):void{ ticker.removeEventListener(TimerEvent.TIMER, _arg1.tickerUpdateHandler); } public static function get active():Boolean{ return (_active); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Clock"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.borderColor = 0; this.borderThickness = 2; this.detailThickness = 1; this.fillColor = 0xFFFFFF; this.skin = ClockSkin; this.wireJackSize = 10; }; StyleManager.setStyleDeclaration("Clock", styles, false); } public static function set active(_arg1:Boolean):void{ _active = _arg1; if (_active){ ticker.start(); } else { ticker.stop(); }; } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 8
//DualInputLogicGate (com.flextoolbox.controls.logic.DualInputLogicGate) package com.flextoolbox.controls.logic { import mx.events.*; import com.flextoolbox.controls.*; public class DualInputLogicGate extends LogicGate { protected var inputJack2:InputWireJack; public function DualInputLogicGate(){ this.logicFunction = defaultLogicFunction; } override protected function updateData():void{ var _local1:Boolean = (this.inputJack) ? (this.inputJack.data as Boolean) : false; var _local2:Boolean = (this.inputJack2) ? (this.inputJack2.data as Boolean) : false; var _local3:Boolean = this.logicFunction(_local1, _local2); if (this._data === _local3){ return; }; this._data = _local3; if (this.outputJack){ this.outputJack.data = this._data; } else { this.invalidateProperties(); }; this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } override protected function commitProperties():void{ if (this.wireManagerChanged){ this.inputJack2.wireManager = this.wireManager; }; super.commitProperties(); } private function defaultLogicFunction(_arg1:Boolean, _arg2:Boolean):Boolean{ return (false); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = this.getStyle("wireJackSize"); var _local4:Number = (_arg2 / 4); this.inputJack.move(0, (_local4 - (_local3 / 2))); this.inputJack2.setActualSize(_local3, _local3); this.inputJack2.move(0, ((3 * _local4) - (_local3 / 2))); } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "inputJackStyleName")))){ _local3 = this.getStyle("inputJackStyleName"); if (this.inputJack){ this.inputJack.styleName = _local3; }; if (this.inputJack2){ this.inputJack2.styleName = _local3; }; }; } override public function disconnect():void{ super.disconnect(); this.inputJack2.disconnectAll(); } override protected function createChildren():void{ super.createChildren(); if (!this.inputJack2){ this.inputJack2 = new InputWireJack(); this.inputJack2.styleName = this.getStyle("inputJackStyleName"); this.inputJack2.connectionAngle = 180; this.inputJack2.noDataValue = false; this.inputJack2.addEventListener(FlexEvent.DATA_CHANGE, inputDataChangeHandler); this.addChild(this.inputJack2); }; this.outputJack.ignoredJacks = [this.inputJack, this.inputJack2]; } } }//package com.flextoolbox.controls.logic
Section 9
//IWiredLogicControl (com.flextoolbox.controls.logic.IWiredLogicControl) package com.flextoolbox.controls.logic { import mx.core.*; import com.flextoolbox.managers.*; public interface IWiredLogicControl extends IUIComponent { function get wireManager():IWireManager; function disconnect():void; function set wireManager(_arg1:IWireManager):void; } }//package com.flextoolbox.controls.logic
Section 10
//LogicGate (com.flextoolbox.controls.logic.LogicGate) package com.flextoolbox.controls.logic { import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import com.flextoolbox.controls.*; import com.flextoolbox.managers.*; public class LogicGate extends UIComponent implements IWiredLogicControl { protected var outputJack:OutputWireJack; protected var _data:Boolean;// = false private var _logicFunction:Function; protected var inputJack:InputWireJack; private var _wireManager:IWireManager; protected var hasCircularReference:Boolean;// = false protected var wireManagerChanged:Boolean;// = false protected var skin:DisplayObject; public function LogicGate(){ _logicFunction = defaultLogicFunction; super(); } public function set wireManager(_arg1:IWireManager):void{ this._wireManager = _arg1; this.wireManagerChanged = true; this.invalidateProperties(); this.dispatchEvent(new Event("wireManagerChange")); } protected function inputDataChangeHandler(_arg1:FlexEvent):void{ var _local2:InputWireJack; if (this.hasCircularReference){ this.hasCircularReference = false; _local2 = InputWireJack(_arg1.currentTarget); _local2.disconnect(_local2.connectedJacks[0]); return; }; this.updateData(); } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local4:String; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "inputJackStyleName")))){ _local3 = this.getStyle("inputJackStyleName"); if (this.inputJack){ this.inputJack.styleName = _local3; }; }; if (((_local2) || ((_arg1 == "outputJackStyleName")))){ _local4 = this.getStyle("outputJackStyleName"); if (this.outputJack){ this.outputJack.styleName = _local4; }; }; if (((_local2) || ((_arg1 == "skin")))){ if (this.skin){ this.removeChild(this.skin); this.skin = null; }; this.createSkin(); this.invalidateSize(); this.invalidateDisplayList(); }; } override protected function commitProperties():void{ super.commitProperties(); if (this.wireManagerChanged){ this.inputJack.wireManager = this.wireManager; this.outputJack.wireManager = this.wireManager; this.wireManagerChanged = false; }; this.outputJack.data = this.data; } protected function updateData():void{ var _local1:Boolean = (this.inputJack) ? (this.inputJack.data as Boolean) : false; var _local2:Boolean = this.logicFunction(_local1); if (this._data === _local2){ return; }; this._data = _local2; if (this.outputJack){ this.outputJack.data = this._data; } else { this.invalidateProperties(); }; this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } private function defaultLogicFunction(_arg1:Boolean):Boolean{ return (false); } public function get logicFunction():Function{ return (this._logicFunction); } public function disconnect():void{ this.inputJack.disconnectAll(); this.outputJack.disconnectAll(); } override protected function measure():void{ var _local2:IFlexDisplayObject; super.measure(); if ((this.skin is IFlexDisplayObject)){ _local2 = IFlexDisplayObject(this.skin); this.measuredWidth = _local2.measuredWidth; this.measuredHeight = _local2.measuredHeight; } else { this.measuredWidth = this.skin.width; this.measuredHeight = this.skin.height; }; var _local1:Number = this.getStyle("wireJackSize"); this.measuredWidth = (this.measuredWidth + (2 * _local1)); } protected function calculateWireJackMetrics():EdgeMetrics{ var _local1:Number = this.getStyle("wireJackSize"); return (new EdgeMetrics(_local1, 0, _local1, 0)); } override protected function createChildren():void{ super.createChildren(); if (!this.skin){ this.createSkin(); }; if (!this.inputJack){ this.inputJack = new InputWireJack(); this.inputJack.styleName = this.getStyle("inputJackStyleName"); this.inputJack.connectionAngle = 180; this.inputJack.noDataValue = false; this.inputJack.addEventListener(FlexEvent.DATA_CHANGE, inputDataChangeHandler); this.addChild(this.inputJack); }; if (!this.outputJack){ this.outputJack = new OutputWireJack(); this.outputJack.styleName = this.getStyle("outputJackStyleName"); this.outputJack.connectionAngle = 0; this.addChild(this.outputJack); this.outputJack.ignoredJacks = [this.inputJack]; }; } public function get wireManager():IWireManager{ return (this._wireManager); } public function get data():Boolean{ return (this._data); } public function set logicFunction(_arg1:Function):void{ this._logicFunction = _arg1; this.dispatchEvent(new Event("logicFunctionChange")); this.updateData(); } protected function createSkin():void{ var _local1:Object = this.getStyle("skin"); this.skin = new (_local1); if ((this.skin is ISimpleStyleClient)){ ISimpleStyleClient(this.skin).styleName = this; }; this.addChildAt(this.skin, 0); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:EdgeMetrics = this.calculateWireJackMetrics(); this.skin.x = _local3.left; this.skin.y = _local3.top; var _local4:Number = ((_arg1 - _local3.left) - _local3.right); var _local5:Number = ((_arg2 - _local3.top) - _local3.bottom); if ((this.skin is IFlexDisplayObject)){ IFlexDisplayObject(this.skin).setActualSize(_local4, _local5); } else { this.skin.width = _local4; this.skin.height = _local5; }; var _local6:Number = this.getStyle("wireJackSize"); var _local7:Number = ((_arg2 - _local6) / 2); this.inputJack.setActualSize(_local6, _local6); this.inputJack.move(0, _local7); this.outputJack.setActualSize(_local6, _local6); this.outputJack.move((_arg1 - _local6), _local7); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("LogicGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.borderColor = 0; this.borderThickness = 2; this.fillColor = 0xFFFFFF; this.wireJackSize = 10; }; StyleManager.setStyleDeclaration("LogicGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 11
//LogicWireRenderer (com.flextoolbox.controls.logic.LogicWireRenderer) package com.flextoolbox.controls.logic { import flash.geom.*; import flash.events.*; import mx.events.*; import mx.styles.*; import com.flextoolbox.controls.*; import com.flextoolbox.controls.wireClasses.*; import com.yahoo.astra.utils.*; import com.joshtynjala.utils.*; import com.flextoolbox.skins.cursor.*; public class LogicWireRenderer extends BaseWireRenderer { private var _disconnectCursorID:int; public function LogicWireRenderer(){ this.addEventListener(MouseEvent.CLICK, clickHandler); this.addEventListener(MouseEvent.ROLL_OVER, wireRollOverHandler); } protected function jackDataChangeHandler(_arg1:FlexEvent):void{ this.invalidateDisplayList(); } protected function clickHandler(_arg1:MouseEvent):void{ this.disconnect(); } override public function set jack2(_arg1:WireJack):void{ if (this.jack2){ this.jack2.removeEventListener(FlexEvent.DATA_CHANGE, jackDataChangeHandler); }; super.jack2 = _arg1; if (this.jack2){ this.jack2.addEventListener(FlexEvent.DATA_CHANGE, jackDataChangeHandler, false, 0, true); }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local22:Point; var _local23:Number; var _local24:Point; var _local25:Point; super.updateDisplayList(_arg1, _arg2); this.graphics.clear(); if (((!(this.jack1)) || (!(this.jack2)))){ return; }; var _local3:Point = new Point((this.jack1.width / 2), (this.jack1.height / 2)); _local3 = DisplayObjectUtil.localToLocal(_local3, jack1, this); var _local4:Point = new Point((this.jack2.width / 2), (this.jack2.height / 2)); _local4 = DisplayObjectUtil.localToLocal(_local4, jack2, this); var _local5:Number = this.jack1.connectionAngle; var _local6:Number = this.jack2.connectionAngle; var _local7:Number = Math.min(_local3.x, _local4.x); var _local8:Number = Math.max(_local3.x, _local4.x); var _local9:Number = Math.min(_local3.y, _local4.y); var _local10:Number = Math.max(_local3.y, _local4.y); var _local11:Point = new Point((_local7 + ((_local8 - _local7) / 2)), (_local9 + ((_local10 - _local9) / 2))); var _local12:Point = new Point(_local11.x, _local9); var _local13:Point = new Point(_local11.x, _local10); if (_local9 != _local3.y){ _local22 = _local3; _local3 = _local4; _local4 = _local22; _local23 = _local5; _local5 = _local6; _local6 = _local23; }; var _local14:Number = Math.min(50, (Point.distance(_local3, _local4) / 2)); var _local15:Array = [_local12, _local13]; if (!isNaN(_local5)){ _local24 = Point.polar(_local14, GeomUtil.degreesToRadians(_local5)); Point.polar(_local14, GeomUtil.degreesToRadians(_local5)).y = (_local24.y * -1); _local24 = _local24.add(_local3); _local15[0] = _local24; }; if (!isNaN(_local6)){ _local25 = Point.polar(_local14, GeomUtil.degreesToRadians(_local6)); Point.polar(_local14, GeomUtil.degreesToRadians(_local6)).y = (_local25.y * -1); _local25 = _local25.add(_local4); _local15.push(_local25); _local15[1] = _local25; }; var _local16:Number = this.getStyle("thickness"); var _local17:Number = this.getStyle("connectionRadius"); var _local18:uint = this.getStyle("borderColor"); var _local19:uint = this.getStyle("fillColor"); var _local20:uint = this.getStyle("themeColor"); var _local21:Number = this.getStyle("bezierPrecision"); this.graphics.lineStyle(1, _local18); this.graphics.beginFill(_local19); this.graphics.drawCircle(_local3.x, _local3.y, _local17); this.graphics.drawCircle(_local4.x, _local4.y, _local17); this.graphics.endFill(); _local19 = (((this.jack1.data) || (this.jack2.data))) ? _local20 : _local19; this.graphics.lineStyle(_local16, _local18); BezierUtil.drawBezierCurve(this.graphics, _local3, _local4, _local15, _local21); this.graphics.lineStyle((_local16 - 2), _local19); BezierUtil.drawBezierCurve(this.graphics, _local3, _local4, _local15, _local21); } protected function wireRollOverHandler(_arg1:MouseEvent):void{ var _local2:Class = this.getStyle("disconnectCursorSkin"); this._disconnectCursorID = this.cursorManager.setCursor(_local2); this.addEventListener(MouseEvent.ROLL_OUT, wireRollOutHandler); } override public function set jack1(_arg1:WireJack):void{ if (this.jack1){ this.jack1.removeEventListener(FlexEvent.DATA_CHANGE, jackDataChangeHandler); }; super.jack1 = _arg1; if (this.jack1){ this.jack1.addEventListener(FlexEvent.DATA_CHANGE, jackDataChangeHandler, false, 0, true); }; } protected function wireRollOutHandler(_arg1:MouseEvent):void{ this.cursorManager.removeCursor(this._disconnectCursorID); this.removeEventListener(MouseEvent.ROLL_OUT, wireRollOutHandler); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("LogicWireRenderer"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.fillColor = 0xFFFFFF; this.borderColor = 0; this.thickness = 6; this.connectionRadius = 4; this.bezierPrecision = 150; this.disconnectCursorSkin = DisconnectCursor; }; StyleManager.setStyleDeclaration("LogicWireRenderer", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 12
//NANDGate (com.flextoolbox.controls.logic.NANDGate) package com.flextoolbox.controls.logic { import mx.styles.*; import com.flextoolbox.skins.*; public class NANDGate extends DualInputLogicGate { public function NANDGate(){ super(); this.logicFunction = function (_arg1:Boolean, _arg2:Boolean):Boolean{ return (!(((_arg1) && (_arg2)))); }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("NANDGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = NANDGateSkin; }; StyleManager.setStyleDeclaration("NANDGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 13
//NORGate (com.flextoolbox.controls.logic.NORGate) package com.flextoolbox.controls.logic { import mx.styles.*; import com.flextoolbox.skins.*; public class NORGate extends DualInputLogicGate { public function NORGate(){ super(); this.logicFunction = function (_arg1:Boolean, _arg2:Boolean):Boolean{ return (!(((_arg1) || (_arg2)))); }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("NORGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = NORGateSkin; }; StyleManager.setStyleDeclaration("NORGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 14
//NOTGate (com.flextoolbox.controls.logic.NOTGate) package com.flextoolbox.controls.logic { import mx.styles.*; import com.flextoolbox.skins.*; public class NOTGate extends LogicGate { public function NOTGate(){ super(); this.logicFunction = function (_arg1:Boolean):Boolean{ return (!(_arg1)); }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("NOTGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = NOTGateSkin; }; StyleManager.setStyleDeclaration("NOTGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 15
//ORGate (com.flextoolbox.controls.logic.ORGate) package com.flextoolbox.controls.logic { import mx.styles.*; import com.flextoolbox.skins.*; public class ORGate extends DualInputLogicGate { public function ORGate(){ super(); this.logicFunction = function (_arg1:Boolean, _arg2:Boolean):Boolean{ return (((_arg1) || (_arg2))); }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ORGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = ORGateSkin; }; StyleManager.setStyleDeclaration("ORGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 16
//PowerIndicator (com.flextoolbox.controls.logic.PowerIndicator) package com.flextoolbox.controls.logic { import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import com.flextoolbox.controls.*; import com.flextoolbox.managers.*; public class PowerIndicator extends UIComponent implements IWiredLogicControl { protected var inputJack:InputWireJack; private var _wireManager:IWireManager; protected var wireManagerChanged:Boolean;// = false protected var _data:Boolean;// = false protected var light:LightBulb; override protected function createChildren():void{ super.createChildren(); if (!this.light){ this.light = new LightBulb(); this.light.styleName = this.getStyle("lightStyleName"); this.addChild(this.light); }; if (!this.inputJack){ this.inputJack = new InputWireJack(); this.inputJack.styleName = this.getStyle("inputJackStyleName"); this.inputJack.connectionAngle = 270; this.inputJack.addEventListener(FlexEvent.DATA_CHANGE, inputJackDataChangeHandler); this.addChild(this.inputJack); }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("borderColor"); var _local4:Number = this.getStyle("borderThickness"); var _local5:Number = this.getStyle("wireJackSize"); var _local6:Number = (_arg2 - (1.5 * _local5)); this.light.setActualSize(_arg1, _local6); this.graphics.clear(); this.graphics.lineStyle(_local4, _local3); this.graphics.moveTo((_arg1 / 2), _local6); this.graphics.lineTo((_arg1 / 2), (_local6 + _local5)); this.inputJack.setActualSize(_local5, _local5); this.inputJack.move(((_arg1 - _local5) / 2), (_arg2 - _local5)); } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local4:String; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "inputJackStyleName")))){ _local3 = this.getStyle("inputJackStyleName"); if (this.inputJack){ this.inputJack.styleName = _local3; }; }; if (((_local2) || ((_arg1 == "lightStyleName")))){ _local4 = this.getStyle("lightStyleName"); if (this.light){ this.light.styleName = _local4; }; }; } protected function inputJackDataChangeHandler(_arg1:Event):void{ this._data = this.inputJack.data; this.invalidateProperties(); this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } public function get wireManager():IWireManager{ return (this._wireManager); } public function get data():Boolean{ return (this._data); } override protected function commitProperties():void{ super.commitProperties(); if (this.wireManagerChanged){ this.inputJack.wireManager = this.wireManager; this.wireManagerChanged = false; }; this.light.powered = this.data; } public function set wireManager(_arg1:IWireManager):void{ this._wireManager = _arg1; this.wireManagerChanged = true; this.invalidateProperties(); this.dispatchEvent(new Event("wireManagerChange")); } public function disconnect():void{ this.inputJack.disconnectAll(); } override protected function measure():void{ super.measure(); var _local1:Number = this.getStyle("wireJackSize"); this.measuredWidth = this.light.measuredWidth; this.measuredHeight = (this.light.measuredHeight + (1.5 * _local1)); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("PowerIndicator"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.borderColor = 0; this.borderThickness = 2; this.wireJackSize = 10; }; StyleManager.setStyleDeclaration("PowerIndicator", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 17
//PowerToggle (com.flextoolbox.controls.logic.PowerToggle) package com.flextoolbox.controls.logic { import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import com.flextoolbox.controls.*; import com.flextoolbox.managers.*; public class PowerToggle extends UIComponent implements IWiredLogicControl { protected var outputJack:OutputWireJack; protected var powerSwitch:LightSwitch; protected var _data:Boolean;// = false protected var wireManagerChanged:Boolean;// = false private var _wireManager:IWireManager; override protected function createChildren():void{ super.createChildren(); if (!this.powerSwitch){ this.powerSwitch = new LightSwitch(); this.powerSwitch.styleName = this.getStyle("powerSwitchStyleName"); this.powerSwitch.addEventListener(Event.CHANGE, powerSwitchChangeHandler); this.addChild(this.powerSwitch); }; if (!this.outputJack){ this.outputJack = new OutputWireJack(); this.outputJack.styleName = this.getStyle("outputJackStyleName"); this.outputJack.connectionAngle = 0; this.addChild(this.outputJack); }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("borderColor"); var _local4:Number = this.getStyle("borderThickness"); var _local5:Number = this.getStyle("wireJackSize"); var _local6:Number = (_arg1 - (1.5 * _local5)); this.powerSwitch.setActualSize(_local6, _arg2); this.graphics.clear(); this.graphics.lineStyle(_local4, _local3); this.graphics.moveTo(_local6, (_arg2 / 2)); this.graphics.lineTo((_arg1 - _local5), (_arg2 / 2)); this.outputJack.setActualSize(_local5, _local5); this.outputJack.move((_arg1 - _local5), ((_arg2 - _local5) / 2)); } public function get data():Boolean{ return (this._data); } protected function powerSwitchChangeHandler(_arg1:Event):void{ this._data = this.powerSwitch.selected; this.invalidateProperties(); this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } public function get wireManager():IWireManager{ return (this._wireManager); } override protected function commitProperties():void{ super.commitProperties(); if (this.wireManagerChanged){ this.outputJack.wireManager = this.wireManager; this.wireManagerChanged = false; }; this.outputJack.data = this.data; } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local4:String; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "outputJackStyleName")))){ _local3 = this.getStyle("outputJackStyleName"); if (this.outputJack){ this.outputJack.styleName = _local3; }; }; if (((_local2) || ((_arg1 == "powerSwitchStyleName")))){ _local4 = this.getStyle("powerSwitchStyleName"); if (this.powerSwitch){ this.powerSwitch.styleName = _local4; }; this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); }; } public function disconnect():void{ this.outputJack.disconnectAll(); } override protected function measure():void{ super.measure(); var _local1:Number = this.getStyle("wireJackSize"); this.measuredWidth = (this.powerSwitch.measuredWidth + (1.5 * _local1)); this.measuredHeight = this.powerSwitch.measuredHeight; } public function set wireManager(_arg1:IWireManager):void{ this._wireManager = _arg1; this.wireManagerChanged = true; this.invalidateProperties(); this.dispatchEvent(new Event("wireManagerChange")); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("PowerToggle"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.borderColor = 0; this.borderThickness = 2; this.wireJackSize = 10; }; StyleManager.setStyleDeclaration("PowerToggle", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 18
//XNORGate (com.flextoolbox.controls.logic.XNORGate) package com.flextoolbox.controls.logic { import mx.styles.*; import com.flextoolbox.skins.*; public class XNORGate extends DualInputLogicGate { public function XNORGate(){ super(); this.logicFunction = function (_arg1:Boolean, _arg2:Boolean):Boolean{ return (!(((((!(_arg1)) && (_arg2))) || (((_arg1) && (!(_arg2))))))); }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("XNORGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = XNORGateSkin; }; StyleManager.setStyleDeclaration("XNORGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 19
//XORGate (com.flextoolbox.controls.logic.XORGate) package com.flextoolbox.controls.logic { import mx.styles.*; import com.flextoolbox.skins.*; public class XORGate extends DualInputLogicGate { public function XORGate(){ super(); this.logicFunction = function (_arg1:Boolean, _arg2:Boolean):Boolean{ return (((((!(_arg1)) && (_arg2))) || (((_arg1) && (!(_arg2)))))); }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("XORGate"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = XORGateSkin; }; StyleManager.setStyleDeclaration("XORGate", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.logic
Section 20
//BaseWireRenderer (com.flextoolbox.controls.wireClasses.BaseWireRenderer) package com.flextoolbox.controls.wireClasses { import flash.geom.*; import mx.core.*; import flash.events.*; import com.flextoolbox.controls.*; import com.flextoolbox.managers.*; import com.yahoo.astra.utils.*; public class BaseWireRenderer extends UIComponent implements IWireRenderer { private var _lastJack1Position:Point; private var _lastJack2Position:Point; private var _jack1:WireJack; private var _wireManager:IWireManager; private var _jack2:WireJack; protected function calculateJackPositions():Array{ var _local1:Point = new Point((this.jack1.width / 2), (this.jack1.height / 2)); _local1 = DisplayObjectUtil.localToLocal(_local1, jack1, this); var _local2:Point = new Point((this.jack2.width / 2), (this.jack2.height / 2)); _local2 = DisplayObjectUtil.localToLocal(_local2, jack2, this); return ([_local1, _local2]); } public function set wireManager(_arg1:IWireManager):void{ this.disconnect(); this._wireManager = _arg1; } protected function enterFrameHandler(_arg1:Event):void{ if (((!(this.jack1)) || (!(this.jack2)))){ return; }; var _local2:Array = this.calculateJackPositions(); var _local3:Point = Point(_local2[0]); var _local4:Point = Point(_local2[1]); if (((!(this._lastJack1Position.equals(_local3))) || (!(this._lastJack2Position.equals(_local4))))){ this.invalidateDisplayList(); }; } public function disconnect():void{ if (((this.jack1) || (this.jack2))){ this.wireManager.disconnect(this.jack1, this.jack2); }; } public function set jack1(_arg1:WireJack):void{ this._jack1 = _arg1; this.invalidateDisplayList(); } public function set jack2(_arg1:WireJack):void{ this._jack2 = _arg1; this.invalidateDisplayList(); } public function get wireManager():IWireManager{ return (this._wireManager); } public function get jack1():WireJack{ return (this._jack1); } public function get jack2():WireJack{ return (this._jack2); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); this.graphics.clear(); if (((!(this.jack1)) || (!(this.jack2)))){ this.removeEventListener(Event.ENTER_FRAME, enterFrameHandler); return; }; if (!this.hasEventListener(Event.ENTER_FRAME)){ this.addEventListener(Event.ENTER_FRAME, enterFrameHandler); }; var _local3:Array = this.calculateJackPositions(); this._lastJack1Position = Point(_local3[0]); this._lastJack2Position = Point(_local3[1]); } } }//package com.flextoolbox.controls.wireClasses
Section 21
//DefaultWireRenderer (com.flextoolbox.controls.wireClasses.DefaultWireRenderer) package com.flextoolbox.controls.wireClasses { import flash.geom.*; import flash.events.*; import mx.styles.*; import com.yahoo.astra.utils.*; import com.joshtynjala.utils.*; import com.flextoolbox.skins.cursor.*; public class DefaultWireRenderer extends BaseWireRenderer { private var _disconnectCursorID:int; public function DefaultWireRenderer(){ this.addEventListener(MouseEvent.CLICK, clickHandler); this.addEventListener(MouseEvent.ROLL_OVER, wireRollOverHandler); } protected function clickHandler(_arg1:MouseEvent):void{ this.disconnect(); } protected function wireRollOverHandler(_arg1:MouseEvent):void{ var _local2:Class = this.getStyle("disconnectCursorSkin"); this._disconnectCursorID = this.cursorManager.setCursor(_local2); this.addEventListener(MouseEvent.ROLL_OUT, wireRollOutHandler); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local20:Point; var _local21:Number; var _local22:Point; var _local23:Point; super.updateDisplayList(_arg1, _arg2); this.graphics.clear(); if (((!(this.jack1)) || (!(this.jack2)))){ return; }; var _local3:Point = new Point((this.jack1.width / 2), (this.jack1.height / 2)); _local3 = DisplayObjectUtil.localToLocal(_local3, jack1, this); var _local4:Point = new Point((this.jack2.width / 2), (this.jack2.height / 2)); _local4 = DisplayObjectUtil.localToLocal(_local4, jack2, this); var _local5:Number = this.jack1.connectionAngle; var _local6:Number = this.jack2.connectionAngle; var _local7:Number = Math.min(_local3.x, _local4.x); var _local8:Number = Math.max(_local3.x, _local4.x); var _local9:Number = Math.min(_local3.y, _local4.y); var _local10:Number = Math.max(_local3.y, _local4.y); var _local11:Point = new Point((_local7 + ((_local8 - _local7) / 2)), (_local9 + ((_local10 - _local9) / 2))); var _local12:Point = new Point(_local11.x, _local9); var _local13:Point = new Point(_local11.x, _local10); if (_local9 != _local3.y){ _local20 = _local3; _local3 = _local4; _local4 = _local20; _local21 = _local5; _local5 = _local6; _local6 = _local21; }; var _local14:Number = Math.min(100, (Point.distance(_local3, _local4) / 2)); var _local15:Array = [_local12, _local13]; if (!isNaN(_local5)){ _local22 = Point.polar(_local14, GeomUtil.degreesToRadians(_local5)); Point.polar(_local14, GeomUtil.degreesToRadians(_local5)).y = (_local22.y * -1); _local22 = _local22.add(_local3); _local15[0] = _local22; }; if (!isNaN(_local6)){ _local23 = Point.polar(_local14, GeomUtil.degreesToRadians(_local6)); Point.polar(_local14, GeomUtil.degreesToRadians(_local6)).y = (_local23.y * -1); _local23 = _local23.add(_local4); _local15.push(_local23); _local15[1] = _local23; }; var _local16:Number = this.getStyle("thickness"); var _local17:uint = this.getStyle("borderColor"); var _local18:uint = this.getStyle("fillColor"); var _local19:Number = this.getStyle("bezierPrecision"); this.graphics.lineStyle(1, _local17); this.graphics.beginFill(_local18); this.graphics.drawCircle(_local3.x, _local3.y, _local16); this.graphics.drawCircle(_local4.x, _local4.y, _local16); this.graphics.endFill(); this.graphics.lineStyle(_local16, _local17); BezierUtil.drawBezierCurve(this.graphics, _local3, _local4, _local15, _local19); this.graphics.lineStyle((_local16 - 2), _local18); BezierUtil.drawBezierCurve(this.graphics, _local3, _local4, _local15, _local19); } protected function wireRollOutHandler(_arg1:MouseEvent):void{ this.cursorManager.removeCursor(this._disconnectCursorID); this.removeEventListener(MouseEvent.ROLL_OUT, wireRollOutHandler); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("DefaultWireRenderer"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.fillColor = 0xCCCCCC; this.borderColor = 9542041; this.thickness = 6; this.bezierPrecision = 150; this.disconnectCursorSkin = DisconnectCursor; }; StyleManager.setStyleDeclaration("DefaultWireRenderer", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls.wireClasses
Section 22
//IWireRenderer (com.flextoolbox.controls.wireClasses.IWireRenderer) package com.flextoolbox.controls.wireClasses { import mx.core.*; import com.flextoolbox.controls.*; import com.flextoolbox.managers.*; public interface IWireRenderer extends IUIComponent { function set wireManager(_arg1:IWireManager):void; function get jack1():WireJack; function get jack2():WireJack; function set jack1(_arg1:WireJack):void; function set jack2(_arg1:WireJack):void; function get wireManager():IWireManager; function disconnect():void; } }//package com.flextoolbox.controls.wireClasses
Section 23
//InputWireJack (com.flextoolbox.controls.InputWireJack) package com.flextoolbox.controls { import mx.events.*; import com.flextoolbox.events.*; public class InputWireJack extends WireJack { private var _noDataValue;// = null private static const SET_DATA_ERROR:String = "Cannot set the data property of an InputWireJack. Data may only come from jacks to which the InputWireJack is connected."; private static const SET_MAX_CONNECTIONS_ERROR:String = "Cannot set the maxConnections property of an InputWireJack. An InputWireJack must only have one connection."; private static const SET_DATA_FORMAT_ERROR:String = "Cannot set dataFormat property on InputWireJack. Only acceptedDataFormat may be changed."; static const INPUT_DATA_FORMAT:String = "flextoolbox::inputWireJackDataFormat"; public function InputWireJack(){ this.addEventListener(WireJackEvent.CONNECT_WIRE, wireConnectHandler); this.addEventListener(WireJackEvent.DISCONNECT_WIRE, wireDisconnectHandler); } override public function get dataFormat():String{ return (InputWireJack.INPUT_DATA_FORMAT); } override public function set maxConnections(_arg1:uint):void{ throw (new Error(InputWireJack.SET_MAX_CONNECTIONS_ERROR)); } protected function wireConnectHandler(_arg1:WireJackEvent):void{ _arg1.otherJack.addEventListener(FlexEvent.DATA_CHANGE, connectedJackDataChangeHandler, false, 0, true); this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } public function get noDataValue(){ return (this._noDataValue); } protected function connectedJackDataChangeHandler(_arg1:FlexEvent):void{ this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } override public function set dataFormat(_arg1:String):void{ throw (InputWireJack.SET_DATA_FORMAT_ERROR); } override public function get data():Object{ if (this.connectedJacks.length == 0){ if (this._noDataValue !== null){ return (this._noDataValue); }; return (null); }; var _local1:WireJack = WireJack(this.connectedJacks[0]); return (_local1.data); } public function set noDataValue(_arg1):void{ this._noDataValue = _arg1; if (this.connectedJacks.length == 0){ this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); }; } protected function wireDisconnectHandler(_arg1:WireJackEvent):void{ _arg1.otherJack.removeEventListener(FlexEvent.DATA_CHANGE, connectedJackDataChangeHandler); this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } override public function get maxConnections():uint{ return (1); } override public function set data(_arg1:Object):void{ throw (new Error(InputWireJack.SET_DATA_ERROR)); } } }//package com.flextoolbox.controls
Section 24
//LightBulb (com.flextoolbox.controls.LightBulb) package com.flextoolbox.controls { import flash.display.*; import mx.core.*; import mx.events.*; import mx.styles.*; import com.flextoolbox.skins.*; public class LightBulb extends UIComponent { protected var _powered:Boolean;// = false protected var skin:DisplayObject; override public function styleChanged(_arg1:String):void{ var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "skin")))){ if (this.skin){ this.removeChild(this.skin); this.skin = null; }; this.createSkin(); this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); }; } public function get powered():Boolean{ return (this._powered); } public function set powered(_arg1:Boolean):void{ this._powered = _arg1; this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); this.dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } override protected function commitProperties():void{ super.commitProperties(); this.skin.name = (this.powered) ? "onSkin" : "offSkin"; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); if ((this.skin is IFlexDisplayObject)){ IFlexDisplayObject(this.skin).setActualSize(_arg1, _arg2); } else { this.skin.width = _arg1; this.skin.height = _arg2; }; } protected function createSkin():void{ var _local1:Object = this.getStyle("skin"); this.skin = new (_local1); if ((this.skin is ISimpleStyleClient)){ ISimpleStyleClient(this.skin).styleName = this; }; this.addChildAt(this.skin, 0); } override protected function createChildren():void{ super.createChildren(); if (!this.skin){ this.createSkin(); }; } override protected function measure():void{ var _local1:IFlexDisplayObject; super.measure(); if ((this.skin is IFlexDisplayObject)){ _local1 = IFlexDisplayObject(this.skin); this.measuredWidth = _local1.measuredWidth; this.measuredHeight = _local1.measuredHeight; } else { this.measuredWidth = this.skin.width; this.measuredHeight = this.skin.height; }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("LightBulb"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = LightBulbSkin; this.borderColor = 0; this.borderThickness = 2; this.detailThickness = 1; this.fillColor = 0xFFFFFF; }; StyleManager.setStyleDeclaration("LightBulb", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls
Section 25
//LightSwitch (com.flextoolbox.controls.LightSwitch) package com.flextoolbox.controls { import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import com.flextoolbox.skins.*; public class LightSwitch extends UIComponent { protected var theSwitch:Button; protected var backgroundSkin:DisplayObject; protected var _selected:Boolean;// = false override protected function createChildren():void{ super.createChildren(); if (!this.backgroundSkin){ this.createBackground(); }; if (!this.theSwitch){ this.theSwitch = new Button(); this.theSwitch.buttonMode = true; this.theSwitch.toggle = true; this.theSwitch.addEventListener(Event.CHANGE, switchChangeHandler); this.theSwitch.styleName = this.getStyle("switchStyleName"); this.addChild(this.theSwitch); }; } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "switchStyleName")))){ _local3 = this.getStyle("switchStyleName"); if (this.theSwitch){ this.theSwitch.styleName = _local3; }; }; if (((_local2) || ((_arg1.indexOf("padding") >= 0)))){ this.invalidateSize(); this.invalidateDisplayList(); }; if (((_local2) || ((_arg1 == "backgroundSkin")))){ if (this.backgroundSkin){ this.removeChild(this.backgroundSkin); this.backgroundSkin = null; }; this.createBackground(); }; } protected function switchChangeHandler(_arg1:Event):void{ this.selected = this.theSwitch.selected; this.dispatchEvent(new Event(Event.CHANGE)); } protected function createBackground():void{ var _local1:Object = this.getStyle("backgroundSkin"); this.backgroundSkin = new (_local1); if ((this.backgroundSkin is ISimpleStyleClient)){ ISimpleStyleClient(this.backgroundSkin).styleName = this; }; this.addChildAt(this.backgroundSkin, 0); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); if ((this.backgroundSkin is IFlexDisplayObject)){ IFlexDisplayObject(this.backgroundSkin).setActualSize(_arg1, _arg2); } else { this.backgroundSkin.width = _arg1; this.backgroundSkin.height = _arg2; }; var _local3:Number = this.getStyle("paddingTop"); var _local4:Number = this.getStyle("paddingRight"); var _local5:Number = this.getStyle("paddingBottom"); var _local6:Number = this.getStyle("paddingLeft"); var _local7:Number = ((_arg2 - _local3) - _local5); var _local8:Number = ((_arg1 - _local6) - _local4); this.theSwitch.x = ((_arg1 - _local8) / 2); this.theSwitch.y = ((_arg2 - _local7) / 2); this.theSwitch.setActualSize(_local8, _local7); } public function get selected():Boolean{ return (this._selected); } public function set selected(_arg1:Boolean):void{ this._selected = _arg1; this.invalidateProperties(); this.invalidateDisplayList(); this.dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } override protected function measure():void{ var _local1:IFlexDisplayObject; super.measure(); if ((this.backgroundSkin is IFlexDisplayObject)){ _local1 = IFlexDisplayObject(this.backgroundSkin); this.measuredWidth = _local1.measuredWidth; this.measuredHeight = _local1.measuredHeight; } else { this.measuredWidth = this.backgroundSkin.width; this.measuredHeight = this.backgroundSkin.height; }; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("LightSwitch"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.backgroundSkin = LightSwitchCoverPlateSkin; this.switchStyleName = "flextoolbox_lightSwitchStyle"; this.borderColor = 0; this.borderThickness = 2; this.fillColor = 0xFFFFFF; this.paddingTop = 7; this.paddingRight = 9; this.paddingBottom = 7; this.paddingLeft = 9; }; StyleManager.setStyleDeclaration("LightSwitch", styles, false); styles = StyleManager.getStyleDeclaration(".flextoolbox_lightSwitchStyle"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.skin = LightSwitchSkin; this.borderThickness = 1; this.borderColor = 0; this.fillColor = 0xFFFFFF; }; StyleManager.setStyleDeclaration(".flextoolbox_lightSwitchStyle", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls
Section 26
//OutputWireJack (com.flextoolbox.controls.OutputWireJack) package com.flextoolbox.controls { public class OutputWireJack extends WireJack { private static const SET_ACCEPTED_DATA_FORMAT_ERROR:String = "Cannot set acceptedDataFormat property on OutputWireJack. Only dataFormat may be changed."; override public function get acceptedDataFormat():String{ return (InputWireJack.INPUT_DATA_FORMAT); } override public function set acceptedDataFormat(_arg1:String):void{ throw (OutputWireJack.SET_ACCEPTED_DATA_FORMAT_ERROR); } } }//package com.flextoolbox.controls
Section 27
//WireJack (com.flextoolbox.controls.WireJack) package com.flextoolbox.controls { import flash.display.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import com.flextoolbox.managers.*; import com.flextoolbox.events.*; import com.flextoolbox.skins.halo.*; public class WireJack extends UIComponent implements IDataRenderer { private var _data:Object; private var _connectedJacks:Array; private var _highlighted:Boolean;// = false private var _ignoredJacks:Array; private var _wireManager:IWireManager; protected var backgroundSkin:DisplayObject; private var _connectionAngle:Number;// = NAN private var _dataFormat:String;// = null private var _mouseIsOver:Boolean;// = false private var _acceptedDataFormat:String;// = null private var _maxConnections:uint;// = 4294967295 private static const MINIMUM_MAX_CONNECTIONS_ERROR:String = "Cannot set maxConnections to a value less than zero."; private static const JACKS_NOT_CONNECTED_ERROR:String = "Cannot delete connection if jacks aren't connected."; protected static const WIRE_JACK_DRAG_FORMAT:String = "flextoolbox::wireJack"; private static const TOO_MANY_EXISTING_CONNECTIONS_ERROR:String = "Cannot set maxConnections to a value smaller than the number of existing connections."; public function WireJack(){ _ignoredJacks = []; _connectedJacks = []; super(); this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); this.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler); this.addEventListener(DragEvent.DRAG_ENTER, dragEnterHandler); this.wireManager = WireManager.defaultWireManager; } private function set _524174152acceptedDataFormat(_arg1:String):void{ this._acceptedDataFormat = _arg1; } protected function wireManagerBeginConnectionRequestHandler(_arg1:WireManagerEvent):void{ var _local2:WireJack = _arg1.startJack; if (((this.isCompatibleWithJack(_local2)) && (_local2.isCompatibleWithJack(this)))){ this.highlighted = true; }; } public function set dataFormat(_arg1:String):void{ var _local2:Object = this.dataFormat; if (_local2 !== _arg1){ this._900197441dataFormat = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "dataFormat", _local2, _arg1)); }; } public function isCompatibleWithJack(_arg1:WireJack):Boolean{ return (((((((((!((_arg1 == null))) && (!((_arg1 == this))))) && ((this.connectedJacks.length < this.maxConnections)))) && ((_arg1.dataFormat == this.acceptedDataFormat)))) && ((this.ignoredJacks.indexOf(_arg1) < 0)))); } public function set ignoredJacks(_arg1:Array):void{ this._ignoredJacks = _arg1; } protected function dragDropHandler(_arg1:DragEvent):void{ this.removeEventListener(DragEvent.DRAG_EXIT, dragExitHandler); this.removeEventListener(DragEvent.DRAG_DROP, dragDropHandler); var _local2:DragSource = _arg1.dragSource; if (!_local2.hasFormat(WIRE_JACK_DRAG_FORMAT)){ return; }; var _local3:WireJack = (_local2.dataForFormat(WIRE_JACK_DRAG_FORMAT) as WireJack); this.wireManager.connect(_local3, this); } public function connectToJack(_arg1:WireJack):Boolean{ return (this.wireManager.connect(this, _arg1)); } public function set acceptedDataFormat(_arg1:String):void{ var _local2:Object = this.acceptedDataFormat; if (_local2 !== _arg1){ this._524174152acceptedDataFormat = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "acceptedDataFormat", _local2, _arg1)); }; } protected function wireManagerCreatingConnectionHandler(_arg1:WireManagerEvent):void{ var _local2:WireJack = this.findOtherJack(_arg1); if (!_local2){ return; }; var _local3:WireJackEvent = new WireJackEvent(WireJackEvent.CONNECTING_WIRE, _local2, true); var _local4:Boolean = this.dispatchEvent(_local3); if (!_local4){ _arg1.preventDefault(); }; } public function get connectionAngle():Number{ return (this._connectionAngle); } protected function rollOverHandler(_arg1:MouseEvent):void{ if (DragManager.isDragging){ return; }; this.mouseIsOver = true; this.addEventListener(MouseEvent.ROLL_OUT, rollOutHandler); } public function disconnect(_arg1:WireJack):void{ this.wireManager.disconnect(this, _arg1); } protected function wireManagerDeleteConnectionHandler(_arg1:WireManagerEvent):void{ var _local2:WireJack = this.findOtherJack(_arg1); if (!_local2){ return; }; var _local3:int = this.connectedJacks.indexOf(_local2); if (_local3 < 0){ throw (new Error(JACKS_NOT_CONNECTED_ERROR)); }; this._connectedJacks.splice(_local3, 1); var _local4:WireJackEvent = new WireJackEvent(WireJackEvent.DISCONNECT_WIRE, _local2); this.dispatchEvent(_local4); this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); } public function set maxConnections(_arg1:uint):void{ var _local2:Object = this.maxConnections; if (_local2 !== _arg1){ this._259073711maxConnections = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "maxConnections", _local2, _arg1)); }; } protected function get mouseIsOver():Boolean{ return (this._mouseIsOver); } protected function set highlighted(_arg1:Boolean):void{ this._highlighted = _arg1; this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); } protected function dragEnterHandler(_arg1:DragEvent):void{ if (!this.enabled){ return; }; var _local2:DragSource = _arg1.dragSource; if (!_local2.hasFormat(WIRE_JACK_DRAG_FORMAT)){ return; }; var _local3:WireJack = (_local2.dataForFormat(WIRE_JACK_DRAG_FORMAT) as WireJack); if (((this.isCompatibleWithJack(_local3)) && (_local3.isCompatibleWithJack(this)))){ this.addEventListener(DragEvent.DRAG_EXIT, dragExitHandler); this.addEventListener(DragEvent.DRAG_DROP, dragDropHandler); DragManager.acceptDragDrop(this); DragManager.showFeedback(DragManager.LINK); }; } public function get data():Object{ return (this._data); } public function set connectionAngle(_arg1:Number):void{ this._connectionAngle = _arg1; this.invalidateDisplayList(); } protected function wireManagerEndConnectionRequestHandler(_arg1:WireManagerEvent):void{ this.highlighted = false; } public function get dataFormat():String{ return (this._dataFormat); } protected function set mouseIsOver(_arg1:Boolean):void{ this._mouseIsOver = _arg1; this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); } public function get acceptedDataFormat():String{ return (this._acceptedDataFormat); } public function get ignoredJacks():Array{ return (this._ignoredJacks); } override public function styleChanged(_arg1:String):void{ super.styleChanged(_arg1); var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "skin")))){ this.invalidateProperties(); }; } protected function viewSkinForState(_arg1:String, _arg2:String):void{ var _local3:Object = this.getStyle(_arg1); this.backgroundSkin = new (_local3); if ((this.backgroundSkin is ISimpleStyleClient)){ ISimpleStyleClient(this.backgroundSkin).styleName = this; }; if ((this.backgroundSkin is IUIComponent)){ IUIComponent(this.backgroundSkin).enabled = enabled; }; this.backgroundSkin.name = _arg2; this.addChild(DisplayObject(this.backgroundSkin)); } public function set wireManager(_arg1:IWireManager):void{ var _local2:Object = this.wireManager; if (_local2 !== _arg1){ this._4176024wireManager = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "wireManager", _local2, _arg1)); }; } public function get maxConnections():uint{ return (this._maxConnections); } protected function get highlighted():Boolean{ return (this._highlighted); } public function set data(_arg1:Object):void{ if (this._data == _arg1){ return; }; this._data = _arg1; this.dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } public function isConnectedToJack(_arg1:WireJack):Boolean{ return ((this.connectedJacks.indexOf(_arg1) >= 0)); } protected function viewSkin():void{ var _local1:String; if (this.backgroundSkin){ this.removeChild(this.backgroundSkin); this.backgroundSkin = null; }; if (this.enabled){ if (this.connectedJacks.length > 0){ if (this.highlighted){ _local1 = "connectedHighlightedSkin"; } else { if (((this.mouseIsOver) && ((this.connectedJacks.length < this.maxConnections)))){ _local1 = "connectedOverSkin"; } else { _local1 = "connectedSkin"; }; }; } else { if (this.highlighted){ _local1 = "highlightedSkin"; } else { if (this.mouseIsOver){ _local1 = "overSkin"; } else { _local1 = "disconnectedSkin"; }; }; }; } else { if (this.connectedJacks.length > 0){ _local1 = "connectedDisabledSkin"; } else { _local1 = "disabledSkin"; }; }; this.viewSkinForState("skin", _local1); } protected function findOtherJack(_arg1:WireManagerEvent):WireJack{ if (((!((this == _arg1.startJack))) && (!((this == _arg1.endJack))))){ return (null); }; var _local2:WireJack = _arg1.startJack; if (_local2 == this){ _local2 = _arg1.endJack; }; return (_local2); } override protected function measure():void{ super.measure(); if ((this.backgroundSkin is IFlexDisplayObject)){ this.measuredWidth = IFlexDisplayObject(this.backgroundSkin).measuredWidth; this.measuredHeight = IFlexDisplayObject(this.backgroundSkin).measuredHeight; } else { this.measuredWidth = this.backgroundSkin.width; this.measuredHeight = this.backgroundSkin.height; }; } private function set _4176024wireManager(_arg1:IWireManager):void{ if (this._wireManager){ this._wireManager.deleteJack(this); this._wireManager.removeEventListener(WireManagerEvent.BEGIN_CONNECTION_REQUEST, wireManagerBeginConnectionRequestHandler); this._wireManager.removeEventListener(WireManagerEvent.END_CONNNECTION_REQUEST, wireManagerEndConnectionRequestHandler); this._wireManager.removeEventListener(WireManagerEvent.CREATING_CONNECTION, wireManagerCreatingConnectionHandler); this._wireManager.removeEventListener(WireManagerEvent.CREATE_CONNECTION, wireManagerCreateConnectionHandler); this._wireManager.removeEventListener(WireManagerEvent.DELETE_CONNECTION, wireManagerDeleteConnectionHandler); this._wireManager = null; }; if (!_arg1){ _arg1 = WireManager.defaultWireManager; }; this._wireManager = _arg1; if (this._wireManager){ this._wireManager.registerJack(this); this._wireManager.addEventListener(WireManagerEvent.BEGIN_CONNECTION_REQUEST, wireManagerBeginConnectionRequestHandler, false, 0, true); this._wireManager.addEventListener(WireManagerEvent.END_CONNNECTION_REQUEST, wireManagerEndConnectionRequestHandler, false, 0, true); this._wireManager.addEventListener(WireManagerEvent.CREATING_CONNECTION, wireManagerCreatingConnectionHandler, false, 0, true); this._wireManager.addEventListener(WireManagerEvent.CREATE_CONNECTION, wireManagerCreateConnectionHandler, false, 0, true); this._wireManager.addEventListener(WireManagerEvent.DELETE_CONNECTION, wireManagerDeleteConnectionHandler, false, 0, true); }; } protected function mouseDownHandler(_arg1:MouseEvent):void{ if ((((this.connectedJacks.length == this.maxConnections)) || (!(this.enabled)))){ return; }; this.systemManager.addEventListener(MouseEvent.MOUSE_UP, connectionEndHandler); this.addEventListener(DragEvent.DRAG_COMPLETE, connectionEndHandler); this.wireManager.beginConnectionRequest(this); var _local2:DragSource = new DragSource(); _local2.addData(this, WIRE_JACK_DRAG_FORMAT); var _local3:Object = this.getStyle("dragImage"); var _local4:IFlexDisplayObject = new (_local3); if ((_local4 is ISimpleStyleClient)){ ISimpleStyleClient(_local4).styleName = this.getStyle("dragImageStyleName"); }; DragManager.doDrag(this, _local2, _arg1, _local4, -(this.mouseX), -(this.mouseY), 1); } public function disconnectAll():void{ var _local3:WireJack; var _local1:int = this.connectedJacks.length; var _local2:int; while (_local2 < _local1) { _local3 = WireJack(this.connectedJacks[_local2]); this.disconnect(_local3); _local2++; }; } private function set _259073711maxConnections(_arg1:uint):void{ if (this.connectedJacks.length > _arg1){ throw (new ArgumentError(WireJack.TOO_MANY_EXISTING_CONNECTIONS_ERROR)); }; this._maxConnections = _arg1; } public function get wireManager():IWireManager{ return (this._wireManager); } public function get connectedJacks():Array{ return (this._connectedJacks.concat()); } override protected function commitProperties():void{ super.commitProperties(); this.viewSkin(); } protected function connectionEndHandler(_arg1:Event):void{ this.removeEventListener(DragEvent.DRAG_COMPLETE, connectionEndHandler); this.systemManager.removeEventListener(MouseEvent.MOUSE_UP, connectionEndHandler); this.wireManager.endConnectionRequest(this); } protected function wireManagerCreateConnectionHandler(_arg1:WireManagerEvent):void{ var _local2:WireJack = this.findOtherJack(_arg1); if (!_local2){ return; }; this._connectedJacks.push(_local2); this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); var _local3:WireJackEvent = new WireJackEvent(WireJackEvent.CONNECT_WIRE, _local2, true); this.dispatchEvent(_local3); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Boolean; if ((this.backgroundSkin is IInvalidating)){ IInvalidating(this.backgroundSkin).validateNow(); _local3 = true; } else { if ((this.backgroundSkin is IProgrammaticSkin)){ IProgrammaticSkin(this.backgroundSkin).validateDisplayList(); _local3 = true; }; }; if (_local3){ IFlexDisplayObject(this.backgroundSkin).setActualSize(_arg1, _arg2); }; } protected function dragExitHandler(_arg1:DragEvent):void{ this.removeEventListener(DragEvent.DRAG_EXIT, dragExitHandler); this.removeEventListener(DragEvent.DRAG_DROP, dragDropHandler); } protected function rollOutHandler(_arg1:MouseEvent):void{ this.mouseIsOver = false; this.removeEventListener(MouseEvent.ROLL_OUT, rollOutHandler); } private function set _900197441dataFormat(_arg1:String):void{ this._dataFormat = _arg1; } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("WireJack"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.disabledIconColor = 0x999999; this.dragImage = WireJackWireDragImage; this.iconColor = 0x666666; this.skin = WireJackSkin; }; StyleManager.setStyleDeclaration("WireJack", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls
Section 28
//WireSurface (com.flextoolbox.controls.WireSurface) package com.flextoolbox.controls { import mx.core.*; import mx.styles.*; import com.flextoolbox.managers.*; import com.flextoolbox.events.*; import com.flextoolbox.controls.wireClasses.*; public class WireSurface extends UIComponent implements IWireManager { protected var manager:IWireManager; public function WireSurface(){ this.manager = new WireManager(this); this.manager.addEventListener(WireManagerEvent.BEGIN_CONNECTION_REQUEST, managerEventHandler); this.manager.addEventListener(WireManagerEvent.END_CONNNECTION_REQUEST, managerEventHandler); this.manager.addEventListener(WireManagerEvent.CREATING_CONNECTION, managerEventHandler); this.manager.addEventListener(WireManagerEvent.CREATE_CONNECTION, managerEventHandler); this.manager.addEventListener(WireManagerEvent.DELETE_CONNECTION, managerEventHandler); } public function registerJack(_arg1:WireJack):void{ this.manager.registerJack(_arg1); } protected function managerEventHandler(_arg1:WireManagerEvent):void{ this.dispatchEvent(_arg1); } public function beginConnectionRequest(_arg1:WireJack):void{ this.manager.beginConnectionRequest(_arg1); } public function deleteJack(_arg1:WireJack):void{ this.manager.deleteJack(_arg1); } public function get wireRenderer():IFactory{ return (this.manager.wireRenderer); } public function set wireRenderer(_arg1:IFactory):void{ this.manager.wireRenderer = _arg1; } override public function styleChanged(_arg1:String):void{ var _local3:Class; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "wireSkin")))){ _local3 = this.getStyle("wireSkin"); this.wireRenderer = new ClassFactory(_local3); }; } public function endConnectionRequest(_arg1:WireJack):void{ this.manager.endConnectionRequest(_arg1); } public function connect(_arg1:WireJack, _arg2:WireJack):Boolean{ return (this.manager.connect(_arg1, _arg2)); } public function disconnect(_arg1:WireJack, _arg2:WireJack):void{ this.manager.disconnect(_arg1, _arg2); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("WireSurface"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.wireSkin = DefaultWireRenderer; }; StyleManager.setStyleDeclaration("WireSurface", styles, false); } initializeStyles(); } }//package com.flextoolbox.controls
Section 29
//WireJackEvent (com.flextoolbox.events.WireJackEvent) package com.flextoolbox.events { import flash.events.*; import com.flextoolbox.controls.*; public class WireJackEvent extends Event { public var otherJack:WireJack; public static const CONNECT_WIRE:String = "connectWire"; public static const CONNECTING_WIRE:String = "connectingWire"; public static const DISCONNECT_WIRE:String = "disconnectWire"; public function WireJackEvent(_arg1:String, _arg2:WireJack, _arg3:Boolean=false){ super(_arg1, false, _arg3); this.otherJack = _arg2; } override public function clone():Event{ return (new WireJackEvent(this.type, this.otherJack, this.cancelable)); } } }//package com.flextoolbox.events
Section 30
//WireManagerEvent (com.flextoolbox.events.WireManagerEvent) package com.flextoolbox.events { import flash.events.*; import com.flextoolbox.controls.*; public class WireManagerEvent extends Event { public var startJack:WireJack; public var endJack:WireJack; public static const CREATE_CONNECTION:String = "createConnection"; public static const CREATING_CONNECTION:String = "creatingConnection"; public static const END_CONNNECTION_REQUEST:String = "endConnectionRequest"; public static const DELETE_CONNECTION:String = "deleteConnection"; public static const BEGIN_CONNECTION_REQUEST:String = "beginConnectionRequest"; public function WireManagerEvent(_arg1:String, _arg2:WireJack, _arg3:WireJack=null, _arg4:Boolean=false){ super(_arg1, false, _arg4); this.startJack = _arg2; this.endJack = _arg3; } override public function clone():Event{ return (new WireManagerEvent(this.type, this.startJack, this.endJack, this.cancelable)); } } }//package com.flextoolbox.events
Section 31
//ToolboxItemRenderer (com.flextoolbox.logicly.view.renderers.ToolboxItemRenderer) package com.flextoolbox.logicly.view.renderers { import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import com.flextoolbox.logicly.view.*; import com.flextoolbox.controls.logic.*; import mx.controls.listClasses.*; public class ToolboxItemRenderer extends UIComponent implements IListItemRenderer { private var _data:Object; protected var textField:UITextField; protected var thumb:UIComponent; protected var dataChanged:Boolean;// = false public function ToolboxItemRenderer(){ this.buttonMode = true; this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); } public function set data(_arg1:Object):void{ var _local2:Object = this.data; if (_local2 !== _arg1){ this._3076010data = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "data", _local2, _arg1)); }; } override protected function commitProperties():void{ super.commitProperties(); if (this.dataChanged){ this.textField.text = (this._data) ? this._data.name : " "; if (((this._data) && (this._data.type))){ if (this.thumb){ this.removeChild(this.thumb); this.thumb = null; }; this.thumb = new this._data.type(); this.thumb.mouseEnabled = false; this.thumb.mouseChildren = false; this.addChild(this.thumb); }; this.dataChanged = false; }; } protected function mouseDownHandler(_arg1:MouseEvent):void{ var _local2:Class = this.data.type; var _local3:UIComponent = new (_local2); var _local4:DragSource = new DragSource(); _local4.addData(_local3, EditingSurface.EDITABLE_OBJECT); var _local5:UIComponent = new (_local2); PopUpManager.addPopUp(_local5, this); _local5.validateNow(); PopUpManager.removePopUp(_local5); DragManager.doDrag(this, _local4, _arg1, _local5, (-(this.mouseX) + (_local5.measuredWidth / 2)), (-(this.mouseY) + (_local5.measuredHeight / 2)), 1); } public function get data():Object{ return (this._data); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local10:Number; super.updateDisplayList(_arg1, _arg2); this.textField.setActualSize(_arg1, this.textField.measuredHeight); this.textField.x = ((_arg1 - this.textField.width) / 2); this.textField.y = (_arg2 - this.textField.height); var _local3:Number = (_arg2 - this.textField.height); var _local4:Number = (_arg1 - 10); var _local5:Number = (_local3 - 10); var _local6:Number = (this.thumb.measuredWidth / this.thumb.measuredHeight); var _local7:Number = (_local4 / _local5); var _local8:Number = this.thumb.measuredWidth; var _local9:Number = this.thumb.measuredHeight; if (_local6 < _local7){ _local8 = Math.floor((_local5 * _local6)); _local9 = _local5; } else { _local8 = _local4; _local9 = Math.floor((_local4 / _local6)); }; if ((this.thumb is IWiredLogicControl)){ _local10 = (_local9 / this.thumb.measuredHeight); this.thumb.setStyle("wireJackSize", (10 * _local10)); this.thumb.setStyle("powerSwitchStyleName", "thumbnailPowerSwitch"); }; this.thumb.setActualSize(_local8, _local9); this.thumb.x = ((_arg1 - this.thumb.width) / 2); this.thumb.y = ((_local3 - this.thumb.height) / 2); } override protected function createChildren():void{ super.createChildren(); if (!this.textField){ this.textField = new UITextField(); this.textField.styleName = this; this.addChild(this.textField); }; } private function set _3076010data(_arg1:Object):void{ this._data = _arg1; this.dataChanged = true; this.invalidateProperties(); this.invalidateSize(); this.invalidateDisplayList(); } override protected function measure():void{ super.measure(); this.measuredWidth = Math.max(this.textField.measuredWidth, this.thumb.measuredWidth); this.measuredHeight = (this.textField.measuredHeight + this.thumb.measuredWidth); } } }//package com.flextoolbox.logicly.view.renderers
Section 32
//AboutWindow (com.flextoolbox.logicly.view.AboutWindow) package com.flextoolbox.logicly.view { import flash.display.*; import flash.geom.*; import flash.media.*; import flash.text.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.styles.*; import mx.controls.*; import mx.binding.*; import mx.containers.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.net.*; import flash.accessibility.*; import flash.debugger.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.xml.*; public class AboutWindow extends TitleWindow { private var _documentDescriptor_:UIComponentDescriptor; public function AboutWindow(){ _documentDescriptor_ = new UIComponentDescriptor({type:TitleWindow, propertiesFactory:function ():Object{ return ({width:500, childDescriptors:[new UIComponentDescriptor({type:Text, events:{link:"___AboutWindow_Text1_link"}, propertiesFactory:function ():Object{ return ({percentWidth:100, htmlText:"<p><b>Logicly</b> simulates the boolean algebra performed by <font color=\"#0a66ba\"><a href=\"event:http://en.wikipedia.org/wiki/Logic_gate\">logic gates</a></font>, which are a vital part of digital circuitry and computer achitecture.</p>\n<p>Built by <font color=\"#0a66ba\"><a href=\"event:http://joshblog.net/\">Josh Tynjala</a></font> with <font color=\"#0a66ba\"><a href=\"event:http://www.adobe.com/products/flex/\">Adobe Flex</a></font>, this application showcases his <!--<font color=\"#03bd00\"><a href=\"\">-->upcoming open source wiring components<!--</a></font>-->.</p>\n<p>Questions or Comments? Send an email to <font color=\"#0a66ba\"><a href=\"event:mailto:josh@zeuslabs.us\">josh@zeuslabs.us</a></font>.</p>"}); }}), new UIComponentDescriptor({type:ControlBar, stylesFactory:function ():void{ this.horizontalAlign = "right"; }, propertiesFactory:function ():Object{ return ({percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:Button, events:{click:"___AboutWindow_Button1_click"}, propertiesFactory:function ():Object{ return ({label:"Close Window"}); }})]}); }})]}); }}); super(); mx_internal::_document = this; this.title = "About Logicly"; this.styleName = "popUpWindow"; this.layout = "vertical"; this.width = 500; this.minHeight = 100; } override public function initialize():void{ mx_internal::setDocumentDescriptor(_documentDescriptor_); super.initialize(); } private function linkClickHandler(_arg1:TextEvent):void{ navigateToURL(new URLRequest(_arg1.text), "_blank"); } protected function closeButtonClickHandler():void{ PopUpManager.removePopUp(this); } public function ___AboutWindow_Text1_link(_arg1:TextEvent):void{ linkClickHandler(_arg1); } public function ___AboutWindow_Button1_click(_arg1:MouseEvent):void{ closeButtonClickHandler(); } } }//package com.flextoolbox.logicly.view
Section 33
//CustomPreloader (com.flextoolbox.logicly.view.CustomPreloader) package com.flextoolbox.logicly.view { import flash.display.*; import flash.text.*; import flash.events.*; import mx.events.*; import mx.preloaders.*; import flash.utils.*; import flash.filters.*; public class CustomPreloader extends DownloadProgressBar { private var _progressBar:Shape; private var _logo:TextField; private var _logoTimer:Timer; private var _otherIsDone:Boolean;// = false public function CustomPreloader(){ this.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); this._progressBar = new Shape(); this.addChild(this._progressBar); this._logo = new TextField(); this._logo.autoSize = TextFieldAutoSize.LEFT; this._logo.defaultTextFormat = new TextFormat("Helvetica Neue,Helvetica,Arial", 36, 1712682, true); this._logo.text = "Logicly\n"; this._logo.defaultTextFormat = new TextFormat("Helvetica Neue,Helvetica,Arial", 16, 1712682, false); this._logo.appendText("A LOGIC GATE SIMULATOR"); this._logo.filters = [new DropShadowFilter(0, 0, 0, 0, 0, 0)]; this._logo.alpha = 0; this.addChild(this._logo); this._logoTimer = new Timer(10); this._logoTimer.addEventListener(TimerEvent.TIMER, timerUpdateHandler); this._logoTimer.start(); } private function initCompleteHandler(_arg1:FlexEvent):void{ this.preloadComplete(); } private function preloadComplete():void{ if (!this._otherIsDone){ this._otherIsDone = true; return; }; this._logoTimer.addEventListener(TimerEvent.TIMER, timerUpdateHandler2); this._logoTimer.start(); } override public function set preloader(_arg1:Sprite):void{ _arg1.addEventListener(ProgressEvent.PROGRESS, swfProgressHandler); _arg1.addEventListener(FlexEvent.INIT_COMPLETE, initCompleteHandler); } private function timerUpdateHandler2(_arg1:TimerEvent):void{ var _local2:Number = (this._logoTimer.currentCount * 10); var _local3:Number = Math.max(((150 - _local2) / 150), 0); this._logo.alpha = _local3; if (_local3 == 0){ this._logoTimer.stop(); this._logoTimer.removeEventListener(TimerEvent.TIMER, timerUpdateHandler2); this.stage.removeEventListener(Event.RESIZE, stageResizeHandler); this.dispatchEvent(new Event(Event.COMPLETE)); }; } private function swfProgressHandler(_arg1:ProgressEvent):void{ this.redraw(); } private function redraw():void{ this._logo.x = ((this.stage.stageWidth - this._logo.width) / 2); this._logo.y = ((this.stage.stageHeight - this._logo.height) / 2); var _local1:Number = ((this.stage.stageWidth * this.loaderInfo.bytesLoaded) / this.loaderInfo.bytesTotal); this._progressBar.graphics.clear(); this._progressBar.graphics.beginFill(1712682); this._progressBar.graphics.drawRect(0, (this.stage.stageHeight - 4), _local1, 4); this._progressBar.graphics.endFill(); } private function stageResizeHandler(_arg1:Event):void{ this.redraw(); } private function timerUpdateHandler(_arg1:TimerEvent):void{ var _local2:Number = (this._logoTimer.currentCount * 10); var _local3:Number = Math.min((_local2 / 150), 1); this._logo.alpha = _local3; if (_local3 == 1){ this._logoTimer.removeEventListener(TimerEvent.TIMER, timerUpdateHandler); this._logoTimer.stop(); this._logoTimer.reset(); setTimeout(preloadComplete, 450); }; } private function addedToStageHandler(_arg1:Event):void{ this.removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); this.stage.addEventListener(Event.RESIZE, stageResizeHandler, false, 0, true); } } }//package com.flextoolbox.logicly.view
Section 34
//EditingSurface (com.flextoolbox.logicly.view.EditingSurface) package com.flextoolbox.logicly.view { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.controls.*; import mx.containers.*; import com.flextoolbox.controls.*; import com.flextoolbox.controls.logic.*; import flash.ui.*; import com.yahoo.astra.utils.*; import flash.filters.*; public class EditingSurface extends Canvas { private var _gridSize:Number;// = 20 private var _selectedObject:UIComponent; protected var moveCursorID:int;// = -1 protected var wireSurface:WireSurface; protected var dragOffset:Point; public static const EDITABLE_OBJECT:String = "editableObject"; public function EditingSurface(){ this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); this.addEventListener(DragEvent.DRAG_ENTER, dragEnterHandler); this.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler2); this.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler2); } private function isOfTypeOrIsChildOfType(_arg1:DisplayObject, _arg2:Class):Boolean{ if ((_arg1 is _arg2)){ return (true); }; if (_arg1.parent == _arg1.stage){ return (false); }; if ((_arg1.parent is _arg2)){ return (true); }; return (this.isOfTypeOrIsChildOfType(_arg1.parent, _arg2)); } protected function dragDropHandler(_arg1:DragEvent):void{ var _local4:IWiredLogicControl; this.removeEventListener(DragEvent.DRAG_EXIT, dragExitHandler); this.removeEventListener(DragEvent.DRAG_DROP, dragDropHandler); var _local2:DragSource = _arg1.dragSource; var _local3:UIComponent = (_local2.dataForFormat(EDITABLE_OBJECT) as UIComponent); _local3.addEventListener(MouseEvent.MOUSE_DOWN, editableObjectMouseDownHandler); _local3.addEventListener(MouseEvent.MOUSE_OVER, editableObjectMouseMoveHandler); _local3.addEventListener(MouseEvent.MOUSE_MOVE, editableObjectMouseMoveHandler); _local3.addEventListener(MouseEvent.ROLL_OUT, editableObjectRollOutHandler); this.addChild(_local3); DragManagerImpl(DragManagerImpl.getInstance()).dragProxy.visible = false; _local3.visible = false; _local3.validateNow(); _local3.move((_arg1.localX - (_local3.measuredWidth / 2)), (_arg1.localY - (_local3.measuredHeight / 2))); _local3.x = (_local3.x + this.horizontalScrollPosition); _local3.y = (_local3.y + this.verticalScrollPosition); _local3.visible = true; this.selectedObject = _local3; if ((_local3 is IWiredLogicControl)){ _local4 = IWiredLogicControl(_local3); _local4.wireManager = this.wireSurface; }; this.dispatchEvent(new Event(Event.CHANGE)); } public function deleteObject(_arg1:DisplayObject):void{ if (!this.contains(_arg1)){ throw (new ArgumentError("Specified object is not in the editing surface!")); }; if ((_arg1 is IWiredLogicControl)){ IWiredLogicControl(_arg1).disconnect(); }; this.removeChild(_arg1); _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, editableObjectMouseDownHandler); _arg1.removeEventListener(MouseEvent.MOUSE_OVER, editableObjectMouseMoveHandler); _arg1.removeEventListener(MouseEvent.MOUSE_MOVE, editableObjectMouseMoveHandler); _arg1.removeEventListener(MouseEvent.ROLL_OUT, editableObjectRollOutHandler); if (_arg1 == this._selectedObject){ this.selectedObject = null; this.dispatchEvent(new Event(Event.CHANGE)); }; if (this.moveCursorID >= 0){ this.cursorManager.removeCursor(this.moveCursorID); this.moveCursorID = -1; }; } protected function editableObjectMouseDownHandler(_arg1:MouseEvent):void{ var _local2:UIComponent = (_arg1.target as UIComponent); if (((((!(_local2)) || (this.isOfTypeOrIsChildOfType(_local2, Button)))) || (this.isOfTypeOrIsChildOfType(_local2, WireJack)))){ this.selectedObject = null; return; }; this.selectedObject = UIComponent(_arg1.currentTarget); this.dispatchEvent(new Event(Event.CHANGE)); this.setChildIndex(this.selectedObject, (this.numChildren - 1)); this.dragOffset = new Point(this._selectedObject.mouseX, this._selectedObject.mouseY); this.stage.addEventListener(MouseEvent.MOUSE_MOVE, stageMouseMoveHandler, false, 0, true); this.stage.addEventListener(MouseEvent.MOUSE_UP, stageMouseUpHandler, false, 0, true); } override protected function createChildren():void{ super.createChildren(); if (!this.wireSurface){ this.wireSurface = new WireSurface(); this.rawChildren.addChild(this.wireSurface); }; } protected function editableObjectRollOutHandler(_arg1:MouseEvent):void{ if (this.moveCursorID >= 0){ this.cursorManager.removeCursor(this.moveCursorID); }; this.moveCursorID = -1; } protected function focusOutHandler2(_arg1:FocusEvent):void{ this.selectedObject = null; this.dispatchEvent(new Event(Event.CHANGE)); } protected function mouseDownHandler(_arg1:MouseEvent):void{ if (_arg1.target != this){ return; }; this.selectedObject = null; this.dispatchEvent(new Event(Event.CHANGE)); } protected function dragEnterHandler(_arg1:DragEvent):void{ var _local2:DragSource = _arg1.dragSource; if (_local2.hasFormat(EDITABLE_OBJECT)){ DragManager.acceptDragDrop(this); this.addEventListener(DragEvent.DRAG_EXIT, dragExitHandler); this.addEventListener(DragEvent.DRAG_DROP, dragDropHandler); }; } public function get gridSize():Number{ return (this._gridSize); } protected function keyDownHandler2(_arg1:KeyboardEvent):void{ if (!this._selectedObject){ return; }; var _local2:Number = 1; if (_arg1.shiftKey){ _local2 = 10; }; switch (_arg1.keyCode){ case Keyboard.BACKSPACE: case Keyboard.DELETE: this.deleteObject(this._selectedObject); break; case Keyboard.UP: this._selectedObject.y = (this._selectedObject.y - _local2); break; case Keyboard.RIGHT: this._selectedObject.x = (this._selectedObject.x + _local2); break; case Keyboard.DOWN: this._selectedObject.y = (this._selectedObject.y + _local2); break; case Keyboard.LEFT: this._selectedObject.x = (this._selectedObject.x - _local2); break; }; } protected function stageMouseUpHandler(_arg1:MouseEvent):void{ this.stage.removeEventListener(MouseEvent.MOUSE_UP, stageMouseUpHandler); this.stage.removeEventListener(MouseEvent.MOUSE_MOVE, stageMouseMoveHandler); } protected function deleteItemSelectHandler(_arg1:ContextMenuEvent):void{ var _local2:UIComponent = UIComponent(_arg1.contextMenuOwner); this.deleteObject(_local2); } protected function stageMouseMoveHandler(_arg1:MouseEvent):void{ var _local2:Number = ((this.horizontalScrollPosition + this.mouseX) - this.dragOffset.x); var _local3:Number = ((this.verticalScrollPosition + this.mouseY) - this.dragOffset.y); this._selectedObject.x = Math.max(0, _local2); this._selectedObject.y = Math.max(0, _local3); } public function set selectedObject(_arg1:UIComponent):void{ if (this._selectedObject){ this._selectedObject.filters = []; }; this._selectedObject = _arg1; if (this._selectedObject){ this._selectedObject.filters = [new DropShadowFilter(0, 45, this.getStyle("themeColor"), 1, 4, 4, 3)]; }; this.setFocus(); this.dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } protected function editableObjectMouseMoveHandler(_arg1:MouseEvent):void{ var _local3:Class; var _local2:UIComponent = (_arg1.target as UIComponent); if (((((!(_local2)) || (this.isOfTypeOrIsChildOfType(_local2, Button)))) || (this.isOfTypeOrIsChildOfType(_local2, WireJack)))){ if (this.moveCursorID >= 0){ this.cursorManager.removeCursor(this.moveCursorID); }; this.moveCursorID = -1; return; }; if (this.moveCursorID < 0){ _local3 = this.getStyle("moveCursorSkin"); this.moveCursorID = this.cursorManager.setCursor(_local3); }; } protected function dragExitHandler(_arg1:DragEvent):void{ this.removeEventListener(DragEvent.DRAG_EXIT, dragExitHandler); this.removeEventListener(DragEvent.DRAG_DROP, dragDropHandler); } public function get selectedObject():UIComponent{ return (this._selectedObject); } protected function disconnectWiresSelectHandler(_arg1:ContextMenuEvent):void{ var _local2:IWiredLogicControl = IWiredLogicControl(_arg1.mouseTarget); _local2.disconnect(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); this.rawChildren.setChildIndex(this.wireSurface, 0); this.graphics.clear(); this.graphics.lineStyle(1, 0xBBBBBB); var _local3:Number = this.gridSize; var _local4:Number = (NumberUtil.roundUpToNearest(this.horizontalScrollPosition, _local3) - this.horizontalScrollPosition); var _local5:Number = _local4; while (_local5 < _arg1) { this.graphics.moveTo(_local5, 0); this.graphics.lineTo(_local5, _arg2); _local5 = (_local5 + _local3); }; _local4 = (NumberUtil.roundUpToNearest(this.verticalScrollPosition, _local3) - this.verticalScrollPosition); _local5 = _local4; while (_local5 < _arg2) { this.graphics.moveTo(0, _local5); this.graphics.lineTo(_arg1, _local5); _local5 = (_local5 + _local3); }; } } }//package com.flextoolbox.logicly.view
Section 35
//HelpWindow (com.flextoolbox.logicly.view.HelpWindow) package com.flextoolbox.logicly.view { import flash.display.*; import flash.geom.*; import flash.media.*; import flash.text.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.styles.*; import mx.controls.*; import mx.binding.*; import mx.containers.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.net.*; import flash.accessibility.*; import flash.debugger.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.xml.*; public class HelpWindow extends TitleWindow { private var _documentDescriptor_:UIComponentDescriptor; public function HelpWindow(){ _documentDescriptor_ = new UIComponentDescriptor({type:TitleWindow, propertiesFactory:function ():Object{ return ({width:600, childDescriptors:[new UIComponentDescriptor({type:Text, propertiesFactory:function ():Object{ return ({percentWidth:100, text:"Need some help? The following topics should help get you started."}); }}), new UIComponentDescriptor({type:Accordion, propertiesFactory:function ():Object{ return ({percentWidth:100, height:325, childDescriptors:[new UIComponentDescriptor({type:VBox, propertiesFactory:function ():Object{ return ({styleName:"helpModule", label:"1. How to Create and Move Objects", percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:Text, propertiesFactory:function ():Object{ return ({percentWidth:100, htmlText:"<p>1. Using your mouse, click on an object (such as a Switch or a Light Bulb) from the panel on the left.</p>\n<p>2. While still holding the mouse button, drag the object onto the editing surface to the right.</p>\n<p>3. Drop the object somewhere on the editing surface by releasing your mouse button.</p>\n<p>4. To move the object to a new location, click and drag the object again. You may also use the arrow keys on your keyboard to move a selected object.</p>\n"}); }})]}); }}), new UIComponentDescriptor({type:VBox, propertiesFactory:function ():Object{ return ({styleName:"helpModule", label:"2. How to Create Wire Connections", percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:Text, propertiesFactory:function ():Object{ return ({percentWidth:100, htmlText:"<p>1. Using your mouse, click on one of an object's circular wire connectors.</p>\n<p>2. With the mouse button down, drag the newly created wire to another object's wire connector. You'll know that another wire connector is compatible because it will be highlighted.</p>\n<p>3. Release the mouse button while your mouse is over a compatible wire connector to create the connection.</p>\n"}); }})]}); }}), new UIComponentDescriptor({type:VBox, propertiesFactory:function ():Object{ return ({styleName:"helpModule", label:"3. How to Delete an Object", percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:Text, propertiesFactory:function ():Object{ return ({percentWidth:100, htmlText:"<p>1. Using your mouse, click on an object to select it. The object will be highlighted. If the object looks the same, make sure you did not click on a wire connector or on a part of the object that is interactive (such as the button on a switch).</p>\n<p>2. Press the <i>Backspace</i> or <i>Delete</i> key on your keyboard.</p>\n<p>3. The object will be permanently removed from the editing surface.</p>\n<p><b>Warning:</b> Deleting an object will also remove all wires connected to that object.</p>\n"}); }})]}); }}), new UIComponentDescriptor({type:VBox, propertiesFactory:function ():Object{ return ({styleName:"helpModule", label:"4. How to Remove a Wire Connection", percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:Text, propertiesFactory:function ():Object{ return ({percentWidth:100, htmlText:"<p>1. Move your mouse over a wire on the editing surface. The mouse cursor will display a scissors icon.</p>\n<p>2. Click on the wire to delete it.</p>\n<p><b>Note:</b> Any objects to which the wire were connected will not be removed. Only the wire itself is deleted.</p>\n"}); }})]}); }}), new UIComponentDescriptor({type:VBox, propertiesFactory:function ():Object{ return ({styleName:"helpModule", label:"5. How to Run the Simulation", percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:Text, propertiesFactory:function ():Object{ return ({percentWidth:100, htmlText:"<p>By default, the simulation is inactive. Switches will toggle power, but Clock controls will not update.</p>\n<p>1. To begin the simulation, click the \"Simulation is STOPPED\" button at the bottom right of the screen.</p>\n<p>2. The button's text will change to \"Simulation is ACTIVE\" and Clock controls will begin running with high and low power cycles.</p>\n"}); }})]}); }})]}); }}), new UIComponentDescriptor({type:ControlBar, stylesFactory:function ():void{ this.horizontalAlign = "right"; }, propertiesFactory:function ():Object{ return ({percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:Button, events:{click:"___HelpWindow_Button1_click"}, propertiesFactory:function ():Object{ return ({label:"Close Window"}); }})]}); }})]}); }}); super(); mx_internal::_document = this; this.layout = "vertical"; this.width = 600; this.title = "Instructions"; this.styleName = "popUpWindow"; } override public function initialize():void{ mx_internal::setDocumentDescriptor(_documentDescriptor_); super.initialize(); } public function ___HelpWindow_Button1_click(_arg1:MouseEvent):void{ closeButtonClickHandler(); } protected function closeButtonClickHandler():void{ PopUpManager.removePopUp(this); } } }//package com.flextoolbox.logicly.view
Section 36
//Toolbox (com.flextoolbox.logicly.view.Toolbox) package com.flextoolbox.logicly.view { import flash.display.*; import flash.geom.*; import flash.media.*; import flash.text.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import mx.binding.*; import mx.containers.*; import com.flextoolbox.controls.logic.*; import flash.utils.*; import flash.ui.*; import com.flextoolbox.logicly.view.renderers.*; import com.flextoolbox.containers.*; import flash.system.*; import flash.external.*; import flash.net.*; import flash.accessibility.*; import flash.debugger.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.xml.*; public class Toolbox extends VBox implements IBindingClient { protected var output:Array; protected var gates:Array; protected var input:Array; public var _Toolbox_CollapsiblePanel1:Array; public var _Toolbox_VBox1:VBox; mx_internal var _bindingsBeginWithWord:Object; mx_internal var _watchers:Array; mx_internal var _bindingsByDestination:Object; private var _675185318categoryRepeater:Repeater; mx_internal var _bindings:Array; private var _documentDescriptor_:UIComponentDescriptor; protected var _1296516636categories:Array; public var _Toolbox_TileList1:Array; private static var _watcherSetupUtil:IWatcherSetupUtil; public function Toolbox(){ _documentDescriptor_ = new UIComponentDescriptor({type:VBox, id:"_Toolbox_VBox1", propertiesFactory:function ():Object{ return ({width:145, childDescriptors:[new UIComponentDescriptor({type:Repeater, id:"categoryRepeater", propertiesFactory:function ():Object{ return ({childDescriptors:[new UIComponentDescriptor({type:CollapsiblePanel, id:"_Toolbox_CollapsiblePanel1", stylesFactory:function ():void{ this.horizontalAlign = "center"; }, propertiesFactory:function ():Object{ return ({styleName:"toolCategory", percentWidth:100, childDescriptors:[new UIComponentDescriptor({type:TileList, id:"_Toolbox_TileList1", propertiesFactory:function ():Object{ return ({columnWidth:60, rowHeight:70, verticalScrollPolicy:"off", columnCount:2, selectable:false, itemRenderer:_Toolbox_ClassFactory1_c()}); }})]}); }})]}); }})]}); }}); output = [{name:"Switch", type:PowerToggle}, {name:"Clock", type:Clock}]; input = [{name:"Light Bulb", type:PowerIndicator}]; gates = [{name:"AND Gate", type:ANDGate}, {name:"OR Gate", type:ORGate}, {name:"NOT Gate", type:NOTGate}, {name:"XOR Gate", type:XORGate}, {name:"NAND Gate", type:NANDGate}, {name:"NOR Gate", type:NORGate}, {name:"XNOR Gate", type:XNORGate}]; _1296516636categories = [{name:"Output Controls", content:output}, {name:"Input Controls", content:input}, {name:"Logic Gates", content:gates}]; _bindings = []; _watchers = []; _bindingsByDestination = {}; _bindingsBeginWithWord = {}; super(); mx_internal::_document = this; if (!this.styleDeclaration){ this.styleDeclaration = new CSSStyleDeclaration(); }; this.styleDeclaration.defaultFactory = function ():void{ this.verticalGap = 0; }; this.width = 145; this.minHeight = 100; } override public function initialize():void{ var target:Toolbox; var watcherSetupUtilClass:Object; mx_internal::setDocumentDescriptor(_documentDescriptor_); var bindings:Array = _Toolbox_bindingsSetup(); var watchers:Array = []; target = this; if (_watcherSetupUtil == null){ watcherSetupUtilClass = getDefinitionByName("_com_flextoolbox_logicly_view_ToolboxWatcherSetupUtil"); var _local2 = watcherSetupUtilClass; _local2["init"](null); }; _watcherSetupUtil.setup(this, function (_arg1:String){ return (target[_arg1]); }, bindings, watchers); var i:uint; while (i < bindings.length) { Binding(bindings[i]).execute(); i = (i + 1); }; mx_internal::_bindings = mx_internal::_bindings.concat(bindings); mx_internal::_watchers = mx_internal::_watchers.concat(watchers); super.initialize(); } protected function get categories():Array{ return (this._1296516636categories); } private function _Toolbox_ClassFactory1_c():ClassFactory{ var _local1:ClassFactory = new ClassFactory(); _local1.generator = ToolboxItemRenderer; return (_local1); } private function _Toolbox_bindingsSetup():Array{ var binding:Binding; var result:Array = []; binding = new Binding(this, function ():Object{ return (this.categories); }, function (_arg1:Object):void{ categoryRepeater.dataProvider = _arg1; }, "categoryRepeater.dataProvider"); result[0] = binding; binding = new RepeatableBinding(this, function (_arg1:Array, _arg2:Array):String{ var _local3:* = categoryRepeater.mx_internal::getItemAt(_arg2[0]).name; var _local4:* = ((_local3 == undefined)) ? null : String(_local3); return (_local4); }, function (_arg1:String, _arg2:Array):void{ _Toolbox_CollapsiblePanel1[_arg2[0]].title = _arg1; }, "_Toolbox_CollapsiblePanel1.title"); result[1] = binding; binding = new RepeatableBinding(this, function (_arg1:Array, _arg2:Array):int{ return (Math.ceil((categoryRepeater.mx_internal::getItemAt(_arg2[0]).content.length / 2))); }, function (_arg1:int, _arg2:Array):void{ _Toolbox_TileList1[_arg2[0]].rowCount = _arg1; }, "_Toolbox_TileList1.rowCount"); result[2] = binding; binding = new RepeatableBinding(this, function (_arg1:Array, _arg2:Array):Object{ return (categoryRepeater.mx_internal::getItemAt(_arg2[0]).content); }, function (_arg1:Object, _arg2:Array):void{ _Toolbox_TileList1[_arg2[0]].dataProvider = _arg1; }, "_Toolbox_TileList1.dataProvider"); result[3] = binding; return (result); } public function get categoryRepeater():Repeater{ return (this._675185318categoryRepeater); } private function _Toolbox_bindingExprs():void{ var _local1:*; _local1 = this.categories; _local1 = categoryRepeater.currentItem.name; _local1 = Math.ceil((categoryRepeater.currentItem.content.length / 2)); _local1 = categoryRepeater.currentItem.content; } public function set categoryRepeater(_arg1:Repeater):void{ var _local2:Object = this._675185318categoryRepeater; if (_local2 !== _arg1){ this._675185318categoryRepeater = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "categoryRepeater", _local2, _arg1)); }; } protected function set categories(_arg1:Array):void{ var _local2:Object = this._1296516636categories; if (_local2 !== _arg1){ this._1296516636categories = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "categories", _local2, _arg1)); }; } public static function set watcherSetupUtil(_arg1:IWatcherSetupUtil):void{ Toolbox._watcherSetupUtil = _arg1; } } }//package com.flextoolbox.logicly.view
Section 37
//IWireManager (com.flextoolbox.managers.IWireManager) package com.flextoolbox.managers { import mx.core.*; import flash.events.*; import com.flextoolbox.controls.*; public interface IWireManager extends IEventDispatcher { function set wireRenderer(_arg1:IFactory):void; function connect(_arg1:WireJack, _arg2:WireJack):Boolean; function registerJack(_arg1:WireJack):void; function endConnectionRequest(_arg1:WireJack):void; function get wireRenderer():IFactory; function deleteJack(_arg1:WireJack):void; function disconnect(_arg1:WireJack, _arg2:WireJack):void; function beginConnectionRequest(_arg1:WireJack):void; } }//package com.flextoolbox.managers
Section 38
//WireManager (com.flextoolbox.managers.WireManager) package com.flextoolbox.managers { import flash.display.*; import mx.core.*; import mx.managers.*; import flash.events.*; import com.flextoolbox.controls.*; import com.flextoolbox.events.*; import com.flextoolbox.controls.wireClasses.*; public class WireManager extends EventDispatcher implements IWireManager { private var _wireRenderer:IFactory; protected var wires:Array; protected var jacks:Array; protected var wireSurface:IUIComponent; protected var connecting:Boolean;// = false private static var _defaultWireManager:WireManager = new (WireManager); ; public function WireManager(_arg1:IUIComponent=null){ jacks = []; wires = []; _wireRenderer = new ClassFactory(DefaultWireRenderer); super(); if (!_arg1){ this.wireSurface = new UIComponent(); PopUpManager.addPopUp(this.wireSurface, DisplayObject(Application.application)); } else { this.wireSurface = _arg1; }; } public function get wireRenderer():IFactory{ return (this._wireRenderer); } public function set wireRenderer(_arg1:IFactory):void{ this._wireRenderer = _arg1; } public function registerJack(_arg1:WireJack):void{ this.jacks.push(_arg1); } public function disconnect(_arg1:WireJack, _arg2:WireJack):void{ var wire:IWireRenderer; var deleteConnection:WireManagerEvent; var index:int; var startJack = _arg1; var endJack = _arg2; if (this.connecting){ Application.application.callLater(disconnect, [startJack, endJack]); return; }; if (((((!(startJack)) || (!(endJack)))) || (!(startJack.isConnectedToJack(endJack))))){ throw (new ArgumentError("Specified jack is null or jacks are not connected. Cannot disconnect.")); }; if ((((this.jacks.indexOf(startJack) < 0)) || ((this.jacks.indexOf(endJack) < 0)))){ throw (new ArgumentError("One or more of the specified jacks are not registered with this wire manager.")); }; var connections:Array = this.wires.filter(function (_arg1:IWireRenderer, _arg2:int, _arg3:Array):Boolean{ return ((((((_arg1.jack1 == startJack)) || ((_arg1.jack1 == endJack)))) && ((((_arg1.jack2 == startJack)) || ((_arg1.jack2 == endJack)))))); }); for each (wire in connections) { index = this.wires.indexOf(wire); this.wires.splice(index, 1); DisplayObjectContainer(this.wireSurface).removeChild(DisplayObject(wire)); wire.jack1 = null; wire.jack2 = null; }; deleteConnection = new WireManagerEvent(WireManagerEvent.DELETE_CONNECTION, startJack, endJack); this.dispatchEvent(deleteConnection); } public function beginConnectionRequest(_arg1:WireJack):void{ var _local2:WireManagerEvent = new WireManagerEvent(WireManagerEvent.BEGIN_CONNECTION_REQUEST, _arg1); this.dispatchEvent(_local2); } public function connect(_arg1:WireJack, _arg2:WireJack):Boolean{ var _local3:WireManagerEvent; var _local4:Boolean; var _local5:IWireRenderer; var _local6:WireManagerEvent; if (((!(_arg1)) || (!(_arg2)))){ throw (new ArgumentError("Jack is null. Cannot make connection.")); }; if (_arg1 == _arg2){ throw (new ArgumentError("Cannot connect a jack to itself. No connection.")); }; if ((((this.jacks.indexOf(_arg1) < 0)) || ((this.jacks.indexOf(_arg2) < 0)))){ throw (new ArgumentError("One or more of the specified jacks are not registered with this wire manager.")); }; if (((_arg1.isCompatibleWithJack(_arg2)) && (_arg2.isCompatibleWithJack(_arg1)))){ _local3 = new WireManagerEvent(WireManagerEvent.CREATING_CONNECTION, _arg1, _arg2, true); _local4 = this.dispatchEvent(_local3); if (_local4){ _local5 = this.wireRenderer.newInstance(); _local5.wireManager = this; _local5.jack1 = _arg1; _local5.jack2 = _arg2; DisplayObjectContainer(this.wireSurface).addChild(DisplayObject(_local5)); this.wires.push(_local5); this.connecting = true; _local6 = new WireManagerEvent(WireManagerEvent.CREATE_CONNECTION, _arg1, _arg2); this.dispatchEvent(_local6); this.connecting = false; }; return (_local4); }; return (false); } public function endConnectionRequest(_arg1:WireJack):void{ var _local2:WireManagerEvent = new WireManagerEvent(WireManagerEvent.END_CONNNECTION_REQUEST, _arg1); this.dispatchEvent(_local2); } public function deleteJack(_arg1:WireJack):void{ var _local2:int = this.jacks.indexOf(_arg1); if (_local2 >= 0){ _arg1.disconnectAll(); this.jacks.splice(_local2, 1); }; } public static function get defaultWireManager():WireManager{ return (WireManager._defaultWireManager); } } }//package com.flextoolbox.managers
Section 39
//DisconnectCursor (com.flextoolbox.skins.cursor.DisconnectCursor) package com.flextoolbox.skins.cursor { import mx.core.*; public class DisconnectCursor extends SpriteAsset { } }//package com.flextoolbox.skins.cursor
Section 40
//WireJackSkin (com.flextoolbox.skins.halo.WireJackSkin) package com.flextoolbox.skins.halo { import flash.display.*; import mx.styles.*; import mx.utils.*; import mx.skins.*; import mx.skins.halo.*; public class WireJackSkin extends Border { private static var cache:Object = {}; override public function get measuredWidth():Number{ return (14); } override public function get measuredHeight():Number{ return (14); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local13:Array; var _local14:Array; var _local15:Array; var _local16:Array; var _local18:Array; var _local19:Array; super.updateDisplayList(_arg1, _arg2); var _local3:uint = getStyle("iconColor"); var _local4:uint = getStyle("borderColor"); var _local5:Array = getStyle("fillAlphas"); var _local6:Array = getStyle("fillColors"); StyleManager.getColorNames(_local6); var _local7:Array = getStyle("highlightAlphas"); var _local8:uint = getStyle("themeColor"); var _local9:Object = calcDerivedStyles(_local8, _local4, _local6[0], _local6[1]); var _local10:Number = ColorUtil.adjustBrightness2(_local4, -50); var _local11:Number = ColorUtil.adjustBrightness2(_local8, -25); var _local12:Number = (width / 2); var _local17:Graphics = graphics; _local17.clear(); switch (name){ case "disconnectedSkin": _local13 = [_local6[0], _local6[1]]; _local14 = [_local5[0], _local5[1]]; _local17.beginGradientFill(GradientType.LINEAR, [_local4, _local10], [100, 100], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, _local13, _local14, [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local12, tr:_local12, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(0, 0, (_arg1 - 2), ((_arg2 - 2) / 2))); break; case "highlightedSkin": _local17.beginGradientFill(GradientType.LINEAR, [_local8, _local11], [100, 100], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, [_local9.fillColorPress1, _local9.fillColorPress2], [100, 100], [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local12, tr:_local12, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(0, 0, (_arg1 - 2), ((_arg2 - 2) / 2))); break; case "overSkin": if (_local6.length > 2){ _local18 = [_local6[2], _local6[3]]; } else { _local18 = [_local6[0], _local6[1]]; }; if (_local5.length > 2){ _local19 = [_local5[2], _local5[3]]; } else { _local19 = [_local5[0], _local5[1]]; }; _local17.beginGradientFill(GradientType.LINEAR, [_local8, _local11], [100, 100], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, _local18, _local19, [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local12, tr:_local12, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(0, 0, (_arg1 - 2), ((_arg2 - 2) / 2))); break; case "disabledSkin": _local15 = [_local6[0], _local6[1]]; _local16 = [Math.max(0, (_local5[0] - 0.15)), Math.max(0, (_local5[1] - 0.15))]; _local17.beginGradientFill(GradientType.LINEAR, [_local4, _local10], [0.5, 0.5], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, _local15, _local16, [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); break; case "connectedSkin": _local13 = [_local6[0], _local6[1]]; _local14 = [_local5[0], _local5[1]]; _local17.beginGradientFill(GradientType.LINEAR, [_local4, _local10], [100, 100], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, _local13, _local14, [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local12, tr:_local12, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(0, 0, (_arg1 - 2), ((_arg2 - 2) / 2))); _local17.beginFill(_local3); _local17.drawCircle(_local12, _local12, 2); _local17.endFill(); break; case "connectedOverSkin": if (_local6.length > 2){ _local18 = [_local6[2], _local6[3]]; } else { _local18 = [_local6[0], _local6[1]]; }; if (_local5.length > 2){ _local19 = [_local5[2], _local5[3]]; } else { _local19 = [_local5[0], _local5[1]]; }; _local17.beginGradientFill(GradientType.LINEAR, [_local8, _local11], [100, 100], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, _local18, _local19, [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local12, tr:_local12, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(0, 0, (_arg1 - 2), ((_arg2 - 2) / 2))); _local17.beginFill(_local3); _local17.drawCircle(_local12, _local12, 2); _local17.endFill(); break; case "connectedHighlightedSkin": _local17.beginGradientFill(GradientType.LINEAR, [_local8, _local11], [100, 100], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, [_local9.fillColorPress1, _local9.fillColorPress2], [100, 100], [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local12, tr:_local12, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(0, 0, (_arg1 - 2), ((_arg2 - 2) / 2))); _local17.beginFill(_local3); _local17.drawCircle(_local12, _local12, 2); _local17.endFill(); break; case "connectedDisabledSkin": _local15 = [_local6[0], _local6[1]]; _local16 = [Math.max(0, (_local5[0] - 0.15)), Math.max(0, (_local5[1] - 0.15))]; _local17.beginGradientFill(GradientType.LINEAR, [_local4, _local10], [0.5, 0.5], [0, 0xFF], verticalGradientMatrix(0, 0, _arg1, _arg2)); _local17.drawCircle(_local12, _local12, _local12); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); _local17.beginGradientFill(GradientType.LINEAR, _local15, _local16, [0, 0xFF], verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); _local17.drawCircle(_local12, _local12, (_local12 - 1)); _local17.endFill(); _local3 = getStyle("disabledIconColor"); _local17.beginFill(_local3); _local17.drawCircle(_local12, _local12, 2); _local17.endFill(); break; }; } private static function calcDerivedStyles(_arg1:uint, _arg2:uint, _arg3:uint, _arg4:uint):Object{ var _local6:Object; var _local5:String = HaloColors.getCacheKey(_arg1, _arg2, _arg3, _arg4); if (!cache[_local5]){ _local6 = (cache[_local5] = {}); HaloColors.addHaloColors(_local6, _arg1, _arg3, _arg4); _local6.borderColorDrk1 = ColorUtil.adjustBrightness2(_arg2, -60); }; return (cache[_local5]); } } }//package com.flextoolbox.skins.halo
Section 41
//WireJackWireDragImage (com.flextoolbox.skins.halo.WireJackWireDragImage) package com.flextoolbox.skins.halo { import flash.display.*; import mx.core.*; import mx.managers.*; import flash.events.*; import com.flextoolbox.controls.*; import mx.managers.dragClasses.*; import com.flextoolbox.controls.wireClasses.*; public class WireJackWireDragImage extends UIComponent { protected var done:Boolean;// = false protected var fakeEndJack:WireJack; protected var wire:IWireRenderer; public function WireJackWireDragImage(){ this.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } private function addedToStageHandler(_arg1:Event):void{ this.removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); this.stage.addEventListener(MouseEvent.MOUSE_MOVE, stageMouseMoveHandler, false, 0, true); this.stage.addEventListener(MouseEvent.MOUSE_UP, stageMouseUpHandler, false, 0, true); } private function stageMouseUpHandler(_arg1:MouseEvent):void{ this.stage.removeEventListener(MouseEvent.MOUSE_MOVE, stageMouseMoveHandler); this.stage.removeEventListener(MouseEvent.MOUSE_UP, stageMouseUpHandler); this.done = true; this.invalidateDisplayList(); this.validateNow(); } override public function styleChanged(_arg1:String):void{ var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); if (((_local2) || ((_arg1 == "wireJackStyleName")))){ if (this.fakeEndJack){ this.fakeEndJack.styleName = this.getStyle("wireJackStyleName"); }; }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); if (this.done){ if (this.fakeEndJack){ PopUpManager.removePopUp(this.fakeEndJack); this.fakeEndJack = null; }; if (this.wire){ PopUpManager.removePopUp(this.wire); this.wire.jack1 = null; this.wire.jack2 = null; this.wire = null; }; } else { this.fakeEndJack.setActualSize(this.fakeEndJack.getExplicitOrMeasuredWidth(), this.fakeEndJack.getExplicitOrMeasuredHeight()); this.fakeEndJack.move((this.parentApplication.mouseX - (this.fakeEndJack.width / 2)), (this.parentApplication.mouseY - (this.fakeEndJack.height / 2))); }; } private function stageMouseMoveHandler(_arg1:MouseEvent):void{ this.invalidateDisplayList(); this.validateNow(); } override protected function createChildren():void{ var _local1:DragProxy; var _local2:WireJack; var _local3:IFactory; super.createChildren(); if (!this.fakeEndJack){ this.fakeEndJack = new WireJack(); this.fakeEndJack.visible = false; this.fakeEndJack.mouseEnabled = (this.fakeEndJack.mouseChildren = false); PopUpManager.addPopUp(this.fakeEndJack, DisplayObject(this.parentApplication)); this.fakeEndJack.move(this.parentApplication.mouseX, this.parentApplication.mouseY); }; if (!this.wire){ _local1 = DragProxy(this.parent); _local2 = WireJack(_local1.dragInitiator); _local3 = _local2.wireManager.wireRenderer; this.wire = _local3.newInstance(); InteractiveObject(this.wire).mouseEnabled = (DisplayObjectContainer(this.wire).mouseChildren = false); PopUpManager.addPopUp(this.wire, DisplayObject(this.parentApplication)); this.wire.jack1 = _local2; this.wire.jack2 = fakeEndJack; }; } } }//package com.flextoolbox.skins.halo
Section 42
//ANDGateSkin (com.flextoolbox.skins.ANDGateSkin) package com.flextoolbox.skins { import flash.display.*; import mx.skins.*; import com.joshtynjala.utils.*; public class ANDGateSkin extends ProgrammaticSkin { override public function get measuredWidth():Number{ return (60); } override public function get measuredHeight():Number{ return (32); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("borderColor"); var _local4:Number = this.getStyle("borderThickness"); var _local5:uint = this.getStyle("fillColor"); var _local6:Number = (_arg2 / 2); var _local7:Number = (_local6 / 2); var _local8:Number = (3 * _local7); var _local9:Number = (_arg1 / 2); var _local10:Number = (_local9 / 2); var _local11:Number = (3 * _local10); var _local12:Number = (_local10 / 2); var _local13:Number = (5 * _local12); var _local14:Number = (_local12 / 2); var _local15:Number = (3 * _local14); var _local16:Number = (5 * _local14); var _local17:Number = (13 * _local14); this.graphics.clear(); this.graphics.lineStyle(_local4, _local3, 1, true, LineScaleMode.NORMAL, CapsStyle.SQUARE); this.graphics.moveTo(0, _local7); this.graphics.lineTo(_local10, _local7); this.graphics.moveTo(0, _local8); this.graphics.lineTo(_local10, _local8); this.graphics.lineStyle(_local4, _local3, 1, false, LineScaleMode.NORMAL, CapsStyle.SQUARE); this.graphics.beginFill(_local5); GraphicsUtil.drawArc(this.graphics, _local9, _local6, 270, 180, _local16, _local6); this.graphics.lineTo(_local10, 0); this.graphics.lineTo(_local10, _arg2); this.graphics.lineTo(_local9, _arg2); this.graphics.endFill(); this.graphics.lineStyle(_local4, _local3, 1, true, LineScaleMode.NORMAL, CapsStyle.SQUARE); this.graphics.moveTo(_local17, _local6); this.graphics.lineTo(_arg1, _local6); } } }//package com.flextoolbox.skins
Section 43
//ClockSkin (com.flextoolbox.skins.ClockSkin) package com.flextoolbox.skins { import mx.skins.*; public class ClockSkin extends ProgrammaticSkin { override public function get measuredWidth():Number{ return (45); } override public function get measuredHeight():Number{ return (35); } override public function set name(_arg1:String):void{ if (super.name == _arg1){ return; }; super.name = _arg1; this.invalidateDisplayList(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("fillColor"); var _local4:uint = this.getStyle("borderColor"); var _local5:Number = this.getStyle("borderThickness"); var _local6:Number = this.getStyle("detailThickness"); var _local7:uint = this.getStyle("themeColor"); var _local8 = (this.name.indexOf("on") >= 0); this.graphics.clear(); this.graphics.lineStyle(_local5, _local4); this.graphics.beginFill(_local3); this.graphics.drawRect(0, 0, _arg1, _arg2); this.graphics.endFill(); var _local9:uint = (_local8) ? _local7 : _local4; _local6 = (_local8) ? _local5 : _local6; this.graphics.lineStyle(_local6, _local9); var _local10:Number = (_arg1 / 4); var _local11:Number = (_local10 * 3); var _local12:Number = (_local10 * 2); var _local13:Number = (_arg1 / 3); var _local14:Number = (2 * _local13); var _local15:Number = (_arg2 / 2); var _local16:Number = (_arg2 / 3); var _local17:Number = (2 * _local16); this.graphics.moveTo(_local10, _local15); this.graphics.lineTo(_local10, _local16); this.graphics.lineTo(_local12, _local16); this.graphics.lineTo(_local12, _local17); this.graphics.lineTo(_local11, _local17); this.graphics.lineTo(_local11, _local15); } } }//package com.flextoolbox.skins
Section 44
//LightBulbSkin (com.flextoolbox.skins.LightBulbSkin) package com.flextoolbox.skins { import flash.display.*; import flash.geom.*; import mx.skins.*; import com.joshtynjala.utils.*; public class LightBulbSkin extends ProgrammaticSkin { override public function get measuredWidth():Number{ return (35); } override public function get measuredHeight():Number{ return (52); } override public function set name(_arg1:String):void{ if (super.name == _arg1){ return; }; super.name = _arg1; this.invalidateDisplayList(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = (_arg1 / 2); var _local4:Number = (_arg2 / 2); var _local5:Number = (_local3 / 2); var _local6:Number = (_local5 * 3); var _local7:Number = (_arg1 / 3); var _local8:Number = (_arg2 / 3); var _local9:Number = ((3 * _arg2) / 4); var _local10:Number = (_arg2 / 8); var _local11:Number = ((7 * _arg2) / 8); var _local12:uint = this.getStyle("fillColor"); var _local13:uint = this.getStyle("borderColor"); var _local14:Number = this.getStyle("borderThickness"); var _local15:Number = this.getStyle("detailThickness"); var _local16:uint = this.getStyle("themeColor"); var _local17 = (this.name.indexOf("on") >= 0); var _local18:uint = (_local17) ? _local16 : _local12; this.graphics.clear(); this.graphics.lineStyle(_local14, _local13); this.graphics.moveTo(_local3, _local8); var _local19:Matrix = new Matrix(); _local19.createGradientBox(_arg1, (_local8 * 2)); this.graphics.beginGradientFill(GradientType.RADIAL, [0xFFFFFF, _local18], [1, 1], [0, 0xFF], _local19); var _local20:Point = GraphicsUtil.drawArc(this.graphics, _local3, _local8, 300, 300, _local3, _local8); this.graphics.lineTo(_local20.x, _local9); this.graphics.lineTo((_arg1 - _local20.x), _local9); this.graphics.lineTo((_arg1 - _local20.x), _local20.y); this.graphics.endFill(); this.graphics.beginFill(_local13); this.graphics.drawRect(_local20.x, _local9, (_arg1 - (2 * _local20.x)), _local10); _local20 = GraphicsUtil.drawArc(this.graphics, _local3, _local11, 180, 180, ((_arg1 - (2 * _local20.x)) / 2), _local10); this.graphics.lineTo((_arg1 - _local20.x), _local20.y); this.graphics.endFill(); var _local21:Number = (_local3 + ((_local20.x - _local3) / 4)); var _local22:Number = (_local3 - ((_local20.x - _local3) / 4)); this.graphics.lineStyle(_local15, _local13); this.graphics.moveTo(_local21, _local9); this.graphics.lineTo(_local6, _local8); this.graphics.moveTo(_local22, _local9); this.graphics.lineTo(_local5, _local8); var _local23:uint = (_local17) ? 0xFFFFFF : _local13; var _local24:Number = (_local17) ? 2 : 1; this.graphics.lineStyle(_local24, _local23); var _local25:Number = (_local6 - _local5); this.graphics.curveTo((_local5 + (_local25 / 4)), _local4, (_local5 + (_local25 / 3)), _local8); this.graphics.curveTo((_local5 + (_local25 / 2)), _local4, (_local5 + ((2 * _local25) / 3)), _local8); this.graphics.curveTo((_local5 + ((3 * _local25) / 4)), _local4, _local6, _local8); } } }//package com.flextoolbox.skins
Section 45
//LightSwitchCoverPlateSkin (com.flextoolbox.skins.LightSwitchCoverPlateSkin) package com.flextoolbox.skins { import mx.skins.*; import com.flextoolbox.utils.*; public class LightSwitchCoverPlateSkin extends Border { override public function get measuredWidth():Number{ return (42); } override public function get measuredHeight():Number{ return (52); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("borderColor"); var _local4:Number = this.getStyle("borderThickness"); var _local5:uint = this.getStyle("fillColor"); this.graphics.clear(); this.graphics.beginFill(_local5); this.graphics.drawRect(0, 0, _arg1, _arg2); this.graphics.endFill(); FlexGraphicsUtil.drawBorder(this.graphics, 0, 0, _arg1, _arg2, _local3, _local3, _local4, 1); } } }//package com.flextoolbox.skins
Section 46
//LightSwitchSkin (com.flextoolbox.skins.LightSwitchSkin) package com.flextoolbox.skins { import mx.utils.*; import mx.skins.*; public class LightSwitchSkin extends ProgrammaticSkin { override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3 = (this.name.toLowerCase().indexOf("selected") >= 0); var _local4:uint = this.getStyle("borderColor"); var _local5:Number = this.getStyle("borderThickness"); var _local6:uint = this.getStyle("fillColor"); var _local7:uint = ColorUtil.adjustBrightness(_local6, -15); var _local8:uint = this.getStyle("themeColor"); var _local9:uint = (_local3) ? _local8 : _local6; this.graphics.clear(); this.graphics.lineStyle(_local5, _local4, 1, true); this.graphics.beginFill(_local9); this.graphics.drawRect(0, 0, _arg1, _arg2); this.graphics.endFill(); var _local10:Number = (3 * _local5); var _local11:Number = (_arg1 - (2 * _local10)); var _local12:Number = (_arg2 - (2 * _local10)); var _local13:Number = (_local12 / 10); if (_local3){ this.graphics.beginFill(_local6); this.graphics.drawRect(_local10, _local10, _local11, (_local12 / 2)); this.graphics.endFill(); this.graphics.beginFill(_local6); this.graphics.moveTo(_local10, (_local10 + (_local12 / 2))); this.graphics.lineTo((_local10 + _local11), (_local10 + (_local12 / 2))); this.graphics.lineTo((_arg1 - (_local10 / 2)), ((_local10 + _local12) - _local13)); this.graphics.lineTo((_local10 / 2), ((_local10 + _local12) - _local13)); this.graphics.lineTo(_local10, (_local10 + (_local12 / 2))); this.graphics.endFill(); this.graphics.beginFill(_local7); this.graphics.moveTo((_local10 / 2), ((_local10 + _local12) - _local13)); this.graphics.lineTo((_arg1 - (_local10 / 2)), ((_local10 + _local12) - _local13)); this.graphics.lineTo((_local10 + _local11), (_local10 + _local12)); this.graphics.lineTo(_local10, (_local10 + _local12)); this.graphics.lineTo((_local10 / 2), ((_local10 + _local12) - _local13)); this.graphics.endFill(); } else { this.graphics.beginFill(_local6); this.graphics.moveTo(_local10, _local10); this.graphics.lineTo((_local10 + _local11), _local10); this.graphics.lineTo((_arg1 - (_local10 / 2)), (_local10 + _local13)); this.graphics.lineTo((_local10 / 2), (_local10 + _local13)); this.graphics.lineTo(_local10, _local10); this.graphics.endFill(); this.graphics.beginFill(_local7); this.graphics.moveTo((_local10 / 2), (_local10 + _local13)); this.graphics.lineTo((_arg1 - (_local10 / 2)), (_local10 + _local13)); this.graphics.lineTo((_local10 + _local11), (_local10 + (_local12 / 2))); this.graphics.lineTo(_local10, (_local10 + (_local12 / 2))); this.graphics.lineTo((_local10 / 2), (_local10 + _local13)); this.graphics.endFill(); this.graphics.beginFill(_local6); this.graphics.drawRect(_local10, (_local10 + (_local12 / 2)), _local11, (_local12 / 2)); this.graphics.endFill(); }; this.graphics.endFill(); } } }//package com.flextoolbox.skins
Section 47
//NANDGateSkin (com.flextoolbox.skins.NANDGateSkin) package com.flextoolbox.skins { public class NANDGateSkin extends ANDGateSkin { override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = (_arg1 / 16); var _local4:Number = (_local3 * 13); var _local5:Number = (_arg2 / 2); var _local6:uint = this.getStyle("fillColor"); var _local7:uint = this.getStyle("borderColor"); var _local8:Number = this.getStyle("borderThickness"); var _local9:Number = (_local3 / 1.5); this.graphics.lineStyle(_local8, _local7); this.graphics.beginFill(_local6); this.graphics.drawCircle((_local4 + _local9), _local5, _local9); this.graphics.endFill(); } } }//package com.flextoolbox.skins
Section 48
//NORGateSkin (com.flextoolbox.skins.NORGateSkin) package com.flextoolbox.skins { public class NORGateSkin extends ORGateSkin { override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = (_arg1 / 16); var _local4:Number = (_local3 * 13); var _local5:Number = (_arg2 / 2); var _local6:uint = this.getStyle("fillColor"); var _local7:uint = this.getStyle("borderColor"); var _local8:Number = this.getStyle("borderThickness"); var _local9:Number = (_local3 / 1.5); this.graphics.lineStyle(_local8, _local7); this.graphics.beginFill(_local6); this.graphics.drawCircle((_local4 + _local9), _local5, _local9); this.graphics.endFill(); } } }//package com.flextoolbox.skins
Section 49
//NOTGateSkin (com.flextoolbox.skins.NOTGateSkin) package com.flextoolbox.skins { import flash.display.*; import mx.skins.*; public class NOTGateSkin extends ProgrammaticSkin { override public function get measuredWidth():Number{ return (60); } override public function get measuredHeight():Number{ return (32); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("borderColor"); var _local4:Number = this.getStyle("borderThickness"); var _local5:uint = this.getStyle("fillColor"); var _local6:Number = (height / 2); var _local7:Number = (_local6 / 2); var _local8:Number = (3 * _local7); var _local9:Number = (width / 2); var _local10:Number = (_local9 / 2); var _local11:Number = (3 * _local10); var _local12:Number = (_local10 / 2); var _local13:Number = (5 * _local12); var _local14:Number = (_local12 / 2); var _local15:Number = (3 * _local14); var _local16:Number = (5 * _local14); var _local17:Number = (13 * _local14); this.graphics.clear(); this.graphics.lineStyle(_local4, _local3, 1, false, LineScaleMode.NORMAL, CapsStyle.SQUARE); this.graphics.moveTo(0, _local6); this.graphics.lineTo(_local10, _local6); this.graphics.lineStyle(_local4, _local3, 1, true); this.graphics.beginFill(_local5); this.graphics.moveTo(_local10, 0); this.graphics.lineTo(_local10, _arg2); this.graphics.lineTo(_local17, _local6); this.graphics.lineTo(_local10, 0); this.graphics.endFill(); this.graphics.lineStyle(_local4, _local3, 1, false, LineScaleMode.NORMAL, CapsStyle.SQUARE); this.graphics.moveTo(_local17, _local6); this.graphics.lineTo(_arg1, _local6); var _local18:Number = (_local14 / 1.5); this.graphics.beginFill(_local5); this.graphics.drawCircle((_local17 + _local18), _local6, _local18); this.graphics.endFill(); } } }//package com.flextoolbox.skins
Section 50
//ORGateSkin (com.flextoolbox.skins.ORGateSkin) package com.flextoolbox.skins { import flash.display.*; import mx.styles.*; import mx.skins.*; public class ORGateSkin extends ProgrammaticSkin { override public function get measuredWidth():Number{ return (60); } override public function get measuredHeight():Number{ return (32); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:uint = this.getStyle("borderColor"); var _local4:Number = this.getStyle("borderThickness"); var _local5:uint = this.getStyle("fillColor"); var _local6:Number = (height / 2); var _local7:Number = (_local6 / 2); var _local8:Number = (3 * _local7); var _local9:Number = (width / 2); var _local10:Number = (_local9 / 2); var _local11:Number = (3 * _local10); var _local12:Number = (_local10 / 2); var _local13:Number = (5 * _local12); var _local14:Number = (_local12 / 2); var _local15:Number = (3 * _local14); var _local16:Number = (5 * _local14); var _local17:Number = (13 * _local14); this.graphics.clear(); this.graphics.lineStyle(_local4, _local3, 1, true, LineScaleMode.NORMAL, CapsStyle.SQUARE); this.graphics.moveTo(0, _local7); this.graphics.lineTo(_local10, _local7); this.graphics.moveTo(0, _local8); this.graphics.lineTo(_local10, _local8); this.graphics.beginFill(_local5); this.graphics.moveTo(_local15, 0); this.graphics.curveTo(_local16, _local6, _local15, height); this.graphics.lineTo(_local16, height); this.graphics.curveTo(_local13, height, _local17, _local6); this.graphics.curveTo(_local13, 0, _local16, 0); this.graphics.lineTo(_local15, 0); this.graphics.endFill(); this.graphics.moveTo(_local17, _local6); this.graphics.lineTo(width, _local6); } private static function initializeStyles():void{ var styles:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ORGateSkin"); if (!styles){ styles = new CSSStyleDeclaration(); }; styles.defaultFactory = function ():void{ this.fillColor = 0xFFFFFF; }; StyleManager.setStyleDeclaration("ORGateSkin", styles, false); } initializeStyles(); } }//package com.flextoolbox.skins
Section 51
//XNORGateSkin (com.flextoolbox.skins.XNORGateSkin) package com.flextoolbox.skins { public class XNORGateSkin extends XORGateSkin { override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = (_arg1 / 16); var _local4:Number = (_local3 * 13); var _local5:Number = (_arg2 / 2); var _local6:uint = this.getStyle("fillColor"); var _local7:uint = this.getStyle("borderColor"); var _local8:Number = this.getStyle("borderThickness"); var _local9:Number = (_local3 / 1.5); this.graphics.lineStyle(_local8, _local7); this.graphics.beginFill(_local6); this.graphics.drawCircle((_local4 + _local9), _local5, _local9); this.graphics.endFill(); } } }//package com.flextoolbox.skins
Section 52
//XORGateSkin (com.flextoolbox.skins.XORGateSkin) package com.flextoolbox.skins { public class XORGateSkin extends ORGateSkin { override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = (_arg1 / 16); var _local4:Number = (_local3 * 3); var _local5:Number = (_local3 * 5); var _local6:Number = (_local3 * 13); var _local7:Number = (_arg2 / 2); var _local8:uint = this.getStyle("borderColor"); var _local9:Number = this.getStyle("borderThickness"); var _local10:Number = (2.5 * _local9); this.graphics.lineStyle(_local9, _local8); this.graphics.moveTo((_local4 - _local10), 0); this.graphics.curveTo((_local5 - _local10), _local7, (_local4 - _local10), _arg2); } } }//package com.flextoolbox.skins
Section 53
//FlexGraphicsUtil (com.flextoolbox.utils.FlexGraphicsUtil) package com.flextoolbox.utils { import flash.display.*; public class FlexGraphicsUtil { public static function drawBorder(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number):void{ drawFill(_arg1, _arg2, _arg3, _arg8, _arg5, _arg6, _arg9); drawFill(_arg1, _arg2, _arg3, _arg4, _arg8, _arg6, _arg9); drawFill(_arg1, (_arg2 + (_arg4 - _arg8)), _arg3, _arg8, _arg5, _arg7, _arg9); drawFill(_arg1, _arg2, (_arg3 + (_arg5 - _arg8)), _arg4, _arg8, _arg7, _arg9); } public static function drawUpArrow(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):void{ _arg1.moveTo(_arg2, (_arg3 + _arg5)); _arg1.beginFill(_arg6, _arg7); _arg1.lineTo((_arg2 + (_arg4 / 2)), _arg3); _arg1.lineTo((_arg2 + _arg4), (_arg3 + _arg5)); _arg1.lineTo(_arg2, (_arg3 + _arg5)); _arg1.endFill(); } public static function drawDownArrow(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):void{ _arg1.moveTo(_arg2, _arg3); _arg1.beginFill(_arg6, _arg7); _arg1.lineTo((_arg2 + _arg4), _arg3); _arg1.lineTo((_arg2 + (_arg4 / 2)), (_arg5 + _arg3)); _arg1.lineTo(_arg2, _arg3); _arg1.endFill(); } public static function drawFill(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):void{ _arg1.moveTo(_arg2, _arg3); _arg1.beginFill(_arg6, _arg7); _arg1.drawRect(_arg2, _arg3, _arg4, _arg5); _arg1.endFill(); } } }//package com.flextoolbox.utils
Section 54
//BezierUtil (com.joshtynjala.utils.BezierUtil) package com.joshtynjala.utils { import flash.display.*; import flash.geom.*; public class BezierUtil { private static function getBezierPoint(_arg1:Array, _arg2:int, _arg3:Array):Point{ var _local8:Number; var _local9:Point; var _local4:Number = _arg1[_arg2]; var _local5:Point = new Point(); var _local6:int = _arg3.length; var _local7:int; while (_local7 < _local6) { _local8 = ((MathUtil.binomialCoefficient((_local6 - 1), _local7) * Math.pow((1 - _local4), ((_local6 - 1) - _local7))) * Math.pow(_local4, _local7)); _local9 = Point(_arg3[_local7]); _local5 = _local5.add(PointUtil.scalarMultiply(_local9, _local8)); _local7++; }; return (_local5); } public static function drawBezierCurve(_arg1:Graphics, _arg2:Point, _arg3:Point, _arg4:Array, _arg5:int):void{ var _local10:Point; var _local6:Array = _arg4.concat(); _local6.unshift(_arg2); _local6.push(_arg3); var _local7:Array = createKnotVector(_arg5); var _local8:int = _local7.length; var _local9:int; while (_local9 < _local8) { _local10 = getBezierPoint(_local7, _local9, _local6); if (_local9 == 0){ _arg1.moveTo(_local10.x, _local10.y); } else { _arg1.lineTo(_local10.x, _local10.y); }; _local9++; }; } private static function createKnotVector(_arg1:int):Array{ var _local2:Array = []; var _local3:int; while (_local3 <= _arg1) { _local2.push(Math.pow((_local3 / _arg1), 1.01)); _local3++; }; return (_local2); } } }//package com.joshtynjala.utils
Section 55
//GraphicsUtil (com.joshtynjala.utils.GraphicsUtil) package com.joshtynjala.utils { import flash.display.*; import flash.geom.*; import com.yahoo.astra.utils.*; public class GraphicsUtil { public static function drawWedge(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number=NaN):void{ var _local12:Number; var _local13:Number; var _local14:int; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; _arg1.moveTo(_arg2, _arg3); if (isNaN(_arg7)){ _arg7 = _arg6; }; if (Math.abs(_arg5) > 360){ _arg5 = 360; }; var _local8:int = Math.ceil((Math.abs(_arg5) / 45)); var _local9:Number = (_arg5 / _local8); var _local10:Number = (-((_local9 / 180)) * Math.PI); var _local11:Number = (-((_arg4 / 180)) * Math.PI); if (_local8 > 0){ _local12 = (_arg2 + (Math.cos(((_arg4 / 180) * Math.PI)) * _arg6)); _local13 = (_arg3 + (Math.sin(((-(_arg4) / 180) * Math.PI)) * _arg7)); _arg1.lineTo(_local12, _local13); _local14 = 0; while (_local14 < _local8) { _local11 = (_local11 + _local10); _local15 = (_local11 - (_local10 / 2)); _local16 = (_arg2 + (Math.cos(_local11) * _arg6)); _local17 = (_arg3 + (Math.sin(_local11) * _arg7)); _local18 = (_arg2 + (Math.cos(_local15) * (_arg6 / Math.cos((_local10 / 2))))); _local19 = (_arg3 + (Math.sin(_local15) * (_arg7 / Math.cos((_local10 / 2))))); _arg1.curveTo(_local18, _local19, _local16, _local17); _local14++; }; _arg1.lineTo(_arg2, _arg3); }; } public static function drawGear(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:int, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:int=0, _arg9:Number=NaN):void{ var _local16:Number; var _local17:Number; if (_arg4 <= 2){ throw (new ArgumentError("Cannot draw a gear with fewer than three teeth.")); }; var _local10:Number = ((Math.PI * 2) / _arg4); var _local11:Number = (_local10 / 4); var _local12:Number = ((_arg7 / 180) * Math.PI); var _local13:Number = (_arg2 + (Math.cos(_local12) * _arg6)); var _local14:Number = (_arg3 - (Math.sin(_local12) * _arg6)); _arg1.moveTo(_local13, _local14); var _local15 = 1; while (_local15 <= _arg4) { _local16 = (_arg2 + (Math.cos(((_local12 + (_local10 * _local15)) - (_local11 * 3))) * _arg5)); _local17 = (_arg3 - (Math.sin(((_local12 + (_local10 * _local15)) - (_local11 * 3))) * _arg5)); _arg1.lineTo(_local16, _local17); _local16 = (_arg2 + (Math.cos(((_local12 + (_local10 * _local15)) - (_local11 * 2))) * _arg5)); _local17 = (_arg3 - (Math.sin(((_local12 + (_local10 * _local15)) - (_local11 * 2))) * _arg5)); _arg1.lineTo(_local16, _local17); _local16 = (_arg2 + (Math.cos(((_local12 + (_local10 * _local15)) - _local11)) * _arg6)); _local17 = (_arg3 - (Math.sin(((_local12 + (_local10 * _local15)) - _local11)) * _arg6)); _arg1.lineTo(_local16, _local17); _local16 = (_arg2 + (Math.cos((_local12 + (_local10 * _local15))) * _arg6)); _local17 = (_arg3 - (Math.sin((_local12 + (_local10 * _local15))) * _arg6)); _arg1.lineTo(_local16, _local17); _local15++; }; if (_arg8 > 2){ if (isNaN(_arg9)){ _arg9 = (_arg5 / 3); }; drawPolygon(_arg1, _arg2, _arg3, _arg8, _arg9, _arg7); }; } public static function drawStar(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:int, _arg5:Number, _arg6:Number, _arg7:Number=0):void{ var _local15:Number; var _local16:Number; var _local8:int = Math.abs(_arg4); if (_local8 <= 2){ throw (new ArgumentError("Cannot draw a star with fewer than three points.")); }; var _local9:Number = ((Math.PI * 2) / _arg4); var _local10:Number = (_local9 / 2); var _local11:Number = ((_arg7 / 180) * Math.PI); var _local12:Number = (_arg2 + (Math.cos(_local11) * _arg6)); var _local13:Number = (_arg3 - (Math.sin(_local11) * _arg6)); _arg1.moveTo(_local12, _local13); var _local14 = 1; while (_local14 <= _local8) { _local15 = (_arg2 + (Math.cos(((_local11 + (_local9 * _local14)) - _local10)) * _arg5)); _local16 = (_arg3 - (Math.sin(((_local11 + (_local9 * _local14)) - _local10)) * _arg5)); _arg1.lineTo(_local15, _local16); _local15 = (_arg2 + (Math.cos((_local11 + (_local9 * _local14))) * _arg6)); _local16 = (_arg3 - (Math.sin((_local11 + (_local9 * _local14))) * _arg6)); _arg1.lineTo(_local15, _local16); _local14++; }; } public static function drawDashedLine(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number=10, _arg7:Number=10):void{ var _local8:Number = (_arg6 + _arg7); var _local9:Number = (_arg4 - _arg2); var _local10:Number = (_arg5 - _arg3); var _local11:Number = Math.sqrt((Math.pow(_local9, 2) + Math.pow(_local10, 2))); var _local12:int = Math.floor(Math.abs((_local11 / _local8))); var _local13:Number = Math.atan2(_local10, _local9); var _local14:Number = _arg2; var _local15:Number = _arg3; _local9 = (Math.cos(_local13) * _local8); _local10 = (Math.sin(_local13) * _local8); var _local16:int; while (_local16 < _local12) { _arg1.moveTo(_local14, _local15); _arg1.lineTo((_local14 + (Math.cos(_local13) * _arg6)), (_local15 + (Math.sin(_local13) * _arg6))); _local14 = (_local14 + _local9); _local15 = (_local15 + _local10); _local16++; }; _arg1.moveTo(_local14, _local15); _local11 = Math.sqrt((((_arg4 - _local14) * (_arg4 - _local14)) + ((_arg5 - _local15) * (_arg5 - _local15)))); if (_local11 > _arg6){ _arg1.lineTo((_local14 + (Math.cos(_local13) * _arg6)), (_local15 + (Math.sin(_local13) * _arg6))); } else { if (_local11 > 0){ _arg1.lineTo((_local14 + (Math.cos(_local13) * _local11)), (_local15 + (Math.sin(_local13) * _local11))); }; }; _arg1.moveTo(_arg4, _arg5); } public static function drawBurst(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:int, _arg5:Number, _arg6:Number, _arg7:Number):void{ var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; if (_arg4 <= 2){ throw (new ArgumentError("Cannot draw a burst with fewer than three points.")); }; var _local8:Number = ((Math.PI * 2) / _arg4); var _local9:Number = (_local8 / 2); var _local10:Number = (_local8 / 4); var _local11:Number = ((_arg7 / 180) * Math.PI); var _local12:Number = (_arg2 + (Math.cos(_local11) * _arg6)); var _local13:Number = (_arg3 - (Math.sin(_local11) * _arg6)); _arg1.moveTo(_local12, _local13); var _local14 = 1; while (_local14 <= _arg4) { _local15 = (_arg2 + (Math.cos(((_local11 + (_local8 * _local14)) - (_local10 * 3))) * (_arg5 / Math.cos(_local10)))); _local16 = (_arg3 - (Math.sin(((_local11 + (_local8 * _local14)) - (_local10 * 3))) * (_arg5 / Math.cos(_local10)))); _local17 = (_arg2 + (Math.cos(((_local11 + (_local8 * _local14)) - _local9)) * _arg5)); _local18 = (_arg3 - (Math.sin(((_local11 + (_local8 * _local14)) - _local9)) * _arg5)); _arg1.curveTo(_local15, _local16, _local17, _local18); _local15 = (_arg2 + (Math.cos(((_local11 + (_local8 * _local14)) - _local10)) * (_arg5 / Math.cos(_local10)))); _local16 = (_arg3 - (Math.sin(((_local11 + (_local8 * _local14)) - _local10)) * (_arg5 / Math.cos(_local10)))); _local17 = (_arg2 + (Math.cos((_local11 + (_local8 * _local14))) * _arg6)); _local18 = (_arg3 - (Math.sin((_local11 + (_local8 * _local14))) * _arg6)); _arg1.curveTo(_local15, _local16, _local17, _local18); _local14++; }; } public static function drawPolygon(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:int, _arg5:Number, _arg6:Number=0):void{ var _local12:Number; var _local13:Number; var _local7:int = Math.abs(_arg4); if (_local7 <= 2){ throw (new ArgumentError("Cannot draw a polygon with fewer than three sides.")); }; var _local8:Number = ((Math.PI * 2) / _arg4); _arg6 = ((_arg6 / 180) * Math.PI); var _local9:Number = (_arg2 + (Math.cos(_arg6) * _arg5)); var _local10:Number = (_arg3 - (Math.sin(_arg6) * _arg5)); _arg1.moveTo(_local9, _local10); var _local11 = 1; while (_local11 <= _local7) { _local12 = (_arg2 + (Math.cos((_arg6 + (_local8 * _local11))) * _arg5)); _local13 = (_arg3 - (Math.sin((_arg6 + (_local8 * _local11))) * _arg5)); _arg1.lineTo(_local12, _local13); _local11++; }; } public static function drawArc(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number=NaN):Point{ var _local13:int; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; if (isNaN(_arg7)){ _arg7 = _arg6; }; if (Math.abs(_arg5) > 360){ _arg5 = 360; }; var _local8:int = Math.ceil((Math.abs(_arg5) / 45)); var _local9:Number = GeomUtil.degreesToRadians((_arg5 / _local8)); var _local10:Number = GeomUtil.degreesToRadians(_arg4); var _local11:Number = (_arg2 + (Math.cos(_local10) * _arg6)); var _local12:Number = (_arg3 - (Math.sin(_local10) * _arg7)); _arg1.moveTo(_local11, _local12); if (_local8 > 0){ _local13 = 0; while (_local13 < _local8) { _local10 = (_local10 + _local9); _local14 = (_local10 - (_local9 / 2)); _local15 = (_arg2 + (Math.cos(_local10) * _arg6)); _local16 = (_arg3 - (Math.sin(_local10) * _arg7)); _local17 = (_arg2 + (Math.cos(_local14) * (_arg6 / Math.cos((_local9 / 2))))); _local18 = (_arg3 - (Math.sin(_local14) * (_arg7 / Math.cos((_local9 / 2))))); _arg1.curveTo(_local17, _local18, _local15, _local16); _local13++; }; }; return (new Point(_local15, _local16)); } } }//package com.joshtynjala.utils
Section 56
//MathUtil (com.joshtynjala.utils.MathUtil) package com.joshtynjala.utils { public class MathUtil { public static function gcd(_arg1:Number, _arg2:Number, ... _args):Number{ _args.unshift(_arg2); var _local4:Number = _arg1; var _local5:int = _args.length; var _local6:int; while (_local6 < _local5) { _local4 = MathUtil.gcd2(_local4, Number(_args[_local6])); _local6++; }; return (_local4); } private static function gcd2(_arg1:Number, _arg2:Number):Number{ var _local3:Number; if (_arg1 == 0){ return (_arg2); }; while (_arg2 != 0) { _local3 = (_arg1 % _arg2); _arg1 = _arg2; _arg2 = _local3; }; return (_arg1); } public static function sum(_arg1:Number, _arg2:Number, ... _args):Number{ _args.unshift(_arg2); var _local4:Number = _arg1; var _local5:int = _args.length; var _local6:int; while (_local6 < _local5) { _local4 = (_local4 + Number(_args[_local6])); _local6++; }; return (_local4); } public static function factorial(_arg1:int):Number{ var _local2:Number = 1; var _local3 = 1; while (_local3 <= _arg1) { _local2 = (_local2 * _local3); _local3++; }; return (_local2); } public static function binomialCoefficient(_arg1:int, _arg2:int):Number{ return ((factorial(_arg1) / (factorial(_arg2) * factorial((_arg1 - _arg2))))); } } }//package com.joshtynjala.utils
Section 57
//PointUtil (com.joshtynjala.utils.PointUtil) package com.joshtynjala.utils { import flash.geom.*; public class PointUtil { public static function scalarMultiply(_arg1:Point, _arg2:Number):Point{ return (new Point((_arg1.x * _arg2), (_arg1.y * _arg2))); } public static function reverse(_arg1:Point):Point{ return (new Point(-(_arg1.x), -(_arg1.y))); } public static function angle(_arg1:Point, _arg2:Point):Number{ var _local3:Number = (_arg2.x - _arg1.x); var _local4:Number = (_arg2.y - _arg1.y); return (((Math.atan2(_local4, _local3) * 180) / Math.PI)); } public static function scalarDivide(_arg1:Point, _arg2:Number):Point{ return (new Point((_arg1.x / _arg2), (_arg1.y / _arg2))); } public static function dotProduct(_arg1:Point, _arg2:Point):Number{ return (((_arg1.x * _arg2.x) + (_arg1.y * _arg2.y))); } public static function rotate(_arg1:Point, _arg2:Number):Point{ var _local3:Point = new Point(); _local3.x = ((_arg1.x * Math.cos(_arg2)) + (_arg1.y * Math.sin(_arg2))); _local3.y = ((-(_arg1.x) * Math.sin(_arg2)) + (_arg1.y * Math.cos(_arg2))); return (_local3); } } }//package com.joshtynjala.utils
Section 58
//DisplayObjectUtil (com.yahoo.astra.utils.DisplayObjectUtil) package com.yahoo.astra.utils { import flash.display.*; import flash.geom.*; public class DisplayObjectUtil { public static function align(_arg1:DisplayObject, _arg2:Rectangle, _arg3:String=null, _arg4:String=null):void{ var _local5:Number = (_arg2.width - _arg1.width); switch (_arg3){ case "left": _arg1.x = _arg2.x; break; case "center": _arg1.x = (_arg2.x + (_local5 / 2)); break; case "right": _arg1.x = (_arg2.x + _local5); break; }; var _local6:Number = (_arg2.height - _arg1.height); switch (_arg4){ case "top": _arg1.y = _arg2.y; break; case "middle": _arg1.y = (_arg2.y + (_local6 / 2)); break; case "bottom": _arg1.y = (_arg2.y + _local6); break; }; } public static function localToLocal(_arg1:Point, _arg2:DisplayObject, _arg3:DisplayObject):Point{ _arg1 = _arg2.localToGlobal(_arg1); return (_arg3.globalToLocal(_arg1)); } public static function resizeAndMaintainAspectRatio(_arg1:DisplayObject, _arg2:Number, _arg3:Number, _arg4:Number=NaN):void{ var _local5:Number = (isNaN(_arg4)) ? (_arg1.width / _arg1.height) : _arg4; var _local6:Number = (_arg2 / _arg3); if (_local5 < _local6){ _arg1.width = Math.floor((_arg3 * _local5)); _arg1.height = _arg3; } else { _arg1.width = _arg2; _arg1.height = Math.floor((_arg2 / _local5)); }; } } }//package com.yahoo.astra.utils
Section 59
//GeomUtil (com.yahoo.astra.utils.GeomUtil) package com.yahoo.astra.utils { public class GeomUtil { public static function degreesToRadians(_arg1:Number):Number{ return (((_arg1 * Math.PI) / 180)); } public static function radiansToDegrees(_arg1:Number):Number{ return (((_arg1 * 180) / Math.PI)); } } }//package com.yahoo.astra.utils
Section 60
//NumberUtil (com.yahoo.astra.utils.NumberUtil) package com.yahoo.astra.utils { public class NumberUtil { public static function fuzzyEquals(_arg1:Number, _arg2:Number, _arg3:int=5):Boolean{ var _local4:Number = (_arg1 - _arg2); var _local5:Number = Math.pow(10, -(_arg3)); return ((((_local4 < _local5)) && ((_local4 > -(_local5))))); } public static function roundUpToNearest(_arg1:Number, _arg2:Number=1):Number{ if (_arg2 == 0){ return (_arg1); }; return ((Math.ceil(_slot1.roundToPrecision((_arg1 / _arg2), 10)) * _arg2)); } public static function roundDownToNearest(_arg1:Number, _arg2:Number=1):Number{ if (_arg2 == 0){ return (_arg1); }; return ((Math.floor(_slot1.roundToPrecision((_arg1 / _arg2), 10)) * _arg2)); } public static function roundToPrecision(_arg1:Number, _arg2:int=0):Number{ var _local3:Number = Math.pow(10, _arg2); return ((Math.round((_local3 * _arg1)) / _local3)); } public static function roundToNearest(_arg1:Number, _arg2:Number=1):Number{ if (_arg2 == 0){ return (_arg1); }; var _local3:Number = (Math.round(_slot1.roundToPrecision((_arg1 / _arg2), 10)) * _arg2); return (_slot1.roundToPrecision(_local3, 10)); } } }//package com.yahoo.astra.utils
Section 61
//IAutomationObject (mx.automation.IAutomationObject) package mx.automation { import flash.events.*; public interface IAutomationObject { function createAutomationIDPart(_arg1:IAutomationObject):Object; function get automationName():String; function get showInAutomationHierarchy():Boolean; function set automationName(_arg1:String):void; function getAutomationChildAt(_arg1:int):IAutomationObject; function get automationDelegate():Object; function get automationTabularData():Object; function resolveAutomationIDPart(_arg1:Object):Array; function replayAutomatableEvent(_arg1:Event):Boolean; function set automationDelegate(_arg1:Object):void; function get automationValue():Array; function get numAutomationChildren():int; function set showInAutomationHierarchy(_arg1:Boolean):void; } }//package mx.automation
Section 62
//BindabilityInfo (mx.binding.BindabilityInfo) package mx.binding { import mx.events.*; public class BindabilityInfo { private var classChangeEvents:Object; private var typeDescription:XML; private var childChangeEvents:Object; public static const METHOD:String = "method"; public static const ACCESSOR:String = "accessor"; public static const CHANGE_EVENT:String = "ChangeEvent"; public static const NON_COMMITTING_CHANGE_EVENT:String = "NonCommittingChangeEvent"; public static const BINDABLE:String = "Bindable"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const MANAGED:String = "Managed"; public function BindabilityInfo(_arg1:XML){ childChangeEvents = {}; super(); this.typeDescription = _arg1; } private function addChangeEvents(_arg1:XMLList, _arg2:Object, _arg3:Boolean):void{ var _local4:XML; var _local5:XMLList; var _local6:String; for each (_local4 in _arg1) { _local5 = _local4.arg; if (_local5.length() > 0){ _local6 = _local5[0].@value; _arg2[_local6] = _arg3; } else { trace((("warning: unconverted Bindable metadata in class '" + typeDescription.@name) + "'")); }; }; } private function getClassChangeEvents():Object{ if (!classChangeEvents){ classChangeEvents = {}; addBindabilityEvents(typeDescription.metadata, classChangeEvents); if (typeDescription.metadata.(@name == MANAGED).length() > 0){ classChangeEvents[PropertyChangeEvent.PROPERTY_CHANGE] = true; }; }; return (classChangeEvents); } private function addBindabilityEvents(_arg1:XMLList, _arg2:Object):void{ var metadata = _arg1; var eventListObj = _arg2; addChangeEvents(metadata.(@name == BINDABLE), eventListObj, true); addChangeEvents(metadata.(@name == CHANGE_EVENT), eventListObj, true); addChangeEvents(metadata.(@name == NON_COMMITTING_CHANGE_EVENT), eventListObj, false); } private function copyProps(_arg1:Object, _arg2:Object):Object{ var _local3:String; for (_local3 in _arg1) { _arg2[_local3] = _arg1[_local3]; }; return (_arg2); } public function getChangeEvents(_arg1:String):Object{ var childDesc:XMLList; var numChildren:int; var childName = _arg1; var changeEvents:Object = childChangeEvents[childName]; if (!changeEvents){ changeEvents = copyProps(getClassChangeEvents(), {}); childDesc = (typeDescription.accessor.(@name == childName) + typeDescription.method.(@name == childName)); numChildren = childDesc.length(); if (numChildren == 0){ if (!typeDescription.@dynamic){ trace((((("warning: no describeType entry for '" + childName) + "' on non-dynamic type '") + typeDescription.@name) + "'")); }; } else { if (numChildren > 1){ trace(((((("warning: multiple describeType entries for '" + childName) + "' on type '") + typeDescription.@name) + "':\n") + childDesc)); }; addBindabilityEvents(childDesc.metadata, changeEvents); }; childChangeEvents[childName] = changeEvents; }; return (changeEvents); } } }//package mx.binding
Section 63
//Binding (mx.binding.Binding) package mx.binding { import flash.utils.*; import mx.collections.errors.*; public class Binding { mx_internal var destFunc:Function; mx_internal var srcFunc:Function; mx_internal var destString:String; mx_internal var document:Object; private var hasHadValue:Boolean; mx_internal var disabledRequests:Dictionary; mx_internal var isExecuting:Boolean; mx_internal var isHandlingEvent:Boolean; public var twoWayCounterpart:Binding; private var wrappedFunctionSuccessful:Boolean; mx_internal var _isEnabled:Boolean; public var uiComponentWatcher:int; private var lastValue:Object; mx_internal static const VERSION:String = "3.2.0.3794"; public function Binding(_arg1:Object, _arg2:Function, _arg3:Function, _arg4:String){ this.document = _arg1; this.srcFunc = _arg2; this.destFunc = _arg3; this.destString = _arg4; _isEnabled = true; isExecuting = false; isHandlingEvent = false; hasHadValue = false; uiComponentWatcher = -1; BindingManager.addBinding(_arg1, _arg4, this); } private function registerDisabledExecute(_arg1:Object):void{ if (_arg1 != null){ disabledRequests = ((disabledRequests)!=null) ? disabledRequests : new Dictionary(true); disabledRequests[_arg1] = true; }; } protected function wrapFunctionCall(_arg1:Object, _arg2:Function, _arg3:Object=null, ... _args):Object{ var result:Object; var thisArg = _arg1; var wrappedFunction = _arg2; var object = _arg3; var args = _args; wrappedFunctionSuccessful = false; try { result = wrappedFunction.apply(thisArg, args); wrappedFunctionSuccessful = true; return (result); } catch(itemPendingError:ItemPendingError) { itemPendingError.addResponder(new EvalBindingResponder(this, object)); if (BindingManager.debugDestinationStrings[destString]){ trace(((("Binding: destString = " + destString) + ", error = ") + itemPendingError)); }; } catch(rangeError:RangeError) { if (BindingManager.debugDestinationStrings[destString]){ trace(((("Binding: destString = " + destString) + ", error = ") + rangeError)); }; } catch(error:Error) { if (((((((((!((error.errorID == 1006))) && (!((error.errorID == 1009))))) && (!((error.errorID == 1010))))) && (!((error.errorID == 1055))))) && (!((error.errorID == 1069))))){ throw (error); } else { if (BindingManager.debugDestinationStrings[destString]){ trace(((("Binding: destString = " + destString) + ", error = ") + error)); }; }; }; return (null); } public function watcherFired(_arg1:Boolean, _arg2:int):void{ var commitEvent = _arg1; var cloneIndex = _arg2; if (isHandlingEvent){ return; }; try { isHandlingEvent = true; execute(cloneIndex); } finally { isHandlingEvent = false; }; } private function nodeSeqEqual(_arg1:XMLList, _arg2:XMLList):Boolean{ var _local4:uint; var _local3:uint = _arg1.length(); if (_local3 == _arg2.length()){ _local4 = 0; while ((((_local4 < _local3)) && ((_arg1[_local4] === _arg2[_local4])))) { _local4++; }; return ((_local4 == _local3)); //unresolved jump }; return (false); } mx_internal function set isEnabled(_arg1:Boolean):void{ _isEnabled = _arg1; if (_arg1){ processDisabledRequests(); }; } private function processDisabledRequests():void{ var _local1:Object; if (disabledRequests != null){ for (_local1 in disabledRequests) { execute(_local1); }; disabledRequests = null; }; } public function execute(_arg1:Object=null):void{ var o = _arg1; if (!isEnabled){ if (o != null){ registerDisabledExecute(o); }; return; }; if (((isExecuting) || (((twoWayCounterpart) && (twoWayCounterpart.isExecuting))))){ hasHadValue = true; return; }; try { isExecuting = true; wrapFunctionCall(this, innerExecute, o); } finally { isExecuting = false; }; } mx_internal function get isEnabled():Boolean{ return (_isEnabled); } private function innerExecute():void{ var _local1:Object = wrapFunctionCall(document, srcFunc); if (BindingManager.debugDestinationStrings[destString]){ trace(((("Binding: destString = " + destString) + ", srcFunc result = ") + _local1)); }; if (((hasHadValue) || (wrappedFunctionSuccessful))){ if (((!((((((lastValue is XML)) && (lastValue.hasComplexContent()))) && ((lastValue === _local1))))) && (!((((((((lastValue is XMLList)) && (lastValue.hasComplexContent()))) && ((_local1 is XMLList)))) && (nodeSeqEqual((lastValue as XMLList), (_local1 as XMLList)))))))){ destFunc.call(document, _local1); lastValue = _local1; hasHadValue = true; }; }; } } }//package mx.binding
Section 64
//BindingManager (mx.binding.BindingManager) package mx.binding { public class BindingManager { mx_internal static const VERSION:String = "3.2.0.3794"; static var debugDestinationStrings:Object = {}; public static function executeBindings(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:String; if (((!(_arg2)) || ((_arg2 == "")))){ return; }; if (((((((_arg1) && ((((_arg1 is IBindingClient)) || (_arg1.hasOwnProperty("_bindingsByDestination")))))) && (_arg1._bindingsByDestination))) && (_arg1._bindingsBeginWithWord[getFirstWord(_arg2)]))){ for (_local4 in _arg1._bindingsByDestination) { if (_local4.charAt(0) == _arg2.charAt(0)){ if ((((((_local4.indexOf((_arg2 + ".")) == 0)) || ((_local4.indexOf((_arg2 + "[")) == 0)))) || ((_local4 == _arg2)))){ _arg1._bindingsByDestination[_local4].execute(_arg3); }; }; }; }; } public static function addBinding(_arg1:Object, _arg2:String, _arg3:Binding):void{ if (!_arg1._bindingsByDestination){ _arg1._bindingsByDestination = {}; _arg1._bindingsBeginWithWord = {}; }; _arg1._bindingsByDestination[_arg2] = _arg3; _arg1._bindingsBeginWithWord[getFirstWord(_arg2)] = true; } public static function debugBinding(_arg1:String):void{ debugDestinationStrings[_arg1] = true; } private static function getFirstWord(_arg1:String):String{ var _local2:int = _arg1.indexOf("."); var _local3:int = _arg1.indexOf("["); if (_local2 == _local3){ return (_arg1); }; var _local4:int = Math.min(_local2, _local3); if (_local4 == -1){ _local4 = Math.max(_local2, _local3); }; return (_arg1.substr(0, _local4)); } public static function setEnabled(_arg1:Object, _arg2:Boolean):void{ var _local3:Array; var _local4:uint; var _local5:Binding; if ((((_arg1 is IBindingClient)) && (_arg1._bindings))){ _local3 = (_arg1._bindings as Array); _local4 = 0; while (_local4 < _local3.length) { _local5 = _local3[_local4]; _local5.isEnabled = _arg2; _local4++; }; }; } } }//package mx.binding
Section 65
//EvalBindingResponder (mx.binding.EvalBindingResponder) package mx.binding { import mx.rpc.*; public class EvalBindingResponder implements IResponder { private var binding:Binding; private var object:Object; mx_internal static const VERSION:String = "3.2.0.3794"; public function EvalBindingResponder(_arg1:Binding, _arg2:Object){ this.binding = _arg1; this.object = _arg2; } public function fault(_arg1:Object):void{ } public function result(_arg1:Object):void{ binding.execute(object); } } }//package mx.binding
Section 66
//IBindingClient (mx.binding.IBindingClient) package mx.binding { public interface IBindingClient { } }//package mx.binding
Section 67
//IWatcherSetupUtil (mx.binding.IWatcherSetupUtil) package mx.binding { public interface IWatcherSetupUtil { function setup(_arg1:Object, _arg2:Function, _arg3:Array, _arg4:Array):void; } }//package mx.binding
Section 68
//PropertyWatcher (mx.binding.PropertyWatcher) package mx.binding { import mx.core.*; import flash.events.*; import mx.events.*; import flash.utils.*; import mx.utils.*; public class PropertyWatcher extends Watcher { protected var propertyGetter:Function; private var parentObj:Object; protected var events:Object; private var useRTTI:Boolean; private var _propertyName:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function PropertyWatcher(_arg1:String, _arg2:Object, _arg3:Array, _arg4:Function=null){ super(_arg3); _propertyName = _arg1; this.events = _arg2; this.propertyGetter = _arg4; useRTTI = !(_arg2); } private function eventNamesToString():String{ var _local2:String; var _local1 = " "; for (_local2 in events) { _local1 = (_local1 + (_local2 + " ")); }; return (_local1); } override public function updateParent(_arg1:Object):void{ var _local2:String; var _local3:BindabilityInfo; if (((parentObj) && ((parentObj is IEventDispatcher)))){ for (_local2 in events) { parentObj.removeEventListener(_local2, eventHandler); }; }; if ((_arg1 is Watcher)){ parentObj = _arg1.value; } else { parentObj = _arg1; }; if (parentObj){ if (useRTTI){ events = {}; if ((parentObj is IEventDispatcher)){ _local3 = DescribeTypeCache.describeType(parentObj).bindabilityInfo; events = _local3.getChangeEvents(_propertyName); if (objectIsEmpty(events)){ trace((((("warning: unable to bind to property '" + _propertyName) + "' on class '") + getQualifiedClassName(parentObj)) + "'")); } else { addParentEventListeners(); }; } else { trace((((("warning: unable to bind to property '" + _propertyName) + "' on class '") + getQualifiedClassName(parentObj)) + "' (class is not an IEventDispatcher)")); }; } else { if ((parentObj is IEventDispatcher)){ addParentEventListeners(); }; }; }; wrapUpdate(updateProperty); } private function objectIsEmpty(_arg1:Object):Boolean{ var _local2:String; for (_local2 in _arg1) { return (false); }; return (true); } override protected function shallowClone():Watcher{ var _local1:PropertyWatcher = new PropertyWatcher(_propertyName, events, listeners, propertyGetter); return (_local1); } private function traceInfo():String{ return ((((((("Watcher(" + getQualifiedClassName(parentObj)) + ".") + _propertyName) + "): events = [") + eventNamesToString()) + (useRTTI) ? "] (RTTI)" : "]")); } public function get propertyName():String{ return (_propertyName); } private function addParentEventListeners():void{ var _local1:String; for (_local1 in events) { if (_local1 != "__NoChangeEvent__"){ parentObj.addEventListener(_local1, eventHandler, false, EventPriority.BINDING, true); }; }; } private function updateProperty():void{ if (parentObj){ if (_propertyName == "this"){ value = parentObj; } else { if (propertyGetter != null){ value = propertyGetter.apply(parentObj, [_propertyName]); } else { value = parentObj[_propertyName]; }; }; } else { value = null; }; updateChildren(); } public function eventHandler(_arg1:Event):void{ var _local2:Object; if ((_arg1 is PropertyChangeEvent)){ _local2 = PropertyChangeEvent(_arg1).property; if (_local2 != _propertyName){ return; }; }; wrapUpdate(updateProperty); notifyListeners(events[_arg1.type]); } } }//package mx.binding
Section 69
//RepeatableBinding (mx.binding.RepeatableBinding) package mx.binding { import mx.core.*; import flash.events.*; public class RepeatableBinding extends Binding { mx_internal static const VERSION:String = "3.2.0.3794"; public function RepeatableBinding(_arg1:Object, _arg2:Function, _arg3:Function, _arg4:String){ super(_arg1, _arg2, _arg3, _arg4); } public function eventHandler(_arg1:Event):void{ if (isHandlingEvent){ return; }; isHandlingEvent = true; execute(); isHandlingEvent = false; } override public function execute(_arg1:Object=null):void{ var _local2:String; var _local3:Array; if (isExecuting){ return; }; isExecuting = true; if (!_arg1){ _local2 = destString.substring(0, destString.indexOf(".")); _arg1 = document[_local2]; } else { if (typeof(_arg1) == "number"){ _local2 = destString.substring(0, destString.indexOf(".")); _local3 = (document[_local2] as Array); if (_local3){ _arg1 = _local3[_arg1]; } else { _arg1 = null; }; }; }; if (_arg1){ recursivelyProcessIDArray(_arg1); }; isExecuting = false; } private function recursivelyProcessIDArray(_arg1:Object):void{ var array:Array; var n:int; var i:int; var client:IRepeaterClient; var o = _arg1; if ((o is Array)){ array = (o as Array); n = array.length; i = 0; while (i < n) { recursivelyProcessIDArray(array[i]); i = (i + 1); }; } else { if ((o is IRepeaterClient)){ client = IRepeaterClient(o); wrapFunctionCall(this, function ():void{ var _local1:Object = wrapFunctionCall(this, srcFunc, null, client.instanceIndices, client.repeaterIndices); if (BindingManager.debugDestinationStrings[destString]){ trace(((("RepeatableBinding: destString = " + destString) + ", srcFunc result = ") + _local1)); }; destFunc(_local1, client.instanceIndices); }, o); }; }; } } }//package mx.binding
Section 70
//RepeaterItemWatcher (mx.binding.RepeaterItemWatcher) package mx.binding { import mx.events.*; import mx.collections.*; public class RepeaterItemWatcher extends Watcher { private var original:Boolean;// = true private var clones:Array; private var dataProviderWatcher:PropertyWatcher; mx_internal static const VERSION:String = "3.2.0.3794"; public function RepeaterItemWatcher(_arg1:PropertyWatcher){ this.dataProviderWatcher = _arg1; } override protected function shallowClone():Watcher{ return (new RepeaterItemWatcher(dataProviderWatcher)); } override public function updateParent(_arg1:Object):void{ var dataProvider:ICollectionView; var parent = _arg1; if (dataProviderWatcher){ dataProvider = ICollectionView(dataProviderWatcher.value); if (dataProvider != null){ dataProvider.removeEventListener(CollectionEvent.COLLECTION_CHANGE, changedHandler, false); }; }; dataProviderWatcher = PropertyWatcher(parent); dataProvider = ICollectionView(dataProviderWatcher.value); if (dataProvider){ if (original){ dataProvider.addEventListener(CollectionEvent.COLLECTION_CHANGE, changedHandler, false, 0, true); updateClones(dataProvider); } else { wrapUpdate(function ():void{ var _local1:IViewCursor = dataProvider.createCursor(); _local1.seek(CursorBookmark.FIRST, cloneIndex); value = _local1.current; updateChildren(); }); }; }; } private function changedHandler(_arg1:CollectionEvent):void{ var _local2:ICollectionView = ICollectionView(dataProviderWatcher.value); if (_local2){ updateClones(_local2); }; } private function updateClones(_arg1:ICollectionView):void{ var _local3:RepeaterItemWatcher; if (clones){ clones = clones.splice(0, _arg1.length); } else { clones = []; }; var _local2:int; while (_local2 < _arg1.length) { _local3 = RepeaterItemWatcher(clones[_local2]); if (!_local3){ _local3 = RepeaterItemWatcher(deepClone(_local2)); _local3.original = false; clones[_local2] = _local3; }; _local3.updateParent(dataProviderWatcher); _local2++; }; } } }//package mx.binding
Section 71
//Watcher (mx.binding.Watcher) package mx.binding { import mx.collections.errors.*; public class Watcher { protected var children:Array; public var value:Object; protected var cloneIndex:int; protected var listeners:Array; mx_internal static const VERSION:String = "3.2.0.3794"; public function Watcher(_arg1:Array=null){ this.listeners = _arg1; } public function removeChildren(_arg1:int):void{ children.splice(_arg1); } public function updateChildren():void{ var _local1:int; var _local2:int; if (children){ _local1 = children.length; _local2 = 0; while (_local2 < _local1) { children[_local2].updateParent(this); _local2++; }; }; } protected function shallowClone():Watcher{ return (new Watcher()); } protected function wrapUpdate(_arg1:Function):void{ var wrappedFunction = _arg1; try { wrappedFunction.apply(this); } catch(itemPendingError:ItemPendingError) { value = null; } catch(rangeError:RangeError) { value = null; } catch(error:Error) { if (((((((((!((error.errorID == 1006))) && (!((error.errorID == 1009))))) && (!((error.errorID == 1010))))) && (!((error.errorID == 1055))))) && (!((error.errorID == 1069))))){ throw (error); }; }; } private function valueChanged(_arg1:Object):Boolean{ if ((((_arg1 == null)) && ((value == null)))){ return (false); }; var _local2 = typeof(value); if (_local2 == "string"){ if ((((_arg1 == null)) && ((value == "")))){ return (false); }; return (!((_arg1 == value))); }; if (_local2 == "number"){ if ((((_arg1 == null)) && ((value == 0)))){ return (false); }; return (!((_arg1 == value))); }; if (_local2 == "boolean"){ if ((((_arg1 == null)) && ((value == false)))){ return (false); }; return (!((_arg1 == value))); }; return (true); } public function notifyListeners(_arg1:Boolean):void{ var _local2:int; var _local3:int; if (listeners){ _local2 = listeners.length; _local3 = 0; while (_local3 < _local2) { listeners[_local3].watcherFired(_arg1, cloneIndex); _local3++; }; }; } protected function deepClone(_arg1:int):Watcher{ var _local3:int; var _local4:int; var _local5:Watcher; var _local2:Watcher = shallowClone(); _local2.cloneIndex = _arg1; if (listeners){ _local2.listeners = listeners.concat(); }; if (children){ _local3 = children.length; _local4 = 0; while (_local4 < _local3) { _local5 = children[_local4].deepClone(_arg1); _local2.addChild(_local5); _local4++; }; }; return (_local2); } public function updateParent(_arg1:Object):void{ } public function addChild(_arg1:Watcher):void{ if (!children){ children = [_arg1]; } else { children.push(_arg1); }; _arg1.updateParent(this); } } }//package mx.binding
Section 72
//CollectionViewError (mx.collections.errors.CollectionViewError) package mx.collections.errors { public class CollectionViewError extends Error { mx_internal static const VERSION:String = "3.2.0.3794"; public function CollectionViewError(_arg1:String){ super(_arg1); } } }//package mx.collections.errors
Section 73
//CursorError (mx.collections.errors.CursorError) package mx.collections.errors { public class CursorError extends Error { mx_internal static const VERSION:String = "3.2.0.3794"; public function CursorError(_arg1:String){ super(_arg1); } } }//package mx.collections.errors
Section 74
//ItemPendingError (mx.collections.errors.ItemPendingError) package mx.collections.errors { import mx.rpc.*; public class ItemPendingError extends Error { private var _responders:Array; mx_internal static const VERSION:String = "3.2.0.3794"; public function ItemPendingError(_arg1:String){ super(_arg1); } public function get responders():Array{ return (_responders); } public function addResponder(_arg1:IResponder):void{ if (!_responders){ _responders = []; }; _responders.push(_arg1); } } }//package mx.collections.errors
Section 75
//SortError (mx.collections.errors.SortError) package mx.collections.errors { public class SortError extends Error { mx_internal static const VERSION:String = "3.2.0.3794"; public function SortError(_arg1:String){ super(_arg1); } } }//package mx.collections.errors
Section 76
//ArrayCollection (mx.collections.ArrayCollection) package mx.collections { import flash.utils.*; public class ArrayCollection extends ListCollectionView implements IExternalizable { mx_internal static const VERSION:String = "3.2.0.3794"; public function ArrayCollection(_arg1:Array=null){ this.source = _arg1; } public function set source(_arg1:Array):void{ list = new ArrayList(_arg1); } public function readExternal(_arg1:IDataInput):void{ if ((list is IExternalizable)){ IExternalizable(list).readExternal(_arg1); } else { source = (_arg1.readObject() as Array); }; } public function writeExternal(_arg1:IDataOutput):void{ if ((list is IExternalizable)){ IExternalizable(list).writeExternal(_arg1); } else { _arg1.writeObject(source); }; } public function get source():Array{ if (((list) && ((list is ArrayList)))){ return (ArrayList(list).source); }; return (null); } } }//package mx.collections
Section 77
//ArrayList (mx.collections.ArrayList) package mx.collections { import mx.core.*; import flash.events.*; import mx.events.*; import mx.resources.*; import flash.utils.*; import mx.utils.*; public class ArrayList extends EventDispatcher implements IList, IExternalizable, IPropertyChangeNotifier { private var _source:Array; private var _dispatchEvents:int;// = 0 private var _uid:String; private var resourceManager:IResourceManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function ArrayList(_arg1:Array=null){ resourceManager = ResourceManager.getInstance(); super(); disableEvents(); this.source = _arg1; enableEvents(); _uid = UIDUtil.createUID(); } public function itemUpdated(_arg1:Object, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ var _local5:PropertyChangeEvent = new PropertyChangeEvent(PropertyChangeEvent.PROPERTY_CHANGE); _local5.kind = PropertyChangeEventKind.UPDATE; _local5.source = _arg1; _local5.property = _arg2; _local5.oldValue = _arg3; _local5.newValue = _arg4; itemUpdateHandler(_local5); } public function readExternal(_arg1:IDataInput):void{ source = _arg1.readObject(); } private function internalDispatchEvent(_arg1:String, _arg2:Object=null, _arg3:int=-1):void{ var _local4:CollectionEvent; var _local5:PropertyChangeEvent; if (_dispatchEvents == 0){ if (hasEventListener(CollectionEvent.COLLECTION_CHANGE)){ _local4 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local4.kind = _arg1; _local4.items.push(_arg2); _local4.location = _arg3; dispatchEvent(_local4); }; if (((hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE)) && ((((_arg1 == CollectionEventKind.ADD)) || ((_arg1 == CollectionEventKind.REMOVE)))))){ _local5 = new PropertyChangeEvent(PropertyChangeEvent.PROPERTY_CHANGE); _local5.property = _arg3; if (_arg1 == CollectionEventKind.ADD){ _local5.newValue = _arg2; } else { _local5.oldValue = _arg2; }; dispatchEvent(_local5); }; }; } public function removeAll():void{ var _local1:int; var _local2:int; if (length > 0){ _local1 = length; _local2 = 0; while (_local2 < _local1) { stopTrackUpdates(source[_local2]); _local2++; }; source.splice(0, length); internalDispatchEvent(CollectionEventKind.RESET); }; } public function removeItemAt(_arg1:int):Object{ var _local3:String; if ((((_arg1 < 0)) || ((_arg1 >= length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg1]); throw (new RangeError(_local3)); }; var _local2:Object = source.splice(_arg1, 1)[0]; stopTrackUpdates(_local2); internalDispatchEvent(CollectionEventKind.REMOVE, _local2, _arg1); return (_local2); } public function get uid():String{ return (_uid); } public function getItemIndex(_arg1:Object):int{ return (ArrayUtil.getItemIndex(_arg1, source)); } public function writeExternal(_arg1:IDataOutput):void{ _arg1.writeObject(_source); } public function addItem(_arg1:Object):void{ addItemAt(_arg1, length); } public function toArray():Array{ return (source.concat()); } private function disableEvents():void{ _dispatchEvents--; } public function get source():Array{ return (_source); } public function getItemAt(_arg1:int, _arg2:int=0):Object{ var _local3:String; if ((((_arg1 < 0)) || ((_arg1 >= length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg1]); throw (new RangeError(_local3)); }; return (source[_arg1]); } public function set uid(_arg1:String):void{ _uid = _arg1; } public function setItemAt(_arg1:Object, _arg2:int):Object{ var _local4:String; var _local5:Boolean; var _local6:Boolean; var _local7:PropertyChangeEvent; var _local8:CollectionEvent; if ((((_arg2 < 0)) || ((_arg2 >= length)))){ _local4 = resourceManager.getString("collections", "outOfBounds", [_arg2]); throw (new RangeError(_local4)); }; var _local3:Object = source[_arg2]; source[_arg2] = _arg1; stopTrackUpdates(_local3); startTrackUpdates(_arg1); if (_dispatchEvents == 0){ _local5 = hasEventListener(CollectionEvent.COLLECTION_CHANGE); _local6 = hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE); if (((_local5) || (_local6))){ _local7 = new PropertyChangeEvent(PropertyChangeEvent.PROPERTY_CHANGE); _local7.kind = PropertyChangeEventKind.UPDATE; _local7.oldValue = _local3; _local7.newValue = _arg1; _local7.property = _arg2; }; if (_local5){ _local8 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local8.kind = CollectionEventKind.REPLACE; _local8.location = _arg2; _local8.items.push(_local7); dispatchEvent(_local8); }; if (_local6){ dispatchEvent(_local7); }; }; return (_local3); } public function get length():int{ if (source){ return (source.length); }; return (0); } protected function stopTrackUpdates(_arg1:Object):void{ if (((_arg1) && ((_arg1 is IEventDispatcher)))){ IEventDispatcher(_arg1).removeEventListener(PropertyChangeEvent.PROPERTY_CHANGE, itemUpdateHandler); }; } protected function itemUpdateHandler(_arg1:PropertyChangeEvent):void{ var _local2:PropertyChangeEvent; var _local3:uint; internalDispatchEvent(CollectionEventKind.UPDATE, _arg1); if ((((_dispatchEvents == 0)) && (hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE)))){ _local2 = PropertyChangeEvent(_arg1.clone()); _local3 = getItemIndex(_arg1.target); _local2.property = ((_local3.toString() + ".") + _arg1.property); dispatchEvent(_local2); }; } public function addItemAt(_arg1:Object, _arg2:int):void{ var _local3:String; if ((((_arg2 < 0)) || ((_arg2 > length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg2]); throw (new RangeError(_local3)); }; source.splice(_arg2, 0, _arg1); startTrackUpdates(_arg1); internalDispatchEvent(CollectionEventKind.ADD, _arg1, _arg2); } public function removeItem(_arg1:Object):Boolean{ var _local2:int = getItemIndex(_arg1); var _local3 = (_local2 >= 0); if (_local3){ removeItemAt(_local2); }; return (_local3); } protected function startTrackUpdates(_arg1:Object):void{ if (((_arg1) && ((_arg1 is IEventDispatcher)))){ IEventDispatcher(_arg1).addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, itemUpdateHandler, false, 0, true); }; } override public function toString():String{ if (source){ return (source.toString()); }; return (getQualifiedClassName(this)); } private function enableEvents():void{ _dispatchEvents++; if (_dispatchEvents > 0){ _dispatchEvents = 0; }; } public function set source(_arg1:Array):void{ var _local2:int; var _local3:int; var _local4:CollectionEvent; if (((_source) && (_source.length))){ _local3 = _source.length; _local2 = 0; while (_local2 < _local3) { stopTrackUpdates(_source[_local2]); _local2++; }; }; _source = (_arg1) ? _arg1 : []; _local3 = _source.length; _local2 = 0; while (_local2 < _local3) { startTrackUpdates(_source[_local2]); _local2++; }; if (_dispatchEvents == 0){ _local4 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local4.kind = CollectionEventKind.RESET; dispatchEvent(_local4); }; } } }//package mx.collections
Section 78
//CursorBookmark (mx.collections.CursorBookmark) package mx.collections { public class CursorBookmark { private var _value:Object; mx_internal static const VERSION:String = "3.2.0.3794"; private static var _first:CursorBookmark; private static var _last:CursorBookmark; private static var _current:CursorBookmark; public function CursorBookmark(_arg1:Object){ _value = _arg1; } public function get value():Object{ return (_value); } public function getViewIndex():int{ return (-1); } public static function get LAST():CursorBookmark{ if (!_last){ _last = new CursorBookmark("${L}"); }; return (_last); } public static function get FIRST():CursorBookmark{ if (!_first){ _first = new CursorBookmark("${F}"); }; return (_first); } public static function get CURRENT():CursorBookmark{ if (!_current){ _current = new CursorBookmark("${C}"); }; return (_current); } } }//package mx.collections
Section 79
//ICollectionView (mx.collections.ICollectionView) package mx.collections { import flash.events.*; public interface ICollectionView extends IEventDispatcher { function set filterFunction(_arg1:Function):void; function enableAutoUpdate():void; function get length():int; function disableAutoUpdate():void; function itemUpdated(_arg1:Object, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void; function get filterFunction():Function; function createCursor():IViewCursor; function refresh():Boolean; function set sort(_arg1:Sort):void; function get sort():Sort; function contains(_arg1:Object):Boolean; } }//package mx.collections
Section 80
//IList (mx.collections.IList) package mx.collections { import flash.events.*; public interface IList extends IEventDispatcher { function addItem(_arg1:Object):void; function get length():int; function addItemAt(_arg1:Object, _arg2:int):void; function itemUpdated(_arg1:Object, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void; function getItemIndex(_arg1:Object):int; function removeItemAt(_arg1:int):Object; function getItemAt(_arg1:int, _arg2:int=0):Object; function removeAll():void; function toArray():Array; function setItemAt(_arg1:Object, _arg2:int):Object; } }//package mx.collections
Section 81
//ItemResponder (mx.collections.ItemResponder) package mx.collections { import mx.rpc.*; public class ItemResponder implements IResponder { private var _faultHandler:Function; private var _token:Object; private var _resultHandler:Function; mx_internal static const VERSION:String = "3.2.0.3794"; public function ItemResponder(_arg1:Function, _arg2:Function, _arg3:Object=null){ _resultHandler = _arg1; _faultHandler = _arg2; _token = _arg3; } public function result(_arg1:Object):void{ _resultHandler(_arg1, _token); } public function fault(_arg1:Object):void{ _faultHandler(_arg1, _token); } } }//package mx.collections
Section 82
//ItemWrapper (mx.collections.ItemWrapper) package mx.collections { public class ItemWrapper { public var data:Object; mx_internal static const VERSION:String = "3.2.0.3794"; public function ItemWrapper(_arg1:Object){ this.data = _arg1; } } }//package mx.collections
Section 83
//IViewCursor (mx.collections.IViewCursor) package mx.collections { import flash.events.*; public interface IViewCursor extends IEventDispatcher { function get current():Object; function moveNext():Boolean; function get view():ICollectionView; function movePrevious():Boolean; function remove():Object; function findLast(_arg1:Object):Boolean; function get beforeFirst():Boolean; function get afterLast():Boolean; function findAny(_arg1:Object):Boolean; function get bookmark():CursorBookmark; function findFirst(_arg1:Object):Boolean; function seek(_arg1:CursorBookmark, _arg2:int=0, _arg3:int=0):void; function insert(_arg1:Object):void; } }//package mx.collections
Section 84
//ListCollectionView (mx.collections.ListCollectionView) package mx.collections { import mx.core.*; import flash.events.*; import mx.events.*; import mx.resources.*; import flash.utils.*; import mx.utils.*; import mx.collections.errors.*; public class ListCollectionView extends Proxy implements ICollectionView, IList, IMXMLObject { private var autoUpdateCounter:int; private var _list:IList; private var _filterFunction:Function; protected var localIndex:Array; mx_internal var dispatchResetEvent:Boolean;// = true private var pendingUpdates:Array; private var resourceManager:IResourceManager; private var eventDispatcher:EventDispatcher; private var revision:int; private var _sort:Sort; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListCollectionView(_arg1:IList=null){ resourceManager = ResourceManager.getInstance(); super(); eventDispatcher = new EventDispatcher(this); this.list = _arg1; } private function handlePendingUpdates():void{ var _local1:Array; var _local2:CollectionEvent; var _local3:int; var _local4:CollectionEvent; var _local5:int; if (pendingUpdates){ _local1 = pendingUpdates; pendingUpdates = null; _local3 = 0; while (_local3 < _local1.length) { _local4 = _local1[_local3]; if (_local4.kind == CollectionEventKind.UPDATE){ if (!_local2){ _local2 = _local4; } else { _local5 = 0; while (_local5 < _local4.items.length) { _local2.items.push(_local4.items[_local5]); _local5++; }; }; } else { listChangeHandler(_local4); }; _local3++; }; if (_local2){ listChangeHandler(_local2); }; }; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ eventDispatcher.removeEventListener(_arg1, _arg2, _arg3); } private function replaceItemsInView(_arg1:Array, _arg2:int, _arg3:Boolean=true):void{ var _local4:int; var _local5:Array; var _local6:Array; var _local7:int; var _local8:PropertyChangeEvent; var _local9:CollectionEvent; if (localIndex){ _local4 = _arg1.length; _local5 = []; _local6 = []; _local7 = 0; while (_local7 < _local4) { _local8 = _arg1[_local7]; _local5.push(_local8.oldValue); _local6.push(_local8.newValue); _local7++; }; removeItemsFromView(_local5, _arg2, _arg3); addItemsToView(_local6, _arg2, _arg3); } else { _local9 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local9.kind = CollectionEventKind.REPLACE; _local9.location = _arg2; _local9.items = _arg1; dispatchEvent(_local9); }; } public function willTrigger(_arg1:String):Boolean{ return (eventDispatcher.willTrigger(_arg1)); } private function getFilteredItemIndex(_arg1:Object):int{ var _local4:Object; var _local5:int; var _local6:int; var _local2:int = list.getItemIndex(_arg1); if (_local2 == 0){ return (0); }; var _local3:int = (_local2 - 1); while (_local3 >= 0) { _local4 = list.getItemAt(_local3); if (filterFunction(_local4)){ _local5 = localIndex.length; _local6 = 0; while (_local6 < _local5) { if (localIndex[_local6] == _local4){ return ((_local6 + 1)); }; _local6++; }; }; _local3--; }; return (0); } mx_internal function findItem(_arg1:Object, _arg2:String, _arg3:Boolean=false):int{ var _local4:String; if (!sort){ _local4 = resourceManager.getString("collections", "itemNotFound"); throw (new CollectionViewError(_local4)); }; if (localIndex.length == 0){ return ((_arg3) ? 0 : -1); }; return (sort.findItem(localIndex, _arg1, _arg2, _arg3)); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{ return ((_arg1 - 1).toString()); } public function removeAll():void{ var _local2:int; var _local1:int = length; if (_local1 > 0){ if (localIndex){ _local2 = (_local1 - 1); while (_local2 >= 0) { removeItemAt(_local2); _local2--; }; } else { list.removeAll(); }; }; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function hasProperty(_arg1):Boolean{ var n:Number; var name = _arg1; if ((name is QName)){ name = name.localName; }; var index = -1; try { n = parseInt(String(name)); if (!isNaN(n)){ index = int(n); }; } catch(e:Error) { }; if (index == -1){ return (false); }; return ((((index >= 0)) && ((index < length)))); } public function getItemAt(_arg1:int, _arg2:int=0):Object{ var _local3:String; if ((((_arg1 < 0)) || ((_arg1 >= length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg1]); throw (new RangeError(_local3)); }; if (localIndex){ return (localIndex[_arg1]); }; if (list){ return (list.getItemAt(_arg1, _arg2)); }; return (null); } private function moveItemInView(_arg1:Object, _arg2:Boolean=true, _arg3:Array=null):void{ var _local4:int; var _local5:int; var _local6:int; var _local7:CollectionEvent; if (localIndex){ _local4 = -1; _local5 = 0; while (_local5 < localIndex.length) { if (localIndex[_local5] == _arg1){ _local4 = _local5; break; }; _local5++; }; if (_local4 > -1){ localIndex.splice(_local4, 1); }; _local6 = addItemsToView([_arg1], _local4, false); if (_arg2){ _local7 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local7.items.push(_arg1); if (((((_arg3) && ((_local6 == _local4)))) && ((_local6 > -1)))){ _arg3.push(_arg1); return; }; if ((((_local6 > -1)) && ((_local4 > -1)))){ _local7.kind = CollectionEventKind.MOVE; _local7.location = _local6; _local7.oldLocation = _local4; } else { if (_local6 > -1){ _local7.kind = CollectionEventKind.ADD; _local7.location = _local6; } else { if (_local4 > -1){ _local7.kind = CollectionEventKind.REMOVE; _local7.location = _local4; } else { _arg2 = false; }; }; }; if (_arg2){ dispatchEvent(_local7); }; }; }; } public function contains(_arg1:Object):Boolean{ return (!((getItemIndex(_arg1) == -1))); } public function get sort():Sort{ return (_sort); } private function removeItemsFromView(_arg1:Array, _arg2:int, _arg3:Boolean=true):void{ var _local6:int; var _local7:Object; var _local8:int; var _local9:CollectionEvent; var _local4:Array = (localIndex) ? [] : _arg1; var _local5:int = _arg2; if (localIndex){ _local6 = 0; while (_local6 < _arg1.length) { _local7 = _arg1[_local6]; _local8 = getItemIndex(_local7); if (_local8 > -1){ localIndex.splice(_local8, 1); _local4.push(_local7); _local5 = _local8; }; _local6++; }; }; if (((_arg3) && ((_local4.length > 0)))){ _local9 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local9.kind = CollectionEventKind.REMOVE; _local9.location = (((!(localIndex)) || ((_local4.length == 1)))) ? _local5 : -1; _local9.items = _local4; dispatchEvent(_local9); }; } public function get list():IList{ return (_list); } public function addItemAt(_arg1:Object, _arg2:int):void{ var _local4:String; if ((((((_arg2 < 0)) || (!(list)))) || ((_arg2 > length)))){ _local4 = resourceManager.getString("collections", "outOfBounds", [_arg2]); throw (new RangeError(_local4)); }; var _local3:int = _arg2; if (((localIndex) && (sort))){ _local3 = list.length; } else { if (((localIndex) && (!((filterFunction == null))))){ if (_local3 == localIndex.length){ _local3 = list.length; } else { _local3 = list.getItemIndex(localIndex[_arg2]); }; }; }; list.addItemAt(_arg1, _local3); } public function itemUpdated(_arg1:Object, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ list.itemUpdated(_arg1, _arg2, _arg3, _arg4); } private function populateLocalIndex():void{ if (list){ localIndex = list.toArray(); } else { localIndex = []; }; } private function handlePropertyChangeEvents(_arg1:Array):void{ var _local3:Array; var _local4:Object; var _local5:int; var _local6:Array; var _local7:int; var _local8:PropertyChangeEvent; var _local9:Object; var _local10:Boolean; var _local11:int; var _local12:int; var _local13:CollectionEvent; var _local2:Array = _arg1; if (((sort) || (!((filterFunction == null))))){ _local3 = []; _local5 = 0; while (_local5 < _arg1.length) { _local8 = _arg1[_local5]; if (_local8.target){ _local9 = _local8.target; _local10 = !((_local8.target == _local8.source)); } else { _local9 = _local8.source; _local10 = false; }; _local11 = 0; while (_local11 < _local3.length) { if (_local3[_local11].item == _local9){ break; }; _local11++; }; if (_local11 < _local3.length){ _local4 = _local3[_local11]; } else { _local4 = {item:_local9, move:_local10, event:_local8}; _local3.push(_local4); }; _local4.move = ((((((_local4.move) || (filterFunction))) || (!(_local8.property)))) || (((sort) && (sort.propertyAffectsSort(String(_local8.property)))))); _local5++; }; _local2 = []; _local5 = 0; while (_local5 < _local3.length) { _local4 = _local3[_local5]; if (_local4.move){ moveItemInView(_local4.item, _local4.item, _local2); } else { _local2.push(_local4.item); }; _local5++; }; _local6 = []; _local7 = 0; while (_local7 < _local2.length) { _local12 = 0; while (_local12 < _local3.length) { if (_local2[_local7] == _local3[_local12].item){ _local6.push(_local3[_local12].event); }; _local12++; }; _local7++; }; _local2 = _local6; }; if (_local2.length > 0){ _local13 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local13.kind = CollectionEventKind.UPDATE; _local13.items = _local2; dispatchEvent(_local13); }; } public function set sort(_arg1:Sort):void{ _sort = _arg1; dispatchEvent(new Event("sortChanged")); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextValue(_arg1:int){ return (getItemAt((_arg1 - 1))); } public function setItemAt(_arg1:Object, _arg2:int):Object{ var _local4:String; var _local5:Object; if ((((((_arg2 < 0)) || (!(list)))) || ((_arg2 >= length)))){ _local4 = resourceManager.getString("collections", "outOfBounds", [_arg2]); throw (new RangeError(_local4)); }; var _local3:int = _arg2; if (localIndex){ if (_arg2 > localIndex.length){ _local3 = list.length; } else { _local5 = localIndex[_arg2]; _local3 = list.getItemIndex(_local5); }; }; return (list.setItemAt(_arg1, _local3)); } mx_internal function getBookmark(_arg1:int):ListCollectionViewBookmark{ var value:Object; var message:String; var index = _arg1; if ((((index < 0)) || ((index > length)))){ message = resourceManager.getString("collections", "invalidIndex", [index]); throw (new CollectionViewError(message)); }; try { value = getItemAt(index); } catch(e:Error) { value = null; }; return (new ListCollectionViewBookmark(value, this, revision, index)); } private function addItemsToView(_arg1:Array, _arg2:int, _arg3:Boolean=true):int{ var _local7:int; var _local8:int; var _local9:Object; var _local10:String; var _local11:CollectionEvent; var _local4:Array = (localIndex) ? [] : _arg1; var _local5:int = _arg2; var _local6:Boolean; if (localIndex){ _local7 = _arg2; _local8 = 0; while (_local8 < _arg1.length) { _local9 = _arg1[_local8]; if ((((filterFunction == null)) || (filterFunction(_local9)))){ if (sort){ _local7 = findItem(_local9, Sort.ANY_INDEX_MODE, true); if (_local6){ _local5 = _local7; _local6 = false; }; } else { _local7 = getFilteredItemIndex(_local9); if (_local6){ _local5 = _local7; _local6 = false; }; }; if (((((sort) && (sort.unique))) && ((sort.compareFunction(_local9, localIndex[_local7]) == 0)))){ _local10 = resourceManager.getString("collections", "incorrectAddition"); throw (new CollectionViewError(_local10)); }; var _temp1 = _local7; _local7 = (_local7 + 1); localIndex.splice(_temp1, 0, _local9); _local4.push(_local9); } else { _local5 = -1; }; _local8++; }; }; if (((localIndex) && ((_local4.length > 1)))){ _local5 = -1; }; if (((_arg3) && ((_local4.length > 0)))){ _local11 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local11.kind = CollectionEventKind.ADD; _local11.location = _local5; _local11.items = _local4; dispatchEvent(_local11); }; return (_local5); } public function dispatchEvent(_arg1:Event):Boolean{ return (eventDispatcher.dispatchEvent(_arg1)); } public function set list(_arg1:IList):void{ var _local2:Boolean; var _local3:Boolean; if (_list != _arg1){ if (_list){ _list.removeEventListener(CollectionEvent.COLLECTION_CHANGE, listChangeHandler); _local2 = (_list.length > 0); }; _list = _arg1; if (_list){ _list.addEventListener(CollectionEvent.COLLECTION_CHANGE, listChangeHandler, false, 0, true); _local3 = (_list.length > 0); }; if (((_local2) || (_local3))){ reset(); }; dispatchEvent(new Event("listChanged")); }; } mx_internal function getBookmarkIndex(_arg1:CursorBookmark):int{ var _local3:String; if (((!((_arg1 is ListCollectionViewBookmark))) || (!((ListCollectionViewBookmark(_arg1).view == this))))){ _local3 = resourceManager.getString("collections", "bookmarkNotFound"); throw (new CollectionViewError(_local3)); }; var _local2:ListCollectionViewBookmark = ListCollectionViewBookmark(_arg1); if (_local2.viewRevision != revision){ if ((((((_local2.index < 0)) || ((_local2.index >= length)))) || (!((getItemAt(_local2.index) == _local2.value))))){ _local2.index = getItemIndex(_local2.value); }; _local2.viewRevision = revision; }; return (_local2.index); } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function getItemIndex(_arg1:Object):int{ var _local2:int; var _local3:int; var _local4:int; var _local5:int; if (sort){ _local3 = sort.findItem(localIndex, _arg1, Sort.FIRST_INDEX_MODE); if (_local3 == -1){ return (-1); }; _local4 = sort.findItem(localIndex, _arg1, Sort.LAST_INDEX_MODE); _local2 = _local3; while (_local2 <= _local4) { if (localIndex[_local2] == _arg1){ return (_local2); }; _local2++; }; return (-1); } else { if (filterFunction != null){ _local5 = localIndex.length; _local2 = 0; while (_local2 < _local5) { if (localIndex[_local2] == _arg1){ return (_local2); }; _local2++; }; return (-1); }; }; return (list.getItemIndex(_arg1)); } public function removeItemAt(_arg1:int):Object{ var _local3:String; var _local4:Object; if ((((_arg1 < 0)) || ((_arg1 >= length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg1]); throw (new RangeError(_local3)); }; var _local2:int = _arg1; if (localIndex){ _local4 = localIndex[_arg1]; _local2 = list.getItemIndex(_local4); }; return (list.removeItemAt(_local2)); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ var n:Number; var message:String; var name = _arg1; if ((name is QName)){ name = name.localName; }; var index = -1; try { n = parseInt(String(name)); if (!isNaN(n)){ index = int(n); }; } catch(e:Error) { }; if (index == -1){ message = resourceManager.getString("collections", "unknownProperty", [name]); throw (new Error(message)); }; return (getItemAt(index)); } public function enableAutoUpdate():void{ if (autoUpdateCounter > 0){ autoUpdateCounter--; if (autoUpdateCounter == 0){ handlePendingUpdates(); }; }; } mx_internal function reset():void{ var _local1:CollectionEvent; internalRefresh(false); if (dispatchResetEvent){ _local1 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local1.kind = CollectionEventKind.RESET; dispatchEvent(_local1); }; } public function toArray():Array{ var _local1:Array; if (localIndex){ _local1 = localIndex.concat(); } else { _local1 = list.toArray(); }; return (_local1); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function callProperty(_arg1, ... _args){ return (null); } public function initialized(_arg1:Object, _arg2:String):void{ refresh(); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var n:Number; var message:String; var name = _arg1; var value = _arg2; if ((name is QName)){ name = name.localName; }; var index = -1; try { n = parseInt(String(name)); if (!isNaN(n)){ index = int(n); }; } catch(e:Error) { }; if (index == -1){ message = resourceManager.getString("collections", "unknownProperty", [name]); throw (new Error(message)); }; setItemAt(value, index); } public function addItem(_arg1:Object):void{ addItemAt(_arg1, length); } private function internalRefresh(_arg1:Boolean):Boolean{ var tmp:Array; var len:int; var i:int; var item:Object; var refreshEvent:CollectionEvent; var dispatch = _arg1; if (((sort) || (!((filterFunction == null))))){ try { populateLocalIndex(); } catch(pending:ItemPendingError) { pending.addResponder(new ItemResponder(function (_arg1:Object, _arg2:Object=null):void{ internalRefresh(dispatch); }, function (_arg1:Object, _arg2:Object=null):void{ })); return (false); }; if (filterFunction != null){ tmp = []; len = localIndex.length; i = 0; while (i < len) { item = localIndex[i]; if (filterFunction(item)){ tmp.push(item); }; i = (i + 1); }; localIndex = tmp; }; if (sort){ sort.sort(localIndex); dispatch = true; }; } else { if (localIndex){ localIndex = null; }; }; revision++; pendingUpdates = null; if (dispatch){ refreshEvent = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); refreshEvent.kind = CollectionEventKind.REFRESH; dispatchEvent(refreshEvent); }; return (true); } public function set filterFunction(_arg1:Function):void{ _filterFunction = _arg1; dispatchEvent(new Event("filterFunctionChanged")); } public function refresh():Boolean{ return (internalRefresh(true)); } public function get filterFunction():Function{ return (_filterFunction); } public function createCursor():IViewCursor{ return (new ListCollectionViewCursor(this)); } public function hasEventListener(_arg1:String):Boolean{ return (eventDispatcher.hasEventListener(_arg1)); } public function get length():int{ if (localIndex){ return (localIndex.length); }; if (list){ return (list.length); }; return (0); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{ return (((_arg1 < length)) ? (_arg1 + 1) : 0); } public function disableAutoUpdate():void{ autoUpdateCounter++; } public function toString():String{ if (localIndex){ return (ObjectUtil.toString(localIndex)); }; if (((list) && (Object(list).toString))){ return (Object(list).toString()); }; return (getQualifiedClassName(this)); } private function listChangeHandler(_arg1:CollectionEvent):void{ if (autoUpdateCounter > 0){ if (!pendingUpdates){ pendingUpdates = []; }; pendingUpdates.push(_arg1); } else { switch (_arg1.kind){ case CollectionEventKind.ADD: addItemsToView(_arg1.items, _arg1.location); break; case CollectionEventKind.RESET: reset(); break; case CollectionEventKind.REMOVE: removeItemsFromView(_arg1.items, _arg1.location); break; case CollectionEventKind.REPLACE: replaceItemsInView(_arg1.items, _arg1.location); break; case CollectionEventKind.UPDATE: handlePropertyChangeEvents(_arg1.items); break; default: dispatchEvent(_arg1); }; }; } } }//package mx.collections import flash.events.*; import mx.events.*; import mx.resources.*; import mx.collections.errors.*; class ListCollectionViewBookmark extends CursorBookmark { mx_internal var viewRevision:int; mx_internal var index:int; mx_internal var view:ListCollectionView; private function ListCollectionViewBookmark(_arg1:Object, _arg2:ListCollectionView, _arg3:int, _arg4:int){ super(_arg1); this.view = _arg2; this.viewRevision = _arg3; this.index = _arg4; } override public function getViewIndex():int{ return (view.getBookmarkIndex(this)); } } class ListCollectionViewCursor extends EventDispatcher implements IViewCursor { private var _view:ListCollectionView; private var invalid:Boolean; private var resourceManager:IResourceManager; private var currentIndex:int; private var currentValue:Object; private static const BEFORE_FIRST_INDEX:int = -1; private static const AFTER_LAST_INDEX:int = -2; private function ListCollectionViewCursor(_arg1:ListCollectionView){ var view = _arg1; resourceManager = ResourceManager.getInstance(); super(); _view = view; _view.addEventListener(CollectionEvent.COLLECTION_CHANGE, collectionEventHandler, false, 0, true); currentIndex = ((view.length > 0)) ? 0 : AFTER_LAST_INDEX; if (currentIndex == 0){ try { setCurrent(view.getItemAt(0), false); } catch(e:ItemPendingError) { currentIndex = BEFORE_FIRST_INDEX; setCurrent(null, false); }; }; } public function findAny(_arg1:Object):Boolean{ var index:int; var values = _arg1; checkValid(); var lcView:ListCollectionView = ListCollectionView(view); try { index = lcView.findItem(values, Sort.ANY_INDEX_MODE); } catch(e:SortError) { throw (new CursorError(e.message)); }; if (index > -1){ currentIndex = index; setCurrent(lcView.getItemAt(currentIndex)); }; return ((index > -1)); } public function remove():Object{ var oldIndex:int; var message:String; if (((beforeFirst) || (afterLast))){ message = resourceManager.getString("collections", "invalidRemove"); throw (new CursorError(message)); }; oldIndex = currentIndex; currentIndex++; if (currentIndex >= view.length){ currentIndex = AFTER_LAST_INDEX; setCurrent(null); } else { try { setCurrent(ListCollectionView(view).getItemAt(currentIndex)); } catch(e:ItemPendingError) { setCurrent(null, false); ListCollectionView(view).removeItemAt(oldIndex); throw (e); }; }; var removed:Object = ListCollectionView(view).removeItemAt(oldIndex); return (removed); } private function setCurrent(_arg1:Object, _arg2:Boolean=true):void{ currentValue = _arg1; if (_arg2){ dispatchEvent(new FlexEvent(FlexEvent.CURSOR_UPDATE)); }; } public function seek(_arg1:CursorBookmark, _arg2:int=0, _arg3:int=0):void{ var message:String; var bookmark = _arg1; var offset = _arg2; var prefetch = _arg3; checkValid(); if (view.length == 0){ currentIndex = AFTER_LAST_INDEX; setCurrent(null, false); return; }; var newIndex:int = currentIndex; if (bookmark == CursorBookmark.FIRST){ newIndex = 0; } else { if (bookmark == CursorBookmark.LAST){ newIndex = (view.length - 1); } else { if (bookmark != CursorBookmark.CURRENT){ try { newIndex = ListCollectionView(view).getBookmarkIndex(bookmark); if (newIndex < 0){ setCurrent(null); message = resourceManager.getString("collections", "bookmarkInvalid"); throw (new CursorError(message)); }; } catch(bmError:CollectionViewError) { message = resourceManager.getString("collections", "bookmarkInvalid"); throw (new CursorError(message)); }; }; }; }; newIndex = (newIndex + offset); var newCurrent:Object; if (newIndex >= view.length){ currentIndex = AFTER_LAST_INDEX; } else { if (newIndex < 0){ currentIndex = BEFORE_FIRST_INDEX; } else { newCurrent = ListCollectionView(view).getItemAt(newIndex, prefetch); currentIndex = newIndex; }; }; setCurrent(newCurrent); } public function insert(_arg1:Object):void{ var _local2:int; var _local3:String; if (afterLast){ _local2 = view.length; } else { if (beforeFirst){ if (view.length > 0){ _local3 = resourceManager.getString("collections", "invalidInsert"); throw (new CursorError(_local3)); }; _local2 = 0; } else { _local2 = currentIndex; }; }; ListCollectionView(view).addItemAt(_arg1, _local2); } public function get afterLast():Boolean{ checkValid(); return ((((currentIndex == AFTER_LAST_INDEX)) || ((view.length == 0)))); } private function checkValid():void{ var _local1:String; if (invalid){ _local1 = resourceManager.getString("collections", "invalidCursor"); throw (new CursorError(_local1)); }; } private function collectionEventHandler(_arg1:CollectionEvent):void{ var event = _arg1; switch (event.kind){ case CollectionEventKind.ADD: if (event.location <= currentIndex){ currentIndex = (currentIndex + event.items.length); }; break; case CollectionEventKind.REMOVE: if (event.location < currentIndex){ currentIndex = (currentIndex - event.items.length); } else { if (event.location == currentIndex){ if (currentIndex < view.length){ try { setCurrent(ListCollectionView(view).getItemAt(currentIndex)); } catch(error:ItemPendingError) { setCurrent(null, false); }; } else { currentIndex = AFTER_LAST_INDEX; setCurrent(null); }; }; }; break; case CollectionEventKind.MOVE: if (event.oldLocation == currentIndex){ currentIndex = event.location; } else { if (event.oldLocation < currentIndex){ currentIndex = (currentIndex - event.items.length); }; if (event.location <= currentIndex){ currentIndex = (currentIndex + event.items.length); }; }; break; case CollectionEventKind.REFRESH: if (!((beforeFirst) || (afterLast))){ currentIndex = ListCollectionView(view).getItemIndex(currentValue); if (currentIndex == -1){ setCurrent(null); }; }; break; case CollectionEventKind.REPLACE: if (event.location == currentIndex){ try { setCurrent(ListCollectionView(view).getItemAt(currentIndex)); } catch(error:ItemPendingError) { setCurrent(null, false); }; }; break; case CollectionEventKind.RESET: currentIndex = BEFORE_FIRST_INDEX; setCurrent(null); break; }; } public function moveNext():Boolean{ if (afterLast){ return (false); }; var _local1:int = (beforeFirst) ? 0 : (currentIndex + 1); if (_local1 >= view.length){ _local1 = AFTER_LAST_INDEX; setCurrent(null); } else { setCurrent(ListCollectionView(view).getItemAt(_local1)); }; currentIndex = _local1; return (!(afterLast)); } public function get view():ICollectionView{ checkValid(); return (_view); } public function movePrevious():Boolean{ if (beforeFirst){ return (false); }; var _local1:int = (afterLast) ? (view.length - 1) : (currentIndex - 1); if (_local1 == -1){ _local1 = BEFORE_FIRST_INDEX; setCurrent(null); } else { setCurrent(ListCollectionView(view).getItemAt(_local1)); }; currentIndex = _local1; return (!(beforeFirst)); } public function findLast(_arg1:Object):Boolean{ var index:int; var values = _arg1; checkValid(); var lcView:ListCollectionView = ListCollectionView(view); try { index = lcView.findItem(values, Sort.LAST_INDEX_MODE); } catch(sortError:SortError) { throw (new CursorError(sortError.message)); }; if (index > -1){ currentIndex = index; setCurrent(lcView.getItemAt(currentIndex)); }; return ((index > -1)); } public function get beforeFirst():Boolean{ checkValid(); return ((((currentIndex == BEFORE_FIRST_INDEX)) || ((view.length == 0)))); } public function get bookmark():CursorBookmark{ checkValid(); if ((((view.length == 0)) || (beforeFirst))){ return (CursorBookmark.FIRST); }; if (afterLast){ return (CursorBookmark.LAST); }; return (ListCollectionView(view).getBookmark(currentIndex)); } public function findFirst(_arg1:Object):Boolean{ var index:int; var values = _arg1; checkValid(); var lcView:ListCollectionView = ListCollectionView(view); try { index = lcView.findItem(values, Sort.FIRST_INDEX_MODE); } catch(sortError:SortError) { throw (new CursorError(sortError.message)); }; if (index > -1){ currentIndex = index; setCurrent(lcView.getItemAt(currentIndex)); }; return ((index > -1)); } public function get current():Object{ checkValid(); return (currentValue); } }
Section 85
//ModifiedCollectionView (mx.collections.ModifiedCollectionView) package mx.collections { import flash.events.*; import mx.events.*; import mx.resources.*; import flash.utils.*; import mx.collections.errors.*; public class ModifiedCollectionView implements ICollectionView { private var addedItems:Dictionary; private var _showPreserved:Boolean;// = false private var list:ICollectionView; private var deltaLength:int;// = 0 private var resourceManager:IResourceManager; private var removedItems:Dictionary; private var itemWrappersByIndex:Array; private var replacementItems:Dictionary; private var deltas:Array; private var replacedItems:Dictionary; private var itemWrappersByCollectionMod:Dictionary; public static const REPLACEMENT:String = "replacement"; public static const REPLACED:String = "replaced"; public static const REMOVED:String = "removed"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const ADDED:String = "added"; public function ModifiedCollectionView(_arg1:ICollectionView){ resourceManager = ResourceManager.getInstance(); deltas = []; removedItems = new Dictionary(true); addedItems = new Dictionary(true); replacedItems = new Dictionary(true); replacementItems = new Dictionary(true); itemWrappersByIndex = []; itemWrappersByCollectionMod = new Dictionary(true); super(); this.list = _arg1; } mx_internal function getBookmarkIndex(_arg1:CursorBookmark):int{ var _local3:String; if (((!((_arg1 is ModifiedCollectionViewBookmark))) || (!((ModifiedCollectionViewBookmark(_arg1).view == this))))){ _local3 = resourceManager.getString("collections", "bookmarkNotFound"); throw (new CollectionViewError(_local3)); }; var _local2:ModifiedCollectionViewBookmark = ModifiedCollectionViewBookmark(_arg1); return (_local2.index); } public function willTrigger(_arg1:String):Boolean{ return (false); } private function removeModification(_arg1:CollectionModification):Boolean{ var _local2:int; while (_local2 < deltas.length) { if (deltas[_local2] == _arg1){ deltas.splice(_local2, 1); return (true); }; _local2++; }; return (false); } mx_internal function getWrappedItemUsingCursor(_arg1:ModifiedCollectionViewCursor, _arg2:int):Object{ var _local6:CollectionModification; var _local9:Object; var _local3:int = _arg2; var _local4:Object; var _local5:CollectionModification; var _local7:Boolean; var _local8:int; while (_local8 < deltas.length) { _local6 = deltas[_local8]; if (_local3 < _local6.index){ break; }; if (_local6.modificationType == CollectionModification.REPLACE){ if ((((((_local3 == _local6.index)) && (_local6.showOldReplace))) && (_showPreserved))){ _local5 = _local6; break; }; if ((((((((_local3 == (_local6.index + 1))) && (_local6.showOldReplace))) && (_local6.showNewReplace))) && (_showPreserved))){ _local3--; _local7 = true; break; }; if ((((_local3 == _local6.index)) && (((((!(_local6.showOldReplace)) && (_local6.showNewReplace))) || (!(_showPreserved)))))){ _local7 = true; break; }; _local3 = (_local3 - _local6.modCount); } else { if (isActive(_local6)){ if ((((_local3 == _local6.index)) && (_local6.isRemove))){ _local5 = _local6; break; } else { if (_local3 >= _local6.index){ _local3 = (_local3 - _local6.modCount); }; }; }; }; _local8++; }; if (_local5){ _local4 = _local5.item; } else { _arg1.internalCursor.seek(CursorBookmark.CURRENT, (_local3 - _arg1.internalIndex)); _local4 = _arg1.internalCursor.current; _arg1.internalIndex = _local3; }; if (((((_local6) && ((_local3 == _local6.index)))) && ((_local6.modificationType == CollectionModification.ADD)))){ _local9 = getUniqueItemWrapper(_local4, _local6, _local3); } else { _local9 = getUniqueItemWrapper(_local4, _local5, _local3); }; return (_local9); } public function contains(_arg1:Object):Boolean{ return (false); } private function integrateReplacedElements(_arg1:CollectionEvent, _arg2:int, _arg3:int):void{ var _local9:Object; var _local10:Object; var _local11:CollectionModification; var _local12:CollectionModification; var _local4:int; var _local5:int; var _local6:Boolean; var _local7:int = _arg1.items.length; var _local8:int; while ((((_local4 < deltas.length)) && ((_local5 < _local7)))) { _local9 = PropertyChangeEvent(_arg1.items[_local5]).oldValue; _local10 = PropertyChangeEvent(_arg1.items[_local5]).newValue; _local11 = CollectionModification(deltas[_local4]); _local12 = new CollectionModification((_arg1.location + _local5), _local9, CollectionModification.REPLACE); if (((((_local11.isRemove) && ((_local11.index <= _local12.index)))) || (((!(_local11.isRemove)) && ((_local11.index < _local12.index)))))){ _local4++; } else { if ((((((_local11.modificationType == CollectionModification.ADD)) || ((_local11.modificationType == CollectionModification.REPLACE)))) && ((_local11.index == _local12.index)))){ _local4++; _local5++; } else { deltas.splice((_local4 + _local5), 0, _local12); replacedItems[getUniqueItemWrapper(_local9, _local12, (_arg1.location + _local5))] = _local12; replacementItems[getUniqueItemWrapper(_local10, _local12, (_arg1.location + _local5), true)] = _local12; _local5++; _local4++; }; }; }; while (_local5 < _local7) { _local9 = PropertyChangeEvent(_arg1.items[_local5]).oldValue; _local10 = PropertyChangeEvent(_arg1.items[_local5]).newValue; _local12 = new CollectionModification((_arg1.location + _local5), _local9, CollectionModification.REPLACE); deltas.push(_local12); replacedItems[getUniqueItemWrapper(_local9, _local12, (_arg1.location + _local5))] = _local12; replacementItems[getUniqueItemWrapper(_local10, _local12, (_arg1.location + _local5), true)] = _local12; _local5++; }; } mx_internal function getBookmark(_arg1:ModifiedCollectionViewCursor):ModifiedCollectionViewBookmark{ var _local4:String; var _local2:int = _arg1.currentIndex; if ((((_local2 < 0)) || ((_local2 > length)))){ _local4 = resourceManager.getString("collections", "invalidIndex", [_local2]); throw (new CollectionViewError(_local4)); }; var _local3:Object = _arg1.current; return (new ModifiedCollectionViewBookmark(_local3, this, 0, _local2, _arg1.internalCursor.bookmark, _arg1.internalIndex)); } public function get sort():Sort{ return (null); } public function itemUpdated(_arg1:Object, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ } public function processCollectionEvent(_arg1:CollectionEvent, _arg2:int, _arg3:int):void{ switch (_arg1.kind){ case CollectionEventKind.ADD: integrateAddedElements(_arg1, _arg2, _arg3); break; case CollectionEventKind.REMOVE: integrateRemovedElements(_arg1, _arg2, _arg3); break; case CollectionEventKind.REPLACE: integrateReplacedElements(_arg1, _arg2, _arg3); break; }; } public function get showPreservedState():Boolean{ return (_showPreserved); } public function getSemantics(_arg1:ItemWrapper):String{ if (removedItems[_arg1]){ return (ModifiedCollectionView.REMOVED); }; if (addedItems[_arg1]){ return (ModifiedCollectionView.ADDED); }; if (replacedItems[_arg1]){ return (ModifiedCollectionView.REPLACED); }; if (replacementItems[_arg1]){ return (ModifiedCollectionView.REPLACEMENT); }; return (null); } private function getUniqueItemWrapper(_arg1:Object, _arg2:CollectionModification, _arg3:int, _arg4:Boolean=false):Object{ if (((_arg2) && (((_arg2.isRemove) || ((((_arg2.modificationType == CollectionModification.REPLACE)) && (!(_arg4)))))))){ if (!itemWrappersByCollectionMod[_arg2]){ itemWrappersByCollectionMod[_arg2] = new ItemWrapper(_arg1); }; return (itemWrappersByCollectionMod[_arg2]); }; if (((_arg2) && ((_arg2.modificationType == CollectionModification.ADD)))){ _arg3 = _arg2.index; }; if (!itemWrappersByIndex[_arg3]){ itemWrappersByIndex[_arg3] = new ItemWrapper(_arg1); }; return (itemWrappersByIndex[_arg3]); } public function enableAutoUpdate():void{ } public function set sort(_arg1:Sort):void{ } public function removeItem(_arg1:ItemWrapper):void{ var _local2:CollectionModification = (removedItems[_arg1] as CollectionModification); if (!_local2){ _local2 = (replacedItems[_arg1] as CollectionModification); if (_local2){ delete replacedItems[_arg1]; _local2.stopShowingReplacedValue(); deltaLength--; if (_local2.modCount == 0){ removeModification(_local2); }; }; } else { if (removeModification(_local2)){ delete removedItems[_arg1]; deltaLength--; }; }; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ } private function integrateRemovedElements(_arg1:CollectionEvent, _arg2:int, _arg3:int):void{ var _local9:CollectionModification; var _local10:CollectionModification; var _local4:int; var _local5:int; var _local6:int; var _local7:int = _arg1.items.length; var _local8:int; while ((((_local4 < deltas.length)) && ((_local5 < _local7)))) { _local9 = CollectionModification(deltas[_local4]); _local10 = new CollectionModification(_arg1.location, _arg1.items[_local5], CollectionModification.REMOVE); removedItems[getUniqueItemWrapper(_arg1.items[_local5], _local10, 0)] = _local10; if (_local8 != 0){ _local9.index = (_local9.index + _local8); }; if (((((_local9.isRemove) && ((_local9.index <= _local10.index)))) || (((!(_local9.isRemove)) && ((_local9.index < _local10.index)))))){ _local4++; continue; } else { if (((!(_local9.isRemove)) && ((_local9.index == _local10.index)))){ deltas.splice((_local4 + _local5), 1); } else { deltas.splice((_local4 + _local5), 0, _local10); _local4++; }; }; _local8--; _local5++; }; while (_local4 < deltas.length) { var _temp1 = _local4; _local4 = (_local4 + 1); _local9 = CollectionModification(deltas[_temp1]); CollectionModification(deltas[_temp1]).index = (_local9.index + _local8); }; while (_local5 < _local7) { _local10 = new CollectionModification(_arg1.location, _arg1.items[_local5], CollectionModification.REMOVE); deltas.push(_local10); removedItems[getUniqueItemWrapper(_arg1.items[_local5], _local10, 0)] = _local10; _local5++; }; deltaLength = (deltaLength + (_arg1.items.length - _local6)); } public function dispatchEvent(_arg1:Event):Boolean{ return (false); } private function isActive(_arg1:CollectionModification):Boolean{ return (_showPreserved); } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ } public function refresh():Boolean{ return (false); } public function addItem(_arg1:ItemWrapper):void{ var _local2:CollectionModification = (addedItems[_arg1] as CollectionModification); if (!_local2){ _local2 = (replacementItems[_arg1] as CollectionModification); if (_local2){ _local2.startShowingReplacementValue(); deltaLength++; if (_local2.modCount == 0){ removeModification(_local2); }; }; } else { if (removeModification(_local2)){ deltaLength++; }; }; } public function get length():int{ return ((list.length + (_showPreserved) ? deltaLength : 0)); } public function set filterFunction(_arg1:Function):void{ } public function set showPreservedState(_arg1:Boolean):void{ _showPreserved = _arg1; } public function createCursor():IViewCursor{ var _local1:IViewCursor = list.createCursor(); var _local2:Object = _local1.current; return (new ModifiedCollectionViewCursor(this, _local1, _local2)); } private function integrateAddedElements(_arg1:CollectionEvent, _arg2:int, _arg3:int):void{ var _local9:CollectionModification; var _local10:CollectionModification; var _local4:int; var _local5:int; var _local6:Boolean; var _local7:int = _arg1.items.length; var _local8:int; while ((((_local4 < deltas.length)) && ((_local5 < _local7)))) { _local9 = CollectionModification(deltas[_local4]); _local10 = new CollectionModification((_arg1.location + _local5), null, CollectionModification.ADD); addedItems[getUniqueItemWrapper(_arg1.items[_local5], _local10, 0)] = _local10; if (((((_local9.isRemove) && ((_local9.index <= _local10.index)))) || (((!(_local9.isRemove)) && ((_local9.index < _local10.index)))))){ _local4++; } else { deltas.splice((_local4 + _local5), 0, _local10); _local8++; _local5++; _local4++; }; }; while (_local4 < deltas.length) { var _temp1 = _local4; _local4 = (_local4 + 1); _local9 = CollectionModification(deltas[_temp1]); CollectionModification(deltas[_temp1]).index = (_local9.index + _local8); }; while (_local5 < _local7) { _local10 = new CollectionModification((_arg1.location + _local5), null, CollectionModification.ADD); deltas.push(_local10); addedItems[getUniqueItemWrapper(_arg1.items[_local5], _local10, 0)] = _local10; _local5++; }; deltaLength = (deltaLength - _arg1.items.length); } public function disableAutoUpdate():void{ } public function hasEventListener(_arg1:String):Boolean{ return (false); } public function get filterFunction():Function{ return (null); } } }//package mx.collections import flash.events.*; import mx.events.*; import mx.resources.*; import mx.collections.errors.*; class ModifiedCollectionViewBookmark extends CursorBookmark { mx_internal var viewRevision:int; mx_internal var index:int; mx_internal var internalBookmark:CursorBookmark; mx_internal var view:ModifiedCollectionView; mx_internal var internalIndex:int; private function ModifiedCollectionViewBookmark(_arg1:Object, _arg2:ModifiedCollectionView, _arg3:int, _arg4:int, _arg5:CursorBookmark, _arg6:int){ super(_arg1); this.view = _arg2; this.viewRevision = _arg3; this.index = _arg4; this.internalBookmark = _arg5; this.internalIndex = _arg6; } override public function getViewIndex():int{ return (view.getBookmarkIndex(this)); } } class ModifiedCollectionViewCursor extends EventDispatcher implements IViewCursor { private var _view:ModifiedCollectionView; private var resourceManager:IResourceManager; public var internalIndex:int; mx_internal var currentIndex:int; public var internalCursor:IViewCursor; private var invalid:Boolean; private var currentValue:Object; private static const BEFORE_FIRST_INDEX:int = -1; private static const AFTER_LAST_INDEX:int = -2; private function ModifiedCollectionViewCursor(_arg1:ModifiedCollectionView, _arg2:IViewCursor, _arg3:Object){ var view = _arg1; var cursor = _arg2; var current = _arg3; resourceManager = ResourceManager.getInstance(); super(); _view = view; internalCursor = cursor; if (((cursor.beforeFirst) && (!(current)))){ internalIndex = BEFORE_FIRST_INDEX; } else { if (((cursor.afterLast) && (!(current)))){ internalIndex = AFTER_LAST_INDEX; } else { internalIndex = 0; }; }; currentIndex = ((view.length > 0)) ? 0 : AFTER_LAST_INDEX; if (currentIndex == 0){ try { setCurrent(current, false); } catch(e:ItemPendingError) { currentIndex = BEFORE_FIRST_INDEX; setCurrent(null, false); }; }; } public function findAny(_arg1:Object):Boolean{ return (false); } public function findFirst(_arg1:Object):Boolean{ return (false); } public function seek(_arg1:CursorBookmark, _arg2:int=0, _arg3:int=0):void{ var message:String; var mcvBookmark:ModifiedCollectionViewBookmark; var bookmark = _arg1; var offset = _arg2; var prefetch = _arg3; checkValid(); if (view.length == 0){ currentIndex = AFTER_LAST_INDEX; setCurrent(null, false); return; }; var newIndex:int = currentIndex; if (bookmark == CursorBookmark.FIRST){ newIndex = 0; internalIndex = 0; internalCursor.seek(CursorBookmark.FIRST); } else { if (bookmark == CursorBookmark.LAST){ newIndex = (view.length - 1); internalCursor.seek(CursorBookmark.LAST); } else { if (bookmark != CursorBookmark.CURRENT){ try { mcvBookmark = (bookmark as ModifiedCollectionViewBookmark); newIndex = ModifiedCollectionView(view).getBookmarkIndex(bookmark); if (((!(mcvBookmark)) || ((newIndex < 0)))){ setCurrent(null); message = resourceManager.getString("collections", "bookmarkInvalid"); throw (new CursorError(message)); }; internalIndex = mcvBookmark.internalIndex; internalCursor.seek(mcvBookmark.internalBookmark); } catch(bmError:CollectionViewError) { message = resourceManager.getString("collections", "bookmarkInvalid"); throw (new CursorError(message)); }; }; }; }; newIndex = (newIndex + offset); var newCurrent:Object; if (newIndex >= view.length){ currentIndex = AFTER_LAST_INDEX; } else { if (newIndex < 0){ currentIndex = BEFORE_FIRST_INDEX; } else { newCurrent = ModifiedCollectionView(view).getWrappedItemUsingCursor(this, newIndex); currentIndex = newIndex; }; }; setCurrent(newCurrent); } public function insert(_arg1:Object):void{ } public function get afterLast():Boolean{ checkValid(); return ((((currentIndex == AFTER_LAST_INDEX)) || ((view.length == 0)))); } public function remove():Object{ return (null); } private function checkValid():void{ var _local1:String; if (invalid){ _local1 = resourceManager.getString("collections", "invalidCursor"); throw (new CursorError(_local1)); }; } public function get view():ICollectionView{ checkValid(); return (_view); } public function movePrevious():Boolean{ if (beforeFirst){ return (false); }; var _local1:int = (afterLast) ? (view.length - 1) : (currentIndex - 1); if (_local1 == -1){ _local1 = BEFORE_FIRST_INDEX; setCurrent(null); } else { setCurrent(ModifiedCollectionView(view).getWrappedItemUsingCursor(this, _local1)); }; currentIndex = _local1; return (!(beforeFirst)); } public function moveNext():Boolean{ if (afterLast){ return (false); }; var _local1:int = (beforeFirst) ? 0 : (currentIndex + 1); if (_local1 >= view.length){ _local1 = AFTER_LAST_INDEX; setCurrent(null); } else { setCurrent(ModifiedCollectionView(view).getWrappedItemUsingCursor(this, _local1)); }; currentIndex = _local1; return (!(afterLast)); } public function findLast(_arg1:Object):Boolean{ return (false); } public function get beforeFirst():Boolean{ checkValid(); return ((((currentIndex == BEFORE_FIRST_INDEX)) || ((view.length == 0)))); } public function get bookmark():CursorBookmark{ checkValid(); if ((((view.length == 0)) || (beforeFirst))){ return (CursorBookmark.FIRST); }; if (afterLast){ return (CursorBookmark.LAST); }; return (ModifiedCollectionView(view).getBookmark(this)); } public function get current():Object{ checkValid(); return (currentValue); } private function setCurrent(_arg1:Object, _arg2:Boolean=true):void{ currentValue = _arg1; if (_arg2){ dispatchEvent(new FlexEvent(FlexEvent.CURSOR_UPDATE)); }; } } class CollectionModification { public var showOldReplace:Boolean;// = true private var _modCount:int;// = 0 public var showNewReplace:Boolean;// = false public var index:int; public var modificationType:String;// = null public var item:Object;// = null public static const ADD:String = "add"; public static const REPLACE:String = "replace"; public static const REMOVE:String = "remove"; private function CollectionModification(_arg1:int, _arg2:Object, _arg3:String){ this.index = _arg1; this.modificationType = _arg3; if (_arg3 != CollectionModification.ADD){ this.item = _arg2; }; if (_arg3 == CollectionModification.REMOVE){ _modCount = 1; } else { if (_arg3 == CollectionModification.ADD){ _modCount = -1; }; }; } public function startShowingReplacementValue():void{ showNewReplace = true; _modCount++; } public function get modCount():int{ return (_modCount); } public function get isRemove():Boolean{ return ((modificationType == CollectionModification.REMOVE)); } public function stopShowingReplacedValue():void{ showOldReplace = false; _modCount--; } }
Section 86
//Sort (mx.collections.Sort) package mx.collections { import flash.events.*; import mx.resources.*; import mx.utils.*; import mx.collections.errors.*; public class Sort extends EventDispatcher { private var noFieldsDescending:Boolean;// = false private var usingCustomCompareFunction:Boolean; private var defaultEmptyField:SortField; private var _fields:Array; private var _compareFunction:Function; private var _unique:Boolean; private var fieldList:Array; private var resourceManager:IResourceManager; public static const ANY_INDEX_MODE:String = "any"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const LAST_INDEX_MODE:String = "last"; public static const FIRST_INDEX_MODE:String = "first"; public function Sort(){ resourceManager = ResourceManager.getInstance(); fieldList = []; super(); } public function get unique():Boolean{ return (_unique); } public function get compareFunction():Function{ return ((usingCustomCompareFunction) ? _compareFunction : internalCompare); } public function set unique(_arg1:Boolean):void{ _unique = _arg1; } public function sort(_arg1:Array):void{ var fixedCompareFunction:Function; var message:String; var uniqueRet1:Object; var fields:Array; var i:int; var sortArgs:Object; var uniqueRet2:Object; var items = _arg1; if (((!(items)) || ((items.length <= 1)))){ return; }; if (usingCustomCompareFunction){ fixedCompareFunction = function (_arg1:Object, _arg2:Object):int{ return (compareFunction(_arg1, _arg2, _fields)); }; if (unique){ uniqueRet1 = items.sort(fixedCompareFunction, Array.UNIQUESORT); if (uniqueRet1 == 0){ message = resourceManager.getString("collections", "nonUnique"); throw (new SortError(message)); }; } else { items.sort(fixedCompareFunction); }; } else { fields = this.fields; if (((fields) && ((fields.length > 0)))){ sortArgs = initSortFields(items[0], true); if (unique){ if (((sortArgs) && ((fields.length == 1)))){ uniqueRet2 = items.sortOn(sortArgs.fields[0], (sortArgs.options[0] | Array.UNIQUESORT)); } else { uniqueRet2 = items.sort(internalCompare, Array.UNIQUESORT); }; if (uniqueRet2 == 0){ message = resourceManager.getString("collections", "nonUnique"); throw (new SortError(message)); }; } else { if (sortArgs){ items.sortOn(sortArgs.fields, sortArgs.options); } else { items.sort(internalCompare); }; }; } else { items.sort(internalCompare); }; }; } public function propertyAffectsSort(_arg1:String):Boolean{ var _local3:SortField; if (((usingCustomCompareFunction) || (!(fields)))){ return (true); }; var _local2:int; while (_local2 < fields.length) { _local3 = fields[_local2]; if ((((_local3.name == _arg1)) || (_local3.usingCustomCompareFunction))){ return (true); }; _local2++; }; return (false); } private function internalCompare(_arg1:Object, _arg2:Object, _arg3:Array=null):int{ var _local5:int; var _local6:int; var _local7:SortField; var _local4:int; if (!_fields){ _local4 = noFieldsCompare(_arg1, _arg2); } else { _local5 = 0; _local6 = (_arg3) ? _arg3.length : _fields.length; while ((((_local4 == 0)) && ((_local5 < _local6)))) { _local7 = SortField(_fields[_local5]); _local4 = _local7.internalCompare(_arg1, _arg2); _local5++; }; }; return (_local4); } public function reverse():void{ var _local1:int; if (fields){ _local1 = 0; while (_local1 < fields.length) { SortField(fields[_local1]).reverse(); _local1++; }; }; noFieldsDescending = !(noFieldsDescending); } private function noFieldsCompare(_arg1:Object, _arg2:Object, _arg3:Array=null):int{ var message:String; var a = _arg1; var b = _arg2; var fields = _arg3; if (!defaultEmptyField){ defaultEmptyField = new SortField(); try { defaultEmptyField.initCompare(a); } catch(e:SortError) { message = resourceManager.getString("collections", "noComparator", [a]); throw (new SortError(message)); }; }; var result:int = defaultEmptyField.compareFunction(a, b); if (noFieldsDescending){ result = (result * -1); }; return (result); } public function findItem(_arg1:Array, _arg2:Object, _arg3:String, _arg4:Boolean=false, _arg5:Function=null):int{ var compareForFind:Function; var fieldsForCompare:Array; var message:String; var index:int; var fieldName:String; var hadPreviousFieldName:Boolean; var i:int; var hasFieldName:Boolean; var objIndex:int; var match:Boolean; var prevCompare:int; var nextCompare:int; var items = _arg1; var values = _arg2; var mode = _arg3; var returnInsertionIndex = _arg4; var compareFunction = _arg5; if (!items){ message = resourceManager.getString("collections", "noItems"); throw (new SortError(message)); }; if (items.length == 0){ return ((returnInsertionIndex) ? 1 : -1); }; if (compareFunction == null){ compareForFind = this.compareFunction; if (((values) && ((fieldList.length > 0)))){ fieldsForCompare = []; hadPreviousFieldName = true; i = 0; while (i < fieldList.length) { fieldName = fieldList[i]; if (fieldName){ try { hasFieldName = !((values[fieldName] === undefined)); } catch(e:Error) { hasFieldName = false; }; if (hasFieldName){ if (!hadPreviousFieldName){ message = resourceManager.getString("collections", "findCondition", [fieldName]); throw (new SortError(message)); }; fieldsForCompare.push(fieldName); } else { hadPreviousFieldName = false; }; } else { fieldsForCompare.push(null); }; i = (i + 1); }; if (fieldsForCompare.length == 0){ message = resourceManager.getString("collections", "findRestriction"); throw (new SortError(message)); }; try { initSortFields(items[0]); } catch(initSortError:SortError) { }; }; } else { compareForFind = compareFunction; }; var found:Boolean; var objFound:Boolean; index = 0; var lowerBound:int; var upperBound:int = (items.length - 1); var obj:Object; var direction = 1; while (((!(objFound)) && ((lowerBound <= upperBound)))) { index = Math.round(((lowerBound + upperBound) / 2)); obj = items[index]; direction = (fieldsForCompare) ? compareForFind(values, obj, fieldsForCompare) : compareForFind(values, obj); switch (direction){ case -1: upperBound = (index - 1); break; case 0: objFound = true; switch (mode){ case ANY_INDEX_MODE: found = true; break; case FIRST_INDEX_MODE: found = (index == lowerBound); objIndex = (index - 1); match = true; while (((((match) && (!(found)))) && ((objIndex >= lowerBound)))) { obj = items[objIndex]; prevCompare = (fieldsForCompare) ? compareForFind(values, obj, fieldsForCompare) : compareForFind(values, obj); match = (prevCompare == 0); if (((!(match)) || (((match) && ((objIndex == lowerBound)))))){ found = true; index = (objIndex + (match) ? 0 : 1); }; objIndex = (objIndex - 1); }; break; case LAST_INDEX_MODE: found = (index == upperBound); objIndex = (index + 1); match = true; while (((((match) && (!(found)))) && ((objIndex <= upperBound)))) { obj = items[objIndex]; nextCompare = (fieldsForCompare) ? compareForFind(values, obj, fieldsForCompare) : compareForFind(values, obj); match = (nextCompare == 0); if (((!(match)) || (((match) && ((objIndex == upperBound)))))){ found = true; index = (objIndex - (match) ? 0 : 1); }; objIndex = (objIndex + 1); }; break; default: message = resourceManager.getString("collections", "unknownMode"); throw (new SortError(message)); }; break; case 1: lowerBound = (index + 1); break; }; }; if (((!(found)) && (!(returnInsertionIndex)))){ return (-1); }; return (((direction)>0) ? (index + 1) : index); } private function initSortFields(_arg1:Object, _arg2:Boolean=false):Object{ var _local4:int; var _local5:SortField; var _local6:int; var _local3:Object; _local4 = 0; while (_local4 < fields.length) { SortField(fields[_local4]).initCompare(_arg1); _local4++; }; if (_arg2){ _local3 = {fields:[], options:[]}; _local4 = 0; while (_local4 < fields.length) { _local5 = fields[_local4]; _local6 = _local5.getArraySortOnOptions(); if (_local6 == -1){ return (null); }; _local3.fields.push(_local5.name); _local3.options.push(_local6); _local4++; }; }; return (_local3); } public function set fields(_arg1:Array):void{ var _local2:SortField; var _local3:int; _fields = _arg1; fieldList = []; if (_fields){ _local3 = 0; while (_local3 < _fields.length) { _local2 = SortField(_fields[_local3]); fieldList.push(_local2.name); _local3++; }; }; dispatchEvent(new Event("fieldsChanged")); } public function get fields():Array{ return (_fields); } public function set compareFunction(_arg1:Function):void{ _compareFunction = _arg1; usingCustomCompareFunction = !((_compareFunction == null)); } override public function toString():String{ return (ObjectUtil.toString(this)); } } }//package mx.collections
Section 87
//SortField (mx.collections.SortField) package mx.collections { import flash.events.*; import mx.resources.*; import mx.utils.*; import mx.collections.errors.*; public class SortField extends EventDispatcher { private var _caseInsensitive:Boolean; private var _numeric:Object; private var _descending:Boolean; private var _compareFunction:Function; private var _usingCustomCompareFunction:Boolean; private var _name:String; private var resourceManager:IResourceManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function SortField(_arg1:String=null, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Object=null){ resourceManager = ResourceManager.getInstance(); super(); _name = _arg1; _caseInsensitive = _arg2; _descending = _arg3; _numeric = _arg4; _compareFunction = stringCompare; } public function get caseInsensitive():Boolean{ return (_caseInsensitive); } mx_internal function get usingCustomCompareFunction():Boolean{ return (_usingCustomCompareFunction); } public function set caseInsensitive(_arg1:Boolean):void{ if (_arg1 != _caseInsensitive){ _caseInsensitive = _arg1; dispatchEvent(new Event("caseInsensitiveChanged")); }; } public function get name():String{ return (_name); } public function get numeric():Object{ return (_numeric); } public function set name(_arg1:String):void{ _name = _arg1; dispatchEvent(new Event("nameChanged")); } private function numericCompare(_arg1:Object, _arg2:Object):int{ var fa:Number; var fb:Number; var a = _arg1; var b = _arg2; try { fa = ((_name == null)) ? Number(a) : Number(a[_name]); } catch(error:Error) { }; try { fb = ((_name == null)) ? Number(b) : Number(b[_name]); } catch(error:Error) { }; return (ObjectUtil.numericCompare(fa, fb)); } public function set numeric(_arg1:Object):void{ if (_numeric != _arg1){ _numeric = _arg1; dispatchEvent(new Event("numericChanged")); }; } private function stringCompare(_arg1:Object, _arg2:Object):int{ var fa:String; var fb:String; var a = _arg1; var b = _arg2; try { fa = ((_name == null)) ? String(a) : String(a[_name]); } catch(error:Error) { }; try { fb = ((_name == null)) ? String(b) : String(b[_name]); } catch(error:Error) { }; return (ObjectUtil.stringCompare(fa, fb, _caseInsensitive)); } public function get compareFunction():Function{ return (_compareFunction); } public function reverse():void{ descending = !(descending); } mx_internal function getArraySortOnOptions():int{ if (((((((usingCustomCompareFunction) || ((name == null)))) || ((_compareFunction == xmlCompare)))) || ((_compareFunction == dateCompare)))){ return (-1); }; var _local1:int; if (caseInsensitive){ _local1 = (_local1 | Array.CASEINSENSITIVE); }; if (descending){ _local1 = (_local1 | Array.DESCENDING); }; if ((((numeric == true)) || ((_compareFunction == numericCompare)))){ _local1 = (_local1 | Array.NUMERIC); }; return (_local1); } private function dateCompare(_arg1:Object, _arg2:Object):int{ var fa:Date; var fb:Date; var a = _arg1; var b = _arg2; try { fa = ((_name == null)) ? (a as Date) : (a[_name] as Date); } catch(error:Error) { }; try { fb = ((_name == null)) ? (b as Date) : (b[_name] as Date); } catch(error:Error) { }; return (ObjectUtil.dateCompare(fa, fb)); } mx_internal function internalCompare(_arg1:Object, _arg2:Object):int{ var _local3:int = compareFunction(_arg1, _arg2); if (descending){ _local3 = (_local3 * -1); }; return (_local3); } override public function toString():String{ return (ObjectUtil.toString(this)); } private function nullCompare(_arg1:Object, _arg2:Object):int{ var value:Object; var left:Object; var right:Object; var message:String; var a = _arg1; var b = _arg2; var found:Boolean; if ((((a == null)) && ((b == null)))){ return (0); }; if (_name){ try { left = a[_name]; } catch(error:Error) { }; try { right = b[_name]; } catch(error:Error) { }; }; if ((((left == null)) && ((right == null)))){ return (0); }; if (left == null){ left = a; }; if (right == null){ right = b; }; var typeLeft = typeof(left); var typeRight = typeof(right); if ((((typeLeft == "string")) || ((typeRight == "string")))){ found = true; _compareFunction = stringCompare; } else { if ((((typeLeft == "object")) || ((typeRight == "object")))){ if ((((left is Date)) || ((right is Date)))){ found = true; _compareFunction = dateCompare; }; } else { if ((((typeLeft == "xml")) || ((typeRight == "xml")))){ found = true; _compareFunction = xmlCompare; } else { if ((((((((typeLeft == "number")) || ((typeRight == "number")))) || ((typeLeft == "boolean")))) || ((typeRight == "boolean")))){ found = true; _compareFunction = numericCompare; }; }; }; }; if (found){ return (_compareFunction(left, right)); }; message = resourceManager.getString("collections", "noComparatorSortField", [name]); throw (new SortError(message)); } public function set descending(_arg1:Boolean):void{ if (_descending != _arg1){ _descending = _arg1; dispatchEvent(new Event("descendingChanged")); }; } mx_internal function initCompare(_arg1:Object):void{ var value:Object; var typ:String; var test:String; var obj = _arg1; if (!usingCustomCompareFunction){ if (numeric == true){ _compareFunction = numericCompare; } else { if (((caseInsensitive) || ((numeric == false)))){ _compareFunction = stringCompare; } else { if (_name){ try { value = obj[_name]; } catch(error:Error) { }; }; if (value == null){ value = obj; }; typ = typeof(value); switch (typ){ case "string": _compareFunction = stringCompare; break; case "object": if ((value is Date)){ _compareFunction = dateCompare; } else { _compareFunction = stringCompare; try { test = value.toString(); } catch(error2:Error) { }; if (((!(test)) || ((test == "[object Object]")))){ _compareFunction = nullCompare; }; }; break; case "xml": _compareFunction = xmlCompare; break; case "boolean": case "number": _compareFunction = numericCompare; break; }; }; }; }; } public function get descending():Boolean{ return (_descending); } public function set compareFunction(_arg1:Function):void{ _compareFunction = _arg1; _usingCustomCompareFunction = !((_arg1 == null)); } private function xmlCompare(_arg1:Object, _arg2:Object):int{ var sa:String; var sb:String; var a = _arg1; var b = _arg2; try { sa = ((_name == null)) ? a.toString() : a[_name].toString(); } catch(error:Error) { }; try { sb = ((_name == null)) ? b.toString() : b[_name].toString(); } catch(error:Error) { }; if (numeric == true){ return (ObjectUtil.numericCompare(parseFloat(sa), parseFloat(sb))); }; return (ObjectUtil.stringCompare(sa, sb, _caseInsensitive)); } } }//package mx.collections
Section 88
//XMLListAdapter (mx.collections.XMLListAdapter) package mx.collections { import flash.events.*; import mx.events.*; import mx.resources.*; import flash.utils.*; import mx.utils.*; public class XMLListAdapter extends EventDispatcher implements IList, IXMLNotifiable { private var uidCounter:int;// = 0 private var _dispatchEvents:int;// = 0 private var _busy:int;// = 0 private var seedUID:String; private var _source:XMLList; private var resourceManager:IResourceManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function XMLListAdapter(_arg1:XMLList=null){ resourceManager = ResourceManager.getInstance(); super(); disableEvents(); this.source = _arg1; enableEvents(); } public function setItemAt(_arg1:Object, _arg2:int):Object{ var _local4:String; var _local5:CollectionEvent; var _local6:PropertyChangeEvent; if ((((_arg2 < 0)) || ((_arg2 >= length)))){ _local4 = resourceManager.getString("collections", "outOfBounds", [_arg2]); throw (new RangeError(_local4)); }; var _local3:Object = source[_arg2]; source[_arg2] = _arg1; stopTrackUpdates(_local3); startTrackUpdates(_arg1, (seedUID + uidCounter.toString())); uidCounter++; if (_dispatchEvents == 0){ _local5 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local5.kind = CollectionEventKind.REPLACE; _local6 = new PropertyChangeEvent(PropertyChangeEvent.PROPERTY_CHANGE); _local6.kind = PropertyChangeEventKind.UPDATE; _local6.oldValue = _local3; _local6.newValue = _arg1; _local5.location = _arg2; _local5.items.push(_local6); dispatchEvent(_local5); }; return (_local3); } protected function startTrackUpdates(_arg1:Object, _arg2:String):void{ XMLNotifier.getInstance().watchXML(_arg1, this, _arg2); } public function removeAll():void{ var _local1:int; var _local2:CollectionEvent; if (length > 0){ _local1 = (length - 1); while (_local1 >= 0) { stopTrackUpdates(source[_local1]); delete source[_local1]; _local1--; }; if (_dispatchEvents == 0){ _local2 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local2.kind = CollectionEventKind.RESET; dispatchEvent(_local2); }; }; } protected function itemUpdateHandler(_arg1:PropertyChangeEvent):void{ var _local2:CollectionEvent; if (_dispatchEvents == 0){ _local2 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local2.kind = CollectionEventKind.UPDATE; _local2.items.push(_arg1); dispatchEvent(_local2); }; } public function getItemIndex(_arg1:Object):int{ var _local2:int; var _local3:int; var _local4:Object; if ((((_arg1 is XML)) && (source.contains(XML(_arg1))))){ _local2 = length; _local3 = 0; while (_local3 < _local2) { _local4 = source[_local3]; if (_local4 === _arg1){ return (_local3); }; _local3++; }; }; return (-1); } public function removeItemAt(_arg1:int):Object{ var _local3:String; var _local4:CollectionEvent; if ((((_arg1 < 0)) || ((_arg1 >= length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg1]); throw (new RangeError(_local3)); }; setBusy(); var _local2:Object = source[_arg1]; delete source[_arg1]; stopTrackUpdates(_local2); if (_dispatchEvents == 0){ _local4 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local4.kind = CollectionEventKind.REMOVE; _local4.location = _arg1; _local4.items.push(_local2); dispatchEvent(_local4); }; clearBusy(); return (_local2); } public function addItem(_arg1:Object):void{ addItemAt(_arg1, length); } public function get source():XMLList{ return (_source); } public function toArray():Array{ var _local1:XMLList = source; var _local2:int = _local1.length(); var _local3:Array = []; var _local4:int; while (_local4 < _local2) { _local3[_local4] = _local1[_local4]; _local4++; }; return (_local3); } protected function disableEvents():void{ _dispatchEvents--; } public function xmlNotification(_arg1:Object, _arg2:String, _arg3:Object, _arg4:Object, _arg5:Object):void{ var _local6:String; var _local7:Object; var _local8:Object; var _local9:*; var _local10:*; if (_arg1 === _arg3){ switch (_arg2){ case "attributeAdded": _local6 = ("@" + String(_arg4)); _local8 = _arg5; break; case "attributeChanged": _local6 = ("@" + String(_arg4)); _local7 = _arg5; _local8 = _arg3[_local6]; break; case "attributeRemoved": _local6 = ("@" + String(_arg4)); _local7 = _arg5; break; case "nodeAdded": _local6 = _arg4.localName(); _local8 = _arg4; break; case "nodeChanged": _local6 = _arg4.localName(); _local7 = _arg5; _local8 = _arg4; break; case "nodeRemoved": _local6 = _arg4.localName(); _local7 = _arg4; break; case "textSet": _local6 = String(_arg4); _local8 = String(_arg3[_local6]); _local7 = _arg5; break; default: break; }; } else { if (_arg2 == "textSet"){ _local9 = _arg3.parent(); if (_local9 != undefined){ _local10 = _local9.parent(); if (_local10 === _arg1){ _local6 = _local9.name().toString(); _local8 = _arg4; _local7 = _arg5; }; }; }; }; itemUpdated(_arg1, _local6, _local7, _local8); } public function addItemAt(_arg1:Object, _arg2:int):void{ var _local3:String; var _local4:CollectionEvent; if ((((_arg2 < 0)) || ((_arg2 > length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg2]); throw (new RangeError(_local3)); }; if (((!((_arg1 is XML))) && (!((((_arg1 is XMLList)) && ((_arg1.length() == 1))))))){ _local3 = resourceManager.getString("collections", "invalidType"); throw (new Error(_local3)); }; setBusy(); if (_arg2 == 0){ source[0] = ((length > 0)) ? (_arg1 + source[0]) : _arg1; } else { source[(_arg2 - 1)] = (source[(_arg2 - 1)] + _arg1); }; startTrackUpdates(_arg1, (seedUID + uidCounter.toString())); uidCounter++; if (_dispatchEvents == 0){ _local4 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local4.kind = CollectionEventKind.ADD; _local4.items.push(_arg1); _local4.location = _arg2; dispatchEvent(_local4); }; clearBusy(); } public function getItemAt(_arg1:int, _arg2:int=0):Object{ var _local3:String; if ((((_arg1 < 0)) || ((_arg1 >= length)))){ _local3 = resourceManager.getString("collections", "outOfBounds", [_arg1]); throw (new RangeError(_local3)); }; return (source[_arg1]); } override public function toString():String{ if (source){ return (source.toString()); }; return (getQualifiedClassName(this)); } public function get length():int{ return (source.length()); } public function itemUpdated(_arg1:Object, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ var _local5:PropertyChangeEvent = new PropertyChangeEvent(PropertyChangeEvent.PROPERTY_CHANGE); _local5.kind = PropertyChangeEventKind.UPDATE; _local5.source = _arg1; _local5.property = _arg2; _local5.oldValue = _arg3; _local5.newValue = _arg4; itemUpdateHandler(_local5); } protected function stopTrackUpdates(_arg1:Object):void{ XMLNotifier.getInstance().unwatchXML(_arg1, this); } private function clearBusy():void{ _busy++; if (_busy > 0){ _busy = 0; }; } public function set source(_arg1:XMLList):void{ var _local2:int; var _local3:int; var _local4:CollectionEvent; if (((_source) && (_source.length()))){ _local3 = _source.length(); _local2 = 0; while (_local2 < _local3) { stopTrackUpdates(_source[_local2]); _local2++; }; }; _source = (_arg1) ? _arg1 : XMLList(new XMLList("")); seedUID = UIDUtil.createUID(); uidCounter = 0; _local3 = _source.length(); _local2 = 0; while (_local2 < _local3) { startTrackUpdates(_source[_local2], (seedUID + uidCounter.toString())); uidCounter++; _local2++; }; if (_dispatchEvents == 0){ _local4 = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local4.kind = CollectionEventKind.RESET; dispatchEvent(_local4); }; } public function busy():Boolean{ return (!((_busy == 0))); } private function setBusy():void{ _busy--; } protected function enableEvents():void{ _dispatchEvents++; if (_dispatchEvents > 0){ _dispatchEvents = 0; }; } } }//package mx.collections
Section 89
//XMLListCollection (mx.collections.XMLListCollection) package mx.collections { public class XMLListCollection extends ListCollectionView { mx_internal static const VERSION:String = "3.2.0.3794"; public function XMLListCollection(_arg1:XMLList=null){ this.source = _arg1; } public function child(_arg1:Object):XMLList{ var propertyName = _arg1; return (execXMLListFunction(function (_arg1:Object):XMLList{ return (_arg1.child(propertyName)); })); } private function execXMLListFunction(_arg1:Function):XMLList{ var _local2:int; var _local3:XMLList; var _local4:int; var _local5:Object; if (!localIndex){ return (_arg1(source)); }; _local2 = localIndex.length; _local3 = new XMLList(""); _local4 = 0; while (_local4 < _local2) { _local5 = localIndex[_local4]; _local3 = (_local3 + _arg1(_local5)); _local4++; }; return (_local3); } override public function toString():String{ var _local1:String; var _local2:int; if (!localIndex){ return (source.toString()); }; _local1 = ""; _local2 = 0; while (_local2 < localIndex.length) { if (_local2 > 0){ _local1 = (_local1 + "\n"); }; _local1 = (_local1 + localIndex[_local2].toString()); _local2++; }; return (_local1); } public function text():XMLList{ return (execXMLListFunction(function (_arg1:Object):XMLList{ return (_arg1.text()); })); } public function toXMLString():String{ var _local1:String; var _local2:int; if (!localIndex){ return (source.toXMLString()); }; _local1 = ""; _local2 = 0; while (_local2 < localIndex.length) { if (_local2 > 0){ _local1 = (_local1 + "\n"); }; _local1 = (_local1 + localIndex[_local2].toXMLString()); _local2++; }; return (_local1); } public function copy():XMLList{ return (execXMLListFunction(function (_arg1:Object):XMLList{ return (XMLList(_arg1.copy())); })); } public function set source(_arg1:XMLList):void{ if (list){ XMLListAdapter(list).source = null; }; list = new XMLListAdapter(_arg1); } public function attributes():XMLList{ return (execXMLListFunction(function (_arg1:Object):XMLList{ return (_arg1.attributes()); })); } public function get source():XMLList{ return ((list) ? XMLListAdapter(list).source : null); } public function attribute(_arg1:Object):XMLList{ var attributeName = _arg1; return (execXMLListFunction(function (_arg1:Object):XMLList{ return (_arg1.attribute(attributeName)); })); } public function descendants(_arg1:Object="*"):XMLList{ var name = _arg1; return (execXMLListFunction(function (_arg1:Object):XMLList{ return (_arg1.descendants(name)); })); } public function elements(_arg1:String="*"):XMLList{ var name = _arg1; return (execXMLListFunction(function (_arg1:Object):XMLList{ return (_arg1.elements(name)); })); } public function children():XMLList{ return (execXMLListFunction(function (_arg1:Object):XMLList{ return (_arg1.children()); })); } } }//package mx.collections
Section 90
//AccordionHeader (mx.containers.accordionClasses.AccordionHeader) package mx.containers.accordionClasses { import flash.display.*; import mx.core.*; import flash.events.*; import mx.styles.*; import mx.controls.*; import mx.containers.*; public class AccordionHeader extends Button implements IDataRenderer { private var _data:Object; private var focusSkin:IFlexDisplayObject; private var focusObj:DisplayObject; mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var createAccessibilityImplementation:Function; public function AccordionHeader(){ toggleChanged = false; mouseFocusEnabled = false; tabEnabled = false; } override protected function rollOverHandler(_arg1:MouseEvent):void{ super.rollOverHandler(_arg1); var _local2:Accordion = Accordion(parent); if (_local2.enabled){ _local2.rawChildren.setChildIndex(this, (_local2.rawChildren.numChildren - 1)); }; } override protected function createChildren():void{ var _local1:CSSStyleDeclaration; var _local2:Number; super.createChildren(); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local1 = StyleManager.getStyleDeclaration(className); if (_local1){ _local2 = _local1.getStyle("paddingLeft"); if (!isNaN(_local2)){ setStyle("paddingLeft", _local2); }; _local2 = _local1.getStyle("paddingRight"); if (!isNaN(_local2)){ setStyle("paddingRight", _local2); }; }; }; } override public function drawFocus(_arg1:Boolean):void{ var _local2:Class; var _local3:ISimpleStyleClient; if (((_arg1) && (!(isEffectStarted)))){ if (!focusObj){ _local2 = getStyle("focusSkin"); focusObj = new (_local2); _local3 = (focusObj as ISimpleStyleClient); if (_local3){ _local3.styleName = this; }; addChild(focusObj); focusSkin = (focusObj as IFlexDisplayObject); }; if (focusSkin){ focusSkin.move(0, 0); focusSkin.setActualSize(unscaledWidth, unscaledHeight); }; focusObj.visible = true; dispatchEvent(new Event("focusDraw")); } else { if (focusObj){ focusObj.visible = false; }; }; } override mx_internal function layoutContents(_arg1:Number, _arg2:Number, _arg3:Boolean):void{ super.layoutContents(_arg1, _arg2, _arg3); if (focusObj){ setChildIndex(focusObj, (numChildren - 1)); }; } override protected function initializeAccessibility():void{ if (AccordionHeader.createAccessibilityImplementation != null){ AccordionHeader.createAccessibilityImplementation(this); }; } override public function get data():Object{ return (_data); } override public function set data(_arg1:Object):void{ _data = _arg1; } override public function set selected(_arg1:Boolean):void{ _selected = _arg1; invalidateDisplayList(); } } }//package mx.containers.accordionClasses
Section 91
//ConstraintError (mx.containers.errors.ConstraintError) package mx.containers.errors { public class ConstraintError extends Error { mx_internal static const VERSION:String = "3.2.0.3794"; public function ConstraintError(_arg1:String){ super(_arg1); } } }//package mx.containers.errors
Section 92
//ApplicationLayout (mx.containers.utilityClasses.ApplicationLayout) package mx.containers.utilityClasses { import mx.core.*; public class ApplicationLayout extends BoxLayout { mx_internal static const VERSION:String = "3.2.0.3794"; override public function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:int; var _local9:int; var _local10:IFlexDisplayObject; super.updateDisplayList(_arg1, _arg2); var _local3:Container = super.target; if (((((_local3.horizontalScrollBar) && ((getHorizontalAlignValue() > 0)))) || (((_local3.verticalScrollBar) && ((getVerticalAlignValue() > 0)))))){ _local4 = _local3.getStyle("paddingLeft"); _local5 = _local3.getStyle("paddingTop"); _local6 = 0; _local7 = 0; _local8 = _local3.numChildren; _local9 = 0; while (_local9 < _local8) { _local10 = IFlexDisplayObject(_local3.getChildAt(_local9)); if (_local10.x < _local4){ _local6 = Math.max(_local6, (_local4 - _local10.x)); }; if (_local10.y < _local5){ _local7 = Math.max(_local7, (_local5 - _local10.y)); }; _local9++; }; if (((!((_local6 == 0))) || (!((_local7 == 0))))){ _local9 = 0; while (_local9 < _local8) { _local10 = IFlexDisplayObject(_local3.getChildAt(_local9)); IFlexDisplayObject(_local3.getChildAt(_local9)).move((_local10.x + _local6), (_local10.y + _local7)); _local9++; }; }; }; } } }//package mx.containers.utilityClasses
Section 93
//BoxLayout (mx.containers.utilityClasses.BoxLayout) package mx.containers.utilityClasses { import mx.core.*; import mx.controls.scrollClasses.*; import mx.containers.*; public class BoxLayout extends Layout { public var direction:String;// = "vertical" mx_internal static const VERSION:String = "3.2.0.3794"; private function isVertical():Boolean{ return (!((direction == BoxDirection.HORIZONTAL))); } mx_internal function getHorizontalAlignValue():Number{ var _local1:String = target.getStyle("horizontalAlign"); if (_local1 == "center"){ return (0.5); }; if (_local1 == "right"){ return (1); }; return (0); } override public function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local16:Number; var _local17:int; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:int; var _local22:IUIComponent; var _local23:IUIComponent; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local3:Container = super.target; var _local4:int = _local3.numChildren; if (_local4 == 0){ return; }; var _local5:EdgeMetrics = _local3.viewMetricsAndPadding; var _local6:Number = _local3.getStyle("paddingLeft"); var _local7:Number = _local3.getStyle("paddingTop"); var _local8:Number = getHorizontalAlignValue(); var _local9:Number = getVerticalAlignValue(); var _local10:Number = ((((_local3.scaleX > 0)) && (!((_local3.scaleX == 1))))) ? (_local3.minWidth / Math.abs(_local3.scaleX)) : _local3.minWidth; var _local11:Number = ((((_local3.scaleY > 0)) && (!((_local3.scaleY == 1))))) ? (_local3.minHeight / Math.abs(_local3.scaleY)) : _local3.minHeight; var _local12:Number = ((Math.max(_arg1, _local10) - _local5.right) - _local5.left); var _local13:Number = ((Math.max(_arg2, _local11) - _local5.bottom) - _local5.top); var _local14:ScrollBar = _local3.horizontalScrollBar; var _local15:ScrollBar = _local3.verticalScrollBar; if (_local4 == 1){ _local23 = IUIComponent(_local3.getChildAt(0)); _local24 = _local23.percentWidth; _local25 = _local23.percentHeight; if (_local24){ _local26 = Math.max(_local23.minWidth, Math.min(_local23.maxWidth, ((_local24)>=100) ? _local12 : ((_local12 * _local24) / 100))); } else { _local26 = _local23.getExplicitOrMeasuredWidth(); }; if (_local25){ _local27 = Math.max(_local23.minHeight, Math.min(_local23.maxHeight, ((_local25)>=100) ? _local13 : ((_local13 * _local25) / 100))); } else { _local27 = _local23.getExplicitOrMeasuredHeight(); }; if ((((_local23.scaleX == 1)) && ((_local23.scaleY == 1)))){ _local23.setActualSize(Math.floor(_local26), Math.floor(_local27)); } else { _local23.setActualSize(_local26, _local27); }; if (((!((_local15 == null))) && ((_local3.verticalScrollPolicy == ScrollPolicy.AUTO)))){ _local12 = (_local12 + _local15.minWidth); }; if (((!((_local14 == null))) && ((_local3.horizontalScrollPolicy == ScrollPolicy.AUTO)))){ _local13 = (_local13 + _local14.minHeight); }; _local20 = (((_local12 - _local23.width) * _local8) + _local6); _local19 = (((_local13 - _local23.height) * _local9) + _local7); _local23.move(Math.floor(_local20), Math.floor(_local19)); } else { if (isVertical()){ _local16 = _local3.getStyle("verticalGap"); _local17 = _local4; _local21 = 0; while (_local21 < _local4) { if (!IUIComponent(_local3.getChildAt(_local21)).includeInLayout){ _local17--; }; _local21++; }; _local18 = Flex.flexChildHeightsProportionally(_local3, (_local13 - ((_local17 - 1) * _local16)), _local12); if (((!((_local14 == null))) && ((_local3.horizontalScrollPolicy == ScrollPolicy.AUTO)))){ _local18 = (_local18 + _local14.minHeight); }; if (((!((_local15 == null))) && ((_local3.verticalScrollPolicy == ScrollPolicy.AUTO)))){ _local12 = (_local12 + _local15.minWidth); }; _local19 = (_local7 + (_local18 * _local9)); _local21 = 0; while (_local21 < _local4) { _local22 = IUIComponent(_local3.getChildAt(_local21)); _local20 = (((_local12 - _local22.width) * _local8) + _local6); _local22.move(Math.floor(_local20), Math.floor(_local19)); if (_local22.includeInLayout){ _local19 = (_local19 + (_local22.height + _local16)); }; _local21++; }; } else { _local16 = _local3.getStyle("horizontalGap"); _local17 = _local4; _local21 = 0; while (_local21 < _local4) { if (!IUIComponent(_local3.getChildAt(_local21)).includeInLayout){ _local17--; }; _local21++; }; _local18 = Flex.flexChildWidthsProportionally(_local3, (_local12 - ((_local17 - 1) * _local16)), _local13); if (((!((_local14 == null))) && ((_local3.horizontalScrollPolicy == ScrollPolicy.AUTO)))){ _local13 = (_local13 + _local14.minHeight); }; if (((!((_local15 == null))) && ((_local3.verticalScrollPolicy == ScrollPolicy.AUTO)))){ _local18 = (_local18 + _local15.minWidth); }; _local20 = (_local6 + (_local18 * _local8)); _local21 = 0; while (_local21 < _local4) { _local22 = IUIComponent(_local3.getChildAt(_local21)); _local19 = (((_local13 - _local22.height) * _local9) + _local7); _local22.move(Math.floor(_local20), Math.floor(_local19)); if (_local22.includeInLayout){ _local20 = (_local20 + (_local22.width + _local16)); }; _local21++; }; }; }; } mx_internal function getVerticalAlignValue():Number{ var _local1:String = target.getStyle("verticalAlign"); if (_local1 == "middle"){ return (0.5); }; if (_local1 == "bottom"){ return (1); }; return (0); } mx_internal function heightPadding(_arg1:Number):Number{ var _local2:EdgeMetrics = target.viewMetricsAndPadding; var _local3:Number = (_local2.top + _local2.bottom); if ((((_arg1 > 1)) && (isVertical()))){ _local3 = (_local3 + (target.getStyle("verticalGap") * (_arg1 - 1))); }; return (_local3); } mx_internal function widthPadding(_arg1:Number):Number{ var _local2:EdgeMetrics = target.viewMetricsAndPadding; var _local3:Number = (_local2.left + _local2.right); if ((((_arg1 > 1)) && ((isVertical() == false)))){ _local3 = (_local3 + (target.getStyle("horizontalGap") * (_arg1 - 1))); }; return (_local3); } override public function measure():void{ var _local1:Container; var _local10:Number; var _local11:Number; var _local12:IUIComponent; var _local13:Number; var _local14:Number; _local1 = super.target; var _local2:Boolean = isVertical(); var _local3:Number = 0; var _local4:Number = 0; var _local5:Number = 0; var _local6:Number = 0; var _local7:int = _local1.numChildren; var _local8:int = _local7; var _local9:int; while (_local9 < _local7) { _local12 = IUIComponent(_local1.getChildAt(_local9)); if (!_local12.includeInLayout){ _local8--; } else { _local13 = _local12.getExplicitOrMeasuredWidth(); _local14 = _local12.getExplicitOrMeasuredHeight(); if (_local2){ _local3 = Math.max((isNaN(_local12.percentWidth)) ? _local13 : _local12.minWidth, _local3); _local5 = Math.max(_local13, _local5); _local4 = (_local4 + (isNaN(_local12.percentHeight)) ? _local14 : _local12.minHeight); _local6 = (_local6 + _local14); } else { _local3 = (_local3 + (isNaN(_local12.percentWidth)) ? _local13 : _local12.minWidth); _local5 = (_local5 + _local13); _local4 = Math.max((isNaN(_local12.percentHeight)) ? _local14 : _local12.minHeight, _local4); _local6 = Math.max(_local14, _local6); }; }; _local9++; }; _local10 = widthPadding(_local8); _local11 = heightPadding(_local8); _local1.measuredMinWidth = (_local3 + _local10); _local1.measuredMinHeight = (_local4 + _local11); _local1.measuredWidth = (_local5 + _local10); _local1.measuredHeight = (_local6 + _local11); } } }//package mx.containers.utilityClasses
Section 94
//CanvasLayout (mx.containers.utilityClasses.CanvasLayout) package mx.containers.utilityClasses { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.events.*; import flash.utils.*; import mx.containers.errors.*; public class CanvasLayout extends Layout { private var colSpanChildren:Array; private var constraintRegionsInUse:Boolean;// = false private var rowSpanChildren:Array; private var constraintCache:Dictionary; private var _contentArea:Rectangle; mx_internal static const VERSION:String = "3.2.0.3794"; private static var r:Rectangle = new Rectangle(); public function CanvasLayout(){ colSpanChildren = []; rowSpanChildren = []; constraintCache = new Dictionary(true); super(); } private function parseConstraints(_arg1:IUIComponent=null):ChildConstraintInfo{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:String; var _local11:String; var _local12:String; var _local13:String; var _local14:String; var _local15:String; var _local16:String; var _local17:Array; var _local18:int; var _local30:ConstraintColumn; var _local31:Boolean; var _local32:ConstraintRow; var _local2:LayoutConstraints = getLayoutConstraints(_arg1); if (!_local2){ return (null); }; while (true) { _local17 = parseConstraintExp(_local2.left); if (!_local17){ _local3 = NaN; } else { if (_local17.length == 1){ _local3 = Number(_local17[0]); } else { _local10 = _local17[0]; _local3 = _local17[1]; }; }; _local17 = parseConstraintExp(_local2.right); if (!_local17){ _local4 = NaN; } else { if (_local17.length == 1){ _local4 = Number(_local17[0]); } else { _local11 = _local17[0]; _local4 = _local17[1]; }; }; _local17 = parseConstraintExp(_local2.horizontalCenter); if (!_local17){ _local5 = NaN; } else { if (_local17.length == 1){ _local5 = Number(_local17[0]); } else { _local12 = _local17[0]; _local5 = _local17[1]; }; }; _local17 = parseConstraintExp(_local2.top); if (!_local17){ _local6 = NaN; } else { if (_local17.length == 1){ _local6 = Number(_local17[0]); } else { _local13 = _local17[0]; _local6 = _local17[1]; }; }; _local17 = parseConstraintExp(_local2.bottom); if (!_local17){ _local7 = NaN; } else { if (_local17.length == 1){ _local7 = Number(_local17[0]); } else { _local14 = _local17[0]; _local7 = _local17[1]; }; }; _local17 = parseConstraintExp(_local2.verticalCenter); if (!_local17){ _local8 = NaN; } else { if (_local17.length == 1){ _local8 = Number(_local17[0]); } else { _local15 = _local17[0]; _local8 = _local17[1]; }; }; _local17 = parseConstraintExp(_local2.baseline); if (!_local17){ _local9 = NaN; } else { if (_local17.length == 1){ _local9 = Number(_local17[0]); } else { _local16 = _local17[0]; _local9 = _local17[1]; }; }; break; }; var _local19:ContentColumnChild = new ContentColumnChild(); var _local20:Boolean; var _local21:Number = 0; var _local22:Number = 0; var _local23:Number = 0; _local18 = 0; while (_local18 < IConstraintLayout(target).constraintColumns.length) { _local30 = IConstraintLayout(target).constraintColumns[_local18]; if (_local30.mx_internal::contentSize){ if (_local30.id == _local10){ _local19.leftCol = _local30; _local19.leftOffset = _local3; _local21 = _local18; _local19.left = _local21; _local20 = true; }; if (_local30.id == _local11){ _local19.rightCol = _local30; _local19.rightOffset = _local4; _local22 = (_local18 + 1); _local19.right = _local22; _local20 = true; }; if (_local30.id == _local12){ _local19.hcCol = _local30; _local19.hcOffset = _local5; _local23 = (_local18 + 1); _local19.hc = _local23; _local20 = true; }; }; _local18++; }; if (_local20){ _local19.child = _arg1; if (((((((_local19.leftCol) && (!(_local19.rightCol)))) || (((_local19.rightCol) && (!(_local19.leftCol)))))) || (_local19.hcCol))){ _local19.span = 1; } else { _local19.span = (_local22 - _local21); }; _local31 = false; _local18 = 0; while (_local18 < colSpanChildren.length) { if (_local19.child == colSpanChildren[_local18].child){ _local31 = true; break; }; _local18++; }; if (!_local31){ colSpanChildren.push(_local19); }; }; _local20 = false; var _local24:ContentRowChild = new ContentRowChild(); var _local25:Number = 0; var _local26:Number = 0; var _local27:Number = 0; var _local28:Number = 0; _local18 = 0; while (_local18 < IConstraintLayout(target).constraintRows.length) { _local32 = IConstraintLayout(target).constraintRows[_local18]; if (_local32.mx_internal::contentSize){ if (_local32.id == _local13){ _local24.topRow = _local32; _local24.topOffset = _local6; _local25 = _local18; _local24.top = _local25; _local20 = true; }; if (_local32.id == _local14){ _local24.bottomRow = _local32; _local24.bottomOffset = _local7; _local26 = (_local18 + 1); _local24.bottom = _local26; _local20 = true; }; if (_local32.id == _local15){ _local24.vcRow = _local32; _local24.vcOffset = _local8; _local27 = (_local18 + 1); _local24.vc = _local27; _local20 = true; }; if (_local32.id == _local16){ _local24.baselineRow = _local32; _local24.baselineOffset = _local9; _local28 = (_local18 + 1); _local24.baseline = _local28; _local20 = true; }; }; _local18++; }; if (_local20){ _local24.child = _arg1; if (((((((((_local24.topRow) && (!(_local24.bottomRow)))) || (((_local24.bottomRow) && (!(_local24.topRow)))))) || (_local24.vcRow))) || (_local24.baselineRow))){ _local24.span = 1; } else { _local24.span = (_local26 - _local25); }; _local31 = false; _local18 = 0; while (_local18 < rowSpanChildren.length) { if (_local24.child == rowSpanChildren[_local18].child){ _local31 = true; break; }; _local18++; }; if (!_local31){ rowSpanChildren.push(_local24); }; }; var _local29:ChildConstraintInfo = new ChildConstraintInfo(_local3, _local4, _local5, _local6, _local7, _local8, _local9, _local10, _local11, _local12, _local13, _local14, _local15, _local16); constraintCache[_arg1] = _local29; return (_local29); } private function bound(_arg1:Number, _arg2:Number, _arg3:Number):Number{ if (_arg1 < _arg2){ _arg1 = _arg2; } else { if (_arg1 > _arg3){ _arg1 = _arg3; } else { _arg1 = Math.floor(_arg1); }; }; return (_arg1); } private function shareRowSpace(_arg1:ContentRowChild, _arg2:Number):Number{ var _local11:Number; var _local12:Number; var _local13:Number; var _local3:ConstraintRow = _arg1.topRow; var _local4:ConstraintRow = _arg1.bottomRow; var _local5:IUIComponent = _arg1.child; var _local6:Number = 0; var _local7:Number = 0; var _local8:Number = (_arg1.topOffset) ? _arg1.topOffset : 0; var _local9:Number = (_arg1.bottomOffset) ? _arg1.bottomOffset : 0; if (((_local3) && (_local3.height))){ _local6 = (_local6 + _local3.height); } else { if (((_local4) && (!(_local3)))){ _local3 = IConstraintLayout(target).constraintRows[(_arg1.bottom - 2)]; if (((_local3) && (_local3.height))){ _local6 = (_local6 + _local3.height); }; }; }; if (((_local4) && (_local4.height))){ _local7 = (_local7 + _local4.height); } else { if (((_local3) && (!(_local4)))){ _local4 = IConstraintLayout(target).constraintRows[(_arg1.top + 1)]; if (((_local4) && (_local4.height))){ _local7 = (_local7 + _local4.height); }; }; }; if (((_local3) && (isNaN(_local3.height)))){ _local3.setActualHeight(Math.max(0, _local3.maxHeight)); }; if (((_local4) && (isNaN(_local4.height)))){ _local4.setActualHeight(Math.max(0, _local4.height)); }; var _local10:Number = _local5.getExplicitOrMeasuredHeight(); if (_local10){ if (!_arg1.topRow){ if (_local10 > _local6){ _local12 = ((_local10 - _local6) + _local9); } else { _local12 = (_local10 + _local9); }; }; if (!_arg1.bottomRow){ if (_local10 > _local7){ _local11 = ((_local10 - _local7) + _local8); } else { _local11 = (_local10 + _local8); }; }; if (((_arg1.topRow) && (_arg1.bottomRow))){ _local13 = (_local10 / Number(_arg1.span)); if ((_local13 + _local8) < _local6){ _local11 = _local6; _local12 = ((_local10 - (_local6 - _local8)) + _local9); } else { _local11 = (_local13 + _local8); }; if ((_local13 + _local9) < _local7){ _local12 = _local7; _local11 = ((_local10 - (_local7 - _local9)) + _local8); } else { _local12 = (_local13 + _local9); }; }; _local12 = bound(_local12, _local4.minHeight, _local4.maxHeight); _local4.setActualHeight(_local12); _arg2 = (_arg2 - _local12); _local11 = bound(_local11, _local3.minHeight, _local3.maxHeight); _local3.setActualHeight(_local11); _arg2 = (_arg2 - _local11); }; return (_arg2); } private function parseConstraintExp(_arg1:String):Array{ if (!_arg1){ return (null); }; var _local2:String = _arg1.replace(/:/g, " "); var _local3:Array = _local2.split(/\s+/); return (_local3); } private function measureColumnsAndRows():void{ var _local3:int; var _local4:int; var _local13:ConstraintColumn; var _local14:ConstraintRow; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:ContentColumnChild; var _local20:ContentRowChild; var _local1:Array = IConstraintLayout(target).constraintColumns; var _local2:Array = IConstraintLayout(target).constraintRows; if ((((!(_local2.length) > 0)) && ((!(_local1.length) > 0)))){ constraintRegionsInUse = false; return; }; constraintRegionsInUse = true; var _local5:Number = 0; var _local6:Number = 0; var _local7:EdgeMetrics = Container(target).viewMetrics; var _local8:Number = ((Container(target).width - _local7.left) - _local7.right); var _local9:Number = ((Container(target).height - _local7.top) - _local7.bottom); var _local10:Array = []; var _local11:Array = []; var _local12:Array = []; if (_local1.length > 0){ _local3 = 0; while (_local3 < _local1.length) { _local13 = _local1[_local3]; if (!isNaN(_local13.percentWidth)){ _local11.push(_local13); } else { if (((!(isNaN(_local13.width))) && (!(_local13.mx_internal::contentSize)))){ _local10.push(_local13); } else { _local12.push(_local13); _local13.mx_internal::contentSize = true; }; }; _local3++; }; _local3 = 0; while (_local3 < _local10.length) { _local13 = ConstraintColumn(_local10[_local3]); _local8 = (_local8 - _local13.width); _local3++; }; if (_local12.length > 0){ if (colSpanChildren.length > 0){ colSpanChildren.sortOn("span"); _local4 = 0; while (_local4 < colSpanChildren.length) { _local19 = colSpanChildren[_local4]; if (_local19.span == 1){ if (_local19.hcCol){ _local13 = ConstraintColumn(_local1[_local1.indexOf(_local19.hcCol)]); } else { if (_local19.leftCol){ _local13 = ConstraintColumn(_local1[_local1.indexOf(_local19.leftCol)]); } else { if (_local19.rightCol){ _local13 = ConstraintColumn(_local1[_local1.indexOf(_local19.rightCol)]); }; }; }; _local16 = _local19.child.getExplicitOrMeasuredWidth(); if (_local19.hcOffset){ _local16 = (_local16 + _local19.hcOffset); } else { if (_local19.leftOffset){ _local16 = (_local16 + _local19.leftOffset); }; if (_local19.rightOffset){ _local16 = (_local16 + _local19.rightOffset); }; }; if (!isNaN(_local13.width)){ _local16 = Math.max(_local13.width, _local16); }; _local16 = bound(_local16, _local13.minWidth, _local13.maxWidth); _local13.setActualWidth(_local16); _local8 = (_local8 - _local13.width); } else { _local8 = shareColumnSpace(_local19, _local8); }; _local4++; }; colSpanChildren = []; }; _local3 = 0; while (_local3 < _local12.length) { _local13 = _local12[_local3]; if (!_local13.width){ _local16 = bound(0, _local13.minWidth, 0); _local13.setActualWidth(_local16); }; _local3++; }; }; _local18 = _local8; _local3 = 0; while (_local3 < _local11.length) { _local13 = ConstraintColumn(_local11[_local3]); if (_local18 <= 0){ _local16 = 0; } else { _local16 = Math.round(((_local18 * _local13.percentWidth) / 100)); }; _local16 = bound(_local16, _local13.minWidth, _local13.maxWidth); _local13.setActualWidth(_local16); _local8 = (_local8 - _local16); _local3++; }; _local3 = 0; while (_local3 < _local1.length) { _local13 = ConstraintColumn(_local1[_local3]); _local13.x = _local5; _local5 = (_local5 + _local13.width); _local3++; }; }; _local10 = []; _local11 = []; _local12 = []; if (_local2.length > 0){ _local3 = 0; while (_local3 < _local2.length) { _local14 = _local2[_local3]; if (!isNaN(_local14.percentHeight)){ _local11.push(_local14); } else { if (((!(isNaN(_local14.height))) && (!(_local14.mx_internal::contentSize)))){ _local10.push(_local14); } else { _local12.push(_local14); _local14.mx_internal::contentSize = true; }; }; _local3++; }; _local3 = 0; while (_local3 < _local10.length) { _local14 = ConstraintRow(_local10[_local3]); _local9 = (_local9 - _local14.height); _local3++; }; if (_local12.length > 0){ if (rowSpanChildren.length > 0){ rowSpanChildren.sortOn("span"); _local4 = 0; while (_local4 < rowSpanChildren.length) { _local20 = rowSpanChildren[_local4]; if (_local20.span == 1){ if (_local20.vcRow){ _local14 = ConstraintRow(_local2[_local2.indexOf(_local20.vcRow)]); } else { if (_local20.baselineRow){ _local14 = ConstraintRow(_local2[_local2.indexOf(_local20.baselineRow)]); } else { if (_local20.topRow){ _local14 = ConstraintRow(_local2[_local2.indexOf(_local20.topRow)]); } else { if (_local20.bottomRow){ _local14 = ConstraintRow(_local2[_local2.indexOf(_local20.bottomRow)]); }; }; }; }; _local17 = _local20.child.getExplicitOrMeasuredHeight(); if (_local20.baselineOffset){ _local17 = (_local17 + _local20.baselineOffset); } else { if (_local20.vcOffset){ _local17 = (_local17 + _local20.vcOffset); } else { if (_local20.topOffset){ _local17 = (_local17 + _local20.topOffset); }; if (_local20.bottomOffset){ _local17 = (_local17 + _local20.bottomOffset); }; }; }; if (!isNaN(_local14.height)){ _local17 = Math.max(_local14.height, _local17); }; _local17 = bound(_local17, _local14.minHeight, _local14.maxHeight); _local14.setActualHeight(_local17); _local9 = (_local9 - _local14.height); } else { _local9 = shareRowSpace(_local20, _local9); }; _local4++; }; rowSpanChildren = []; }; _local3 = 0; while (_local3 < _local12.length) { _local14 = ConstraintRow(_local12[_local3]); if (!_local14.height){ _local17 = bound(0, _local14.minHeight, 0); _local14.setActualHeight(_local17); }; _local3++; }; }; _local18 = _local9; _local3 = 0; while (_local3 < _local11.length) { _local14 = ConstraintRow(_local11[_local3]); if (_local18 <= 0){ _local17 = 0; } else { _local17 = Math.round(((_local18 * _local14.percentHeight) / 100)); }; _local17 = bound(_local17, _local14.minHeight, _local14.maxHeight); _local14.setActualHeight(_local17); _local9 = (_local9 - _local17); _local3++; }; _local3 = 0; while (_local3 < _local2.length) { _local14 = _local2[_local3]; _local14.y = _local6; _local6 = (_local6 + _local14.height); _local3++; }; }; } private function child_moveHandler(_arg1:MoveEvent):void{ if ((_arg1.target is IUIComponent)){ if (!IUIComponent(_arg1.target).includeInLayout){ return; }; }; var _local2:Container = super.target; if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); _contentArea = null; }; } private function applyAnchorStylesDuringMeasure(_arg1:IUIComponent, _arg2:Rectangle):void{ var _local13:int; var _local3:IConstraintClient = (_arg1 as IConstraintClient); if (!_local3){ return; }; var _local4:ChildConstraintInfo = constraintCache[_local3]; if (!_local4){ _local4 = parseConstraints(_arg1); }; var _local5:Number = _local4.left; var _local6:Number = _local4.right; var _local7:Number = _local4.hc; var _local8:Number = _local4.top; var _local9:Number = _local4.bottom; var _local10:Number = _local4.vc; var _local11:Array = IConstraintLayout(target).constraintColumns; var _local12:Array = IConstraintLayout(target).constraintRows; var _local14:Number = 0; if (!(_local11.length) > 0){ if (!isNaN(_local7)){ _arg2.x = Math.round((((target.width - _arg1.width) / 2) + _local7)); } else { if (((!(isNaN(_local5))) && (!(isNaN(_local6))))){ _arg2.x = _local5; _arg2.width = (_arg2.width + _local6); } else { if (!isNaN(_local5)){ _arg2.x = _local5; } else { if (!isNaN(_local6)){ _arg2.x = 0; _arg2.width = (_arg2.width + _local6); }; }; }; }; } else { _arg2.x = 0; _local13 = 0; while (_local13 < _local11.length) { _local14 = (_local14 + ConstraintColumn(_local11[_local13]).width); _local13++; }; _arg2.width = _local14; }; if (!(_local12.length) > 0){ if (!isNaN(_local10)){ _arg2.y = Math.round((((target.height - _arg1.height) / 2) + _local10)); } else { if (((!(isNaN(_local8))) && (!(isNaN(_local9))))){ _arg2.y = _local8; _arg2.height = (_arg2.height + _local9); } else { if (!isNaN(_local8)){ _arg2.y = _local8; } else { if (!isNaN(_local9)){ _arg2.y = 0; _arg2.height = (_arg2.height + _local9); }; }; }; }; } else { _local14 = 0; _arg2.y = 0; _local13 = 0; while (_local13 < _local12.length) { _local14 = (_local14 + ConstraintRow(_local12[_local13]).height); _local13++; }; _arg2.height = _local14; }; } override public function measure():void{ var _local1:Container; var _local5:EdgeMetrics; var _local6:Rectangle; var _local7:IUIComponent; var _local8:ConstraintColumn; var _local9:ConstraintRow; _local1 = super.target; var _local2:Number = 0; var _local3:Number = 0; var _local4:Number = 0; _local5 = _local1.viewMetrics; _local4 = 0; while (_local4 < _local1.numChildren) { _local7 = (_local1.getChildAt(_local4) as IUIComponent); parseConstraints(_local7); _local4++; }; _local4 = 0; while (_local4 < IConstraintLayout(_local1).constraintColumns.length) { _local8 = IConstraintLayout(_local1).constraintColumns[_local4]; if (_local8.mx_internal::contentSize){ _local8.mx_internal::_width = NaN; }; _local4++; }; _local4 = 0; while (_local4 < IConstraintLayout(_local1).constraintRows.length) { _local9 = IConstraintLayout(_local1).constraintRows[_local4]; if (_local9.mx_internal::contentSize){ _local9.mx_internal::_height = NaN; }; _local4++; }; measureColumnsAndRows(); _contentArea = null; _local6 = measureContentArea(); _local1.measuredWidth = ((_local6.width + _local5.left) + _local5.right); _local1.measuredHeight = ((_local6.height + _local5.top) + _local5.bottom); } private function target_childRemoveHandler(_arg1:ChildExistenceChangedEvent):void{ DisplayObject(_arg1.relatedObject).removeEventListener(MoveEvent.MOVE, child_moveHandler); delete constraintCache[_arg1.relatedObject]; } override public function set target(_arg1:Container):void{ var _local3:int; var _local4:int; var _local2:Container = super.target; if (_arg1 != _local2){ if (_local2){ _local2.removeEventListener(ChildExistenceChangedEvent.CHILD_ADD, target_childAddHandler); _local2.removeEventListener(ChildExistenceChangedEvent.CHILD_REMOVE, target_childRemoveHandler); _local4 = _local2.numChildren; _local3 = 0; while (_local3 < _local4) { DisplayObject(_local2.getChildAt(_local3)).removeEventListener(MoveEvent.MOVE, child_moveHandler); _local3++; }; }; if (_arg1){ _arg1.addEventListener(ChildExistenceChangedEvent.CHILD_ADD, target_childAddHandler); _arg1.addEventListener(ChildExistenceChangedEvent.CHILD_REMOVE, target_childRemoveHandler); _local4 = _arg1.numChildren; _local3 = 0; while (_local3 < _local4) { DisplayObject(_arg1.getChildAt(_local3)).addEventListener(MoveEvent.MOVE, child_moveHandler); _local3++; }; }; super.target = _arg1; }; } private function measureContentArea():Rectangle{ var _local1:int; var _local3:Array; var _local4:Array; var _local5:IUIComponent; var _local6:LayoutConstraints; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; if (_contentArea){ return (_contentArea); }; _contentArea = new Rectangle(); var _local2:int = target.numChildren; if ((((_local2 == 0)) && (constraintRegionsInUse))){ _local3 = IConstraintLayout(target).constraintColumns; _local4 = IConstraintLayout(target).constraintRows; if (_local3.length > 0){ _contentArea.right = (_local3[(_local3.length - 1)].x + _local3[(_local3.length - 1)].width); } else { _contentArea.right = 0; }; if (_local4.length > 0){ _contentArea.bottom = (_local4[(_local4.length - 1)].y + _local4[(_local4.length - 1)].height); } else { _contentArea.bottom = 0; }; }; _local1 = 0; while (_local1 < _local2) { _local5 = (target.getChildAt(_local1) as IUIComponent); _local6 = getLayoutConstraints(_local5); if (!_local5.includeInLayout){ } else { _local7 = _local5.x; _local8 = _local5.y; _local9 = _local5.getExplicitOrMeasuredWidth(); _local10 = _local5.getExplicitOrMeasuredHeight(); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ if (((!(isNaN(_local5.percentWidth))) || (((((_local6) && (!(isNaN(_local6.left))))) && (!(isNaN(_local6.right))))))){ _local9 = _local5.minWidth; }; } else { if (((!(isNaN(_local5.percentWidth))) || (((((((_local6) && (!(isNaN(_local6.left))))) && (!(isNaN(_local6.right))))) && (isNaN(_local5.explicitWidth)))))){ _local9 = _local5.minWidth; }; }; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ if (((!(isNaN(_local5.percentHeight))) || (((((_local6) && (!(isNaN(_local6.top))))) && (!(isNaN(_local6.bottom))))))){ _local10 = _local5.minHeight; }; } else { if (((!(isNaN(_local5.percentHeight))) || (((((((_local6) && (!(isNaN(_local6.top))))) && (!(isNaN(_local6.bottom))))) && (isNaN(_local5.explicitHeight)))))){ _local10 = _local5.minHeight; }; }; r.x = _local7; r.y = _local8; r.width = _local9; r.height = _local10; applyAnchorStylesDuringMeasure(_local5, r); _local7 = r.x; _local8 = r.y; _local9 = r.width; _local10 = r.height; if (isNaN(_local7)){ _local7 = _local5.x; }; if (isNaN(_local8)){ _local8 = _local5.y; }; _local11 = _local7; _local12 = _local8; if (isNaN(_local9)){ _local9 = _local5.width; }; if (isNaN(_local10)){ _local10 = _local5.height; }; _local11 = (_local11 + _local9); _local12 = (_local12 + _local10); _contentArea.right = Math.max(_contentArea.right, _local11); _contentArea.bottom = Math.max(_contentArea.bottom, _local12); }; _local1++; }; return (_contentArea); } private function shareColumnSpace(_arg1:ContentColumnChild, _arg2:Number):Number{ var _local11:Number; var _local12:Number; var _local13:Number; var _local3:ConstraintColumn = _arg1.leftCol; var _local4:ConstraintColumn = _arg1.rightCol; var _local5:IUIComponent = _arg1.child; var _local6:Number = 0; var _local7:Number = 0; var _local8:Number = (_arg1.rightOffset) ? _arg1.rightOffset : 0; var _local9:Number = (_arg1.leftOffset) ? _arg1.leftOffset : 0; if (((_local3) && (_local3.width))){ _local6 = (_local6 + _local3.width); } else { if (((_local4) && (!(_local3)))){ _local3 = IConstraintLayout(target).constraintColumns[(_arg1.right - 2)]; if (((_local3) && (_local3.width))){ _local6 = (_local6 + _local3.width); }; }; }; if (((_local4) && (_local4.width))){ _local7 = (_local7 + _local4.width); } else { if (((_local3) && (!(_local4)))){ _local4 = IConstraintLayout(target).constraintColumns[(_arg1.left + 1)]; if (((_local4) && (_local4.width))){ _local7 = (_local7 + _local4.width); }; }; }; if (((_local3) && (isNaN(_local3.width)))){ _local3.setActualWidth(Math.max(0, _local3.maxWidth)); }; if (((_local4) && (isNaN(_local4.width)))){ _local4.setActualWidth(Math.max(0, _local4.maxWidth)); }; var _local10:Number = _local5.getExplicitOrMeasuredWidth(); if (_local10){ if (!_arg1.leftCol){ if (_local10 > _local6){ _local12 = ((_local10 - _local6) + _local8); } else { _local12 = (_local10 + _local8); }; }; if (!_arg1.rightCol){ if (_local10 > _local7){ _local11 = ((_local10 - _local7) + _local9); } else { _local11 = (_local10 + _local9); }; }; if (((_arg1.leftCol) && (_arg1.rightCol))){ _local13 = (_local10 / Number(_arg1.span)); if ((_local13 + _local9) < _local6){ _local11 = _local6; _local12 = ((_local10 - (_local6 - _local9)) + _local8); } else { _local11 = (_local13 + _local9); }; if ((_local13 + _local8) < _local7){ _local12 = _local7; _local11 = ((_local10 - (_local7 - _local8)) + _local9); } else { _local12 = (_local13 + _local8); }; }; _local11 = bound(_local11, _local3.minWidth, _local3.maxWidth); _local3.setActualWidth(_local11); _arg2 = (_arg2 - _local11); _local12 = bound(_local12, _local4.minWidth, _local4.maxWidth); _local4.setActualWidth(_local12); _arg2 = (_arg2 - _local12); }; return (_arg2); } private function getLayoutConstraints(_arg1:IUIComponent):LayoutConstraints{ var _local2:IConstraintClient = (_arg1 as IConstraintClient); if (!_local2){ return (null); }; var _local3:LayoutConstraints = new LayoutConstraints(); _local3.baseline = _local2.getConstraintValue("baseline"); _local3.bottom = _local2.getConstraintValue("bottom"); _local3.horizontalCenter = _local2.getConstraintValue("horizontalCenter"); _local3.left = _local2.getConstraintValue("left"); _local3.right = _local2.getConstraintValue("right"); _local3.top = _local2.getConstraintValue("top"); _local3.verticalCenter = _local2.getConstraintValue("verticalCenter"); return (_local3); } override public function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local3:int; var _local4:IUIComponent; var _local10:ConstraintColumn; var _local11:ConstraintRow; var _local5:Container = super.target; var _local6:int = _local5.numChildren; _local5.mx_internal::doingLayout = false; var _local7:EdgeMetrics = _local5.viewMetrics; _local5.mx_internal::doingLayout = true; var _local8:Number = ((_arg1 - _local7.left) - _local7.right); var _local9:Number = ((_arg2 - _local7.top) - _local7.bottom); if ((((IConstraintLayout(_local5).constraintColumns.length > 0)) || ((IConstraintLayout(_local5).constraintRows.length > 0)))){ constraintRegionsInUse = true; }; if (constraintRegionsInUse){ _local3 = 0; while (_local3 < _local6) { _local4 = (_local5.getChildAt(_local3) as IUIComponent); parseConstraints(_local4); _local3++; }; _local3 = 0; while (_local3 < IConstraintLayout(_local5).constraintColumns.length) { _local10 = IConstraintLayout(_local5).constraintColumns[_local3]; if (_local10.mx_internal::contentSize){ _local10.mx_internal::_width = NaN; }; _local3++; }; _local3 = 0; while (_local3 < IConstraintLayout(_local5).constraintRows.length) { _local11 = IConstraintLayout(_local5).constraintRows[_local3]; if (_local11.mx_internal::contentSize){ _local11.mx_internal::_height = NaN; }; _local3++; }; measureColumnsAndRows(); }; _local3 = 0; while (_local3 < _local6) { _local4 = (_local5.getChildAt(_local3) as IUIComponent); applyAnchorStylesDuringUpdateDisplayList(_local8, _local9, _local4); _local3++; }; } private function applyAnchorStylesDuringUpdateDisplayList(_arg1:Number, _arg2:Number, _arg3:IUIComponent=null):void{ var _local20:int; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:String; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:Number; var _local38:Number; var _local39:Boolean; var _local40:Boolean; var _local41:Boolean; var _local42:ConstraintColumn; var _local43:Boolean; var _local44:Boolean; var _local45:Boolean; var _local46:Boolean; var _local47:ConstraintRow; var _local4:IConstraintClient = (_arg3 as IConstraintClient); if (!_local4){ return; }; var _local5:ChildConstraintInfo = parseConstraints(_arg3); var _local6:Number = _local5.left; var _local7:Number = _local5.right; var _local8:Number = _local5.hc; var _local9:Number = _local5.top; var _local10:Number = _local5.bottom; var _local11:Number = _local5.vc; var _local12:Number = _local5.baseline; var _local13:String = _local5.leftBoundary; var _local14:String = _local5.rightBoundary; var _local15:String = _local5.hcBoundary; var _local16:String = _local5.topBoundary; var _local17:String = _local5.bottomBoundary; var _local18:String = _local5.vcBoundary; var _local19:String = _local5.baselineBoundary; var _local26:Boolean; var _local27:Boolean; var _local28:Boolean = ((((!(_local15)) && (!(_local13)))) && (!(_local14))); var _local29:Boolean = ((((((!(_local18)) && (!(_local16)))) && (!(_local17)))) && (!(_local19))); var _local30:Number = 0; var _local31:Number = _arg1; var _local32:Number = 0; var _local33:Number = _arg2; if (!_local28){ _local39 = (_local13) ? true : false; _local40 = (_local14) ? true : false; _local41 = (_local15) ? true : false; _local20 = 0; while (_local20 < IConstraintLayout(target).constraintColumns.length) { _local42 = ConstraintColumn(IConstraintLayout(target).constraintColumns[_local20]); if (_local39){ if (_local13 == _local42.id){ _local30 = _local42.x; _local39 = false; }; }; if (_local40){ if (_local14 == _local42.id){ _local31 = (_local42.x + _local42.width); _local40 = false; }; }; if (_local41){ if (_local15 == _local42.id){ _local35 = _local42.width; _local37 = _local42.x; _local41 = false; }; }; _local20++; }; if (_local39){ _local25 = resourceManager.getString("containers", "columnNotFound", [_local13]); throw (new ConstraintError(_local25)); }; if (_local40){ _local25 = resourceManager.getString("containers", "columnNotFound", [_local14]); throw (new ConstraintError(_local25)); }; if (_local41){ _local25 = resourceManager.getString("containers", "columnNotFound", [_local15]); throw (new ConstraintError(_local25)); }; } else { if (!_local28){ _local25 = resourceManager.getString("containers", "noColumnsFound"); throw (new ConstraintError(_local25)); }; }; _arg1 = Math.round((_local31 - _local30)); if (((!(isNaN(_local6))) && (!(isNaN(_local7))))){ _local21 = ((_arg1 - _local6) - _local7); if (_local21 < _arg3.minWidth){ _local21 = _arg3.minWidth; }; } else { if (!isNaN(_arg3.percentWidth)){ _local21 = ((_arg3.percentWidth / 100) * _arg1); _local21 = bound(_local21, _arg3.minWidth, _arg3.maxWidth); _local26 = true; } else { _local21 = _arg3.getExplicitOrMeasuredWidth(); }; }; if (((!(_local29)) && ((IConstraintLayout(target).constraintRows.length > 0)))){ _local43 = (_local16) ? true : false; _local44 = (_local17) ? true : false; _local45 = (_local18) ? true : false; _local46 = (_local19) ? true : false; _local20 = 0; while (_local20 < IConstraintLayout(target).constraintRows.length) { _local47 = ConstraintRow(IConstraintLayout(target).constraintRows[_local20]); if (_local43){ if (_local16 == _local47.id){ _local32 = _local47.y; _local43 = false; }; }; if (_local44){ if (_local17 == _local47.id){ _local33 = (_local47.y + _local47.height); _local44 = false; }; }; if (_local45){ if (_local18 == _local47.id){ _local34 = _local47.height; _local36 = _local47.y; _local45 = false; }; }; if (_local46){ if (_local19 == _local47.id){ _local38 = _local47.y; _local46 = false; }; }; _local20++; }; if (_local43){ _local25 = resourceManager.getString("containers", "rowNotFound", [_local16]); throw (new ConstraintError(_local25)); }; if (_local44){ _local25 = resourceManager.getString("containers", "rowNotFound", [_local17]); throw (new ConstraintError(_local25)); }; if (_local45){ _local25 = resourceManager.getString("containers", "rowNotFound", [_local18]); throw (new ConstraintError(_local25)); }; if (_local46){ _local25 = resourceManager.getString("containers", "rowNotFound", [_local19]); throw (new ConstraintError(_local25)); }; } else { if (((!(_local29)) && (!((IConstraintLayout(target).constraintRows.length > 0))))){ _local25 = resourceManager.getString("containers", "noRowsFound"); throw (new ConstraintError(_local25)); }; }; _arg2 = Math.round((_local33 - _local32)); if (((!(isNaN(_local9))) && (!(isNaN(_local10))))){ _local22 = ((_arg2 - _local9) - _local10); if (_local22 < _arg3.minHeight){ _local22 = _arg3.minHeight; }; } else { if (!isNaN(_arg3.percentHeight)){ _local22 = ((_arg3.percentHeight / 100) * _arg2); _local22 = bound(_local22, _arg3.minHeight, _arg3.maxHeight); _local27 = true; } else { _local22 = _arg3.getExplicitOrMeasuredHeight(); }; }; if (!isNaN(_local8)){ if (_local15){ _local23 = Math.round(((((_local35 - _local21) / 2) + _local8) + _local37)); } else { _local23 = Math.round((((_arg1 - _local21) / 2) + _local8)); }; } else { if (!isNaN(_local6)){ if (_local13){ _local23 = (_local30 + _local6); } else { _local23 = _local6; }; } else { if (!isNaN(_local7)){ if (_local14){ _local23 = ((_local31 - _local7) - _local21); } else { _local23 = ((_arg1 - _local7) - _local21); }; }; }; }; if (!isNaN(_local12)){ if (_local19){ _local24 = ((_local38 - _arg3.baselinePosition) + _local12); } else { _local24 = _local12; }; }; if (!isNaN(_local11)){ if (_local18){ _local24 = Math.round(((((_local34 - _local22) / 2) + _local11) + _local36)); } else { _local24 = Math.round((((_arg2 - _local22) / 2) + _local11)); }; } else { if (!isNaN(_local9)){ if (_local16){ _local24 = (_local32 + _local9); } else { _local24 = _local9; }; } else { if (!isNaN(_local10)){ if (_local17){ _local24 = ((_local33 - _local10) - _local22); } else { _local24 = ((_arg2 - _local10) - _local22); }; }; }; }; _local23 = (isNaN(_local23)) ? _arg3.x : _local23; _local24 = (isNaN(_local24)) ? _arg3.y : _local24; _arg3.move(_local23, _local24); if (_local26){ if ((_local23 + _local21) > _arg1){ _local21 = Math.max((_arg1 - _local23), _arg3.minWidth); }; }; if (_local27){ if ((_local24 + _local22) > _arg2){ _local22 = Math.max((_arg2 - _local24), _arg3.minHeight); }; }; if (((!(isNaN(_local21))) && (!(isNaN(_local22))))){ _arg3.setActualSize(_local21, _local22); }; } private function target_childAddHandler(_arg1:ChildExistenceChangedEvent):void{ DisplayObject(_arg1.relatedObject).addEventListener(MoveEvent.MOVE, child_moveHandler); } } }//package mx.containers.utilityClasses import mx.core.*; class LayoutConstraints { public var baseline; public var left; public var bottom; public var top; public var horizontalCenter; public var verticalCenter; public var right; private function LayoutConstraints():void{ } } class ChildConstraintInfo { public var baseline:Number; public var left:Number; public var baselineBoundary:String; public var leftBoundary:String; public var hcBoundary:String; public var top:Number; public var right:Number; public var topBoundary:String; public var rightBoundary:String; public var bottom:Number; public var vc:Number; public var bottomBoundary:String; public var vcBoundary:String; public var hc:Number; private function ChildConstraintInfo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:String=null, _arg9:String=null, _arg10:String=null, _arg11:String=null, _arg12:String=null, _arg13:String=null, _arg14:String=null):void{ this.left = _arg1; this.right = _arg2; this.hc = _arg3; this.top = _arg4; this.bottom = _arg5; this.vc = _arg6; this.baseline = _arg7; this.leftBoundary = _arg8; this.rightBoundary = _arg9; this.hcBoundary = _arg10; this.topBoundary = _arg11; this.bottomBoundary = _arg12; this.vcBoundary = _arg13; this.baselineBoundary = _arg14; } } class ContentColumnChild { public var rightCol:ConstraintColumn; public var hcCol:ConstraintColumn; public var left:Number; public var child:IUIComponent; public var rightOffset:Number; public var span:Number; public var hcOffset:Number; public var leftCol:ConstraintColumn; public var leftOffset:Number; public var hc:Number; public var right:Number; private function ContentColumnChild():void{ } } class ContentRowChild { public var topRow:ConstraintRow; public var topOffset:Number; public var baseline:Number; public var baselineRow:ConstraintRow; public var span:Number; public var top:Number; public var vcOffset:Number; public var child:IUIComponent; public var bottomOffset:Number; public var bottom:Number; public var vc:Number; public var bottomRow:ConstraintRow; public var vcRow:ConstraintRow; public var baselineOffset:Number; private function ContentRowChild():void{ } }
Section 95
//ConstraintColumn (mx.containers.utilityClasses.ConstraintColumn) package mx.containers.utilityClasses { import mx.core.*; import flash.events.*; public class ConstraintColumn extends EventDispatcher implements IMXMLObject { private var _container:IInvalidating; private var _explicitMinWidth:Number; mx_internal var _width:Number; mx_internal var contentSize:Boolean;// = false private var _percentWidth:Number; private var _explicitWidth:Number; private var _explicitMaxWidth:Number; private var _x:Number; private var _id:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function get container():IInvalidating{ return (_container); } public function get width():Number{ return (_width); } public function get percentWidth():Number{ return (_percentWidth); } public function set container(_arg1:IInvalidating):void{ _container = _arg1; } public function set maxWidth(_arg1:Number):void{ if (_explicitMaxWidth != _arg1){ _explicitMaxWidth = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("maxWidthChanged")); }; } public function set width(_arg1:Number):void{ if (explicitWidth != _arg1){ explicitWidth = _arg1; if (_width != _arg1){ _width = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("widthChanged")); }; }; } public function get maxWidth():Number{ return (_explicitMaxWidth); } public function get minWidth():Number{ return (_explicitMinWidth); } public function get id():String{ return (_id); } public function initialized(_arg1:Object, _arg2:String):void{ this.id = _arg2; if (((!(this.width)) && (!(this.percentWidth)))){ contentSize = true; }; } public function set explicitWidth(_arg1:Number):void{ if (_explicitWidth == _arg1){ return; }; if (!isNaN(_arg1)){ _percentWidth = NaN; }; _explicitWidth = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("explicitWidthChanged")); } public function setActualWidth(_arg1:Number):void{ if (_width != _arg1){ _width = _arg1; dispatchEvent(new Event("widthChanged")); }; } public function set minWidth(_arg1:Number):void{ if (_explicitMinWidth != _arg1){ _explicitMinWidth = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("minWidthChanged")); }; } public function set percentWidth(_arg1:Number):void{ if (_percentWidth == _arg1){ return; }; if (!isNaN(_arg1)){ _explicitWidth = NaN; }; _percentWidth = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("percentWidthChanged")); } public function set x(_arg1:Number):void{ if (_arg1 != _x){ _x = _arg1; dispatchEvent(new Event("xChanged")); }; } public function get explicitWidth():Number{ return (_explicitWidth); } public function set id(_arg1:String):void{ _id = _arg1; } public function get x():Number{ return (_x); } } }//package mx.containers.utilityClasses
Section 96
//ConstraintRow (mx.containers.utilityClasses.ConstraintRow) package mx.containers.utilityClasses { import mx.core.*; import flash.events.*; public class ConstraintRow extends EventDispatcher implements IMXMLObject { private var _container:IInvalidating; mx_internal var _height:Number; private var _explicitMinHeight:Number; private var _y:Number; private var _percentHeight:Number; private var _explicitMaxHeight:Number; mx_internal var contentSize:Boolean;// = false private var _explicitHeight:Number; private var _id:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function get container():IInvalidating{ return (_container); } public function set container(_arg1:IInvalidating):void{ _container = _arg1; } public function set y(_arg1:Number):void{ if (_arg1 != _y){ _y = _arg1; dispatchEvent(new Event("yChanged")); }; } public function set height(_arg1:Number):void{ if (explicitHeight != _arg1){ explicitHeight = _arg1; if (_height != _arg1){ _height = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("heightChanged")); }; }; } public function set maxHeight(_arg1:Number):void{ if (_explicitMaxHeight != _arg1){ _explicitMaxHeight = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("maxHeightChanged")); }; } public function setActualHeight(_arg1:Number):void{ if (_height != _arg1){ _height = _arg1; dispatchEvent(new Event("heightChanged")); }; } public function get minHeight():Number{ return (_explicitMinHeight); } public function get id():String{ return (_id); } public function set percentHeight(_arg1:Number):void{ if (_percentHeight == _arg1){ return; }; if (!isNaN(_arg1)){ _explicitHeight = NaN; }; _percentHeight = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; } public function initialized(_arg1:Object, _arg2:String):void{ this.id = _arg2; if (((!(this.height)) && (!(this.percentHeight)))){ contentSize = true; }; } public function get percentHeight():Number{ return (_percentHeight); } public function get height():Number{ return (_height); } public function get maxHeight():Number{ return (_explicitMaxHeight); } public function set minHeight(_arg1:Number):void{ if (_explicitMinHeight != _arg1){ _explicitMinHeight = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("minHeightChanged")); }; } public function set id(_arg1:String):void{ _id = _arg1; } public function get y():Number{ return (_y); } public function get explicitHeight():Number{ return (_explicitHeight); } public function set explicitHeight(_arg1:Number):void{ if (_explicitHeight == _arg1){ return; }; if (!isNaN(_arg1)){ _percentHeight = NaN; }; _explicitHeight = _arg1; if (container){ container.invalidateSize(); container.invalidateDisplayList(); }; dispatchEvent(new Event("explicitHeightChanged")); } } }//package mx.containers.utilityClasses
Section 97
//Flex (mx.containers.utilityClasses.Flex) package mx.containers.utilityClasses { import mx.core.*; public class Flex { mx_internal static const VERSION:String = "3.2.0.3794"; public static function flexChildWidthsProportionally(_arg1:Container, _arg2:Number, _arg3:Number):Number{ var _local6:Array; var _local7:FlexChildInfo; var _local8:IUIComponent; var _local9:int; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local4:Number = _arg2; var _local5:Number = 0; _local6 = []; var _local10:int = _arg1.numChildren; _local9 = 0; while (_local9 < _local10) { _local8 = IUIComponent(_arg1.getChildAt(_local9)); _local11 = _local8.percentWidth; _local12 = _local8.percentHeight; if (((!(isNaN(_local12))) && (_local8.includeInLayout))){ _local13 = Math.max(_local8.minHeight, Math.min(_local8.maxHeight, ((_local12)>=100) ? _arg3 : ((_arg3 * _local12) / 100))); } else { _local13 = _local8.getExplicitOrMeasuredHeight(); }; if (((!(isNaN(_local11))) && (_local8.includeInLayout))){ _local5 = (_local5 + _local11); _local7 = new FlexChildInfo(); _local7.percent = _local11; _local7.min = _local8.minWidth; _local7.max = _local8.maxWidth; _local7.height = _local13; _local7.child = _local8; _local6.push(_local7); } else { _local14 = _local8.getExplicitOrMeasuredWidth(); if ((((_local8.scaleX == 1)) && ((_local8.scaleY == 1)))){ _local8.setActualSize(Math.floor(_local14), Math.floor(_local13)); } else { _local8.setActualSize(_local14, _local13); }; if (_local8.includeInLayout){ _local4 = (_local4 - _local8.width); }; }; _local9++; }; if (_local5){ _local4 = flexChildrenProportionally(_arg2, _local4, _local5, _local6); _local10 = _local6.length; _local9 = 0; while (_local9 < _local10) { _local7 = _local6[_local9]; _local8 = _local7.child; if ((((_local8.scaleX == 1)) && ((_local8.scaleY == 1)))){ _local8.setActualSize(Math.floor(_local7.size), Math.floor(_local7.height)); } else { _local8.setActualSize(_local7.size, _local7.height); }; _local9++; }; if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ distributeExtraWidth(_arg1, _arg2); }; }; return (_local4); } public static function distributeExtraHeight(_arg1:Container, _arg2:Number):void{ var _local5:int; var _local6:Number; var _local9:IUIComponent; var _local10:Number; var _local11:Number; var _local3:int = _arg1.numChildren; var _local4:Boolean; var _local7:Number = _arg2; var _local8:Number = 0; _local5 = 0; while (_local5 < _local3) { _local9 = IUIComponent(_arg1.getChildAt(_local5)); if (!_local9.includeInLayout){ } else { _local10 = _local9.height; _local6 = _local9.percentHeight; _local8 = (_local8 + _local10); if (!isNaN(_local6)){ _local11 = Math.ceil(((_local6 / 100) * _arg2)); if (_local11 > _local10){ _local4 = true; }; }; }; _local5++; }; if (!_local4){ return; }; _local7 = (_local7 - _local8); var _local12:Boolean; while (((_local12) && ((_local7 > 0)))) { _local12 = false; _local5 = 0; while (_local5 < _local3) { _local9 = IUIComponent(_arg1.getChildAt(_local5)); _local10 = _local9.height; _local6 = _local9.percentHeight; if (((((!(isNaN(_local6))) && (_local9.includeInLayout))) && ((_local10 < _local9.maxHeight)))){ _local11 = Math.ceil(((_local6 / 100) * _arg2)); if (_local11 > _local10){ _local9.setActualSize(_local9.width, (_local10 + 1)); _local7--; _local12 = true; if (_local7 == 0){ return; }; }; }; _local5++; }; }; } public static function distributeExtraWidth(_arg1:Container, _arg2:Number):void{ var _local5:int; var _local6:Number; var _local9:IUIComponent; var _local10:Number; var _local11:Number; var _local3:int = _arg1.numChildren; var _local4:Boolean; var _local7:Number = _arg2; var _local8:Number = 0; _local5 = 0; while (_local5 < _local3) { _local9 = IUIComponent(_arg1.getChildAt(_local5)); if (!_local9.includeInLayout){ } else { _local10 = _local9.width; _local6 = _local9.percentWidth; _local8 = (_local8 + _local10); if (!isNaN(_local6)){ _local11 = Math.ceil(((_local6 / 100) * _arg2)); if (_local11 > _local10){ _local4 = true; }; }; }; _local5++; }; if (!_local4){ return; }; _local7 = (_local7 - _local8); var _local12:Boolean; while (((_local12) && ((_local7 > 0)))) { _local12 = false; _local5 = 0; while (_local5 < _local3) { _local9 = IUIComponent(_arg1.getChildAt(_local5)); _local10 = _local9.width; _local6 = _local9.percentWidth; if (((((!(isNaN(_local6))) && (_local9.includeInLayout))) && ((_local10 < _local9.maxWidth)))){ _local11 = Math.ceil(((_local6 / 100) * _arg2)); if (_local11 > _local10){ _local9.setActualSize((_local10 + 1), _local9.height); _local7--; _local12 = true; if (_local7 == 0){ return; }; }; }; _local5++; }; }; } public static function flexChildrenProportionally(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Array):Number{ var _local6:Number; var _local7:Boolean; var _local9:*; var _local10:*; var _local11:*; var _local12:*; var _local13:*; var _local14:*; var _local5:int = _arg4.length; var _local8:Number = (_arg2 - ((_arg1 * _arg3) / 100)); if (_local8 > 0){ _arg2 = (_arg2 - _local8); }; do { _local6 = 0; _local7 = true; _local9 = (_arg2 / _arg3); _local10 = 0; while (_local10 < _local5) { _local11 = _arg4[_local10]; _local12 = (_local11.percent * _local9); if (_local12 < _local11.min){ _local13 = _local11.min; _local11.size = _local13; --_local5; _arg4[_local10] = _arg4[_local5]; _arg4[_local5] = _local11; _arg3 = (_arg3 - _local11.percent); _arg2 = (_arg2 - _local13); _local7 = false; break; } else { if (_local12 > _local11.max){ _local14 = _local11.max; _local11.size = _local14; --_local5; _arg4[_local10] = _arg4[_local5]; _arg4[_local5] = _local11; _arg3 = (_arg3 - _local11.percent); _arg2 = (_arg2 - _local14); _local7 = false; break; } else { _local11.size = _local12; _local6 = (_local6 + _local12); }; }; _local10++; }; } while (!(_local7)); return (Math.max(0, Math.floor((_arg2 - _local6)))); } public static function flexChildHeightsProportionally(_arg1:Container, _arg2:Number, _arg3:Number):Number{ var _local7:FlexChildInfo; var _local8:IUIComponent; var _local9:int; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local4:Number = _arg2; var _local5:Number = 0; var _local6:Array = []; var _local10:int = _arg1.numChildren; _local9 = 0; while (_local9 < _local10) { _local8 = IUIComponent(_arg1.getChildAt(_local9)); _local11 = _local8.percentWidth; _local12 = _local8.percentHeight; if (((!(isNaN(_local11))) && (_local8.includeInLayout))){ _local13 = Math.max(_local8.minWidth, Math.min(_local8.maxWidth, ((_local11)>=100) ? _arg3 : ((_arg3 * _local11) / 100))); } else { _local13 = _local8.getExplicitOrMeasuredWidth(); }; if (((!(isNaN(_local12))) && (_local8.includeInLayout))){ _local5 = (_local5 + _local12); _local7 = new FlexChildInfo(); _local7.percent = _local12; _local7.min = _local8.minHeight; _local7.max = _local8.maxHeight; _local7.width = _local13; _local7.child = _local8; _local6.push(_local7); } else { _local14 = _local8.getExplicitOrMeasuredHeight(); if ((((_local8.scaleX == 1)) && ((_local8.scaleY == 1)))){ _local8.setActualSize(Math.floor(_local13), Math.floor(_local14)); } else { _local8.setActualSize(_local13, _local14); }; if (_local8.includeInLayout){ _local4 = (_local4 - _local8.height); }; }; _local9++; }; if (_local5){ _local4 = flexChildrenProportionally(_arg2, _local4, _local5, _local6); _local10 = _local6.length; _local9 = 0; while (_local9 < _local10) { _local7 = _local6[_local9]; _local8 = _local7.child; if ((((_local8.scaleX == 1)) && ((_local8.scaleY == 1)))){ _local8.setActualSize(Math.floor(_local7.width), Math.floor(_local7.size)); } else { _local8.setActualSize(_local7.width, _local7.size); }; _local9++; }; if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ distributeExtraHeight(_arg1, _arg2); }; }; return (_local4); } } }//package mx.containers.utilityClasses
Section 98
//FlexChildInfo (mx.containers.utilityClasses.FlexChildInfo) package mx.containers.utilityClasses { import mx.core.*; public class FlexChildInfo { public var flex:Number;// = 0 public var preferred:Number;// = 0 public var percent:Number; public var width:Number; public var height:Number; public var size:Number;// = 0 public var max:Number; public var min:Number; public var child:IUIComponent; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.containers.utilityClasses
Section 99
//IConstraintLayout (mx.containers.utilityClasses.IConstraintLayout) package mx.containers.utilityClasses { public interface IConstraintLayout { function get constraintColumns():Array; function set constraintRows(_arg1:Array):void; function get constraintRows():Array; function set constraintColumns(_arg1:Array):void; } }//package mx.containers.utilityClasses
Section 100
//Layout (mx.containers.utilityClasses.Layout) package mx.containers.utilityClasses { import mx.core.*; import mx.resources.*; public class Layout { private var _target:Container; protected var resourceManager:IResourceManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function Layout(){ resourceManager = ResourceManager.getInstance(); super(); } public function get target():Container{ return (_target); } public function set target(_arg1:Container):void{ _target = _arg1; } public function measure():void{ } public function updateDisplayList(_arg1:Number, _arg2:Number):void{ } } }//package mx.containers.utilityClasses
Section 101
//Accordion (mx.containers.Accordion) package mx.containers { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.managers.*; import mx.automation.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import mx.effects.*; import mx.graphics.*; import flash.ui.*; import mx.containers.accordionClasses.*; public class Accordion extends Container implements IHistoryManagerClient, IFocusManagerComponent { private var historyManagementEnabledChanged:Boolean;// = false private var layoutStyleChanged:Boolean;// = false private var initialSelectedIndex:int;// = -1 private var childAddedOrRemoved:Boolean;// = false private var overlayTargetArea:RoundedRectangle; private var proposedSelectedIndex:int;// = -1 private var accMinWidth:Number; private var currentDissolveEffect:Effect; private var accPreferredHeight:Number; private var tweenContentHeight:Number; private var tween:Tween; private var bSliding:Boolean;// = false private var showFocusIndicator:Boolean;// = false private var _focusedIndex:int;// = -1 private var _headerRenderer:IFactory; private var accMinHeight:Number; private var tweenOldSelectedIndex:int; private var firstTime:Boolean;// = true private var accPreferredWidth:Number; private var _historyManagementEnabled:Boolean;// = true private var overlayChild:IUIComponent; private var tweenNewSelectedIndex:int; private var bSaveState:Boolean;// = false private var tweenContentWidth:Number; private var bInLoadState:Boolean;// = false private var _resizeToContent:Boolean;// = false private var tweenViewMetrics:EdgeMetrics; private var _selectedIndex:int;// = -1 mx_internal static const VERSION:String = "3.2.0.3794"; private static const HEADER_NAME_BASE:String = "_header"; public function Accordion(){ headerRenderer = new ClassFactory(AccordionHeader); tabEnabled = true; super.clipContent = false; addEventListener(ChildExistenceChangedEvent.CHILD_ADD, childAddHandler); addEventListener(ChildExistenceChangedEvent.CHILD_REMOVE, childRemoveHandler); showInAutomationHierarchy = true; } protected function get contentHeight():Number{ var _local1:Number = unscaledHeight; var _local2:EdgeMetrics = viewMetricsAndPadding; _local1 = (_local1 - (_local2.top + _local2.bottom)); var _local3:Number = getStyle("verticalGap"); var _local4:int = numChildren; var _local5:int; while (_local5 < _local4) { _local1 = (_local1 - getHeaderAt(_local5).height); if (_local5 > 0){ _local1 = (_local1 - _local3); }; _local5++; }; return (_local1); } private function commitSelectedIndex():void{ var _local3:Class; var _local4:int; if (proposedSelectedIndex == -1){ return; }; var _local1:int = proposedSelectedIndex; proposedSelectedIndex = -1; if (numChildren == 0){ _selectedIndex = -1; return; }; if (_local1 < 0){ _local1 = 0; } else { if (_local1 > (numChildren - 1)){ _local1 = (numChildren - 1); }; }; var _local2:int = _selectedIndex; if (_local1 == _local2){ return; }; currentDissolveEffect = null; if (isEffectStarted){ _local3 = Class(systemManager.getDefinitionByName("mx.effects.effectClasses.DissolveInstance")); _local4 = 0; while (_local4 < _effectsStarted.length) { if (((_local3) && ((_effectsStarted[_local4] is _local3)))){ currentDissolveEffect = _effectsStarted[_local4].effect; _effectsStarted[_local4].end(); break; }; _local4++; }; }; if (_focusedIndex != _local1){ drawHeaderFocus(_focusedIndex, false); }; if (_local2 != -1){ getHeaderAt(_local2).selected = false; }; _selectedIndex = _local1; if (initialSelectedIndex == -1){ initialSelectedIndex = _selectedIndex; }; getHeaderAt(_local1).selected = true; if (_focusedIndex != _local1){ _focusedIndex = _local1; drawHeaderFocus(_focusedIndex, showFocusIndicator); }; if (bSaveState){ HistoryManager.save(); bSaveState = false; }; if ((((getStyle("openDuration") == 0)) || ((_local2 == -1)))){ Container(getChildAt(_local1)).setVisible(true); Container(getChildAt(_local1)).setVisible(false, true); if (_local2 != -1){ Container(getChildAt(_local2)).setVisible(false); }; instantiateChild(selectedChild); } else { if (tween){ tween.endTween(); }; startTween(_local2, _local1); }; } private function dispatchChangeEvent(_arg1:int, _arg2:int, _arg3:Event=null):void{ var _local4:IndexChangedEvent = new IndexChangedEvent(IndexChangedEvent.CHANGE); _local4.oldIndex = _arg1; _local4.newIndex = _arg2; _local4.relatedObject = getChildAt(_arg2); _local4.triggerEvent = _arg3; dispatchEvent(_local4); } override public function get clipContent():Boolean{ return (true); } private function labelChangedHandler(_arg1:Event):void{ var _local2:DisplayObject = DisplayObject(_arg1.target); var _local3:int = getChildIndex(_local2); var _local4:Button = getHeaderAt(_local3); _local4.label = Container(_arg1.target).label; } override public function set clipContent(_arg1:Boolean):void{ } public function getHeaderAt(_arg1:int):Button{ return (Button(rawChildren.getChildByName((HEADER_NAME_BASE + _arg1)))); } override public function setChildIndex(_arg1:DisplayObject, _arg2:int):void{ var _local3:int = getChildIndex(_arg1); if ((((_local3 == -1)) || ((_arg2 < 0)))){ return; }; var _local4:int = numChildren; if (_arg2 >= _local4){ _arg2 = (_local4 - 1); }; if (_arg2 == _local3){ return; }; var _local5:Button = getHeaderAt(selectedIndex); if (_local5){ _local5.selected = false; drawHeaderFocus(_focusedIndex, false); }; super.setChildIndex(_arg1, _arg2); shuffleHeaders(_local3, _arg2); var _local6:Button = getHeaderAt(selectedIndex); if (_local6){ _local6.selected = true; drawHeaderFocus(_focusedIndex, showFocusIndicator); }; instantiateChild(selectedChild); } override protected function focusOutHandler(_arg1:FocusEvent):void{ super.focusOutHandler(_arg1); showFocusIndicator = false; if (((focusManager) && ((_arg1.target == this)))){ focusManager.defaultButtonEnabled = true; }; } public function saveState():Object{ var _local1:int = ((_selectedIndex == -1)) ? 0 : _selectedIndex; return ({selectedIndex:_local1}); } private function startTween(_arg1:int, _arg2:int):void{ var _local6:Number; var _local7:Number; bSliding = true; tweenViewMetrics = viewMetricsAndPadding; tweenContentWidth = calcContentWidth(); tweenContentHeight = calcContentHeight(); tweenOldSelectedIndex = _arg1; tweenNewSelectedIndex = _arg2; var _local3:Number = getStyle("openDuration"); tween = new Tween(this, 0, tweenContentHeight, _local3); var _local4:Function = (getStyle("openEasingFunction") as Function); if (_local4 != null){ tween.easingFunction = _local4; }; if (_arg1 != -1){ Container(getChildAt(_arg1)).tweeningProperties = ["x", "y", "width", "height"]; }; Container(getChildAt(_arg2)).tweeningProperties = ["x", "y", "width", "height"]; var _local5:Container = Container(getChildAt(_arg2)); if (_local5.numChildren == 0){ _local6 = getStyle("paddingLeft"); _local7 = (borderMetrics.left + ((_local6 > 0)) ? _local6 : 0); _local5.move(_local7, _local5.y); _local5.setActualSize(tweenContentWidth, tweenContentHeight); }; UIComponent.suspendBackgroundProcessing(); } public function get resizeToContent():Boolean{ return (_resizeToContent); } override mx_internal function removeOverlay():void{ if (overlayChild){ UIComponent(overlayChild).removeOverlay(); overlayChild = null; }; } public function get selectedChild():Container{ if (selectedIndex == -1){ return (null); }; return (Container(getChildAt(selectedIndex))); } override public function set horizontalScrollPolicy(_arg1:String):void{ } override public function createComponentsFromDescriptors(_arg1:Boolean=true):void{ var _local3:int; var _local4:int; var _local5:ComponentDescriptor; if (actualCreationPolicy == ContainerCreationPolicy.ALL){ super.createComponentsFromDescriptors(); return; }; var _local2:int = numChildren; if (childDescriptors){ _local3 = childDescriptors.length; _local4 = 0; while (_local4 < _local3) { _local5 = ComponentDescriptor(childDescriptors[_local4]); createComponentFromDescriptor(_local5, false); _local4++; }; }; numChildrenCreated = (numChildren - _local2); processedDescriptors = true; } public function get historyManagementEnabled():Boolean{ return (_historyManagementEnabled); } public function loadState(_arg1:Object):void{ var _local2:int = (_arg1) ? int(_arg1.selectedIndex) : 0; if (_local2 == -1){ _local2 = initialSelectedIndex; }; if (_local2 == -1){ _local2 = 0; }; if (_local2 != _selectedIndex){ bInLoadState = true; selectedIndex = _local2; bInLoadState = false; }; } private function shuffleHeaders(_arg1:int, _arg2:int):void{ var _local3:int; var _local4:Button = getHeaderAt(_arg1); if (_arg2 < _arg1){ _local3 = _arg1; while (_local3 > _arg2) { getHeaderAt((_local3 - 1)).name = (HEADER_NAME_BASE + _local3); _local3--; }; } else { _local3 = _arg1; while (_local3 < _arg2) { getHeaderAt((_local3 + 1)).name = (HEADER_NAME_BASE + _local3); _local3++; }; }; _local4.name = (HEADER_NAME_BASE + _arg2); } public function set resizeToContent(_arg1:Boolean):void{ if (_arg1 != _resizeToContent){ _resizeToContent = _arg1; if (_arg1){ invalidateSize(); }; }; } private function instantiateChild(_arg1:Container):void{ if (!_arg1){ return; }; if (((_arg1) && ((_arg1.numChildrenCreated == -1)))){ _arg1.createComponentsFromDescriptors(); }; invalidateSize(); invalidateDisplayList(); if ((_arg1 is IInvalidating)){ IInvalidating(_arg1).invalidateSize(); }; } override protected function measure():void{ var _local3:Number; var _local13:Button; var _local14:IUIComponent; super.measure(); var _local1:Number = 0; var _local2:Number = 0; _local3 = 0; var _local4:Number = 0; var _local5:Number = getStyle("paddingLeft"); var _local6:Number = getStyle("paddingRight"); var _local7:Number = getHeaderHeight(); if (((((((accPreferredWidth) && (!(_resizeToContent)))) && (!(layoutStyleChanged)))) && (!(childAddedOrRemoved)))){ measuredMinWidth = accMinWidth; measuredMinHeight = accMinHeight; measuredWidth = accPreferredWidth; measuredHeight = accPreferredHeight; return; }; layoutStyleChanged = false; childAddedOrRemoved = false; var _local8:int = numChildren; var _local9:int; while (_local9 < _local8) { _local13 = getHeaderAt(_local9); _local14 = IUIComponent(getChildAt(_local9)); _local1 = Math.max(_local1, _local13.minWidth); _local2 = (_local2 + _local7); _local3 = Math.max(_local3, _local1); _local4 = (_local4 + _local7); if (_local9 == selectedIndex){ _local3 = Math.max(_local3, _local14.getExplicitOrMeasuredWidth()); _local4 = (_local4 + _local14.getExplicitOrMeasuredHeight()); _local1 = Math.max(_local1, _local14.minWidth); _local2 = (_local2 + _local14.minHeight); }; _local9++; }; var _local10:EdgeMetrics = viewMetricsAndPadding; var _local11:Number = (_local10.left + _local10.right); var _local12:Number = (_local10.top + _local10.bottom); if (_local5 < 0){ _local11 = (_local11 - _local5); }; if (_local6 < 0){ _local11 = (_local11 - _local6); }; _local1 = (_local1 + _local11); _local3 = (_local3 + _local11); _local2 = (_local2 + _local12); _local4 = (_local4 + _local12); measuredMinWidth = _local1; measuredMinHeight = _local2; measuredWidth = _local3; measuredHeight = _local4; if (((selectedChild) && ((Container(selectedChild).numChildrenCreated == -1)))){ return; }; if (numChildren == 0){ return; }; accMinWidth = _local1; accMinHeight = _local2; accPreferredWidth = _local3; accPreferredHeight = _local4; } private function drawHeaderFocus(_arg1:int, _arg2:Boolean):void{ if (_arg1 != -1){ getHeaderAt(_arg1).drawFocus(_arg2); }; } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (_arg1.target != this){ return; }; var _local2:int = selectedIndex; switch (_arg1.keyCode){ case Keyboard.PAGE_DOWN: drawHeaderFocus(_focusedIndex, false); _focusedIndex = (selectedIndex = ((selectedIndex < (numChildren - 1))) ? (selectedIndex + 1) : 0); drawHeaderFocus(_focusedIndex, true); _arg1.stopPropagation(); dispatchChangeEvent(_local2, selectedIndex, _arg1); break; case Keyboard.PAGE_UP: drawHeaderFocus(_focusedIndex, false); _focusedIndex = (selectedIndex = ((selectedIndex > 0)) ? (selectedIndex - 1) : (numChildren - 1)); drawHeaderFocus(_focusedIndex, true); _arg1.stopPropagation(); dispatchChangeEvent(_local2, selectedIndex, _arg1); break; case Keyboard.HOME: drawHeaderFocus(_focusedIndex, false); _focusedIndex = (selectedIndex = 0); drawHeaderFocus(_focusedIndex, true); _arg1.stopPropagation(); dispatchChangeEvent(_local2, selectedIndex, _arg1); break; case Keyboard.END: drawHeaderFocus(_focusedIndex, false); _focusedIndex = (selectedIndex = (numChildren - 1)); drawHeaderFocus(_focusedIndex, true); _arg1.stopPropagation(); dispatchChangeEvent(_local2, selectedIndex, _arg1); break; case Keyboard.DOWN: case Keyboard.RIGHT: drawHeaderFocus(_focusedIndex, false); _focusedIndex = ((_focusedIndex < (numChildren - 1))) ? (_focusedIndex + 1) : 0; drawHeaderFocus(_focusedIndex, true); _arg1.stopPropagation(); break; case Keyboard.UP: case Keyboard.LEFT: drawHeaderFocus(_focusedIndex, false); _focusedIndex = ((_focusedIndex > 0)) ? (_focusedIndex - 1) : (numChildren - 1); drawHeaderFocus(_focusedIndex, true); _arg1.stopPropagation(); break; case Keyboard.SPACE: case Keyboard.ENTER: _arg1.stopPropagation(); if (_focusedIndex != selectedIndex){ selectedIndex = _focusedIndex; dispatchChangeEvent(_local2, selectedIndex, _arg1); }; break; }; } override protected function focusInHandler(_arg1:FocusEvent):void{ super.focusInHandler(_arg1); showFocusIndicator = focusManager.showFocusIndicator; if (_arg1.target == this){ focusManager.defaultButtonEnabled = false; }; } override mx_internal function addOverlay(_arg1:uint, _arg2:RoundedRectangle=null):void{ if (overlayChild){ removeOverlay(); }; overlayChild = (selectedChild as IUIComponent); if (!overlayChild){ return; }; overlayColor = _arg1; overlayTargetArea = _arg2; if (((selectedChild) && ((selectedChild.numChildrenCreated == -1)))){ selectedChild.addEventListener(FlexEvent.INITIALIZE, initializeHandler); } else { initializeHandler(null); }; } public function get headerRenderer():IFactory{ return (_headerRenderer); } private function childRemoveHandler(_arg1:ChildExistenceChangedEvent):void{ var _local4:int; var _local8:Button; childAddedOrRemoved = true; if (numChildren == 0){ return; }; var _local2:DisplayObject = _arg1.relatedObject; var _local3:int = selectedIndex; var _local5:int = getChildIndex(_local2); var _local6:int = (numChildren - 1); rawChildren.removeChild(getHeaderAt(_local5)); var _local7:int = _local5; while (_local7 < _local6) { getHeaderAt((_local7 + 1)).name = (HEADER_NAME_BASE + _local7); _local7++; }; if (_local6 == 0){ _local4 = (_focusedIndex = -1); } else { if (_local5 > selectedIndex){ return; }; if (_local5 < selectedIndex){ _local4 = (_local3 - 1); } else { if (_local5 == selectedIndex){ if (_local5 == _local6){ _local4 = (_local3 - 1); if (_local4 != -1){ instantiateChild(Container(getChildAt(_local4))); }; } else { _local4 = _local3; instantiateChild(Container(getChildAt((_local4 + 1)))); }; _local8 = getHeaderAt(_local4); _local8.selected = true; }; }; }; if (_focusedIndex > _local5){ _focusedIndex--; drawHeaderFocus(_focusedIndex, showFocusIndicator); } else { if (_focusedIndex == _local5){ if (_local5 == _local6){ _focusedIndex--; }; drawHeaderFocus(_focusedIndex, showFocusIndicator); }; }; _selectedIndex = _local4; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } override public function set autoLayout(_arg1:Boolean):void{ } mx_internal function onTweenEnd(_arg1:Number):void{ var _local9:Container; var _local12:Button; bSliding = false; var _local2:int = tweenOldSelectedIndex; var _local3:EdgeMetrics = tweenViewMetrics; var _local4:Number = getStyle("verticalGap"); var _local5:Number = getHeaderHeight(); var _local6:Number = calcContentWidth(); var _local7:Number = calcContentHeight(); var _local8:Number = _local3.top; var _local10:int = numChildren; var _local11:int; while (_local11 < _local10) { _local12 = getHeaderAt(_local11); _local12.$y = _local8; _local8 = (_local8 + _local5); if (_local11 == selectedIndex){ _local9 = Container(getChildAt(_local11)); _local9.cacheAsBitmap = false; _local9.scrollRect = null; _local9.visible = true; _local8 = (_local8 + _local7); }; _local8 = (_local8 + _local4); _local11++; }; if (_local2 != -1){ _local9 = Container(getChildAt(_local2)); _local9.cacheAsBitmap = false; _local9.scrollRect = null; _local9.visible = false; _local9.tweeningProperties = null; }; tweenViewMetrics = null; tweenContentWidth = NaN; tweenContentHeight = NaN; tweenOldSelectedIndex = 0; tweenNewSelectedIndex = 0; tween = null; UIComponent.resumeBackgroundProcessing(); Container(getChildAt(selectedIndex)).tweeningProperties = null; if (currentDissolveEffect){ if (currentDissolveEffect.target != null){ currentDissolveEffect.play(); } else { currentDissolveEffect.play([this]); }; }; callLater(instantiateChild, [selectedChild]); } public function set selectedChild(_arg1:Container):void{ var _local2:int = getChildIndex(DisplayObject(_arg1)); if ((((_local2 >= 0)) && ((_local2 < numChildren)))){ selectedIndex = _local2; }; } private function getHeaderHeight():Number{ var _local1:Number = getStyle("headerHeight"); if (isNaN(_local1)){ _local1 = 0; if (numChildren > 0){ _local1 = getHeaderAt(0).measuredHeight; }; }; return (_local1); } public function set historyManagementEnabled(_arg1:Boolean):void{ if (_arg1 != _historyManagementEnabled){ _historyManagementEnabled = _arg1; historyManagementEnabledChanged = true; invalidateProperties(); }; } private function initializeHandler(_arg1:FlexEvent):void{ UIComponent(overlayChild).addOverlay(overlayColor, overlayTargetArea); } mx_internal function get focusedIndex():int{ return (_focusedIndex); } override public function get horizontalScrollPolicy():String{ return (ScrollPolicy.OFF); } private function childAddHandler(_arg1:ChildExistenceChangedEvent):void{ var _local3:Button; childAddedOrRemoved = true; var _local2:DisplayObject = _arg1.relatedObject; _local2.visible = false; createHeader(_local2, getChildIndex(_local2)); _local2.addEventListener("labelChanged", labelChangedHandler, false, 0, true); _local2.addEventListener("iconChanged", iconChangedHandler, false, 0, true); if ((((numChildren == 1)) && ((proposedSelectedIndex == -1)))){ selectedIndex = 0; _local3 = getHeaderAt(0); _local3.selected = true; _focusedIndex = 0; drawHeaderFocus(_focusedIndex, showFocusIndicator); }; if ((_local2 as IAutomationObject)){ }; IAutomationObject(_local2).showInAutomationHierarchy = true; } private function addedToStageHandler(_arg1:Event):void{ if (historyManagementEnabled){ HistoryManager.register(this); }; } private function calcContentHeight():Number{ var _local1:Number = unscaledHeight; var _local2:EdgeMetrics = viewMetricsAndPadding; _local1 = (_local1 - (_local2.top + _local2.bottom)); var _local3:Number = getStyle("verticalGap"); var _local4:Number = getHeaderHeight(); var _local5:int = numChildren; var _local6:int; while (_local6 < _local5) { _local1 = (_local1 - _local4); if (_local6 > 0){ _local1 = (_local1 - _local3); }; _local6++; }; return (_local1); } mx_internal function onTweenUpdate(_arg1:Number):void{ var _local15:Button; var _local16:Container; var _local2:EdgeMetrics = tweenViewMetrics; var _local3:Number = tweenContentWidth; var _local4:Number = tweenContentHeight; var _local5:int = tweenOldSelectedIndex; var _local6:int = tweenNewSelectedIndex; var _local7:Number = _arg1; var _local8:Number = (_local4 - _arg1); var _local9:Number = ((_local5 < _local6)) ? -(_local7) : _local7; var _local10:Number = ((_local6 > _local5)) ? _local8 : -(_local8); var _local11:Number = _local2.top; var _local12:Number = getStyle("verticalGap"); var _local13:int = numChildren; var _local14:int; while (_local14 < _local13) { _local15 = getHeaderAt(_local14); _local16 = Container(getChildAt(_local14)); _local15.$y = _local11; _local11 = (_local11 + _local15.height); if (_local14 == _local5){ _local16.cacheAsBitmap = true; _local16.scrollRect = new Rectangle(0, -(_local9), _local3, _local4); _local16.visible = true; _local11 = (_local11 + _local8); } else { if (_local14 == _local6){ _local16.cacheAsBitmap = true; _local16.scrollRect = new Rectangle(0, -(_local10), _local3, _local4); _local16.visible = true; _local11 = (_local11 + _local7); }; }; _local11 = (_local11 + _local12); _local14++; }; } private function removedFromStageHandler(_arg1:Event):void{ HistoryManager.unregister(this); } private function createHeader(_arg1:DisplayObject, _arg2:int):void{ var _local5:CSSStyleDeclaration; var _local6:Container; var _local7:String; if (((!((selectedIndex == -1))) && (getHeaderAt(selectedIndex)))){ getHeaderAt(selectedIndex).selected = false; }; var _local3:Button = Button(headerRenderer.newInstance()); _local3.name = (HEADER_NAME_BASE + (numChildren - 1)); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local3.styleName = this; }; var _local4:String = getStyle("headerStyleName"); if (_local4){ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local5 = StyleManager.getStyleDeclaration(("." + _local4)); if (_local5){ _local3.styleDeclaration = _local5; }; } else { _local3.styleName = _local4; }; }; _local3.addEventListener(MouseEvent.CLICK, headerClickHandler); IDataRenderer(_local3).data = _arg1; if ((_arg1 is Container)){ _local6 = Container(_arg1); _local3.label = _local6.label; if (_local6.icon){ _local3.setStyle("icon", _local6.icon); }; _local7 = _local6.toolTip; if (((_local7) && (!((_local7 == ""))))){ _local3.toolTip = _local7; _local6.toolTip = null; }; }; rawChildren.addChild(_local3); if (_arg2 != (numChildren - 1)){ shuffleHeaders((numChildren - 1), _arg2); }; if (((!((selectedIndex == -1))) && (getHeaderAt(selectedIndex)))){ getHeaderAt(selectedIndex).selected = true; }; } override public function get autoLayout():Boolean{ return (true); } override public function get baselinePosition():Number{ var _local4:Container; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return (super.baselinePosition); }; if (!validateBaselinePosition()){ return (NaN); }; var _local1 = (numChildren == 0); if (_local1){ _local4 = new Container(); addChild(_local4); validateNow(); }; var _local2:Button = getHeaderAt(0); var _local3:Number = (_local2.y + _local2.baselinePosition); if (_local1){ removeChildAt(0); validateNow(); }; return (_local3); } override public function styleChanged(_arg1:String):void{ var _local2:Object; var _local3:Button; var _local4:CSSStyleDeclaration; var _local5:int; var _local6:int; super.styleChanged(_arg1); if (((((!(_arg1)) || ((_arg1 == "headerStyleName")))) || ((_arg1 == "styleName")))){ _local2 = getStyle("headerStyleName"); if (_local2){ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local4 = StyleManager.getStyleDeclaration(("." + _local2)); if (_local4){ _local5 = 0; while (_local5 < numChildren) { _local3 = getHeaderAt(_local5); if (_local3){ _local3.styleDeclaration = _local4; _local3.regenerateStyleCache(true); _local3.styleChanged(null); }; _local5++; }; }; } else { _local6 = 0; while (_local6 < numChildren) { _local3 = getHeaderAt(_local6); if (_local3){ _local3.styleName = _local2; }; _local6++; }; }; }; } else { if (StyleManager.isSizeInvalidatingStyle(_arg1)){ layoutStyleChanged = true; }; }; } private function calcContentWidth():Number{ var _local1:Number = unscaledWidth; var _local2:EdgeMetrics = viewMetricsAndPadding; _local1 = (_local1 - (_local2.left + _local2.right)); return (_local1); } override protected function commitProperties():void{ super.commitProperties(); if (historyManagementEnabledChanged){ if (historyManagementEnabled){ HistoryManager.register(this); } else { HistoryManager.unregister(this); }; historyManagementEnabledChanged = false; }; commitSelectedIndex(); if (firstTime){ firstTime = false; addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler, false, 0, true); addEventListener(Event.REMOVED_FROM_STAGE, removedFromStageHandler, false, 0, true); }; } protected function get contentWidth():Number{ var _local1:Number = unscaledWidth; var _local2:EdgeMetrics = viewMetricsAndPadding; _local1 = (_local1 - (_local2.left + _local2.right)); _local1 = (_local1 - (getStyle("paddingLeft") + getStyle("paddingRight"))); return (_local1); } private function headerClickHandler(_arg1:Event):void{ var _local2:Button = Button(_arg1.currentTarget); var _local3:int = selectedIndex; selectedChild = Container(IDataRenderer(_local2).data); var _local4:int = selectedIndex; if (_local3 != _local4){ dispatchChangeEvent(_local3, _local4, _arg1); }; } private function iconChangedHandler(_arg1:Event):void{ var _local2:DisplayObject = DisplayObject(_arg1.target); var _local3:int = getChildIndex(_local2); var _local4:Button = getHeaderAt(_local3); _local4.setStyle("icon", Container(_arg1.target).icon); } public function set headerRenderer(_arg1:IFactory):void{ _headerRenderer = _arg1; dispatchEvent(new Event("headerRendererChanged")); } override public function set verticalScrollPolicy(_arg1:String):void{ } public function set selectedIndex(_arg1:int):void{ if (_arg1 == -1){ return; }; if (_arg1 == _selectedIndex){ return; }; proposedSelectedIndex = _arg1; invalidateProperties(); if (((((historyManagementEnabled) && (!((_selectedIndex == -1))))) && (!(bInLoadState)))){ bSaveState = true; }; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } override public function get verticalScrollPolicy():String{ return (ScrollPolicy.OFF); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local17:Button; var _local18:IUIComponent; var _local19:Number; var _local20:Number; super.updateDisplayList(_arg1, _arg2); if (tween){ return; }; var _local3:EdgeMetrics = borderMetrics; var _local4:Number = getStyle("paddingLeft"); var _local5:Number = getStyle("paddingRight"); var _local6:Number = getStyle("paddingTop"); var _local7:Number = getStyle("verticalGap"); var _local8:Number = calcContentWidth(); var _local9:Number = calcContentHeight(); var _local10:Number = (_local3.left + _local4); var _local11:Number = (_local3.top + _local6); var _local12:Number = _local10; var _local13:Number = _local8; var _local14:Number = getHeaderHeight(); if (_local4 < 0){ _local12 = (_local12 - _local4); _local13 = (_local13 + _local4); }; if (_local5 < 0){ _local13 = (_local13 + _local5); }; var _local15:int = numChildren; var _local16:int; while (_local16 < _local15) { _local17 = getHeaderAt(_local16); _local18 = IUIComponent(getChildAt(_local16)); _local17.move(_local10, _local11); _local17.setActualSize(_local8, _local14); _local11 = (_local11 + _local14); if (_local16 == selectedIndex){ _local18.move(_local12, _local11); _local18.visible = true; _local19 = _local13; _local20 = _local9; if (!isNaN(_local18.percentWidth)){ if (_local19 > _local18.maxWidth){ _local19 = _local18.maxWidth; }; } else { if (_local19 > _local18.getExplicitOrMeasuredWidth()){ _local19 = _local18.getExplicitOrMeasuredWidth(); }; }; if (!isNaN(_local18.percentHeight)){ if (_local20 > _local18.maxHeight){ _local20 = _local18.maxHeight; }; } else { if (_local20 > _local18.getExplicitOrMeasuredHeight()){ _local20 = _local18.getExplicitOrMeasuredHeight(); }; }; if (((!((_local18.width == _local19))) || (!((_local18.height == _local20))))){ _local18.setActualSize(_local19, _local20); }; _local11 = (_local11 + _local9); } else { _local18.move(_local12, ((_local16 < selectedIndex)) ? _local11 : (_local11 - _local9)); _local18.visible = false; }; _local11 = (_local11 + _local7); _local16++; }; if (blocker){ rawChildren.setChildIndex(blocker, (numChildren - 1)); }; drawHeaderFocus(_focusedIndex, showFocusIndicator); } override public function drawFocus(_arg1:Boolean):void{ drawHeaderFocus(_focusedIndex, _arg1); } public function get selectedIndex():int{ if (proposedSelectedIndex != -1){ return (proposedSelectedIndex); }; return (_selectedIndex); } override mx_internal function setActualCreationPolicies(_arg1:String):void{ var _local2:int; var _local3:int; super.setActualCreationPolicies(_arg1); if ((((_arg1 == ContainerCreationPolicy.ALL)) && ((numChildren > 0)))){ _local2 = numChildren; _local3 = 0; while (_local3 < _local2) { Container(getChildAt(_local3)).createComponentsFromDescriptors(); _local3++; }; }; } } }//package mx.containers
Section 102
//ApplicationControlBar (mx.containers.ApplicationControlBar) package mx.containers { import mx.core.*; import flash.events.*; import mx.styles.*; public class ApplicationControlBar extends ControlBar { private var dockChanged:Boolean;// = false private var _dock:Boolean;// = false mx_internal static const VERSION:String = "3.2.0.3794"; public function set dock(_arg1:Boolean):void{ if (_dock != _arg1){ _dock = _arg1; dockChanged = true; invalidateProperties(); dispatchEvent(new Event("dockChanged")); }; } public function resetDock(_arg1:Boolean):void{ _dock = !(_arg1); dock = _arg1; } public function get dock():Boolean{ return (_dock); } override protected function commitProperties():void{ super.commitProperties(); if (dockChanged){ dockChanged = false; if ((parent is Application)){ Application(parent).dockControlBar(this, _dock); }; }; } override public function set enabled(_arg1:Boolean):void{ var _local2:Object = blocker; super.enabled = _arg1; if (((blocker) && (!((blocker == _local2))))){ if ((blocker is IStyleClient)){ IStyleClient(blocker).setStyle("borderStyle", "applicationControlBar"); }; }; } } }//package mx.containers
Section 103
//Box (mx.containers.Box) package mx.containers { import mx.core.*; import flash.events.*; import mx.containers.utilityClasses.*; public class Box extends Container { mx_internal var layoutObject:BoxLayout; mx_internal static const VERSION:String = "3.2.0.3794"; public function Box(){ layoutObject = new BoxLayout(); super(); layoutObject.target = this; } mx_internal function isVertical():Boolean{ return (!((direction == BoxDirection.HORIZONTAL))); } public function set direction(_arg1:String):void{ layoutObject.direction = _arg1; invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("directionChanged")); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); layoutObject.updateDisplayList(_arg1, _arg2); } public function pixelsToPercent(_arg1:Number):Number{ var _local8:IUIComponent; var _local9:Number; var _local10:Number; var _local2:Boolean = isVertical(); var _local3:Number = 0; var _local4:Number = 0; var _local5:int = numChildren; var _local6:int; while (_local6 < _local5) { _local8 = IUIComponent(getChildAt(_local6)); _local9 = (_local2) ? _local8.height : _local8.width; _local10 = (_local2) ? _local8.percentHeight : _local8.percentWidth; if (!isNaN(_local10)){ _local3 = (_local3 + _local10); _local4 = (_local4 + _local9); }; _local6++; }; var _local7:Number = 100; if (_local4 != _arg1){ _local7 = (((_local4 * _local3) / (_local4 - _arg1)) - _local3); }; return (_local7); } override protected function measure():void{ super.measure(); layoutObject.measure(); } public function get direction():String{ return (layoutObject.direction); } } }//package mx.containers
Section 104
//BoxDirection (mx.containers.BoxDirection) package mx.containers { public final class BoxDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.containers
Section 105
//Canvas (mx.containers.Canvas) package mx.containers { import mx.core.*; import mx.containers.utilityClasses.*; public class Canvas extends Container implements IConstraintLayout { private var _constraintColumns:Array; private var layoutObject:CanvasLayout; private var _constraintRows:Array; mx_internal static const VERSION:String = "3.2.0.3794"; public function Canvas(){ layoutObject = new CanvasLayout(); _constraintColumns = []; _constraintRows = []; super(); layoutObject.target = this; } public function get constraintColumns():Array{ return (_constraintColumns); } override mx_internal function get usePadding():Boolean{ return (false); } public function set constraintRows(_arg1:Array):void{ var _local2:int; var _local3:int; if (_arg1 != _constraintRows){ _local2 = _arg1.length; _local3 = 0; while (_local3 < _local2) { ConstraintRow(_arg1[_local3]).container = this; _local3++; }; _constraintRows = _arg1; invalidateSize(); invalidateDisplayList(); }; } public function get constraintRows():Array{ return (_constraintRows); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); layoutObject.updateDisplayList(_arg1, _arg2); } public function set constraintColumns(_arg1:Array):void{ var _local2:int; var _local3:int; if (_arg1 != _constraintColumns){ _local2 = _arg1.length; _local3 = 0; while (_local3 < _local2) { ConstraintColumn(_arg1[_local3]).container = this; _local3++; }; _constraintColumns = _arg1; invalidateSize(); invalidateDisplayList(); }; } override protected function measure():void{ super.measure(); layoutObject.measure(); } } }//package mx.containers
Section 106
//ControlBar (mx.containers.ControlBar) package mx.containers { import mx.core.*; public class ControlBar extends Box { mx_internal static const VERSION:String = "3.2.0.3794"; public function ControlBar(){ direction = BoxDirection.HORIZONTAL; } override public function set verticalScrollPolicy(_arg1:String):void{ } override public function set horizontalScrollPolicy(_arg1:String):void{ } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); if (contentPane){ contentPane.opaqueBackground = null; }; } override public function set enabled(_arg1:Boolean):void{ if (_arg1 != super.enabled){ super.enabled = _arg1; alpha = (_arg1) ? 1 : 0.4; }; } override public function get horizontalScrollPolicy():String{ return (ScrollPolicy.OFF); } override public function invalidateSize():void{ super.invalidateSize(); if (parent){ Container(parent).invalidateViewMetricsAndPadding(); }; } override public function get verticalScrollPolicy():String{ return (ScrollPolicy.OFF); } override public function set includeInLayout(_arg1:Boolean):void{ var _local2:Container; if (includeInLayout != _arg1){ super.includeInLayout = _arg1; _local2 = (parent as Container); if (_local2){ _local2.invalidateViewMetricsAndPadding(); }; }; } } }//package mx.containers
Section 107
//HBox (mx.containers.HBox) package mx.containers { import mx.core.*; public class HBox extends Box { mx_internal static const VERSION:String = "3.2.0.3794"; public function HBox(){ mx_internal::layoutObject.direction = BoxDirection.HORIZONTAL; } override public function set direction(_arg1:String):void{ } } }//package mx.containers
Section 108
//Panel (mx.containers.Panel) package mx.containers { import flash.display.*; import flash.geom.*; import flash.text.*; import mx.core.*; import mx.automation.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import mx.effects.*; import flash.utils.*; import mx.containers.utilityClasses.*; public class Panel extends Container implements IConstraintLayout, IFontContextComponent { private var layoutObject:Layout; private var _status:String;// = "" private var _titleChanged:Boolean;// = false mx_internal var titleBarBackground:IFlexDisplayObject; private var regX:Number; private var regY:Number; private var _layout:String;// = "vertical" mx_internal var closeButton:Button; private var initializing:Boolean;// = true private var _title:String;// = "" protected var titleTextField:IUITextField; private var _statusChanged:Boolean;// = false private var autoSetRoundedCorners:Boolean; private var _titleIcon:Class; private var _constraintRows:Array; protected var controlBar:IUIComponent; mx_internal var titleIconObject:Object;// = null protected var titleBar:UIComponent; private var panelViewMetrics:EdgeMetrics; private var _constraintColumns:Array; mx_internal var _showCloseButton:Boolean;// = false private var checkedForAutoSetRoundedCorners:Boolean; private var _titleIconChanged:Boolean;// = false protected var statusTextField:IUITextField; mx_internal static const VERSION:String = "3.2.0.3794"; private static const HEADER_PADDING:Number = 14; mx_internal static var createAccessibilityImplementation:Function; private static var _closeButtonStyleFilters:Object = {closeButtonUpSkin:"closeButtonUpSkin", closeButtonOverSkin:"closeButtonOverSkin", closeButtonDownSkin:"closeButtonDownSkin", closeButtonDisabledSkin:"closeButtonDisabledSkin", closeButtonSkin:"closeButtonSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; public function Panel(){ _constraintColumns = []; _constraintRows = []; super(); addEventListener("resizeStart", EffectManager.eventHandler, false, EventPriority.EFFECT); addEventListener("resizeEnd", EffectManager.eventHandler, false, EventPriority.EFFECT); layoutObject = new BoxLayout(); layoutObject.target = this; showInAutomationHierarchy = true; } private function systemManager_mouseUpHandler(_arg1:MouseEvent):void{ if (!isNaN(regX)){ stopDragging(); }; } mx_internal function getHeaderHeightProxy():Number{ return (getHeaderHeight()); } override public function getChildIndex(_arg1:DisplayObject):int{ if (((controlBar) && ((_arg1 == controlBar)))){ return (numChildren); }; return (super.getChildIndex(_arg1)); } mx_internal function get _controlBar():IUIComponent{ return (controlBar); } mx_internal function getTitleBar():UIComponent{ return (titleBar); } public function get layout():String{ return (_layout); } override protected function createChildren():void{ var _local1:Class; var _local2:IStyleClient; var _local3:ISimpleStyleClient; super.createChildren(); if (!titleBar){ titleBar = new UIComponent(); titleBar.visible = false; titleBar.addEventListener(MouseEvent.MOUSE_DOWN, titleBar_mouseDownHandler); rawChildren.addChild(titleBar); }; if (!titleBarBackground){ _local1 = getStyle("titleBackgroundSkin"); if (_local1){ titleBarBackground = new (_local1); _local2 = (titleBarBackground as IStyleClient); if (_local2){ _local2.setStyle("backgroundImage", undefined); }; _local3 = (titleBarBackground as ISimpleStyleClient); if (_local3){ _local3.styleName = this; }; titleBar.addChild(DisplayObject(titleBarBackground)); }; }; createTitleTextField(-1); createStatusTextField(-1); if (!closeButton){ closeButton = new Button(); closeButton.styleName = new StyleProxy(this, closeButtonStyleFilters); closeButton.upSkinName = "closeButtonUpSkin"; closeButton.overSkinName = "closeButtonOverSkin"; closeButton.downSkinName = "closeButtonDownSkin"; closeButton.disabledSkinName = "closeButtonDisabledSkin"; closeButton.skinName = "closeButtonSkin"; closeButton.explicitWidth = (closeButton.explicitHeight = 16); closeButton.focusEnabled = false; closeButton.visible = false; closeButton.enabled = enabled; closeButton.addEventListener(MouseEvent.CLICK, closeButton_clickHandler); titleBar.addChild(closeButton); closeButton.owner = this; }; } public function get constraintColumns():Array{ return (_constraintColumns); } override public function set cacheAsBitmap(_arg1:Boolean):void{ super.cacheAsBitmap = _arg1; if (((((((cacheAsBitmap) && (!(contentPane)))) && (!((cachePolicy == UIComponentCachePolicy.OFF))))) && (getStyle("backgroundColor")))){ createContentPane(); invalidateDisplayList(); }; } override public function createComponentsFromDescriptors(_arg1:Boolean=true):void{ var _local3:Object; super.createComponentsFromDescriptors(); if (numChildren == 0){ setControlBar(null); return; }; var _local2:IUIComponent = IUIComponent(getChildAt((numChildren - 1))); if ((_local2 is ControlBar)){ _local3 = _local2.document; if (contentPane){ contentPane.removeChild(DisplayObject(_local2)); } else { removeChild(DisplayObject(_local2)); }; _local2.document = _local3; rawChildren.addChild(DisplayObject(_local2)); setControlBar(_local2); } else { setControlBar(null); }; } override protected function layoutChrome(_arg1:Number, _arg2:Number):void{ var _local9:Number; var _local10:Graphics; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; super.layoutChrome(_arg1, _arg2); var _local3:EdgeMetrics = EdgeMetrics.EMPTY; var _local4:Number = getStyle("borderThickness"); if ((((((getQualifiedClassName(border) == "mx.skins.halo::PanelSkin")) && (!((getStyle("borderStyle") == "default"))))) && (_local4))){ _local3 = new EdgeMetrics(_local4, _local4, _local4, _local4); }; var _local5:EdgeMetrics = ((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) ? borderMetrics : _local3; var _local6:Number = _local5.left; var _local7:Number = _local5.top; var _local8:Number = getHeaderHeight(); if ((((_local8 > 0)) && ((height >= _local8)))){ _local9 = ((_arg1 - _local5.left) - _local5.right); showTitleBar(true); titleBar.mouseChildren = true; titleBar.mouseEnabled = true; _local10 = titleBar.graphics; _local10.clear(); _local10.beginFill(0xFFFFFF, 0); _local10.drawRect(0, 0, _local9, _local8); _local10.endFill(); titleBar.move(_local6, _local7); titleBar.setActualSize(_local9, _local8); titleBarBackground.move(0, 0); IFlexDisplayObject(titleBarBackground).setActualSize(_local9, _local8); closeButton.visible = _showCloseButton; if (_showCloseButton){ closeButton.setActualSize(closeButton.getExplicitOrMeasuredWidth(), closeButton.getExplicitOrMeasuredHeight()); closeButton.move(((((_arg1 - _local6) - _local5.right) - 10) - closeButton.getExplicitOrMeasuredWidth()), ((_local8 - closeButton.getExplicitOrMeasuredHeight()) / 2)); }; _local11 = 10; _local12 = 10; if (titleIconObject){ _local13 = titleIconObject.height; _local14 = ((_local8 - _local13) / 2); titleIconObject.move(_local11, _local14); _local11 = (_local11 + (titleIconObject.width + 4)); }; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local13 = titleTextField.nonZeroTextHeight; } else { _local13 = titleTextField.getUITextFormat().measureText(titleTextField.text).height; }; _local14 = ((_local8 - _local13) / 2); _local15 = (_local5.left + _local5.right); titleTextField.move(_local11, (_local14 - 1)); titleTextField.setActualSize(Math.max(0, (((_arg1 - _local11) - _local12) - _local15)), (_local13 + UITextField.TEXT_HEIGHT_PADDING)); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local13 = statusTextField.textHeight; } else { _local13 = ((statusTextField.text)!="") ? statusTextField.getUITextFormat().measureText(statusTextField.text).height : 0; }; _local14 = ((_local8 - _local13) / 2); _local16 = ((((_arg1 - _local12) - 4) - _local15) - statusTextField.textWidth); if (_showCloseButton){ _local16 = (_local16 - (closeButton.getExplicitOrMeasuredWidth() + 4)); }; statusTextField.move(_local16, (_local14 - 1)); statusTextField.setActualSize((statusTextField.textWidth + 8), (statusTextField.textHeight + UITextField.TEXT_HEIGHT_PADDING)); _local17 = ((titleTextField.x + titleTextField.textWidth) + 8); if (statusTextField.x < _local17){ statusTextField.width = Math.max((statusTextField.width - (_local17 - statusTextField.x)), 0); statusTextField.x = _local17; }; } else { if (titleBar){ showTitleBar(false); titleBar.mouseChildren = false; titleBar.mouseEnabled = false; }; }; if (controlBar){ _local18 = controlBar.x; _local19 = controlBar.y; _local20 = controlBar.width; _local21 = controlBar.height; controlBar.setActualSize((_arg1 - (_local5.left + _local5.right)), controlBar.getExplicitOrMeasuredHeight()); controlBar.move(_local5.left, ((_arg2 - _local5.bottom) - controlBar.getExplicitOrMeasuredHeight())); if (controlBar.includeInLayout){ controlBar.visible = (controlBar.y >= _local5.top); }; if (((((((!((_local18 == controlBar.x))) || (!((_local19 == controlBar.y))))) || (!((_local20 == controlBar.width))))) || (!((_local21 == controlBar.height))))){ invalidateDisplayList(); }; }; } public function set layout(_arg1:String):void{ if (_layout != _arg1){ _layout = _arg1; if (layoutObject){ layoutObject.target = null; }; if (_layout == ContainerLayout.ABSOLUTE){ layoutObject = new CanvasLayout(); } else { layoutObject = new BoxLayout(); if (_layout == ContainerLayout.VERTICAL){ BoxLayout(layoutObject).direction = BoxDirection.VERTICAL; } else { BoxLayout(layoutObject).direction = BoxDirection.HORIZONTAL; }; }; if (layoutObject){ layoutObject.target = this; }; invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("layoutChanged")); }; } public function get constraintRows():Array{ return (_constraintRows); } public function get title():String{ return (_title); } mx_internal function getTitleTextField():IUITextField{ return (titleTextField); } mx_internal function createStatusTextField(_arg1:int):void{ var _local2:String; if (((titleBar) && (!(statusTextField)))){ statusTextField = IUITextField(createInFontContext(UITextField)); statusTextField.selectable = false; if (_arg1 == -1){ titleBar.addChild(DisplayObject(statusTextField)); } else { titleBar.addChildAt(DisplayObject(statusTextField), _arg1); }; _local2 = getStyle("statusStyleName"); statusTextField.styleName = _local2; statusTextField.text = status; statusTextField.enabled = enabled; }; } public function get fontContext():IFlexModuleFactory{ return (moduleFactory); } override protected function measure():void{ var _local6:Number; super.measure(); layoutObject.measure(); var _local1:Rectangle = measureHeaderText(); var _local2:Number = _local1.width; var _local3:Number = _local1.height; var _local4:EdgeMetrics = ((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) ? borderMetrics : EdgeMetrics.EMPTY; _local2 = (_local2 + (_local4.left + _local4.right)); var _local5:Number = 5; _local2 = (_local2 + (_local5 * 2)); if (titleIconObject){ _local2 = (_local2 + titleIconObject.width); }; if (closeButton){ _local2 = (_local2 + (closeButton.getExplicitOrMeasuredWidth() + 6)); }; measuredMinWidth = Math.max(_local2, measuredMinWidth); measuredWidth = Math.max(_local2, measuredWidth); if (((controlBar) && (controlBar.includeInLayout))){ _local6 = ((controlBar.getExplicitOrMeasuredWidth() + _local4.left) + _local4.right); measuredWidth = Math.max(measuredWidth, _local6); }; } mx_internal function getControlBar():IUIComponent{ return (controlBar); } override public function get viewMetrics():EdgeMetrics{ var _local2:EdgeMetrics; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local1:EdgeMetrics = super.viewMetrics; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ if (!panelViewMetrics){ panelViewMetrics = new EdgeMetrics(0, 0, 0, 0); }; _local1 = panelViewMetrics; _local2 = super.viewMetrics; _local3 = getStyle("borderThickness"); _local4 = getStyle("borderThicknessLeft"); _local5 = getStyle("borderThicknessTop"); _local6 = getStyle("borderThicknessRight"); _local7 = getStyle("borderThicknessBottom"); _local1.left = (_local2.left + (isNaN(_local4)) ? _local3 : _local4); _local1.top = (_local2.top + (isNaN(_local5)) ? _local3 : _local5); _local1.right = (_local2.right + (isNaN(_local6)) ? _local3 : _local6); _local1.bottom = (_local2.bottom + (isNaN(_local7)) ? (((controlBar) && (!(isNaN(_local5))))) ? _local5 : (isNaN(_local4)) ? _local3 : _local4 : _local7); _local8 = getHeaderHeight(); if (!isNaN(_local8)){ _local1.top = (_local1.top + _local8); }; if (((controlBar) && (controlBar.includeInLayout))){ _local1.bottom = (_local1.bottom + controlBar.getExplicitOrMeasuredHeight()); }; }; return (_local1); } private function measureHeaderText():Rectangle{ var _local3:UITextFormat; var _local4:TextLineMetrics; var _local1:Number = 20; var _local2:Number = 14; if (((titleTextField) && (titleTextField.text))){ titleTextField.validateNow(); _local3 = titleTextField.getUITextFormat(); _local4 = _local3.measureText(titleTextField.text, false); _local1 = _local4.width; _local2 = _local4.height; }; if (((statusTextField) && (statusTextField.text))){ statusTextField.validateNow(); _local3 = statusTextField.getUITextFormat(); _local4 = _local3.measureText(statusTextField.text, false); _local1 = Math.max(_local1, _local4.width); _local2 = Math.max(_local2, _local4.height); }; return (new Rectangle(0, 0, Math.round(_local1), Math.round(_local2))); } mx_internal function createTitleTextField(_arg1:int):void{ var _local2:String; if (!titleTextField){ titleTextField = IUITextField(createInFontContext(UITextField)); titleTextField.selectable = false; if (_arg1 == -1){ titleBar.addChild(DisplayObject(titleTextField)); } else { titleBar.addChildAt(DisplayObject(titleTextField), _arg1); }; _local2 = getStyle("titleStyleName"); titleTextField.styleName = _local2; titleTextField.text = title; titleTextField.enabled = enabled; }; } private function closeButton_clickHandler(_arg1:MouseEvent):void{ dispatchEvent(new CloseEvent(CloseEvent.CLOSE)); } private function setControlBar(_arg1:IUIComponent):void{ if (_arg1 == controlBar){ return; }; controlBar = _arg1; if (!checkedForAutoSetRoundedCorners){ checkedForAutoSetRoundedCorners = true; autoSetRoundedCorners = (styleDeclaration) ? (styleDeclaration.getStyle("roundedBottomCorners") === undefined) : true; }; if (autoSetRoundedCorners){ setStyle("roundedBottomCorners", !((controlBar == null))); }; var _local2:String = getStyle("controlBarStyleName"); if (((_local2) && ((controlBar is ISimpleStyleClient)))){ ISimpleStyleClient(controlBar).styleName = _local2; }; if (controlBar){ controlBar.enabled = enabled; }; if ((controlBar is IAutomationObject)){ IAutomationObject(controlBar).showInAutomationHierarchy = false; }; invalidateViewMetricsAndPadding(); invalidateSize(); invalidateDisplayList(); } protected function get closeButtonStyleFilters():Object{ return (_closeButtonStyleFilters); } public function set constraintColumns(_arg1:Array):void{ var _local2:int; var _local3:int; if (_arg1 != _constraintColumns){ _local2 = _arg1.length; _local3 = 0; while (_local3 < _local2) { ConstraintColumn(_arg1[_local3]).container = this; _local3++; }; _constraintColumns = _arg1; invalidateSize(); invalidateDisplayList(); }; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; if (titleTextField){ titleTextField.enabled = _arg1; }; if (statusTextField){ statusTextField.enabled = _arg1; }; if (controlBar){ controlBar.enabled = _arg1; }; if (closeButton){ closeButton.enabled = _arg1; }; } override public function get baselinePosition():Number{ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return (super.baselinePosition); }; if (!validateBaselinePosition()){ return (NaN); }; return (((titleBar.y + titleTextField.y) + titleTextField.baselinePosition)); } protected function stopDragging():void{ var _local1:DisplayObject = systemManager.getSandboxRoot(); _local1.removeEventListener(MouseEvent.MOUSE_MOVE, systemManager_mouseMoveHandler, true); _local1.removeEventListener(MouseEvent.MOUSE_UP, systemManager_mouseUpHandler, true); _local1.removeEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, stage_mouseLeaveHandler); regX = NaN; regY = NaN; systemManager.deployMouseShields(false); } private function titleBar_mouseDownHandler(_arg1:MouseEvent):void{ if (_arg1.target == closeButton){ return; }; if (((((enabled) && (isPopUp))) && (isNaN(regX)))){ startDragging(_arg1); }; } override mx_internal function get usePadding():Boolean{ return (!((layout == ContainerLayout.ABSOLUTE))); } override protected function initializeAccessibility():void{ if (Panel.createAccessibilityImplementation != null){ Panel.createAccessibilityImplementation(this); }; } protected function getHeaderHeight():Number{ var _local1:Number = getStyle("headerHeight"); if (isNaN(_local1)){ _local1 = (measureHeaderText().height + HEADER_PADDING); }; return (_local1); } public function set constraintRows(_arg1:Array):void{ var _local2:int; var _local3:int; if (_arg1 != _constraintRows){ _local2 = _arg1.length; _local3 = 0; while (_local3 < _local2) { ConstraintRow(_arg1[_local3]).container = this; _local3++; }; _constraintRows = _arg1; invalidateSize(); invalidateDisplayList(); }; } public function set title(_arg1:String):void{ _title = _arg1; _titleChanged = true; invalidateProperties(); invalidateSize(); invalidateViewMetricsAndPadding(); dispatchEvent(new Event("titleChanged")); } private function showTitleBar(_arg1:Boolean):void{ var _local4:DisplayObject; titleBar.visible = _arg1; var _local2:int = titleBar.numChildren; var _local3:int; while (_local3 < _local2) { _local4 = titleBar.getChildAt(_local3); _local4.visible = _arg1; _local3++; }; } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local4:String; var _local5:String; var _local6:Class; var _local7:IStyleClient; var _local8:ISimpleStyleClient; var _local2:Boolean = ((!(_arg1)) || ((_arg1 == "styleName"))); super.styleChanged(_arg1); if (((_local2) || ((_arg1 == "titleStyleName")))){ if (titleTextField){ _local3 = getStyle("titleStyleName"); titleTextField.styleName = _local3; }; }; if (((_local2) || ((_arg1 == "statusStyleName")))){ if (statusTextField){ _local4 = getStyle("statusStyleName"); statusTextField.styleName = _local4; }; }; if (((_local2) || ((_arg1 == "controlBarStyleName")))){ if (((controlBar) && ((controlBar is ISimpleStyleClient)))){ _local5 = getStyle("controlBarStyleName"); ISimpleStyleClient(controlBar).styleName = _local5; }; }; if (((_local2) || ((_arg1 == "titleBackgroundSkin")))){ if (titleBar){ _local6 = getStyle("titleBackgroundSkin"); if (_local6){ if (titleBarBackground){ titleBar.removeChild(DisplayObject(titleBarBackground)); titleBarBackground = null; }; titleBarBackground = new (_local6); _local7 = (titleBarBackground as IStyleClient); if (_local7){ _local7.setStyle("backgroundImage", undefined); }; _local8 = (titleBarBackground as ISimpleStyleClient); if (_local8){ _local8.styleName = this; }; titleBar.addChildAt(DisplayObject(titleBarBackground), 0); }; }; }; } mx_internal function getStatusTextField():IUITextField{ return (statusTextField); } public function set fontContext(_arg1:IFlexModuleFactory):void{ this.moduleFactory = _arg1; } override protected function commitProperties():void{ var _local1:int; super.commitProperties(); if (hasFontContextChanged()){ if (titleTextField){ _local1 = titleBar.getChildIndex(DisplayObject(titleTextField)); removeTitleTextField(); createTitleTextField(_local1); _titleChanged = true; }; if (statusTextField){ _local1 = titleBar.getChildIndex(DisplayObject(statusTextField)); removeStatusTextField(); createStatusTextField(_local1); _statusChanged = true; }; }; if (_titleChanged){ _titleChanged = false; titleTextField.text = _title; if (initialized){ layoutChrome(unscaledWidth, unscaledHeight); }; }; if (_titleIconChanged){ _titleIconChanged = false; if (titleIconObject){ titleBar.removeChild(DisplayObject(titleIconObject)); titleIconObject = null; }; if (_titleIcon){ titleIconObject = new _titleIcon(); titleBar.addChild(DisplayObject(titleIconObject)); }; if (initialized){ layoutChrome(unscaledWidth, unscaledHeight); }; }; if (_statusChanged){ _statusChanged = false; statusTextField.text = _status; if (initialized){ layoutChrome(unscaledWidth, unscaledHeight); }; }; } protected function startDragging(_arg1:MouseEvent):void{ regX = (_arg1.stageX - x); regY = (_arg1.stageY - y); var _local2:DisplayObject = systemManager.getSandboxRoot(); _local2.addEventListener(MouseEvent.MOUSE_MOVE, systemManager_mouseMoveHandler, true); _local2.addEventListener(MouseEvent.MOUSE_UP, systemManager_mouseUpHandler, true); _local2.addEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, stage_mouseLeaveHandler); systemManager.deployMouseShields(true); } mx_internal function removeStatusTextField():void{ if (((titleBar) && (statusTextField))){ titleBar.removeChild(DisplayObject(statusTextField)); statusTextField = null; }; } private function stage_mouseLeaveHandler(_arg1:Event):void{ if (!isNaN(regX)){ stopDragging(); }; } public function set status(_arg1:String):void{ _status = _arg1; _statusChanged = true; invalidateProperties(); dispatchEvent(new Event("statusChanged")); } public function get titleIcon():Class{ return (_titleIcon); } public function get status():String{ return (_status); } private function systemManager_mouseMoveHandler(_arg1:MouseEvent):void{ _arg1.stopImmediatePropagation(); if (((isNaN(regX)) || (isNaN(regY)))){ return; }; move((_arg1.stageX - regX), (_arg1.stageY - regY)); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); layoutObject.updateDisplayList(_arg1, _arg2); if (border){ border.visible = true; }; titleBar.visible = true; } mx_internal function removeTitleTextField():void{ if (((titleBar) && (titleTextField))){ titleBar.removeChild(DisplayObject(titleTextField)); titleTextField = null; }; } public function set titleIcon(_arg1:Class):void{ _titleIcon = _arg1; _titleIconChanged = true; invalidateProperties(); invalidateSize(); dispatchEvent(new Event("titleIconChanged")); } } }//package mx.containers
Section 109
//TitleWindow (mx.containers.TitleWindow) package mx.containers { public class TitleWindow extends Panel { mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var createAccessibilityImplementation:Function; public function set showCloseButton(_arg1:Boolean):void{ _showCloseButton = _arg1; } public function get showCloseButton():Boolean{ return (_showCloseButton); } override protected function initializeAccessibility():void{ if (_slot1.createAccessibilityImplementation != null){ _slot1.createAccessibilityImplementation(this); }; } } }//package mx.containers
Section 110
//VBox (mx.containers.VBox) package mx.containers { import mx.core.*; public class VBox extends Box { mx_internal static const VERSION:String = "3.2.0.3794"; public function VBox(){ mx_internal::layoutObject.direction = BoxDirection.VERTICAL; } override public function set direction(_arg1:String):void{ } } }//package mx.containers
Section 111
//DataGridListData (mx.controls.dataGridClasses.DataGridListData) package mx.controls.dataGridClasses { import mx.core.*; import mx.controls.listClasses.*; public class DataGridListData extends BaseListData { public var dataField:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function DataGridListData(_arg1:String, _arg2:String, _arg3:int, _arg4:String, _arg5:IUIComponent, _arg6:int=0){ super(_arg1, _arg4, _arg5, _arg6, _arg3); this.dataField = _arg2; } } }//package mx.controls.dataGridClasses
Section 112
//BaseListData (mx.controls.listClasses.BaseListData) package mx.controls.listClasses { import mx.core.*; public class BaseListData { private var _uid:String; public var owner:IUIComponent; public var label:String; public var rowIndex:int; public var columnIndex:int; mx_internal static const VERSION:String = "3.2.0.3794"; public function BaseListData(_arg1:String, _arg2:String, _arg3:IUIComponent, _arg4:int=0, _arg5:int=0){ this.label = _arg1; this.uid = _arg2; this.owner = _arg3; this.rowIndex = _arg4; this.columnIndex = _arg5; } public function set uid(_arg1:String):void{ _uid = _arg1; } public function get uid():String{ return (_uid); } } }//package mx.controls.listClasses
Section 113
//IDropInListItemRenderer (mx.controls.listClasses.IDropInListItemRenderer) package mx.controls.listClasses { public interface IDropInListItemRenderer { function get listData():BaseListData; function set listData(_arg1:BaseListData):void; } }//package mx.controls.listClasses
Section 114
//IListItemRenderer (mx.controls.listClasses.IListItemRenderer) package mx.controls.listClasses { import mx.core.*; import mx.managers.*; import flash.events.*; import mx.styles.*; public interface IListItemRenderer extends IDataRenderer, IEventDispatcher, IFlexDisplayObject, ILayoutManagerClient, ISimpleStyleClient, IUIComponent { } }//package mx.controls.listClasses
Section 115
//ListBase (mx.controls.listClasses.ListBase) package mx.controls.listClasses { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.effects.*; import flash.utils.*; import mx.collections.*; import mx.utils.*; import flash.ui.*; import mx.skins.halo.*; import mx.collections.errors.*; import mx.controls.dataGridClasses.*; public class ListBase extends ScrollControlBase implements IDataRenderer, IFocusManagerComponent, IListItemRenderer, IDropInListItemRenderer, IEffectTargetHost { private var _labelField:String;// = "label" private var trackedRenderers:Array; mx_internal var bSelectionChanged:Boolean;// = false protected var offscreenExtraColumnsLeft:int;// = 0 protected var selectionTweens:Object; protected var caretItemRenderer:IListItemRenderer; protected var actualIterator:IViewCursor; protected var iteratorValid:Boolean;// = true private var bSelectItem:Boolean;// = false private var _allowMultipleSelection:Boolean;// = false protected var cachedItemsChangeEffect:IEffect;// = null private var lastSelectionData:ListBaseSelectionData; protected var iterator:IViewCursor; protected var rendererChanged:Boolean;// = false protected var unconstrainedRenderers:Dictionary; protected var freeItemRenderersByFactory:Dictionary; private var columnWidthChanged:Boolean;// = false protected var explicitColumnCount:int;// = -1 private var _data:Object; private var bSelectedItemsChanged:Boolean;// = false protected var defaultRowCount:int;// = 4 private var _rowCount:int;// = -1 protected var offscreenExtraRowsTop:int;// = 0 private var _dataTipField:String;// = "label" private var cachedPaddingTopInvalid:Boolean;// = true protected var selectedData:Object; private var _labelFunction:Function; mx_internal var listType:String;// = "grid" private var cachedPaddingBottomInvalid:Boolean;// = true protected var runningDataEffect:Boolean;// = false protected var runDataEffectNextUpdate:Boolean;// = false private var bShiftKey:Boolean;// = false private var columnCountChanged:Boolean;// = true protected var rowMap:Object; mx_internal var _selectedIndex:int;// = -1 mx_internal var collectionIterator:IViewCursor; protected var lastDropIndex:int; private var bCtrlKey:Boolean;// = false private var oldUnscaledHeight:Number; protected var explicitColumnWidth:Number; private var _dataTipFunction:Function; private var _iconFunction:Function; protected var dataItemWrappersByRenderer:Dictionary; protected var itemsNeedMeasurement:Boolean;// = true protected var offscreenExtraRowsBottom:int;// = 0 protected var modifiedCollectionView:ModifiedCollectionView; private var _columnCount:int;// = -1 private var rowCountChanged:Boolean;// = true protected var wordWrapChanged:Boolean;// = false protected var explicitRowCount:int;// = -1 protected var offscreenExtraRows:int;// = 0 private var _dragEnabled:Boolean;// = false private var bSortItemPending:Boolean;// = false protected var caretIndicator:Sprite; protected var caretUID:String; protected var caretBookmark:CursorBookmark; public var allowDragSelection:Boolean;// = false mx_internal var allowRendererStealingDuringLayout:Boolean;// = true private var _selectable:Boolean;// = true protected var listContent:ListBaseContentHolder; private var _showDataTips:Boolean;// = false private var _variableRowHeight:Boolean;// = false private var cachedVerticalAlignInvalid:Boolean;// = true private var _dragMoveEnabled:Boolean;// = false private var _rowHeight:Number; private var _selectedItem:Object; public var menuSelectionMode:Boolean;// = false mx_internal var cachedPaddingTop:Number; private var _selectedIndices:Array; private var _columnWidth:Number; protected var defaultColumnCount:int;// = 4 private var rendererTrackingSuspended:Boolean;// = false private var oldUnscaledWidth:Number; private var _nullItemRenderer:IFactory; mx_internal var bColumnScrolling:Boolean;// = true protected var showCaret:Boolean; private var firstSelectionData:ListBaseSelectionData; private var mouseDownItem:IListItemRenderer; protected var collection:ICollectionView; protected var offscreenExtraRowsOrColumnsChanged:Boolean;// = false private var _offscreenExtraRowsOrColumns:int;// = 0 private var _iconField:String;// = "icon" protected var dataEffectCompleted:Boolean;// = false private var bSelectedItemChanged:Boolean;// = false private var _listData:BaseListData; mx_internal var bSelectOnRelease:Boolean; protected var actualCollection:ICollectionView; mx_internal var lastHighlightItemRenderer:IListItemRenderer; private var _itemRenderer:IFactory; private var itemMaskFreeList:Array; protected var keySelectionPending:Boolean;// = false private var mouseDownPoint:Point; protected var selectionIndicators:Object; protected var highlightUID:String; mx_internal var dragScrollingInterval:int;// = 0 protected var anchorBookmark:CursorBookmark; protected var caretIndex:int;// = -1 protected var offscreenExtraColumnsRight:int;// = 0 private var approximate:Boolean;// = false protected var anchorIndex:int;// = -1 protected var selectionLayer:Sprite; protected var freeItemRenderers:Array; mx_internal var bSelectedIndexChanged:Boolean;// = false mx_internal var cachedVerticalAlign:String; private var lastHighlightItemIndices:Point; mx_internal var lastHighlightItemRendererAtIndices:IListItemRenderer; protected var lastSeekPending:ListBaseSeekPending; private var bSelectedIndicesChanged:Boolean;// = false private var _dropEnabled:Boolean;// = false protected var itemsSizeChanged:Boolean;// = false mx_internal var isPressed:Boolean;// = false private var IS_ITEM_STYLE:Object; mx_internal var cachedPaddingBottom:Number; protected var highlightIndicator:Sprite; private var verticalScrollPositionPending:Number; protected var explicitRowHeight:Number; protected var highlightItemRenderer:IListItemRenderer; private var rowHeightChanged:Boolean;// = false mx_internal var lastDragEvent:DragEvent; private var _wordWrap:Boolean;// = false private var horizontalScrollPositionPending:Number; mx_internal var dropIndicator:IFlexDisplayObject; private var _selectedItems:Array; protected var offscreenExtraColumns:int;// = 0 private var lastKey:uint;// = 0 protected var factoryMap:Dictionary; protected var reservedItemRenderers:Object; mx_internal static const DRAG_THRESHOLD:int = 4; mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var createAccessibilityImplementation:Function; private static var _listContentStyleFilters:Object = null; public function ListBase(){ IS_ITEM_STYLE = {alternatingItemColors:true, backgroundColor:true, backgroundDisabledColor:true, color:true, rollOverColor:true, selectionColor:true, selectionDisabledColor:true, styleName:true, textColor:true, textRollOverColor:true, textSelectedColor:true}; rowMap = {}; freeItemRenderers = []; reservedItemRenderers = {}; unconstrainedRenderers = new Dictionary(); dataItemWrappersByRenderer = new Dictionary(true); selectedData = {}; selectionIndicators = {}; selectionTweens = {}; trackedRenderers = []; super(); tabEnabled = true; factoryMap = new Dictionary(true); addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler); addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler); addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler); addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); addEventListener(MouseEvent.CLICK, mouseClickHandler); addEventListener(MouseEvent.DOUBLE_CLICK, mouseDoubleClickHandler); invalidateProperties(); } public function get iconField():String{ return (_iconField); } public function set iconField(_arg1:String):void{ _iconField = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("iconFieldChanged")); } mx_internal function getItemUID(_arg1:Object):String{ return (itemToUID(_arg1)); } public function measureWidthOfItems(_arg1:int=-1, _arg2:int=0):Number{ return (NaN); } private function terminateSelectionTracking():void{ var _local2:IListItemRenderer; var _local1:int; while (_local1 < trackedRenderers.length) { _local2 = (trackedRenderers[_local1] as IListItemRenderer); _local2.removeEventListener(MoveEvent.MOVE, rendererMoveHandler); _local1++; }; trackedRenderers = []; } public function get columnWidth():Number{ return (_columnWidth); } public function createItemRenderer(_arg1:Object):IListItemRenderer{ return (null); } protected function clearSelected(_arg1:Boolean=false):void{ var _local2:String; var _local3:Object; var _local4:IListItemRenderer; for (_local2 in selectedData) { _local3 = selectedData[_local2].data; removeSelectionData(_local2); _local4 = UIDToItemRenderer(itemToUID(_local3)); if (_local4){ drawItem(_local4, false, (_local2 == highlightUID), false, _arg1); }; }; clearSelectionData(); _selectedIndex = -1; _selectedItem = null; caretIndex = -1; anchorIndex = -1; caretBookmark = null; anchorBookmark = null; } protected function addToRowArrays():void{ listItems.splice(0, 0, null); rowInfo.splice(0, 0, null); } public function get nullItemRenderer():IFactory{ return (_nullItemRenderer); } public function get showDataTips():Boolean{ return (_showDataTips); } public function set columnWidth(_arg1:Number):void{ explicitColumnWidth = _arg1; if (_columnWidth != _arg1){ setColumnWidth(_arg1); invalidateSize(); itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("columnWidthChanged")); }; } protected function scrollHorizontally(_arg1:int, _arg2:int, _arg3:Boolean):void{ } protected function drawHighlightIndicator(_arg1:Sprite, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:uint, _arg7:IListItemRenderer):void{ var _local8:Graphics = Sprite(_arg1).graphics; _local8.clear(); _local8.beginFill(_arg6); _local8.drawRect(0, 0, _arg4, _arg5); _local8.endFill(); _arg1.x = _arg2; _arg1.y = _arg3; } override public function get verticalScrollPosition():Number{ if (!isNaN(verticalScrollPositionPending)){ return (verticalScrollPositionPending); }; return (super.verticalScrollPosition); } protected function drawCaretIndicator(_arg1:Sprite, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:uint, _arg7:IListItemRenderer):void{ var _local8:Graphics = Sprite(_arg1).graphics; _local8.clear(); _local8.lineStyle(1, _arg6, 1); _local8.drawRect(0, 0, (_arg4 - 1), (_arg5 - 1)); _arg1.x = _arg2; _arg1.y = _arg3; } private function makeAdditionalRows(_arg1:int):void{ var cursorPos:CursorBookmark; var rowIndex = _arg1; if (iterator){ cursorPos = iterator.bookmark; try { iterator.seek(CursorBookmark.CURRENT, listItems.length); } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.CURRENT, listItems.length); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; }; var curY:Number = (rowInfo[rowIndex].y + rowInfo[rowIndex].height); makeRowsAndColumns(0, curY, listContent.width, listContent.height, 0, (rowIndex + 1)); seekPositionIgnoreError(iterator, cursorPos); } public function set showDataTips(_arg1:Boolean):void{ _showDataTips = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("showDataTipsChanged")); } public function set nullItemRenderer(_arg1:IFactory):void{ _nullItemRenderer = _arg1; invalidateSize(); invalidateDisplayList(); itemsSizeChanged = true; rendererChanged = true; dispatchEvent(new Event("nullItemRendererChanged")); } protected function moveIndicatorsHorizontally(_arg1:String, _arg2:Number):void{ if (_arg1 != null){ if (selectionIndicators[_arg1]){ selectionIndicators[_arg1].x = (selectionIndicators[_arg1].x + _arg2); }; if (highlightUID == _arg1){ highlightIndicator.x = (highlightIndicator.x + _arg2); }; if (caretUID == _arg1){ caretIndicator.x = (caretIndicator.x + _arg2); }; }; } private function seekPreviousSafely(_arg1:IViewCursor, _arg2:int):Boolean{ var iterator = _arg1; var pos = _arg2; try { iterator.movePrevious(); } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, pos); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; return (iteratorValid); } public function measureHeightOfItems(_arg1:int=-1, _arg2:int=0):Number{ return (NaN); } public function get selectedItem():Object{ return (_selectedItem); } protected function mouseMoveHandler(_arg1:MouseEvent):void{ var _local2:Point; var _local3:IListItemRenderer; var _local4:DragEvent; var _local5:BaseListData; if (((!(enabled)) || (!(selectable)))){ return; }; _local2 = new Point(_arg1.localX, _arg1.localY); _local2 = DisplayObject(_arg1.target).localToGlobal(_local2); _local2 = globalToLocal(_local2); if (((((isPressed) && (mouseDownPoint))) && ((((Math.abs((mouseDownPoint.x - _local2.x)) > DRAG_THRESHOLD)) || ((Math.abs((mouseDownPoint.y - _local2.y)) > DRAG_THRESHOLD)))))){ if (((((dragEnabled) && (!(DragManager.isDragging)))) && (mouseDownPoint))){ _local4 = new DragEvent(DragEvent.DRAG_START); _local4.dragInitiator = this; _local4.localX = mouseDownPoint.x; _local4.localY = mouseDownPoint.y; _local4.buttonDown = true; dispatchEvent(_local4); }; }; _local3 = mouseEventToItemRenderer(_arg1); if (((_local3) && (highlightItemRenderer))){ _local5 = rowMap[_local3.name]; if (((((highlightItemRenderer) && (highlightUID))) && (!((_local5.uid == highlightUID))))){ if (!isPressed){ if (((getStyle("useRollOver")) && (!((highlightItemRenderer.data == null))))){ clearHighlight(highlightItemRenderer); }; }; }; } else { if (((!(_local3)) && (highlightItemRenderer))){ if (!isPressed){ if (((getStyle("useRollOver")) && (highlightItemRenderer.data))){ clearHighlight(highlightItemRenderer); }; }; }; }; if (((_local3) && (!(highlightItemRenderer)))){ mouseOverHandler(_arg1); }; } public function get selectable():Boolean{ return (_selectable); } protected function seekPendingFailureHandler(_arg1:Object, _arg2:ListBaseSeekPending):void{ } override public function set verticalScrollPosition(_arg1:Number):void{ var _local5:int; var _local6:Boolean; if ((((((listItems.length == 0)) || (!(dataProvider)))) || (!(isNaN(verticalScrollPositionPending))))){ verticalScrollPositionPending = _arg1; if (dataProvider){ invalidateDisplayList(); }; return; }; verticalScrollPositionPending = NaN; var _local2:int = super.verticalScrollPosition; super.verticalScrollPosition = _arg1; removeClipMask(); var _local3:int = offscreenExtraRowsTop; var _local4:int = offscreenExtraRowsBottom; if (_local2 != _arg1){ _local5 = (_arg1 - _local2); _local6 = (_local5 > 0); _local5 = Math.abs(_local5); if ((((_local5 >= (rowInfo.length - offscreenExtraRows))) || (!(iteratorValid)))){ clearIndicators(); clearVisibleData(); makeRowsAndColumnsWithExtraRows(oldUnscaledWidth, oldUnscaledHeight); } else { scrollVertically(_arg1, _local5, _local6); adjustListContent(oldUnscaledWidth, oldUnscaledHeight); }; if (variableRowHeight){ configureScrollBars(); }; drawRowBackgrounds(); }; addClipMask(((!((offscreenExtraRowsTop == _local3))) || (!((offscreenExtraRowsBottom == _local4))))); } override public function get horizontalScrollPosition():Number{ if (!isNaN(horizontalScrollPositionPending)){ return (horizontalScrollPositionPending); }; return (super.horizontalScrollPosition); } protected function itemRendererToIndices(_arg1:IListItemRenderer):Point{ if (((!(_arg1)) || (!((_arg1.name in rowMap))))){ return (null); }; var _local2:int = rowMap[_arg1.name].rowIndex; var _local3:int = listItems[_local2].length; var _local4:int; while (_local4 < _local3) { if (listItems[_local2][_local4] == _arg1){ break; }; _local4++; }; return (new Point((_local4 + horizontalScrollPosition), ((_local2 + verticalScrollPosition) + offscreenExtraRowsTop))); } private function reduceRows(_arg1:int):void{ var _local2:int; var _local3:int; var _local4:String; while (_arg1 >= 0) { if (rowInfo[_arg1].y >= listContent.height){ _local2 = listItems[_arg1].length; _local3 = 0; while (_local3 < _local2) { addToFreeItemRenderers(listItems[_arg1][_local3]); _local3++; }; _local4 = rowInfo[_arg1].uid; delete visibleData[_local4]; removeIndicators(_local4); listItems.pop(); rowInfo.pop(); _arg1--; } else { break; }; }; } public function get dragMoveEnabled():Boolean{ return (_dragMoveEnabled); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:IListItemRenderer; var _local3:Point; var _local4:ListEvent; if (!selectable){ return; }; if (!iteratorValid){ return; }; if (!collection){ return; }; switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: moveSelectionVertically(_arg1.keyCode, _arg1.shiftKey, _arg1.ctrlKey); _arg1.stopPropagation(); break; case Keyboard.LEFT: case Keyboard.RIGHT: moveSelectionHorizontally(_arg1.keyCode, _arg1.shiftKey, _arg1.ctrlKey); _arg1.stopPropagation(); break; case Keyboard.END: case Keyboard.HOME: case Keyboard.PAGE_UP: case Keyboard.PAGE_DOWN: moveSelectionVertically(_arg1.keyCode, _arg1.shiftKey, _arg1.ctrlKey); _arg1.stopPropagation(); break; case Keyboard.SPACE: if (((((!((caretIndex == -1))) && (((caretIndex - verticalScrollPosition) >= 0)))) && (((caretIndex - verticalScrollPosition) < listItems.length)))){ _local2 = listItems[(caretIndex - verticalScrollPosition)][0]; if (selectItem(_local2, _arg1.shiftKey, _arg1.ctrlKey)){ _local3 = itemRendererToIndices(_local2); _local4 = new ListEvent(ListEvent.CHANGE); if (_local3){ _local4.columnIndex = _local3.x; _local4.rowIndex = _local3.y; }; _local4.itemRenderer = _local2; dispatchEvent(_local4); }; }; break; default: if (findKey(_arg1.keyCode)){ _arg1.stopPropagation(); }; }; } protected function reKeyVisibleData():void{ var _local2:Object; var _local1:Object = {}; for each (_local2 in visibleData) { if (_local2.data){ _local1[itemToUID(_local2.data)] = _local2; }; }; listContent.visibleData = _local1; } protected function copySelectedItems(_arg1:Boolean=true):Array{ var _local2:Array = []; var _local3:ListBaseSelectionData = firstSelectionData; while (_local3 != null) { if (_arg1){ _local2.push(_local3.data); } else { _local2.push(_local3.index); }; _local3 = _local3.nextSelectionData; }; return (_local2); } public function invalidateList():void{ itemsSizeChanged = true; invalidateDisplayList(); } protected function moveIndicatorsVertically(_arg1:String, _arg2:Number):void{ if (_arg1 != null){ if (selectionIndicators[_arg1]){ selectionIndicators[_arg1].y = (selectionIndicators[_arg1].y + _arg2); }; if (highlightUID == _arg1){ highlightIndicator.y = (highlightIndicator.y + _arg2); }; if (caretUID == _arg1){ caretIndicator.y = (caretIndicator.y + _arg2); }; }; } public function indexToItemRenderer(_arg1:int):IListItemRenderer{ var _local2:int = (verticalScrollPosition - offscreenExtraRowsTop); if ((((_arg1 < _local2)) || ((_arg1 >= (_local2 + listItems.length))))){ return (null); }; return (listItems[(_arg1 - _local2)][0]); } protected function get dragImage():IUIComponent{ var _local1:ListItemDragProxy = new ListItemDragProxy(); _local1.owner = this; _local1.moduleFactory = moduleFactory; return (_local1); } protected function copyItemWithUID(_arg1:Object):Object{ var _local2:Object; _local2 = ObjectUtil.copy(_arg1); if ((_local2 is IUID)){ IUID(_local2).uid = UIDUtil.createUID(); } else { if ((((_local2 is Object)) && (("mx_internal_uid" in _local2)))){ _local2.mx_internal_uid = UIDUtil.createUID(); }; }; return (_local2); } public function get selectedIndices():Array{ if (bSelectedIndicesChanged){ return (_selectedIndices); }; return (copySelectedItems(false)); } public function get variableRowHeight():Boolean{ return (_variableRowHeight); } protected function mouseDoubleClickHandler(_arg1:MouseEvent):void{ var _local2:IListItemRenderer; var _local3:Point; var _local4:ListEvent; _local2 = mouseEventToItemRenderer(_arg1); if (!_local2){ return; }; _local3 = itemRendererToIndices(_local2); if (_local3){ _local4 = new ListEvent(ListEvent.ITEM_DOUBLE_CLICK); _local4.columnIndex = _local3.x; _local4.rowIndex = _local3.y; _local4.itemRenderer = _local2; dispatchEvent(_local4); }; } mx_internal function selectionDataPendingResultHandler(_arg1:Object, _arg2:ListBaseSelectionDataPending):void{ if (_arg2.bookmark){ collectionIterator.seek(_arg2.bookmark, _arg2.offset); }; setSelectionDataLoop(_arg2.items, _arg2.index, _arg2.useFind); } public function set selectedItem(_arg1:Object):void{ if (((!(collection)) || ((collection.length == 0)))){ _selectedItem = _arg1; bSelectedItemChanged = true; bSelectionChanged = true; invalidateDisplayList(); return; }; commitSelectedItem(_arg1); } private function adjustScrollPosition():void{ var _local2:Number; var _local3:Number; var _local4:int; var _local1:Boolean; if (!isNaN(horizontalScrollPositionPending)){ _local1 = true; _local2 = Math.min(horizontalScrollPositionPending, maxHorizontalScrollPosition); horizontalScrollPositionPending = NaN; super.horizontalScrollPosition = _local2; }; if (!isNaN(verticalScrollPositionPending)){ _local1 = true; _local3 = Math.min(verticalScrollPositionPending, maxVerticalScrollPosition); verticalScrollPositionPending = NaN; super.verticalScrollPosition = _local3; }; if (_local1){ _local4 = scrollPositionToIndex(horizontalScrollPosition, (verticalScrollPosition - offscreenExtraRowsTop)); seekPositionSafely(_local4); }; } protected function indexToColumn(_arg1:int):int{ return (0); } protected function itemToUID(_arg1:Object):String{ if (_arg1 == null){ return ("null"); }; return (UIDUtil.getUID(_arg1)); } protected function dragEnterHandler(_arg1:DragEvent):void{ if (_arg1.isDefaultPrevented()){ return; }; lastDragEvent = _arg1; if (((((enabled) && (iteratorValid))) && (_arg1.dragSource.hasFormat("items")))){ DragManager.acceptDragDrop(this); DragManager.showFeedback((_arg1.ctrlKey) ? DragManager.COPY : DragManager.MOVE); showDropFeedback(_arg1); return; }; hideDropFeedback(_arg1); DragManager.showFeedback(DragManager.NONE); } public function set selectable(_arg1:Boolean):void{ _selectable = _arg1; } protected function moveRowVertically(_arg1:int, _arg2:int, _arg3:Number):void{ var _local4:IListItemRenderer; var _local5:int; while (_local5 < _arg2) { _local4 = listItems[_arg1][_local5]; listItems[_arg1][_local5].move(_local4.x, (_local4.y + _arg3)); _local5++; }; rowInfo[_arg1].y = (rowInfo[_arg1].y + _arg3); } override public function set horizontalScrollPosition(_arg1:Number):void{ var _local3:int; var _local4:Boolean; if ((((((listItems.length == 0)) || (!(dataProvider)))) || (!(isNaN(horizontalScrollPositionPending))))){ horizontalScrollPositionPending = _arg1; if (dataProvider){ invalidateDisplayList(); }; return; }; horizontalScrollPositionPending = NaN; var _local2:int = super.horizontalScrollPosition; super.horizontalScrollPosition = _arg1; removeClipMask(); if (_local2 != _arg1){ if (itemsSizeChanged){ return; }; _local3 = (_arg1 - _local2); _local4 = (_local3 > 0); _local3 = Math.abs(_local3); if (((bColumnScrolling) && ((_local3 >= columnCount)))){ clearIndicators(); clearVisibleData(); makeRowsAndColumnsWithExtraColumns(oldUnscaledWidth, oldUnscaledHeight); drawRowBackgrounds(); } else { scrollHorizontally(_arg1, _local3, _local4); }; }; addClipMask(false); } public function set dragMoveEnabled(_arg1:Boolean):void{ _dragMoveEnabled = _arg1; } public function isItemHighlighted(_arg1:Object):Boolean{ if (_arg1 == null){ return (false); }; var _local2:Boolean = ((highlightIndicator) && (!((highlightIndicator.parent.getChildIndex(highlightIndicator) == (highlightIndicator.parent.numChildren - 1))))); if ((_arg1 is String)){ return ((((_arg1 == highlightUID)) && (!(_local2)))); }; return ((((itemToUID(_arg1) == highlightUID)) && (!(_local2)))); } override protected function mouseWheelHandler(_arg1:MouseEvent):void{ var _local2:Number; var _local3:int; var _local4:ScrollEvent; if (((verticalScrollBar) && (verticalScrollBar.visible))){ _arg1.stopPropagation(); _local2 = verticalScrollPosition; _local3 = verticalScrollPosition; _local3 = (_local3 - (_arg1.delta * verticalScrollBar.lineScrollSize)); _local3 = Math.max(0, Math.min(_local3, verticalScrollBar.maxScrollPosition)); verticalScrollPosition = _local3; if (_local2 != verticalScrollPosition){ _local4 = new ScrollEvent(ScrollEvent.SCROLL); _local4.direction = ScrollEventDirection.VERTICAL; _local4.position = verticalScrollPosition; _local4.delta = (verticalScrollPosition - _local2); dispatchEvent(_local4); }; }; } protected function restoreRowArrays(_arg1:int):void{ rowInfo.splice(0, _arg1); listItems.splice(0, _arg1); } public function set labelField(_arg1:String):void{ _labelField = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("labelFieldChanged")); } private function seekPositionIgnoreError(_arg1:IViewCursor, _arg2:CursorBookmark):void{ var iterator = _arg1; var cursorPos = _arg2; if (iterator){ try { iterator.seek(cursorPos, 0); } catch(e:ItemPendingError) { }; }; } protected function finishDataChangeEffect(_arg1:EffectEvent):void{ collection = actualCollection; actualCollection = null; modifiedCollectionView = null; listContent.iterator = (iterator = actualIterator); runningDataEffect = false; unconstrainedRenderers = new Dictionary(); terminateSelectionTracking(); reKeyVisibleData(); var _local2:int = scrollPositionToIndex((horizontalScrollPosition - offscreenExtraColumnsLeft), (verticalScrollPosition - offscreenExtraRowsTop)); iterator.seek(CursorBookmark.FIRST, _local2); callLater(cleanupAfterDataChangeEffect); } public function set offscreenExtraRowsOrColumns(_arg1:int):void{ _arg1 = Math.max(_arg1, 0); if ((_arg1 % 2)){ _arg1++; }; if (_offscreenExtraRowsOrColumns == _arg1){ return; }; _offscreenExtraRowsOrColumns = _arg1; offscreenExtraRowsOrColumnsChanged = true; invalidateProperties(); } mx_internal function clearHighlight(_arg1:IListItemRenderer):void{ var _local4:ListEvent; var _local2:String = itemToUID(_arg1.data); drawItem(UIDToItemRenderer(_local2), isItemSelected(_arg1.data), false, (_local2 == caretUID)); var _local3:Point = itemRendererToIndices(_arg1); if (((_local3) && (lastHighlightItemIndices))){ _local4 = new ListEvent(ListEvent.ITEM_ROLL_OUT); _local4.columnIndex = lastHighlightItemIndices.x; _local4.rowIndex = lastHighlightItemIndices.y; _local4.itemRenderer = lastHighlightItemRendererAtIndices; dispatchEvent(_local4); lastHighlightItemIndices = null; }; } public function set wordWrap(_arg1:Boolean):void{ if (_arg1 == _wordWrap){ return; }; _wordWrap = _arg1; wordWrapChanged = true; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("wordWrapChanged")); } private function shiftSelectionLoop(_arg1:Boolean, _arg2:int, _arg3:Object, _arg4:Boolean, _arg5:CursorBookmark):void{ var data:Object; var uid:String; var incr = _arg1; var index = _arg2; var stopData = _arg3; var transition = _arg4; var placeHolder = _arg5; try { do { data = iterator.current; uid = itemToUID(data); insertSelectionDataBefore(uid, new ListBaseSelectionData(data, index, approximate), firstSelectionData); if (UIDToItemRenderer(uid)){ drawItem(UIDToItemRenderer(uid), true, (uid == highlightUID), false, transition); }; } while (data !== stopData); } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(selectionPendingResultHandler, selectionPendingFailureHandler, new ListBaseSelectionPending(incr, index, stopData, transition, placeHolder, CursorBookmark.CURRENT, 0))); iteratorValid = false; }; try { iterator.seek(placeHolder, 0); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e2:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(placeHolder, 0); e2.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); }; } protected function clearHighlightIndicator(_arg1:Sprite, _arg2:IListItemRenderer):void{ if (highlightIndicator){ Sprite(highlightIndicator).graphics.clear(); }; } protected function truncateRowArrays(_arg1:int):void{ listItems.splice(_arg1); rowInfo.splice(_arg1); } public function get itemRenderer():IFactory{ return (_itemRenderer); } protected function seekPositionSafely(_arg1:int):Boolean{ var index = _arg1; try { iterator.seek(CursorBookmark.FIRST, index); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, index); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; return (iteratorValid); } mx_internal function set $horizontalScrollPosition(_arg1:Number):void{ var _local2:int = super.horizontalScrollPosition; if (_local2 != _arg1){ super.horizontalScrollPosition = _arg1; }; } protected function applySelectionEffect(_arg1:Sprite, _arg2:String, _arg3:IListItemRenderer):void{ var _local5:Function; var _local4:Number = getStyle("selectionDuration"); if (_local4 != 0){ _arg1.alpha = 0; selectionTweens[_arg2] = new Tween(_arg1, 0, 1, _local4, 5); selectionTweens[_arg2].addEventListener(TweenEvent.TWEEN_UPDATE, selectionTween_updateHandler); selectionTweens[_arg2].addEventListener(TweenEvent.TWEEN_END, selectionTween_endHandler); selectionTweens[_arg2].setTweenHandlers(onSelectionTweenUpdate, onSelectionTweenUpdate); _local5 = (getStyle("selectionEasingFunction") as Function); if (_local5 != null){ selectionTweens[_arg2].easingFunction = _local5; }; }; } override public function set showInAutomationHierarchy(_arg1:Boolean):void{ } protected function removeFromRowArrays(_arg1:int):void{ listItems.splice(_arg1, 1); rowInfo.splice(_arg1, 1); } protected function updateList():void{ removeClipMask(); var _local1:CursorBookmark = (iterator) ? iterator.bookmark : null; clearIndicators(); clearVisibleData(); if (iterator){ if (((((offscreenExtraColumns) || (offscreenExtraColumnsLeft))) || (offscreenExtraColumnsRight))){ makeRowsAndColumnsWithExtraColumns(unscaledWidth, unscaledHeight); } else { makeRowsAndColumnsWithExtraRows(unscaledWidth, unscaledHeight); }; iterator.seek(_local1, 0); } else { makeRowsAndColumns(0, 0, listContent.width, listContent.height, 0, 0); }; drawRowBackgrounds(); configureScrollBars(); addClipMask(true); } public function set variableRowHeight(_arg1:Boolean):void{ _variableRowHeight = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("variableRowHeightChanged")); } protected function isRendererUnconstrained(_arg1:Object):Boolean{ return (!((unconstrainedRenderers[_arg1] == null))); } public function set selectedIndices(_arg1:Array):void{ if (((!(collection)) || ((collection.length == 0)))){ _selectedIndices = _arg1; bSelectedIndicesChanged = true; bSelectionChanged = true; invalidateDisplayList(); return; }; commitSelectedIndices(_arg1); } protected function mouseUpHandler(_arg1:MouseEvent):void{ var _local2:IListItemRenderer; var _local3:Point; var _local4:ListEvent; mouseDownPoint = null; _local2 = mouseEventToItemRenderer(_arg1); _local3 = itemRendererToIndices(_local2); mouseIsUp(); if (((!(enabled)) || (!(selectable)))){ return; }; if (mouseDownItem){ _local4 = new ListEvent(ListEvent.CHANGE); _local4.itemRenderer = mouseDownItem; _local3 = itemRendererToIndices(mouseDownItem); if (_local3){ _local4.columnIndex = _local3.x; _local4.rowIndex = _local3.y; }; dispatchEvent(_local4); mouseDownItem = null; }; if (((!(_local2)) || (!(hitTestPoint(_arg1.stageX, _arg1.stageY))))){ isPressed = false; return; }; if (bSelectOnRelease){ bSelectOnRelease = false; if (selectItem(_local2, _arg1.shiftKey, _arg1.ctrlKey)){ _local4 = new ListEvent(ListEvent.CHANGE); _local4.itemRenderer = _local2; if (_local3){ _local4.columnIndex = _local3.x; _local4.rowIndex = _local3.y; }; dispatchEvent(_local4); }; }; isPressed = false; } public function get allowMultipleSelection():Boolean{ return (_allowMultipleSelection); } public function itemToItemRenderer(_arg1:Object):IListItemRenderer{ return (UIDToItemRenderer(itemToUID(_arg1))); } public function isItemSelected(_arg1:Object):Boolean{ if (_arg1 == null){ return (false); }; if ((_arg1 is String)){ return (!((selectedData[_arg1] == undefined))); }; return (!((selectedData[itemToUID(_arg1)] == undefined))); } protected function dragScroll():void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:ScrollEvent; var _local1:Number = 0; if (dragScrollingInterval == 0){ return; }; var _local6:Number = 30; _local3 = verticalScrollPosition; if (DragManager.isDragging){ _local1 = (viewMetrics.top + (variableRowHeight) ? (getStyle("fontSize") / 4) : rowHeight); }; clearInterval(dragScrollingInterval); if (mouseY < _local1){ verticalScrollPosition = Math.max(0, (_local3 - 1)); if (DragManager.isDragging){ _local2 = 100; } else { _local4 = Math.min(((0 - mouseY) - 30), 0); _local2 = ((((0.593 * _local4) * _local4) + 1) + _local6); }; dragScrollingInterval = setInterval(dragScroll, _local2); if (_local3 != verticalScrollPosition){ _local5 = new ScrollEvent(ScrollEvent.SCROLL); _local5.detail = ScrollEventDetail.THUMB_POSITION; _local5.direction = ScrollEventDirection.VERTICAL; _local5.position = verticalScrollPosition; _local5.delta = (verticalScrollPosition - _local3); dispatchEvent(_local5); }; } else { if (mouseY > (unscaledHeight - _local1)){ verticalScrollPosition = Math.min(maxVerticalScrollPosition, (verticalScrollPosition + 1)); if (DragManager.isDragging){ _local2 = 100; } else { _local4 = Math.min(((mouseY - unscaledHeight) - 30), 0); _local2 = ((((0.593 * _local4) * _local4) + 1) + _local6); }; dragScrollingInterval = setInterval(dragScroll, _local2); if (_local3 != verticalScrollPosition){ _local5 = new ScrollEvent(ScrollEvent.SCROLL); _local5.detail = ScrollEventDetail.THUMB_POSITION; _local5.direction = ScrollEventDirection.VERTICAL; _local5.position = verticalScrollPosition; _local5.delta = (verticalScrollPosition - _local3); dispatchEvent(_local5); }; } else { dragScrollingInterval = setInterval(dragScroll, 15); }; }; if (((((DragManager.isDragging) && (lastDragEvent))) && (!((_local3 == verticalScrollPosition))))){ dragOverHandler(lastDragEvent); }; } protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } private function findStringLoop(_arg1:String, _arg2:CursorBookmark, _arg3:int, _arg4:int):Boolean{ var itmStr:String; var item:IListItemRenderer; var pt:Point; var evt:ListEvent; var more:Boolean; var str = _arg1; var cursorPos = _arg2; var i = _arg3; var stopIndex = _arg4; while (i != stopIndex) { itmStr = itemToLabel(iterator.current); itmStr = itmStr.substring(0, str.length); if ((((str == itmStr)) || ((str.toUpperCase() == itmStr.toUpperCase())))){ iterator.seek(cursorPos, 0); scrollToIndex(i); commitSelectedIndex(i); item = indexToItemRenderer(i); pt = itemRendererToIndices(item); evt = new ListEvent(ListEvent.CHANGE); evt.itemRenderer = item; if (pt){ evt.columnIndex = pt.x; evt.rowIndex = pt.y; }; dispatchEvent(evt); return (true); }; try { more = iterator.moveNext(); } catch(e1:ItemPendingError) { e1.addResponder(new ItemResponder(findPendingResultHandler, findPendingFailureHandler, new ListBaseFindPending(str, cursorPos, CursorBookmark.CURRENT, 1, (i + 1), stopIndex))); iteratorValid = false; return (false); }; if (((!(more)) && (!((stopIndex == collection.length))))){ i = -1; try { iterator.seek(CursorBookmark.FIRST, 0); } catch(e2:ItemPendingError) { e2.addResponder(new ItemResponder(findPendingResultHandler, findPendingFailureHandler, new ListBaseFindPending(str, cursorPos, CursorBookmark.FIRST, 0, 0, stopIndex))); iteratorValid = false; return (false); }; }; i = (i + 1); }; iterator.seek(cursorPos, 0); iteratorValid = true; return (false); } protected function drawRowBackgrounds():void{ } private function selectionIndicesPendingResultHandler(_arg1:Object, _arg2:ListBaseSelectionDataPending):void{ if (_arg2.bookmark){ iterator.seek(_arg2.bookmark, _arg2.offset); }; setSelectionIndicesLoop(_arg2.index, _arg2.items, _arg2.useFind); } public function itemRendererContains(_arg1:IListItemRenderer, _arg2:DisplayObject):Boolean{ if (!_arg2){ return (false); }; if (!_arg1){ return (false); }; return (_arg1.owns(_arg2)); } public function removeDataEffectItem(_arg1:Object):void{ if (modifiedCollectionView){ modifiedCollectionView.removeItem(dataItemWrappersByRenderer[_arg1]); iterator.seek(CursorBookmark.CURRENT); if (invalidateDisplayListFlag){ callLater(invalidateList); } else { invalidateList(); }; }; } override public function set horizontalScrollPolicy(_arg1:String):void{ super.horizontalScrollPolicy = _arg1; itemsSizeChanged = true; invalidateDisplayList(); } public function itemRendererToIndex(_arg1:IListItemRenderer):int{ var _local2:int; if ((_arg1.name in rowMap)){ _local2 = rowMap[_arg1.name].rowIndex; return (((_local2 + verticalScrollPosition) - offscreenExtraRowsTop)); }; return (int.MIN_VALUE); } public function get dropEnabled():Boolean{ return (_dropEnabled); } private function setSelectionIndicesLoop(_arg1:int, _arg2:Array, _arg3:Boolean=false):void{ var data:Object; var uid:String; var index = _arg1; var indices = _arg2; var firstTime = _arg3; while (indices.length) { if (index != indices[0]){ try { collectionIterator.seek(CursorBookmark.CURRENT, (indices[0] - index)); } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(selectionIndicesPendingResultHandler, selectionIndicesPendingFailureHandler, new ListBaseSelectionDataPending(firstTime, index, indices, CursorBookmark.CURRENT, (indices[0] - index)))); return; }; }; index = indices[0]; indices.shift(); data = collectionIterator.current; if (firstTime){ _selectedIndex = index; _selectedItem = data; caretIndex = index; caretBookmark = collectionIterator.bookmark; anchorIndex = index; anchorBookmark = collectionIterator.bookmark; firstTime = false; }; uid = itemToUID(data); insertSelectionDataAfter(uid, new ListBaseSelectionData(data, index, false), lastSelectionData); if (UIDToItemRenderer(uid)){ drawItem(UIDToItemRenderer(uid), true, (uid == highlightUID), (caretIndex == index)); }; }; if (initialized){ updateList(); }; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } override protected function measure():void{ super.measure(); var _local1:EdgeMetrics = viewMetrics; var _local2:int = ((explicitColumnCount < 1)) ? defaultColumnCount : explicitColumnCount; var _local3:int = ((explicitRowCount < 1)) ? defaultRowCount : explicitRowCount; if (!isNaN(explicitRowHeight)){ measuredHeight = (((explicitRowHeight * _local3) + _local1.top) + _local1.bottom); measuredMinHeight = (((explicitRowHeight * Math.min(_local3, 2)) + _local1.top) + _local1.bottom); } else { measuredHeight = (((rowHeight * _local3) + _local1.top) + _local1.bottom); measuredMinHeight = (((rowHeight * Math.min(_local3, 2)) + _local1.top) + _local1.bottom); }; if (!isNaN(explicitColumnWidth)){ measuredWidth = (((explicitColumnWidth * _local2) + _local1.left) + _local1.right); measuredMinWidth = (((explicitColumnWidth * Math.min(_local2, 1)) + _local1.left) + _local1.right); } else { measuredWidth = (((columnWidth * _local2) + _local1.left) + _local1.right); measuredMinWidth = (((columnWidth * Math.min(_local2, 1)) + _local1.left) + _local1.right); }; if ((((((verticalScrollPolicy == ScrollPolicy.AUTO)) && (verticalScrollBar))) && (verticalScrollBar.visible))){ measuredWidth = (measuredWidth - verticalScrollBar.minWidth); measuredMinWidth = (measuredMinWidth - verticalScrollBar.minWidth); }; if ((((((horizontalScrollPolicy == ScrollPolicy.AUTO)) && (horizontalScrollBar))) && (horizontalScrollBar.visible))){ measuredHeight = (measuredHeight - horizontalScrollBar.minHeight); measuredMinHeight = (measuredMinHeight - horizontalScrollBar.minHeight); }; } public function get listData():BaseListData{ return (_listData); } private function removeSelectionData(_arg1:String):void{ var _local2:ListBaseSelectionData = selectedData[_arg1]; if (firstSelectionData == _local2){ firstSelectionData = _local2.nextSelectionData; }; if (lastSelectionData == _local2){ lastSelectionData = _local2.prevSelectionData; }; if (_local2.prevSelectionData != null){ _local2.prevSelectionData.nextSelectionData = _local2.nextSelectionData; }; if (_local2.nextSelectionData != null){ _local2.nextSelectionData.prevSelectionData = _local2.prevSelectionData; }; delete selectedData[_arg1]; } protected function setRowHeight(_arg1:Number):void{ _rowHeight = _arg1; } public function indicesToIndex(_arg1:int, _arg2:int):int{ return (((_arg1 * columnCount) + _arg2)); } public function get value():Object{ var _local1:Object = selectedItem; if (!_local1){ return (null); }; if (typeof(_local1) != "object"){ return (_local1); }; return (((_local1.data)!=null) ? _local1.data : _local1.label); } mx_internal function getRowInfo():Array{ return (rowInfo); } private function rendererMoveHandler(_arg1:MoveEvent):void{ var _local2:IListItemRenderer; if (!rendererTrackingSuspended){ _local2 = (_arg1.currentTarget as IListItemRenderer); drawItem(_local2, true); }; } protected function calculateDropIndicatorY(_arg1:Number, _arg2:int):Number{ var _local3:int; var _local4:Number = 0; if (((((((_arg1) && ((_arg2 < _arg1)))) && (listItems[_arg2].length))) && (listItems[_arg2][0]))){ return ((listItems[_arg2][0].y - 1)); }; _local3 = 0; while (_local3 < _arg1) { if (listItems[_local3].length){ _local4 = (_local4 + rowInfo[_local3].height); } else { break; }; _local3++; }; return (_local4); } protected function clearCaretIndicator(_arg1:Sprite, _arg2:IListItemRenderer):void{ if (caretIndicator){ Sprite(caretIndicator).graphics.clear(); }; } override public function validateDisplayList():void{ var _local1:ISystemManager; if (invalidateDisplayListFlag){ _local1 = (parent as ISystemManager); if (_local1){ if ((((_local1 == systemManager.topLevelSystemManager)) && (!((_local1.document == this))))){ setActualSize(getExplicitOrMeasuredWidth(), getExplicitOrMeasuredHeight()); }; }; if (runDataEffectNextUpdate){ runDataEffectNextUpdate = false; runningDataEffect = true; initiateDataChangeEffect(((scaleX == 0)) ? 0 : (width / scaleX), ((scaleY == 0)) ? 0 : (height / scaleY)); } else { updateDisplayList(((scaleX == 0)) ? 0 : (width / scaleX), ((scaleY == 0)) ? 0 : (height / scaleY)); }; invalidateDisplayListFlag = false; }; } mx_internal function getListVisibleData():Object{ return (visibleData); } public function getRendererSemanticValue(_arg1:Object, _arg2:String):Object{ return ((modifiedCollectionView.getSemantics(dataItemWrappersByRenderer[_arg1]) == _arg2)); } mx_internal function setColumnCount(_arg1:int):void{ _columnCount = _arg1; } mx_internal function hasOnlyTextRenderers():Boolean{ if (listItems.length == 0){ return (true); }; var _local1:Array = listItems[(listItems.length - 1)]; var _local2:int = _local1.length; var _local3:int; while (_local3 < _local2) { if (!(_local1[_local3] is IUITextField)){ return (false); }; _local3++; }; return (true); } protected function sumRowHeights(_arg1:int, _arg2:int):Number{ var _local3:Number = 0; var _local4:int = _arg1; while (_local4 <= _arg2) { _local3 = (_local3 + rowInfo[_local4].height); _local4++; }; return (_local3); } protected function get rowInfo():Array{ return (listContent.rowInfo); } private function selectionPendingFailureHandler(_arg1:Object, _arg2:ListBaseSelectionPending):void{ } mx_internal function convertIndexToColumn(_arg1:int):int{ return (indexToColumn(_arg1)); } mx_internal function createItemMask(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):DisplayObject{ var _local5:Shape; var _local6:Graphics; if (!itemMaskFreeList){ itemMaskFreeList = []; }; if (itemMaskFreeList.length > 0){ _local5 = itemMaskFreeList.pop(); if (_local5.width != _arg3){ _local5.width = _arg3; }; if (_local5.height != _arg4){ _local5.height = _arg4; }; } else { _local5 = new FlexShape(); _local5.name = "mask"; _local6 = _local5.graphics; _local6.beginFill(0xFFFFFF); _local6.drawRect(0, 0, _arg3, _arg4); _local6.endFill(); _local5.visible = false; listContent.addChild(_local5); }; if (_local5.x != _arg1){ _local5.x = _arg1; }; if (_local5.y != _arg2){ _local5.y = _arg2; }; return (_local5); } mx_internal function convertIndexToRow(_arg1:int):int{ return (indexToRow(_arg1)); } protected function get listItems():Array{ return ((listContent) ? listContent.listItems : []); } override protected function commitProperties():void{ var _local1:int; var _local2:int; var _local3:int; super.commitProperties(); if (((listContent) && (!((listContent.iterator == iterator))))){ listContent.iterator = iterator; }; if (cachedPaddingTopInvalid){ cachedPaddingTopInvalid = false; cachedPaddingTop = getStyle("paddingTop"); itemsSizeChanged = true; invalidateDisplayList(); }; if (cachedPaddingBottomInvalid){ cachedPaddingBottomInvalid = false; cachedPaddingBottom = getStyle("paddingBottom"); itemsSizeChanged = true; invalidateDisplayList(); }; if (cachedVerticalAlignInvalid){ cachedVerticalAlignInvalid = false; cachedVerticalAlign = getStyle("verticalAlign"); itemsSizeChanged = true; invalidateDisplayList(); }; if (columnCountChanged){ if (_columnCount < 1){ _columnCount = defaultColumnCount; }; if (((((!(isNaN(explicitWidth))) && (isNaN(explicitColumnWidth)))) && ((explicitColumnCount > 0)))){ setColumnWidth((((explicitWidth - viewMetrics.left) - viewMetrics.right) / columnCount)); }; columnCountChanged = false; }; if (rowCountChanged){ if (_rowCount < 1){ _rowCount = defaultRowCount; }; if (((((!(isNaN(explicitHeight))) && (isNaN(explicitRowHeight)))) && ((explicitRowCount > 0)))){ setRowHeight((((explicitHeight - viewMetrics.top) - viewMetrics.bottom) / rowCount)); }; rowCountChanged = false; }; if (offscreenExtraRowsOrColumnsChanged){ adjustOffscreenRowsAndColumns(); if (iterator){ _local1 = Math.min((offscreenExtraColumns / 2), horizontalScrollPosition); _local2 = Math.min((offscreenExtraRows / 2), verticalScrollPosition); _local3 = scrollPositionToIndex((horizontalScrollPosition - _local1), (verticalScrollPosition - _local2)); seekPositionSafely(_local3); invalidateList(); }; offscreenExtraRowsOrColumnsChanged = false; }; } protected function setRowCount(_arg1:int):void{ _rowCount = _arg1; } public function set labelFunction(_arg1:Function):void{ _labelFunction = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("labelFunctionChanged")); } protected function adjustAfterAdd(_arg1:Array, _arg2:int):Boolean{ var length:int; var requiresValueCommit:Boolean; var data:ListBaseSelectionData; var placeHolder:CursorBookmark; var p:String; var items = _arg1; var location = _arg2; length = items.length; requiresValueCommit = false; for (p in selectedData) { data = selectedData[p]; if (data.index >= location){ data.index = (data.index + length); }; }; if (_selectedIndex >= location){ _selectedIndex = (_selectedIndex + length); requiresValueCommit = true; }; if (anchorIndex >= location){ anchorIndex = (anchorIndex + length); placeHolder = iterator.bookmark; try { iterator.seek(CursorBookmark.FIRST, anchorIndex); anchorBookmark = iterator.bookmark; } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(setBookmarkPendingResultHandler, setBookmarkPendingFailureHandler, {property:"anchorBookmark", value:anchorIndex})); }; iterator.seek(placeHolder); }; if (caretIndex >= location){ caretIndex = (caretIndex + length); placeHolder = iterator.bookmark; try { iterator.seek(CursorBookmark.FIRST, caretIndex); caretBookmark = iterator.bookmark; } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(setBookmarkPendingResultHandler, setBookmarkPendingFailureHandler, {property:"caretBookmark", value:caretIndex})); }; iterator.seek(placeHolder); }; return (requiresValueCommit); } private function mouseLeaveHandler(_arg1:Event):void{ var _local2:ListEvent; var _local3:Point; mouseDownPoint = null; mouseIsUp(); if (((!(enabled)) || (!(selectable)))){ return; }; if (mouseDownItem){ _local2 = new ListEvent(ListEvent.CHANGE); _local2.itemRenderer = mouseDownItem; _local3 = itemRendererToIndices(mouseDownItem); if (_local3){ _local2.columnIndex = _local3.x; _local2.rowIndex = _local3.y; }; dispatchEvent(_local2); mouseDownItem = null; }; isPressed = false; } public function unconstrainRenderer(_arg1:Object):void{ unconstrainedRenderers[_arg1] = true; } mx_internal function getIterator():IViewCursor{ return (iterator); } public function get selectedItems():Array{ return ((bSelectedItemsChanged) ? _selectedItems : copySelectedItems()); } protected function findKey(_arg1:int):Boolean{ var _local2:int = _arg1; return ((((((_local2 >= 33)) && ((_local2 <= 126)))) && (findString(String.fromCharCode(_local2))))); } override public function set verticalScrollPolicy(_arg1:String):void{ super.verticalScrollPolicy = _arg1; itemsSizeChanged = true; invalidateDisplayList(); } public function set selectedIndex(_arg1:int):void{ if (((!(collection)) || ((collection.length == 0)))){ _selectedIndex = _arg1; bSelectionChanged = true; bSelectedIndexChanged = true; invalidateDisplayList(); return; }; commitSelectedIndex(_arg1); } public function set itemRenderer(_arg1:IFactory):void{ _itemRenderer = _arg1; invalidateSize(); invalidateDisplayList(); itemsSizeChanged = true; rendererChanged = true; dispatchEvent(new Event("itemRendererChanged")); } public function hideDropFeedback(_arg1:DragEvent):void{ if (dropIndicator){ DisplayObject(dropIndicator).parent.removeChild(DisplayObject(dropIndicator)); dropIndicator = null; drawFocus(false); }; } private function commitSelectedItems(_arg1:Array):void{ var useFind:Boolean; var items = _arg1; clearSelected(); useFind = !((collection.sort == null)); try { collectionIterator.seek(CursorBookmark.FIRST, 0); } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(selectionDataPendingResultHandler, selectionDataPendingFailureHandler, new ListBaseSelectionDataPending(useFind, 0, items, null, 0))); return; }; setSelectionDataLoop(items, 0, useFind); } public function set dataTipField(_arg1:String):void{ _dataTipField = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("dataTipFieldChanged")); } private function makeRowsAndColumnsWithExtraColumns(_arg1:Number, _arg2:Number):void{ var _local10:int; var _local11:int; var _local12:int; var _local13:int; var _local3:int = (offscreenExtraColumns / 2); var _local4:int = (offscreenExtraColumns / 2); if (horizontalScrollPosition > (collection.length - columnCount)){ super.horizontalScrollPosition = Math.max(0, (collection.length - columnCount)); }; offscreenExtraColumnsLeft = Math.min(_local3, horizontalScrollPosition); var _local5:int = scrollPositionToIndex((horizontalScrollPosition - offscreenExtraColumnsLeft), verticalScrollPosition); seekPositionSafely(_local5); var _local6:CursorBookmark = iterator.bookmark; if (offscreenExtraColumnsLeft > 0){ makeRowsAndColumns(0, 0, 0, listContent.height, 0, 0, true, offscreenExtraColumnsLeft); }; var _local7:Number = (offscreenExtraColumnsLeft) ? (listItems[0][(offscreenExtraColumnsLeft - 1)].x + columnWidth) : 0; var _local8:Point = makeRowsAndColumns(_local7, 0, (_local7 + listContent.widthExcludingOffsets), listContent.height, offscreenExtraColumnsLeft, 0); if ((((_local4 > 0)) && (!(iterator.afterLast)))){ if (((offscreenExtraColumnsLeft + _local8.x) - 1) < 0){ _local7 = 0; } else { _local7 = (listItems[0][((offscreenExtraColumnsLeft + _local8.x) - 1)].x + columnWidth); }; _local10 = listItems[0].length; _local8 = makeRowsAndColumns(_local7, 0, _local7, listContent.height, (offscreenExtraColumnsLeft + _local8.x), 0, true, _local4); if (_local8.x < _local4){ _local11 = (listItems[0].length - (_local10 + _local8.x)); if (_local11){ _local12 = 0; while (_local12 < listItems.length) { _local13 = 0; while (_local13 < _local11) { listItems[_local12].pop(); _local13++; }; _local12++; }; }; }; offscreenExtraColumnsRight = _local8.x; } else { offscreenExtraColumnsRight = 0; }; var _local9:Number = listContent.widthExcludingOffsets; listContent.leftOffset = (-(offscreenExtraColumnsLeft) * columnWidth); listContent.rightOffset = ((offscreenExtraColumnsRight)>0) ? (((listItems[0][(listItems[0].length - 1)].x + columnWidth) - _local9) + listContent.leftOffset) : 0; iterator.seek(_local6, 0); adjustListContent(_arg1, _arg2); } protected function dragOverHandler(_arg1:DragEvent):void{ if (_arg1.isDefaultPrevented()){ return; }; lastDragEvent = _arg1; if (((((enabled) && (iteratorValid))) && (_arg1.dragSource.hasFormat("items")))){ DragManager.showFeedback((_arg1.ctrlKey) ? DragManager.COPY : DragManager.MOVE); showDropFeedback(_arg1); return; }; hideDropFeedback(_arg1); DragManager.showFeedback(DragManager.NONE); } private function adjustSelectionSettings(_arg1:Boolean):void{ if (bSelectionChanged){ bSelectionChanged = false; if (((bSelectedIndicesChanged) && (((_arg1) || ((_selectedIndices == null)))))){ bSelectedIndicesChanged = false; bSelectedIndexChanged = false; commitSelectedIndices(_selectedIndices); }; if (((bSelectedItemChanged) && (((_arg1) || ((_selectedItem == null)))))){ bSelectedItemChanged = false; bSelectedIndexChanged = false; commitSelectedItem(_selectedItem); }; if (((bSelectedItemsChanged) && (((_arg1) || ((_selectedItems == null)))))){ bSelectedItemsChanged = false; bSelectedIndexChanged = false; commitSelectedItems(_selectedItems); }; if (((bSelectedIndexChanged) && (((_arg1) || ((_selectedIndex == -1)))))){ commitSelectedIndex(_selectedIndex); bSelectedIndexChanged = false; }; }; } private function clearSelectionData():void{ selectedData = {}; firstSelectionData = null; lastSelectionData = null; } protected function shiftRow(_arg1:int, _arg2:int, _arg3:int, _arg4:Boolean):void{ var _local5:IListItemRenderer; var _local6:int; while (_local6 < _arg3) { _local5 = listItems[_arg1][_local6]; if (_arg4){ listItems[_arg2][_local6] = _local5; rowMap[_local5.name].rowIndex = _arg2; } else { rowMap[_local5.name].rowIndex = _arg1; }; _local6++; }; if (_arg4){ rowInfo[_arg2] = rowInfo[_arg1]; }; } mx_internal function selectionTween_endHandler(_arg1:TweenEvent):void{ selectionTween_updateHandler(_arg1); } mx_internal function resetDragScrolling():void{ if (dragScrollingInterval != 0){ clearInterval(dragScrollingInterval); dragScrollingInterval = 0; }; } protected function mouseOverHandler(_arg1:MouseEvent):void{ var _local2:ListEvent; var _local3:IListItemRenderer; var _local4:Point; var _local5:String; var _local6:String; var _local7:BaseListData; if (((!(enabled)) || (!(selectable)))){ return; }; if (((!((dragScrollingInterval == 0))) && (!(_arg1.buttonDown)))){ mouseIsUp(); }; isPressed = _arg1.buttonDown; _local3 = mouseEventToItemRenderer(_arg1); _local4 = itemRendererToIndices(_local3); if (!_local3){ return; }; _local5 = itemToUID(_local3.data); if (((!(isPressed)) || (allowDragSelection))){ if (_arg1.relatedObject){ if (((lastHighlightItemRenderer) && (highlightUID))){ _local7 = rowMap[_local3.name]; _local6 = _local7.uid; }; if (((((itemRendererContains(_local3, _arg1.relatedObject)) || ((_local5 == _local6)))) || ((_arg1.relatedObject == highlightIndicator)))){ return; }; }; if (((getStyle("useRollOver")) && (!((_local3.data == null))))){ if (allowDragSelection){ bSelectOnRelease = true; }; drawItem(UIDToItemRenderer(_local5), isItemSelected(_local3.data), true, (_local5 == caretUID)); if (_local4){ _local2 = new ListEvent(ListEvent.ITEM_ROLL_OVER); _local2.columnIndex = _local4.x; _local2.rowIndex = _local4.y; _local2.itemRenderer = _local3; dispatchEvent(_local2); lastHighlightItemIndices = _local4; lastHighlightItemRendererAtIndices = _local3; }; }; } else { if (DragManager.isDragging){ return; }; if (((((!((dragScrollingInterval == 0))) && (allowDragSelection))) || (menuSelectionMode))){ if (selectItem(_local3, _arg1.shiftKey, _arg1.ctrlKey)){ _local2 = new ListEvent(ListEvent.CHANGE); _local2.itemRenderer = _local3; if (_local4){ _local2.columnIndex = _local4.x; _local2.rowIndex = _local4.y; }; dispatchEvent(_local2); }; }; }; } protected function mouseClickHandler(_arg1:MouseEvent):void{ var _local2:IListItemRenderer; var _local3:Point; var _local4:ListEvent; _local2 = mouseEventToItemRenderer(_arg1); if (!_local2){ return; }; _local3 = itemRendererToIndices(_local2); if (_local3){ _local4 = new ListEvent(ListEvent.ITEM_CLICK); _local4.columnIndex = _local3.x; _local4.rowIndex = _local3.y; _local4.itemRenderer = _local2; dispatchEvent(_local4); }; } private function selectionIndicesPendingFailureHandler(_arg1:Object, _arg2:ListBaseSelectionDataPending):void{ } protected function finishKeySelection():void{ var _local1:String; var _local5:IListItemRenderer; var _local7:Point; var _local8:ListEvent; var _local2:int = listItems.length; var _local3:int = ((listItems.length - offscreenExtraRowsTop) - offscreenExtraRowsBottom); var _local4:int = (((rowInfo[((_local2 - offscreenExtraRowsBottom) - 1)].y + rowInfo[((_local2 - offscreenExtraRowsBottom) - 1)].height))>(listContent.heightExcludingOffsets - listContent.topOffset)) ? 1 : 0; if (lastKey == Keyboard.PAGE_DOWN){ if ((_local3 - _local4) == 0){ caretIndex = Math.min(((verticalScrollPosition + _local3) - _local4), (collection.length - 1)); } else { caretIndex = Math.min((((verticalScrollPosition + _local3) - _local4) - 1), (collection.length - 1)); }; }; var _local6:Boolean; if (((bSelectItem) && (((caretIndex - verticalScrollPosition) >= 0)))){ if ((caretIndex - verticalScrollPosition) > Math.max(((_local3 - _local4) - 1), 0)){ if ((((lastKey == Keyboard.END)) && ((maxVerticalScrollPosition > verticalScrollPosition)))){ caretIndex = (caretIndex - 1); moveSelectionVertically(lastKey, bShiftKey, bCtrlKey); return; }; caretIndex = (((_local3 - _local4) - 1) + verticalScrollPosition); }; _local5 = listItems[((caretIndex - verticalScrollPosition) + offscreenExtraRowsTop)][0]; if (_local5){ _local1 = itemToUID(_local5.data); _local5 = UIDToItemRenderer(_local1); if (((!(bCtrlKey)) || ((lastKey == Keyboard.SPACE)))){ selectItem(_local5, bShiftKey, bCtrlKey); _local6 = true; }; if (bCtrlKey){ drawItem(_local5, !((selectedData[_local1] == null)), (_local1 == highlightUID), true); }; }; }; if (_local6){ _local7 = itemRendererToIndices(_local5); _local8 = new ListEvent(ListEvent.CHANGE); if (_local7){ _local8.columnIndex = _local7.x; _local8.rowIndex = _local7.y; }; _local8.itemRenderer = _local5; dispatchEvent(_local8); }; } private function selectionDataPendingFailureHandler(_arg1:Object, _arg2:ListBaseSelectionDataPending):void{ } mx_internal function addClipMask(_arg1:Boolean):void{ var _local10:DisplayObject; var _local11:Number; if (_arg1){ if (((((((((((((((horizontalScrollBar) && (horizontalScrollBar.visible))) || (hasOnlyTextRenderers()))) || (runningDataEffect))) || (!((listContent.bottomOffset == 0))))) || (!((listContent.topOffset == 0))))) || (!((listContent.leftOffset == 0))))) || (!((listContent.rightOffset == 0))))){ listContent.mask = maskShape; selectionLayer.mask = null; } else { listContent.mask = null; selectionLayer.mask = maskShape; }; }; if (listContent.mask){ return; }; var _local2:int = (listItems.length - 1); var _local3:ListRowInfo = rowInfo[_local2]; var _local4:Array = listItems[_local2]; if ((_local3.y + _local3.height) <= listContent.height){ return; }; var _local5:int = _local4.length; var _local6:Number = _local3.y; var _local7:Number = listContent.width; var _local8:Number = (listContent.height - _local3.y); var _local9:int; while (_local9 < _local5) { _local10 = _local4[_local9]; _local11 = (_local10.y - _local6); if ((_local10 is IUITextField)){ _local10.height = (_local8 - _local11); } else { _local10.mask = createItemMask(0, (_local6 + _local11), _local7, (_local8 - _local11)); }; _local9++; }; } public function set allowMultipleSelection(_arg1:Boolean):void{ _allowMultipleSelection = _arg1; } protected function scrollVertically(_arg1:int, _arg2:int, _arg3:Boolean):void{ var i:int; var j:int; var numRows:int; var numCols:int; var uid:String; var curY:Number; var cursorPos:CursorBookmark; var discardRows:int; var desiredoffscreenExtraRowsTop:int; var newoffscreenExtraRowsTop:int; var offscreenExtraRowsBottomToMake:int; var newTopOffset:Number; var fillHeight:Number; var pt:Point; var rowIdx:int; var modDeltaPos:int; var desiredPrefixItems:int; var actual:Point; var row:Array; var rowData:Object; var desiredSuffixItems:int; var newOffscreenRows:int; var visibleAreaBottomY:int; var pos = _arg1; var deltaPos = _arg2; var scrollUp = _arg3; var rowCount:int = rowInfo.length; var columnCount:int = listItems[0].length; var moveBlockDistance:Number = 0; var listContentVisibleHeight:Number = listContent.heightExcludingOffsets; if (scrollUp){ discardRows = deltaPos; desiredoffscreenExtraRowsTop = (offscreenExtraRows / 2); newoffscreenExtraRowsTop = Math.min(desiredoffscreenExtraRowsTop, (offscreenExtraRowsTop + deltaPos)); if (offscreenExtraRowsTop < desiredoffscreenExtraRowsTop){ discardRows = Math.max(0, (deltaPos - (desiredoffscreenExtraRowsTop - offscreenExtraRowsTop))); }; moveBlockDistance = sumRowHeights(0, (discardRows - 1)); i = 0; while (i < discardRows) { if (!seekNextSafely(iterator, pos)){ return; }; i = (i + 1); }; i = 0; while (i < rowCount) { numCols = listItems[i].length; if (i < discardRows){ destroyRow(i, numCols); } else { if (discardRows > 0){ moveRowVertically(i, numCols, -(moveBlockDistance)); moveIndicatorsVertically(rowInfo[i].uid, -(moveBlockDistance)); shiftRow(i, (i - discardRows), numCols, true); if (listItems[i].length == 0){ listItems[(i - discardRows)].splice(0); }; }; }; i = (i + 1); }; if (discardRows){ truncateRowArrays((rowCount - discardRows)); }; curY = (rowInfo[((rowCount - discardRows) - 1)].y + rowInfo[((rowCount - discardRows) - 1)].height); cursorPos = iterator.bookmark; try { iterator.seek(CursorBookmark.CURRENT, (rowCount - discardRows)); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e1:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(cursorPos, 0); e1.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; offscreenExtraRowsBottomToMake = (offscreenExtraRows / 2); newTopOffset = 0; i = 0; while (i < newoffscreenExtraRowsTop) { newTopOffset = (newTopOffset - rowInfo[i].height); i = (i + 1); }; fillHeight = (listContentVisibleHeight - (curY + newTopOffset)); if (fillHeight > 0){ pt = makeRowsAndColumns(0, curY, listContent.width, (curY + fillHeight), 0, (rowCount - discardRows)); rowCount = (rowCount + pt.y); } else { rowIdx = ((rowCount - discardRows) - 1); rowIdx = (rowIdx - 1); fillHeight = (fillHeight + rowInfo[rowIdx].height); while (fillHeight < 0) { offscreenExtraRowsBottomToMake = (offscreenExtraRowsBottomToMake - 1); rowIdx = (rowIdx - 1); fillHeight = (fillHeight + rowInfo[rowIdx].height); }; }; if (offscreenExtraRowsBottomToMake > 0){ if (pt){ curY = (rowInfo[((rowCount - discardRows) - 1)].y + rowInfo[((rowCount - discardRows) - 1)].height); }; pt = makeRowsAndColumns(0, curY, listContent.width, listContent.height, 0, (rowCount - discardRows), true, offscreenExtraRowsBottomToMake); } else { pt = new Point(0, 0); }; try { iterator.seek(cursorPos, 0); } catch(e2:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(cursorPos, 0); e2.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; offscreenExtraRowsTop = newoffscreenExtraRowsTop; offscreenExtraRowsBottom = (((offscreenExtraRows / 2) - offscreenExtraRowsBottomToMake) + pt.y); } else { curY = 0; modDeltaPos = deltaPos; desiredPrefixItems = (offscreenExtraRows / 2); if (pos < desiredPrefixItems){ modDeltaPos = (modDeltaPos - (desiredPrefixItems - pos)); }; i = 0; while (i < modDeltaPos) { addToRowArrays(); i = (i + 1); }; actual = new Point(0, 0); if (modDeltaPos > 0){ try { iterator.seek(CursorBookmark.CURRENT, -(modDeltaPos)); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e3:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.CURRENT, -(modDeltaPos)); e3.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; cursorPos = iterator.bookmark; allowRendererStealingDuringLayout = false; actual = makeRowsAndColumns(0, curY, listContent.width, listContent.height, 0, 0, true, modDeltaPos); allowRendererStealingDuringLayout = true; try { iterator.seek(cursorPos, 0); } catch(e4:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(cursorPos, 0); e4.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; }; if ((((actual.y == 0)) && ((modDeltaPos > 0)))){ verticalScrollPosition = 0; restoreRowArrays(modDeltaPos); }; moveBlockDistance = sumRowHeights(0, (actual.y - 1)); desiredSuffixItems = (offscreenExtraRows / 2); newOffscreenRows = 0; visibleAreaBottomY = (listContentVisibleHeight + sumRowHeights(0, (Math.min(desiredPrefixItems, pos) - 1))); i = actual.y; while (i < listItems.length) { row = listItems[i]; rowData = rowInfo[i]; moveRowVertically(i, listItems[i].length, moveBlockDistance); if (rowData.y >= visibleAreaBottomY){ newOffscreenRows = (newOffscreenRows + 1); if (newOffscreenRows > desiredSuffixItems){ destroyRow(i, listItems[i].length); removeFromRowArrays(i); i = (i - 1); } else { shiftRow(i, (i + deltaPos), listItems[i].length, false); moveIndicatorsVertically(rowInfo[i].uid, moveBlockDistance); }; } else { shiftRow(i, (i + deltaPos), listItems[i].length, false); moveIndicatorsVertically(rowInfo[i].uid, moveBlockDistance); }; i = (i + 1); }; rowCount = listItems.length; offscreenExtraRowsTop = Math.min(desiredPrefixItems, pos); offscreenExtraRowsBottom = Math.min(newOffscreenRows, desiredSuffixItems); }; listContent.topOffset = -(sumRowHeights(0, (offscreenExtraRowsTop - 1))); listContent.bottomOffset = (((rowInfo[(rowInfo.length - 1)].y + rowInfo[(rowInfo.length - 1)].height) + listContent.topOffset) - listContentVisibleHeight); adjustListContent(oldUnscaledWidth, oldUnscaledHeight); addClipMask(true); } protected function selectItem(_arg1:IListItemRenderer, _arg2:Boolean, _arg3:Boolean, _arg4:Boolean=true):Boolean{ var placeHolder:CursorBookmark; var index:int; var numSelected:int; var curSelectionData:ListBaseSelectionData; var oldAnchorBookmark:CursorBookmark; var oldAnchorIndex:int; var incr:Boolean; var item = _arg1; var shiftKey = _arg2; var ctrlKey = _arg3; var transition = _arg4; if (((!(item)) || (!(isItemSelectable(item.data))))){ return (false); }; var selectionChange:Boolean; placeHolder = iterator.bookmark; index = itemRendererToIndex(item); var uid:String = itemToUID(item.data); if (((!(allowMultipleSelection)) || (((!(shiftKey)) && (!(ctrlKey)))))){ numSelected = 0; if (allowMultipleSelection){ curSelectionData = firstSelectionData; if (curSelectionData != null){ numSelected = (numSelected + 1); if (curSelectionData.nextSelectionData){ numSelected = (numSelected + 1); }; }; }; if (((ctrlKey) && (selectedData[uid]))){ selectionChange = true; clearSelected(transition); } else { if (((((!((_selectedIndex == index))) || (bSelectedIndexChanged))) || (((allowMultipleSelection) && (!((numSelected == 1))))))){ selectionChange = true; clearSelected(transition); insertSelectionDataBefore(uid, new ListBaseSelectionData(item.data, index, approximate), firstSelectionData); drawItem(UIDToItemRenderer(uid), true, (uid == highlightUID), true, transition); _selectedIndex = index; _selectedItem = item.data; iterator.seek(CursorBookmark.CURRENT, (_selectedIndex - indicesToIndex((verticalScrollPosition - offscreenExtraRowsTop), (horizontalScrollPosition - offscreenExtraColumnsLeft)))); caretIndex = _selectedIndex; caretBookmark = iterator.bookmark; anchorIndex = _selectedIndex; anchorBookmark = iterator.bookmark; iterator.seek(placeHolder, 0); }; }; } else { if (((shiftKey) && (allowMultipleSelection))){ if (anchorBookmark){ oldAnchorBookmark = anchorBookmark; oldAnchorIndex = anchorIndex; incr = (anchorIndex < index); clearSelected(false); caretIndex = index; caretBookmark = iterator.bookmark; anchorIndex = oldAnchorIndex; anchorBookmark = oldAnchorBookmark; _selectedIndex = index; _selectedItem = item.data; try { iterator.seek(anchorBookmark, 0); } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(selectionPendingResultHandler, selectionPendingFailureHandler, new ListBaseSelectionPending(incr, index, item.data, transition, placeHolder, CursorBookmark.CURRENT, 0))); iteratorValid = false; }; shiftSelectionLoop(incr, anchorIndex, item.data, transition, placeHolder); }; selectionChange = true; } else { if (((ctrlKey) && (allowMultipleSelection))){ if (selectedData[uid]){ removeSelectionData(uid); drawItem(UIDToItemRenderer(uid), false, (uid == highlightUID), true, transition); if (item.data == selectedItem){ calculateSelectedIndexAndItem(); }; } else { insertSelectionDataBefore(uid, new ListBaseSelectionData(item.data, index, approximate), firstSelectionData); drawItem(UIDToItemRenderer(uid), true, (uid == highlightUID), true, transition); _selectedIndex = index; _selectedItem = item.data; }; iterator.seek(CursorBookmark.CURRENT, (index - indicesToIndex(verticalScrollPosition, horizontalScrollPosition))); caretIndex = index; caretBookmark = iterator.bookmark; anchorIndex = index; anchorBookmark = iterator.bookmark; iterator.seek(placeHolder, 0); selectionChange = true; }; }; }; return (selectionChange); } mx_internal function selectionTween_updateHandler(_arg1:TweenEvent):void{ Sprite(_arg1.target.listener).alpha = Number(_arg1.value); } protected function prepareDataEffect(_arg1:CollectionEvent):void{ var _local2:Object; var _local3:Class; var _local4:int; var _local5:int; if (!cachedItemsChangeEffect){ _local2 = getStyle("itemsChangeEffect"); _local3 = (_local2 as Class); if (_local3){ _local2 = new (_local3); }; cachedItemsChangeEffect = (_local2 as IEffect); }; if (runningDataEffect){ collection = actualCollection; listContent.iterator = (iterator = actualIterator); cachedItemsChangeEffect.end(); modifiedCollectionView = null; }; if (((cachedItemsChangeEffect) && (iteratorValid))){ _local4 = iterator.bookmark.getViewIndex(); _local5 = ((_local4 + (rowCount * columnCount)) - 1); if (((!(modifiedCollectionView)) && ((collection is IList)))){ modifiedCollectionView = new ModifiedCollectionView(ICollectionView(collection)); }; if (modifiedCollectionView){ modifiedCollectionView.processCollectionEvent(_arg1, _local4, _local5); runDataEffectNextUpdate = true; if (invalidateDisplayListFlag){ callLater(invalidateList); } else { invalidateList(); }; }; }; } protected function drawSelectionIndicator(_arg1:Sprite, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:uint, _arg7:IListItemRenderer):void{ var _local8:Graphics = Sprite(_arg1).graphics; _local8.clear(); _local8.beginFill(_arg6); _local8.drawRect(0, 0, _arg4, _arg5); _local8.endFill(); _arg1.x = _arg2; _arg1.y = _arg3; } mx_internal function setColumnWidth(_arg1:Number):void{ _columnWidth = _arg1; } protected function makeRowsAndColumns(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:int, _arg6:int, _arg7:Boolean=false, _arg8:uint=0):Point{ return (new Point(0, 0)); } public function isItemVisible(_arg1:Object):Boolean{ return (!((itemToItemRenderer(_arg1) == null))); } mx_internal function commitSelectedIndices(_arg1:Array):void{ var indices = _arg1; clearSelected(); try { collectionIterator.seek(CursorBookmark.FIRST, 0); } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(selectionIndicesPendingResultHandler, selectionIndicesPendingFailureHandler, new ListBaseSelectionDataPending(true, 0, indices, CursorBookmark.FIRST, 0))); return; }; setSelectionIndicesLoop(0, indices, true); } public function calculateDropIndex(_arg1:DragEvent=null):int{ var _local2:IListItemRenderer; var _local3:IListItemRenderer; var _local4:Point; var _local5:int; var _local6:int; if (_arg1){ _local4 = new Point(_arg1.localX, _arg1.localY); _local4 = DisplayObject(_arg1.target).localToGlobal(_local4); _local4 = listContent.globalToLocal(_local4); _local5 = listItems.length; _local6 = 0; while (_local6 < _local5) { if (listItems[_local6][0]){ _local3 = listItems[_local6][0]; }; if ((((rowInfo[_local6].y <= _local4.y)) && ((_local4.y < (rowInfo[_local6].y + rowInfo[_local6].height))))){ _local2 = listItems[_local6][0]; break; }; _local6++; }; if (_local2){ lastDropIndex = itemRendererToIndex(_local2); } else { if (_local3){ lastDropIndex = (itemRendererToIndex(_local3) + 1); } else { lastDropIndex = (collection) ? collection.length : 0; }; }; }; return (lastDropIndex); } protected function mouseDownHandler(_arg1:MouseEvent):void{ var _local2:IListItemRenderer; var _local3:Point; if (((!(enabled)) || (!(selectable)))){ return; }; if (runningDataEffect){ cachedItemsChangeEffect.end(); dataEffectCompleted = true; itemsSizeChanged = true; invalidateList(); dataItemWrappersByRenderer = new Dictionary(); validateDisplayList(); }; isPressed = true; _local2 = mouseEventToItemRenderer(_arg1); if (!_local2){ return; }; bSelectOnRelease = false; _local3 = new Point(_arg1.localX, _arg1.localY); _local3 = DisplayObject(_arg1.target).localToGlobal(_local3); mouseDownPoint = globalToLocal(_local3); systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true, 0, true); systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, mouseLeaveHandler, false, 0, true); if (!dragEnabled){ dragScrollingInterval = setInterval(dragScroll, 15); }; if (((dragEnabled) && (selectedData[rowMap[_local2.name].uid]))){ bSelectOnRelease = true; } else { if (selectItem(_local2, _arg1.shiftKey, _arg1.ctrlKey)){ mouseDownItem = _local2; }; }; } public function get labelField():String{ return (_labelField); } private function onSelectionTweenUpdate(_arg1:Number):void{ } protected function clearIndicators():void{ var _local1:String; for (_local1 in selectionTweens) { removeIndicators(_local1); }; while (selectionLayer.numChildren > 0) { selectionLayer.removeChildAt(0); }; selectionTweens = {}; selectionIndicators = {}; highlightIndicator = null; highlightUID = null; caretIndicator = null; caretUID = null; } public function get offscreenExtraRowsOrColumns():int{ return (_offscreenExtraRowsOrColumns); } public function get wordWrap():Boolean{ return (_wordWrap); } protected function drawItem(_arg1:IListItemRenderer, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Boolean=false, _arg5:Boolean=false):void{ var _local6:Sprite; var _local7:Graphics; var _local12:Number; if (!_arg1){ return; }; var _local8:ListBaseContentHolder = (DisplayObject(_arg1).parent as ListBaseContentHolder); if (!_local8){ return; }; var _local9:Array = _local8.rowInfo; var _local10:Sprite = _local8.selectionLayer; var _local11:BaseListData = rowMap[_arg1.name]; if (!_local11){ return; }; if (((_arg3) && (((!(highlightItemRenderer)) || (!((highlightUID == _local11.uid))))))){ if (!highlightIndicator){ _local6 = new SpriteAsset(); _local10.addChild(DisplayObject(_local6)); highlightIndicator = _local6; } else { if (highlightIndicator.parent != _local10){ _local10.addChild(highlightIndicator); } else { _local10.setChildIndex(DisplayObject(highlightIndicator), (_local10.numChildren - 1)); }; }; _local6 = highlightIndicator; drawHighlightIndicator(_local6, _arg1.x, _local9[_local11.rowIndex].y, _arg1.width, _local9[_local11.rowIndex].height, getStyle("rollOverColor"), _arg1); lastHighlightItemRenderer = (highlightItemRenderer = _arg1); highlightUID = _local11.uid; } else { if (((((!(_arg3)) && (highlightItemRenderer))) && (((_local11) && ((highlightUID == _local11.uid)))))){ clearHighlightIndicator(highlightIndicator, _arg1); highlightItemRenderer = null; highlightUID = null; }; }; if (_arg2){ _local12 = (runningDataEffect) ? (_arg1.y - cachedPaddingTop) : _local9[_local11.rowIndex].y; if (!selectionIndicators[_local11.uid]){ _local6 = new SpriteAsset(); _local6.mouseEnabled = false; _local10.addChild(DisplayObject(_local6)); selectionIndicators[_local11.uid] = _local6; drawSelectionIndicator(_local6, _arg1.x, _local12, _arg1.width, _local9[_local11.rowIndex].height, (enabled) ? getStyle("selectionColor") : getStyle("selectionDisabledColor"), _arg1); if (_arg5){ applySelectionEffect(_local6, _local11.uid, _arg1); }; } else { _local6 = selectionIndicators[_local11.uid]; drawSelectionIndicator(_local6, _arg1.x, _local12, _arg1.width, _local9[_local11.rowIndex].height, (enabled) ? getStyle("selectionColor") : getStyle("selectionDisabledColor"), _arg1); }; } else { if (!_arg2){ if (((_local11) && (selectionIndicators[_local11.uid]))){ if (selectionTweens[_local11.uid]){ selectionTweens[_local11.uid].removeEventListener(TweenEvent.TWEEN_UPDATE, selectionTween_updateHandler); selectionTweens[_local11.uid].removeEventListener(TweenEvent.TWEEN_END, selectionTween_endHandler); if (selectionIndicators[_local11.uid].alpha < 1){ Tween.removeTween(selectionTweens[_local11.uid]); }; delete selectionTweens[_local11.uid]; }; _local10.removeChild(selectionIndicators[_local11.uid]); delete selectionIndicators[_local11.uid]; }; }; }; if (_arg4){ if (showCaret){ if (!caretIndicator){ _local6 = new SpriteAsset(); _local6.mouseEnabled = false; _local10.addChild(DisplayObject(_local6)); caretIndicator = _local6; } else { if (caretIndicator.parent != _local10){ _local10.addChild(caretIndicator); } else { _local10.setChildIndex(DisplayObject(caretIndicator), (_local10.numChildren - 1)); }; }; _local6 = caretIndicator; drawCaretIndicator(_local6, _arg1.x, _local9[_local11.rowIndex].y, _arg1.width, _local9[_local11.rowIndex].height, getStyle("selectionColor"), _arg1); caretItemRenderer = _arg1; caretUID = _local11.uid; }; } else { if (((((!(_arg4)) && (caretItemRenderer))) && ((caretUID == _local11.uid)))){ clearCaretIndicator(caretIndicator, _arg1); caretItemRenderer = null; caretUID = ""; }; }; if ((_arg1 is IFlexDisplayObject)){ if ((_arg1 is IInvalidating)){ IInvalidating(_arg1).invalidateDisplayList(); IInvalidating(_arg1).validateNow(); }; } else { if ((_arg1 is IUITextField)){ IUITextField(_arg1).validateNow(); }; }; } protected function dragExitHandler(_arg1:DragEvent):void{ if (_arg1.isDefaultPrevented()){ return; }; lastDragEvent = null; hideDropFeedback(_arg1); resetDragScrolling(); DragManager.showFeedback(DragManager.NONE); } protected function adjustAfterRemove(_arg1:Array, _arg2:int, _arg3:Boolean):Boolean{ var data:ListBaseSelectionData; var requiresValueCommit:Boolean; var i:int; var length:int; var placeHolder:CursorBookmark; var s:String; var items = _arg1; var location = _arg2; var emitEvent = _arg3; requiresValueCommit = emitEvent; i = 0; length = items.length; for (s in selectedData) { i = (i + 1); data = selectedData[s]; if (data.index > location){ data.index = (data.index - length); }; }; if (_selectedIndex > location){ _selectedIndex = (_selectedIndex - length); requiresValueCommit = true; }; if ((((i > 0)) && ((_selectedIndex == -1)))){ _selectedIndex = data.index; _selectedItem = data.data; requiresValueCommit = true; }; if (i == 0){ _selectedIndex = -1; bSelectionChanged = true; bSelectedIndexChanged = true; invalidateDisplayList(); }; if (anchorIndex > location){ anchorIndex = (anchorIndex - length); placeHolder = iterator.bookmark; try { iterator.seek(CursorBookmark.FIRST, anchorIndex); anchorBookmark = iterator.bookmark; } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(setBookmarkPendingResultHandler, setBookmarkPendingFailureHandler, {property:"anchorBookmark", value:anchorIndex})); }; iterator.seek(placeHolder); }; if (caretIndex > location){ caretIndex = (caretIndex - length); placeHolder = iterator.bookmark; try { iterator.seek(CursorBookmark.FIRST, caretIndex); caretBookmark = iterator.bookmark; } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(setBookmarkPendingResultHandler, setBookmarkPendingFailureHandler, {property:"caretBookmark", value:caretIndex})); }; iterator.seek(placeHolder); }; return (requiresValueCommit); } public function itemToIcon(_arg1:Object):Class{ var iconClass:Class; var icon:*; var data = _arg1; if (data == null){ return (null); }; if (iconFunction != null){ return (iconFunction(data)); }; if ((data is XML)){ try { if (data[iconField].length() != 0){ icon = String(data[iconField]); if (icon != null){ iconClass = Class(systemManager.getDefinitionByName(icon)); if (iconClass){ return (iconClass); }; return (document[icon]); }; }; } catch(e:Error) { }; } else { if ((data is Object)){ try { if (data[iconField] != null){ if ((data[iconField] is Class)){ return (data[iconField]); }; if ((data[iconField] is String)){ iconClass = Class(systemManager.getDefinitionByName(data[iconField])); if (iconClass){ return (iconClass); }; return (document[data[iconField]]); }; }; } catch(e:Error) { }; }; }; return (null); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; var _local2:IFlexDisplayObject = (border as IFlexDisplayObject); if (_local2){ if ((_local2 is IUIComponent)){ IUIComponent(_local2).enabled = _arg1; }; if ((_local2 is IInvalidating)){ IInvalidating(_local2).invalidateDisplayList(); }; }; itemsSizeChanged = true; invalidateDisplayList(); } public function addDataEffectItem(_arg1:Object):void{ if (modifiedCollectionView){ modifiedCollectionView.addItem(dataItemWrappersByRenderer[_arg1]); }; if (iterator.afterLast){ iterator.seek(CursorBookmark.FIRST); } else { iterator.seek(CursorBookmark.CURRENT); }; if (invalidateDisplayListFlag){ callLater(invalidateList); } else { invalidateList(); }; } override public function get baselinePosition():Number{ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return (super.baselinePosition); }; if (!validateBaselinePosition()){ return (NaN); }; var _local1 = (dataProvider == null); var _local2:Boolean = ((!((dataProvider == null))) && ((dataProvider.length == 0))); if (((_local1) || (_local2))){ dataProvider = [null]; validateNow(); }; if (((!(listItems)) || ((listItems.length == 0)))){ return (super.baselinePosition); }; var _local3:IUIComponent = (listItems[0][0] as IUIComponent); if (!_local3){ return (super.baselinePosition); }; var _local4:ListBaseContentHolder = ListBaseContentHolder(_local3.parent); var _local5:Number = ((_local4.y + _local3.y) + _local3.baselinePosition); if (((_local1) || (_local2))){ if (_local1){ dataProvider = null; } else { if (_local2){ dataProvider = []; }; }; validateNow(); }; return (_local5); } private function makeRowsAndColumnsWithExtraRows(_arg1:Number, _arg2:Number):void{ var _local3:ListRowInfo; var _local4:ListRowInfo; var _local5:ListRowInfo; var _local6:int; var _local7:Point; var _local14:int; var _local15:int; var _local16:int; var _local8:int = (offscreenExtraRows / 2); var _local9:int = (offscreenExtraRows / 2); offscreenExtraRowsTop = Math.min(_local8, verticalScrollPosition); var _local10:int = scrollPositionToIndex(horizontalScrollPosition, (verticalScrollPosition - offscreenExtraRowsTop)); seekPositionSafely(_local10); var _local11:CursorBookmark = iterator.bookmark; if (offscreenExtraRowsTop > 0){ makeRowsAndColumns(0, 0, listContent.width, listContent.height, 0, 0, true, offscreenExtraRowsTop); }; var _local12:Number = (offscreenExtraRowsTop) ? (rowInfo[(offscreenExtraRowsTop - 1)].y + rowHeight) : 0; _local7 = makeRowsAndColumns(0, _local12, listContent.width, (_local12 + listContent.heightExcludingOffsets), 0, offscreenExtraRowsTop); if ((((_local9 > 0)) && (!(iterator.afterLast)))){ if (((offscreenExtraRowsTop + _local7.y) - 1) < 0){ _local12 = 0; } else { _local12 = (rowInfo[((offscreenExtraRowsTop + _local7.y) - 1)].y + rowInfo[((offscreenExtraRowsTop + _local7.y) - 1)].height); }; _local14 = listItems.length; _local7 = makeRowsAndColumns(0, _local12, listContent.width, _local12, 0, (offscreenExtraRowsTop + _local7.y), true, _local9); if (_local7.y == _local9){ while ((((((_local7.y > 0)) && (listItems[(listItems.length - 1)]))) && ((listItems[(listItems.length - 1)].length == 0)))) { _local7.y--; listItems.pop(); rowInfo.pop(); }; } else { if (_local7.y < _local9){ _local15 = (listItems.length - (_local14 + _local7.y)); if (_local15){ _local16 = 0; while (_local16 < _local15) { listItems.pop(); rowInfo.pop(); _local16++; }; }; }; }; offscreenExtraRowsBottom = _local7.y; } else { offscreenExtraRowsBottom = 0; }; var _local13:Number = listContent.heightExcludingOffsets; listContent.topOffset = (-(offscreenExtraRowsTop) * rowHeight); listContent.bottomOffset = ((offscreenExtraRowsBottom)>0) ? (((listItems[(listItems.length - 1)][0].y + rowHeight) - _local13) + listContent.topOffset) : 0; if (iteratorValid){ iterator.seek(_local11, 0); }; adjustListContent(_arg1, _arg2); } mx_internal function indicesToItemRenderer(_arg1:int, _arg2:int):IListItemRenderer{ return (listItems[_arg1][_arg2]); } mx_internal function getItemRendererForMouseEvent(_arg1:MouseEvent):IListItemRenderer{ return (mouseEventToItemRenderer(_arg1)); } mx_internal function set $verticalScrollPosition(_arg1:Number):void{ var _local2:int = super.verticalScrollPosition; if (_local2 != _arg1){ super.verticalScrollPosition = _arg1; }; } protected function mouseOutHandler(_arg1:MouseEvent):void{ var _local2:IListItemRenderer; if (((!(enabled)) || (!(selectable)))){ return; }; isPressed = _arg1.buttonDown; _local2 = mouseEventToItemRenderer(_arg1); if (!_local2){ return; }; if (!isPressed){ if (((((((itemRendererContains(_local2, _arg1.relatedObject)) || ((_arg1.relatedObject == listContent)))) || ((_arg1.relatedObject == highlightIndicator)))) || (!(highlightItemRenderer)))){ return; }; if (((getStyle("useRollOver")) && (!((_local2.data == null))))){ clearHighlight(_local2); }; }; } public function set dropEnabled(_arg1:Boolean):void{ if (((_dropEnabled) && (!(_arg1)))){ removeEventListener(DragEvent.DRAG_ENTER, dragEnterHandler, false); removeEventListener(DragEvent.DRAG_EXIT, dragExitHandler, false); removeEventListener(DragEvent.DRAG_OVER, dragOverHandler, false); removeEventListener(DragEvent.DRAG_DROP, dragDropHandler, false); }; _dropEnabled = _arg1; if (_arg1){ addEventListener(DragEvent.DRAG_ENTER, dragEnterHandler, false, EventPriority.DEFAULT_HANDLER); addEventListener(DragEvent.DRAG_EXIT, dragExitHandler, false, EventPriority.DEFAULT_HANDLER); addEventListener(DragEvent.DRAG_OVER, dragOverHandler, false, EventPriority.DEFAULT_HANDLER); addEventListener(DragEvent.DRAG_DROP, dragDropHandler, false, EventPriority.DEFAULT_HANDLER); }; } protected function get listContentStyleFilters():Object{ return (_listContentStyleFilters); } public function itemToLabel(_arg1:Object):String{ var data = _arg1; if (data == null){ return (" "); }; if (labelFunction != null){ return (labelFunction(data)); }; if ((data is XML)){ try { if (data[labelField].length() != 0){ data = data[labelField]; }; } catch(e:Error) { }; } else { if ((data is Object)){ try { if (data[labelField] != null){ data = data[labelField]; }; } catch(e:Error) { }; }; }; if ((data is String)){ return (String(data)); }; try { return (data.toString()); } catch(e:Error) { }; return (" "); } public function set rowCount(_arg1:int):void{ explicitRowCount = _arg1; if (_rowCount != _arg1){ setRowCount(_arg1); rowCountChanged = true; invalidateProperties(); invalidateSize(); itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("rowCountChanged")); }; } public function set columnCount(_arg1:int):void{ explicitColumnCount = _arg1; if (_columnCount != _arg1){ setColumnCount(_arg1); columnCountChanged = true; invalidateProperties(); invalidateSize(); itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("columnCountChanged")); }; } private function partialPurgeItemRenderers():void{ var _local1:*; var _local2:String; var _local3:DisplayObject; var _local4:Dictionary; var _local5:*; dataEffectCompleted = false; while (freeItemRenderers.length) { _local3 = DisplayObject(freeItemRenderers.pop()); if (_local3.parent){ listContent.removeChild(_local3); }; }; for (_local1 in freeItemRenderersByFactory) { _local4 = freeItemRenderersByFactory[_local1]; for (_local5 in _local4) { _local3 = DisplayObject(_local5); delete _local4[_local5]; if (_local3.parent){ listContent.removeChild(_local3); }; }; }; for (_local2 in reservedItemRenderers) { _local3 = DisplayObject(reservedItemRenderers[_local2]); if (_local3.parent){ listContent.removeChild(_local3); }; }; reservedItemRenderers = {}; rowMap = {}; clearVisibleData(); } protected function seekPendingResultHandler(_arg1:Object, _arg2:ListBaseSeekPending):void{ var data = _arg1; var info = _arg2; if (info != lastSeekPending){ return; }; lastSeekPending = null; iteratorValid = true; try { iterator.seek(info.bookmark, info.offset); } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(info.bookmark, info.offset); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; if (bSortItemPending){ bSortItemPending = false; adjustAfterSort(); }; itemsSizeChanged = true; invalidateDisplayList(); } mx_internal function mouseEventToItemRendererOrEditor(_arg1:MouseEvent):IListItemRenderer{ var _local3:Point; var _local4:Number; var _local5:int; var _local6:int; var _local7:int; var _local8:int; var _local2:DisplayObject = DisplayObject(_arg1.target); if (_local2 == listContent){ _local3 = new Point(_arg1.stageX, _arg1.stageY); _local3 = listContent.globalToLocal(_local3); _local4 = 0; _local5 = listItems.length; _local6 = 0; while (_local6 < _local5) { if (listItems[_local6].length){ if (_local3.y < (_local4 + rowInfo[_local6].height)){ _local7 = listItems[_local6].length; if (_local7 == 1){ return (listItems[_local6][0]); }; _local8 = Math.floor((_local3.x / columnWidth)); return (listItems[_local6][_local8]); }; }; _local4 = (_local4 + rowInfo[_local6].height); _local6++; }; } else { if (_local2 == highlightIndicator){ return (lastHighlightItemRenderer); }; }; while (((_local2) && (!((_local2 == this))))) { if ((((_local2 is IListItemRenderer)) && ((_local2.parent == listContent)))){ if (_local2.visible){ return (IListItemRenderer(_local2)); }; break; }; if ((_local2 is IUIComponent)){ _local2 = IUIComponent(_local2).owner; } else { _local2 = _local2.parent; }; }; return (null); } protected function configureScrollBars():void{ } protected function clearVisibleData():void{ listContent.visibleData = {}; } private function insertSelectionDataAfter(_arg1:String, _arg2:ListBaseSelectionData, _arg3:ListBaseSelectionData):void{ if (_arg3 == null){ firstSelectionData = (lastSelectionData = _arg2); } else { if (_arg3 == lastSelectionData){ lastSelectionData = _arg2; }; _arg2.prevSelectionData = _arg3; _arg2.nextSelectionData = _arg3.nextSelectionData; _arg3.nextSelectionData = _arg2; }; selectedData[_arg1] = _arg2; } protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ var _local4:Number; var _local5:IListItemRenderer; var _local6:String; var _local7:int; var _local13:ScrollEvent; var _local8:Boolean; showCaret = true; var _local9:int = listItems.length; var _local10:int = ((listItems.length - offscreenExtraRowsTop) - offscreenExtraRowsBottom); var _local11:int = (((rowInfo[((_local9 - offscreenExtraRowsBottom) - 1)].y + rowInfo[((_local9 - offscreenExtraRowsBottom) - 1)].height))>(listContent.heightExcludingOffsets - listContent.topOffset)) ? 1 : 0; var _local12:Boolean; bSelectItem = false; switch (_arg1){ case Keyboard.UP: if (caretIndex > 0){ caretIndex--; _local12 = true; bSelectItem = true; }; break; case Keyboard.DOWN: if (caretIndex < (collection.length - 1)){ caretIndex++; _local12 = true; bSelectItem = true; } else { if ((((caretIndex == (collection.length - 1))) && (_local11))){ if (verticalScrollPosition < maxVerticalScrollPosition){ _local4 = (verticalScrollPosition + 1); }; }; }; break; case Keyboard.PAGE_UP: if ((((caretIndex > verticalScrollPosition)) && ((caretIndex < (verticalScrollPosition + _local10))))){ caretIndex = verticalScrollPosition; } else { caretIndex = Math.max((caretIndex - Math.max((_local10 - _local11), 1)), 0); _local4 = Math.max(caretIndex, 0); }; bSelectItem = true; break; case Keyboard.PAGE_DOWN: if ((((caretIndex >= verticalScrollPosition)) && ((caretIndex < (((verticalScrollPosition + _local10) - _local11) - 1))))){ } else { if ((((caretIndex == verticalScrollPosition)) && (((_local10 - _local11) <= 1)))){ caretIndex++; }; _local4 = Math.max(Math.min(caretIndex, maxVerticalScrollPosition), 0); }; bSelectItem = true; break; case Keyboard.HOME: if (caretIndex > 0){ caretIndex = 0; bSelectItem = true; _local4 = 0; }; break; case Keyboard.END: if (caretIndex < (collection.length - 1)){ caretIndex = (collection.length - 1); bSelectItem = true; _local4 = maxVerticalScrollPosition; }; break; }; if (_local12){ if (caretIndex >= ((verticalScrollPosition + _local10) - _local11)){ if ((_local10 - _local11) == 0){ _local4 = Math.min(maxVerticalScrollPosition, caretIndex); } else { _local4 = Math.min(maxVerticalScrollPosition, (((caretIndex - _local10) + _local11) + 1)); }; } else { if (caretIndex < verticalScrollPosition){ _local4 = Math.max(caretIndex, 0); }; }; }; if (!isNaN(_local4)){ if (verticalScrollPosition != _local4){ _local13 = new ScrollEvent(ScrollEvent.SCROLL); _local13.detail = ScrollEventDetail.THUMB_POSITION; _local13.direction = ScrollEventDirection.VERTICAL; _local13.delta = (_local4 - verticalScrollPosition); _local13.position = _local4; verticalScrollPosition = _local4; dispatchEvent(_local13); }; if (!iteratorValid){ keySelectionPending = true; return; }; }; bShiftKey = _arg2; bCtrlKey = _arg3; lastKey = _arg1; finishKeySelection(); } protected function getReservedOrFreeItemRenderer(_arg1:Object):IListItemRenderer{ var _local2:IListItemRenderer; var _local3:String; var _local4:IFactory; var _local5:Dictionary; var _local6:*; if (runningDataEffect){ _local3 = itemToUID(_arg1); _local2 = IListItemRenderer(reservedItemRenderers[_local3]); }; if (_local2){ delete reservedItemRenderers[_local3]; } else { _local4 = getItemRendererFactory(_arg1); if (freeItemRenderersByFactory){ if (_local4 == itemRenderer){ if (freeItemRenderers.length){ _local2 = freeItemRenderers.pop(); delete freeItemRenderersByFactory[_local4][_local2]; }; } else { _local5 = freeItemRenderersByFactory[_local4]; if (_local5){ for (_local6 in _local5) { _local2 = _local6; delete freeItemRenderersByFactory[_local4][_local2]; break; }; }; }; }; }; return (_local2); } protected function addDragData(_arg1:Object):void{ _arg1.addHandler(copySelectedItems, "items"); } private function adjustAfterSort():void{ var p:String; var index:int; var newVerticalScrollPosition:int; var newHorizontalScrollPosition:int; var pos:int; var data:ListBaseSelectionData; var i:int; for (p in selectedData) { i = (i + 1); }; index = (anchorBookmark) ? anchorBookmark.getViewIndex() : -1; if (index >= 0){ if (i == 1){ _selectedIndex = (anchorIndex = (caretIndex = index)); data = selectedData[p]; data.index = index; }; newVerticalScrollPosition = indexToRow(index); if (newVerticalScrollPosition == -1){ return; }; newVerticalScrollPosition = Math.min(maxVerticalScrollPosition, newVerticalScrollPosition); newHorizontalScrollPosition = indexToColumn(index); if (newHorizontalScrollPosition == -1){ return; }; newHorizontalScrollPosition = Math.min(maxHorizontalScrollPosition, newHorizontalScrollPosition); pos = scrollPositionToIndex(newHorizontalScrollPosition, newVerticalScrollPosition); try { iterator.seek(CursorBookmark.CURRENT, (pos - index)); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.CURRENT, (pos - index)); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; return; }; super.verticalScrollPosition = newVerticalScrollPosition; if (listType != "vertical"){ super.horizontalScrollPosition = newHorizontalScrollPosition; }; } else { try { index = scrollPositionToIndex(horizontalScrollPosition, (verticalScrollPosition - offscreenExtraRowsTop)); iterator.seek(CursorBookmark.FIRST, index); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, index); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; return; }; }; if (i > 1){ commitSelectedItems(selectedItems); }; } public function set listData(_arg1:BaseListData):void{ _listData = _arg1; } private function initiateSelectionTracking(_arg1:Array):void{ var _local3:IListItemRenderer; var _local2:int; while (_local2 < _arg1.length) { _local3 = (_arg1[_local2] as IListItemRenderer); if (selectedData[itemToUID(_local3.data)]){ _local3.addEventListener(MoveEvent.MOVE, rendererMoveHandler); trackedRenderers.push(_local3); }; _local2++; }; } private function setSelectionDataLoop(_arg1:Array, _arg2:int, _arg3:Boolean=true):void{ var uid:String; var item:Object; var bookmark:CursorBookmark; var len:int; var data:Object; var prevSelectionData:ListBaseSelectionData; var i:int; var items = _arg1; var index = _arg2; var useFind = _arg3; if (useFind){ while (items.length) { item = items.pop(); uid = itemToUID(item); try { collectionIterator.findAny(item); } catch(e1:ItemPendingError) { items.push(item); e1.addResponder(new ItemResponder(selectionDataPendingResultHandler, selectionDataPendingFailureHandler, new ListBaseSelectionDataPending(useFind, 0, items, null, 0))); return; }; bookmark = collectionIterator.bookmark; index = bookmark.getViewIndex(); if (index >= 0){ insertSelectionDataBefore(uid, new ListBaseSelectionData(item, index, true), firstSelectionData); } else { try { collectionIterator.seek(CursorBookmark.FIRST, 0); } catch(e2:ItemPendingError) { e2.addResponder(new ItemResponder(selectionDataPendingResultHandler, selectionDataPendingFailureHandler, new ListBaseSelectionDataPending(false, 0, items, CursorBookmark.FIRST, 0))); return; }; setSelectionDataLoop(items, 0, false); return; }; if (items.length == 0){ _selectedIndex = index; _selectedItem = item; caretIndex = index; caretBookmark = collectionIterator.bookmark; anchorIndex = index; anchorBookmark = collectionIterator.bookmark; }; }; } else { while (((items.length) && (!(collectionIterator.afterLast)))) { len = items.length; data = collectionIterator.current; prevSelectionData = null; i = 0; while (i < len) { if (data == items[i]){ uid = itemToUID(data); if (prevSelectionData == null){ insertSelectionDataBefore(uid, new ListBaseSelectionData(data, index, false), firstSelectionData); } else { insertSelectionDataAfter(uid, new ListBaseSelectionData(data, index, false), prevSelectionData); }; if (i == 0){ _selectedIndex = index; _selectedItem = data; caretIndex = index; caretBookmark = collectionIterator.bookmark; anchorIndex = index; anchorBookmark = collectionIterator.bookmark; }; break; }; uid = itemToUID(items[i]); if (selectedData[uid] != null){ prevSelectionData = selectedData[uid]; }; i = (i + 1); }; try { collectionIterator.moveNext(); index = (index + 1); } catch(e2:ItemPendingError) { e2.addResponder(new ItemResponder(selectionDataPendingResultHandler, selectionDataPendingFailureHandler, new ListBaseSelectionDataPending(false, index, items.slice((i + 1)), CursorBookmark.FIRST, index))); return; }; }; }; if (initialized){ updateList(); }; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } public function set dragEnabled(_arg1:Boolean):void{ if (((_dragEnabled) && (!(_arg1)))){ removeEventListener(DragEvent.DRAG_START, dragStartHandler, false); removeEventListener(DragEvent.DRAG_COMPLETE, dragCompleteHandler, false); }; _dragEnabled = _arg1; if (_arg1){ addEventListener(DragEvent.DRAG_START, dragStartHandler, false, EventPriority.DEFAULT_HANDLER); addEventListener(DragEvent.DRAG_COMPLETE, dragCompleteHandler, false, EventPriority.DEFAULT_HANDLER); }; } mx_internal function getListContentHolder():ListBaseContentHolder{ return (listContent); } public function set iconFunction(_arg1:Function):void{ _iconFunction = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("iconFunctionChanged")); } protected function initiateDataChangeEffect(_arg1:Number, _arg2:Number):void{ var _local9:Array; var _local10:int; var _local11:Object; actualCollection = collection; actualIterator = iterator; collection = modifiedCollectionView; modifiedCollectionView.showPreservedState = true; listContent.iterator = (iterator = collection.createCursor()); var _local3:int = scrollPositionToIndex((horizontalScrollPosition - offscreenExtraColumnsLeft), (verticalScrollPosition - offscreenExtraRowsTop)); iterator.seek(CursorBookmark.FIRST, _local3); updateDisplayList(_arg1, _arg2); var _local4:Array = []; var _local5:Dictionary = new Dictionary(true); var _local6:int; while (_local6 < listItems.length) { _local9 = listItems[_local6]; if (((_local9) && ((_local9.length > 0)))){ _local10 = 0; while (_local10 < _local9.length) { _local11 = _local9[_local10]; if (_local11){ _local4.push(_local11); _local5[_local11] = true; }; _local10++; }; }; _local6++; }; cachedItemsChangeEffect.targets = _local4; if (cachedItemsChangeEffect.effectTargetHost != this){ cachedItemsChangeEffect.effectTargetHost = this; }; cachedItemsChangeEffect.captureStartValues(); modifiedCollectionView.showPreservedState = false; iterator.seek(CursorBookmark.FIRST, _local3); itemsSizeChanged = true; updateDisplayList(_arg1, _arg2); var _local7:Array = []; var _local8:Array = cachedItemsChangeEffect.targets; _local6 = 0; while (_local6 < listItems.length) { _local9 = listItems[_local6]; if (((_local9) && ((_local9.length > 0)))){ _local10 = 0; while (_local10 < _local9.length) { _local11 = _local9[_local10]; if (((_local11) && (!(_local5[_local11])))){ _local8.push(_local11); _local7.push(_local11); }; _local10++; }; }; _local6++; }; if (_local7.length > 0){ cachedItemsChangeEffect.targets = _local8; cachedItemsChangeEffect.captureMoreStartValues(_local7); }; cachedItemsChangeEffect.captureEndValues(); modifiedCollectionView.showPreservedState = true; iterator.seek(CursorBookmark.FIRST, _local3); itemsSizeChanged = true; updateDisplayList(_arg1, _arg2); initiateSelectionTracking(_local8); cachedItemsChangeEffect.addEventListener(EffectEvent.EFFECT_END, finishDataChangeEffect); cachedItemsChangeEffect.play(); } public function get labelFunction():Function{ return (_labelFunction); } public function get dataTipField():String{ return (_dataTipField); } protected function adjustListContent(_arg1:Number=-1, _arg2:Number=-1):void{ if (_arg2 < 0){ _arg2 = oldUnscaledHeight; _arg1 = oldUnscaledWidth; }; var _local3:Number = (viewMetrics.left + listContent.leftOffset); var _local4:Number = (viewMetrics.top + listContent.topOffset); listContent.move(_local3, _local4); var _local5:Number = ((Math.max(0, listContent.rightOffset) - _local3) - viewMetrics.right); var _local6:Number = ((Math.max(0, listContent.bottomOffset) - _local4) - viewMetrics.bottom); listContent.setActualSize((_arg1 + _local5), (_arg2 + _local6)); } public function get selectedIndex():int{ return (_selectedIndex); } mx_internal function setBookmarkPendingFailureHandler(_arg1:Object, _arg2:Object):void{ } private function insertSelectionDataBefore(_arg1:String, _arg2:ListBaseSelectionData, _arg3:ListBaseSelectionData):void{ if (_arg3 == null){ firstSelectionData = (lastSelectionData = _arg2); } else { if (_arg3 == firstSelectionData){ firstSelectionData = _arg2; }; _arg2.nextSelectionData = _arg3; _arg2.prevSelectionData = _arg3.prevSelectionData; _arg3.prevSelectionData = _arg2; }; selectedData[_arg1] = _arg2; } mx_internal function getCaretIndex():int{ return (caretIndex); } mx_internal function removeClipMask():void{ var _local7:DisplayObject; if (((listContent) && (listContent.mask))){ return; }; var _local1:int = (listItems.length - 1); if (_local1 < 0){ return; }; var _local2:Number = rowInfo[_local1].height; var _local3:ListRowInfo = rowInfo[_local1]; var _local4:Array = listItems[_local1]; var _local5:int = _local4.length; var _local6:int; while (_local6 < _local5) { _local7 = _local4[_local6]; if ((_local7 is IUITextField)){ if (_local7.height != (_local2 - (_local7.y - _local3.y))){ _local7.height = (_local2 - (_local7.y - _local3.y)); }; } else { if (((_local7) && (_local7.mask))){ itemMaskFreeList.push(_local7.mask); _local7.mask = null; }; }; _local6++; }; } mx_internal function reconstructDataFromListItems():Array{ var _local1:Array; var _local2:int; var _local3:IListItemRenderer; var _local4:Object; var _local5:Object; var _local6:int; if (!listItems){ return ([]); }; _local1 = []; _local2 = 0; while (_local2 < listItems.length) { if (listItems[_local2]){ _local3 = (listItems[_local2][0] as IListItemRenderer); if (_local3){ _local4 = _local3.data; _local1.push(_local4); _local6 = 0; while (_local6 < listItems[_local2].length) { _local3 = (listItems[_local2][_local6] as IListItemRenderer); if (_local3){ _local5 = _local3.data; if (_local5 != _local4){ _local1.push(_local5); }; }; _local6++; }; }; }; _local2++; }; return (_local1); } public function set dataTipFunction(_arg1:Function):void{ _dataTipFunction = _arg1; itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("dataTipFunctionChanged")); } private function calculateSelectedIndexAndItem():void{ var _local2:String; var _local1:int; for (_local2 in selectedData) { _local1 = 1; break; }; if (!_local1){ _selectedIndex = -1; _selectedItem = null; return; }; _selectedIndex = selectedData[_local2].index; _selectedItem = selectedData[_local2].data; } protected function scrollPositionToIndex(_arg1:int, _arg2:int):int{ return ((iterator) ? _arg2 : -1); } override protected function createChildren():void{ super.createChildren(); if (!listContent){ listContent = new ListBaseContentHolder(this); listContent.styleName = new StyleProxy(this, listContentStyleFilters); addChild(listContent); }; if (!selectionLayer){ selectionLayer = listContent.selectionLayer; }; } public function findString(_arg1:String):Boolean{ var cursorPos:CursorBookmark; var bMovedNext:Boolean; var str = _arg1; if (((!(collection)) || ((collection.length == 0)))){ return (false); }; cursorPos = iterator.bookmark; var stopIndex:int = selectedIndex; var i:int = (stopIndex + 1); if (selectedIndex == -1){ try { iterator.seek(CursorBookmark.FIRST, 0); } catch(e1:ItemPendingError) { e1.addResponder(new ItemResponder(findPendingResultHandler, findPendingFailureHandler, new ListBaseFindPending(str, cursorPos, CursorBookmark.FIRST, 0, 0, collection.length))); iteratorValid = false; return (false); }; stopIndex = collection.length; i = 0; } else { try { iterator.seek(CursorBookmark.FIRST, stopIndex); } catch(e2:ItemPendingError) { if (anchorIndex == (collection.length - 1)){ e2.addResponder(new ItemResponder(findPendingResultHandler, findPendingFailureHandler, new ListBaseFindPending(str, cursorPos, CursorBookmark.FIRST, 0, 0, collection.length))); } else { e2.addResponder(new ItemResponder(findPendingResultHandler, findPendingFailureHandler, new ListBaseFindPending(str, cursorPos, anchorBookmark, 1, (anchorIndex + 1), anchorIndex))); }; iteratorValid = false; return (false); }; bMovedNext = false; try { bMovedNext = iterator.moveNext(); } catch(e3:ItemPendingError) { e3.addResponder(new ItemResponder(findPendingResultHandler, findPendingFailureHandler, new ListBaseFindPending(str, cursorPos, anchorBookmark, 1, (anchorIndex + 1), anchorIndex))); iteratorValid = false; return (false); }; if (!bMovedNext){ try { iterator.seek(CursorBookmark.FIRST, 0); } catch(e4:ItemPendingError) { e4.addResponder(new ItemResponder(findPendingResultHandler, findPendingFailureHandler, new ListBaseFindPending(str, cursorPos, CursorBookmark.FIRST, 0, 0, collection.length))); iteratorValid = false; return (false); }; stopIndex = collection.length; i = 0; }; }; return (findStringLoop(str, cursorPos, i, stopIndex)); } private function commitSelectedItem(_arg1:Object, _arg2:Boolean=true):void{ if (_arg2){ clearSelected(); }; if (_arg1 != null){ commitSelectedItems([_arg1]); }; } public function showDropFeedback(_arg1:DragEvent):void{ var _local6:Class; var _local7:EdgeMetrics; if (!dropIndicator){ _local6 = getStyle("dropIndicatorSkin"); if (!_local6){ _local6 = ListDropIndicator; }; dropIndicator = IFlexDisplayObject(new (_local6)); _local7 = viewMetrics; drawFocus(true); dropIndicator.x = 2; dropIndicator.setActualSize((listContent.width - 4), 4); dropIndicator.visible = true; listContent.addChild(DisplayObject(dropIndicator)); if (collection){ if (dragScrollingInterval == 0){ dragScrollingInterval = setInterval(dragScroll, 15); }; }; }; var _local2:int = listItems.length; var _local3:int = (((rowInfo[((_local2 - offscreenExtraRowsBottom) - 1)].y + rowInfo[((_local2 - offscreenExtraRowsBottom) - 1)].height))>(listContent.heightExcludingOffsets - listContent.topOffset)) ? 1 : 0; var _local4:Number = calculateDropIndex(_arg1); _local4 = (_local4 - verticalScrollPosition); var _local5:Number = listItems.length; if (_local4 >= _local5){ if (_local3){ _local4 = (_local5 - 1); } else { _local4 = _local5; }; }; if (_local4 < 0){ _local4 = 0; }; dropIndicator.y = calculateDropIndicatorY(_local5, (_local4 + offscreenExtraRowsTop)); } mx_internal function commitSelectedIndex(_arg1:int):void{ var bookmark:CursorBookmark; var len:int; var data:Object; var selectedBookmark:CursorBookmark; var uid:String; var value = _arg1; if (value != -1){ value = Math.min(value, (collection.length - 1)); bookmark = iterator.bookmark; len = (value - scrollPositionToIndex((horizontalScrollPosition - offscreenExtraColumnsLeft), (verticalScrollPosition - offscreenExtraRowsTop))); try { iterator.seek(CursorBookmark.CURRENT, len); } catch(e:ItemPendingError) { iterator.seek(bookmark, 0); bSelectedIndexChanged = true; _selectedIndex = value; return; }; data = iterator.current; selectedBookmark = iterator.bookmark; uid = itemToUID(data); iterator.seek(bookmark, 0); if (!selectedData[uid]){ if (((listContent) && (UIDToItemRenderer(uid)))){ selectItem(UIDToItemRenderer(uid), false, false); } else { clearSelected(); insertSelectionDataBefore(uid, new ListBaseSelectionData(data, value, approximate), firstSelectionData); _selectedIndex = value; caretIndex = value; caretBookmark = selectedBookmark; anchorIndex = value; anchorBookmark = selectedBookmark; _selectedItem = data; }; }; } else { clearSelected(); }; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } protected function get visibleData():Object{ return (listContent.visibleData); } public function set rowHeight(_arg1:Number):void{ explicitRowHeight = _arg1; if (_rowHeight != _arg1){ setRowHeight(_arg1); invalidateSize(); itemsSizeChanged = true; invalidateDisplayList(); dispatchEvent(new Event("rowHeightChanged")); }; } private function seekNextSafely(_arg1:IViewCursor, _arg2:int):Boolean{ var iterator = _arg1; var pos = _arg2; try { iterator.moveNext(); } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, pos); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; return (iteratorValid); } public function set data(_arg1:Object):void{ _data = _arg1; if (((_listData) && ((_listData is DataGridListData)))){ selectedItem = _data[DataGridListData(_listData).dataField]; } else { if ((((_listData is ListData)) && ((ListData(_listData).labelField in _data)))){ selectedItem = _data[ListData(_listData).labelField]; } else { selectedItem = _data; }; }; dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } public function get rowCount():int{ return (_rowCount); } mx_internal function get rendererArray():Array{ return (listItems); } public function get columnCount():int{ return (_columnCount); } protected function purgeItemRenderers():void{ var _local1:*; var _local2:Array; var _local3:IListItemRenderer; var _local4:DisplayObject; var _local5:Dictionary; var _local6:*; rendererChanged = false; while (listItems.length) { _local2 = listItems.pop(); while (_local2.length) { _local3 = IListItemRenderer(_local2.pop()); if (_local3){ listContent.removeChild(DisplayObject(_local3)); if (dataItemWrappersByRenderer[_local3]){ delete visibleData[itemToUID(dataItemWrappersByRenderer[_local3])]; } else { delete visibleData[itemToUID(_local3.data)]; }; }; }; }; while (freeItemRenderers.length) { _local4 = DisplayObject(freeItemRenderers.pop()); if (_local4.parent){ listContent.removeChild(_local4); }; }; for (_local1 in freeItemRenderersByFactory) { _local5 = freeItemRenderersByFactory[_local1]; for (_local6 in _local5) { _local4 = DisplayObject(_local6); delete _local5[_local6]; if (_local4.parent){ listContent.removeChild(_local4); }; }; }; rowMap = {}; listContent.rowInfo = []; } protected function mouseEventToItemRenderer(_arg1:MouseEvent):IListItemRenderer{ return (mouseEventToItemRendererOrEditor(_arg1)); } protected function UIDToItemRenderer(_arg1:String):IListItemRenderer{ if (!listContent){ return (null); }; return (visibleData[_arg1]); } public function get dragEnabled():Boolean{ return (_dragEnabled); } private function findPendingResultHandler(_arg1:Object, _arg2:ListBaseFindPending):void{ iterator.seek(_arg2.bookmark, _arg2.offset); findStringLoop(_arg2.searchString, _arg2.startingBookmark, _arg2.currentIndex, _arg2.stopIndex); } protected function set allowItemSizeChangeNotification(_arg1:Boolean):void{ listContent.allowItemSizeChangeNotification = _arg1; } public function get iconFunction():Function{ return (_iconFunction); } protected function collectionChangeHandler(_arg1:Event):void{ var len:int; var index:int; var i:int; var data:ListBaseSelectionData; var p:String; var selectedUID:String; var ce:CollectionEvent; var emitEvent:Boolean; var oldUID:String; var sd:ListBaseSelectionData; var requiresValueCommit:Boolean; var firstUID:String; var uid:String; var deletedItems:Array; var fakeRemove:CollectionEvent; var event = _arg1; if ((event is CollectionEvent)){ ce = CollectionEvent(event); if (ce.kind == CollectionEventKind.ADD){ prepareDataEffect(ce); if ((((ce.location == 0)) && ((verticalScrollPosition == 0)))){ try { iterator.seek(CursorBookmark.FIRST); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, 0); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; } else { if ((((listType == "vertical")) && ((verticalScrollPosition >= ce.location)))){ super.verticalScrollPosition = (super.verticalScrollPosition + ce.items.length); }; }; emitEvent = adjustAfterAdd(ce.items, ce.location); if (emitEvent){ dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); }; } else { if (ce.kind == CollectionEventKind.REPLACE){ selectedUID = (selectedItem) ? itemToUID(selectedItem) : null; len = ce.items.length; i = 0; while (i < len) { oldUID = itemToUID(ce.items[i].oldValue); sd = selectedData[oldUID]; if (sd){ sd.data = ce.items[i].newValue; delete selectedData[oldUID]; selectedData[itemToUID(sd.data)] = sd; if (selectedUID == oldUID){ _selectedItem = sd.data; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); }; }; i = (i + 1); }; prepareDataEffect(ce); } else { if (ce.kind == CollectionEventKind.REMOVE){ prepareDataEffect(ce); requiresValueCommit = false; if (((listItems.length) && (listItems[0].length))){ firstUID = rowMap[listItems[0][0].name].uid; selectedUID = (selectedItem) ? itemToUID(selectedItem) : null; i = 0; while (i < ce.items.length) { uid = itemToUID(ce.items[i]); if ((((uid == firstUID)) && ((verticalScrollPosition == 0)))){ try { iterator.seek(CursorBookmark.FIRST); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e1:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, 0); e1.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; }; if (selectedData[uid]){ removeSelectionData(uid); }; if (selectedUID == uid){ _selectedItem = null; _selectedIndex = -1; requiresValueCommit = true; }; removeIndicators(uid); i = (i + 1); }; if ((((listType == "vertical")) && ((verticalScrollPosition >= ce.location)))){ if (verticalScrollPosition > ce.location){ super.verticalScrollPosition = (verticalScrollPosition - Math.min(ce.items.length, (verticalScrollPosition - ce.location))); } else { if (verticalScrollPosition >= collection.length){ super.verticalScrollPosition = Math.max((collection.length - 1), 0); }; }; try { offscreenExtraRowsTop = Math.min(offscreenExtraRowsTop, verticalScrollPosition); index = scrollPositionToIndex(horizontalScrollPosition, (verticalScrollPosition - offscreenExtraRowsTop)); iterator.seek(CursorBookmark.FIRST, index); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e2:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, index); e2.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; }; emitEvent = adjustAfterRemove(ce.items, ce.location, requiresValueCommit); if (emitEvent){ dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); }; }; } else { if (ce.kind == CollectionEventKind.MOVE){ if (ce.oldLocation < ce.location){ for (p in selectedData) { data = selectedData[p]; if ((((data.index > ce.oldLocation)) && ((data.index < ce.location)))){ data.index--; } else { if (data.index == ce.oldLocation){ data.index = ce.location; }; }; }; if ((((_selectedIndex > ce.oldLocation)) && ((_selectedIndex < ce.location)))){ _selectedIndex--; } else { if (_selectedIndex == ce.oldLocation){ _selectedIndex = ce.location; }; }; } else { if (ce.location < ce.oldLocation){ for (p in selectedData) { data = selectedData[p]; if ((((data.index > ce.location)) && ((data.index < ce.oldLocation)))){ data.index++; } else { if (data.index == ce.oldLocation){ data.index = ce.location; }; }; }; if ((((_selectedIndex > ce.location)) && ((_selectedIndex < ce.oldLocation)))){ _selectedIndex++; } else { if (_selectedIndex == ce.oldLocation){ _selectedIndex = ce.location; }; }; }; }; if (ce.oldLocation == verticalScrollPosition){ if (ce.location > maxVerticalScrollPosition){ iterator.seek(CursorBookmark.CURRENT, (maxVerticalScrollPosition - ce.location)); }; super.verticalScrollPosition = Math.min(ce.location, maxVerticalScrollPosition); } else { if ((((ce.location >= verticalScrollPosition)) && ((ce.oldLocation < verticalScrollPosition)))){ seekNextSafely(iterator, verticalScrollPosition); } else { if ((((ce.location <= verticalScrollPosition)) && ((ce.oldLocation > verticalScrollPosition)))){ seekPreviousSafely(iterator, verticalScrollPosition); }; }; }; } else { if (ce.kind == CollectionEventKind.REFRESH){ if (anchorBookmark){ try { iterator.seek(anchorBookmark, 0); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { bSortItemPending = true; lastSeekPending = new ListBaseSeekPending(anchorBookmark, 0); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; } catch(cursorError:CursorError) { clearSelected(); }; adjustAfterSort(); } else { try { index = scrollPositionToIndex(horizontalScrollPosition, verticalScrollPosition); iterator.seek(CursorBookmark.FIRST, index); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { bSortItemPending = true; lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, index); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; }; } else { if (ce.kind == CollectionEventKind.RESET){ if ((((collection.length == 0)) || (((runningDataEffect) && ((actualCollection.length == 0)))))){ deletedItems = reconstructDataFromListItems(); if (deletedItems.length){ fakeRemove = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); fakeRemove.kind = CollectionEventKind.REMOVE; fakeRemove.items = deletedItems; fakeRemove.location = 0; prepareDataEffect(fakeRemove); }; }; try { iterator.seek(CursorBookmark.FIRST); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; collectionIterator.seek(CursorBookmark.FIRST); } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, 0); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; if (((((((bSelectedIndexChanged) || (bSelectedItemChanged))) || (bSelectedIndicesChanged))) || (bSelectedItemsChanged))){ bSelectionChanged = true; } else { commitSelectedIndex(-1); }; if (isNaN(verticalScrollPositionPending)){ verticalScrollPositionPending = 0; super.verticalScrollPosition = 0; }; if (isNaN(horizontalScrollPositionPending)){ horizontalScrollPositionPending = 0; super.horizontalScrollPosition = 0; }; invalidateSize(); } else { if (ce.kind == CollectionEventKind.UPDATE){ selectedUID = (selectedItem) ? itemToUID(selectedItem) : null; len = ce.items.length; i = 0; while (i < len) { if (ce.items[i].property == "uid"){ oldUID = ce.items[i].oldValue; sd = selectedData[oldUID]; if (sd){ sd.data = ce.items[i].target; delete selectedData[oldUID]; selectedData[ce.items[i].newValue] = sd; if (selectedUID == oldUID){ _selectedItem = sd.data; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); }; }; }; i = (i + 1); }; }; }; }; }; }; }; }; }; itemsSizeChanged = true; invalidateDisplayList(); } public function set dataProvider(_arg1:Object):void{ var _local3:XMLList; var _local4:Array; if (collection){ collection.removeEventListener(CollectionEvent.COLLECTION_CHANGE, collectionChangeHandler); }; if ((_arg1 is Array)){ collection = new ArrayCollection((_arg1 as Array)); } else { if ((_arg1 is ICollectionView)){ collection = ICollectionView(_arg1); } else { if ((_arg1 is IList)){ collection = new ListCollectionView(IList(_arg1)); } else { if ((_arg1 is XMLList)){ collection = new XMLListCollection((_arg1 as XMLList)); } else { if ((_arg1 is XML)){ _local3 = new XMLList(); _local3 = (_local3 + _arg1); collection = new XMLListCollection(_local3); } else { _local4 = []; if (_arg1 != null){ _local4.push(_arg1); }; collection = new ArrayCollection(_local4); }; }; }; }; }; iterator = collection.createCursor(); collectionIterator = collection.createCursor(); collection.addEventListener(CollectionEvent.COLLECTION_CHANGE, collectionChangeHandler, false, 0, true); clearSelectionData(); var _local2:CollectionEvent = new CollectionEvent(CollectionEvent.COLLECTION_CHANGE); _local2.kind = CollectionEventKind.RESET; collectionChangeHandler(_local2); dispatchEvent(_local2); itemsNeedMeasurement = true; invalidateProperties(); invalidateSize(); invalidateDisplayList(); } protected function destroyRow(_arg1:int, _arg2:int):void{ var _local3:IListItemRenderer; var _local4:String = rowInfo[_arg1].uid; removeIndicators(_local4); var _local5:int; while (_local5 < _arg2) { _local3 = listItems[_arg1][_local5]; if (_local3.data){ delete visibleData[_local4]; }; addToFreeItemRenderers(_local3); _local5++; }; } protected function dragDropHandler(_arg1:DragEvent):void{ var _local2:Array; var _local3:int; var _local4:Array; var _local5:int; if (_arg1.isDefaultPrevented()){ return; }; hideDropFeedback(_arg1); lastDragEvent = null; resetDragScrolling(); if (((enabled) && (_arg1.dragSource.hasFormat("items")))){ if (!dataProvider){ dataProvider = []; }; _local2 = (_arg1.dragSource.dataForFormat("items") as Array); _local3 = calculateDropIndex(_arg1); if ((((_arg1.action == DragManager.MOVE)) && (dragMoveEnabled))){ if (_arg1.dragInitiator == this){ _local4 = selectedIndices; _local4.sort(Array.NUMERIC); _local5 = (_local4.length - 1); while (_local5 >= 0) { collectionIterator.seek(CursorBookmark.FIRST, _local4[_local5]); if (_local4[_local5] < _local3){ _local3--; }; collectionIterator.remove(); _local5--; }; clearSelected(false); }; }; collectionIterator.seek(CursorBookmark.FIRST, _local3); _local5 = (_local2.length - 1); while (_local5 >= 0) { if (_arg1.action == DragManager.COPY){ collectionIterator.insert(copyItemWithUID(_local2[_local5])); } else { if (_arg1.action == DragManager.MOVE){ collectionIterator.insert(_local2[_local5]); }; }; _local5--; }; }; lastDragEvent = null; } public function get dataTipFunction():Function{ return (_dataTipFunction); } public function scrollToIndex(_arg1:int):Boolean{ var _local2:int; if ((((_arg1 >= ((verticalScrollPosition + listItems.length) - offscreenExtraRowsBottom))) || ((_arg1 < verticalScrollPosition)))){ _local2 = Math.min(_arg1, maxVerticalScrollPosition); verticalScrollPosition = _local2; return (true); }; return (false); } protected function addToFreeItemRenderers(_arg1:IListItemRenderer):void{ DisplayObject(_arg1).visible = false; var _local2:IFactory = factoryMap[_arg1]; var _local3:ItemWrapper = dataItemWrappersByRenderer[_arg1]; var _local4:String = (_local3) ? itemToUID(_local3) : itemToUID(_arg1.data); if (visibleData[_local4] == _arg1){ delete visibleData[_local4]; }; if (_local3){ reservedItemRenderers[itemToUID(_local3)] = _arg1; } else { if (!freeItemRenderersByFactory){ freeItemRenderersByFactory = new Dictionary(true); }; if (freeItemRenderersByFactory[_local2] == undefined){ freeItemRenderersByFactory[_local2] = new Dictionary(true); }; freeItemRenderersByFactory[_local2][_arg1] = 1; if (_local2 == itemRenderer){ freeItemRenderers.push(_arg1); }; }; delete rowMap[_arg1.name]; } override protected function initializeAccessibility():void{ if (ListBase.createAccessibilityImplementation != null){ ListBase.createAccessibilityImplementation(this); }; } public function isItemSelectable(_arg1:Object):Boolean{ if (!selectable){ return (false); }; if (_arg1 == null){ return (false); }; return (true); } private function findPendingFailureHandler(_arg1:Object, _arg2:ListBaseFindPending):void{ } public function get rowHeight():Number{ return (_rowHeight); } public function get data():Object{ return (_data); } mx_internal function adjustOffscreenRowsAndColumns():void{ offscreenExtraColumns = 0; offscreenExtraRows = offscreenExtraRowsOrColumns; } protected function indexToRow(_arg1:int):int{ return (_arg1); } protected function get dragImageOffsets():Point{ var _local1:Point = new Point(); var _local2:int = listItems.length; var _local3:int; while (_local3 < _local2) { if (selectedData[rowInfo[_local3].uid]){ _local1.x = listItems[_local3][0].x; _local1.y = listItems[_local3][0].y; }; _local3++; }; return (_local1); } public function get dataProvider():Object{ if (actualCollection){ return (actualCollection); }; return (collection); } override public function styleChanged(_arg1:String):void{ var _local2:int; var _local3:int; var _local4:int; var _local5:int; if (IS_ITEM_STYLE[_arg1]){ itemsSizeChanged = true; invalidateDisplayList(); } else { if (_arg1 == "paddingTop"){ cachedPaddingTopInvalid = true; invalidateProperties(); } else { if (_arg1 == "paddingBottom"){ cachedPaddingBottomInvalid = true; invalidateProperties(); } else { if (_arg1 == "verticalAlign"){ cachedVerticalAlignInvalid = true; invalidateProperties(); } else { if (_arg1 == "itemsChangeEffect"){ cachedItemsChangeEffect = null; } else { if (((listContent) && (listItems))){ _local2 = listItems.length; _local3 = 0; while (_local3 < _local2) { _local4 = listItems[_local3].length; _local5 = 0; while (_local5 < _local4) { if (listItems[_local3][_local5]){ listItems[_local3][_local5].styleChanged(_arg1); }; _local5++; }; _local3++; }; }; }; }; }; }; }; super.styleChanged(_arg1); if (invalidateSizeFlag){ itemsNeedMeasurement = true; invalidateProperties(); }; if (StyleManager.isSizeInvalidatingStyle(_arg1)){ scrollAreaChanged = true; }; } private function selectionPendingResultHandler(_arg1:Object, _arg2:ListBaseSelectionPending):void{ iterator.seek(_arg2.bookmark, _arg2.offset); shiftSelectionLoop(_arg2.incrementing, _arg2.index, _arg2.stopData, _arg2.transition, _arg2.placeHolder); } public function set selectedItems(_arg1:Array):void{ if (((!(collection)) || ((collection.length == 0)))){ _selectedItems = _arg1; bSelectedItemsChanged = true; bSelectionChanged = true; invalidateDisplayList(); return; }; commitSelectedItems(_arg1); } public function itemToDataTip(_arg1:Object):String{ var data = _arg1; if (data == null){ return (" "); }; if (dataTipFunction != null){ return (dataTipFunction(data)); }; if ((data is XML)){ try { if (data[dataTipField].length() != 0){ data = data[dataTipField]; }; } catch(e:Error) { }; } else { if ((data is Object)){ try { if (data[dataTipField] != null){ data = data[dataTipField]; } else { if (data.label != null){ data = data.label; }; }; } catch(e:Error) { }; }; }; if ((data is String)){ return (String(data)); }; try { return (data.toString()); } catch(e:Error) { }; return (" "); } protected function dragStartHandler(_arg1:DragEvent):void{ var _local2:DragSource; if (_arg1.isDefaultPrevented()){ return; }; _local2 = new DragSource(); addDragData(_local2); DragManager.doDrag(this, _local2, _arg1, dragImage, 0, 0, 0.5, dragMoveEnabled); } private function cleanupAfterDataChangeEffect():void{ if (((runningDataEffect) || (runDataEffectNextUpdate))){ return; }; var _local1:int = scrollPositionToIndex((horizontalScrollPosition - offscreenExtraColumnsLeft), (verticalScrollPosition - offscreenExtraRowsTop)); iterator.seek(CursorBookmark.FIRST, _local1); dataEffectCompleted = true; itemsSizeChanged = true; invalidateList(); dataItemWrappersByRenderer = new Dictionary(); } mx_internal function setBookmarkPendingResultHandler(_arg1:Object, _arg2:Object):void{ var placeHolder:CursorBookmark; var data = _arg1; var info = _arg2; placeHolder = iterator.bookmark; try { iterator.seek(CursorBookmark.FIRST, info.value); this[info.property] = iterator.bookmark; } catch(e:ItemPendingError) { e.addResponder(new ItemResponder(setBookmarkPendingResultHandler, setBookmarkPendingFailureHandler, info)); }; iterator.seek(placeHolder); } protected function removeIndicators(_arg1:String):void{ if (selectionTweens[_arg1]){ selectionTweens[_arg1].removeEventListener(TweenEvent.TWEEN_UPDATE, selectionTween_updateHandler); selectionTweens[_arg1].removeEventListener(TweenEvent.TWEEN_END, selectionTween_endHandler); if (selectionIndicators[_arg1].alpha < 1){ Tween.removeTween(selectionTweens[_arg1]); }; delete selectionTweens[_arg1]; }; if (selectionIndicators[_arg1]){ selectionIndicators[_arg1].parent.removeChild(selectionIndicators[_arg1]); selectionIndicators[_arg1] = null; }; if (_arg1 == highlightUID){ highlightItemRenderer = null; highlightUID = null; clearHighlightIndicator(highlightIndicator, UIDToItemRenderer(_arg1)); }; if (_arg1 == caretUID){ caretItemRenderer = null; caretUID = null; clearCaretIndicator(caretIndicator, UIDToItemRenderer(_arg1)); }; } private function mouseIsUp():void{ systemManager.getSandboxRoot().removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true); systemManager.getSandboxRoot().removeEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, mouseLeaveHandler); if (((!(dragEnabled)) && (!((dragScrollingInterval == 0))))){ clearInterval(dragScrollingInterval); dragScrollingInterval = 0; }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local3:CursorBookmark; var _local6:int; super.updateDisplayList(_arg1, _arg2); if ((((((((((oldUnscaledWidth == _arg1)) && ((oldUnscaledHeight == _arg2)))) && (!(itemsSizeChanged)))) && (!(bSelectionChanged)))) && (!(scrollAreaChanged)))){ return; }; if (oldUnscaledWidth != _arg1){ itemsSizeChanged = true; }; removeClipMask(); var _local4:Graphics = selectionLayer.graphics; _local4.clear(); if ((((listContent.width > 0)) && ((listContent.height > 0)))){ _local4.beginFill(0x808080, 0); _local4.drawRect(0, 0, listContent.width, listContent.height); _local4.endFill(); }; if (rendererChanged){ purgeItemRenderers(); } else { if (dataEffectCompleted){ partialPurgeItemRenderers(); }; }; adjustListContent(_arg1, _arg2); var _local5:Boolean = ((collection) && ((collection.length > 0))); if (_local5){ adjustScrollPosition(); }; if ((((((((((((oldUnscaledWidth == _arg1)) && (!(scrollAreaChanged)))) && (!(itemsSizeChanged)))) && ((listItems.length > 0)))) && (iterator))) && ((columnCount == 1)))){ _local6 = (listItems.length - 1); if (oldUnscaledHeight > _arg2){ reduceRows(_local6); } else { makeAdditionalRows(_local6); }; } else { if (iterator){ _local3 = iterator.bookmark; }; clearIndicators(); rendererTrackingSuspended = true; if (iterator){ if (((((offscreenExtraColumns) || (offscreenExtraColumnsLeft))) || (offscreenExtraColumnsRight))){ makeRowsAndColumnsWithExtraColumns(_arg1, _arg2); } else { makeRowsAndColumnsWithExtraRows(_arg1, _arg2); }; } else { makeRowsAndColumns(0, 0, listContent.width, listContent.height, 0, 0); }; rendererTrackingSuspended = false; seekPositionIgnoreError(iterator, _local3); }; oldUnscaledWidth = _arg1; oldUnscaledHeight = _arg2; configureScrollBars(); addClipMask(true); itemsSizeChanged = false; wordWrapChanged = false; adjustSelectionSettings(_local5); if (((keySelectionPending) && (iteratorValid))){ keySelectionPending = false; finishKeySelection(); }; } protected function dragCompleteHandler(_arg1:DragEvent):void{ var _local2:Array; var _local3:int; var _local4:int; isPressed = false; if (_arg1.isDefaultPrevented()){ return; }; if ((((_arg1.action == DragManager.MOVE)) && (dragMoveEnabled))){ if (_arg1.relatedObject != this){ _local2 = selectedIndices; _local2.sort(Array.NUMERIC); _local3 = _local2.length; _local4 = (_local3 - 1); while (_local4 >= 0) { collectionIterator.seek(CursorBookmark.FIRST, _local2[_local4]); collectionIterator.remove(); _local4--; }; clearSelected(false); }; }; lastDragEvent = null; resetDragScrolling(); } public function getItemRendererFactory(_arg1:Object):IFactory{ if (_arg1 == null){ return (nullItemRenderer); }; return (itemRenderer); } } }//package mx.controls.listClasses
Section 116
//ListBaseContentHolder (mx.controls.listClasses.ListBaseContentHolder) package mx.controls.listClasses { import flash.display.*; import mx.core.*; import mx.collections.*; public class ListBaseContentHolder extends UIComponent { public var listItems:Array; public var topOffset:Number;// = 0 public var rightOffset:Number;// = 0 private var maskShape:Shape; public var selectionLayer:Sprite; private var parentList:ListBase; public var iterator:IViewCursor; public var rowInfo:Array; public var bottomOffset:Number;// = 0 public var leftOffset:Number;// = 0 public var visibleData:Object; mx_internal var allowItemSizeChangeNotification:Boolean;// = true mx_internal static const VERSION:String = "3.2.0.3794"; public function ListBaseContentHolder(_arg1:ListBase){ var _local2:Graphics; visibleData = {}; listItems = []; rowInfo = []; super(); this.parentList = _arg1; setStyle("backgroundColor", ""); setStyle("borderStyle", "none"); if (!selectionLayer){ selectionLayer = new FlexSprite(); selectionLayer.name = "selectionLayer"; selectionLayer.mouseEnabled = false; addChild(selectionLayer); _local2 = selectionLayer.graphics; _local2.beginFill(0, 0); _local2.drawRect(0, 0, 10, 10); _local2.endFill(); }; } override public function set focusPane(_arg1:Sprite):void{ var _local2:Graphics; if (_arg1){ if (!maskShape){ maskShape = new FlexShape(); maskShape.name = "mask"; _local2 = maskShape.graphics; _local2.beginFill(0xFFFFFF); _local2.drawRect(-2, -2, (parentList.width + 2), (parentList.height + 2)); _local2.endFill(); addChild(maskShape); }; maskShape.visible = false; _arg1.mask = maskShape; } else { if (parentList.focusPane.mask == maskShape){ parentList.focusPane.mask = null; }; }; parentList.focusPane = _arg1; _arg1.x = x; _arg1.y = y; } public function get heightExcludingOffsets():Number{ return (((height + topOffset) - bottomOffset)); } public function get widthExcludingOffsets():Number{ return (((width + leftOffset) - rightOffset)); } override public function invalidateSize():void{ if (allowItemSizeChangeNotification){ parentList.invalidateList(); }; } mx_internal function getParentList():ListBase{ return (parentList); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Graphics = selectionLayer.graphics; _local3.clear(); if ((((_arg1 > 0)) && ((_arg2 > 0)))){ _local3.beginFill(0x808080, 0); _local3.drawRect(0, 0, _arg1, _arg2); _local3.endFill(); }; if (maskShape){ maskShape.width = _arg1; maskShape.height = _arg2; }; } } }//package mx.controls.listClasses
Section 117
//ListBaseFindPending (mx.controls.listClasses.ListBaseFindPending) package mx.controls.listClasses { import mx.collections.*; public class ListBaseFindPending { public var currentIndex:int; public var stopIndex:int; public var startingBookmark:CursorBookmark; public var searchString:String; public var offset:int; public var bookmark:CursorBookmark; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListBaseFindPending(_arg1:String, _arg2:CursorBookmark, _arg3:CursorBookmark, _arg4:int, _arg5:int, _arg6:int){ this.searchString = _arg1; this.startingBookmark = _arg2; this.bookmark = _arg3; this.offset = _arg4; this.currentIndex = _arg5; this.stopIndex = _arg6; } } }//package mx.controls.listClasses
Section 118
//ListBaseSeekPending (mx.controls.listClasses.ListBaseSeekPending) package mx.controls.listClasses { import mx.collections.*; public class ListBaseSeekPending { public var offset:int; public var bookmark:CursorBookmark; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListBaseSeekPending(_arg1:CursorBookmark, _arg2:int){ this.bookmark = _arg1; this.offset = _arg2; } } }//package mx.controls.listClasses
Section 119
//ListBaseSelectionData (mx.controls.listClasses.ListBaseSelectionData) package mx.controls.listClasses { public class ListBaseSelectionData { public var data:Object; mx_internal var prevSelectionData:ListBaseSelectionData; mx_internal var nextSelectionData:ListBaseSelectionData; public var approximate:Boolean; public var index:int; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListBaseSelectionData(_arg1:Object, _arg2:int, _arg3:Boolean){ this.data = _arg1; this.index = _arg2; this.approximate = _arg3; } } }//package mx.controls.listClasses
Section 120
//ListBaseSelectionDataPending (mx.controls.listClasses.ListBaseSelectionDataPending) package mx.controls.listClasses { import mx.collections.*; public class ListBaseSelectionDataPending { public var items:Array; public var index:int; public var bookmark:CursorBookmark; public var offset:int; public var useFind:Boolean; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListBaseSelectionDataPending(_arg1:Boolean, _arg2:int, _arg3:Array, _arg4:CursorBookmark, _arg5:int){ this.useFind = _arg1; this.index = _arg2; this.items = _arg3; this.bookmark = _arg4; this.offset = _arg5; } } }//package mx.controls.listClasses
Section 121
//ListBaseSelectionPending (mx.controls.listClasses.ListBaseSelectionPending) package mx.controls.listClasses { import mx.collections.*; public class ListBaseSelectionPending { public var offset:int; public var stopData:Object; public var index:int; public var placeHolder:CursorBookmark; public var bookmark:CursorBookmark; public var incrementing:Boolean; public var transition:Boolean; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListBaseSelectionPending(_arg1:Boolean, _arg2:int, _arg3:Object, _arg4:Boolean, _arg5:CursorBookmark, _arg6:CursorBookmark, _arg7:int){ this.incrementing = _arg1; this.index = _arg2; this.stopData = _arg3; this.transition = _arg4; this.placeHolder = _arg5; this.bookmark = _arg6; this.offset = _arg7; } } }//package mx.controls.listClasses
Section 122
//ListData (mx.controls.listClasses.ListData) package mx.controls.listClasses { import mx.core.*; public class ListData extends BaseListData { public var icon:Class; public var labelField:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListData(_arg1:String, _arg2:Class, _arg3:String, _arg4:String, _arg5:IUIComponent, _arg6:int=0, _arg7:int=0){ super(_arg1, _arg4, _arg5, _arg6, _arg7); this.icon = _arg2; this.labelField = _arg3; } } }//package mx.controls.listClasses
Section 123
//ListItemDragProxy (mx.controls.listClasses.ListItemDragProxy) package mx.controls.listClasses { import flash.display.*; import mx.core.*; public class ListItemDragProxy extends UIComponent { mx_internal static const VERSION:String = "3.2.0.3794"; override protected function createChildren():void{ var _local4:IListItemRenderer; var _local5:IListItemRenderer; var _local6:ListBaseContentHolder; var _local7:BaseListData; super.createChildren(); var _local1:Array = ListBase(owner).selectedItems; var _local2:int = _local1.length; var _local3:int; while (_local3 < _local2) { _local4 = ListBase(owner).itemToItemRenderer(_local1[_local3]); if (!_local4){ } else { _local5 = ListBase(owner).createItemRenderer(_local1[_local3]); _local5.styleName = ListBase(owner); if ((_local5 is IDropInListItemRenderer)){ _local7 = IDropInListItemRenderer(_local4).listData; IDropInListItemRenderer(_local5).listData = (_local1[_local3]) ? _local7 : null; }; _local5.data = _local1[_local3]; addChild(DisplayObject(_local5)); _local6 = (_local4.parent as ListBaseContentHolder); _local5.setActualSize(_local4.width, _local4.height); _local5.x = (_local4.x + _local6.leftOffset); _local5.y = (_local4.y + _local6.topOffset); measuredHeight = Math.max(measuredHeight, (_local5.y + _local5.height)); measuredWidth = Math.max(measuredWidth, (_local5.x + _local5.width)); _local5.visible = true; }; _local3++; }; invalidateDisplayList(); } override protected function measure():void{ var _local3:IListItemRenderer; super.measure(); var _local1:Number = 0; var _local2:Number = 0; var _local4:int; while (_local4 < numChildren) { _local3 = (getChildAt(_local4) as IListItemRenderer); if (_local3){ _local1 = Math.max(_local1, (_local3.x + _local3.width)); _local2 = Math.max(_local2, (_local3.y + _local3.height)); }; _local4++; }; measuredWidth = (measuredMinWidth = _local1); measuredHeight = (measuredMinHeight = _local2); } } }//package mx.controls.listClasses
Section 124
//ListRowInfo (mx.controls.listClasses.ListRowInfo) package mx.controls.listClasses { public class ListRowInfo { public var itemOldY:Number; public var height:Number; public var uid:String; public var data:Object; public var oldY:Number; public var y:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public function ListRowInfo(_arg1:Number, _arg2:Number, _arg3:String, _arg4:Object=null){ this.y = _arg1; this.height = _arg2; this.uid = _arg3; this.data = _arg4; } } }//package mx.controls.listClasses
Section 125
//TileBase (mx.controls.listClasses.TileBase) package mx.controls.listClasses { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.scrollClasses.*; import flash.utils.*; import mx.collections.*; import flash.ui.*; import mx.skins.halo.*; import mx.collections.errors.*; public class TileBase extends ListBase { private var _direction:String;// = "horizontal" private var lastRowCount:int;// = 0 private var _maxRows:int;// = 0 private var bSelectItem:Boolean;// = false private var bCtrlKey:Boolean;// = false private var lastColumnCount:int;// = 0 private var lastKey:uint;// = 0 private var _maxColumns:int;// = 0 protected var measuringObjects:Dictionary; private var bShiftKey:Boolean;// = false mx_internal static const VERSION:String = "3.2.0.3794"; public function TileBase(){ itemRenderer = new ClassFactory(TileListItemRenderer); setRowHeight(50); setColumnWidth(50); } override public function measureWidthOfItems(_arg1:int=-1, _arg2:int=0):Number{ var _local3:IListItemRenderer; var _local4:Number; var _local5:ListData; var _local7:Object; var _local8:Object; var _local9:IFactory; var _local6:Boolean; if (((collection) && (collection.length))){ _local7 = iterator.current; _local8 = ((_local7 is ItemWrapper)) ? _local7.data : _local7; if (!measuringObjects){ measuringObjects = new Dictionary(true); }; _local9 = getItemRendererFactory(_local8); _local3 = measuringObjects[_local9]; if (!_local3){ _local3 = getMeasuringRenderer(_local8); _local6 = true; }; _local5 = ListData(makeListData(_local8, uid, 0, 0)); if ((_local3 is IDropInListItemRenderer)){ IDropInListItemRenderer(_local3).listData = (_local8) ? _local5 : null; }; _local3.data = _local8; UIComponentGlobals.layoutManager.validateClient(_local3, true); _local4 = _local3.getExplicitOrMeasuredWidth(); if (_local6){ _local3.setActualSize(_local4, _local3.getExplicitOrMeasuredHeight()); _local6 = false; }; }; if (((isNaN(_local4)) || ((_local4 == 0)))){ _local4 = 50; }; return ((_local4 * _arg2)); } override public function indexToItemRenderer(_arg1:int):IListItemRenderer{ var _local2:int = indexToRow(_arg1); if ((((_local2 < verticalScrollPosition)) || ((_local2 >= (verticalScrollPosition + rowCount))))){ return (null); }; var _local3:int = indexToColumn(_arg1); if ((((_local3 < horizontalScrollPosition)) || ((_local3 >= (horizontalScrollPosition + columnCount))))){ return (null); }; return (listItems[(_local2 - verticalScrollPosition)][(_local3 - horizontalScrollPosition)]); } public function set direction(_arg1:String):void{ _direction = _arg1; itemsSizeChanged = true; offscreenExtraRowsOrColumnsChanged = true; if (listContent){ if (direction == TileBaseDirection.HORIZONTAL){ listContent.leftOffset = (listContent.rightOffset = 0); offscreenExtraColumnsLeft = (offscreenExtraColumnsRight = 0); } else { listContent.topOffset = (listContent.bottomOffset = 0); offscreenExtraRowsTop = (offscreenExtraRowsBottom = 0); }; }; invalidateProperties(); invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("directionChanged")); } public function get direction():String{ return (_direction); } override mx_internal function reconstructDataFromListItems():Array{ var _local2:int; var _local3:int; var _local4:IListItemRenderer; var _local5:Object; if ((((direction == TileBaseDirection.HORIZONTAL)) || (!(listItems)))){ return (super.reconstructDataFromListItems()); }; var _local1:Array = []; if (listItems.length > 0){ _local2 = 0; while (_local2 < listItems[0].length) { _local3 = 0; while (_local3 < listItems.length) { if (((listItems[_local3]) && ((listItems[_local3].length > _local2)))){ _local4 = (listItems[_local3][_local2] as IListItemRenderer); if (_local4){ _local5 = _local4.data; _local1.push(_local5); }; }; _local3++; }; _local2++; }; }; return (_local1); } override protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ var _local4:Number; var _local5:Number; var _local6:IListItemRenderer; var _local7:String; var _local8:int; var _local9:Boolean; var _local10:int; var _local11:int; var _local16:ScrollEvent; var _local12:int = ((listItems[0].length - offscreenExtraColumnsLeft) - offscreenExtraColumnsRight); var _local13:int = ((((maxColumns > 0)) && (!((direction == TileBaseDirection.VERTICAL))))) ? maxColumns : _local12; var _local14:int = (displayingPartialRow()) ? 1 : 0; var _local15:int = (displayingPartialColumn()) ? 1 : 0; if (!collection){ return; }; showCaret = true; switch (_arg1){ case Keyboard.LEFT: if (caretIndex > 0){ if (direction == TileBaseDirection.HORIZONTAL){ caretIndex--; } else { _local10 = indexToRow(caretIndex); _local11 = indexToColumn(caretIndex); if (_local11 == 0){ _local10--; _local11 = lastColumnInRow(_local10); } else { _local11--; }; caretIndex = Math.min(indicesToIndex(_local10, _local11), (collection.length - 1)); }; _local10 = indexToRow(caretIndex); _local11 = indexToColumn(caretIndex); if (direction == TileBaseDirection.HORIZONTAL){ if (_local10 < verticalScrollPosition){ _local4 = (verticalScrollPosition - 1); } else { if (_local10 > ((verticalScrollPosition + rowCount) - _local14)){ _local4 = maxVerticalScrollPosition; }; }; } else { if (_local11 < horizontalScrollPosition){ _local5 = (horizontalScrollPosition - 1); } else { if (_local11 > (((horizontalScrollPosition + _local12) - 1) - _local15)){ _local5 = maxHorizontalScrollPosition; }; }; }; }; break; case Keyboard.RIGHT: if (caretIndex < (collection.length - 1)){ if ((((direction == TileBaseDirection.HORIZONTAL)) || ((caretIndex == -1)))){ caretIndex++; } else { _local10 = indexToRow(caretIndex); _local11 = indexToColumn(caretIndex); if (_local11 == lastColumnInRow(_local10)){ _local11 = 0; _local10++; } else { _local11++; }; caretIndex = Math.min(indicesToIndex(_local10, _local11), (collection.length - 1)); }; _local10 = indexToRow(caretIndex); _local11 = indexToColumn(caretIndex); if (direction == TileBaseDirection.HORIZONTAL){ if ((((_local10 >= ((verticalScrollPosition + rowCount) - _local14))) && ((verticalScrollPosition < maxVerticalScrollPosition)))){ _local4 = (verticalScrollPosition + 1); }; if (_local10 < verticalScrollPosition){ _local4 = _local10; }; } else { if ((((_local11 >= ((horizontalScrollPosition + _local12) - _local15))) && ((horizontalScrollPosition < maxHorizontalScrollPosition)))){ _local5 = (horizontalScrollPosition + 1); }; if (_local11 < horizontalScrollPosition){ _local5 = _local11; }; }; }; break; case Keyboard.PAGE_UP: if (caretIndex < 0){ caretIndex = scrollPositionToIndex(horizontalScrollPosition, verticalScrollPosition); }; _local10 = indexToRow(caretIndex); _local11 = indexToColumn(caretIndex); if (_local11 > 0){ _local11 = Math.max((horizontalScrollPosition - (_local12 - _local15)), 0); _local5 = _local11; caretIndex = indicesToIndex(_local10, _local11); }; break; case Keyboard.PAGE_DOWN: if (caretIndex < 0){ caretIndex = scrollPositionToIndex(horizontalScrollPosition, verticalScrollPosition); }; _local10 = indexToRow(caretIndex); _local11 = indexToColumn(caretIndex); if (_local11 < maxHorizontalScrollPosition){ _local11 = Math.min(((horizontalScrollPosition + _local12) - _local15), indexToColumn((collection.length - 1))); if (_local11 > horizontalScrollPosition){ _local5 = Math.min(_local11, maxHorizontalScrollPosition); }; caretIndex = indicesToIndex(_local10, _local11); }; break; case Keyboard.HOME: if (collection.length){ caretIndex = 0; _local5 = 0; _local4 = 0; }; break; case Keyboard.END: if (caretIndex < collection.length){ caretIndex = (collection.length - 1); _local5 = maxHorizontalScrollPosition; _local4 = maxVerticalScrollPosition; }; break; }; if (!isNaN(_local4)){ if (_local4 != verticalScrollPosition){ _local16 = new ScrollEvent(ScrollEvent.SCROLL); _local16.detail = ScrollEventDetail.THUMB_POSITION; _local16.direction = ScrollEventDirection.VERTICAL; _local16.delta = (_local4 - verticalScrollPosition); _local16.position = _local4; verticalScrollPosition = _local4; dispatchEvent(_local16); }; }; if (iteratorValid){ if (!isNaN(_local5)){ if (_local5 != horizontalScrollPosition){ _local16 = new ScrollEvent(ScrollEvent.SCROLL); _local16.detail = ScrollEventDetail.THUMB_POSITION; _local16.direction = ScrollEventDirection.HORIZONTAL; _local16.delta = (_local5 - horizontalScrollPosition); _local16.position = _local5; horizontalScrollPosition = _local5; dispatchEvent(_local16); }; }; }; if (!iteratorValid){ keySelectionPending = true; return; }; bShiftKey = _arg2; bCtrlKey = _arg3; lastKey = _arg1; finishKeySelection(); } override mx_internal function removeClipMask():void{ } override protected function commitProperties():void{ super.commitProperties(); if (itemsNeedMeasurement){ itemsNeedMeasurement = false; if (isNaN(explicitRowHeight)){ setRowHeight(measureHeightOfItems(0, 1)); }; if (isNaN(explicitColumnWidth)){ setColumnWidth(measureWidthOfItems(0, 1)); }; }; } override public function scrollToIndex(_arg1:int):Boolean{ var newVPos:int; var newHPos:int; var index = _arg1; var firstIndex:int = scrollPositionToIndex(horizontalScrollPosition, verticalScrollPosition); var numItemsVisible:int = (((listItems.length - offscreenExtraRowsTop) - offscreenExtraRowsBottom) * ((listItems[0].length - offscreenExtraColumnsLeft) - offscreenExtraColumnsRight)); if ((((index >= (firstIndex + numItemsVisible))) || ((index < firstIndex)))){ newVPos = Math.min(indexToRow(index), maxVerticalScrollPosition); newHPos = Math.min(indexToColumn(index), maxHorizontalScrollPosition); try { iterator.seek(CursorBookmark.FIRST, scrollPositionToIndex(horizontalScrollPosition, verticalScrollPosition)); super.horizontalScrollPosition = newHPos; super.verticalScrollPosition = newVPos; } catch(e:ItemPendingError) { }; return (true); }; return (false); } override public function createItemRenderer(_arg1:Object):IListItemRenderer{ var _local2:IFactory; var _local3:IListItemRenderer; var _local4:Dictionary; var _local5:*; _local2 = getItemRendererFactory(_arg1); if (!_local2){ if (!_arg1){ _local2 = nullItemRenderer; }; if (!_local2){ _local2 = itemRenderer; }; }; if (_local2 == itemRenderer){ if (((freeItemRenderers) && (freeItemRenderers.length))){ _local3 = freeItemRenderers.pop(); delete freeItemRenderersByFactory[_local2][_local3]; }; } else { if (freeItemRenderersByFactory){ _local4 = freeItemRenderersByFactory[_local2]; if (_local4){ for (_local5 in _local4) { _local3 = IListItemRenderer(_local5); delete _local4[_local5]; break; }; }; }; }; if (!_local3){ _local3 = _local2.newInstance(); _local3.styleName = this; factoryMap[_local3] = _local2; }; _local3.owner = this; return (_local3); } protected function drawTileBackgrounds():void{ var _local2:Array; var _local5:int; var _local6:int; var _local7:Number; var _local8:Number; var _local9:IListItemRenderer; var _local10:int; var _local11:DisplayObject; var _local1:Sprite = Sprite(listContent.getChildByName("tileBGs")); if (!_local1){ _local1 = new FlexSprite(); _local1.mouseEnabled = false; _local1.name = "tileBGs"; listContent.addChildAt(_local1, 0); }; _local2 = getStyle("alternatingItemColors"); if (((!(_local2)) || ((_local2.length == 0)))){ while (_local1.numChildren > _local5) { _local1.removeChildAt((_local1.numChildren - 1)); }; return; }; StyleManager.getColorNames(_local2); var _local3:int; var _local4:int; while (_local4 < rowCount) { _local6 = 0; while (_local6 < columnCount) { _local7 = ((_local4)<(rowCount - 1)) ? rowHeight : Math.min(rowHeight, (listContent.height - ((rowCount - 1) * rowHeight))); _local8 = ((_local6)<(columnCount - 1)) ? columnWidth : Math.min(columnWidth, (listContent.width - ((columnCount - 1) * columnWidth))); _local9 = (listItems[_local4]) ? listItems[_local4][_local6] : null; _local10 = (((verticalScrollPosition + _local4) * columnCount) + (horizontalScrollPosition + _local6)); _local11 = drawTileBackground(_local1, _local4, _local6, _local8, _local7, _local2[(_local10 % _local2.length)], _local9); _local11.y = (_local4 * rowHeight); _local11.x = (_local6 * columnWidth); _local6++; }; _local4++; }; _local5 = (rowCount * columnCount); while (_local1.numChildren > _local5) { _local1.removeChildAt((_local1.numChildren - 1)); }; } private function displayingPartialRow():Boolean{ var _local2:IListItemRenderer; var _local1:Array = listItems[((listItems.length - 1) - offscreenExtraRowsBottom)]; if (((_local1) && ((_local1.length > 0)))){ _local2 = _local1[0]; if (((!(_local2)) || (((_local2.y + _local2.height) > (listContent.heightExcludingOffsets - listContent.topOffset))))){ return (true); }; }; return (false); } override protected function createChildren():void{ super.createChildren(); listContent.mask = maskShape; } override mx_internal function addClipMask(_arg1:Boolean):void{ } override protected function finishKeySelection():void{ var _local1:String; var _local3:int; var _local4:int; var _local5:IListItemRenderer; var _local6:ListEvent; var _local2:Boolean; if (caretIndex < 0){ return; }; _local3 = indexToRow(caretIndex); _local4 = indexToColumn(caretIndex); _local5 = listItems[((_local3 - verticalScrollPosition) + offscreenExtraRowsTop)][((_local4 - horizontalScrollPosition) + offscreenExtraColumnsLeft)]; if (!bCtrlKey){ selectItem(_local5, bShiftKey, bCtrlKey); _local2 = true; }; if (bCtrlKey){ _local1 = itemToUID(_local5.data); drawItem(visibleData[_local1], !((selectedData[_local1] == null)), false, true); }; if (_local2){ _local6 = new ListEvent(ListEvent.CHANGE); _local6.itemRenderer = _local5; _local6.rowIndex = _local3; _local6.columnIndex = _local4; dispatchEvent(_local6); }; } override protected function scrollPositionToIndex(_arg1:int, _arg2:int):int{ var _local3:int; if (iterator){ if (direction == TileBaseDirection.HORIZONTAL){ _local3 = ((_arg2 * columnCount) + _arg1); } else { _local3 = ((_arg1 * rowCount) + _arg2); }; return (_local3); }; return (-1); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:IListItemRenderer; var _local3:int; var _local4:int; if (!iteratorValid){ return; }; if (!collection){ return; }; switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: moveSelectionVertically(_arg1.keyCode, _arg1.shiftKey, _arg1.ctrlKey); _arg1.stopPropagation(); break; case Keyboard.LEFT: case Keyboard.RIGHT: moveSelectionHorizontally(_arg1.keyCode, _arg1.shiftKey, _arg1.ctrlKey); _arg1.stopPropagation(); break; case Keyboard.END: case Keyboard.HOME: case Keyboard.PAGE_UP: case Keyboard.PAGE_DOWN: if (direction == TileBaseDirection.VERTICAL){ moveSelectionHorizontally(_arg1.keyCode, _arg1.shiftKey, _arg1.ctrlKey); } else { moveSelectionVertically(_arg1.keyCode, _arg1.shiftKey, _arg1.ctrlKey); }; _arg1.stopPropagation(); break; case Keyboard.SPACE: if (caretIndex < 0){ break; }; _local3 = indexToRow(caretIndex); _local4 = indexToColumn(caretIndex); _local2 = listItems[(_local3 - verticalScrollPosition)][(_local4 - horizontalScrollPosition)]; selectItem(_local2, _arg1.shiftKey, _arg1.ctrlKey); break; default: if (findKey(_arg1.keyCode)){ _arg1.stopPropagation(); }; }; } override protected function indexToColumn(_arg1:int):int{ var _local3:int; if (direction == TileBaseDirection.VERTICAL){ _local3 = ((maxRows > 0)) ? maxRows : rowCount; return (Math.floor((_arg1 / _local3))); }; var _local2:int = ((maxColumns > 0)) ? maxColumns : columnCount; return ((_arg1 % _local2)); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ if ((((explicitColumnCount > 0)) && (isNaN(explicitColumnWidth)))){ setColumnWidth(Math.floor((((width - viewMetrics.left) - viewMetrics.right) / explicitColumnCount))); }; if ((((explicitRowCount > 0)) && (isNaN(explicitRowHeight)))){ setRowHeight(Math.floor((((height - viewMetrics.top) - viewMetrics.bottom) / explicitRowCount))); }; super.updateDisplayList(_arg1, _arg2); drawTileBackgrounds(); } override protected function scrollHorizontally(_arg1:int, _arg2:int, _arg3:Boolean):void{ var _local4:int; var _local5:int; var _local6:Number; var _local7:String; var _local8:int; var _local9:Number; var _local14:int; var _local15:int; var _local16:int; var _local20:int; var _local21:int; var _local22:IListItemRenderer; var _local23:int; var _local24:int; var _local25:Point; var _local26:int; var _local27:IListItemRenderer; var _local28:int; var _local29:int; if (_arg2 == 0){ return; }; removeClipMask(); var _local10:int = offscreenExtraColumnsRight; var _local11:int = offscreenExtraColumnsLeft; var _local12:int = (offscreenExtraColumns / 2); var _local13:int = (offscreenExtraColumns / 2); if (_arg3){ offscreenExtraColumnsLeft = Math.min(_local12, (offscreenExtraColumnsLeft + _arg2)); _local14 = (_arg2 - (offscreenExtraColumnsLeft - _local11)); _local15 = _local14; } else { _local20 = ((((((((((offscreenExtraColumnsRight == 0)) && (listItems[0]))) && ((listItems[0].length > 0)))) && (listItems[0][(listItems[0].length - 1)]))) && (((listItems[0][(listItems[0].length - 1)].x + columnWidth) < (listContent.widthExcludingOffsets - listContent.leftOffset))))) ? 1 : 0; offscreenExtraColumnsLeft = Math.min(_local12, _arg1); offscreenExtraColumnsRight = Math.min(((offscreenExtraColumnsRight + _arg2) - _local20), _local13); _local14 = (_arg2 - (_local11 - offscreenExtraColumnsLeft)); _local16 = (((offscreenExtraColumnsLeft - _local11) + _local20) + (offscreenExtraColumnsRight - _local10)); _local15 = ((_arg2 - (offscreenExtraColumnsRight - _local10)) - _local20); }; var _local17:int = listItems[0].length; var _local18:int; while (_local18 < _local15) { _local21 = 0; while (_local21 < rowCount) { _local22 = (_arg3) ? listItems[_local21][_local18] : listItems[_local21][((_local17 - _local18) - 1)]; if (_local22){ delete visibleData[rowMap[_local22.name].uid]; removeIndicators(rowMap[_local22.name].uid); addToFreeItemRenderers(_local22); delete rowMap[_local22.name]; if (_arg3){ listItems[_local21][_local18] = null; } else { listItems[_local21][((_local17 - _local18) - 1)] = null; }; }; _local21++; }; _local18++; }; if (_arg3){ _local9 = (_local14 * columnWidth); _local6 = 0; _local18 = _local14; while (_local18 < _local17) { _local21 = 0; while (_local21 < rowCount) { _local27 = listItems[_local21][_local18]; if (_local27){ _local22 = _local27; _local27.x = (_local22.x - _local9); _local7 = rowMap[_local22.name].uid; listItems[_local21][(_local18 - _local14)] = _local22; rowMap[_local22.name].columnIndex = (rowMap[_local22.name].columnIndex - _local14); moveIndicatorsHorizontally(_local7, -(_local9)); } else { listItems[_local21][(_local18 - _local14)] = null; }; _local21++; }; _local6 = (_local6 + columnWidth); _local18++; }; _local18 = 0; while (_local18 < _local14) { _local21 = 0; while (_local21 < rowCount) { listItems[_local21][((_local17 - _local18) - 1)] = null; _local21++; }; _local18++; }; _local8 = indicesToIndex(verticalScrollPosition, (((horizontalScrollPosition + _local17) - offscreenExtraColumnsLeft) - _local14)); seekPositionSafely(_local8); _local23 = (_arg2 + (_local13 - _local10)); _local24 = (listItems.length) ? (listItems[0].length - _local14) : 0; allowRendererStealingDuringLayout = false; _local25 = makeRowsAndColumns(_local6, 0, listContent.width, listContent.height, (_local17 - _local14), 0, true, _local23); allowRendererStealingDuringLayout = true; _local26 = (listItems[0].length - (_local24 + _local25.x)); if (_local26){ _local18 = 0; while (_local18 < listItems.length) { _local21 = 0; while (_local21 < _local26) { listItems[_local18].pop(); _local21++; }; _local18++; }; }; _local8 = indicesToIndex(verticalScrollPosition, (horizontalScrollPosition - offscreenExtraColumnsLeft)); seekPositionSafely(_local8); offscreenExtraColumnsRight = Math.max(0, (_local13 - ((_local25.x < _arg2)) ? (_local23 - _local25.x) : 0)); } else { if (_local16 < 0){ _local29 = (listItems[0].length + _local16); _local21 = 0; while (_local21 < rowCount) { while (listItems[_local21].length > _local29) { listItems[_local21].pop(); }; _local21++; }; }; _local9 = (_local14 * columnWidth); if (_local14){ _local6 = _local9; }; _local28 = (_local17 + _local16); _local18 = ((_local28 - _local14) - 1); while (_local18 >= 0) { _local21 = 0; while (_local21 < rowCount) { _local22 = listItems[_local21][_local18]; if (_local22){ _local22.x = (_local22.x + _local9); _local7 = rowMap[_local22.name].uid; listItems[_local21][(_local18 + _local14)] = _local22; rowMap[_local22.name].columnIndex = (rowMap[_local22.name].columnIndex + _local14); moveIndicatorsHorizontally(_local7, _local9); } else { listItems[_local21][(_local18 + _local14)] = null; }; _local21++; }; _local18--; }; _local18 = 0; while (_local18 < _local14) { _local21 = 0; while (_local21 < rowCount) { listItems[_local21][_local18] = null; _local21++; }; _local18++; }; _local8 = indicesToIndex(verticalScrollPosition, (horizontalScrollPosition - offscreenExtraColumnsLeft)); seekPositionSafely(_local8); allowRendererStealingDuringLayout = false; makeRowsAndColumns(0, 0, _local6, listContent.height, 0, 0, true, _local14); allowRendererStealingDuringLayout = true; seekPositionSafely(_local8); }; var _local19:Number = listContent.widthExcludingOffsets; listContent.leftOffset = (-(columnWidth) * offscreenExtraColumnsLeft); listContent.rightOffset = (offscreenExtraColumnsRight) ? (((listItems[0][(listItems[0].length - 1)].x + listItems[0][(listItems[0].length - 1)].width) + listContent.leftOffset) - _local19) : 0; adjustListContent(); addClipMask(false); } override mx_internal function adjustOffscreenRowsAndColumns():void{ if (direction == TileBaseDirection.VERTICAL){ offscreenExtraRows = 0; offscreenExtraColumns = offscreenExtraRowsOrColumns; } else { offscreenExtraColumns = 0; offscreenExtraRows = offscreenExtraRowsOrColumns; }; } override protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ var _local4:Number; var _local5:Number; var _local6:IListItemRenderer; var _local7:String; var _local8:int; var _local9:Boolean; var _local11:int; var _local12:int; var _local17:ScrollEvent; var _local10:Boolean; var _local13:int = ((listItems.length - offscreenExtraRowsTop) - offscreenExtraRowsBottom); var _local14:int = ((((maxRows > 0)) && (!((direction == TileBaseDirection.HORIZONTAL))))) ? maxRows : _local13; var _local15:int = (displayingPartialRow()) ? 1 : 0; var _local16:int = (displayingPartialColumn()) ? 1 : 0; if (!collection){ return; }; showCaret = true; switch (_arg1){ case Keyboard.UP: if (caretIndex > 0){ if (direction == TileBaseDirection.VERTICAL){ caretIndex--; } else { _local11 = indexToRow(caretIndex); _local12 = indexToColumn(caretIndex); if (_local11 == 0){ _local12--; _local11 = lastRowInColumn(_local12); } else { _local11--; }; caretIndex = Math.min(indicesToIndex(_local11, _local12), (collection.length - 1)); }; _local11 = indexToRow(caretIndex); _local12 = indexToColumn(caretIndex); if (_local11 < verticalScrollPosition){ _local4 = (verticalScrollPosition - 1); }; if (_local11 > ((verticalScrollPosition + _local13) - _local15)){ _local4 = maxVerticalScrollPosition; }; if (_local12 < horizontalScrollPosition){ _local5 = (horizontalScrollPosition - 1); }; }; break; case Keyboard.DOWN: if (caretIndex < (collection.length - 1)){ if ((((direction == TileBaseDirection.VERTICAL)) || ((caretIndex == -1)))){ caretIndex++; } else { _local11 = indexToRow(caretIndex); _local12 = indexToColumn(caretIndex); if (_local11 == lastRowInColumn(_local12)){ _local11 = 0; _local12++; } else { _local11++; }; caretIndex = Math.min(indicesToIndex(_local11, _local12), (collection.length - 1)); }; _local11 = indexToRow(caretIndex); _local12 = indexToColumn(caretIndex); if ((((_local11 >= ((verticalScrollPosition + _local13) - _local15))) && ((verticalScrollPosition < maxVerticalScrollPosition)))){ _local4 = (verticalScrollPosition + 1); }; if (_local11 < verticalScrollPosition){ _local4 = _local11; }; if (_local12 > ((horizontalScrollPosition + columnCount) - 1)){ _local5 = (horizontalScrollPosition + 1); }; }; break; case Keyboard.PAGE_UP: if (caretIndex < 0){ caretIndex = scrollPositionToIndex(horizontalScrollPosition, verticalScrollPosition); }; _local11 = indexToRow(caretIndex); _local12 = indexToColumn(caretIndex); if (verticalScrollPosition > 0){ if (_local11 == verticalScrollPosition){ _local11 = Math.max((verticalScrollPosition - (_local13 - _local15)), 0); _local4 = _local11; } else { _local11 = verticalScrollPosition; }; caretIndex = indicesToIndex(_local11, _local12); break; }; case Keyboard.HOME: if (collection.length){ caretIndex = 0; _local4 = 0; _local5 = 0; }; break; case Keyboard.PAGE_DOWN: if (caretIndex < 0){ caretIndex = scrollPositionToIndex(horizontalScrollPosition, verticalScrollPosition); }; _local11 = indexToRow(caretIndex); _local12 = indexToColumn(caretIndex); if (_local11 < maxVerticalScrollPosition){ if (_local11 == (verticalScrollPosition + (_local13 - _local15))){ _local4 = Math.min(((verticalScrollPosition + _local13) - _local15), maxVerticalScrollPosition); _local11 = (verticalScrollPosition + _local13); } else { _local11 = Math.min(((verticalScrollPosition + _local13) - _local15), indexToRow((collection.length - 1))); if (_local11 == ((verticalScrollPosition + _local13) - _local15)){ _local4 = Math.min(((verticalScrollPosition + _local13) - _local15), maxVerticalScrollPosition); }; }; caretIndex = Math.min(indicesToIndex(_local11, _local12), (collection.length - 1)); break; }; case Keyboard.END: if (caretIndex < collection.length){ caretIndex = (collection.length - 1); _local4 = maxVerticalScrollPosition; _local5 = maxHorizontalScrollPosition; }; break; }; if (!isNaN(_local4)){ if (_local4 != verticalScrollPosition){ _local17 = new ScrollEvent(ScrollEvent.SCROLL); _local17.detail = ScrollEventDetail.THUMB_POSITION; _local17.direction = ScrollEventDirection.VERTICAL; _local17.delta = (_local4 - verticalScrollPosition); _local17.position = _local4; verticalScrollPosition = _local4; dispatchEvent(_local17); }; }; if (iteratorValid){ if (!isNaN(_local5)){ if (_local5 != horizontalScrollPosition){ _local17 = new ScrollEvent(ScrollEvent.SCROLL); _local17.detail = ScrollEventDetail.THUMB_POSITION; _local17.direction = ScrollEventDirection.HORIZONTAL; _local17.delta = (_local5 - horizontalScrollPosition); _local17.position = _local5; horizontalScrollPosition = _local5; dispatchEvent(_local17); }; }; }; if (!iteratorValid){ keySelectionPending = true; return; }; bShiftKey = _arg2; bCtrlKey = _arg3; lastKey = _arg1; finishKeySelection(); } override protected function scrollVertically(_arg1:int, _arg2:int, _arg3:Boolean):void{ var _local4:int; var _local5:int; var _local6:Number; var _local7:String; var _local8:int; var _local9:Number; var _local14:int; var _local15:int; var _local16:int; var _local21:int; var _local22:int; var _local23:IListItemRenderer; var _local24:int; var _local25:Point; var _local26:int; removeClipMask(); var _local10:int = offscreenExtraRowsBottom; var _local11:int = offscreenExtraRowsTop; var _local12:int = (offscreenExtraRows / 2); var _local13:int = (offscreenExtraRows / 2); if (_arg3){ offscreenExtraRowsTop = Math.min(_local12, (offscreenExtraRowsTop + _arg2)); _local14 = (_arg2 - (offscreenExtraRowsTop - _local11)); _local15 = _local14; } else { _local21 = ((((((((offscreenExtraRowsBottom == 0)) && (listItems.length))) && (listItems[(listItems.length - 1)][0]))) && (((listItems[(listItems.length - 1)][0].y + rowHeight) < (listContent.heightExcludingOffsets - listContent.topOffset))))) ? 1 : 0; offscreenExtraRowsTop = Math.min(_local12, _arg1); offscreenExtraRowsBottom = Math.min(((offscreenExtraRowsBottom + _arg2) - _local21), _local13); _local14 = (_arg2 - (_local11 - offscreenExtraRowsTop)); _local16 = (((offscreenExtraRowsTop - _local11) + _local21) + (offscreenExtraRowsBottom - _local10)); _local15 = ((_arg2 - (offscreenExtraRowsBottom - _local10)) - _local21); }; var _local17:int = listItems.length; var _local18:int; while (_local18 < _local15) { _local5 = (_arg3) ? listItems[_local18].length : listItems[((_local17 - _local18) - 1)].length; _local22 = 0; while ((((_local22 < columnCount)) && ((_local22 < _local5)))) { _local23 = (_arg3) ? listItems[_local18][_local22] : listItems[((_local17 - _local18) - 1)][_local22]; if (_local23){ delete visibleData[rowMap[_local23.name].uid]; removeIndicators(rowMap[_local23.name].uid); addToFreeItemRenderers(_local23); delete rowMap[_local23.name]; if (_arg3){ listItems[_local18][_local22] = null; } else { listItems[((_local17 - _local18) - 1)][_local22] = null; }; }; _local22++; }; _local18++; }; var _local19:int = listItems.length; if (_arg3){ _local9 = (_local14 * rowHeight); _local6 = 0; _local18 = _local14; while (_local18 < _local19) { _local5 = listItems[_local18].length; _local22 = 0; while ((((_local22 < columnCount)) && ((_local22 < _local5)))) { _local23 = listItems[_local18][_local22]; listItems[(_local18 - _local14)][_local22] = _local23; if (_local23){ _local23.y = (_local23.y - _local9); rowMap[_local23.name].rowIndex = (rowMap[_local23.name].rowIndex - _local14); moveIndicatorsVertically(rowMap[_local23.name].uid, -(_local9)); }; _local22++; }; if (_local5 < columnCount){ _local22 = _local5; while (_local22 < columnCount) { listItems[(_local18 - _local14)][_local22] = null; _local22++; }; }; rowInfo[(_local18 - _local14)] = rowInfo[_local18]; rowInfo[(_local18 - _local14)].y = (rowInfo[(_local18 - _local14)].y - _local9); _local6 = (rowInfo[(_local18 - _local14)].y + rowHeight); _local18++; }; listItems.splice(((_local19 - _local14) - 1), _local14); rowInfo.splice(((_local19 - _local14) - 1), _local14); _local8 = indicesToIndex((((verticalScrollPosition - offscreenExtraRowsTop) + _local19) - _local14), horizontalScrollPosition); seekPositionSafely(_local8); _local24 = (_arg2 + (_local13 - _local10)); _local25 = makeRowsAndColumns(0, _local6, listContent.width, (_local6 + (_arg2 * rowHeight)), 0, (_local19 - _local14), true, _local24); _local26 = (_local24 - _local25.y); while (_local26--) { listItems.pop(); rowInfo.pop(); }; _local8 = indicesToIndex((verticalScrollPosition - offscreenExtraRowsTop), horizontalScrollPosition); seekPositionSafely(_local8); offscreenExtraRowsBottom = Math.max(0, (_local13 - ((_local25.y < _arg2)) ? (_local24 - _local25.y) : 0)); } else { if (_local16 < 0){ listItems.splice((listItems.length + _local16), -(_local16)); rowInfo.splice((rowInfo.length + _local16), -(_local16)); } else { if (_local16 > 0){ _local18 = 0; while (_local18 < _local16) { listItems[(_local19 + _local18)] = []; _local18++; }; }; }; _local9 = (_local14 * rowHeight); _local6 = rowInfo[_local14].y; _local18 = ((listItems.length - 1) - _local14); while (_local18 >= 0) { _local5 = listItems[_local18].length; _local22 = 0; while ((((_local22 < columnCount)) && ((_local22 < _local5)))) { _local23 = listItems[_local18][_local22]; if (_local23){ _local23.y = (_local23.y + _local9); rowMap[_local23.name].rowIndex = (rowMap[_local23.name].rowIndex + _local14); _local7 = rowMap[_local23.name].uid; listItems[(_local18 + _local14)][_local22] = _local23; moveIndicatorsVertically(_local7, _local9); } else { listItems[(_local18 + _local14)][_local22] = null; }; _local22++; }; rowInfo[(_local18 + _local14)] = rowInfo[_local18]; rowInfo[(_local18 + _local14)].y = (rowInfo[(_local18 + _local14)].y + _local9); _local18--; }; _local18 = 0; while (_local18 < _local14) { _local22 = 0; while (_local22 < columnCount) { listItems[_local18][_local22] = null; _local22++; }; _local18++; }; _local8 = indicesToIndex((verticalScrollPosition - offscreenExtraRowsTop), horizontalScrollPosition); seekPositionSafely(_local8); allowRendererStealingDuringLayout = false; _local25 = makeRowsAndColumns(0, 0, listContent.width, _local6, 0, 0, true, _local14); allowRendererStealingDuringLayout = true; seekPositionSafely(_local8); }; var _local20:Number = listContent.heightExcludingOffsets; listContent.topOffset = (-(rowHeight) * offscreenExtraRowsTop); listContent.bottomOffset = (offscreenExtraRowsBottom) ? (((rowInfo[(rowInfo.length - 1)].y + rowHeight) + listContent.topOffset) - _local20) : 0; adjustListContent(); addClipMask(false); } override public function showDropFeedback(_arg1:DragEvent):void{ var _local7:Class; var _local8:EdgeMetrics; if (!dropIndicator){ _local7 = getStyle("dropIndicatorSkin"); if (!_local7){ _local7 = ListDropIndicator; }; dropIndicator = IFlexDisplayObject(new (_local7)); _local8 = viewMetrics; drawFocus(true); dropIndicator.x = 2; if (direction == TileBaseDirection.HORIZONTAL){ dropIndicator.setActualSize((rowHeight - 4), 4); DisplayObject(dropIndicator).rotation = 90; } else { dropIndicator.setActualSize((columnWidth - 4), 4); }; dropIndicator.visible = true; listContent.addChild(DisplayObject(dropIndicator)); if (collection){ dragScrollingInterval = setInterval(dragScroll, 15); }; }; var _local2:int = calculateDropIndex(_arg1); var _local3:int = indexToRow(_local2); var _local4:int = indexToColumn(_local2); _local3 = (_local3 - (verticalScrollPosition - offscreenExtraRowsTop)); _local4 = (_local4 - (horizontalScrollPosition - offscreenExtraColumnsLeft)); var _local5:Number = listItems.length; if (_local3 >= _local5){ _local3 = (_local5 - 1); }; var _local6:Number = (_local5) ? listItems[0].length : 0; if (_local4 > _local6){ _local4 = _local6; }; dropIndicator.x = (((((_local6) && (listItems[_local3].length))) && (listItems[_local3][_local4]))) ? listItems[_local3][_local4].x : (_local4 * columnWidth); dropIndicator.y = (((((_local5) && (listItems[_local3].length))) && (listItems[_local3][0]))) ? listItems[_local3][0].y : (_local3 * rowHeight); } public function set maxColumns(_arg1:int):void{ if (_maxColumns != _arg1){ _maxColumns = _arg1; invalidateSize(); invalidateDisplayList(); }; } override protected function configureScrollBars():void{ var _local5:int; var _local6:int; var _local7:int; var _local8:int; var _local9:int; var _local10:int; var _local11:int; var _local12:int; var _local1:int = listItems.length; if (_local1 == 0){ return; }; var _local2:int = listItems[0].length; if (_local2 == 0){ return; }; if ((((_local1 > 1)) && (((((_local1 - offscreenExtraRowsTop) - offscreenExtraRowsBottom) * rowHeight) > listContent.heightExcludingOffsets)))){ _local1--; }; _local1 = (_local1 - (offscreenExtraRowsTop + offscreenExtraRowsBottom)); if ((((_local2 > 1)) && (((((_local2 - offscreenExtraColumnsLeft) - offscreenExtraColumnsRight) * columnWidth) > listContent.widthExcludingOffsets)))){ _local2--; }; _local2 = (_local2 - (offscreenExtraColumnsLeft + offscreenExtraColumnsRight)); var _local3:Object = horizontalScrollBar; var _local4:Object = verticalScrollBar; if (direction == TileBaseDirection.VERTICAL){ if (((iteratorValid) && ((horizontalScrollPosition > 0)))){ _local8 = 0; while ((((_local2 > 0)) && ((listItems[0][((_local2 + offscreenExtraColumnsLeft) - 1)] == null)))) { _local2--; _local8++; }; _local9 = Math.floor((listContent.widthExcludingOffsets / columnWidth)); _local10 = Math.max(0, (_local9 - (_local2 + _local8))); if (((_local8) || (_local10))){ _local11 = 0; while (_local11 < listItems.length) { while (listItems[_local11].length > (_local2 + offscreenExtraColumnsLeft)) { (listItems[_local11] as Array).pop(); }; _local11++; }; if (!runningDataEffect){ horizontalScrollPosition = Math.max(0, (horizontalScrollPosition - (_local8 + _local10))); _local7 = scrollPositionToIndex(Math.max(0, (horizontalScrollPosition - offscreenExtraColumnsLeft)), verticalScrollPosition); seekPositionSafely(_local7); updateList(); }; return; }; }; if (!iteratorValid){ _local1 = Math.floor((listContent.heightExcludingOffsets / rowHeight)); }; _local5 = ((maxRows > 0)) ? maxRows : _local1; _local6 = (collection) ? Math.ceil((collection.length / _local5)) : _local2; } else { if (((iteratorValid) && ((verticalScrollPosition > 0)))){ _local12 = 0; while ((((_local1 > 0)) && ((((listItems[((_local1 + offscreenExtraRowsTop) - 1)] == null)) || ((listItems[((_local1 + offscreenExtraRowsTop) - 1)][0] == null)))))) { _local1--; _local12++; }; if (_local12){ while (listItems.length > (_local1 + offscreenExtraRowsTop)) { listItems.pop(); rowInfo.pop(); }; if (!runningDataEffect){ verticalScrollPosition = Math.max(0, (verticalScrollPosition - _local12)); _local7 = scrollPositionToIndex(horizontalScrollPosition, Math.max(0, (verticalScrollPosition - offscreenExtraRowsTop))); seekPositionSafely(_local7); updateList(); }; return; }; }; if (!iteratorValid){ _local2 = Math.floor((listContent.widthExcludingOffsets / columnWidth)); }; _local6 = ((maxColumns > 0)) ? maxColumns : _local2; _local5 = (collection) ? Math.ceil((collection.length / _local6)) : _local1; }; maxHorizontalScrollPosition = Math.max(0, (_local6 - _local2)); maxVerticalScrollPosition = Math.max(0, (_local5 - _local1)); setScrollBarProperties(_local6, _local2, _local5, _local1); } override protected function indexToRow(_arg1:int):int{ var _local3:int; if (direction == TileBaseDirection.VERTICAL){ _local3 = ((maxRows > 0)) ? maxRows : rowCount; return ((_arg1 % _local3)); }; var _local2:int = ((maxColumns > 0)) ? maxColumns : columnCount; return (Math.floor((_arg1 / _local2))); } private function displayingPartialColumn():Boolean{ var _local1:IListItemRenderer; if (((listItems[0]) && ((listItems[0].length > 0)))){ _local1 = listItems[0][((listItems[0].length - 1) - offscreenExtraColumnsRight)]; if (((_local1) && (((_local1.x + _local1.width) > (listContent.widthExcludingOffsets - listContent.leftOffset))))){ return (true); }; }; return (false); } override protected function scrollHandler(_arg1:Event):void{ var scrollBar:ScrollBar; var pos:Number; var delta:int; var startIndex:int; var o:EdgeMetrics; var bookmark:CursorBookmark; var event = _arg1; if ((event is ScrollEvent)){ if (((!(liveScrolling)) && ((ScrollEvent(event).detail == ScrollEventDetail.THUMB_TRACK)))){ return; }; scrollBar = ScrollBar(event.target); pos = scrollBar.scrollPosition; if (scrollBar == verticalScrollBar){ delta = (pos - verticalScrollPosition); super.scrollHandler(event); if ((((Math.abs(delta) >= listItems.length)) || (!(iteratorValid)))){ startIndex = indicesToIndex(pos, horizontalScrollPosition); try { iterator.seek(CursorBookmark.FIRST, startIndex); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, startIndex); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; bookmark = iterator.bookmark; clearIndicators(); clearVisibleData(); makeRowsAndColumns(0, 0, listContent.width, listContent.height, 0, 0); iterator.seek(bookmark, 0); drawRowBackgrounds(); } else { if (delta != 0){ scrollVertically(pos, Math.abs(delta), (delta > 0)); }; }; } else { delta = (pos - horizontalScrollPosition); super.scrollHandler(event); if ((((Math.abs(delta) >= listItems[0].length)) || (!(iteratorValid)))){ startIndex = indicesToIndex(verticalScrollPosition, pos); try { iterator.seek(CursorBookmark.FIRST, startIndex); if (!iteratorValid){ iteratorValid = true; lastSeekPending = null; }; } catch(e:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.FIRST, startIndex); e.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); iteratorValid = false; }; bookmark = iterator.bookmark; clearIndicators(); clearVisibleData(); makeRowsAndColumns(0, 0, listContent.width, listContent.height, 0, 0); iterator.seek(bookmark, 0); drawRowBackgrounds(); } else { if (delta != 0){ scrollHorizontally(pos, Math.abs(delta), (delta > 0)); }; }; }; }; } mx_internal function purgeMeasuringRenderers():void{ var _local1:IListItemRenderer; for each (_local1 in measuringObjects) { if (_local1.parent){ _local1.parent.removeChild(DisplayObject(_local1)); }; }; if (!measuringObjects){ measuringObjects = new Dictionary(true); }; } override public function itemRendererToIndex(_arg1:IListItemRenderer):int{ var _local2:String; var _local5:int; var _local6:int; if (runningDataEffect){ _local2 = itemToUID(dataItemWrappersByRenderer[_arg1]); } else { _local2 = itemToUID(_arg1.data); }; var _local3:int = listItems.length; var _local4:int; while (_local4 < listItems.length) { _local5 = listItems[_local4].length; _local6 = 0; while (_local6 < _local5) { if (((listItems[_local4][_local6]) && ((rowMap[listItems[_local4][_local6].name].uid == _local2)))){ if (direction == TileBaseDirection.VERTICAL){ return (((((_local6 + horizontalScrollPosition) - offscreenExtraColumnsLeft) * Math.max(maxRows, rowCount)) + _local4)); }; return (((((_local4 + verticalScrollPosition) - offscreenExtraRowsTop) * Math.max(maxColumns, columnCount)) + _local6)); }; _local6++; }; _local4++; }; return (-1); } override public function measureHeightOfItems(_arg1:int=-1, _arg2:int=0):Number{ var _local3:Number; var _local7:Object; var _local8:Object; var _local9:IFactory; var _local10:IListItemRenderer; var _local4:Boolean; if (((collection) && (collection.length))){ _local7 = iterator.current; _local8 = ((_local7 is ItemWrapper)) ? _local7.data : _local7; _local9 = getItemRendererFactory(_local8); _local10 = measuringObjects[_local9]; if (_local10 == null){ _local10 = getMeasuringRenderer(_local8); _local4 = true; }; setupRendererFromData(_local10, _local8); _local3 = _local10.getExplicitOrMeasuredHeight(); if (_local4){ _local10.setActualSize(_local10.getExplicitOrMeasuredWidth(), _local3); _local4 = false; }; }; if (((isNaN(_local3)) || ((_local3 == 0)))){ _local3 = 50; }; var _local5:Number = getStyle("paddingTop"); var _local6:Number = getStyle("paddingBottom"); _local3 = (_local3 + (_local5 + _local6)); return ((_local3 * _arg2)); } mx_internal function getMeasuringRenderer(_arg1:Object):IListItemRenderer{ var _local2:IListItemRenderer; if (!measuringObjects){ measuringObjects = new Dictionary(true); }; var _local3:IFactory = getItemRendererFactory(_arg1); _local2 = measuringObjects[_local3]; if (!_local2){ _local2 = createItemRenderer(_arg1); _local2.owner = this; _local2.name = "hiddenItem"; _local2.visible = false; _local2.styleName = listContent; listContent.addChild(DisplayObject(_local2)); measuringObjects[_local3] = _local2; }; return (_local2); } private function getPreparedItemRenderer(_arg1:int, _arg2:int, _arg3:Object, _arg4:Object, _arg5:String):IListItemRenderer{ var _local7:IListItemRenderer; var _local8:ListData; var _local9:ListData; var _local6:IListItemRenderer = listItems[_arg1][_arg2]; if (_local6){ if ((runningDataEffect) ? !((dataItemWrappersByRenderer[_local6] == _arg3)) : !((_local6.data == _arg4))){ addToFreeItemRenderers(_local6); } else { _local7 = _local6; }; }; if (!_local7){ if (allowRendererStealingDuringLayout){ _local7 = visibleData[_arg5]; if (((!(_local7)) && (!((_arg3 == _arg4))))){ _local7 = visibleData[itemToUID(_arg4)]; }; }; if (_local7){ _local9 = ListData(rowMap[_local7.name]); if (_local9){ if ((((((direction == TileBaseDirection.HORIZONTAL)) && ((((_local9.rowIndex > _arg1)) || ((((_local9.rowIndex == _arg1)) && ((_local9.columnIndex > _arg2)))))))) || ((((direction == TileBaseDirection.VERTICAL)) && ((((_local9.columnIndex > _arg2)) || ((((_local9.columnIndex == _arg2)) && ((_local9.rowIndex > _arg1)))))))))){ listItems[_local9.rowIndex][_local9.columnIndex] = null; } else { _local7 = null; }; }; }; if (!_local7){ _local7 = getReservedOrFreeItemRenderer(_arg3); if (((_local7) && (!(isRendererUnconstrained(_local7))))){ _local7.x = 0; _local7.y = 0; }; }; if (!_local7){ _local7 = createItemRenderer(_arg4); }; _local7.owner = this; _local7.styleName = listContent; _local7.visible = true; }; _local8 = ListData(makeListData(_arg4, _arg5, _arg1, _arg2)); rowMap[_local7.name] = _local8; if ((_local7 is IDropInListItemRenderer)){ IDropInListItemRenderer(_local7).listData = (_arg4) ? _local8 : null; }; _local7.data = _arg4; if (_arg3 != _arg4){ dataItemWrappersByRenderer[_local7] = _arg3; }; if (!_local7.parent){ listContent.addChild(DisplayObject(_local7)); }; _local7.visible = true; if (_arg5){ visibleData[_arg5] = _local7; }; listItems[_arg1][_arg2] = _local7; UIComponentGlobals.layoutManager.validateClient(_local7, true); return (_local7); } private function placeAndDrawItemRenderer(_arg1:IListItemRenderer, _arg2:Number, _arg3:Number, _arg4:String):void{ var _local8:Number; var _local5:Boolean; var _local6:Boolean; var _local7:Boolean; _local8 = _arg1.getExplicitOrMeasuredHeight(); if (((!((_arg1.width == columnWidth))) || (!((_local8 == ((rowHeight - cachedPaddingTop) - cachedPaddingBottom)))))){ _arg1.setActualSize(columnWidth, ((rowHeight - cachedPaddingTop) - cachedPaddingBottom)); }; if (!isRendererUnconstrained(_arg1)){ _arg1.move(_arg2, (_arg3 + cachedPaddingTop)); }; _local5 = !((selectedData[_arg4] == null)); if (runningDataEffect){ _local5 = ((_local5) || (!((selectedData[itemToUID(_arg1.data)] == null)))); _local5 = ((((_local5) && (!(getRendererSemanticValue(_arg1, ModifiedCollectionView.REPLACEMENT))))) && (!(getRendererSemanticValue(_arg1, ModifiedCollectionView.ADDED)))); }; _local6 = (highlightUID == _arg4); _local7 = (caretUID == _arg4); if (_arg4){ drawItem(_arg1, _local5, _local6, _local7); }; } override protected function makeRowsAndColumns(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:int, _arg6:int, _arg7:Boolean=false, _arg8:uint=0):Point{ var _local9:int; var _local10:int; var _local11:int; var _local12:int; var _local13:Number; var _local14:Number; var _local15:Object; var _local16:Object; var _local17:String; var _local18:IListItemRenderer; var _local19:IListItemRenderer; var _local20:Boolean; var _local21:Boolean; var _local22:int; var _local23:Number; var _local24:int; var _local25:int; var _local29:Array; var _local26:Boolean; var _local27:Boolean; var _local28:Boolean; if ((((columnWidth == 0)) || ((rowHeight == 0)))){ return (null); }; invalidateSizeFlag = true; allowItemSizeChangeNotification = false; if (direction == TileBaseDirection.VERTICAL){ _local9 = ((maxRows > 0)) ? maxRows : Math.max(Math.floor((listContent.heightExcludingOffsets / rowHeight)), 1); _local10 = Math.max(Math.ceil((listContent.widthExcludingOffsets / columnWidth)), 1); setRowCount(_local9); setColumnCount(_local10); _local11 = _arg5; _local13 = _arg1; _local25 = (_local11 - 1); _local20 = ((((!((iterator == null))) && (!(iterator.afterLast)))) && (iteratorValid)); while (((((_arg7) && (_arg8))) || (((!(_arg7)) && ((_local11 < (_local10 + _arg5))))))) { _local12 = _arg6; _local14 = _arg2; while (_local12 < _local9) { _local21 = _local20; _local15 = (_local20) ? iterator.current : null; _local16 = ((_local15 is ItemWrapper)) ? _local15.data : _local15; _local20 = moveNextSafely(_local20); if (!listItems[_local12]){ listItems[_local12] = []; }; if (((_local21) && ((_local14 < _arg4)))){ _local17 = itemToUID(_local15); rowInfo[_local12] = new ListRowInfo(_local14, rowHeight, _local17); _local19 = getPreparedItemRenderer(_local12, _local11, _local15, _local16, _local17); placeAndDrawItemRenderer(_local19, _local13, _local14, _local17); _local25 = Math.max(_local11, _local25); } else { _local18 = listItems[_local12][_local11]; if (_local18){ addToFreeItemRenderers(_local18); listItems[_local12][_local11] = null; }; rowInfo[_local12] = new ListRowInfo(_local14, rowHeight, _local17); }; _local14 = (_local14 + rowHeight); _local12++; }; _local11++; if (_arg6){ _local22 = 0; while (_local22 < _arg6) { _local20 = moveNextSafely(_local20); _local22++; }; }; _local13 = (_local13 + columnWidth); }; } else { _local10 = ((maxColumns > 0)) ? maxColumns : Math.max(Math.floor((listContent.widthExcludingOffsets / columnWidth)), 1); _local9 = Math.max(Math.ceil((listContent.heightExcludingOffsets / rowHeight)), 1); setColumnCount(_local10); setRowCount(_local9); _local12 = _arg6; _local14 = _arg2; _local20 = ((((!((iterator == null))) && (!(iterator.afterLast)))) && (iteratorValid)); _local24 = (_local12 - 1); while (((((_arg7) && (_arg8))) || (((!(_arg7)) && ((_local12 < (_local9 + _arg6))))))) { _local11 = _arg5; _local13 = _arg1; rowInfo[_local12] = null; while (_local11 < _local10) { _local21 = _local20; _local15 = (_local20) ? iterator.current : null; _local16 = ((_local15 is ItemWrapper)) ? _local15.data : _local15; _local20 = moveNextSafely(_local20); if (!listItems[_local12]){ listItems[_local12] = []; }; if (((_local21) && ((_local13 < _arg3)))){ _local17 = itemToUID(_local15); if (!rowInfo[_local12]){ rowInfo[_local12] = new ListRowInfo(_local14, rowHeight, _local17); }; _local19 = getPreparedItemRenderer(_local12, _local11, _local15, _local16, _local17); placeAndDrawItemRenderer(_local19, _local13, _local14, _local17); _local24 = _local12; } else { if (!rowInfo[_local12]){ rowInfo[_local12] = new ListRowInfo(_local14, rowHeight, _local17); }; _local18 = listItems[_local12][_local11]; if (_local18){ addToFreeItemRenderers(_local18); listItems[_local12][_local11] = null; }; }; _local13 = (_local13 + columnWidth); _local11++; }; _local12++; if (_arg5){ _local22 = 0; while (_local22 < _arg5) { _local20 = moveNextSafely(_local20); _local22++; }; }; _local14 = (_local14 + rowHeight); }; }; if (!_arg7){ while (listItems.length > (_local9 + offscreenExtraRowsTop)) { _local29 = listItems.pop(); rowInfo.pop(); _local22 = 0; while (_local22 < _local29.length) { _local18 = _local29[_local22]; if (_local18){ addToFreeItemRenderers(_local18); }; _local22++; }; }; if (((listItems.length) && ((listItems[0].length > (_local10 + offscreenExtraColumnsLeft))))){ _local22 = 0; while (_local22 < (_local9 + offscreenExtraRowsTop)) { _local29 = listItems[_local22]; while (_local29.length > (_local10 + offscreenExtraColumnsLeft)) { _local18 = _local29.pop(); if (_local18){ addToFreeItemRenderers(_local18); }; }; _local22++; }; }; }; allowItemSizeChangeNotification = true; invalidateSizeFlag = false; return (new Point(((_local25 - _arg5) + 1), ((_local24 - _arg6) + 1))); } private function lastColumnInRow(_arg1:int):int{ var _local2:int = ((maxRows > 0)) ? maxRows : rowCount; var _local3:int = Math.floor(((collection.length - 1) / _local2)); if (indicesToIndex(_arg1, _local3) >= collection.length){ _local3--; }; return (_local3); } override protected function get dragImageOffsets():Point{ var _local4:String; var _local1:Point = new Point(0x2000, 0x2000); var _local2:Boolean; var _local3:int = listItems.length; for (_local4 in visibleData) { if (selectedData[_local4]){ _local1.x = Math.min(_local1.x, visibleData[_local4].x); _local1.y = Math.min(_local1.y, visibleData[_local4].y); _local2 = true; }; }; if (_local2){ return (_local1); }; return (new Point(0, 0)); } public function get maxColumns():int{ return (_maxColumns); } public function set maxRows(_arg1:int):void{ if (_maxRows != _arg1){ _maxRows = _arg1; invalidateSize(); invalidateDisplayList(); }; } public function get maxRows():int{ return (_maxRows); } private function moveNextSafely(_arg1:Boolean):Boolean{ var more = _arg1; if (((iterator) && (more))){ try { more = iterator.moveNext(); } catch(e1:ItemPendingError) { lastSeekPending = new ListBaseSeekPending(CursorBookmark.CURRENT, 0); e1.addResponder(new ItemResponder(seekPendingResultHandler, seekPendingFailureHandler, lastSeekPending)); more = false; iteratorValid = false; }; }; return (more); } private function lastRowInColumn(_arg1:int):int{ var _local2:int = ((maxColumns > 0)) ? maxColumns : columnCount; var _local3:int = Math.floor(((collection.length - 1) / _local2)); if ((_arg1 * _local3) > collection.length){ _local3--; }; return (_local3); } protected function drawTileBackground(_arg1:Sprite, _arg2:int, _arg3:int, _arg4:Number, _arg5:Number, _arg6:uint, _arg7:IListItemRenderer):DisplayObject{ var _local9:Shape; var _local8:int = ((_arg2 * columnCount) + _arg3); if (_local8 < _arg1.numChildren){ _local9 = Shape(_arg1.getChildAt(_local8)); } else { _local9 = new FlexShape(); _local9.name = "tileBackground"; _arg1.addChild(_local9); }; var _local10:Graphics = _local9.graphics; _local10.clear(); _local10.beginFill(_arg6, getStyle("backgroundAlpha")); _local10.drawRect(0, 0, _arg4, _arg5); _local10.endFill(); return (_local9); } override public function calculateDropIndex(_arg1:DragEvent=null):int{ var _local2:IListItemRenderer; var _local3:Point; var _local4:int; var _local5:int; var _local6:int; var _local7:int; if (_arg1){ _local3 = new Point(_arg1.localX, _arg1.localY); _local3 = DisplayObject(_arg1.target).localToGlobal(_local3); _local3 = listContent.globalToLocal(_local3); _local4 = listItems.length; _local5 = 0; while (_local5 < _local4) { if ((((rowInfo[_local5].y <= _local3.y)) && ((_local3.y < (rowInfo[_local5].y + rowInfo[_local5].height))))){ _local6 = listItems[_local5].length; _local7 = 0; while (_local7 < _local6) { if (((((listItems[_local5][_local7]) && ((listItems[_local5][_local7].x <= _local3.x)))) && ((_local3.x < (listItems[_local5][_local7].x + listItems[_local5][_local7].width))))){ _local2 = listItems[_local5][_local7]; if (!DisplayObject(_local2).visible){ _local2 = null; }; break; }; _local7++; }; break; }; _local5++; }; if (_local2){ lastDropIndex = itemRendererToIndex(_local2); } else { lastDropIndex = (collection) ? collection.length : 0; }; }; return (lastDropIndex); } override public function set itemRenderer(_arg1:IFactory):void{ super.itemRenderer = _arg1; purgeMeasuringRenderers(); } mx_internal function setupRendererFromData(_arg1:IListItemRenderer, _arg2:Object):void{ var _local3:ListData = ListData(makeListData(_arg2, itemToUID(_arg2), 0, 0)); if ((_arg1 is IDropInListItemRenderer)){ IDropInListItemRenderer(_arg1).listData = (_arg2) ? _local3 : null; }; _arg1.data = _arg2; UIComponentGlobals.layoutManager.validateClient(_arg1, true); } protected function makeListData(_arg1:Object, _arg2:String, _arg3:int, _arg4:int):BaseListData{ return (new ListData(itemToLabel(_arg1), itemToIcon(_arg1), labelField, _arg2, this, _arg3, _arg4)); } override public function indicesToIndex(_arg1:int, _arg2:int):int{ var _local4:int; if (direction == TileBaseDirection.VERTICAL){ _local4 = ((maxRows > 0)) ? maxRows : rowCount; return (((_arg2 * _local4) + _arg1)); }; var _local3:int = ((maxColumns > 0)) ? maxColumns : columnCount; return (((_arg1 * _local3) + _arg2)); } override protected function adjustListContent(_arg1:Number=-1, _arg2:Number=-1):void{ var _local3:Boolean; var _local4:int; var _local5:int; var _local6:int; var _local8:int; var _local9:int; super.adjustListContent(_arg1, _arg2); if (!collection){ return; }; var _local7:int = collection.length; if (direction == TileBaseDirection.VERTICAL){ _local5 = ((maxRows > 0)) ? maxRows : Math.max(Math.floor((listContent.heightExcludingOffsets / rowHeight)), 1); _local6 = Math.max(Math.ceil((listContent.widthExcludingOffsets / columnWidth)), 1); if (_local5 != lastRowCount){ _local3 = !(((listContent.widthExcludingOffsets / columnWidth) == Math.ceil((listContent.widthExcludingOffsets / columnWidth)))); _local8 = Math.max((Math.ceil((_local7 / _local5)) - _local6), 0); if (_local3){ _local8++; }; if (horizontalScrollPosition > _local8){ $horizontalScrollPosition = _local8; }; setRowCount(_local5); setColumnCount(_local6); _local4 = scrollPositionToIndex(Math.max(0, (horizontalScrollPosition - offscreenExtraColumnsLeft)), verticalScrollPosition); seekPositionSafely(_local4); }; lastRowCount = _local5; } else { _local6 = ((maxColumns > 0)) ? maxColumns : Math.max(Math.floor((listContent.widthExcludingOffsets / columnWidth)), 1); _local5 = Math.max(Math.ceil((listContent.heightExcludingOffsets / rowHeight)), 1); if (_local6 != lastColumnCount){ _local3 = !(((listContent.heightExcludingOffsets / rowHeight) == Math.ceil((listContent.heightExcludingOffsets / rowHeight)))); _local9 = Math.max((Math.ceil((_local7 / _local6)) - _local5), 0); if (_local3){ _local9++; }; if (verticalScrollPosition > _local9){ $verticalScrollPosition = _local9; }; setRowCount(_local5); setColumnCount(_local6); _local4 = scrollPositionToIndex(horizontalScrollPosition, Math.max(0, (verticalScrollPosition - offscreenExtraRowsTop))); seekPositionSafely(_local4); }; lastColumnCount = _local6; }; } override protected function collectionChangeHandler(_arg1:Event):void{ var _local2:CollectionEvent; var _local3:int; var _local4:int; var _local5:int; var _local6:int; if ((_arg1 is CollectionEvent)){ _local2 = CollectionEvent(_arg1); if ((((_local2.location == 0)) || ((_local2.kind == CollectionEventKind.REFRESH)))){ itemsNeedMeasurement = true; invalidateProperties(); }; if (_local2.kind == CollectionEventKind.REMOVE){ _local3 = indicesToIndex(verticalScrollPosition, horizontalScrollPosition); if (_local2.location < _local3){ _local3 = (_local3 - _local2.items.length); super.collectionChangeHandler(_arg1); _local4 = 0; _local5 = 0; if (direction == TileBaseDirection.HORIZONTAL){ super.verticalScrollPosition = indexToRow(_local3); _local4 = Math.min((offscreenExtraRows / 2), verticalScrollPosition); } else { super.horizontalScrollPosition = indexToColumn(_local3); _local5 = Math.min((offscreenExtraColumns / 2), horizontalScrollPosition); }; _local6 = scrollPositionToIndex((horizontalScrollPosition - _local5), (verticalScrollPosition - _local4)); seekPositionSafely(_local6); return; }; }; }; super.collectionChangeHandler(_arg1); } } }//package mx.controls.listClasses
Section 126
//TileBaseDirection (mx.controls.listClasses.TileBaseDirection) package mx.controls.listClasses { public final class TileBaseDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.controls.listClasses
Section 127
//TileListItemRenderer (mx.controls.listClasses.TileListItemRenderer) package mx.controls.listClasses { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.managers.*; import mx.events.*; public class TileListItemRenderer extends UIComponent implements IDataRenderer, IDropInListItemRenderer, IListItemRenderer, IFontContextComponent { private var iconOnly:Boolean;// = false private var _listData:ListData; private var _data:Object; protected var label:IUITextField; private var listOwner:TileBase; protected var icon:IFlexDisplayObject; private var iconClass:Class; mx_internal static const VERSION:String = "3.2.0.3794"; public function TileListItemRenderer(){ addEventListener(ToolTipEvent.TOOL_TIP_SHOW, toolTipShowHandler); } public function set fontContext(_arg1:IFlexModuleFactory):void{ this.moduleFactory = _arg1; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local6:Number; var _local9:Number; super.updateDisplayList(_arg1, _arg2); var _local3:Number = (iconOnly) ? 0 : getStyle("verticalGap"); var _local4:Number = getStyle("paddingLeft"); var _local5:Number = getStyle("paddingRight"); if (icon){ icon.width = Math.min((_arg1 - (_local4 + _local5)), icon.measuredWidth); icon.height = Math.min(Math.max(((_arg2 - _local3) - label.getExplicitOrMeasuredHeight()), 0), icon.measuredHeight); icon.x = (_local4 + ((((_arg1 - _local4) - _local5) - icon.width) / 2)); }; label.width = (_arg1 - (_local4 + _local5)); label.height = Math.min(label.getExplicitOrMeasuredHeight(), (icon) ? Math.max(((_arg2 - _local3) - icon.height), 0) : _arg2); label.x = _local4; if (((listOwner) && (listOwner.showDataTips))){ if ((((((label.textWidth > label.width)) || (((listOwner.dataTipField) && (!((listOwner.dataTipField == "label"))))))) || (!((listOwner.dataTipFunction == null))))){ toolTip = listOwner.itemToDataTip(_data); } else { toolTip = null; }; } else { toolTip = null; }; var _local7:Number = label.height; if (icon){ _local7 = (_local7 + (icon.height + _local3)); }; var _local8:String = getStyle("verticalAlign"); if (_local8 == "top"){ _local6 = 0; if (icon){ icon.y = _local6; _local6 = (_local6 + (_local3 + icon.height)); }; label.y = _local6; } else { if (_local8 == "bottom"){ _local6 = (_arg2 - label.height); label.y = _local6; if (icon){ _local6 = (_local6 - (_local3 + icon.height)); icon.y = _local6; }; } else { _local6 = ((_arg2 - _local7) / 2); if (icon){ icon.y = _local6; _local6 = (_local6 + (_local3 + icon.height)); }; label.y = _local6; }; }; if (((data) && (parent))){ if (!enabled){ _local9 = getStyle("disabledColor"); } else { if (listOwner.isItemSelected(listData.uid)){ _local9 = getStyle("textSelectedColor"); } else { if (listOwner.isItemHighlighted(listData.uid)){ _local9 = getStyle("textRollOverColor"); } else { _local9 = getStyle("color"); }; }; }; label.setColor(_local9); }; } protected function toolTipShowHandler(_arg1:ToolTipEvent):void{ var _local5:Rectangle; var _local8:InterManagerRequest; var _local2:IToolTip = _arg1.toolTip; var _local3:ISystemManager = systemManager.topLevelSystemManager; var _local4:DisplayObject = _local3.getSandboxRoot(); var _local6:Point = new Point(0, 0); _local6 = label.localToGlobal(_local6); _local6 = _local4.globalToLocal(_local6); _local2.move(_local6.x, (_local6.y + ((height - _local2.height) / 2))); if (_local3 != _local4){ _local8 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "getVisibleApplicationRect"); _local4.dispatchEvent(_local8); _local5 = Rectangle(_local8.value); } else { _local5 = _local3.getVisibleApplicationRect(); }; var _local7:Number = (_local5.x + _local5.width); _local6.x = _local2.x; _local6.y = _local2.y; _local6 = _local4.localToGlobal(_local6); if ((_local6.x + _local2.width) > _local7){ _local2.move((_local2.x - ((_local6.x + _local2.width) - _local7)), _local2.y); }; } mx_internal function getLabel():IUITextField{ return (label); } public function set listData(_arg1:BaseListData):void{ _listData = ListData(_arg1); invalidateProperties(); } override protected function commitProperties():void{ var _local1:int; var _local2:Class; super.commitProperties(); if (((hasFontContextChanged()) && (!((label == null))))){ _local1 = getChildIndex(DisplayObject(label)); removeLabel(); createLabel(_local1); }; if (((icon) && (!(_data)))){ removeChild(DisplayObject(icon)); icon = null; iconClass = null; }; if (_data){ listOwner = TileBase(_listData.owner); if (_listData.icon){ _local2 = _listData.icon; if (iconClass != _local2){ iconClass = _local2; if (icon){ removeChild(DisplayObject(icon)); }; icon = new iconClass(); addChild(DisplayObject(icon)); }; }; label.text = _listData.label; label.multiline = listOwner.variableRowHeight; label.wordWrap = listOwner.wordWrap; } else { label.text = " "; toolTip = null; }; } public function set data(_arg1:Object):void{ _data = _arg1; invalidateProperties(); dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } mx_internal function createLabel(_arg1:int):void{ if (!label){ label = IUITextField(createInFontContext(UITextField)); label.styleName = this; if (_arg1 == -1){ addChild(DisplayObject(label)); } else { addChildAt(DisplayObject(label), _arg1); }; }; } override public function get baselinePosition():Number{ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ super.baselinePosition; }; if (!validateBaselinePosition()){ return (NaN); }; return ((label.y + label.baselinePosition)); } override protected function measure():void{ var _local2:Number; var _local3:Number; super.measure(); var _local1:Number = 0; if (icon){ _local1 = (_local1 + icon.measuredHeight); }; if ((((((label.text == "")) || ((label.text == " ")))) || ((label.text == null)))){ label.explicitHeight = 0; iconOnly = true; } else { label.explicitHeight = NaN; _local1 = (_local1 + getStyle("verticalGap")); iconOnly = false; }; measuredHeight = (label.getExplicitOrMeasuredHeight() + _local1); _local2 = getStyle("paddingLeft"); _local3 = getStyle("paddingRight"); measuredWidth = ((label.getExplicitOrMeasuredWidth() + _local2) + _local3); if (((icon) && ((((icon.measuredWidth + _local2) + _local3) > measuredWidth)))){ measuredWidth = ((icon.measuredWidth + _local2) + _local3); }; } mx_internal function removeLabel():void{ if (label){ removeChild(DisplayObject(label)); label = null; }; } public function get fontContext():IFlexModuleFactory{ return (moduleFactory); } override protected function createChildren():void{ super.createChildren(); createLabel(-1); } public function get listData():BaseListData{ return (_listData); } public function get data():Object{ return (_data); } } }//package mx.controls.listClasses
Section 128
//ScrollBar (mx.controls.scrollClasses.ScrollBar) package mx.controls.scrollClasses { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import flash.utils.*; import flash.ui.*; public class ScrollBar extends UIComponent { private var _direction:String;// = "vertical" private var _pageScrollSize:Number;// = 0 mx_internal var scrollTrack:Button; mx_internal var downArrow:Button; mx_internal var scrollThumb:ScrollThumb; private var trackScrollRepeatDirection:int; private var _minScrollPosition:Number;// = 0 private var trackPosition:Number; private var _pageSize:Number;// = 0 mx_internal var _minHeight:Number;// = 32 private var _maxScrollPosition:Number;// = 0 private var trackScrollTimer:Timer; mx_internal var upArrow:Button; private var _lineScrollSize:Number;// = 1 private var _scrollPosition:Number;// = 0 private var trackScrolling:Boolean;// = false mx_internal var isScrolling:Boolean; mx_internal var oldPosition:Number; mx_internal var _minWidth:Number;// = 16 mx_internal static const VERSION:String = "3.2.0.3794"; public static const THICKNESS:Number = 16; override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; invalidateDisplayList(); } public function set lineScrollSize(_arg1:Number):void{ _lineScrollSize = _arg1; } public function get minScrollPosition():Number{ return (_minScrollPosition); } mx_internal function dispatchScrollEvent(_arg1:Number, _arg2:String):void{ var _local3:ScrollEvent = new ScrollEvent(ScrollEvent.SCROLL); _local3.detail = _arg2; _local3.position = scrollPosition; _local3.delta = (scrollPosition - _arg1); _local3.direction = direction; dispatchEvent(_local3); } private function downArrow_buttonDownHandler(_arg1:FlexEvent):void{ if (isNaN(oldPosition)){ oldPosition = scrollPosition; }; lineScroll(1); } private function scrollTrack_mouseDownHandler(_arg1:MouseEvent):void{ if (!(((_arg1.target == this)) || ((_arg1.target == scrollTrack)))){ return; }; trackScrolling = true; var _local2:DisplayObject = systemManager.getSandboxRoot(); _local2.addEventListener(MouseEvent.MOUSE_UP, scrollTrack_mouseUpHandler, true); _local2.addEventListener(MouseEvent.MOUSE_MOVE, scrollTrack_mouseMoveHandler, true); _local2.addEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, scrollTrack_mouseLeaveHandler); systemManager.deployMouseShields(true); var _local3:Point = new Point(_arg1.localX, _arg1.localY); _local3 = _arg1.target.localToGlobal(_local3); _local3 = globalToLocal(_local3); trackPosition = _local3.y; if (isNaN(oldPosition)){ oldPosition = scrollPosition; }; trackScrollRepeatDirection = (((scrollThumb.y + scrollThumb.height) < _local3.y)) ? 1 : ((scrollThumb.y > _local3.y)) ? -1 : 0; pageScroll(trackScrollRepeatDirection); if (!trackScrollTimer){ trackScrollTimer = new Timer(getStyle("repeatDelay"), 1); trackScrollTimer.addEventListener(TimerEvent.TIMER, trackScrollTimerHandler); }; trackScrollTimer.start(); } public function set minScrollPosition(_arg1:Number):void{ _minScrollPosition = _arg1; invalidateDisplayList(); } public function get scrollPosition():Number{ return (_scrollPosition); } mx_internal function get linePlusDetail():String{ return (((direction == ScrollBarDirection.VERTICAL)) ? ScrollEventDetail.LINE_DOWN : ScrollEventDetail.LINE_RIGHT); } public function get maxScrollPosition():Number{ return (_maxScrollPosition); } protected function get thumbStyleFilters():Object{ return (null); } override public function set doubleClickEnabled(_arg1:Boolean):void{ } public function get lineScrollSize():Number{ return (_lineScrollSize); } mx_internal function get virtualHeight():Number{ return (unscaledHeight); } public function set scrollPosition(_arg1:Number):void{ var _local2:Number; var _local3:Number; var _local4:Number; _scrollPosition = _arg1; if (scrollThumb){ if (!cacheAsBitmap){ cacheHeuristic = (scrollThumb.cacheHeuristic = true); }; if (!isScrolling){ _arg1 = Math.min(_arg1, maxScrollPosition); _arg1 = Math.max(_arg1, minScrollPosition); _local2 = (maxScrollPosition - minScrollPosition); _local3 = ((((_local2 == 0)) || (isNaN(_local2)))) ? 0 : ((((_arg1 - minScrollPosition) * (trackHeight - scrollThumb.height)) / _local2) + trackY); _local4 = (((virtualWidth - scrollThumb.width) / 2) + getStyle("thumbOffset")); scrollThumb.move(Math.round(_local4), Math.round(_local3)); }; }; } protected function get downArrowStyleFilters():Object{ return (null); } public function get pageSize():Number{ return (_pageSize); } public function set pageScrollSize(_arg1:Number):void{ _pageScrollSize = _arg1; } public function set maxScrollPosition(_arg1:Number):void{ _maxScrollPosition = _arg1; invalidateDisplayList(); } mx_internal function pageScroll(_arg1:int):void{ var _local4:Number; var _local5:String; var _local2:Number = ((_pageScrollSize)!=0) ? _pageScrollSize : pageSize; var _local3:Number = (_scrollPosition + (_arg1 * _local2)); if (_local3 > maxScrollPosition){ _local3 = maxScrollPosition; } else { if (_local3 < minScrollPosition){ _local3 = minScrollPosition; }; }; if (_local3 != scrollPosition){ _local4 = scrollPosition; scrollPosition = _local3; _local5 = ((_arg1 < 0)) ? pageMinusDetail : pagePlusDetail; dispatchScrollEvent(_local4, _local5); }; } override protected function createChildren():void{ super.createChildren(); if (!scrollTrack){ scrollTrack = new Button(); scrollTrack.focusEnabled = false; scrollTrack.skinName = "trackSkin"; scrollTrack.upSkinName = "trackUpSkin"; scrollTrack.overSkinName = "trackOverSkin"; scrollTrack.downSkinName = "trackDownSkin"; scrollTrack.disabledSkinName = "trackDisabledSkin"; if ((scrollTrack is ISimpleStyleClient)){ ISimpleStyleClient(scrollTrack).styleName = this; }; addChild(scrollTrack); scrollTrack.validateProperties(); }; if (!upArrow){ upArrow = new Button(); upArrow.enabled = false; upArrow.autoRepeat = true; upArrow.focusEnabled = false; upArrow.upSkinName = "upArrowUpSkin"; upArrow.overSkinName = "upArrowOverSkin"; upArrow.downSkinName = "upArrowDownSkin"; upArrow.disabledSkinName = "upArrowDisabledSkin"; upArrow.skinName = "upArrowSkin"; upArrow.upIconName = ""; upArrow.overIconName = ""; upArrow.downIconName = ""; upArrow.disabledIconName = ""; addChild(upArrow); upArrow.styleName = new StyleProxy(this, upArrowStyleFilters); upArrow.validateProperties(); upArrow.addEventListener(FlexEvent.BUTTON_DOWN, upArrow_buttonDownHandler); }; if (!downArrow){ downArrow = new Button(); downArrow.enabled = false; downArrow.autoRepeat = true; downArrow.focusEnabled = false; downArrow.upSkinName = "downArrowUpSkin"; downArrow.overSkinName = "downArrowOverSkin"; downArrow.downSkinName = "downArrowDownSkin"; downArrow.disabledSkinName = "downArrowDisabledSkin"; downArrow.skinName = "downArrowSkin"; downArrow.upIconName = ""; downArrow.overIconName = ""; downArrow.downIconName = ""; downArrow.disabledIconName = ""; addChild(downArrow); downArrow.styleName = new StyleProxy(this, downArrowStyleFilters); downArrow.validateProperties(); downArrow.addEventListener(FlexEvent.BUTTON_DOWN, downArrow_buttonDownHandler); }; } private function scrollTrack_mouseOverHandler(_arg1:MouseEvent):void{ if (!(((_arg1.target == this)) || ((_arg1.target == scrollTrack)))){ return; }; if (trackScrolling){ trackScrollTimer.start(); }; } private function get minDetail():String{ return (((direction == ScrollBarDirection.VERTICAL)) ? ScrollEventDetail.AT_TOP : ScrollEventDetail.AT_LEFT); } mx_internal function isScrollBarKey(_arg1:uint):Boolean{ var _local2:Number; if (_arg1 == Keyboard.HOME){ if (scrollPosition != 0){ _local2 = scrollPosition; scrollPosition = 0; dispatchScrollEvent(_local2, minDetail); }; return (true); } else { if (_arg1 == Keyboard.END){ if (scrollPosition < maxScrollPosition){ _local2 = scrollPosition; scrollPosition = maxScrollPosition; dispatchScrollEvent(_local2, maxDetail); }; return (true); }; }; return (false); } mx_internal function get lineMinusDetail():String{ return (((direction == ScrollBarDirection.VERTICAL)) ? ScrollEventDetail.LINE_UP : ScrollEventDetail.LINE_LEFT); } mx_internal function get pageMinusDetail():String{ return (((direction == ScrollBarDirection.VERTICAL)) ? ScrollEventDetail.PAGE_UP : ScrollEventDetail.PAGE_LEFT); } private function get maxDetail():String{ return (((direction == ScrollBarDirection.VERTICAL)) ? ScrollEventDetail.AT_BOTTOM : ScrollEventDetail.AT_RIGHT); } private function scrollTrack_mouseLeaveHandler(_arg1:Event):void{ trackScrolling = false; var _local2:DisplayObject = systemManager.getSandboxRoot(); _local2.removeEventListener(MouseEvent.MOUSE_UP, scrollTrack_mouseUpHandler, true); _local2.removeEventListener(MouseEvent.MOUSE_MOVE, scrollTrack_mouseMoveHandler, true); _local2.removeEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, scrollTrack_mouseLeaveHandler); systemManager.deployMouseShields(false); if (trackScrollTimer){ trackScrollTimer.reset(); }; if (_arg1.target != scrollTrack){ return; }; var _local3:String = ((oldPosition > scrollPosition)) ? pageMinusDetail : pagePlusDetail; dispatchScrollEvent(oldPosition, _local3); oldPosition = NaN; } protected function get upArrowStyleFilters():Object{ return (null); } private function get trackHeight():Number{ return ((virtualHeight - (upArrow.getExplicitOrMeasuredHeight() + downArrow.getExplicitOrMeasuredHeight()))); } public function get pageScrollSize():Number{ return (_pageScrollSize); } override protected function measure():void{ super.measure(); upArrow.validateSize(); downArrow.validateSize(); scrollTrack.validateSize(); if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ _minWidth = (scrollThumb) ? scrollThumb.getExplicitOrMeasuredWidth() : 0; _minWidth = Math.max(scrollTrack.getExplicitOrMeasuredWidth(), upArrow.getExplicitOrMeasuredWidth(), downArrow.getExplicitOrMeasuredWidth(), _minWidth); } else { _minWidth = upArrow.getExplicitOrMeasuredWidth(); }; _minHeight = (upArrow.getExplicitOrMeasuredHeight() + downArrow.getExplicitOrMeasuredHeight()); } mx_internal function lineScroll(_arg1:int):void{ var _local4:Number; var _local5:String; var _local2:Number = _lineScrollSize; var _local3:Number = (_scrollPosition + (_arg1 * _local2)); if (_local3 > maxScrollPosition){ _local3 = maxScrollPosition; } else { if (_local3 < minScrollPosition){ _local3 = minScrollPosition; }; }; if (_local3 != scrollPosition){ _local4 = scrollPosition; scrollPosition = _local3; _local5 = ((_arg1 < 0)) ? lineMinusDetail : linePlusDetail; dispatchScrollEvent(_local4, _local5); }; } public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ var _local5:Number; this.pageSize = _arg1; _pageScrollSize = ((_arg4)>0) ? _arg4 : _arg1; this.minScrollPosition = Math.max(_arg2, 0); this.maxScrollPosition = Math.max(_arg3, 0); _scrollPosition = Math.max(this.minScrollPosition, _scrollPosition); _scrollPosition = Math.min(this.maxScrollPosition, _scrollPosition); if (((((this.maxScrollPosition - this.minScrollPosition) > 0)) && (enabled))){ upArrow.enabled = true; downArrow.enabled = true; scrollTrack.enabled = true; addEventListener(MouseEvent.MOUSE_DOWN, scrollTrack_mouseDownHandler); addEventListener(MouseEvent.MOUSE_OVER, scrollTrack_mouseOverHandler); addEventListener(MouseEvent.MOUSE_OUT, scrollTrack_mouseOutHandler); if (!scrollThumb){ scrollThumb = new ScrollThumb(); scrollThumb.focusEnabled = false; addChildAt(scrollThumb, getChildIndex(downArrow)); scrollThumb.styleName = new StyleProxy(this, thumbStyleFilters); scrollThumb.upSkinName = "thumbUpSkin"; scrollThumb.overSkinName = "thumbOverSkin"; scrollThumb.downSkinName = "thumbDownSkin"; scrollThumb.iconName = "thumbIcon"; scrollThumb.skinName = "thumbSkin"; }; _local5 = ((trackHeight < 0)) ? 0 : Math.round(((_arg1 / ((this.maxScrollPosition - this.minScrollPosition) + _arg1)) * trackHeight)); if (_local5 < scrollThumb.minHeight){ if (trackHeight < scrollThumb.minHeight){ scrollThumb.visible = false; } else { _local5 = scrollThumb.minHeight; scrollThumb.visible = true; scrollThumb.setActualSize(scrollThumb.measuredWidth, scrollThumb.minHeight); }; } else { scrollThumb.visible = true; scrollThumb.setActualSize(scrollThumb.measuredWidth, _local5); }; scrollThumb.setRange((upArrow.getExplicitOrMeasuredHeight() + 0), ((virtualHeight - downArrow.getExplicitOrMeasuredHeight()) - scrollThumb.height), this.minScrollPosition, this.maxScrollPosition); scrollPosition = Math.max(Math.min(scrollPosition, this.maxScrollPosition), this.minScrollPosition); } else { upArrow.enabled = false; downArrow.enabled = false; scrollTrack.enabled = false; if (scrollThumb){ scrollThumb.visible = false; }; }; } private function trackScrollTimerHandler(_arg1:Event):void{ if (trackScrollRepeatDirection == 1){ if ((scrollThumb.y + scrollThumb.height) > trackPosition){ return; }; }; if (trackScrollRepeatDirection == -1){ if (scrollThumb.y < trackPosition){ return; }; }; pageScroll(trackScrollRepeatDirection); if (((trackScrollTimer) && ((trackScrollTimer.repeatCount == 1)))){ trackScrollTimer.delay = getStyle("repeatInterval"); trackScrollTimer.repeatCount = 0; }; } private function upArrow_buttonDownHandler(_arg1:FlexEvent):void{ if (isNaN(oldPosition)){ oldPosition = scrollPosition; }; lineScroll(-1); } public function set pageSize(_arg1:Number):void{ _pageSize = _arg1; } private function get trackY():Number{ return (upArrow.getExplicitOrMeasuredHeight()); } private function scrollTrack_mouseOutHandler(_arg1:MouseEvent):void{ if (trackScrolling){ trackScrollTimer.stop(); }; } private function scrollTrack_mouseUpHandler(_arg1:MouseEvent):void{ scrollTrack_mouseLeaveHandler(_arg1); } private function scrollTrack_mouseMoveHandler(_arg1:MouseEvent):void{ var _local2:Point; if (trackScrolling){ _local2 = new Point(_arg1.stageX, _arg1.stageY); _local2 = globalToLocal(_local2); trackPosition = _local2.y; }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ if ($height == 1){ return; }; if (!upArrow){ return; }; super.updateDisplayList(_arg1, _arg2); if (cacheAsBitmap){ cacheHeuristic = (scrollThumb.cacheHeuristic = false); }; upArrow.setActualSize(upArrow.getExplicitOrMeasuredWidth(), upArrow.getExplicitOrMeasuredHeight()); if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ upArrow.move(((virtualWidth - upArrow.width) / 2), 0); } else { upArrow.move(0, 0); }; scrollTrack.setActualSize(scrollTrack.getExplicitOrMeasuredWidth(), virtualHeight); if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ scrollTrack.x = ((virtualWidth - scrollTrack.width) / 2); }; scrollTrack.y = 0; downArrow.setActualSize(downArrow.getExplicitOrMeasuredWidth(), downArrow.getExplicitOrMeasuredHeight()); if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ downArrow.move(((virtualWidth - downArrow.width) / 2), (virtualHeight - downArrow.getExplicitOrMeasuredHeight())); } else { downArrow.move(0, (virtualHeight - downArrow.getExplicitOrMeasuredHeight())); }; setScrollProperties(pageSize, minScrollPosition, maxScrollPosition, _pageScrollSize); scrollPosition = _scrollPosition; } mx_internal function get pagePlusDetail():String{ return (((direction == ScrollBarDirection.VERTICAL)) ? ScrollEventDetail.PAGE_DOWN : ScrollEventDetail.PAGE_RIGHT); } mx_internal function get virtualWidth():Number{ return (unscaledWidth); } public function set direction(_arg1:String):void{ _direction = _arg1; invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("directionChanged")); } public function get direction():String{ return (_direction); } } }//package mx.controls.scrollClasses
Section 129
//ScrollBarDirection (mx.controls.scrollClasses.ScrollBarDirection) package mx.controls.scrollClasses { public final class ScrollBarDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.controls.scrollClasses
Section 130
//ScrollThumb (mx.controls.scrollClasses.ScrollThumb) package mx.controls.scrollClasses { import flash.geom.*; import flash.events.*; import mx.events.*; import mx.controls.*; public class ScrollThumb extends Button { private var lastY:Number; private var datamin:Number; private var ymax:Number; private var ymin:Number; private var datamax:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public function ScrollThumb(){ explicitMinHeight = 10; stickyHighlighting = true; } private function stopDragThumb():void{ var _local1:ScrollBar = ScrollBar(parent); _local1.isScrolling = false; _local1.dispatchScrollEvent(_local1.oldPosition, ScrollEventDetail.THUMB_POSITION); _local1.oldPosition = NaN; systemManager.getSandboxRoot().removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true); } override protected function mouseDownHandler(_arg1:MouseEvent):void{ super.mouseDownHandler(_arg1); var _local2:ScrollBar = ScrollBar(parent); _local2.oldPosition = _local2.scrollPosition; lastY = _arg1.localY; systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true); } private function mouseMoveHandler(_arg1:MouseEvent):void{ if (ymin == ymax){ return; }; var _local2:Point = new Point(_arg1.stageX, _arg1.stageY); _local2 = globalToLocal(_local2); var _local3:Number = (_local2.y - lastY); _local3 = (_local3 + y); if (_local3 < ymin){ _local3 = ymin; } else { if (_local3 > ymax){ _local3 = ymax; }; }; var _local4:ScrollBar = ScrollBar(parent); _local4.isScrolling = true; $y = _local3; var _local5:Number = _local4.scrollPosition; var _local6:Number = (Math.round((((datamax - datamin) * (y - ymin)) / (ymax - ymin))) + datamin); _local4.scrollPosition = _local6; _local4.dispatchScrollEvent(_local5, ScrollEventDetail.THUMB_TRACK); _arg1.updateAfterEvent(); } override mx_internal function buttonReleased():void{ super.buttonReleased(); stopDragThumb(); } mx_internal function setRange(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ this.ymin = _arg1; this.ymax = _arg2; this.datamin = _arg3; this.datamax = _arg4; } } }//package mx.controls.scrollClasses
Section 131
//Button (mx.controls.Button) package mx.controls { import flash.display.*; import flash.text.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.listClasses.*; import flash.utils.*; import flash.ui.*; import mx.controls.dataGridClasses.*; public class Button extends UIComponent implements IDataRenderer, IDropInListItemRenderer, IFocusManagerComponent, IListItemRenderer, IFontContextComponent, IButton { mx_internal var _emphasized:Boolean;// = false mx_internal var extraSpacing:Number;// = 20 private var icons:Array; public var selectedField:String;// = null private var labelChanged:Boolean;// = false private var skinMeasuredWidth:Number; mx_internal var checkedDefaultSkin:Boolean;// = false private var autoRepeatTimer:Timer; mx_internal var disabledIconName:String;// = "disabledIcon" mx_internal var disabledSkinName:String;// = "disabledSkin" mx_internal var checkedDefaultIcon:Boolean;// = false public var stickyHighlighting:Boolean;// = false private var enabledChanged:Boolean;// = false mx_internal var selectedUpIconName:String;// = "selectedUpIcon" mx_internal var selectedUpSkinName:String;// = "selectedUpSkin" mx_internal var upIconName:String;// = "upIcon" mx_internal var upSkinName:String;// = "upSkin" mx_internal var centerContent:Boolean;// = true mx_internal var buttonOffset:Number;// = 0 private var skinMeasuredHeight:Number; private var oldUnscaledWidth:Number; mx_internal var downIconName:String;// = "downIcon" mx_internal var _labelPlacement:String;// = "right" mx_internal var downSkinName:String;// = "downSkin" mx_internal var _toggle:Boolean;// = false private var _phase:String;// = "up" private var toolTipSet:Boolean;// = false private var _data:Object; mx_internal var currentIcon:IFlexDisplayObject; mx_internal var currentSkin:IFlexDisplayObject; mx_internal var overIconName:String;// = "overIcon" mx_internal var selectedDownIconName:String;// = "selectedDownIcon" mx_internal var overSkinName:String;// = "overSkin" mx_internal var iconName:String;// = "icon" mx_internal var skinName:String;// = "skin" mx_internal var selectedDownSkinName:String;// = "selectedDownSkin" private var skins:Array; private var selectedSet:Boolean; private var _autoRepeat:Boolean;// = false private var styleChangedFlag:Boolean;// = true mx_internal var selectedOverIconName:String;// = "selectedOverIcon" private var _listData:BaseListData; mx_internal var selectedOverSkinName:String;// = "selectedOverSkin" protected var textField:IUITextField; private var labelSet:Boolean; mx_internal var defaultIconUsesStates:Boolean;// = false mx_internal var defaultSkinUsesStates:Boolean;// = false mx_internal var toggleChanged:Boolean;// = false private var emphasizedChanged:Boolean;// = false private var _label:String;// = "" mx_internal var _selected:Boolean;// = false mx_internal var selectedDisabledIconName:String;// = "selectedDisabledIcon" mx_internal var selectedDisabledSkinName:String;// = "selectedDisabledSkin" mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var createAccessibilityImplementation:Function; mx_internal static var TEXT_WIDTH_PADDING:Number = 6; public function Button(){ skins = []; icons = []; super(); mouseChildren = false; addEventListener(MouseEvent.ROLL_OVER, rollOverHandler); addEventListener(MouseEvent.ROLL_OUT, rollOutHandler); addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); addEventListener(MouseEvent.CLICK, clickHandler); } private function previousVersion_measure():void{ var bm:EdgeMetrics; var lineMetrics:TextLineMetrics; var paddingLeft:Number; var paddingRight:Number; var paddingTop:Number; var paddingBottom:Number; var horizontalGap:Number; super.measure(); var textWidth:Number = 0; var textHeight:Number = 0; if (label){ lineMetrics = measureText(label); textWidth = lineMetrics.width; textHeight = lineMetrics.height; paddingLeft = getStyle("paddingLeft"); paddingRight = getStyle("paddingRight"); paddingTop = getStyle("paddingTop"); paddingBottom = getStyle("paddingBottom"); textWidth = (textWidth + ((paddingLeft + paddingRight) + getStyle("textIndent"))); textHeight = (textHeight + (paddingTop + paddingBottom)); }; try { bm = currentSkin["borderMetrics"]; } catch(e:Error) { bm = new EdgeMetrics(3, 3, 3, 3); }; var tempCurrentIcon:IFlexDisplayObject = getCurrentIcon(); var iconWidth:Number = (tempCurrentIcon) ? tempCurrentIcon.width : 0; var iconHeight:Number = (tempCurrentIcon) ? tempCurrentIcon.height : 0; var w:Number = 0; var h:Number = 0; if ((((labelPlacement == ButtonLabelPlacement.LEFT)) || ((labelPlacement == ButtonLabelPlacement.RIGHT)))){ w = (textWidth + iconWidth); if (iconWidth != 0){ horizontalGap = getStyle("horizontalGap"); w = (w + (horizontalGap - 2)); }; h = Math.max(textHeight, (iconHeight + 6)); } else { w = Math.max(textWidth, iconWidth); h = (textHeight + iconHeight); if (iconHeight != 0){ h = (h + getStyle("verticalGap")); }; }; if (bm){ w = (w + (bm.left + bm.right)); h = (h + (bm.top + bm.bottom)); }; if (((label) && (!((label.length == 0))))){ w = (w + extraSpacing); } else { w = (w + 6); }; if (((currentSkin) && (((isNaN(skinMeasuredWidth)) || (isNaN(skinMeasuredHeight)))))){ skinMeasuredWidth = currentSkin.measuredWidth; skinMeasuredHeight = currentSkin.measuredHeight; }; if (!isNaN(skinMeasuredWidth)){ w = Math.max(skinMeasuredWidth, w); }; if (!isNaN(skinMeasuredHeight)){ h = Math.max(skinMeasuredHeight, h); }; measuredMinWidth = (measuredWidth = w); measuredMinHeight = (measuredHeight = h); } public function get label():String{ return (_label); } mx_internal function getCurrentIconName():String{ var _local1:String; if (!enabled){ _local1 = (selected) ? selectedDisabledIconName : disabledIconName; } else { if (phase == ButtonPhase.UP){ _local1 = (selected) ? selectedUpIconName : upIconName; } else { if (phase == ButtonPhase.OVER){ _local1 = (selected) ? selectedOverIconName : overIconName; } else { if (phase == ButtonPhase.DOWN){ _local1 = (selected) ? selectedDownIconName : downIconName; }; }; }; }; return (_local1); } protected function mouseUpHandler(_arg1:MouseEvent):void{ if (!enabled){ return; }; phase = ButtonPhase.OVER; buttonReleased(); if (!toggle){ _arg1.updateAfterEvent(); }; } override protected function adjustFocusRect(_arg1:DisplayObject=null):void{ super.adjustFocusRect((currentSkin) ? this : DisplayObject(currentIcon)); } mx_internal function set phase(_arg1:String):void{ _phase = _arg1; invalidateSize(); invalidateDisplayList(); } mx_internal function viewIconForPhase(_arg1:String):IFlexDisplayObject{ var _local3:IFlexDisplayObject; var _local4:Boolean; var _local5:String; var _local2:Class = Class(getStyle(_arg1)); if (!_local2){ _local2 = Class(getStyle(iconName)); if (defaultIconUsesStates){ _arg1 = iconName; }; if (((!(checkedDefaultIcon)) && (_local2))){ _local3 = IFlexDisplayObject(new (_local2)); if (((!((_local3 is IProgrammaticSkin))) && ((_local3 is IStateClient)))){ defaultIconUsesStates = true; _arg1 = iconName; }; if (_local3){ checkedDefaultIcon = true; }; }; }; _local3 = IFlexDisplayObject(getChildByName(_arg1)); if (_local3 == null){ if (_local2 != null){ _local3 = IFlexDisplayObject(new (_local2)); _local3.name = _arg1; if ((_local3 is ISimpleStyleClient)){ ISimpleStyleClient(_local3).styleName = this; }; addChild(DisplayObject(_local3)); _local4 = false; if ((_local3 is IInvalidating)){ IInvalidating(_local3).validateNow(); _local4 = true; } else { if ((_local3 is IProgrammaticSkin)){ IProgrammaticSkin(_local3).validateDisplayList(); _local4 = true; }; }; if (((_local3) && ((_local3 is IUIComponent)))){ IUIComponent(_local3).enabled = enabled; }; if (_local4){ _local3.setActualSize(_local3.measuredWidth, _local3.measuredHeight); }; icons.push(_local3); }; }; if (currentIcon != null){ currentIcon.visible = false; }; currentIcon = _local3; if (((defaultIconUsesStates) && ((currentIcon is IStateClient)))){ _local5 = ""; if (!enabled){ _local5 = (selected) ? "selectedDisabled" : "disabled"; } else { if (phase == ButtonPhase.UP){ _local5 = (selected) ? "selectedUp" : "up"; } else { if (phase == ButtonPhase.OVER){ _local5 = (selected) ? "selectedOver" : "over"; } else { if (phase == ButtonPhase.DOWN){ _local5 = (selected) ? "selectedDown" : "down"; }; }; }; }; IStateClient(currentIcon).currentState = _local5; }; if (currentIcon != null){ currentIcon.visible = true; }; return (_local3); } mx_internal function viewSkinForPhase(_arg1:String, _arg2:String):void{ var _local4:IFlexDisplayObject; var _local5:Number; var _local6:ISimpleStyleClient; var _local3:Class = Class(getStyle(_arg1)); if (!_local3){ _local3 = Class(getStyle(skinName)); if (defaultSkinUsesStates){ _arg1 = skinName; }; if (((!(checkedDefaultSkin)) && (_local3))){ _local4 = IFlexDisplayObject(new (_local3)); if (((!((_local4 is IProgrammaticSkin))) && ((_local4 is IStateClient)))){ defaultSkinUsesStates = true; _arg1 = skinName; }; if (_local4){ checkedDefaultSkin = true; }; }; }; _local4 = IFlexDisplayObject(getChildByName(_arg1)); if (!_local4){ if (_local3){ _local4 = IFlexDisplayObject(new (_local3)); _local4.name = _arg1; _local6 = (_local4 as ISimpleStyleClient); if (_local6){ _local6.styleName = this; }; addChild(DisplayObject(_local4)); _local4.setActualSize(unscaledWidth, unscaledHeight); if ((((_local4 is IInvalidating)) && (initialized))){ IInvalidating(_local4).validateNow(); } else { if ((((_local4 is IProgrammaticSkin)) && (initialized))){ IProgrammaticSkin(_local4).validateDisplayList(); }; }; skins.push(_local4); }; }; if (currentSkin){ currentSkin.visible = false; }; currentSkin = _local4; if (((defaultSkinUsesStates) && ((currentSkin is IStateClient)))){ IStateClient(currentSkin).currentState = _arg2; }; if (currentSkin){ currentSkin.visible = true; }; if (enabled){ if (phase == ButtonPhase.OVER){ _local5 = textField.getStyle("textRollOverColor"); } else { if (phase == ButtonPhase.DOWN){ _local5 = textField.getStyle("textSelectedColor"); } else { _local5 = textField.getStyle("color"); }; }; textField.setColor(_local5); }; } mx_internal function getTextField():IUITextField{ return (textField); } protected function rollOverHandler(_arg1:MouseEvent):void{ if (phase == ButtonPhase.UP){ if (_arg1.buttonDown){ return; }; phase = ButtonPhase.OVER; _arg1.updateAfterEvent(); } else { if (phase == ButtonPhase.OVER){ phase = ButtonPhase.DOWN; _arg1.updateAfterEvent(); if (autoRepeatTimer){ autoRepeatTimer.start(); }; }; }; } override protected function createChildren():void{ super.createChildren(); if (!textField){ textField = IUITextField(createInFontContext(UITextField)); textField.styleName = this; addChild(DisplayObject(textField)); }; } mx_internal function setSelected(_arg1:Boolean, _arg2:Boolean=false):void{ if (_selected != _arg1){ _selected = _arg1; invalidateDisplayList(); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ if (toggle){ dispatchEvent(new Event(Event.CHANGE)); }; } else { if (((toggle) && (!(_arg2)))){ dispatchEvent(new Event(Event.CHANGE)); }; }; dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); }; } private function autoRepeatTimer_timerDelayHandler(_arg1:Event):void{ if (!enabled){ return; }; dispatchEvent(new FlexEvent(FlexEvent.BUTTON_DOWN)); if (autoRepeat){ autoRepeatTimer.reset(); autoRepeatTimer.removeEventListener(TimerEvent.TIMER, autoRepeatTimer_timerDelayHandler); autoRepeatTimer.delay = getStyle("repeatInterval"); autoRepeatTimer.addEventListener(TimerEvent.TIMER, autoRepeatTimer_timerHandler); autoRepeatTimer.start(); }; } public function get autoRepeat():Boolean{ return (_autoRepeat); } public function set selected(_arg1:Boolean):void{ selectedSet = true; setSelected(_arg1, true); } override protected function focusOutHandler(_arg1:FocusEvent):void{ super.focusOutHandler(_arg1); if (phase != ButtonPhase.UP){ phase = ButtonPhase.UP; }; } public function get labelPlacement():String{ return (_labelPlacement); } public function set autoRepeat(_arg1:Boolean):void{ _autoRepeat = _arg1; if (_arg1){ autoRepeatTimer = new Timer(1); } else { autoRepeatTimer = null; }; } mx_internal function changeIcons():void{ var _local1:int = icons.length; var _local2:int; while (_local2 < _local1) { removeChild(icons[_local2]); _local2++; }; icons = []; checkedDefaultIcon = false; defaultIconUsesStates = false; } public function set data(_arg1:Object):void{ var _local2:*; var _local3:*; _data = _arg1; if (((((_listData) && ((_listData is DataGridListData)))) && (!((DataGridListData(_listData).dataField == null))))){ _local2 = _data[DataGridListData(_listData).dataField]; _local3 = ""; } else { if (_listData){ if (selectedField){ _local2 = _data[selectedField]; }; _local3 = _listData.label; } else { _local2 = _data; }; }; if (((!((_local2 === undefined))) && (!(selectedSet)))){ selected = (_local2 as Boolean); selectedSet = false; }; if (((!((_local3 === undefined))) && (!(labelSet)))){ label = _local3; labelSet = false; }; dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } mx_internal function getCurrentIcon():IFlexDisplayObject{ var _local1:String = getCurrentIconName(); if (!_local1){ return (null); }; return (viewIconForPhase(_local1)); } public function get fontContext():IFlexModuleFactory{ return (moduleFactory); } public function get emphasized():Boolean{ return (_emphasized); } public function get listData():BaseListData{ return (_listData); } mx_internal function layoutContents(_arg1:Number, _arg2:Number, _arg3:Boolean):void{ var _local20:TextLineMetrics; var _local28:MoveEvent; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ previousVersion_layoutContents(_arg1, _arg2, _arg3); return; }; var _local4:Number = 0; var _local5:Number = 0; var _local6:Number = 0; var _local7:Number = 0; var _local8:Number = 0; var _local9:Number = 0; var _local10:Number = 0; var _local11:Number = 0; var _local12:Number = 0; var _local13:Number = 0; var _local14:Number = getStyle("paddingLeft"); var _local15:Number = getStyle("paddingRight"); var _local16:Number = getStyle("paddingTop"); var _local17:Number = getStyle("paddingBottom"); var _local18:Number = 0; var _local19:Number = 0; if (label){ _local20 = measureText(label); _local18 = (_local20.width + TEXT_WIDTH_PADDING); _local19 = (_local20.height + UITextField.TEXT_HEIGHT_PADDING); } else { _local20 = measureText("Wj"); _local19 = (_local20.height + UITextField.TEXT_HEIGHT_PADDING); }; var _local21:Number = (_arg3) ? buttonOffset : 0; var _local22:String = getStyle("textAlign"); var _local23:Number = _arg1; var _local24:Number = _arg2; var _local25:EdgeMetrics = (((((currentSkin) && ((currentSkin is IBorder)))) && (!((currentSkin is IFlexAsset))))) ? IBorder(currentSkin).borderMetrics : null; if (_local25){ _local23 = (_local23 - (_local25.left + _local25.right)); _local24 = (_local24 - (_local25.top + _local25.bottom)); }; if (currentIcon){ _local8 = currentIcon.width; _local9 = currentIcon.height; }; if ((((labelPlacement == ButtonLabelPlacement.LEFT)) || ((labelPlacement == ButtonLabelPlacement.RIGHT)))){ _local12 = getStyle("horizontalGap"); if ((((_local8 == 0)) || ((_local18 == 0)))){ _local12 = 0; }; if (_local18 > 0){ _local4 = Math.max(Math.min(((((_local23 - _local8) - _local12) - _local14) - _local15), _local18), 0); textField.width = _local4; } else { _local4 = 0; textField.width = _local4; }; _local5 = Math.min(_local24, _local19); textField.height = _local5; if (_local22 == "left"){ _local6 = (_local6 + _local14); } else { if (_local22 == "right"){ _local6 = (_local6 + ((((_local23 - _local4) - _local8) - _local12) - _local15)); } else { _local6 = (_local6 + (((((((_local23 - _local4) - _local8) - _local12) - _local14) - _local15) / 2) + _local14)); }; }; if (labelPlacement == ButtonLabelPlacement.RIGHT){ _local6 = (_local6 + (_local8 + _local12)); _local10 = (_local6 - (_local8 + _local12)); } else { _local10 = ((_local6 + _local4) + _local12); }; _local11 = (((((_local24 - _local9) - _local16) - _local17) / 2) + _local16); _local7 = (((((_local24 - _local5) - _local16) - _local17) / 2) + _local16); } else { _local13 = getStyle("verticalGap"); if ((((_local9 == 0)) || ((label == "")))){ _local13 = 0; }; if (_local18 > 0){ _local4 = Math.max(((_local23 - _local14) - _local15), 0); textField.width = _local4; _local5 = Math.min(((((_local24 - _local9) - _local16) - _local17) - _local13), _local19); textField.height = _local5; } else { _local4 = 0; textField.width = _local4; _local5 = 0; textField.height = _local5; }; _local6 = _local14; if (_local22 == "left"){ _local10 = (_local10 + _local14); } else { if (_local22 == "right"){ _local10 = (_local10 + Math.max(((_local23 - _local8) - _local15), _local14)); } else { _local10 = (_local10 + (((((_local23 - _local8) - _local14) - _local15) / 2) + _local14)); }; }; if (labelPlacement == ButtonLabelPlacement.TOP){ _local7 = (_local7 + (((((((_local24 - _local5) - _local9) - _local16) - _local17) - _local13) / 2) + _local16)); _local11 = (_local11 + ((_local7 + _local5) + _local13)); } else { _local11 = (_local11 + (((((((_local24 - _local5) - _local9) - _local16) - _local17) - _local13) / 2) + _local16)); _local7 = (_local7 + ((_local11 + _local9) + _local13)); }; }; var _local26:Number = _local21; var _local27:Number = _local21; if (_local25){ _local26 = (_local26 + _local25.left); _local27 = (_local27 + _local25.top); }; textField.x = Math.round((_local6 + _local26)); textField.y = Math.round((_local7 + _local27)); if (currentIcon){ _local10 = (_local10 + _local26); _local11 = (_local11 + _local27); _local28 = new MoveEvent(MoveEvent.MOVE); _local28.oldX = currentIcon.x; _local28.oldY = currentIcon.y; currentIcon.x = Math.round(_local10); currentIcon.y = Math.round(_local11); currentIcon.dispatchEvent(_local28); }; if (currentSkin){ setChildIndex(DisplayObject(currentSkin), (numChildren - 1)); }; if (currentIcon){ setChildIndex(DisplayObject(currentIcon), (numChildren - 1)); }; if (textField){ setChildIndex(DisplayObject(textField), (numChildren - 1)); }; } protected function mouseDownHandler(_arg1:MouseEvent):void{ if (!enabled){ return; }; systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_UP, systemManager_mouseUpHandler, true); systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, stage_mouseLeaveHandler); buttonPressed(); _arg1.updateAfterEvent(); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ buttonPressed(); }; } protected function rollOutHandler(_arg1:MouseEvent):void{ if (phase == ButtonPhase.OVER){ phase = ButtonPhase.UP; _arg1.updateAfterEvent(); } else { if ((((phase == ButtonPhase.DOWN)) && (!(stickyHighlighting)))){ phase = ButtonPhase.OVER; _arg1.updateAfterEvent(); if (autoRepeatTimer){ autoRepeatTimer.stop(); }; }; }; } mx_internal function get phase():String{ return (_phase); } override public function set enabled(_arg1:Boolean):void{ if (super.enabled == _arg1){ return; }; super.enabled = _arg1; enabledChanged = true; invalidateProperties(); invalidateDisplayList(); } override protected function measure():void{ var _local9:TextLineMetrics; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ previousVersion_measure(); return; }; super.measure(); var _local1:Number = 0; var _local2:Number = 0; if (label){ _local9 = measureText(label); _local1 = (_local9.width + TEXT_WIDTH_PADDING); _local2 = (_local9.height + UITextField.TEXT_HEIGHT_PADDING); }; var _local3:IFlexDisplayObject = getCurrentIcon(); var _local4:Number = (_local3) ? _local3.width : 0; var _local5:Number = (_local3) ? _local3.height : 0; var _local6:Number = 0; var _local7:Number = 0; if ((((labelPlacement == ButtonLabelPlacement.LEFT)) || ((labelPlacement == ButtonLabelPlacement.RIGHT)))){ _local6 = (_local1 + _local4); if (((_local1) && (_local4))){ _local6 = (_local6 + getStyle("horizontalGap")); }; _local7 = Math.max(_local2, _local5); } else { _local6 = Math.max(_local1, _local4); _local7 = (_local2 + _local5); if (((_local2) && (_local5))){ _local7 = (_local7 + getStyle("verticalGap")); }; }; if (((_local1) || (_local4))){ _local6 = (_local6 + (getStyle("paddingLeft") + getStyle("paddingRight"))); _local7 = (_local7 + (getStyle("paddingTop") + getStyle("paddingBottom"))); }; var _local8:EdgeMetrics = (((((currentSkin) && ((currentSkin is IBorder)))) && (!((currentSkin is IFlexAsset))))) ? IBorder(currentSkin).borderMetrics : null; if (_local8){ _local6 = (_local6 + (_local8.left + _local8.right)); _local7 = (_local7 + (_local8.top + _local8.bottom)); }; if (((currentSkin) && (((isNaN(skinMeasuredWidth)) || (isNaN(skinMeasuredHeight)))))){ skinMeasuredWidth = currentSkin.measuredWidth; skinMeasuredHeight = currentSkin.measuredHeight; }; if (!isNaN(skinMeasuredWidth)){ _local6 = Math.max(skinMeasuredWidth, _local6); }; if (!isNaN(skinMeasuredHeight)){ _local7 = Math.max(skinMeasuredHeight, _local7); }; measuredMinWidth = (measuredWidth = _local6); measuredMinHeight = (measuredHeight = _local7); } public function get toggle():Boolean{ return (_toggle); } mx_internal function buttonReleased():void{ systemManager.getSandboxRoot().removeEventListener(MouseEvent.MOUSE_UP, systemManager_mouseUpHandler, true); systemManager.getSandboxRoot().removeEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, stage_mouseLeaveHandler); if (autoRepeatTimer){ autoRepeatTimer.removeEventListener(TimerEvent.TIMER, autoRepeatTimer_timerDelayHandler); autoRepeatTimer.removeEventListener(TimerEvent.TIMER, autoRepeatTimer_timerHandler); autoRepeatTimer.reset(); }; } mx_internal function buttonPressed():void{ phase = ButtonPhase.DOWN; dispatchEvent(new FlexEvent(FlexEvent.BUTTON_DOWN)); if (autoRepeat){ autoRepeatTimer.delay = getStyle("repeatDelay"); autoRepeatTimer.addEventListener(TimerEvent.TIMER, autoRepeatTimer_timerDelayHandler); autoRepeatTimer.start(); }; } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ buttonReleased(); if (phase == ButtonPhase.DOWN){ dispatchEvent(new MouseEvent(MouseEvent.CLICK)); }; phase = ButtonPhase.UP; }; } public function get selected():Boolean{ return (_selected); } public function set labelPlacement(_arg1:String):void{ _labelPlacement = _arg1; invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("labelPlacementChanged")); } protected function clickHandler(_arg1:MouseEvent):void{ if (!enabled){ _arg1.stopImmediatePropagation(); return; }; if (toggle){ setSelected(!(selected)); _arg1.updateAfterEvent(); }; } override protected function initializeAccessibility():void{ if (Button.createAccessibilityImplementation != null){ Button.createAccessibilityImplementation(this); }; } public function set toggle(_arg1:Boolean):void{ _toggle = _arg1; toggleChanged = true; invalidateProperties(); invalidateDisplayList(); dispatchEvent(new Event("toggleChanged")); } override public function get baselinePosition():Number{ var _local1:String; var _local2:TextLineMetrics; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local1 = label; if (!_local1){ _local1 = "Wj"; }; validateNow(); if (((!(label)) && ((((labelPlacement == ButtonLabelPlacement.TOP)) || ((labelPlacement == ButtonLabelPlacement.BOTTOM)))))){ _local2 = measureText(_local1); return ((((measuredHeight - _local2.height) / 2) + _local2.ascent)); }; return ((textField.y + measureText(_local1).ascent)); }; if (!validateBaselinePosition()){ return (NaN); }; return ((textField.y + textField.baselinePosition)); } public function get data():Object{ return (_data); } public function set fontContext(_arg1:IFlexModuleFactory):void{ this.moduleFactory = _arg1; } mx_internal function viewSkin():void{ var _local1:String; var _local2:String; if (!enabled){ _local1 = (selected) ? selectedDisabledSkinName : disabledSkinName; _local2 = (selected) ? "selectedDisabled" : "disabled"; } else { if (phase == ButtonPhase.UP){ _local1 = (selected) ? selectedUpSkinName : upSkinName; _local2 = (selected) ? "selectedUp" : "up"; } else { if (phase == ButtonPhase.OVER){ _local1 = (selected) ? selectedOverSkinName : overSkinName; _local2 = (selected) ? "selectedOver" : "over"; } else { if (phase == ButtonPhase.DOWN){ _local1 = (selected) ? selectedDownSkinName : downSkinName; _local2 = (selected) ? "selectedDown" : "down"; }; }; }; }; viewSkinForPhase(_local1, _local2); } override public function styleChanged(_arg1:String):void{ styleChangedFlag = true; super.styleChanged(_arg1); if (((!(_arg1)) || ((_arg1 == "styleName")))){ changeSkins(); changeIcons(); if (initialized){ viewSkin(); viewIcon(); }; } else { if (_arg1.toLowerCase().indexOf("skin") != -1){ changeSkins(); } else { if (_arg1.toLowerCase().indexOf("icon") != -1){ changeIcons(); invalidateSize(); }; }; }; } public function set emphasized(_arg1:Boolean):void{ _emphasized = _arg1; emphasizedChanged = true; invalidateDisplayList(); } mx_internal function viewIcon():void{ var _local1:String = getCurrentIconName(); viewIconForPhase(_local1); } override public function set toolTip(_arg1:String):void{ super.toolTip = _arg1; if (_arg1){ toolTipSet = true; } else { toolTipSet = false; invalidateDisplayList(); }; } override protected function commitProperties():void{ super.commitProperties(); if (((hasFontContextChanged()) && (!((textField == null))))){ removeChild(DisplayObject(textField)); textField = null; }; if (!textField){ textField = IUITextField(createInFontContext(UITextField)); textField.styleName = this; addChild(DisplayObject(textField)); enabledChanged = true; toggleChanged = true; }; if (!initialized){ viewSkin(); viewIcon(); }; if (enabledChanged){ textField.enabled = enabled; if (((currentIcon) && ((currentIcon is IUIComponent)))){ IUIComponent(currentIcon).enabled = enabled; }; enabledChanged = false; }; if (toggleChanged){ if (!toggle){ selected = false; }; toggleChanged = false; }; } mx_internal function changeSkins():void{ var _local1:int = skins.length; var _local2:int; while (_local2 < _local1) { removeChild(skins[_local2]); _local2++; }; skins = []; skinMeasuredWidth = NaN; skinMeasuredHeight = NaN; checkedDefaultSkin = false; defaultSkinUsesStates = false; if (((initialized) && ((FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0)))){ viewSkin(); invalidateSize(); }; } private function autoRepeatTimer_timerHandler(_arg1:Event):void{ if (!enabled){ return; }; dispatchEvent(new FlexEvent(FlexEvent.BUTTON_DOWN)); } private function previousVersion_layoutContents(_arg1:Number, _arg2:Number, _arg3:Boolean):void{ var _local20:TextLineMetrics; var _local28:Number; var _local29:MoveEvent; var _local4:Number = 0; var _local5:Number = 0; var _local6:Number = 0; var _local7:Number = 0; var _local8:Number = 0; var _local9:Number = 0; var _local10:Number = 0; var _local11:Number = 0; var _local12:Number = 2; var _local13:Number = 2; var _local14:Number = getStyle("paddingLeft"); var _local15:Number = getStyle("paddingRight"); var _local16:Number = getStyle("paddingTop"); var _local17:Number = getStyle("paddingBottom"); var _local18:Number = 0; var _local19:Number = 0; if (label){ _local20 = measureText(label); if (_local20.width > 0){ _local18 = (((_local14 + _local15) + getStyle("textIndent")) + _local20.width); }; _local19 = _local20.height; } else { _local20 = measureText("Wj"); _local19 = _local20.height; }; var _local21:Number = (_arg3) ? buttonOffset : 0; var _local22:String = getStyle("textAlign"); var _local23:EdgeMetrics = (((currentSkin) && ((currentSkin is IRectangularBorder)))) ? IRectangularBorder(currentSkin).borderMetrics : null; var _local24:Number = _arg1; var _local25:Number = ((_arg2 - _local16) - _local17); if (_local23){ _local24 = (_local24 - (_local23.left + _local23.right)); _local25 = (_local25 - (_local23.top + _local23.bottom)); }; if (currentIcon){ _local8 = currentIcon.width; _local9 = currentIcon.height; }; if ((((labelPlacement == ButtonLabelPlacement.LEFT)) || ((labelPlacement == ButtonLabelPlacement.RIGHT)))){ _local12 = getStyle("horizontalGap"); if ((((_local8 == 0)) || ((_local18 == 0)))){ _local12 = 0; }; if (_local18 > 0){ _local4 = Math.max(((((_local24 - _local8) - _local12) - _local14) - _local15), 0); textField.width = _local4; } else { _local4 = 0; textField.width = _local4; }; _local5 = Math.min((_local25 + 2), (_local19 + UITextField.TEXT_HEIGHT_PADDING)); textField.height = _local5; if (labelPlacement == ButtonLabelPlacement.RIGHT){ _local6 = (_local8 + _local12); if (centerContent){ if (_local22 == "left"){ _local6 = (_local6 + _local14); } else { if (_local22 == "right"){ _local6 = (_local6 + ((((_local24 - _local4) - _local8) - _local12) - _local14)); } else { _local28 = ((((_local24 - _local4) - _local8) - _local12) / 2); _local6 = (_local6 + Math.max(_local28, _local14)); }; }; }; _local10 = (_local6 - (_local8 + _local12)); if (!centerContent){ _local6 = (_local6 + _local14); }; } else { _local6 = ((((_local24 - _local4) - _local8) - _local12) - _local15); if (centerContent){ if (_local22 == "left"){ _local6 = 2; } else { if (_local22 == "right"){ _local6--; } else { if (_local6 > 0){ _local6 = (_local6 / 2); }; }; }; }; _local10 = ((_local6 + _local4) + _local12); }; _local7 = 0; _local11 = _local7; if (centerContent){ _local11 = (Math.round(((_local25 - _local9) / 2)) + _local16); _local7 = (Math.round(((_local25 - _local5) / 2)) + _local16); } else { _local7 = (_local7 + (Math.max(0, ((_local25 - _local5) / 2)) + _local16)); _local11 = (_local11 + (Math.max(0, (((_local25 - _local9) / 2) - 1)) + _local16)); }; } else { _local13 = getStyle("verticalGap"); if ((((_local9 == 0)) || ((_local19 == 0)))){ _local13 = 0; }; if (_local18 > 0){ _local4 = Math.min(_local24, (_local18 + UITextField.TEXT_WIDTH_PADDING)); textField.width = _local4; _local5 = Math.min(((_local25 - _local9) + 1), (_local19 + 5)); textField.height = _local5; } else { _local4 = 0; textField.width = _local4; _local5 = 0; textField.height = _local5; }; _local6 = ((_local24 - _local4) / 2); _local10 = ((_local24 - _local8) / 2); if (labelPlacement == ButtonLabelPlacement.TOP){ _local7 = (((_local25 - _local5) - _local9) - _local13); if (((centerContent) && ((_local7 > 0)))){ _local7 = (_local7 / 2); }; _local7 = (_local7 + _local16); _local11 = (((_local7 + _local5) + _local13) - 3); } else { _local7 = ((_local9 + _local13) + _local16); if (centerContent){ _local7 = (_local7 + (((((_local25 - _local5) - _local9) - _local13) / 2) + 1)); }; _local11 = (((_local7 - _local9) - _local13) + 3); }; }; var _local26:Number = _local21; var _local27:Number = _local21; if (_local23){ _local26 = (_local26 + _local23.left); _local27 = (_local27 + _local23.top); }; textField.x = (_local6 + _local26); textField.y = (_local7 + _local27); if (currentIcon){ _local10 = (_local10 + _local26); _local11 = (_local11 + _local27); _local29 = new MoveEvent(MoveEvent.MOVE); _local29.oldX = currentIcon.x; _local29.oldY = currentIcon.y; currentIcon.x = Math.round(_local10); currentIcon.y = Math.round(_local11); currentIcon.dispatchEvent(_local29); }; if (currentSkin){ setChildIndex(DisplayObject(currentSkin), (numChildren - 1)); }; if (currentIcon){ setChildIndex(DisplayObject(currentIcon), (numChildren - 1)); }; if (textField){ setChildIndex(DisplayObject(textField), (numChildren - 1)); }; } private function systemManager_mouseUpHandler(_arg1:MouseEvent):void{ if (contains(DisplayObject(_arg1.target))){ return; }; phase = ButtonPhase.UP; buttonReleased(); _arg1.updateAfterEvent(); } public function set label(_arg1:String):void{ labelSet = true; if (_label != _arg1){ _label = _arg1; labelChanged = true; invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("labelChanged")); }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local5:IFlexDisplayObject; var _local6:Boolean; super.updateDisplayList(_arg1, _arg2); if (emphasizedChanged){ changeSkins(); emphasizedChanged = false; }; var _local3:int = skins.length; var _local4:int; while (_local4 < _local3) { _local5 = IFlexDisplayObject(skins[_local4]); _local5.setActualSize(_arg1, _arg2); _local4++; }; viewSkin(); viewIcon(); layoutContents(_arg1, _arg2, (phase == ButtonPhase.DOWN)); if ((((((((oldUnscaledWidth > _arg1)) || (!((textField.text == label))))) || (labelChanged))) || (styleChangedFlag))){ textField.text = label; _local6 = textField.truncateToFit(); if (!toolTipSet){ if (_local6){ super.toolTip = label; } else { super.toolTip = null; }; }; styleChangedFlag = false; labelChanged = false; }; oldUnscaledWidth = _arg1; } private function stage_mouseLeaveHandler(_arg1:Event):void{ phase = ButtonPhase.UP; buttonReleased(); } public function set listData(_arg1:BaseListData):void{ _listData = _arg1; } } }//package mx.controls
Section 132
//ButtonLabelPlacement (mx.controls.ButtonLabelPlacement) package mx.controls { public final class ButtonLabelPlacement { public static const TOP:String = "top"; public static const LEFT:String = "left"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const BOTTOM:String = "bottom"; public static const RIGHT:String = "right"; } }//package mx.controls
Section 133
//ButtonPhase (mx.controls.ButtonPhase) package mx.controls { public final class ButtonPhase { public static const DOWN:String = "down"; public static const OVER:String = "over"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const UP:String = "up"; } }//package mx.controls
Section 134
//HScrollBar (mx.controls.HScrollBar) package mx.controls { import mx.controls.scrollClasses.*; import flash.ui.*; public class HScrollBar extends ScrollBar { mx_internal static const VERSION:String = "3.2.0.3794"; public function HScrollBar(){ super.direction = ScrollBarDirection.HORIZONTAL; scaleX = -1; rotation = -90; } override mx_internal function get virtualHeight():Number{ return (unscaledWidth); } override protected function measure():void{ super.measure(); measuredWidth = _minHeight; measuredHeight = _minWidth; } override public function get minHeight():Number{ return (_minWidth); } override mx_internal function get virtualWidth():Number{ return (unscaledHeight); } override public function get minWidth():Number{ return (_minHeight); } override mx_internal function isScrollBarKey(_arg1:uint):Boolean{ if (_arg1 == Keyboard.LEFT){ lineScroll(-1); return (true); }; if (_arg1 == Keyboard.RIGHT){ lineScroll(1); return (true); }; return (super.isScrollBarKey(_arg1)); } override public function set direction(_arg1:String):void{ } } }//package mx.controls
Section 135
//IFlexContextMenu (mx.controls.IFlexContextMenu) package mx.controls { import flash.display.*; public interface IFlexContextMenu { function setContextMenu(_arg1:InteractiveObject):void; function unsetContextMenu(_arg1:InteractiveObject):void; } }//package mx.controls
Section 136
//Label (mx.controls.Label) package mx.controls { import flash.display.*; import flash.geom.*; import flash.text.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.controls.listClasses.*; public class Label extends UIComponent implements IDataRenderer, IDropInListItemRenderer, IListItemRenderer, IFontContextComponent { private var _selectable:Boolean;// = false private var _text:String;// = "" private var _data:Object; mx_internal var htmlTextChanged:Boolean;// = false private var _tabIndex:int;// = -1 private var _textWidth:Number; private var explicitHTMLText:String;// = null private var enabledChanged:Boolean;// = false private var condenseWhiteChanged:Boolean;// = false private var _listData:BaseListData; private var _textHeight:Number; protected var textField:IUITextField; private var _htmlText:String;// = "" private var _condenseWhite:Boolean;// = false mx_internal var textChanged:Boolean;// = false public var truncateToFit:Boolean;// = true private var textSet:Boolean; private var selectableChanged:Boolean; private var toolTipSet:Boolean;// = false mx_internal static const VERSION:String = "3.2.0.3794"; public function Label(){ tabChildren = true; } override public function set enabled(_arg1:Boolean):void{ if (_arg1 == enabled){ return; }; super.enabled = _arg1; enabledChanged = true; invalidateProperties(); } private function textField_textFieldStyleChangeHandler(_arg1:Event):void{ textFieldChanged(true); } override public function get baselinePosition():Number{ var _local1:String; var _local2:TextLineMetrics; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ if (!textField){ return (NaN); }; validateNow(); _local1 = (isHTML) ? explicitHTMLText : text; if (_local1 == ""){ _local1 = " "; }; _local2 = (isHTML) ? measureHTMLText(_local1) : measureText(_local1); return ((textField.y + _local2.ascent)); }; if (!validateBaselinePosition()){ return (NaN); }; return ((textField.y + textField.baselinePosition)); } public function set condenseWhite(_arg1:Boolean):void{ if (_arg1 == _condenseWhite){ return; }; _condenseWhite = _arg1; condenseWhiteChanged = true; if (isHTML){ htmlTextChanged = true; }; invalidateProperties(); invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("condenseWhiteChanged")); } public function get textWidth():Number{ return (_textWidth); } override protected function createChildren():void{ super.createChildren(); if (!textField){ createTextField(-1); }; } mx_internal function getTextField():IUITextField{ return (textField); } private function measureTextFieldBounds(_arg1:String):Rectangle{ var _local2:TextLineMetrics = (isHTML) ? measureHTMLText(_arg1) : measureText(_arg1); return (new Rectangle(0, 0, (_local2.width + UITextField.TEXT_WIDTH_PADDING), (_local2.height + UITextField.TEXT_HEIGHT_PADDING))); } mx_internal function getMinimumText(_arg1:String):String{ if (((!(_arg1)) || ((_arg1.length < 2)))){ _arg1 = "Wj"; }; return (_arg1); } private function textFieldChanged(_arg1:Boolean):void{ var _local2:Boolean; var _local3:Boolean; if (!_arg1){ _local2 = !((_text == textField.text)); _text = textField.text; }; _local3 = !((_htmlText == textField.htmlText)); _htmlText = textField.htmlText; if (_local2){ dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); }; if (_local3){ dispatchEvent(new Event("htmlTextChanged")); }; _textWidth = textField.textWidth; _textHeight = textField.textHeight; } public function get data():Object{ return (_data); } public function get text():String{ return (_text); } mx_internal function removeTextField():void{ if (textField){ textField.removeEventListener("textFieldStyleChange", textField_textFieldStyleChangeHandler); textField.removeEventListener("textInsert", textField_textModifiedHandler); textField.removeEventListener("textReplace", textField_textModifiedHandler); removeChild(DisplayObject(textField)); textField = null; }; } public function get textHeight():Number{ return (_textHeight); } mx_internal function get styleSheet():StyleSheet{ return (textField.styleSheet); } public function set selectable(_arg1:Boolean):void{ if (_arg1 == selectable){ return; }; _selectable = _arg1; selectableChanged = true; invalidateProperties(); } override public function get tabIndex():int{ return (_tabIndex); } public function set fontContext(_arg1:IFlexModuleFactory):void{ this.moduleFactory = _arg1; } override public function set toolTip(_arg1:String):void{ super.toolTip = _arg1; toolTipSet = !((_arg1 == null)); } mx_internal function createTextField(_arg1:int):void{ if (!textField){ textField = IUITextField(createInFontContext(UITextField)); textField.enabled = enabled; textField.ignorePadding = true; textField.selectable = selectable; textField.styleName = this; textField.addEventListener("textFieldStyleChange", textField_textFieldStyleChangeHandler); textField.addEventListener("textInsert", textField_textModifiedHandler); textField.addEventListener("textReplace", textField_textModifiedHandler); if (_arg1 == -1){ addChild(DisplayObject(textField)); } else { addChildAt(DisplayObject(textField), _arg1); }; }; } override protected function commitProperties():void{ super.commitProperties(); if (((hasFontContextChanged()) && (!((textField == null))))){ removeTextField(); condenseWhiteChanged = true; enabledChanged = true; selectableChanged = true; textChanged = true; }; if (!textField){ createTextField(-1); }; if (condenseWhiteChanged){ textField.condenseWhite = _condenseWhite; condenseWhiteChanged = false; }; textField.tabIndex = tabIndex; if (enabledChanged){ textField.enabled = enabled; enabledChanged = false; }; if (selectableChanged){ textField.selectable = _selectable; selectableChanged = false; }; if (((textChanged) || (htmlTextChanged))){ if (isHTML){ textField.htmlText = explicitHTMLText; } else { textField.text = _text; }; textFieldChanged(false); textChanged = false; htmlTextChanged = false; }; } public function get condenseWhite():Boolean{ return (_condenseWhite); } public function set listData(_arg1:BaseListData):void{ _listData = _arg1; } private function get isHTML():Boolean{ return (!((explicitHTMLText == null))); } public function get selectable():Boolean{ return (_selectable); } public function set text(_arg1:String):void{ textSet = true; if (!_arg1){ _arg1 = ""; }; if (((!(isHTML)) && ((_arg1 == _text)))){ return; }; _text = _arg1; textChanged = true; _htmlText = null; explicitHTMLText = null; invalidateProperties(); invalidateSize(); invalidateDisplayList(); dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT)); } public function set data(_arg1:Object):void{ var _local2:*; _data = _arg1; if (_listData){ _local2 = _listData.label; } else { if (_data != null){ if ((_data is String)){ _local2 = String(_data); } else { _local2 = _data.toString(); }; }; }; if (((!((_local2 === undefined))) && (!(textSet)))){ text = _local2; textSet = false; }; dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); } override protected function measure():void{ super.measure(); var _local1:String = (isHTML) ? explicitHTMLText : text; _local1 = getMinimumText(_local1); var _local2:Rectangle = measureTextFieldBounds(_local1); measuredMinWidth = (measuredWidth = ((_local2.width + getStyle("paddingLeft")) + getStyle("paddingRight"))); measuredMinHeight = (measuredHeight = ((_local2.height + getStyle("paddingTop")) + getStyle("paddingBottom"))); } public function get fontContext():IFlexModuleFactory{ return (moduleFactory); } private function textField_textModifiedHandler(_arg1:Event):void{ textFieldChanged(false); } public function get listData():BaseListData{ return (_listData); } mx_internal function set styleSheet(_arg1:StyleSheet):void{ textField.styleSheet = _arg1; } public function set htmlText(_arg1:String):void{ textSet = true; if (!_arg1){ _arg1 = ""; }; if (((isHTML) && ((_arg1 == explicitHTMLText)))){ return; }; _htmlText = _arg1; htmlTextChanged = true; _text = null; explicitHTMLText = _arg1; invalidateProperties(); invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("htmlTextChanged")); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local9:Boolean; super.updateDisplayList(_arg1, _arg2); var _local3:Number = getStyle("paddingLeft"); var _local4:Number = getStyle("paddingTop"); var _local5:Number = getStyle("paddingRight"); var _local6:Number = getStyle("paddingBottom"); textField.setActualSize(((_arg1 - _local3) - _local5), ((_arg2 - _local4) - _local6)); textField.x = _local3; textField.y = _local4; var _local7:String = (isHTML) ? explicitHTMLText : text; var _local8:Rectangle = measureTextFieldBounds(_local7); if (truncateToFit){ if (isHTML){ _local9 = (_local8.width > textField.width); } else { textField.text = _text; _local9 = textField.truncateToFit(); }; if (!toolTipSet){ super.toolTip = (_local9) ? text : null; }; }; } public function get htmlText():String{ return (_htmlText); } public function getLineMetrics(_arg1:int):TextLineMetrics{ return ((textField) ? textField.getLineMetrics(_arg1) : null); } override public function set tabIndex(_arg1:int):void{ _tabIndex = _arg1; invalidateProperties(); } } }//package mx.controls
Section 137
//LinkButton (mx.controls.LinkButton) package mx.controls { import flash.text.*; import mx.core.*; public class LinkButton extends Button { mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var createAccessibilityImplementation:Function; public function LinkButton(){ buttonMode = true; extraSpacing = 4; } override protected function measure():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:TextLineMetrics; super.measure(); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local1 = 8; _local2 = 8; if (label){ _local7 = measureText(label); _local1 = (_local1 + _local7.width); _local2 = (_local2 + _local7.height); }; _local1 = (_local1 + (getStyle("paddingLeft") + getStyle("paddingRight"))); viewIcon(); viewSkin(); _local3 = (currentIcon) ? currentIcon.width : 0; _local4 = (currentIcon) ? currentIcon.height : 0; _local5 = 0; _local6 = 0; if ((((labelPlacement == ButtonLabelPlacement.LEFT)) || ((labelPlacement == ButtonLabelPlacement.RIGHT)))){ if (((label) && ((label.length > 0)))){ _local5 = (_local1 + _local3); } else { _local5 = _local3; }; if (_local3 != 0){ _local5 = (_local5 + getStyle("horizontalGap")); }; _local6 = Math.max(_local2, _local4); } else { _local5 = Math.max(_local1, _local3); if (((label) && ((label.length > 0)))){ _local6 = (_local2 + _local4); } else { _local6 = _local4; }; if (_local4 != 0){ _local6 = (_local6 + getStyle("verticalGap")); }; }; if (((label) && (!((label == ""))))){ _local5 = (_local5 + extraSpacing); }; _local5 = Math.max(20, _local5); _local6 = Math.max(14, _local6); measuredMinWidth = (measuredWidth = _local5); measuredMinHeight = (measuredHeight = _local6); }; } override public function set emphasized(_arg1:Boolean):void{ } override protected function initializeAccessibility():void{ if (createAccessibilityImplementation != null){ createAccessibilityImplementation(this); }; } } }//package mx.controls
Section 138
//Spacer (mx.controls.Spacer) package mx.controls { import mx.core.*; public class Spacer extends UIComponent { mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.controls
Section 139
//Text (mx.controls.Text) package mx.controls { import mx.core.*; import mx.events.*; public class Text extends Label { private var widthChanged:Boolean;// = true private var lastUnscaledWidth:Number;// = NAN mx_internal static const VERSION:String = "3.2.0.3794"; public function Text(){ selectable = true; truncateToFit = false; addEventListener(FlexEvent.UPDATE_COMPLETE, updateCompleteHandler); } private function measureUsingWidth(_arg1:Number):void{ var _local2:Number; var _local3:Number; var _local5:Number; var _local6:Boolean; _local2 = getStyle("paddingLeft"); _local3 = getStyle("paddingTop"); var _local4:Number = getStyle("paddingRight"); _local5 = getStyle("paddingBottom"); textField.validateNow(); textField.autoSize = "left"; if (!isNaN(_arg1)){ textField.width = ((_arg1 - _local2) - _local4); measuredWidth = (Math.ceil(textField.textWidth) + UITextField.TEXT_WIDTH_PADDING); measuredHeight = (Math.ceil(textField.textHeight) + UITextField.TEXT_HEIGHT_PADDING); } else { _local6 = textField.wordWrap; textField.wordWrap = false; measuredWidth = (Math.ceil(textField.textWidth) + UITextField.TEXT_WIDTH_PADDING); measuredHeight = (Math.ceil(textField.textHeight) + UITextField.TEXT_HEIGHT_PADDING); textField.wordWrap = _local6; }; textField.autoSize = "none"; measuredWidth = (measuredWidth + (_local2 + _local4)); measuredHeight = (measuredHeight + (_local3 + _local5)); if (isNaN(explicitWidth)){ measuredMinWidth = DEFAULT_MEASURED_MIN_WIDTH; measuredMinHeight = DEFAULT_MEASURED_MIN_HEIGHT; } else { measuredMinWidth = measuredWidth; measuredMinHeight = measuredHeight; }; } override public function set percentWidth(_arg1:Number):void{ if (_arg1 != percentWidth){ widthChanged = true; invalidateProperties(); invalidateSize(); }; super.percentWidth = _arg1; } override public function set explicitWidth(_arg1:Number):void{ if (_arg1 != explicitWidth){ widthChanged = true; invalidateProperties(); invalidateSize(); }; super.explicitWidth = _arg1; } private function updateCompleteHandler(_arg1:FlexEvent):void{ lastUnscaledWidth = NaN; } override protected function childrenCreated():void{ super.childrenCreated(); textField.wordWrap = true; textField.multiline = true; textField.mouseWheelEnabled = false; } override protected function commitProperties():void{ super.commitProperties(); if (widthChanged){ textField.wordWrap = ((!(isNaN(percentWidth))) || (!(isNaN(explicitWidth)))); widthChanged = false; }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local7:Boolean; if (isSpecialCase()){ _local7 = ((isNaN(lastUnscaledWidth)) || (!((lastUnscaledWidth == _arg1)))); lastUnscaledWidth = _arg1; if (_local7){ invalidateSize(); return; }; }; var _local3:Number = getStyle("paddingLeft"); var _local4:Number = getStyle("paddingTop"); var _local5:Number = getStyle("paddingRight"); var _local6:Number = getStyle("paddingBottom"); textField.setActualSize(((_arg1 - _local3) - _local5), ((_arg2 - _local4) - _local6)); textField.x = _local3; textField.y = _local4; if (Math.floor(width) < Math.floor(measuredWidth)){ textField.wordWrap = true; }; } override protected function measure():void{ if (isSpecialCase()){ if (!isNaN(lastUnscaledWidth)){ measureUsingWidth(lastUnscaledWidth); } else { measuredWidth = 0; measuredHeight = 0; }; return; }; measureUsingWidth(explicitWidth); } private function isSpecialCase():Boolean{ var _local1:Number = getStyle("left"); var _local2:Number = getStyle("right"); return (((((((!(isNaN(percentWidth))) || (((!(isNaN(_local1))) && (!(isNaN(_local2))))))) && (isNaN(explicitHeight)))) && (isNaN(percentHeight)))); } } }//package mx.controls
Section 140
//TileList (mx.controls.TileList) package mx.controls { import mx.core.*; import mx.controls.listClasses.*; public class TileList extends TileBase { mx_internal static const VERSION:String = "3.2.0.3794"; public function TileList(){ _horizontalScrollPolicy = ScrollPolicy.AUTO; itemRenderer = new ClassFactory(TileListItemRenderer); } } }//package mx.controls
Section 141
//ToolTip (mx.controls.ToolTip) package mx.controls { import flash.display.*; import flash.text.*; import mx.core.*; import mx.styles.*; public class ToolTip extends UIComponent implements IToolTip, IFontContextComponent { private var textChanged:Boolean; private var _text:String; protected var textField:IUITextField; mx_internal var border:IFlexDisplayObject; mx_internal static const VERSION:String = "3.2.0.3794"; public static var maxWidth:Number = 300; public function ToolTip(){ mouseEnabled = false; } public function set fontContext(_arg1:IFlexModuleFactory):void{ this.moduleFactory = _arg1; } override public function styleChanged(_arg1:String):void{ super.styleChanged(_arg1); if ((((((_arg1 == "borderStyle")) || ((_arg1 == "styleName")))) || ((_arg1 == null)))){ invalidateDisplayList(); }; } override protected function commitProperties():void{ var _local1:int; var _local2:TextFormat; super.commitProperties(); if (((hasFontContextChanged()) && (!((textField == null))))){ _local1 = getChildIndex(DisplayObject(textField)); removeTextField(); createTextField(_local1); invalidateSize(); textChanged = true; }; if (textChanged){ _local2 = textField.getTextFormat(); _local2.leftMargin = 0; _local2.rightMargin = 0; textField.defaultTextFormat = _local2; textField.text = _text; textChanged = false; }; } mx_internal function getTextField():IUITextField{ return (textField); } override protected function createChildren():void{ var _local1:Class; super.createChildren(); if (!border){ _local1 = getStyle("borderSkin"); border = new (_local1); if ((border is ISimpleStyleClient)){ ISimpleStyleClient(border).styleName = this; }; addChild(DisplayObject(border)); }; createTextField(-1); } override protected function measure():void{ var _local7:Number; super.measure(); var _local1:EdgeMetrics = borderMetrics; var _local2:Number = (_local1.left + getStyle("paddingLeft")); var _local3:Number = (_local1.top + getStyle("paddingTop")); var _local4:Number = (_local1.right + getStyle("paddingRight")); var _local5:Number = (_local1.bottom + getStyle("paddingBottom")); var _local6:Number = (_local2 + _local4); _local7 = (_local3 + _local5); textField.wordWrap = false; if ((textField.textWidth + _local6) > ToolTip.maxWidth){ textField.width = (ToolTip.maxWidth - _local6); textField.wordWrap = true; }; measuredWidth = (textField.width + _local6); measuredHeight = (textField.height + _local7); } public function get fontContext():IFlexModuleFactory{ return (moduleFactory); } public function set text(_arg1:String):void{ _text = _arg1; textChanged = true; invalidateProperties(); invalidateSize(); invalidateDisplayList(); } public function get text():String{ return (_text); } mx_internal function removeTextField():void{ if (textField){ removeChild(DisplayObject(textField)); textField = null; }; } mx_internal function createTextField(_arg1:int):void{ if (!textField){ textField = IUITextField(createInFontContext(UITextField)); textField.autoSize = TextFieldAutoSize.LEFT; textField.mouseEnabled = false; textField.multiline = true; textField.selectable = false; textField.wordWrap = false; textField.styleName = this; if (_arg1 == -1){ addChild(DisplayObject(textField)); } else { addChildAt(DisplayObject(textField), _arg1); }; }; } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:EdgeMetrics = borderMetrics; var _local4:Number = (_local3.left + getStyle("paddingLeft")); var _local5:Number = (_local3.top + getStyle("paddingTop")); var _local6:Number = (_local3.right + getStyle("paddingRight")); var _local7:Number = (_local3.bottom + getStyle("paddingBottom")); var _local8:Number = (_local4 + _local6); var _local9:Number = (_local5 + _local7); border.setActualSize(_arg1, _arg2); textField.move(_local4, _local5); textField.setActualSize((_arg1 - _local8), (_arg2 - _local9)); } private function get borderMetrics():EdgeMetrics{ if ((border is IRectangularBorder)){ return (IRectangularBorder(border).borderMetrics); }; return (EdgeMetrics.EMPTY); } } }//package mx.controls
Section 142
//VScrollBar (mx.controls.VScrollBar) package mx.controls { import mx.controls.scrollClasses.*; import flash.ui.*; public class VScrollBar extends ScrollBar { mx_internal static const VERSION:String = "3.2.0.3794"; public function VScrollBar(){ super.direction = ScrollBarDirection.VERTICAL; } override protected function measure():void{ super.measure(); measuredWidth = _minWidth; measuredHeight = _minHeight; } override public function get minHeight():Number{ return (_minHeight); } override mx_internal function isScrollBarKey(_arg1:uint):Boolean{ if (_arg1 == Keyboard.UP){ lineScroll(-1); return (true); }; if (_arg1 == Keyboard.DOWN){ lineScroll(1); return (true); }; if (_arg1 == Keyboard.PAGE_UP){ pageScroll(-1); return (true); }; if (_arg1 == Keyboard.PAGE_DOWN){ pageScroll(1); return (true); }; return (super.isScrollBarKey(_arg1)); } override public function get minWidth():Number{ return (_minWidth); } override public function set direction(_arg1:String):void{ } } }//package mx.controls
Section 143
//Application (mx.core.Application) package mx.core { import flash.display.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.effects.*; import flash.utils.*; import mx.containers.utilityClasses.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.net.*; public class Application extends LayoutContainer { public var preloader:Object; public var pageTitle:String; private var resizeWidth:Boolean;// = true private var _applicationViewMetrics:EdgeMetrics; mx_internal var _parameters:Object; private var processingCreationQueue:Boolean;// = false public var scriptRecursionLimit:int; private var resizeHandlerAdded:Boolean;// = false private var preloadObj:Object; public var usePreloader:Boolean; mx_internal var _url:String; private var _viewSourceURL:String; public var resetHistory:Boolean;// = true public var historyManagementEnabled:Boolean;// = true public var scriptTimeLimit:Number; public var frameRate:Number; private var creationQueue:Array; private var resizeHeight:Boolean;// = true public var controlBar:IUIComponent; private var viewSourceCMI:ContextMenuItem; mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var useProgressiveLayout:Boolean = false; public function Application(){ creationQueue = []; name = "application"; UIComponentGlobals.layoutManager = ILayoutManager(Singleton.getInstance("mx.managers::ILayoutManager")); UIComponentGlobals.layoutManager.usePhasedInstantiation = true; if (!ApplicationGlobals.application){ ApplicationGlobals.application = this; }; super(); layoutObject = new ApplicationLayout(); layoutObject.target = this; boxLayoutClass = ApplicationLayout; showInAutomationHierarchy = true; } public function set viewSourceURL(_arg1:String):void{ _viewSourceURL = _arg1; } override public function set percentWidth(_arg1:Number):void{ super.percentWidth = _arg1; invalidateDisplayList(); } override public function prepareToPrint(_arg1:IFlexDisplayObject):Object{ var _local2:Object = {}; if (_arg1 == this){ _local2.width = width; _local2.height = height; _local2.verticalScrollPosition = verticalScrollPosition; _local2.horizontalScrollPosition = horizontalScrollPosition; _local2.horizontalScrollBarVisible = !((horizontalScrollBar == null)); _local2.verticalScrollBarVisible = !((verticalScrollBar == null)); _local2.whiteBoxVisible = !((whiteBox == null)); setActualSize(measuredWidth, measuredHeight); horizontalScrollPosition = 0; verticalScrollPosition = 0; if (horizontalScrollBar){ horizontalScrollBar.visible = false; }; if (verticalScrollBar){ verticalScrollBar.visible = false; }; if (whiteBox){ whiteBox.visible = false; }; updateDisplayList(unscaledWidth, unscaledHeight); }; _local2.scrollRect = super.prepareToPrint(_arg1); return (_local2); } override protected function measure():void{ var _local2:Number; super.measure(); var _local1:EdgeMetrics = borderMetrics; if (((controlBar) && (controlBar.includeInLayout))){ _local2 = ((controlBar.getExplicitOrMeasuredWidth() + _local1.left) + _local1.right); measuredWidth = Math.max(measuredWidth, _local2); measuredMinWidth = Math.max(measuredMinWidth, _local2); }; } override public function getChildIndex(_arg1:DisplayObject):int{ if (((controlBar) && ((_arg1 == controlBar)))){ return (-1); }; return (super.getChildIndex(_arg1)); } private function resizeHandler(_arg1:Event):void{ var _local2:Number; var _local3:Number; if (resizeWidth){ if (isNaN(percentWidth)){ _local2 = DisplayObject(systemManager).width; } else { super.percentWidth = Math.max(percentWidth, 0); super.percentWidth = Math.min(percentWidth, 100); _local2 = ((percentWidth * screen.width) / 100); }; if (!isNaN(explicitMaxWidth)){ _local2 = Math.min(_local2, explicitMaxWidth); }; if (!isNaN(explicitMinWidth)){ _local2 = Math.max(_local2, explicitMinWidth); }; } else { _local2 = width; }; if (resizeHeight){ if (isNaN(percentHeight)){ _local3 = DisplayObject(systemManager).height; } else { super.percentHeight = Math.max(percentHeight, 0); super.percentHeight = Math.min(percentHeight, 100); _local3 = ((percentHeight * screen.height) / 100); }; if (!isNaN(explicitMaxHeight)){ _local3 = Math.min(_local3, explicitMaxHeight); }; if (!isNaN(explicitMinHeight)){ _local3 = Math.max(_local3, explicitMinHeight); }; } else { _local3 = height; }; if (((!((_local2 == width))) || (!((_local3 == height))))){ invalidateProperties(); invalidateSize(); }; setActualSize(_local2, _local3); invalidateDisplayList(); } private function initManagers(_arg1:ISystemManager):void{ if (_arg1.isTopLevel()){ focusManager = new FocusManager(this); _arg1.activate(this); }; } override public function initialize():void{ var _local2:Object; var _local1:ISystemManager = systemManager; _url = _local1.loaderInfo.url; _parameters = _local1.loaderInfo.parameters; initManagers(_local1); _descriptor = null; if (documentDescriptor){ creationPolicy = documentDescriptor.properties.creationPolicy; if ((((creationPolicy == null)) || ((creationPolicy.length == 0)))){ creationPolicy = ContainerCreationPolicy.AUTO; }; _local2 = documentDescriptor.properties; if (_local2.width != null){ width = _local2.width; delete _local2.width; }; if (_local2.height != null){ height = _local2.height; delete _local2.height; }; documentDescriptor.events = null; }; initContextMenu(); super.initialize(); addEventListener(Event.ADDED, addedHandler); if (((_local1.isTopLevelRoot()) && ((Capabilities.isDebugger == true)))){ setInterval(debugTickler, 1500); }; } override public function set percentHeight(_arg1:Number):void{ super.percentHeight = _arg1; invalidateDisplayList(); } override public function get id():String{ if (((((!(super.id)) && ((this == Application.application)))) && (ExternalInterface.available))){ return (ExternalInterface.objectID); }; return (super.id); } override mx_internal function setUnscaledWidth(_arg1:Number):void{ invalidateProperties(); super.setUnscaledWidth(_arg1); } private function debugTickler():void{ var _local1:int; } private function doNextQueueItem(_arg1:FlexEvent=null):void{ processingCreationQueue = true; Application.useProgressiveLayout = true; callLater(processNextQueueItem); } private function initContextMenu():void{ var _local2:String; if (flexContextMenu != null){ if ((systemManager is InteractiveObject)){ InteractiveObject(systemManager).contextMenu = contextMenu; }; return; }; var _local1:ContextMenu = new ContextMenu(); _local1.hideBuiltInItems(); _local1.builtInItems.print = true; if (_viewSourceURL){ _local2 = resourceManager.getString("core", "viewSource"); viewSourceCMI = new ContextMenuItem(_local2, true); viewSourceCMI.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, menuItemSelectHandler); _local1.customItems.push(viewSourceCMI); }; contextMenu = _local1; if ((systemManager is InteractiveObject)){ InteractiveObject(systemManager).contextMenu = _local1; }; } private function addedHandler(_arg1:Event):void{ if ((((_arg1.target == this)) && ((creationQueue.length > 0)))){ doNextQueueItem(); }; } public function get viewSourceURL():String{ return (_viewSourceURL); } override mx_internal function get usePadding():Boolean{ return (!((layout == ContainerLayout.ABSOLUTE))); } override mx_internal function setUnscaledHeight(_arg1:Number):void{ invalidateProperties(); super.setUnscaledHeight(_arg1); } mx_internal function dockControlBar(_arg1:IUIComponent, _arg2:Boolean):void{ var controlBar = _arg1; var dock = _arg2; if (dock){ try { removeChild(DisplayObject(controlBar)); } catch(e:Error) { return; }; rawChildren.addChildAt(DisplayObject(controlBar), firstChildIndex); setControlBar(controlBar); } else { try { rawChildren.removeChild(DisplayObject(controlBar)); } catch(e:Error) { return; }; setControlBar(null); addChildAt(DisplayObject(controlBar), 0); }; } override public function styleChanged(_arg1:String):void{ super.styleChanged(_arg1); if ((((_arg1 == "backgroundColor")) && ((getStyle("backgroundImage") == getStyle("defaultBackgroundImage"))))){ clearStyle("backgroundImage"); }; } override protected function layoutChrome(_arg1:Number, _arg2:Number):void{ super.layoutChrome(_arg1, _arg2); if (!doingLayout){ createBorder(); }; var _local3:EdgeMetrics = borderMetrics; var _local4:Number = getStyle("borderThickness"); var _local5:EdgeMetrics = new EdgeMetrics(); _local5.left = (_local3.left - _local4); _local5.top = (_local3.top - _local4); _local5.right = (_local3.right - _local4); _local5.bottom = (_local3.bottom - _local4); if (((controlBar) && (controlBar.includeInLayout))){ if ((controlBar is IInvalidating)){ IInvalidating(controlBar).invalidateDisplayList(); }; controlBar.setActualSize((width - (_local5.left + _local5.right)), controlBar.getExplicitOrMeasuredHeight()); controlBar.move(_local5.left, _local5.top); }; } protected function menuItemSelectHandler(_arg1:Event):void{ navigateToURL(new URLRequest(_viewSourceURL), "_blank"); } private function printCreationQueue():void{ var _local4:Object; var _local1 = ""; var _local2:Number = creationQueue.length; var _local3:int; while (_local3 < _local2) { _local4 = creationQueue[_local3]; _local1 = (_local1 + (((((" [" + _local3) + "] ") + _local4.id) + " ") + _local4.index)); _local3++; }; } override protected function resourcesChanged():void{ super.resourcesChanged(); if (viewSourceCMI){ viewSourceCMI.caption = resourceManager.getString("core", "viewSource"); }; } override protected function commitProperties():void{ super.commitProperties(); resizeWidth = isNaN(explicitWidth); resizeHeight = isNaN(explicitHeight); if (((resizeWidth) || (resizeHeight))){ resizeHandler(new Event(Event.RESIZE)); if (!resizeHandlerAdded){ systemManager.addEventListener(Event.RESIZE, resizeHandler, false, 0, true); resizeHandlerAdded = true; }; } else { if (resizeHandlerAdded){ systemManager.removeEventListener(Event.RESIZE, resizeHandler); resizeHandlerAdded = false; }; }; } override public function set toolTip(_arg1:String):void{ } public function addToCreationQueue(_arg1:Object, _arg2:int=-1, _arg3:Function=null, _arg4:IFlexDisplayObject=null):void{ var _local8:int; var _local9:int; var _local10:int; var _local12:int; var _local5:int = creationQueue.length; var _local6:Object = {}; var _local7:Boolean; _local6.id = _arg1; _local6.parent = _arg4; _local6.callbackFunc = _arg3; _local6.index = _arg2; var _local11:int; while (_local11 < _local5) { _local9 = creationQueue[_local11].index; _local10 = (creationQueue[_local11].parent) ? creationQueue[_local11].parent.nestLevel : 0; if (_local6.index != -1){ if ((((_local9 == -1)) || ((_local6.index < _local9)))){ _local8 = _local11; _local7 = true; break; }; } else { _local12 = (_local6.parent) ? _local6.parent.nestLevel : 0; if ((((_local9 == -1)) && ((_local10 < _local12)))){ _local8 = _local11; _local7 = true; break; }; }; _local11++; }; if (!_local7){ creationQueue.push(_local6); _local7 = true; } else { creationQueue.splice(_local8, 0, _local6); }; if (((initialized) && (!(processingCreationQueue)))){ doNextQueueItem(); }; } override mx_internal function initThemeColor():Boolean{ var _local2:Object; var _local3:Number; var _local4:Number; var _local5:CSSStyleDeclaration; var _local1:Boolean = super.initThemeColor(); if (!_local1){ _local5 = StyleManager.getStyleDeclaration("global"); if (_local5){ _local2 = _local5.getStyle("themeColor"); _local3 = _local5.getStyle("rollOverColor"); _local4 = _local5.getStyle("selectionColor"); }; if (((((_local2) && (isNaN(_local3)))) && (isNaN(_local4)))){ setThemeColor(_local2); }; _local1 = true; }; return (_local1); } override public function finishPrint(_arg1:Object, _arg2:IFlexDisplayObject):void{ if (_arg2 == this){ setActualSize(_arg1.width, _arg1.height); if (horizontalScrollBar){ horizontalScrollBar.visible = _arg1.horizontalScrollBarVisible; }; if (verticalScrollBar){ verticalScrollBar.visible = _arg1.verticalScrollBarVisible; }; if (whiteBox){ whiteBox.visible = _arg1.whiteBoxVisible; }; horizontalScrollPosition = _arg1.horizontalScrollPosition; verticalScrollPosition = _arg1.verticalScrollPosition; updateDisplayList(unscaledWidth, unscaledHeight); }; super.finishPrint(_arg1.scrollRect, _arg2); } private function processNextQueueItem():void{ var queueItem:Object; var nextChild:IUIComponent; if (EffectManager.effectsPlaying.length > 0){ callLater(processNextQueueItem); } else { if (creationQueue.length > 0){ queueItem = creationQueue.shift(); try { nextChild = ((queueItem.id is String)) ? document[queueItem.id] : queueItem.id; if ((nextChild is Container)){ Container(nextChild).createComponentsFromDescriptors(true); }; if ((((nextChild is Container)) && ((Container(nextChild).creationPolicy == ContainerCreationPolicy.QUEUED)))){ doNextQueueItem(); } else { nextChild.addEventListener("childrenCreationComplete", doNextQueueItem); }; } catch(e:Error) { processNextQueueItem(); }; } else { processingCreationQueue = false; Application.useProgressiveLayout = false; }; }; } override public function set label(_arg1:String):void{ } public function get parameters():Object{ return (_parameters); } override public function get viewMetrics():EdgeMetrics{ if (!_applicationViewMetrics){ _applicationViewMetrics = new EdgeMetrics(); }; var _local1:EdgeMetrics = _applicationViewMetrics; var _local2:EdgeMetrics = super.viewMetrics; var _local3:Number = getStyle("borderThickness"); _local1.left = _local2.left; _local1.top = _local2.top; _local1.right = _local2.right; _local1.bottom = _local2.bottom; if (((controlBar) && (controlBar.includeInLayout))){ _local1.top = (_local1.top - _local3); _local1.top = (_local1.top + Math.max(controlBar.getExplicitOrMeasuredHeight(), _local3)); }; return (_local1); } public function get url():String{ return (_url); } override public function set icon(_arg1:Class):void{ } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); createBorder(); } private function setControlBar(_arg1:IUIComponent):void{ if (_arg1 == controlBar){ return; }; if (((controlBar) && ((controlBar is IStyleClient)))){ IStyleClient(controlBar).clearStyle("cornerRadius"); IStyleClient(controlBar).clearStyle("docked"); }; controlBar = _arg1; if (((controlBar) && ((controlBar is IStyleClient)))){ IStyleClient(controlBar).setStyle("cornerRadius", 0); IStyleClient(controlBar).setStyle("docked", true); }; invalidateSize(); invalidateDisplayList(); invalidateViewMetricsAndPadding(); } override public function set tabIndex(_arg1:int):void{ } public static function get application():Object{ return (ApplicationGlobals.application); } } }//package mx.core
Section 144
//ApplicationGlobals (mx.core.ApplicationGlobals) package mx.core { public class ApplicationGlobals { public static var application:Object; } }//package mx.core
Section 145
//ClassFactory (mx.core.ClassFactory) package mx.core { public class ClassFactory implements IFactory { public var properties:Object;// = null public var generator:Class; mx_internal static const VERSION:String = "3.2.0.3794"; public function ClassFactory(_arg1:Class=null){ this.generator = _arg1; } public function newInstance(){ var _local2:String; var _local1:Object = new generator(); if (properties != null){ for (_local2 in properties) { _local1[_local2] = properties[_local2]; }; }; return (_local1); } } }//package mx.core
Section 146
//ComponentDescriptor (mx.core.ComponentDescriptor) package mx.core { public class ComponentDescriptor { public var events:Object; public var type:Class; public var document:Object; private var _properties:Object; public var propertiesFactory:Function; public var id:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function ComponentDescriptor(_arg1:Object){ var _local2:String; super(); for (_local2 in _arg1) { this[_local2] = _arg1[_local2]; }; } public function toString():String{ return (("ComponentDescriptor_" + id)); } public function invalidateProperties():void{ _properties = null; } public function get properties():Object{ var _local1:Array; var _local2:int; var _local3:int; if (_properties){ return (_properties); }; if (propertiesFactory != null){ _properties = propertiesFactory.call(document); }; if (_properties){ _local1 = _properties.childDescriptors; if (_local1){ _local2 = _local1.length; _local3 = 0; while (_local3 < _local2) { _local1[_local3].document = document; _local3++; }; }; } else { _properties = {}; }; return (_properties); } } }//package mx.core
Section 147
//Container (mx.core.Container) package mx.core { import flash.display.*; import flash.geom.*; import flash.text.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import mx.graphics.*; import mx.controls.scrollClasses.*; import mx.binding.*; import mx.controls.listClasses.*; import flash.utils.*; import flash.ui.*; public class Container extends UIComponent implements IContainer, IDataRenderer, IFocusManagerContainer, IListItemRenderer, IRawChildrenContainer { private var forceLayout:Boolean;// = false private var _numChildrenCreated:int;// = -1 private var _horizontalLineScrollSize:Number;// = 5 mx_internal var border:IFlexDisplayObject; protected var actualCreationPolicy:String; private var _viewMetricsAndPadding:EdgeMetrics; private var _creatingContentPane:Boolean;// = false private var _childRepeaters:Array; private var scrollableWidth:Number;// = 0 private var _childDescriptors:Array; private var _rawChildren:ContainerRawChildrenList; private var _data:Object; private var _verticalPageScrollSize:Number;// = 0 private var _viewMetrics:EdgeMetrics; private var _verticalScrollBar:ScrollBar; private var scrollPropertiesChanged:Boolean;// = false private var changedStyles:String;// = null private var scrollPositionChanged:Boolean;// = true private var _defaultButton:IFlexDisplayObject; private var mouseEventReferenceCount:int;// = 0 private var _focusPane:Sprite; protected var whiteBox:Shape; private var _forceClippingCount:int; private var _horizontalPageScrollSize:Number;// = 0 private var _creationPolicy:String; private var _creationIndex:int;// = -1 private var _clipContent:Boolean;// = true private var _verticalScrollPosition:Number;// = 0 private var _autoLayout:Boolean;// = true private var _icon:Class;// = null mx_internal var doingLayout:Boolean;// = false private var _horizontalScrollBar:ScrollBar; private var numChildrenBefore:int; private var viewableHeight:Number;// = 0 private var viewableWidth:Number;// = 0 mx_internal var contentPane:Sprite;// = null private var _createdComponents:Array; private var _firstChildIndex:int;// = 0 private var scrollableHeight:Number;// = 0 private var _verticalLineScrollSize:Number;// = 5 private var _horizontalScrollPosition:Number;// = 0 mx_internal var _horizontalScrollPolicy:String;// = "auto" private var verticalScrollPositionPending:Number; mx_internal var _verticalScrollPolicy:String;// = "auto" private var horizontalScrollPositionPending:Number; mx_internal var _numChildren:int;// = 0 private var recursionFlag:Boolean;// = true private var _label:String;// = "" mx_internal var blocker:Sprite; mx_internal static const VERSION:String = "3.2.0.3794"; private static const MULTIPLE_PROPERTIES:String = "<MULTIPLE>"; public function Container(){ tabChildren = true; tabEnabled = false; showInAutomationHierarchy = false; } public function set verticalScrollPolicy(_arg1:String):void{ if (_verticalScrollPolicy != _arg1){ _verticalScrollPolicy = _arg1; invalidateDisplayList(); dispatchEvent(new Event("verticalScrollPolicyChanged")); }; } private function createContentPaneAndScrollbarsIfNeeded():Boolean{ var _local1:Rectangle; var _local2:Boolean; if (_clipContent){ _local1 = getScrollableRect(); _local2 = createScrollbarsIfNeeded(_local1); if (border){ updateBackgroundImageRect(); }; return (_local2); //unresolved jump }; _local2 = createOrDestroyScrollbars(false, false, false); _local1 = getScrollableRect(); scrollableWidth = _local1.right; scrollableHeight = _local1.bottom; if (((_local2) && (border))){ updateBackgroundImageRect(); }; return (_local2); } override protected function initializationComplete():void{ } mx_internal function rawChildren_getObjectsUnderPoint(_arg1:Point):Array{ return (super.getObjectsUnderPoint(_arg1)); } public function set creatingContentPane(_arg1:Boolean):void{ _creatingContentPane = _arg1; } public function set clipContent(_arg1:Boolean):void{ if (_clipContent != _arg1){ _clipContent = _arg1; invalidateDisplayList(); }; } protected function scrollChildren():void{ if (!contentPane){ return; }; var _local1:EdgeMetrics = viewMetrics; var _local2:Number = 0; var _local3:Number = 0; var _local4:Number = ((unscaledWidth - _local1.left) - _local1.right); var _local5:Number = ((unscaledHeight - _local1.top) - _local1.bottom); if (_clipContent){ _local2 = (_local2 + _horizontalScrollPosition); if (horizontalScrollBar){ _local4 = viewableWidth; }; _local3 = (_local3 + _verticalScrollPosition); if (verticalScrollBar){ _local5 = viewableHeight; }; } else { _local4 = scrollableWidth; _local5 = scrollableHeight; }; var _local6:Rectangle = getScrollableRect(); if ((((((((((((((_local2 == 0)) && ((_local3 == 0)))) && ((_local4 >= _local6.right)))) && ((_local5 >= _local6.bottom)))) && ((_local6.left >= 0)))) && ((_local6.top >= 0)))) && ((_forceClippingCount <= 0)))){ contentPane.scrollRect = null; contentPane.opaqueBackground = null; contentPane.cacheAsBitmap = false; } else { contentPane.scrollRect = new Rectangle(_local2, _local3, _local4, _local5); }; if (focusPane){ focusPane.scrollRect = contentPane.scrollRect; }; if (((((border) && ((border is IRectangularBorder)))) && (IRectangularBorder(border).hasBackgroundImage))){ IRectangularBorder(border).layoutBackgroundImage(); }; } override public function set doubleClickEnabled(_arg1:Boolean):void{ var _local2:int; var _local3:int; var _local4:InteractiveObject; super.doubleClickEnabled = _arg1; if (contentPane){ _local2 = contentPane.numChildren; _local3 = 0; while (_local3 < _local2) { _local4 = (contentPane.getChildAt(_local3) as InteractiveObject); if (_local4){ _local4.doubleClickEnabled = _arg1; }; _local3++; }; }; } override public function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{ var _local5:ISimpleStyleClient; var _local3:int = super.numChildren; var _local4:int; while (_local4 < _local3) { if (((((contentPane) || ((_local4 < _firstChildIndex)))) || ((_local4 >= (_firstChildIndex + _numChildren))))){ _local5 = (super.getChildAt(_local4) as ISimpleStyleClient); if (_local5){ _local5.styleChanged(_arg1); if ((_local5 is IStyleClient)){ IStyleClient(_local5).notifyStyleChangeInChildren(_arg1, _arg2); }; }; }; _local4++; }; if (_arg2){ changedStyles = (((!((changedStyles == null))) || ((_arg1 == null)))) ? MULTIPLE_PROPERTIES : _arg1; invalidateProperties(); }; } mx_internal function get createdComponents():Array{ return (_createdComponents); } public function get childDescriptors():Array{ return (_childDescriptors); } override public function get contentMouseY():Number{ if (contentPane){ return (contentPane.mouseY); }; return (super.contentMouseY); } mx_internal function get childRepeaters():Array{ return (_childRepeaters); } override public function contains(_arg1:DisplayObject):Boolean{ if (contentPane){ return (contentPane.contains(_arg1)); }; return (super.contains(_arg1)); } override public function get contentMouseX():Number{ if (contentPane){ return (contentPane.mouseX); }; return (super.contentMouseX); } mx_internal function set createdComponents(_arg1:Array):void{ _createdComponents = _arg1; } public function get horizontalScrollBar():ScrollBar{ return (_horizontalScrollBar); } override public function validateSize(_arg1:Boolean=false):void{ var _local2:int; var _local3:int; var _local4:DisplayObject; if ((((autoLayout == false)) && ((forceLayout == false)))){ if (_arg1){ _local2 = super.numChildren; _local3 = 0; while (_local3 < _local2) { _local4 = super.getChildAt(_local3); if ((_local4 is ILayoutManagerClient)){ ILayoutManagerClient(_local4).validateSize(true); }; _local3++; }; }; adjustSizesForScaleChanges(); } else { super.validateSize(_arg1); }; } public function get rawChildren():IChildList{ if (!_rawChildren){ _rawChildren = new ContainerRawChildrenList(this); }; return (_rawChildren); } override public function getChildAt(_arg1:int):DisplayObject{ if (contentPane){ return (contentPane.getChildAt(_arg1)); }; return (super.getChildAt((_firstChildIndex + _arg1))); } override protected function attachOverlay():void{ rawChildren_addChild(overlay); } override public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ super.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); if ((((((((((((((((_arg1 == MouseEvent.CLICK)) || ((_arg1 == MouseEvent.DOUBLE_CLICK)))) || ((_arg1 == MouseEvent.MOUSE_DOWN)))) || ((_arg1 == MouseEvent.MOUSE_MOVE)))) || ((_arg1 == MouseEvent.MOUSE_OVER)))) || ((_arg1 == MouseEvent.MOUSE_OUT)))) || ((_arg1 == MouseEvent.MOUSE_UP)))) || ((_arg1 == MouseEvent.MOUSE_WHEEL)))){ if ((((mouseEventReferenceCount < 2147483647)) && ((mouseEventReferenceCount++ == 0)))){ setStyle("mouseShield", true); setStyle("mouseShieldChildren", true); }; }; } override public function localToContent(_arg1:Point):Point{ if (!contentPane){ return (_arg1); }; _arg1 = localToGlobal(_arg1); return (globalToContent(_arg1)); } public function executeChildBindings(_arg1:Boolean):void{ var _local4:IUIComponent; var _local2:int = numChildren; var _local3:int; while (_local3 < _local2) { _local4 = IUIComponent(getChildAt(_local3)); if ((_local4 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_local4).executeBindings(_arg1); }; _local3++; }; } protected function createBorder():void{ var _local1:Class; if (((!(border)) && (isBorderNeeded()))){ _local1 = getStyle("borderSkin"); if (_local1 != null){ border = new (_local1); border.name = "border"; if ((border is IUIComponent)){ IUIComponent(border).enabled = enabled; }; if ((border is ISimpleStyleClient)){ ISimpleStyleClient(border).styleName = this; }; rawChildren.addChildAt(DisplayObject(border), 0); invalidateDisplayList(); }; }; } public function get verticalScrollPosition():Number{ if (!isNaN(verticalScrollPositionPending)){ return (verticalScrollPositionPending); }; return (_verticalScrollPosition); } public function get horizontalScrollPosition():Number{ if (!isNaN(horizontalScrollPositionPending)){ return (horizontalScrollPositionPending); }; return (_horizontalScrollPosition); } protected function layoutChrome(_arg1:Number, _arg2:Number):void{ if (border){ updateBackgroundImageRect(); border.move(0, 0); border.setActualSize(_arg1, _arg2); }; } mx_internal function set childRepeaters(_arg1:Array):void{ _childRepeaters = _arg1; } override public function get focusPane():Sprite{ return (_focusPane); } public function set creationIndex(_arg1:int):void{ _creationIndex = _arg1; } public function get viewMetrics():EdgeMetrics{ var _local1:EdgeMetrics = borderMetrics; var _local2:Boolean = ((!((verticalScrollBar == null))) && (((doingLayout) || ((verticalScrollPolicy == ScrollPolicy.ON))))); var _local3:Boolean = ((!((horizontalScrollBar == null))) && (((doingLayout) || ((horizontalScrollPolicy == ScrollPolicy.ON))))); if (((!(_local2)) && (!(_local3)))){ return (_local1); }; if (!_viewMetrics){ _viewMetrics = _local1.clone(); } else { _viewMetrics.left = _local1.left; _viewMetrics.right = _local1.right; _viewMetrics.top = _local1.top; _viewMetrics.bottom = _local1.bottom; }; if (_local2){ _viewMetrics.right = (_viewMetrics.right + verticalScrollBar.minWidth); }; if (_local3){ _viewMetrics.bottom = (_viewMetrics.bottom + horizontalScrollBar.minHeight); }; return (_viewMetrics); } public function set verticalScrollBar(_arg1:ScrollBar):void{ _verticalScrollBar = _arg1; } public function set verticalScrollPosition(_arg1:Number):void{ if (_verticalScrollPosition == _arg1){ return; }; _verticalScrollPosition = _arg1; scrollPositionChanged = true; if (!initialized){ verticalScrollPositionPending = _arg1; }; invalidateDisplayList(); dispatchEvent(new Event("viewChanged")); } private function createOrDestroyScrollbars(_arg1:Boolean, _arg2:Boolean, _arg3:Boolean):Boolean{ var _local5:IFocusManager; var _local6:String; var _local7:String; var _local8:Graphics; var _local4:Boolean; if (((((_arg1) || (_arg2))) || (_arg3))){ createContentPane(); }; if (_arg1){ if (!horizontalScrollBar){ horizontalScrollBar = new HScrollBar(); horizontalScrollBar.name = "horizontalScrollBar"; _local6 = getStyle("horizontalScrollBarStyleName"); if (((_local6) && ((horizontalScrollBar is ISimpleStyleClient)))){ ISimpleStyleClient(horizontalScrollBar).styleName = _local6; }; rawChildren.addChild(DisplayObject(horizontalScrollBar)); horizontalScrollBar.lineScrollSize = horizontalLineScrollSize; horizontalScrollBar.pageScrollSize = horizontalPageScrollSize; horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, horizontalScrollBar_scrollHandler); horizontalScrollBar.enabled = enabled; if ((horizontalScrollBar is IInvalidating)){ IInvalidating(horizontalScrollBar).validateNow(); }; invalidateDisplayList(); invalidateViewMetricsAndPadding(); _local4 = true; if (!verticalScrollBar){ addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); }; }; } else { if (horizontalScrollBar){ horizontalScrollBar.removeEventListener(ScrollEvent.SCROLL, horizontalScrollBar_scrollHandler); rawChildren.removeChild(DisplayObject(horizontalScrollBar)); horizontalScrollBar = null; viewableWidth = (scrollableWidth = 0); if (_horizontalScrollPosition != 0){ _horizontalScrollPosition = 0; scrollPositionChanged = true; }; invalidateDisplayList(); invalidateViewMetricsAndPadding(); _local4 = true; _local5 = focusManager; if (((!(verticalScrollBar)) && (((!(_local5)) || (!((_local5.getFocus() == this))))))){ removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); }; }; }; if (_arg2){ if (!verticalScrollBar){ verticalScrollBar = new VScrollBar(); verticalScrollBar.name = "verticalScrollBar"; _local7 = getStyle("verticalScrollBarStyleName"); if (((_local7) && ((verticalScrollBar is ISimpleStyleClient)))){ ISimpleStyleClient(verticalScrollBar).styleName = _local7; }; rawChildren.addChild(DisplayObject(verticalScrollBar)); verticalScrollBar.lineScrollSize = verticalLineScrollSize; verticalScrollBar.pageScrollSize = verticalPageScrollSize; verticalScrollBar.addEventListener(ScrollEvent.SCROLL, verticalScrollBar_scrollHandler); verticalScrollBar.enabled = enabled; if ((verticalScrollBar is IInvalidating)){ IInvalidating(verticalScrollBar).validateNow(); }; invalidateDisplayList(); invalidateViewMetricsAndPadding(); _local4 = true; if (!horizontalScrollBar){ addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); }; addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler); }; } else { if (verticalScrollBar){ verticalScrollBar.removeEventListener(ScrollEvent.SCROLL, verticalScrollBar_scrollHandler); rawChildren.removeChild(DisplayObject(verticalScrollBar)); verticalScrollBar = null; viewableHeight = (scrollableHeight = 0); if (_verticalScrollPosition != 0){ _verticalScrollPosition = 0; scrollPositionChanged = true; }; invalidateDisplayList(); invalidateViewMetricsAndPadding(); _local4 = true; _local5 = focusManager; if (((!(horizontalScrollBar)) && (((!(_local5)) || (!((_local5.getFocus() == this))))))){ removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); }; removeEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler); }; }; if (((horizontalScrollBar) && (verticalScrollBar))){ if (!whiteBox){ whiteBox = new FlexShape(); whiteBox.name = "whiteBox"; _local8 = whiteBox.graphics; _local8.beginFill(0xFFFFFF); _local8.drawRect(0, 0, verticalScrollBar.minWidth, horizontalScrollBar.minHeight); _local8.endFill(); rawChildren.addChild(whiteBox); }; } else { if (whiteBox){ rawChildren.removeChild(whiteBox); whiteBox = null; }; }; return (_local4); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local3:String; var _local4:Number; var _local2:Object = getFocus(); if ((_local2 is TextField)){ return; }; if (verticalScrollBar){ _local3 = ScrollEventDirection.VERTICAL; _local4 = verticalScrollPosition; switch (_arg1.keyCode){ case Keyboard.DOWN: verticalScrollPosition = (verticalScrollPosition + verticalLineScrollSize); dispatchScrollEvent(_local3, _local4, verticalScrollPosition, ScrollEventDetail.LINE_DOWN); _arg1.stopPropagation(); break; case Keyboard.UP: verticalScrollPosition = (verticalScrollPosition - verticalLineScrollSize); dispatchScrollEvent(_local3, _local4, verticalScrollPosition, ScrollEventDetail.LINE_UP); _arg1.stopPropagation(); break; case Keyboard.PAGE_UP: verticalScrollPosition = (verticalScrollPosition - verticalPageScrollSize); dispatchScrollEvent(_local3, _local4, verticalScrollPosition, ScrollEventDetail.PAGE_UP); _arg1.stopPropagation(); break; case Keyboard.PAGE_DOWN: verticalScrollPosition = (verticalScrollPosition + verticalPageScrollSize); dispatchScrollEvent(_local3, _local4, verticalScrollPosition, ScrollEventDetail.PAGE_DOWN); _arg1.stopPropagation(); break; case Keyboard.HOME: verticalScrollPosition = verticalScrollBar.minScrollPosition; dispatchScrollEvent(_local3, _local4, verticalScrollPosition, ScrollEventDetail.AT_TOP); _arg1.stopPropagation(); break; case Keyboard.END: verticalScrollPosition = verticalScrollBar.maxScrollPosition; dispatchScrollEvent(_local3, _local4, verticalScrollPosition, ScrollEventDetail.AT_BOTTOM); _arg1.stopPropagation(); break; }; }; if (horizontalScrollBar){ _local3 = ScrollEventDirection.HORIZONTAL; _local4 = horizontalScrollPosition; switch (_arg1.keyCode){ case Keyboard.LEFT: horizontalScrollPosition = (horizontalScrollPosition - horizontalLineScrollSize); dispatchScrollEvent(_local3, _local4, horizontalScrollPosition, ScrollEventDetail.LINE_LEFT); _arg1.stopPropagation(); break; case Keyboard.RIGHT: horizontalScrollPosition = (horizontalScrollPosition + horizontalLineScrollSize); dispatchScrollEvent(_local3, _local4, horizontalScrollPosition, ScrollEventDetail.LINE_RIGHT); _arg1.stopPropagation(); break; }; }; } public function get icon():Class{ return (_icon); } private function createOrDestroyBlocker():void{ var _local1:DisplayObject; var _local2:ISystemManager; if (enabled){ if (blocker){ rawChildren.removeChild(blocker); blocker = null; }; } else { if (!blocker){ blocker = new FlexSprite(); blocker.name = "blocker"; blocker.mouseEnabled = true; rawChildren.addChild(blocker); blocker.addEventListener(MouseEvent.CLICK, blocker_clickHandler); _local1 = (focusManager) ? DisplayObject(focusManager.getFocus()) : null; while (_local1) { if (_local1 == this){ _local2 = systemManager; if (((_local2) && (_local2.stage))){ _local2.stage.focus = null; }; break; }; _local1 = _local1.parent; }; }; }; } private function horizontalScrollBar_scrollHandler(_arg1:Event):void{ var _local2:Number; if ((_arg1 is ScrollEvent)){ _local2 = horizontalScrollPosition; horizontalScrollPosition = horizontalScrollBar.scrollPosition; dispatchScrollEvent(ScrollEventDirection.HORIZONTAL, _local2, horizontalScrollPosition, ScrollEvent(_arg1).detail); }; } public function createComponentFromDescriptor(_arg1:ComponentDescriptor, _arg2:Boolean):IFlexDisplayObject{ var _local7:String; var _local10:IRepeaterClient; var _local11:IStyleClient; var _local12:String; var _local13:String; var _local3:UIComponentDescriptor = UIComponentDescriptor(_arg1); var _local4:Object = _local3.properties; if (((((((!((numChildrenBefore == 0))) || (!((numChildrenCreated == -1))))) && ((_local3.instanceIndices == null)))) && (hasChildMatchingDescriptor(_local3)))){ return (null); }; UIComponentGlobals.layoutManager.usePhasedInstantiation = true; var _local5:Class = _local3.type; var _local6:IDeferredInstantiationUIComponent = new (_local5); _local6.id = _local3.id; if (((_local6.id) && (!((_local6.id == ""))))){ _local6.name = _local6.id; }; _local6.descriptor = _local3; if (((_local4.childDescriptors) && ((_local6 is Container)))){ Container(_local6)._childDescriptors = _local4.childDescriptors; delete _local4.childDescriptors; }; for (_local7 in _local4) { _local6[_local7] = _local4[_local7]; }; if ((_local6 is Container)){ Container(_local6).recursionFlag = _arg2; }; if (_local3.instanceIndices){ if ((_local6 is IRepeaterClient)){ _local10 = IRepeaterClient(_local6); _local10.instanceIndices = _local3.instanceIndices; _local10.repeaters = _local3.repeaters; _local10.repeaterIndices = _local3.repeaterIndices; }; }; if ((_local6 is IStyleClient)){ _local11 = IStyleClient(_local6); if (_local3.stylesFactory != null){ if (!_local11.styleDeclaration){ _local11.styleDeclaration = new CSSStyleDeclaration(); }; _local11.styleDeclaration.factory = _local3.stylesFactory; }; }; var _local8:Object = _local3.events; if (_local8){ for (_local12 in _local8) { _local13 = _local8[_local12]; _local6.addEventListener(_local12, _local3.document[_local13]); }; }; var _local9:Array = _local3.effects; if (_local9){ _local6.registerEffects(_local9); }; if ((_local6 is IRepeaterClient)){ IRepeaterClient(_local6).initializeRepeaterArrays(this); }; _local6.createReferenceOnParentDocument(IFlexDisplayObject(_local3.document)); if (!_local6.document){ _local6.document = _local3.document; }; if ((_local6 is IRepeater)){ if (!childRepeaters){ childRepeaters = []; }; childRepeaters.push(_local6); _local6.executeBindings(); IRepeater(_local6).initializeRepeater(this, _arg2); } else { addChild(DisplayObject(_local6)); _local6.executeBindings(); if ((((creationPolicy == ContainerCreationPolicy.QUEUED)) || ((creationPolicy == ContainerCreationPolicy.NONE)))){ _local6.addEventListener(FlexEvent.CREATION_COMPLETE, creationCompleteHandler); }; }; return (_local6); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; if (horizontalScrollBar){ horizontalScrollBar.enabled = _arg1; }; if (verticalScrollBar){ verticalScrollBar.enabled = _arg1; }; invalidateProperties(); } public function set horizontalScrollBar(_arg1:ScrollBar):void{ _horizontalScrollBar = _arg1; } mx_internal function get usePadding():Boolean{ return (true); } override public function get baselinePosition():Number{ var _local2:IUIComponent; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ if ((((getStyle("verticalAlign") == "top")) && ((numChildren > 0)))){ _local2 = (getChildAt(0) as IUIComponent); if (_local2){ return ((_local2.y + _local2.baselinePosition)); }; }; return (super.baselinePosition); }; if (!validateBaselinePosition()){ return (NaN); }; var _local1:TextLineMetrics = measureText("Wj"); if (height < (((2 * viewMetrics.top) + 4) + _local1.ascent)){ return (int((height + ((_local1.ascent - height) / 2)))); }; return (((viewMetrics.top + 2) + _local1.ascent)); } override public function getChildByName(_arg1:String):DisplayObject{ var _local2:DisplayObject; var _local3:int; if (contentPane){ return (contentPane.getChildByName(_arg1)); }; _local2 = super.getChildByName(_arg1); if (!_local2){ return (null); }; _local3 = (super.getChildIndex(_local2) - _firstChildIndex); if ((((_local3 < 0)) || ((_local3 >= _numChildren)))){ return (null); }; return (_local2); } public function get verticalLineScrollSize():Number{ return (_verticalLineScrollSize); } public function get horizontalScrollPolicy():String{ return (_horizontalScrollPolicy); } override public function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ var _local3:DisplayObjectContainer = _arg1.parent; if (((_local3) && (!((_local3 is Loader))))){ if (_local3 == this){ _arg2 = ((_arg2)==numChildren) ? (_arg2 - 1) : _arg2; }; _local3.removeChild(_arg1); }; addingChild(_arg1); if (contentPane){ contentPane.addChildAt(_arg1, _arg2); } else { $addChildAt(_arg1, (_firstChildIndex + _arg2)); }; childAdded(_arg1); if ((((_arg1 is UIComponent)) && (UIComponent(_arg1).isDocument))){ BindingManager.setEnabled(_arg1, true); }; return (_arg1); } public function get maxVerticalScrollPosition():Number{ return ((verticalScrollBar) ? verticalScrollBar.maxScrollPosition : Math.max((scrollableHeight - viewableHeight), 0)); } public function set horizontalScrollPosition(_arg1:Number):void{ if (_horizontalScrollPosition == _arg1){ return; }; _horizontalScrollPosition = _arg1; scrollPositionChanged = true; if (!initialized){ horizontalScrollPositionPending = _arg1; }; invalidateDisplayList(); dispatchEvent(new Event("viewChanged")); } mx_internal function invalidateViewMetricsAndPadding():void{ _viewMetricsAndPadding = null; } public function get horizontalLineScrollSize():Number{ return (_horizontalLineScrollSize); } override public function set focusPane(_arg1:Sprite):void{ var _local2:Boolean = invalidateSizeFlag; var _local3:Boolean = invalidateDisplayListFlag; invalidateSizeFlag = true; invalidateDisplayListFlag = true; if (_arg1){ rawChildren.addChild(_arg1); _arg1.x = 0; _arg1.y = 0; _arg1.scrollRect = null; _focusPane = _arg1; } else { rawChildren.removeChild(_focusPane); _focusPane = null; }; if (((_arg1) && (contentPane))){ _arg1.x = contentPane.x; _arg1.y = contentPane.y; _arg1.scrollRect = contentPane.scrollRect; }; invalidateSizeFlag = _local2; invalidateDisplayListFlag = _local3; } private function updateBackgroundImageRect():void{ var _local1:IRectangularBorder = (border as IRectangularBorder); if (!_local1){ return; }; if ((((viewableWidth == 0)) && ((viewableHeight == 0)))){ _local1.backgroundImageBounds = null; return; }; var _local2:EdgeMetrics = viewMetrics; var _local3:Number = (viewableWidth) ? viewableWidth : ((unscaledWidth - _local2.left) - _local2.right); var _local4:Number = (viewableHeight) ? viewableHeight : ((unscaledHeight - _local2.top) - _local2.bottom); if (getStyle("backgroundAttachment") == "fixed"){ _local1.backgroundImageBounds = new Rectangle(_local2.left, _local2.top, _local3, _local4); } else { _local1.backgroundImageBounds = new Rectangle(_local2.left, _local2.top, Math.max(scrollableWidth, _local3), Math.max(scrollableHeight, _local4)); }; } private function blocker_clickHandler(_arg1:Event):void{ _arg1.stopPropagation(); } private function mouseWheelHandler(_arg1:MouseEvent):void{ var _local2:int; var _local3:int; var _local4:Number; var _local5:Number; if (verticalScrollBar){ _arg1.stopPropagation(); _local2 = ((_arg1.delta <= 0)) ? 1 : -1; _local3 = (verticalScrollBar) ? verticalScrollBar.lineScrollSize : 1; _local4 = Math.max(Math.abs(_arg1.delta), _local3); _local5 = verticalScrollPosition; verticalScrollPosition = (verticalScrollPosition + ((3 * _local4) * _local2)); dispatchScrollEvent(ScrollEventDirection.VERTICAL, _local5, verticalScrollPosition, ((_arg1.delta <= 0)) ? ScrollEventDetail.LINE_UP : ScrollEventDetail.LINE_DOWN); }; } public function get defaultButton():IFlexDisplayObject{ return (_defaultButton); } mx_internal function createContentPane():void{ var _local3:int; var _local5:IUIComponent; if (contentPane){ return; }; creatingContentPane = true; var _local1:int = numChildren; var _local2:Sprite = new FlexSprite(); _local2.name = "contentPane"; _local2.tabChildren = true; if (border){ _local3 = (rawChildren.getChildIndex(DisplayObject(border)) + 1); if ((((border is IRectangularBorder)) && (IRectangularBorder(border).hasBackgroundImage))){ _local3++; }; } else { _local3 = 0; }; rawChildren.addChildAt(_local2, _local3); var _local4:int; while (_local4 < _local1) { _local5 = IUIComponent(super.getChildAt(_firstChildIndex)); _local2.addChild(DisplayObject(_local5)); _local5.parentChanged(_local2); _numChildren--; _local4++; }; contentPane = _local2; creatingContentPane = false; contentPane.visible = true; } public function set verticalPageScrollSize(_arg1:Number):void{ scrollPropertiesChanged = true; _verticalPageScrollSize = _arg1; invalidateDisplayList(); dispatchEvent(new Event("verticalPageScrollSizeChanged")); } mx_internal function setDocumentDescriptor(_arg1:UIComponentDescriptor):void{ var _local2:String; if (processedDescriptors){ return; }; if (((_documentDescriptor) && (_documentDescriptor.properties.childDescriptors))){ if (_arg1.properties.childDescriptors){ _local2 = resourceManager.getString("core", "multipleChildSets_ClassAndSubclass"); throw (new Error(_local2)); }; } else { _documentDescriptor = _arg1; _documentDescriptor.document = this; }; } private function verticalScrollBar_scrollHandler(_arg1:Event):void{ var _local2:Number; if ((_arg1 is ScrollEvent)){ _local2 = verticalScrollPosition; verticalScrollPosition = verticalScrollBar.scrollPosition; dispatchScrollEvent(ScrollEventDirection.VERTICAL, _local2, verticalScrollPosition, ScrollEvent(_arg1).detail); }; } public function get creationPolicy():String{ return (_creationPolicy); } public function set icon(_arg1:Class):void{ _icon = _arg1; dispatchEvent(new Event("iconChanged")); } private function dispatchScrollEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:String):void{ var _local5:ScrollEvent = new ScrollEvent(ScrollEvent.SCROLL); _local5.direction = _arg1; _local5.position = _arg3; _local5.delta = (_arg3 - _arg2); _local5.detail = _arg4; dispatchEvent(_local5); } public function get label():String{ return (_label); } public function get verticalScrollPolicy():String{ return (_verticalScrollPolicy); } public function get borderMetrics():EdgeMetrics{ return ((((border) && ((border is IRectangularBorder)))) ? IRectangularBorder(border).borderMetrics : EdgeMetrics.EMPTY); } private function creationCompleteHandler(_arg1:FlexEvent):void{ numChildrenCreated--; if (numChildrenCreated <= 0){ dispatchEvent(new FlexEvent("childrenCreationComplete")); }; } override public function contentToLocal(_arg1:Point):Point{ if (!contentPane){ return (_arg1); }; _arg1 = contentToGlobal(_arg1); return (globalToLocal(_arg1)); } override public function removeChild(_arg1:DisplayObject):DisplayObject{ var _local2:int; var _local3:int; if ((((_arg1 is IDeferredInstantiationUIComponent)) && (IDeferredInstantiationUIComponent(_arg1).descriptor))){ if (createdComponents){ _local2 = createdComponents.length; _local3 = 0; while (_local3 < _local2) { if (createdComponents[_local3] === _arg1){ createdComponents.splice(_local3, 1); }; _local3++; }; }; }; removingChild(_arg1); if ((((_arg1 is UIComponent)) && (UIComponent(_arg1).isDocument))){ BindingManager.setEnabled(_arg1, false); }; if (contentPane){ contentPane.removeChild(_arg1); } else { $removeChild(_arg1); }; childRemoved(_arg1); return (_arg1); } final mx_internal function get $numChildren():int{ return (super.numChildren); } mx_internal function get numRepeaters():int{ return ((childRepeaters) ? childRepeaters.length : 0); } mx_internal function set numChildrenCreated(_arg1:int):void{ _numChildrenCreated = _arg1; } public function get creatingContentPane():Boolean{ return (_creatingContentPane); } public function get clipContent():Boolean{ return (_clipContent); } mx_internal function rawChildren_getChildIndex(_arg1:DisplayObject):int{ return (super.getChildIndex(_arg1)); } override public function regenerateStyleCache(_arg1:Boolean):void{ var _local2:int; var _local3:int; var _local4:DisplayObject; super.regenerateStyleCache(_arg1); if (contentPane){ _local2 = contentPane.numChildren; _local3 = 0; while (_local3 < _local2) { _local4 = getChildAt(_local3); if (((_arg1) && ((_local4 is UIComponent)))){ if (UIComponent(_local4).inheritingStyles != UIComponent.STYLE_UNINITIALIZED){ UIComponent(_local4).regenerateStyleCache(_arg1); }; } else { if ((((_local4 is IUITextField)) && (IUITextField(_local4).inheritingStyles))){ StyleProtoChain.initTextField(IUITextField(_local4)); }; }; _local3++; }; }; } override public function getChildIndex(_arg1:DisplayObject):int{ var _local2:int; if (contentPane){ return (contentPane.getChildIndex(_arg1)); }; _local2 = (super.getChildIndex(_arg1) - _firstChildIndex); return (_local2); } mx_internal function rawChildren_contains(_arg1:DisplayObject):Boolean{ return (super.contains(_arg1)); } mx_internal function getScrollableRect():Rectangle{ var _local9:DisplayObject; var _local1:Number = 0; var _local2:Number = 0; var _local3:Number = 0; var _local4:Number = 0; var _local5:int = numChildren; var _local6:int; while (_local6 < _local5) { _local9 = getChildAt(_local6); if ((((_local9 is IUIComponent)) && (!(IUIComponent(_local9).includeInLayout)))){ } else { _local1 = Math.min(_local1, _local9.x); _local2 = Math.min(_local2, _local9.y); if (!isNaN(_local9.width)){ _local3 = Math.max(_local3, (_local9.x + _local9.width)); }; if (!isNaN(_local9.height)){ _local4 = Math.max(_local4, (_local9.y + _local9.height)); }; }; _local6++; }; var _local7:EdgeMetrics = viewMetrics; var _local8:Rectangle = new Rectangle(); _local8.left = _local1; _local8.top = _local2; _local8.right = _local3; _local8.bottom = _local4; if (usePadding){ _local8.right = (_local8.right + getStyle("paddingRight")); _local8.bottom = (_local8.bottom + getStyle("paddingBottom")); }; return (_local8); } override protected function createChildren():void{ var _local1:Application; super.createChildren(); createBorder(); createOrDestroyScrollbars((horizontalScrollPolicy == ScrollPolicy.ON), (verticalScrollPolicy == ScrollPolicy.ON), (((horizontalScrollPolicy == ScrollPolicy.ON)) || ((verticalScrollPolicy == ScrollPolicy.ON)))); if (creationPolicy != null){ actualCreationPolicy = creationPolicy; } else { if ((parent is Container)){ if (Container(parent).actualCreationPolicy == ContainerCreationPolicy.QUEUED){ actualCreationPolicy = ContainerCreationPolicy.AUTO; } else { actualCreationPolicy = Container(parent).actualCreationPolicy; }; }; }; if (actualCreationPolicy == ContainerCreationPolicy.NONE){ actualCreationPolicy = ContainerCreationPolicy.AUTO; } else { if (actualCreationPolicy == ContainerCreationPolicy.QUEUED){ _local1 = (parentApplication) ? Application(parentApplication) : Application(Application.application); _local1.addToCreationQueue(this, creationIndex, null, this); } else { if (recursionFlag){ createComponentsFromDescriptors(); }; }; }; if (autoLayout == false){ forceLayout = true; }; UIComponentGlobals.layoutManager.addEventListener(FlexEvent.UPDATE_COMPLETE, layoutCompleteHandler, false, 0, true); } override public function executeBindings(_arg1:Boolean=false):void{ var _local2:Object = (((descriptor) && (descriptor.document))) ? descriptor.document : parentDocument; BindingManager.executeBindings(_local2, id, this); if (_arg1){ executeChildBindings(_arg1); }; } override public function setChildIndex(_arg1:DisplayObject, _arg2:int):void{ var _local3:int; var _local4:int = _local3; var _local5:int = _arg2; if (contentPane){ contentPane.setChildIndex(_arg1, _arg2); if (((_autoLayout) || (forceLayout))){ invalidateDisplayList(); }; } else { _local3 = super.getChildIndex(_arg1); _arg2 = (_arg2 + _firstChildIndex); if (_arg2 == _local3){ return; }; super.setChildIndex(_arg1, _arg2); invalidateDisplayList(); _local4 = (_local3 - _firstChildIndex); _local5 = (_arg2 - _firstChildIndex); }; var _local6:IndexChangedEvent = new IndexChangedEvent(IndexChangedEvent.CHILD_INDEX_CHANGE); _local6.relatedObject = _arg1; _local6.oldIndex = _local4; _local6.newIndex = _local5; dispatchEvent(_local6); dispatchEvent(new Event("childrenChanged")); } override public function globalToContent(_arg1:Point):Point{ if (contentPane){ return (contentPane.globalToLocal(_arg1)); }; return (globalToLocal(_arg1)); } mx_internal function rawChildren_removeChild(_arg1:DisplayObject):DisplayObject{ var _local2:int = rawChildren_getChildIndex(_arg1); return (rawChildren_removeChildAt(_local2)); } mx_internal function rawChildren_setChildIndex(_arg1:DisplayObject, _arg2:int):void{ var _local3:int = super.getChildIndex(_arg1); super.setChildIndex(_arg1, _arg2); if ((((_local3 < _firstChildIndex)) && ((_arg2 >= _firstChildIndex)))){ _firstChildIndex--; } else { if ((((_local3 >= _firstChildIndex)) && ((_arg2 <= _firstChildIndex)))){ _firstChildIndex++; }; }; dispatchEvent(new Event("childrenChanged")); } public function set verticalLineScrollSize(_arg1:Number):void{ scrollPropertiesChanged = true; _verticalLineScrollSize = _arg1; invalidateDisplayList(); dispatchEvent(new Event("verticalLineScrollSizeChanged")); } mx_internal function rawChildren_getChildAt(_arg1:int):DisplayObject{ return (super.getChildAt(_arg1)); } public function get creationIndex():int{ return (_creationIndex); } public function get verticalScrollBar():ScrollBar{ return (_verticalScrollBar); } public function get viewMetricsAndPadding():EdgeMetrics{ if (((((_viewMetricsAndPadding) && (((!(horizontalScrollBar)) || ((horizontalScrollPolicy == ScrollPolicy.ON)))))) && (((!(verticalScrollBar)) || ((verticalScrollPolicy == ScrollPolicy.ON)))))){ return (_viewMetricsAndPadding); }; if (!_viewMetricsAndPadding){ _viewMetricsAndPadding = new EdgeMetrics(); }; var _local1:EdgeMetrics = _viewMetricsAndPadding; var _local2:EdgeMetrics = viewMetrics; _local1.left = (_local2.left + getStyle("paddingLeft")); _local1.right = (_local2.right + getStyle("paddingRight")); _local1.top = (_local2.top + getStyle("paddingTop")); _local1.bottom = (_local2.bottom + getStyle("paddingBottom")); return (_local1); } override public function addChild(_arg1:DisplayObject):DisplayObject{ return (addChildAt(_arg1, numChildren)); } public function set horizontalPageScrollSize(_arg1:Number):void{ scrollPropertiesChanged = true; _horizontalPageScrollSize = _arg1; invalidateDisplayList(); dispatchEvent(new Event("horizontalPageScrollSizeChanged")); } override mx_internal function childAdded(_arg1:DisplayObject):void{ dispatchEvent(new Event("childrenChanged")); var _local2:ChildExistenceChangedEvent = new ChildExistenceChangedEvent(ChildExistenceChangedEvent.CHILD_ADD); _local2.relatedObject = _arg1; dispatchEvent(_local2); _arg1.dispatchEvent(new FlexEvent(FlexEvent.ADD)); super.childAdded(_arg1); } public function set horizontalScrollPolicy(_arg1:String):void{ if (_horizontalScrollPolicy != _arg1){ _horizontalScrollPolicy = _arg1; invalidateDisplayList(); dispatchEvent(new Event("horizontalScrollPolicyChanged")); }; } private function layoutCompleteHandler(_arg1:FlexEvent):void{ UIComponentGlobals.layoutManager.removeEventListener(FlexEvent.UPDATE_COMPLETE, layoutCompleteHandler); forceLayout = false; var _local2:Boolean; if (!isNaN(horizontalScrollPositionPending)){ if (horizontalScrollPositionPending < 0){ horizontalScrollPositionPending = 0; } else { if (horizontalScrollPositionPending > maxHorizontalScrollPosition){ horizontalScrollPositionPending = maxHorizontalScrollPosition; }; }; if (((horizontalScrollBar) && (!((horizontalScrollBar.scrollPosition == horizontalScrollPositionPending))))){ _horizontalScrollPosition = horizontalScrollPositionPending; horizontalScrollBar.scrollPosition = horizontalScrollPositionPending; _local2 = true; }; horizontalScrollPositionPending = NaN; }; if (!isNaN(verticalScrollPositionPending)){ if (verticalScrollPositionPending < 0){ verticalScrollPositionPending = 0; } else { if (verticalScrollPositionPending > maxVerticalScrollPosition){ verticalScrollPositionPending = maxVerticalScrollPosition; }; }; if (((verticalScrollBar) && (!((verticalScrollBar.scrollPosition == verticalScrollPositionPending))))){ _verticalScrollPosition = verticalScrollPositionPending; verticalScrollBar.scrollPosition = verticalScrollPositionPending; _local2 = true; }; verticalScrollPositionPending = NaN; }; if (_local2){ scrollChildren(); }; } public function createComponentsFromDescriptors(_arg1:Boolean=true):void{ var _local4:IFlexDisplayObject; numChildrenBefore = numChildren; createdComponents = []; var _local2:int = (childDescriptors) ? childDescriptors.length : 0; var _local3:int; while (_local3 < _local2) { _local4 = createComponentFromDescriptor(childDescriptors[_local3], _arg1); createdComponents.push(_local4); _local3++; }; if ((((creationPolicy == ContainerCreationPolicy.QUEUED)) || ((creationPolicy == ContainerCreationPolicy.NONE)))){ UIComponentGlobals.layoutManager.usePhasedInstantiation = false; }; numChildrenCreated = (numChildren - numChildrenBefore); processedDescriptors = true; } override mx_internal function fillOverlay(_arg1:UIComponent, _arg2:uint, _arg3:RoundedRectangle=null):void{ var _local4:EdgeMetrics = viewMetrics; var _local5:Number = 0; if (!_arg3){ _arg3 = new RoundedRectangle(_local4.left, _local4.top, ((unscaledWidth - _local4.right) - _local4.left), ((unscaledHeight - _local4.bottom) - _local4.top), _local5); }; if (((((((((isNaN(_arg3.x)) || (isNaN(_arg3.y)))) || (isNaN(_arg3.width)))) || (isNaN(_arg3.height)))) || (isNaN(_arg3.cornerRadius)))){ return; }; var _local6:Graphics = _arg1.graphics; _local6.clear(); _local6.beginFill(_arg2); _local6.drawRoundRect(_arg3.x, _arg3.y, _arg3.width, _arg3.height, (_arg3.cornerRadius * 2), (_arg3.cornerRadius * 2)); _local6.endFill(); } override public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ super.removeEventListener(_arg1, _arg2, _arg3); if ((((((((((((((((_arg1 == MouseEvent.CLICK)) || ((_arg1 == MouseEvent.DOUBLE_CLICK)))) || ((_arg1 == MouseEvent.MOUSE_DOWN)))) || ((_arg1 == MouseEvent.MOUSE_MOVE)))) || ((_arg1 == MouseEvent.MOUSE_OVER)))) || ((_arg1 == MouseEvent.MOUSE_OUT)))) || ((_arg1 == MouseEvent.MOUSE_UP)))) || ((_arg1 == MouseEvent.MOUSE_WHEEL)))){ if ((((mouseEventReferenceCount > 0)) && ((--mouseEventReferenceCount == 0)))){ setStyle("mouseShield", false); setStyle("mouseShieldChildren", false); }; }; } mx_internal function rawChildren_removeChildAt(_arg1:int):DisplayObject{ var _local2:DisplayObject = super.getChildAt(_arg1); super.removingChild(_local2); $removeChildAt(_arg1); super.childRemoved(_local2); if ((((_firstChildIndex < _arg1)) && ((_arg1 < (_firstChildIndex + _numChildren))))){ _numChildren--; } else { if ((((_numChildren == 0)) || ((_arg1 < _firstChildIndex)))){ _firstChildIndex--; }; }; invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("childrenChanged")); return (_local2); } public function set data(_arg1:Object):void{ _data = _arg1; dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE)); invalidateDisplayList(); } override public function removeChildAt(_arg1:int):DisplayObject{ return (removeChild(getChildAt(_arg1))); } private function isBorderNeeded():Boolean{ var c:Class = getStyle("borderSkin"); try { if (c != getDefinitionByName("mx.skins.halo::HaloBorder")){ return (true); }; } catch(e:Error) { return (true); }; var v:Object = getStyle("borderStyle"); if (v){ if (((!((v == "none"))) || ((((v == "none")) && (getStyle("mouseShield")))))){ return (true); }; }; v = getStyle("backgroundColor"); if (((!((v === null))) && (!((v === ""))))){ return (true); }; v = getStyle("backgroundImage"); return (((!((v == null))) && (!((v == ""))))); } public function set autoLayout(_arg1:Boolean):void{ var _local2:IInvalidating; _autoLayout = _arg1; if (_arg1){ invalidateSize(); invalidateDisplayList(); _local2 = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; }; } public function get verticalPageScrollSize():Number{ return (_verticalPageScrollSize); } public function getChildren():Array{ var _local1:Array = []; var _local2:int = numChildren; var _local3:int; while (_local3 < _local2) { _local1.push(getChildAt(_local3)); _local3++; }; return (_local1); } private function createScrollbarsIfNeeded(_arg1:Rectangle):Boolean{ var _local2:Number = _arg1.right; var _local3:Number = _arg1.bottom; var _local4:Number = unscaledWidth; var _local5:Number = unscaledHeight; var _local6:Boolean = (((_arg1.left < 0)) || ((_arg1.top < 0))); var _local7:EdgeMetrics = viewMetrics; if (scaleX != 1){ _local4 = (_local4 + (1 / Math.abs(scaleX))); }; if (scaleY != 1){ _local5 = (_local5 + (1 / Math.abs(scaleY))); }; _local4 = Math.floor(_local4); _local5 = Math.floor(_local5); _local2 = Math.floor(_local2); _local3 = Math.floor(_local3); if (((horizontalScrollBar) && (!((horizontalScrollPolicy == ScrollPolicy.ON))))){ _local5 = (_local5 - horizontalScrollBar.minHeight); }; if (((verticalScrollBar) && (!((verticalScrollPolicy == ScrollPolicy.ON))))){ _local4 = (_local4 - verticalScrollBar.minWidth); }; _local4 = (_local4 - (_local7.left + _local7.right)); _local5 = (_local5 - (_local7.top + _local7.bottom)); var _local8 = (horizontalScrollPolicy == ScrollPolicy.ON); var _local9 = (verticalScrollPolicy == ScrollPolicy.ON); var _local10:Boolean = ((((((((((_local8) || (_local9))) || (_local6))) || (!((overlay == null))))) || ((_local7.left > 0)))) || ((_local7.top > 0))); if (_local4 < _local2){ _local10 = true; if ((((((horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((((unscaledHeight - _local7.top) - _local7.bottom) >= 18)))) && ((((unscaledWidth - _local7.left) - _local7.right) >= 32)))){ _local8 = true; }; }; if (_local5 < _local3){ _local10 = true; if ((((((verticalScrollPolicy == ScrollPolicy.AUTO)) && ((((unscaledWidth - _local7.left) - _local7.right) >= 18)))) && ((((unscaledHeight - _local7.top) - _local7.bottom) >= 32)))){ _local9 = true; }; }; if (((((((((((((((_local8) && (_local9))) && ((horizontalScrollPolicy == ScrollPolicy.AUTO)))) && ((verticalScrollPolicy == ScrollPolicy.AUTO)))) && (horizontalScrollBar))) && (verticalScrollBar))) && (((_local4 + verticalScrollBar.minWidth) >= _local2)))) && (((_local5 + horizontalScrollBar.minHeight) >= _local3)))){ _local9 = false; _local8 = _local9; } else { if (((((((((_local8) && (!(_local9)))) && (verticalScrollBar))) && ((horizontalScrollPolicy == ScrollPolicy.AUTO)))) && (((_local4 + verticalScrollBar.minWidth) >= _local2)))){ _local8 = false; }; }; var _local11:Boolean = createOrDestroyScrollbars(_local8, _local9, _local10); if (((((!((scrollableWidth == _local2))) || (!((viewableWidth == _local4))))) || (_local11))){ if (horizontalScrollBar){ horizontalScrollBar.setScrollProperties(_local4, 0, (_local2 - _local4), horizontalPageScrollSize); scrollPositionChanged = true; }; viewableWidth = _local4; scrollableWidth = _local2; }; if (((((!((scrollableHeight == _local3))) || (!((viewableHeight == _local5))))) || (_local11))){ if (verticalScrollBar){ verticalScrollBar.setScrollProperties(_local5, 0, (_local3 - _local5), verticalPageScrollSize); scrollPositionChanged = true; }; viewableHeight = _local5; scrollableHeight = _local3; }; return (_local11); } override mx_internal function removingChild(_arg1:DisplayObject):void{ super.removingChild(_arg1); _arg1.dispatchEvent(new FlexEvent(FlexEvent.REMOVE)); var _local2:ChildExistenceChangedEvent = new ChildExistenceChangedEvent(ChildExistenceChangedEvent.CHILD_REMOVE); _local2.relatedObject = _arg1; dispatchEvent(_local2); } mx_internal function get numChildrenCreated():int{ return (_numChildrenCreated); } mx_internal function rawChildren_addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ if ((((_firstChildIndex < _arg2)) && ((_arg2 < ((_firstChildIndex + _numChildren) + 1))))){ _numChildren++; } else { if (_arg2 <= _firstChildIndex){ _firstChildIndex++; }; }; super.addingChild(_arg1); $addChildAt(_arg1, _arg2); super.childAdded(_arg1); dispatchEvent(new Event("childrenChanged")); return (_arg1); } private function hasChildMatchingDescriptor(_arg1:UIComponentDescriptor):Boolean{ var _local4:int; var _local5:IUIComponent; var _local2:String = _arg1.id; if (((!((_local2 == null))) && ((document[_local2] == null)))){ return (false); }; var _local3:int = numChildren; _local4 = 0; while (_local4 < _local3) { _local5 = IUIComponent(getChildAt(_local4)); if ((((_local5 is IDeferredInstantiationUIComponent)) && ((IDeferredInstantiationUIComponent(_local5).descriptor == _arg1)))){ return (true); }; _local4++; }; if (childRepeaters){ _local3 = childRepeaters.length; _local4 = 0; while (_local4 < _local3) { if (IDeferredInstantiationUIComponent(childRepeaters[_local4]).descriptor == _arg1){ return (true); }; _local4++; }; }; return (false); } mx_internal function rawChildren_getChildByName(_arg1:String):DisplayObject{ return (super.getChildByName(_arg1)); } override public function validateDisplayList():void{ var _local1:EdgeMetrics; var _local2:Number; var _local3:Number; var _local4:Object; var _local5:Number; var _local6:Number; var _local7:Number; if (((_autoLayout) || (forceLayout))){ doingLayout = true; super.validateDisplayList(); doingLayout = false; } else { layoutChrome(unscaledWidth, unscaledHeight); }; invalidateDisplayListFlag = true; if (createContentPaneAndScrollbarsIfNeeded()){ if (((_autoLayout) || (forceLayout))){ doingLayout = true; super.validateDisplayList(); doingLayout = false; }; createContentPaneAndScrollbarsIfNeeded(); }; if (clampScrollPositions()){ scrollChildren(); }; if (contentPane){ _local1 = viewMetrics; if (overlay){ overlay.x = 0; overlay.y = 0; overlay.width = unscaledWidth; overlay.height = unscaledHeight; }; if (((horizontalScrollBar) || (verticalScrollBar))){ if (((verticalScrollBar) && ((verticalScrollPolicy == ScrollPolicy.ON)))){ _local1.right = (_local1.right - verticalScrollBar.minWidth); }; if (((horizontalScrollBar) && ((horizontalScrollPolicy == ScrollPolicy.ON)))){ _local1.bottom = (_local1.bottom - horizontalScrollBar.minHeight); }; if (horizontalScrollBar){ _local2 = ((unscaledWidth - _local1.left) - _local1.right); if (verticalScrollBar){ _local2 = (_local2 - verticalScrollBar.minWidth); }; horizontalScrollBar.setActualSize(_local2, horizontalScrollBar.minHeight); horizontalScrollBar.move(_local1.left, ((unscaledHeight - _local1.bottom) - horizontalScrollBar.minHeight)); }; if (verticalScrollBar){ _local3 = ((unscaledHeight - _local1.top) - _local1.bottom); if (horizontalScrollBar){ _local3 = (_local3 - horizontalScrollBar.minHeight); }; verticalScrollBar.setActualSize(verticalScrollBar.minWidth, _local3); verticalScrollBar.move(((unscaledWidth - _local1.right) - verticalScrollBar.minWidth), _local1.top); }; if (whiteBox){ whiteBox.x = verticalScrollBar.x; whiteBox.y = horizontalScrollBar.y; }; }; contentPane.x = _local1.left; contentPane.y = _local1.top; if (focusPane){ focusPane.x = _local1.left; focusPane.y = _local1.top; }; scrollChildren(); }; invalidateDisplayListFlag = false; if (blocker){ _local1 = viewMetrics; _local4 = (enabled) ? null : getStyle("backgroundDisabledColor"); if ((((_local4 === null)) || (isNaN(Number(_local4))))){ _local4 = getStyle("backgroundColor"); }; if ((((_local4 === null)) || (isNaN(Number(_local4))))){ _local4 = 0xFFFFFF; }; _local5 = getStyle("disabledOverlayAlpha"); if (isNaN(_local5)){ _local5 = 0.6; }; blocker.x = _local1.left; blocker.y = _local1.top; _local6 = (unscaledWidth - (_local1.left + _local1.right)); _local7 = (unscaledHeight - (_local1.top + _local1.bottom)); blocker.graphics.clear(); blocker.graphics.beginFill(uint(_local4), _local5); blocker.graphics.drawRect(0, 0, _local6, _local7); blocker.graphics.endFill(); rawChildren.setChildIndex(blocker, (rawChildren.numChildren - 1)); }; } public function set horizontalLineScrollSize(_arg1:Number):void{ scrollPropertiesChanged = true; _horizontalLineScrollSize = _arg1; invalidateDisplayList(); dispatchEvent(new Event("horizontalLineScrollSizeChanged")); } override public function initialize():void{ var _local1:*; var _local2:String; if (((((isDocument) && (documentDescriptor))) && (!(processedDescriptors)))){ _local1 = documentDescriptor.properties; if (((_local1) && (_local1.childDescriptors))){ if (_childDescriptors){ _local2 = resourceManager.getString("core", "multipleChildSets_ClassAndInstance"); throw (new Error(_local2)); }; _childDescriptors = _local1.childDescriptors; }; }; super.initialize(); } mx_internal function set forceClipping(_arg1:Boolean):void{ if (_clipContent){ if (_arg1){ _forceClippingCount++; } else { _forceClippingCount--; }; createContentPane(); scrollChildren(); }; } public function removeAllChildren():void{ while (numChildren > 0) { removeChildAt(0); }; } override public function contentToGlobal(_arg1:Point):Point{ if (contentPane){ return (contentPane.localToGlobal(_arg1)); }; return (localToGlobal(_arg1)); } public function get horizontalPageScrollSize():Number{ return (_horizontalPageScrollSize); } override mx_internal function childRemoved(_arg1:DisplayObject):void{ super.childRemoved(_arg1); invalidateSize(); invalidateDisplayList(); if (!contentPane){ _numChildren--; if (_numChildren == 0){ _firstChildIndex = super.numChildren; }; }; if (((contentPane) && (!(autoLayout)))){ forceLayout = true; UIComponentGlobals.layoutManager.addEventListener(FlexEvent.UPDATE_COMPLETE, layoutCompleteHandler, false, 0, true); }; dispatchEvent(new Event("childrenChanged")); } public function set defaultButton(_arg1:IFlexDisplayObject):void{ _defaultButton = _arg1; ContainerGlobals.focusedContainer = null; } public function get data():Object{ return (_data); } override public function get numChildren():int{ return ((contentPane) ? contentPane.numChildren : _numChildren); } public function get autoLayout():Boolean{ return (_autoLayout); } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local4:String; var _local2:Boolean = (((_arg1 == null)) || ((_arg1 == "styleName"))); if (((_local2) || (StyleManager.isSizeInvalidatingStyle(_arg1)))){ invalidateDisplayList(); }; if (((_local2) || ((_arg1 == "borderSkin")))){ if (border){ rawChildren.removeChild(DisplayObject(border)); border = null; createBorder(); }; }; if (((((((((((_local2) || ((_arg1 == "borderStyle")))) || ((_arg1 == "backgroundColor")))) || ((_arg1 == "backgroundImage")))) || ((_arg1 == "mouseShield")))) || ((_arg1 == "mouseShieldChildren")))){ createBorder(); }; super.styleChanged(_arg1); if (((_local2) || (StyleManager.isSizeInvalidatingStyle(_arg1)))){ invalidateViewMetricsAndPadding(); }; if (((_local2) || ((_arg1 == "horizontalScrollBarStyleName")))){ if (((horizontalScrollBar) && ((horizontalScrollBar is ISimpleStyleClient)))){ _local3 = getStyle("horizontalScrollBarStyleName"); ISimpleStyleClient(horizontalScrollBar).styleName = _local3; }; }; if (((_local2) || ((_arg1 == "verticalScrollBarStyleName")))){ if (((verticalScrollBar) && ((verticalScrollBar is ISimpleStyleClient)))){ _local4 = getStyle("verticalScrollBarStyleName"); ISimpleStyleClient(verticalScrollBar).styleName = _local4; }; }; } override protected function commitProperties():void{ var _local1:String; super.commitProperties(); if (changedStyles){ _local1 = ((changedStyles == MULTIPLE_PROPERTIES)) ? null : changedStyles; super.notifyStyleChangeInChildren(_local1, true); changedStyles = null; }; createOrDestroyBlocker(); } override public function finishPrint(_arg1:Object, _arg2:IFlexDisplayObject):void{ if (_arg1){ contentPane.scrollRect = Rectangle(_arg1); }; super.finishPrint(_arg1, _arg2); } public function get maxHorizontalScrollPosition():Number{ return ((horizontalScrollBar) ? horizontalScrollBar.maxScrollPosition : Math.max((scrollableWidth - viewableWidth), 0)); } public function set creationPolicy(_arg1:String):void{ _creationPolicy = _arg1; setActualCreationPolicies(_arg1); } public function set label(_arg1:String):void{ _label = _arg1; dispatchEvent(new Event("labelChanged")); } private function clampScrollPositions():Boolean{ var _local1:Boolean; if (_horizontalScrollPosition < 0){ _horizontalScrollPosition = 0; _local1 = true; } else { if (_horizontalScrollPosition > maxHorizontalScrollPosition){ _horizontalScrollPosition = maxHorizontalScrollPosition; _local1 = true; }; }; if (((horizontalScrollBar) && (!((horizontalScrollBar.scrollPosition == _horizontalScrollPosition))))){ horizontalScrollBar.scrollPosition = _horizontalScrollPosition; }; if (_verticalScrollPosition < 0){ _verticalScrollPosition = 0; _local1 = true; } else { if (_verticalScrollPosition > maxVerticalScrollPosition){ _verticalScrollPosition = maxVerticalScrollPosition; _local1 = true; }; }; if (((verticalScrollBar) && (!((verticalScrollBar.scrollPosition == _verticalScrollPosition))))){ verticalScrollBar.scrollPosition = _verticalScrollPosition; }; return (_local1); } override public function prepareToPrint(_arg1:IFlexDisplayObject):Object{ var _local2:Rectangle = (((contentPane) && (contentPane.scrollRect))) ? contentPane.scrollRect : null; if (_local2){ contentPane.scrollRect = null; }; super.prepareToPrint(_arg1); return (_local2); } mx_internal function get firstChildIndex():int{ return (_firstChildIndex); } mx_internal function rawChildren_addChild(_arg1:DisplayObject):DisplayObject{ if (_numChildren == 0){ _firstChildIndex++; }; super.addingChild(_arg1); $addChild(_arg1); super.childAdded(_arg1); dispatchEvent(new Event("childrenChanged")); return (_arg1); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local3:Object; var _local4:Number; super.updateDisplayList(_arg1, _arg2); layoutChrome(_arg1, _arg2); if (scrollPositionChanged){ clampScrollPositions(); scrollChildren(); scrollPositionChanged = false; }; if (scrollPropertiesChanged){ if (horizontalScrollBar){ horizontalScrollBar.lineScrollSize = horizontalLineScrollSize; horizontalScrollBar.pageScrollSize = horizontalPageScrollSize; }; if (verticalScrollBar){ verticalScrollBar.lineScrollSize = verticalLineScrollSize; verticalScrollBar.pageScrollSize = verticalPageScrollSize; }; scrollPropertiesChanged = false; }; if (((contentPane) && (contentPane.scrollRect))){ _local3 = (enabled) ? null : getStyle("backgroundDisabledColor"); if ((((_local3 === null)) || (isNaN(Number(_local3))))){ _local3 = getStyle("backgroundColor"); }; _local4 = getStyle("backgroundAlpha"); if (((((((!(_clipContent)) || (isNaN(Number(_local3))))) || ((_local3 === "")))) || (((!(((horizontalScrollBar) || (verticalScrollBar)))) && (!(cacheAsBitmap)))))){ _local3 = null; } else { if (((getStyle("backgroundImage")) || (getStyle("background")))){ _local3 = null; } else { if (_local4 != 1){ _local3 = null; }; }; }; contentPane.opaqueBackground = _local3; contentPane.cacheAsBitmap = !((_local3 == null)); }; } override mx_internal function addingChild(_arg1:DisplayObject):void{ var _local2:IUIComponent = IUIComponent(_arg1); super.addingChild(_arg1); invalidateSize(); invalidateDisplayList(); if (!contentPane){ if (_numChildren == 0){ _firstChildIndex = super.numChildren; }; _numChildren++; }; if (((contentPane) && (!(autoLayout)))){ forceLayout = true; UIComponentGlobals.layoutManager.addEventListener(FlexEvent.UPDATE_COMPLETE, layoutCompleteHandler, false, 0, true); }; } mx_internal function setActualCreationPolicies(_arg1:String):void{ var _local5:IFlexDisplayObject; var _local6:Container; actualCreationPolicy = _arg1; var _local2:String = _arg1; if (_arg1 == ContainerCreationPolicy.QUEUED){ _local2 = ContainerCreationPolicy.AUTO; }; var _local3:int = numChildren; var _local4:int; while (_local4 < _local3) { _local5 = IFlexDisplayObject(getChildAt(_local4)); if ((_local5 is Container)){ _local6 = Container(_local5); if (_local6.creationPolicy == null){ _local6.setActualCreationPolicies(_local2); }; }; _local4++; }; } } }//package mx.core
Section 148
//ContainerCreationPolicy (mx.core.ContainerCreationPolicy) package mx.core { public final class ContainerCreationPolicy { public static const ALL:String = "all"; public static const QUEUED:String = "queued"; public static const NONE:String = "none"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const AUTO:String = "auto"; } }//package mx.core
Section 149
//ContainerGlobals (mx.core.ContainerGlobals) package mx.core { import flash.display.*; import mx.managers.*; public class ContainerGlobals { public static var focusedContainer:InteractiveObject; public static function checkFocus(_arg1:InteractiveObject, _arg2:InteractiveObject):void{ var _local6:IFocusManager; var _local7:IButton; var _local3:InteractiveObject = _arg2; var _local4:InteractiveObject = _arg2; var _local5:IUIComponent; if (((!((_arg2 == null))) && ((_arg1 == _arg2)))){ return; }; while (_local4) { if (_local4.parent){ _local3 = _local4.parent; } else { _local3 = null; }; if ((_local4 is IUIComponent)){ _local5 = IUIComponent(_local4); }; _local4 = _local3; if (((((_local4) && ((_local4 is IContainer)))) && (IContainer(_local4).defaultButton))){ break; }; }; if (((!((ContainerGlobals.focusedContainer == _local4))) || ((((ContainerGlobals.focusedContainer == null)) && ((_local4 == null)))))){ if (!_local4){ _local4 = InteractiveObject(_local5); }; if (((_local4) && ((_local4 is IContainer)))){ _local6 = IContainer(_local4).focusManager; if (!_local6){ return; }; _local7 = (IContainer(_local4).defaultButton as IButton); if (_local7){ ContainerGlobals.focusedContainer = InteractiveObject(_local4); _local6.defaultButton = (_local7 as IButton); } else { ContainerGlobals.focusedContainer = InteractiveObject(_local4); _local6.defaultButton = null; }; }; }; } } }//package mx.core
Section 150
//ContainerLayout (mx.core.ContainerLayout) package mx.core { public final class ContainerLayout { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; public static const ABSOLUTE:String = "absolute"; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.core
Section 151
//ContainerRawChildrenList (mx.core.ContainerRawChildrenList) package mx.core { import flash.display.*; import flash.geom.*; public class ContainerRawChildrenList implements IChildList { private var owner:Container; mx_internal static const VERSION:String = "3.2.0.3794"; public function ContainerRawChildrenList(_arg1:Container){ this.owner = _arg1; } public function addChild(_arg1:DisplayObject):DisplayObject{ return (owner.mx_internal::rawChildren_addChild(_arg1)); } public function getChildIndex(_arg1:DisplayObject):int{ return (owner.mx_internal::rawChildren_getChildIndex(_arg1)); } public function setChildIndex(_arg1:DisplayObject, _arg2:int):void{ var _local3 = owner; _local3.mx_internal::rawChildren_setChildIndex(_arg1, _arg2); } public function getChildByName(_arg1:String):DisplayObject{ return (owner.mx_internal::rawChildren_getChildByName(_arg1)); } public function removeChildAt(_arg1:int):DisplayObject{ return (owner.mx_internal::rawChildren_removeChildAt(_arg1)); } public function get numChildren():int{ return (owner.mx_internal::$numChildren); } public function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ return (owner.mx_internal::rawChildren_addChildAt(_arg1, _arg2)); } public function getObjectsUnderPoint(_arg1:Point):Array{ return (owner.mx_internal::rawChildren_getObjectsUnderPoint(_arg1)); } public function contains(_arg1:DisplayObject):Boolean{ return (owner.mx_internal::rawChildren_contains(_arg1)); } public function removeChild(_arg1:DisplayObject):DisplayObject{ return (owner.mx_internal::rawChildren_removeChild(_arg1)); } public function getChildAt(_arg1:int):DisplayObject{ return (owner.mx_internal::rawChildren_getChildAt(_arg1)); } } }//package mx.core
Section 152
//DragSource (mx.core.DragSource) package mx.core { public class DragSource { private var formatHandlers:Object; private var dataHolder:Object; private var _formats:Array; mx_internal static const VERSION:String = "3.2.0.3794"; public function DragSource(){ dataHolder = {}; formatHandlers = {}; _formats = []; super(); } public function hasFormat(_arg1:String):Boolean{ var _local2:int = _formats.length; var _local3:int; while (_local3 < _local2) { if (_formats[_local3] == _arg1){ return (true); }; _local3++; }; return (false); } public function addData(_arg1:Object, _arg2:String):void{ _formats.push(_arg2); dataHolder[_arg2] = _arg1; } public function dataForFormat(_arg1:String):Object{ var _local2:Object = dataHolder[_arg1]; if (_local2){ return (_local2); }; if (formatHandlers[_arg1]){ return (formatHandlers[_arg1]()); }; return (null); } public function addHandler(_arg1:Function, _arg2:String):void{ _formats.push(_arg2); formatHandlers[_arg2] = _arg1; } public function get formats():Array{ return (_formats); } } }//package mx.core
Section 153
//EdgeMetrics (mx.core.EdgeMetrics) package mx.core { public class EdgeMetrics { public var top:Number; public var left:Number; public var bottom:Number; public var right:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public static const EMPTY:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0); ; public function EdgeMetrics(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0){ this.left = _arg1; this.top = _arg2; this.right = _arg3; this.bottom = _arg4; } public function clone():EdgeMetrics{ return (new EdgeMetrics(left, top, right, bottom)); } } }//package mx.core
Section 154
//EmbeddedFont (mx.core.EmbeddedFont) package mx.core { public class EmbeddedFont { private var _fontName:String; private var _fontStyle:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function EmbeddedFont(_arg1:String, _arg2:Boolean, _arg3:Boolean){ _fontName = _arg1; _fontStyle = EmbeddedFontRegistry.getFontStyle(_arg2, _arg3); } public function get fontStyle():String{ return (_fontStyle); } public function get fontName():String{ return (_fontName); } } }//package mx.core
Section 155
//EmbeddedFontRegistry (mx.core.EmbeddedFontRegistry) package mx.core { import flash.text.*; import flash.utils.*; public class EmbeddedFontRegistry implements IEmbeddedFontRegistry { mx_internal static const VERSION:String = "3.2.0.3794"; private static var fonts:Object = {}; private static var instance:IEmbeddedFontRegistry; public function getAssociatedModuleFactory(_arg1:EmbeddedFont, _arg2:IFlexModuleFactory):IFlexModuleFactory{ var _local4:int; var _local5:Object; var _local3:Dictionary = fonts[createFontKey(_arg1)]; if (_local3){ _local4 = _local3[_arg2]; if (_local4){ return (_arg2); }; for (_local5 in _local3) { return ((_local5 as IFlexModuleFactory)); }; }; return (null); } public function deregisterFont(_arg1:EmbeddedFont, _arg2:IFlexModuleFactory):void{ var _local5:int; var _local6:Object; var _local3:String = createFontKey(_arg1); var _local4:Dictionary = fonts[_local3]; if (_local4 != null){ delete _local4[_arg2]; _local5 = 0; for (_local6 in _local4) { _local5++; }; if (_local5 == 0){ delete fonts[_local3]; }; }; } public function getFonts():Array{ var _local2:String; var _local1:Array = []; for (_local2 in fonts) { _local1.push(createEmbeddedFont(_local2)); }; return (_local1); } public function registerFont(_arg1:EmbeddedFont, _arg2:IFlexModuleFactory):void{ var _local3:String = createFontKey(_arg1); var _local4:Dictionary = fonts[_local3]; if (!_local4){ _local4 = new Dictionary(true); fonts[_local3] = _local4; }; _local4[_arg2] = 1; } public static function registerFonts(_arg1:Object, _arg2:IFlexModuleFactory):void{ var _local4:Object; var _local5:Object; var _local6:String; var _local7:Boolean; var _local8:Boolean; var _local3:IEmbeddedFontRegistry = IEmbeddedFontRegistry(Singleton.getInstance("mx.core::IEmbeddedFontRegistry")); for (_local4 in _arg1) { _local5 = _arg1[_local4]; for (_local6 in _local5) { if (_local5[_local6] == false){ } else { if (_local6 == "regular"){ _local7 = false; _local8 = false; } else { if (_local6 == "boldItalic"){ _local7 = true; _local8 = true; } else { if (_local6 == "bold"){ _local7 = true; _local8 = false; } else { if (_local6 == "italic"){ _local7 = false; _local8 = true; }; }; }; }; _local3.registerFont(new EmbeddedFont(String(_local4), _local7, _local8), _arg2); }; }; }; } public static function getInstance():IEmbeddedFontRegistry{ if (!instance){ instance = new (EmbeddedFontRegistry); }; return (instance); } public static function getFontStyle(_arg1:Boolean, _arg2:Boolean):String{ var _local3:String = FontStyle.REGULAR; if (((_arg1) && (_arg2))){ _local3 = FontStyle.BOLD_ITALIC; } else { if (_arg1){ _local3 = FontStyle.BOLD; } else { if (_arg2){ _local3 = FontStyle.ITALIC; }; }; }; return (_local3); } private static function createFontKey(_arg1:EmbeddedFont):String{ return ((_arg1.fontName + _arg1.fontStyle)); } private static function createEmbeddedFont(_arg1:String):EmbeddedFont{ var _local2:String; var _local3:Boolean; var _local4:Boolean; var _local5:int = endsWith(_arg1, FontStyle.REGULAR); if (_local5 > 0){ _local2 = _arg1.substring(0, _local5); return (new EmbeddedFont(_local2, false, false)); }; _local5 = endsWith(_arg1, FontStyle.BOLD); if (_local5 > 0){ _local2 = _arg1.substring(0, _local5); return (new EmbeddedFont(_local2, true, false)); }; _local5 = endsWith(_arg1, FontStyle.BOLD_ITALIC); if (_local5 > 0){ _local2 = _arg1.substring(0, _local5); return (new EmbeddedFont(_local2, true, true)); }; _local5 = endsWith(_arg1, FontStyle.ITALIC); if (_local5 > 0){ _local2 = _arg1.substring(0, _local5); return (new EmbeddedFont(_local2, false, true)); }; return (new EmbeddedFont("", false, false)); } private static function endsWith(_arg1:String, _arg2:String):int{ var _local3:int = _arg1.lastIndexOf(_arg2); if ((((_local3 > 0)) && (((_local3 + _arg2.length) == _arg1.length)))){ return (_local3); }; return (-1); } } }//package mx.core
Section 156
//EventPriority (mx.core.EventPriority) package mx.core { public final class EventPriority { public static const DEFAULT:int = 0; public static const BINDING:int = 100; public static const DEFAULT_HANDLER:int = -50; public static const EFFECT:int = -100; public static const CURSOR_MANAGEMENT:int = 200; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.core
Section 157
//FlexLoader (mx.core.FlexLoader) package mx.core { import flash.display.*; import mx.utils.*; public class FlexLoader extends Loader { mx_internal static const VERSION:String = "3.2.0.3794"; public function FlexLoader(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 158
//FlexShape (mx.core.FlexShape) package mx.core { import flash.display.*; import mx.utils.*; public class FlexShape extends Shape { mx_internal static const VERSION:String = "3.2.0.3794"; public function FlexShape(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 159
//FlexSprite (mx.core.FlexSprite) package mx.core { import flash.display.*; import mx.utils.*; public class FlexSprite extends Sprite { mx_internal static const VERSION:String = "3.2.0.3794"; public function FlexSprite(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 160
//FlexTextField (mx.core.FlexTextField) package mx.core { import flash.text.*; import mx.utils.*; public class FlexTextField extends TextField { mx_internal static const VERSION:String = "3.2.0.3794"; public function FlexTextField(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 161
//FlexVersion (mx.core.FlexVersion) package mx.core { import mx.resources.*; public class FlexVersion { public static const VERSION_2_0_1:uint = 33554433; public static const CURRENT_VERSION:uint = 50331648; public static const VERSION_3_0:uint = 50331648; public static const VERSION_2_0:uint = 33554432; public static const VERSION_ALREADY_READ:String = "versionAlreadyRead"; public static const VERSION_ALREADY_SET:String = "versionAlreadySet"; mx_internal static const VERSION:String = "3.2.0.3794"; private static var compatibilityVersionChanged:Boolean = false; private static var _compatibilityErrorFunction:Function; private static var _compatibilityVersion:uint = 50331648; private static var compatibilityVersionRead:Boolean = false; mx_internal static function changeCompatibilityVersionString(_arg1:String):void{ var _local2:Array = _arg1.split("."); var _local3:uint = parseInt(_local2[0]); var _local4:uint = parseInt(_local2[1]); var _local5:uint = parseInt(_local2[2]); _compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5); } public static function set compatibilityVersion(_arg1:uint):void{ var _local2:String; if (_arg1 == _compatibilityVersion){ return; }; if (compatibilityVersionChanged){ if (compatibilityErrorFunction == null){ _local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_SET); throw (new Error(_local2)); }; compatibilityErrorFunction(_arg1, VERSION_ALREADY_SET); }; if (compatibilityVersionRead){ if (compatibilityErrorFunction == null){ _local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_READ); throw (new Error(_local2)); }; compatibilityErrorFunction(_arg1, VERSION_ALREADY_READ); }; _compatibilityVersion = _arg1; compatibilityVersionChanged = true; } public static function get compatibilityVersion():uint{ compatibilityVersionRead = true; return (_compatibilityVersion); } public static function set compatibilityErrorFunction(_arg1:Function):void{ _compatibilityErrorFunction = _arg1; } public static function set compatibilityVersionString(_arg1:String):void{ var _local2:Array = _arg1.split("."); var _local3:uint = parseInt(_local2[0]); var _local4:uint = parseInt(_local2[1]); var _local5:uint = parseInt(_local2[2]); compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5); } public static function get compatibilityErrorFunction():Function{ return (_compatibilityErrorFunction); } public static function get compatibilityVersionString():String{ var _local1:uint = ((compatibilityVersion >> 24) & 0xFF); var _local2:uint = ((compatibilityVersion >> 16) & 0xFF); var _local3:uint = (compatibilityVersion & 0xFFFF); return (((((_local1.toString() + ".") + _local2.toString()) + ".") + _local3.toString())); } } }//package mx.core
Section 162
//IBorder (mx.core.IBorder) package mx.core { public interface IBorder { function get borderMetrics():EdgeMetrics; } }//package mx.core
Section 163
//IButton (mx.core.IButton) package mx.core { public interface IButton extends IUIComponent { function get emphasized():Boolean; function set emphasized(_arg1:Boolean):void; function callLater(_arg1:Function, _arg2:Array=null):void; } }//package mx.core
Section 164
//IChildList (mx.core.IChildList) package mx.core { import flash.display.*; import flash.geom.*; public interface IChildList { function get numChildren():int; function removeChild(_arg1:DisplayObject):DisplayObject; function getChildByName(_arg1:String):DisplayObject; function removeChildAt(_arg1:int):DisplayObject; function getChildIndex(_arg1:DisplayObject):int; function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject; function getObjectsUnderPoint(_arg1:Point):Array; function setChildIndex(_arg1:DisplayObject, _arg2:int):void; function getChildAt(_arg1:int):DisplayObject; function addChild(_arg1:DisplayObject):DisplayObject; function contains(_arg1:DisplayObject):Boolean; } }//package mx.core
Section 165
//IConstraintClient (mx.core.IConstraintClient) package mx.core { public interface IConstraintClient { function setConstraintValue(_arg1:String, _arg2):void; function getConstraintValue(_arg1:String); } }//package mx.core
Section 166
//IContainer (mx.core.IContainer) package mx.core { import flash.display.*; import flash.geom.*; import flash.media.*; import flash.text.*; import mx.managers.*; public interface IContainer extends IUIComponent { function set hitArea(_arg1:Sprite):void; function swapChildrenAt(_arg1:int, _arg2:int):void; function getChildByName(_arg1:String):DisplayObject; function get doubleClickEnabled():Boolean; function get graphics():Graphics; function get useHandCursor():Boolean; function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject; function set mouseChildren(_arg1:Boolean):void; function set creatingContentPane(_arg1:Boolean):void; function get textSnapshot():TextSnapshot; function getChildIndex(_arg1:DisplayObject):int; function set doubleClickEnabled(_arg1:Boolean):void; function getObjectsUnderPoint(_arg1:Point):Array; function get creatingContentPane():Boolean; function setChildIndex(_arg1:DisplayObject, _arg2:int):void; function get soundTransform():SoundTransform; function set useHandCursor(_arg1:Boolean):void; function get numChildren():int; function contains(_arg1:DisplayObject):Boolean; function get verticalScrollPosition():Number; function set defaultButton(_arg1:IFlexDisplayObject):void; function swapChildren(_arg1:DisplayObject, _arg2:DisplayObject):void; function set horizontalScrollPosition(_arg1:Number):void; function get focusManager():IFocusManager; function startDrag(_arg1:Boolean=false, _arg2:Rectangle=null):void; function set mouseEnabled(_arg1:Boolean):void; function getChildAt(_arg1:int):DisplayObject; function set soundTransform(_arg1:SoundTransform):void; function get tabChildren():Boolean; function get tabIndex():int; function set focusRect(_arg1:Object):void; function get hitArea():Sprite; function get mouseChildren():Boolean; function removeChildAt(_arg1:int):DisplayObject; function get defaultButton():IFlexDisplayObject; function stopDrag():void; function set tabEnabled(_arg1:Boolean):void; function get horizontalScrollPosition():Number; function get focusRect():Object; function get viewMetrics():EdgeMetrics; function set verticalScrollPosition(_arg1:Number):void; function get dropTarget():DisplayObject; function get mouseEnabled():Boolean; function set tabChildren(_arg1:Boolean):void; function set buttonMode(_arg1:Boolean):void; function get tabEnabled():Boolean; function get buttonMode():Boolean; function removeChild(_arg1:DisplayObject):DisplayObject; function set tabIndex(_arg1:int):void; function addChild(_arg1:DisplayObject):DisplayObject; function areInaccessibleObjectsUnderPoint(_arg1:Point):Boolean; } }//package mx.core
Section 167
//IDataRenderer (mx.core.IDataRenderer) package mx.core { public interface IDataRenderer { function get data():Object; function set data(_arg1:Object):void; } }//package mx.core
Section 168
//IDeferredInstantiationUIComponent (mx.core.IDeferredInstantiationUIComponent) package mx.core { public interface IDeferredInstantiationUIComponent extends IUIComponent { function set cacheHeuristic(_arg1:Boolean):void; function createReferenceOnParentDocument(_arg1:IFlexDisplayObject):void; function get cachePolicy():String; function set id(_arg1:String):void; function registerEffects(_arg1:Array):void; function executeBindings(_arg1:Boolean=false):void; function get id():String; function deleteReferenceOnParentDocument(_arg1:IFlexDisplayObject):void; function set descriptor(_arg1:UIComponentDescriptor):void; function get descriptor():UIComponentDescriptor; } }//package mx.core
Section 169
//IEmbeddedFontRegistry (mx.core.IEmbeddedFontRegistry) package mx.core { public interface IEmbeddedFontRegistry { function getAssociatedModuleFactory(_arg1:EmbeddedFont, _arg2:IFlexModuleFactory):IFlexModuleFactory; function registerFont(_arg1:EmbeddedFont, _arg2:IFlexModuleFactory):void; function deregisterFont(_arg1:EmbeddedFont, _arg2:IFlexModuleFactory):void; function getFonts():Array; } }//package mx.core
Section 170
//IFactory (mx.core.IFactory) package mx.core { public interface IFactory { function newInstance(); } }//package mx.core
Section 171
//IFlexAsset (mx.core.IFlexAsset) package mx.core { public interface IFlexAsset { } }//package mx.core
Section 172
//IFlexDisplayObject (mx.core.IFlexDisplayObject) package mx.core { import flash.display.*; import flash.geom.*; import flash.events.*; import flash.accessibility.*; public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher { function get visible():Boolean; function get rotation():Number; function localToGlobal(_arg1:Point):Point; function get name():String; function set width(_arg1:Number):void; function get measuredHeight():Number; function get blendMode():String; function get scale9Grid():Rectangle; function set name(_arg1:String):void; function set scaleX(_arg1:Number):void; function set scaleY(_arg1:Number):void; function get measuredWidth():Number; function get accessibilityProperties():AccessibilityProperties; function set scrollRect(_arg1:Rectangle):void; function get cacheAsBitmap():Boolean; function globalToLocal(_arg1:Point):Point; function get height():Number; function set blendMode(_arg1:String):void; function get parent():DisplayObjectContainer; function getBounds(_arg1:DisplayObject):Rectangle; function get opaqueBackground():Object; function set scale9Grid(_arg1:Rectangle):void; function setActualSize(_arg1:Number, _arg2:Number):void; function set alpha(_arg1:Number):void; function set accessibilityProperties(_arg1:AccessibilityProperties):void; function get width():Number; function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Boolean=false):Boolean; function set cacheAsBitmap(_arg1:Boolean):void; function get scaleX():Number; function get scaleY():Number; function get scrollRect():Rectangle; function get mouseX():Number; function get mouseY():Number; function set height(_arg1:Number):void; function set mask(_arg1:DisplayObject):void; function getRect(_arg1:DisplayObject):Rectangle; function get alpha():Number; function set transform(_arg1:Transform):void; function move(_arg1:Number, _arg2:Number):void; function get loaderInfo():LoaderInfo; function get root():DisplayObject; function hitTestObject(_arg1:DisplayObject):Boolean; function set opaqueBackground(_arg1:Object):void; function set visible(_arg1:Boolean):void; function get mask():DisplayObject; function set x(_arg1:Number):void; function set y(_arg1:Number):void; function get transform():Transform; function set filters(_arg1:Array):void; function get x():Number; function get y():Number; function get filters():Array; function set rotation(_arg1:Number):void; function get stage():Stage; } }//package mx.core
Section 173
//IFlexModule (mx.core.IFlexModule) package mx.core { public interface IFlexModule { function set moduleFactory(_arg1:IFlexModuleFactory):void; function get moduleFactory():IFlexModuleFactory; } }//package mx.core
Section 174
//IFlexModuleFactory (mx.core.IFlexModuleFactory) package mx.core { public interface IFlexModuleFactory { function create(... _args):Object; function info():Object; } }//package mx.core
Section 175
//IFontContextComponent (mx.core.IFontContextComponent) package mx.core { public interface IFontContextComponent { function get fontContext():IFlexModuleFactory; function set fontContext(_arg1:IFlexModuleFactory):void; } }//package mx.core
Section 176
//IIMESupport (mx.core.IIMESupport) package mx.core { public interface IIMESupport { function set imeMode(_arg1:String):void; function get imeMode():String; } }//package mx.core
Section 177
//IInvalidating (mx.core.IInvalidating) package mx.core { public interface IInvalidating { function validateNow():void; function invalidateSize():void; function invalidateDisplayList():void; function invalidateProperties():void; } }//package mx.core
Section 178
//IMXMLObject (mx.core.IMXMLObject) package mx.core { public interface IMXMLObject { function initialized(_arg1:Object, _arg2:String):void; } }//package mx.core
Section 179
//IProgrammaticSkin (mx.core.IProgrammaticSkin) package mx.core { public interface IProgrammaticSkin { function validateNow():void; function validateDisplayList():void; } }//package mx.core
Section 180
//IPropertyChangeNotifier (mx.core.IPropertyChangeNotifier) package mx.core { import flash.events.*; public interface IPropertyChangeNotifier extends IEventDispatcher, IUID { } }//package mx.core
Section 181
//IRawChildrenContainer (mx.core.IRawChildrenContainer) package mx.core { public interface IRawChildrenContainer { function get rawChildren():IChildList; } }//package mx.core
Section 182
//IRectangularBorder (mx.core.IRectangularBorder) package mx.core { import flash.geom.*; public interface IRectangularBorder extends IBorder { function get backgroundImageBounds():Rectangle; function get hasBackgroundImage():Boolean; function set backgroundImageBounds(_arg1:Rectangle):void; function layoutBackgroundImage():void; } }//package mx.core
Section 183
//IRepeater (mx.core.IRepeater) package mx.core { public interface IRepeater { function get container():IContainer; function set startingIndex(_arg1:int):void; function get startingIndex():int; function set recycleChildren(_arg1:Boolean):void; function get currentItem():Object; function get count():int; function get recycleChildren():Boolean; function executeChildBindings():void; function set dataProvider(_arg1:Object):void; function initializeRepeater(_arg1:IContainer, _arg2:Boolean):void; function get currentIndex():int; function get dataProvider():Object; function set count(_arg1:int):void; } }//package mx.core
Section 184
//IRepeaterClient (mx.core.IRepeaterClient) package mx.core { public interface IRepeaterClient { function get instanceIndices():Array; function set instanceIndices(_arg1:Array):void; function get isDocument():Boolean; function set repeaters(_arg1:Array):void; function initializeRepeaterArrays(_arg1:IRepeaterClient):void; function get repeaters():Array; function set repeaterIndices(_arg1:Array):void; function get repeaterIndices():Array; } }//package mx.core
Section 185
//IStateClient (mx.core.IStateClient) package mx.core { public interface IStateClient { function get currentState():String; function set currentState(_arg1:String):void; } }//package mx.core
Section 186
//ISWFBridgeGroup (mx.core.ISWFBridgeGroup) package mx.core { import flash.events.*; public interface ISWFBridgeGroup { function getChildBridgeProvider(_arg1:IEventDispatcher):ISWFBridgeProvider; function removeChildBridge(_arg1:IEventDispatcher):void; function get parentBridge():IEventDispatcher; function addChildBridge(_arg1:IEventDispatcher, _arg2:ISWFBridgeProvider):void; function set parentBridge(_arg1:IEventDispatcher):void; function containsBridge(_arg1:IEventDispatcher):Boolean; function getChildBridges():Array; } }//package mx.core
Section 187
//ISWFBridgeProvider (mx.core.ISWFBridgeProvider) package mx.core { import flash.events.*; public interface ISWFBridgeProvider { function get childAllowsParent():Boolean; function get swfBridge():IEventDispatcher; function get parentAllowsChild():Boolean; } }//package mx.core
Section 188
//ISWFLoader (mx.core.ISWFLoader) package mx.core { import flash.geom.*; public interface ISWFLoader extends ISWFBridgeProvider { function getVisibleApplicationRect(_arg1:Boolean=false):Rectangle; function set loadForCompatibility(_arg1:Boolean):void; function get loadForCompatibility():Boolean; } }//package mx.core
Section 189
//ITextFieldFactory (mx.core.ITextFieldFactory) package mx.core { import flash.text.*; public interface ITextFieldFactory { function createTextField(_arg1:IFlexModuleFactory):TextField; } }//package mx.core
Section 190
//IToolTip (mx.core.IToolTip) package mx.core { import flash.geom.*; public interface IToolTip extends IUIComponent { function set text(_arg1:String):void; function get screen():Rectangle; function get text():String; } }//package mx.core
Section 191
//IUIComponent (mx.core.IUIComponent) package mx.core { import flash.display.*; import mx.managers.*; public interface IUIComponent extends IFlexDisplayObject { function set focusPane(_arg1:Sprite):void; function get enabled():Boolean; function set enabled(_arg1:Boolean):void; function set isPopUp(_arg1:Boolean):void; function get explicitMinHeight():Number; function get percentWidth():Number; function get isPopUp():Boolean; function get owner():DisplayObjectContainer; function get percentHeight():Number; function get baselinePosition():Number; function owns(_arg1:DisplayObject):Boolean; function initialize():void; function get maxWidth():Number; function get minWidth():Number; function getExplicitOrMeasuredWidth():Number; function get explicitMaxWidth():Number; function get explicitMaxHeight():Number; function set percentHeight(_arg1:Number):void; function get minHeight():Number; function set percentWidth(_arg1:Number):void; function get document():Object; function get focusPane():Sprite; function getExplicitOrMeasuredHeight():Number; function set tweeningProperties(_arg1:Array):void; function set explicitWidth(_arg1:Number):void; function set measuredMinHeight(_arg1:Number):void; function get explicitMinWidth():Number; function get tweeningProperties():Array; function get maxHeight():Number; function set owner(_arg1:DisplayObjectContainer):void; function set includeInLayout(_arg1:Boolean):void; function setVisible(_arg1:Boolean, _arg2:Boolean=false):void; function parentChanged(_arg1:DisplayObjectContainer):void; function get explicitWidth():Number; function get measuredMinHeight():Number; function set measuredMinWidth(_arg1:Number):void; function set explicitHeight(_arg1:Number):void; function get includeInLayout():Boolean; function get measuredMinWidth():Number; function get explicitHeight():Number; function set systemManager(_arg1:ISystemManager):void; function set document(_arg1:Object):void; function get systemManager():ISystemManager; } }//package mx.core
Section 192
//IUID (mx.core.IUID) package mx.core { public interface IUID { function get uid():String; function set uid(_arg1:String):void; } }//package mx.core
Section 193
//IUITextField (mx.core.IUITextField) package mx.core { import flash.display.*; import flash.geom.*; import flash.text.*; import mx.managers.*; import mx.styles.*; public interface IUITextField extends IIMESupport, IFlexModule, IInvalidating, ISimpleStyleClient, IToolTipManagerClient, IUIComponent { function replaceText(_arg1:int, _arg2:int, _arg3:String):void; function get doubleClickEnabled():Boolean; function get nestLevel():int; function get caretIndex():int; function set doubleClickEnabled(_arg1:Boolean):void; function get maxScrollH():int; function set nestLevel(_arg1:int):void; function get numLines():int; function get scrollH():int; function setColor(_arg1:uint):void; function get maxScrollV():int; function getImageReference(_arg1:String):DisplayObject; function get scrollV():int; function get border():Boolean; function get text():String; function get styleSheet():StyleSheet; function getCharBoundaries(_arg1:int):Rectangle; function get background():Boolean; function set scrollH(_arg1:int):void; function getFirstCharInParagraph(_arg1:int):int; function get type():String; function replaceSelectedText(_arg1:String):void; function set borderColor(_arg1:uint):void; function get alwaysShowSelection():Boolean; function get sharpness():Number; function get tabIndex():int; function get textColor():uint; function set defaultTextFormat(_arg1:TextFormat):void; function get condenseWhite():Boolean; function get displayAsPassword():Boolean; function get autoSize():String; function setSelection(_arg1:int, _arg2:int):void; function set scrollV(_arg1:int):void; function set useRichTextClipboard(_arg1:Boolean):void; function get selectionBeginIndex():int; function get selectable():Boolean; function set border(_arg1:Boolean):void; function set multiline(_arg1:Boolean):void; function set background(_arg1:Boolean):void; function set embedFonts(_arg1:Boolean):void; function set text(_arg1:String):void; function get selectionEndIndex():int; function set mouseWheelEnabled(_arg1:Boolean):void; function appendText(_arg1:String):void; function get antiAliasType():String; function set styleSheet(_arg1:StyleSheet):void; function set nonInheritingStyles(_arg1:Object):void; function set textColor(_arg1:uint):void; function get wordWrap():Boolean; function getLineIndexAtPoint(_arg1:Number, _arg2:Number):int; function get htmlText():String; function set tabIndex(_arg1:int):void; function get thickness():Number; function getLineIndexOfChar(_arg1:int):int; function get bottomScrollV():int; function set restrict(_arg1:String):void; function set alwaysShowSelection(_arg1:Boolean):void; function getTextFormat(_arg1:int=-1, _arg2:int=-1):TextFormat; function set sharpness(_arg1:Number):void; function set type(_arg1:String):void; function setTextFormat(_arg1:TextFormat, _arg2:int=-1, _arg3:int=-1):void; function set gridFitType(_arg1:String):void; function getUITextFormat():UITextFormat; function set inheritingStyles(_arg1:Object):void; function setFocus():void; function get borderColor():uint; function set condenseWhite(_arg1:Boolean):void; function get textWidth():Number; function getLineOffset(_arg1:int):int; function set displayAsPassword(_arg1:Boolean):void; function set autoSize(_arg1:String):void; function get defaultTextFormat():TextFormat; function get useRichTextClipboard():Boolean; function get nonZeroTextHeight():Number; function set backgroundColor(_arg1:uint):void; function get embedFonts():Boolean; function set selectable(_arg1:Boolean):void; function get multiline():Boolean; function set maxChars(_arg1:int):void; function get textHeight():Number; function get nonInheritingStyles():Object; function getLineText(_arg1:int):String; function set focusRect(_arg1:Object):void; function get mouseWheelEnabled():Boolean; function get restrict():String; function getParagraphLength(_arg1:int):int; function set mouseEnabled(_arg1:Boolean):void; function get gridFitType():String; function get inheritingStyles():Object; function set ignorePadding(_arg1:Boolean):void; function set antiAliasType(_arg1:String):void; function get backgroundColor():uint; function getCharIndexAtPoint(_arg1:Number, _arg2:Number):int; function set tabEnabled(_arg1:Boolean):void; function get maxChars():int; function get focusRect():Object; function get ignorePadding():Boolean; function get mouseEnabled():Boolean; function get length():int; function set wordWrap(_arg1:Boolean):void; function get tabEnabled():Boolean; function set thickness(_arg1:Number):void; function getLineLength(_arg1:int):int; function truncateToFit(_arg1:String=null):Boolean; function set htmlText(_arg1:String):void; function getLineMetrics(_arg1:int):TextLineMetrics; function getStyle(_arg1:String); } }//package mx.core
Section 194
//LayoutContainer (mx.core.LayoutContainer) package mx.core { import flash.events.*; import mx.containers.*; import mx.containers.utilityClasses.*; public class LayoutContainer extends Container implements IConstraintLayout { private var _constraintColumns:Array; protected var layoutObject:Layout; private var _layout:String;// = "vertical" private var processingCreationQueue:Boolean;// = false protected var boxLayoutClass:Class; private var resizeHandlerAdded:Boolean;// = false private var preloadObj:Object; private var creationQueue:Array; private var _constraintRows:Array; protected var canvasLayoutClass:Class; mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var useProgressiveLayout:Boolean = false; public function LayoutContainer(){ layoutObject = new BoxLayout(); canvasLayoutClass = CanvasLayout; boxLayoutClass = BoxLayout; creationQueue = []; _constraintColumns = []; _constraintRows = []; super(); layoutObject.target = this; } public function get constraintColumns():Array{ return (_constraintColumns); } override mx_internal function get usePadding():Boolean{ return (!((layout == ContainerLayout.ABSOLUTE))); } override protected function layoutChrome(_arg1:Number, _arg2:Number):void{ super.layoutChrome(_arg1, _arg2); if (!doingLayout){ createBorder(); }; } public function set constraintColumns(_arg1:Array):void{ var _local2:int; var _local3:int; if (_arg1 != _constraintColumns){ _local2 = _arg1.length; _local3 = 0; while (_local3 < _local2) { ConstraintColumn(_arg1[_local3]).container = this; _local3++; }; _constraintColumns = _arg1; invalidateSize(); invalidateDisplayList(); }; } public function set layout(_arg1:String):void{ if (_layout != _arg1){ _layout = _arg1; if (layoutObject){ layoutObject.target = null; }; if (_layout == ContainerLayout.ABSOLUTE){ layoutObject = new canvasLayoutClass(); } else { layoutObject = new boxLayoutClass(); if (_layout == ContainerLayout.VERTICAL){ BoxLayout(layoutObject).direction = BoxDirection.VERTICAL; } else { BoxLayout(layoutObject).direction = BoxDirection.HORIZONTAL; }; }; if (layoutObject){ layoutObject.target = this; }; invalidateSize(); invalidateDisplayList(); dispatchEvent(new Event("layoutChanged")); }; } public function get constraintRows():Array{ return (_constraintRows); } override protected function measure():void{ super.measure(); layoutObject.measure(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); layoutObject.updateDisplayList(_arg1, _arg2); createBorder(); } public function get layout():String{ return (_layout); } public function set constraintRows(_arg1:Array):void{ var _local2:int; var _local3:int; if (_arg1 != _constraintRows){ _local2 = _arg1.length; _local3 = 0; while (_local3 < _local2) { ConstraintRow(_arg1[_local3]).container = this; _local3++; }; _constraintRows = _arg1; invalidateSize(); invalidateDisplayList(); }; } } }//package mx.core
Section 195
//mx_internal (mx.core.mx_internal) package mx.core { public namespace mx_internal = "http://www.adobe.com/2006/flex/mx/internal"; }//package mx.core
Section 196
//Repeater (mx.core.Repeater) package mx.core { import flash.display.*; import mx.automation.*; import flash.events.*; import mx.events.*; import mx.collections.*; import mx.collections.errors.*; public class Repeater extends UIComponent implements IRepeater { private var _container:Container; private var _count:int;// = -1 private var descriptorIndex:int; public var childDescriptors:Array; mx_internal var createdComponents:Array; private var collection:ICollectionView; private var _currentIndex:int; private var created:Boolean;// = false private var iterator:IViewCursor; private var _startingIndex:int;// = 0 private var _recycleChildren:Boolean;// = false mx_internal static const VERSION:String = "3.2.0.3794"; public function get container():IContainer{ return ((_container as IContainer)); } private function createComponentFromDescriptor(_arg1:int, _arg2:int, _arg3:Boolean):IFlexDisplayObject{ var _local4:UIComponentDescriptor = childDescriptors[_arg2]; if (!_local4.document){ _local4.document = document; }; _local4.instanceIndices = (instanceIndices) ? instanceIndices : []; _local4.instanceIndices.push(_arg1); _local4.repeaters = repeaters; _local4.repeaters.push(this); _local4.repeaterIndices = repeaterIndices; _local4.repeaterIndices.push((startingIndex + _arg1)); _local4.invalidateProperties(); var _local5:IFlexDisplayObject = Container(container).createComponentFromDescriptor(_local4, _arg3); _local4.instanceIndices = null; _local4.repeaters = null; _local4.repeaterIndices = null; dispatchEvent(new Event("nextRepeaterItem")); return (_local5); } private function responderResultHandler(_arg1:Object, _arg2:Object):void{ execute(); } private function removeAllChildRepeaters(_arg1:Container):void{ var _local2:int; var _local3:int; var _local4:Repeater; if (_arg1.childRepeaters){ _local2 = _arg1.childRepeaters.length; _local3 = (_local2 - 1); while (_local3 >= 0) { _local4 = _arg1.childRepeaters[_local3]; if (hasDescendant(_local4)){ removeRepeater(_local4); }; _local3--; }; }; } private function recycle():void{ var _local2:int; var _local3:int; var _local4:int; var _local6:int; var _local7:Repeater; var _local8:IRepeaterClient; var _local9:int; var _local10:int; var _local11:IRepeaterClient; var _local12:IRepeaterClient; dispatchEvent(new FlexEvent(FlexEvent.REPEAT_START)); var _local1:int; var _local5:int; if (((((collection) && ((collection.length > 0)))) && (((collection.length - startingIndex) > 0)))){ _local1 = positiveMin((collection.length - startingIndex), count); _local6 = 0; _local2 = 0; while (_local2 < _local1) { _currentIndex = (startingIndex + _local2); dispatchEvent(new FlexEvent(FlexEvent.REPEAT)); if (childDescriptors){ _local3 = childDescriptors.length; if (createdComponents.length >= ((_local2 + 1) * _local3)){ _local4 = 0; while (_local4 < _local3) { _local8 = createdComponents[((_local2 * _local3) + _local4)]; if ((_local8 is _slot1)){ _local7 = Repeater(_local8); resetRepeaterIndices(_local7, _currentIndex); _local7.owner = this; _local7.execute(); } else { resetRepeaterIndices(_local8, _currentIndex); if ((_local8 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_local8).executeBindings(true); }; }; _local5++; _local4++; }; } else { _local4 = 0; while (_local4 < _local3) { _local9 = container.numChildren; _local10 = (getIndexForFirstChild() + numCreatedChildren); _local11 = IRepeaterClient(createComponentFromDescriptor(_local2, _local4, true)); createdComponents.push(_local11); if ((_local11 is IUIComponent)){ IUIComponent(_local11).owner = this; }; if ((_local11 is IAutomationObject)){ IAutomationObject(_local11).showInAutomationHierarchy = true; }; if ((_local11 is _slot1)){ _local7 = Repeater(_local11); _local7.reindexDescendants(_local9, _local10); } else { container.setChildIndex(DisplayObject(_local11), _local10); }; _local5++; _local4++; }; }; }; _local2++; }; }; _currentIndex = -1; _local2 = (createdComponents.length - 1); while (_local2 >= _local5) { _local12 = createdComponents.pop(); if ((_local12 is _slot1)){ removeRepeater(Repeater(_local12)); } else { if (_local12){ if ((_local12 is Container)){ removeAllChildren(Container(_local12)); removeAllChildRepeaters(Container(_local12)); }; if (container.contains(DisplayObject(_local12))){ container.removeChild(DisplayObject(_local12)); }; if ((_local12 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_local12).deleteReferenceOnParentDocument(IFlexDisplayObject(parentDocument)); }; }; }; _local2--; }; dispatchEvent(new FlexEvent(FlexEvent.REPEAT_END)); } public function get count():int{ return (_count); } private function reindexDescendants(_arg1:int, _arg2:int):void{ var _local5:IRepeaterClient; var _local3:int = (container.numChildren - _arg1); var _local4:int; while (_local4 < _local3) { _local5 = IRepeaterClient(container.getChildAt((_arg1 + _local4))); container.setChildIndex(DisplayObject(_local5), (_arg2 + _local4)); _local4++; }; } private function adjustIndices(_arg1:IRepeaterClient, _arg2:int):void{ var _local3:Array = _arg1.repeaters; if (_local3 == null){ return; }; var _local4:int = _local3.length; var _local5:int; while (_local5 < _local4) { if (_local3[_local5] == this){ _arg1.repeaterIndices[_local5] = (_arg1.repeaterIndices[_local5] + _arg2); _arg1.instanceIndices[_local5] = (_arg1.instanceIndices[_local5] + _arg2); break; }; _local5++; }; } private function positiveMin(_arg1:int, _arg2:int):int{ var _local3:int; if (_arg1 >= 0){ if (_arg2 >= 0){ if (_arg1 < _arg2){ _local3 = _arg1; } else { _local3 = _arg2; }; } else { _local3 = _arg1; }; } else { _local3 = _arg2; }; return (_local3); } mx_internal function getItemAt(_arg1:int):Object{ var result:Object; var index = _arg1; if (iterator){ try { iterator.seek(CursorBookmark.FIRST, index); result = iterator.current; } catch(itemPendingError:ItemPendingError) { itemPendingError.addResponder(new ItemResponder(responderResultHandler, responderFaultHandler)); }; }; return (result); } public function set count(_arg1:int):void{ _count = _arg1; execute(); dispatchEvent(new Event("countChanged")); } private function addItems(_arg1:int, _arg2:int):void{ var _local3:int; var _local6:IRepeaterClient; var _local7:int; var _local8:int; var _local9:int; var _local10:int; var _local11:int; var _local12:int; var _local13:IFlexDisplayObject; var _local14:Repeater; if (startingIndex > _arg2){ return; }; var _local4 = -1; var _local5:int = container.numChildren; if (_arg2 == (collection.length - 1)){ _local3 = (_local5 - 1); while (_local3 >= 0) { _local6 = IRepeaterClient(container.getChildAt(_local3)); _local7 = getRepeaterIndex(_local6); if (_local7 != -1){ _local4 = (_local3 + 1); break; }; _local3--; }; } else { _local8 = ((_arg2 - _arg1) + 1); _local3 = 0; while (_local3 < _local5) { _local6 = IRepeaterClient(container.getChildAt(_local3)); _local7 = getRepeaterIndex(_local6); if (_local7 != -1){ if ((((((_arg1 <= _local7)) && ((_local7 <= _arg2)))) && ((_local4 == -1)))){ _local4 = _local3; }; if (_local7 >= _arg1){ adjustIndices(_local6, _local8); }; }; _local3++; }; }; if (count == -1){ _local5 = _arg2; } else { _local5 = positiveMin(((startingIndex + count) - 1), _arg2); }; _local3 = Math.max(startingIndex, _arg1); while (_local3 <= _local5) { _local9 = childDescriptors.length; _currentIndex = _local3; dispatchEvent(new FlexEvent(FlexEvent.REPEAT)); _local10 = 0; while (_local10 < _local9) { _local11 = container.numChildren; _local12 = (getIndexForFirstChild() + numCreatedChildren); _local13 = createComponentFromDescriptor((_local3 - startingIndex), _local10, true); createdComponents.push(_local13); if ((_local13 is IUIComponent)){ IUIComponent(_local13).owner = this; }; if ((_local13 is IAutomationObject)){ IAutomationObject(_local13).showInAutomationHierarchy = true; }; if ((_local13 is _slot1)){ _local14 = Repeater(_local13); _local14.owner = this; _local14.reindexDescendants(_local11, _local12); } else { container.setChildIndex(DisplayObject(_local13), _local12); }; _local10++; }; _local3++; }; _currentIndex = -1; } private function get numCreatedChildren():int{ var _local3:IFlexDisplayObject; var _local4:Repeater; var _local1:int; var _local2:int; while (_local2 < createdComponents.length) { _local3 = createdComponents[_local2]; if ((_local3 is _slot1)){ _local4 = Repeater(_local3); _local1 = (_local1 + _local4.numCreatedChildren); } else { _local1 = (_local1 + 1); }; _local2++; }; return (_local1); } private function removeChildRepeater(_arg1:Container, _arg2:Repeater):void{ var _local3:int; var _local4:int = _arg1.childRepeaters.length; while (_local3 < _local4) { if (_arg1.repeaters[_local3] == _arg2){ _arg1.repeaters.splice(_local3, 1); break; }; _local3++; }; } private function removeAllChildren(_arg1:IContainer):void{ var _local4:IRepeaterClient; var _local2:int = _arg1.numChildren; var _local3:int = (_local2 - 1); while (_local3 >= 0) { _local4 = IRepeaterClient(_arg1.getChildAt(_local3)); if (hasDescendant(_local4)){ if ((_local4 is Container)){ removeAllChildren(Container(_local4)); removeAllChildRepeaters(Container(_local4)); }; _arg1.removeChildAt(_local3); if ((_local4 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_local4).deleteReferenceOnParentDocument(IFlexDisplayObject(parentDocument)); }; }; _local3--; }; } public function get currentItem():Object{ var result:Object; var message:String; if (_currentIndex == -1){ message = resourceManager.getString("core", "notExecuting"); throw (new Error(message)); }; if (iterator){ try { iterator.seek(CursorBookmark.FIRST, _currentIndex); result = iterator.current; } catch(itemPendingError:ItemPendingError) { itemPendingError.addResponder(new ItemResponder(responderResultHandler, responderFaultHandler)); }; }; return (result); } private function resetRepeaterIndices(_arg1:IRepeaterClient, _arg2:int):void{ var _local4:Container; var _local5:int; var _local6:int; var _local7:IRepeaterClient; var _local3:Array = _arg1.repeaterIndices; _local3[(_local3.length - 1)] = _arg2; _arg1.repeaterIndices = _local3; if ((_arg1 is Container)){ _local4 = Container(_arg1); _local5 = _local4.numChildren; _local6 = 0; while (_local6 < _local5) { _local7 = IRepeaterClient(_local4.getChildAt(_local6)); resetRepeaterIndices(_local7, _arg2); _local6++; }; }; } public function get recycleChildren():Boolean{ return (_recycleChildren); } private function collectionChangedHandler(_arg1:CollectionEvent):void{ switch (_arg1.kind){ case CollectionEventKind.UPDATE: break; default: execute(); }; } private function getIndexForRepeater(_arg1:Repeater, _arg2:LocationInfo):void{ var _local5:IFlexDisplayObject; var _local6:Repeater; var _local3:int; var _local4:int = createdComponents.length; while (_local3 < _local4) { _local5 = createdComponents[_local3]; if (_local5 == _arg1){ _arg2.found = true; break; } else { if ((_local5 is _slot1)){ _local6 = Repeater(_local5); _local6.getIndexForRepeater(_arg1, _arg2); if (_arg2.found){ break; }; } else { _arg2.index = (_arg2.index + 1); }; }; _local3++; }; } private function hasDescendant(_arg1:Object):Boolean{ var _local2:Array = _arg1.repeaters; if (_local2 == null){ return (false); }; var _local3:int = _local2.length; var _local4:int; while (_local4 < _local3) { if (_local2[_local4] == this){ return (true); }; _local4++; }; return (false); } public function initializeRepeater(_arg1:IContainer, _arg2:Boolean):void{ _container = Container(_arg1); descriptorIndex = _arg1.numChildren; created = true; if (collection){ createComponentsFromDescriptors(_arg2); }; if (owner == null){ owner = Container(_arg1); }; } public function get dataProvider():Object{ return (collection); } private function removeItems(_arg1:int, _arg2:int):void{ var _local3:int; var _local4:IRepeaterClient; var _local5:int; var _local6:Repeater; if (((createdComponents) && ((createdComponents.length > 0)))){ _local3 = (createdComponents.length - 1); while (_local3 >= 0) { _local4 = createdComponents[_local3]; _local5 = getRepeaterIndex(_local4); if ((((((_arg1 <= _local5)) && ((((_local5 < _arg2)) || ((_arg2 == -1)))))) || ((_local5 >= dataProvider.length)))){ if ((_local4 is _slot1)){ _local6 = Repeater(_local4); removeRepeater(_local6); } else { if (container.contains(DisplayObject(_local4))){ container.removeChild(DisplayObject(_local4)); }; }; if ((_local4 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_local4).deleteReferenceOnParentDocument(IFlexDisplayObject(parentDocument)); }; createdComponents.splice(_local3, 1); } else { if ((((((_arg1 <= _local5)) && (!((_arg2 == -1))))) && ((_local5 >= _arg2)))){ adjustIndices(_local4, ((_arg2 - _arg1) + 1)); if ((_local4 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_local4).executeBindings(true); }; }; }; _local3--; }; }; } private function getIndexForFirstChild():int{ var _local5:IFlexDisplayObject; var _local6:Repeater; var _local1:LocationInfo = new LocationInfo(); var _local2:int; var _local3:Array = Container(container).createdComponents; var _local4:int = (_local3) ? _local3.length : 0; while (_local2 < _local4) { _local5 = Container(container).createdComponents[_local2]; if (_local5 == this){ _local1.found = true; break; } else { if ((_local5 is _slot1)){ _local6 = Repeater(_local5); _local6.getIndexForRepeater(this, _local1); if (_local1.found){ break; }; } else { _local1.index = (_local1.index + 1); }; }; _local2++; }; return ((_local1.found) ? _local1.index : container.numChildren); } private function createComponentsFromDescriptors(_arg1:Boolean):void{ var _local2:int; var _local3:int; var _local4:int; var _local5:int; var _local6:IFlexDisplayObject; dispatchEvent(new FlexEvent(FlexEvent.REPEAT_START)); createdComponents = []; if (((((collection) && ((collection.length > 0)))) && (((collection.length - startingIndex) > 0)))){ _local2 = positiveMin((collection.length - startingIndex), count); _local3 = 0; while (_local3 < _local2) { _currentIndex = (startingIndex + _local3); dispatchEvent(new FlexEvent(FlexEvent.REPEAT)); if (((childDescriptors) && ((childDescriptors.length > 0)))){ _local4 = childDescriptors.length; _local5 = 0; while (_local5 < _local4) { _local6 = createComponentFromDescriptor(_local3, _local5, _arg1); createdComponents.push(_local6); if ((_local6 is IUIComponent)){ IUIComponent(_local6).owner = this; }; if ((_local6 is IAutomationObject)){ IAutomationObject(_local6).showInAutomationHierarchy = true; }; _local5++; }; }; _local3++; }; _currentIndex = -1; }; dispatchEvent(new FlexEvent(FlexEvent.REPEAT_END)); } private function sort():void{ execute(); } private function removeRepeater(_arg1:Repeater):void{ _arg1.removeAllChildren(_arg1.container); _arg1.removeAllChildRepeaters(Container(_arg1.container)); removeChildRepeater(Container(container), _arg1); _arg1.deleteReferenceOnParentDocument(IFlexDisplayObject(parentDocument)); _arg1.dataProvider = null; } public function executeChildBindings():void{ var _local3:IRepeaterClient; var _local1:int = container.numChildren; var _local2:int; while (_local2 < _local1) { _local3 = IRepeaterClient(container.getChildAt(_local2)); if (((hasDescendant(_local3)) && ((_local3 is IDeferredInstantiationUIComponent)))){ IDeferredInstantiationUIComponent(_local3).executeBindings(); }; _local2++; }; } public function get currentIndex():int{ var _local1:String; if (_currentIndex == -1){ _local1 = resourceManager.getString("core", "notExecuting"); throw (new Error(_local1)); }; return (_currentIndex); } public function set startingIndex(_arg1:int):void{ _startingIndex = _arg1; execute(); dispatchEvent(new Event("startingIndexChanged")); } private function responderFaultHandler(_arg1:Object, _arg2:Object):void{ } override public function toString():String{ return (((Object(container).toString() + ".") + super.toString())); } private function recreate():void{ removeAllChildren(container); removeAllChildRepeaters(Container(container)); var _local1:int = container.numChildren; var _local2:int = getIndexForFirstChild(); createComponentsFromDescriptors(true); if (_local1 != _local2){ reindexDescendants(_local1, _local2); }; } public function get startingIndex():int{ return (_startingIndex); } private function getRepeaterIndex(_arg1:IRepeaterClient):int{ var _local2:Array = _arg1.repeaters; if (_local2 == null){ return (-1); }; var _local3:int = _local2.length; var _local4:int; while (_local4 < _local3) { if (_local2[_local4] == this){ return (_arg1.repeaterIndices[_local4]); }; _local4++; }; return (-1); } private function execute():void{ if (!created){ return; }; if (((((recycleChildren) && (createdComponents))) && ((createdComponents.length > 0)))){ recycle(); } else { recreate(); }; } override public function set showInAutomationHierarchy(_arg1:Boolean):void{ } public function set recycleChildren(_arg1:Boolean):void{ _recycleChildren = _arg1; } public function set dataProvider(_arg1:Object):void{ var _local3:XMLList; var _local4:Array; var _local2:Boolean; if (collection){ _local2 = true; collection.removeEventListener(CollectionEvent.COLLECTION_CHANGE, collectionChangedHandler); collection = null; iterator = null; }; if ((_arg1 is Array)){ collection = new ArrayCollection((_arg1 as Array)); } else { if ((_arg1 is ICollectionView)){ collection = ICollectionView(_arg1); } else { if ((_arg1 is IList)){ collection = new ListCollectionView(IList(_arg1)); } else { if ((_arg1 is XMLList)){ collection = new XMLListCollection((_arg1 as XMLList)); } else { if ((_arg1 is XML)){ _local3 = new XMLList(); _local3 = (_local3 + _arg1); collection = new XMLListCollection(_local3); } else { if (_arg1 != null){ _local4 = [_arg1]; collection = new ArrayCollection(_local4); }; }; }; }; }; }; if (collection){ collection.addEventListener(CollectionEvent.COLLECTION_CHANGE, collectionChangedHandler, false, 0, true); iterator = collection.createCursor(); }; dispatchEvent(new Event("collectionChange")); if (((collection) || (_local2))){ execute(); }; } private function updateItems(_arg1:int, _arg2:int):void{ var _local3:int; var _local4:int; var _local5:IRepeaterClient; var _local6:int; if (recycleChildren){ _local3 = container.numChildren; _local4 = 0; while (_local4 < _local3) { _local5 = IRepeaterClient(container.getChildAt(_local4)); _local6 = getRepeaterIndex(_local5); if (((((!((_local6 == -1))) && ((_arg1 <= _local6)))) && ((_local6 <= _arg2)))){ if ((_local5 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_local5).executeBindings(true); }; }; _local4++; }; } else { removeItems(_arg1, _arg2); addItems(_arg1, _arg2); }; } } }//package mx.core class LocationInfo { public var index:int;// = 0 public var found:Boolean;// = false private function LocationInfo(){ } }
Section 197
//ResourceModuleRSLItem (mx.core.ResourceModuleRSLItem) package mx.core { import flash.events.*; import mx.events.*; import mx.resources.*; public class ResourceModuleRSLItem extends RSLItem { mx_internal static const VERSION:String = "3.2.0.3794"; public function ResourceModuleRSLItem(_arg1:String){ super(_arg1); } private function resourceErrorHandler(_arg1:ResourceEvent):void{ var _local2:IOErrorEvent = new IOErrorEvent(IOErrorEvent.IO_ERROR); _local2.text = _arg1.errorText; super.itemErrorHandler(_local2); } override public function load(_arg1:Function, _arg2:Function, _arg3:Function, _arg4:Function, _arg5:Function):void{ chainedProgressHandler = _arg1; chainedCompleteHandler = _arg2; chainedIOErrorHandler = _arg3; chainedSecurityErrorHandler = _arg4; chainedRSLErrorHandler = _arg5; var _local6:IResourceManager = ResourceManager.getInstance(); var _local7:IEventDispatcher = _local6.loadResourceModule(url); _local7.addEventListener(ResourceEvent.PROGRESS, itemProgressHandler); _local7.addEventListener(ResourceEvent.COMPLETE, itemCompleteHandler); _local7.addEventListener(ResourceEvent.ERROR, resourceErrorHandler); } } }//package mx.core
Section 198
//RSLItem (mx.core.RSLItem) package mx.core { import flash.display.*; import flash.events.*; import mx.events.*; import flash.system.*; import flash.net.*; import mx.utils.*; public class RSLItem { protected var chainedSecurityErrorHandler:Function; public var total:uint;// = 0 public var loaded:uint;// = 0 private var completed:Boolean;// = false protected var chainedRSLErrorHandler:Function; protected var chainedIOErrorHandler:Function; protected var chainedCompleteHandler:Function; private var errorText:String; protected var chainedProgressHandler:Function; public var urlRequest:URLRequest; public var rootURL:String; protected var url:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function RSLItem(_arg1:String, _arg2:String=null){ this.url = _arg1; this.rootURL = _arg2; } public function itemProgressHandler(_arg1:ProgressEvent):void{ loaded = _arg1.bytesLoaded; total = _arg1.bytesTotal; if (chainedProgressHandler != null){ chainedProgressHandler(_arg1); }; } public function itemErrorHandler(_arg1:ErrorEvent):void{ errorText = decodeURI(_arg1.text); completed = true; loaded = 0; total = 0; trace(errorText); if ((((_arg1.type == IOErrorEvent.IO_ERROR)) && (!((chainedIOErrorHandler == null))))){ chainedIOErrorHandler(_arg1); } else { if ((((_arg1.type == SecurityErrorEvent.SECURITY_ERROR)) && (!((chainedSecurityErrorHandler == null))))){ chainedSecurityErrorHandler(_arg1); } else { if ((((_arg1.type == RSLEvent.RSL_ERROR)) && (!((chainedRSLErrorHandler == null))))){ chainedRSLErrorHandler(_arg1); }; }; }; } public function load(_arg1:Function, _arg2:Function, _arg3:Function, _arg4:Function, _arg5:Function):void{ chainedProgressHandler = _arg1; chainedCompleteHandler = _arg2; chainedIOErrorHandler = _arg3; chainedSecurityErrorHandler = _arg4; chainedRSLErrorHandler = _arg5; var _local6:Loader = new Loader(); var _local7:LoaderContext = new LoaderContext(); urlRequest = new URLRequest(LoaderUtil.createAbsoluteURL(rootURL, url)); _local6.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, itemProgressHandler); _local6.contentLoaderInfo.addEventListener(Event.COMPLETE, itemCompleteHandler); _local6.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, itemErrorHandler); _local6.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, itemErrorHandler); _local7.applicationDomain = ApplicationDomain.currentDomain; _local6.load(urlRequest, _local7); } public function itemCompleteHandler(_arg1:Event):void{ completed = true; if (chainedCompleteHandler != null){ chainedCompleteHandler(_arg1); }; } } }//package mx.core
Section 199
//RSLListLoader (mx.core.RSLListLoader) package mx.core { import flash.events.*; public class RSLListLoader { private var chainedSecurityErrorHandler:Function; private var chainedIOErrorHandler:Function; private var rslList:Array; private var chainedRSLErrorHandler:Function; private var chainedCompleteHandler:Function; private var currentIndex:int;// = 0 private var chainedProgressHandler:Function; mx_internal static const VERSION:String = "3.2.0.3794"; public function RSLListLoader(_arg1:Array){ rslList = []; super(); this.rslList = _arg1; } private function loadNext():void{ if (!isDone()){ currentIndex++; if (currentIndex < rslList.length){ rslList[currentIndex].load(chainedProgressHandler, listCompleteHandler, listIOErrorHandler, listSecurityErrorHandler, chainedRSLErrorHandler); }; }; } public function getIndex():int{ return (currentIndex); } public function load(_arg1:Function, _arg2:Function, _arg3:Function, _arg4:Function, _arg5:Function):void{ chainedProgressHandler = _arg1; chainedCompleteHandler = _arg2; chainedIOErrorHandler = _arg3; chainedSecurityErrorHandler = _arg4; chainedRSLErrorHandler = _arg5; currentIndex = -1; loadNext(); } private function listCompleteHandler(_arg1:Event):void{ if (chainedCompleteHandler != null){ chainedCompleteHandler(_arg1); }; loadNext(); } public function isDone():Boolean{ return ((currentIndex >= rslList.length)); } private function listSecurityErrorHandler(_arg1:Event):void{ if (chainedSecurityErrorHandler != null){ chainedSecurityErrorHandler(_arg1); }; } public function getItemCount():int{ return (rslList.length); } public function getItem(_arg1:int):RSLItem{ if ((((_arg1 < 0)) || ((_arg1 >= rslList.length)))){ return (null); }; return (rslList[_arg1]); } private function listIOErrorHandler(_arg1:Event):void{ if (chainedIOErrorHandler != null){ chainedIOErrorHandler(_arg1); }; } } }//package mx.core
Section 200
//ScrollControlBase (mx.core.ScrollControlBase) package mx.core { import flash.display.*; import flash.geom.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import mx.controls.scrollClasses.*; public class ScrollControlBase extends UIComponent { private var numberOfRows:Number;// = 0 private var _scrollTipFunction:Function; private var scrollTip:ToolTip; public var showScrollTips:Boolean;// = false private var numberOfCols:Number;// = 0 protected var maskShape:Shape; private var oldTTMEnabled:Boolean; mx_internal var _maxHorizontalScrollPosition:Number; protected var border:IFlexDisplayObject; private var _viewMetrics:EdgeMetrics; mx_internal var _maxVerticalScrollPosition:Number; protected var verticalScrollBar:ScrollBar; mx_internal var _horizontalScrollPosition:Number;// = 0 private var propsInited:Boolean; protected var horizontalScrollBar:ScrollBar; mx_internal var _horizontalScrollPolicy:String;// = "off" mx_internal var _verticalScrollPosition:Number;// = 0 private var scrollThumbMidPoint:Number; mx_internal var _verticalScrollPolicy:String;// = "auto" protected var scrollAreaChanged:Boolean; private var viewableColumns:Number; public var liveScrolling:Boolean;// = true private var viewableRows:Number; private var invLayout:Boolean; mx_internal static const VERSION:String = "3.2.0.3794"; public function ScrollControlBase(){ _viewMetrics = EdgeMetrics.EMPTY; addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; if (horizontalScrollBar){ horizontalScrollBar.enabled = _arg1; }; if (verticalScrollBar){ verticalScrollBar.enabled = _arg1; }; } public function get scrollTipFunction():Function{ return (_scrollTipFunction); } public function set scrollTipFunction(_arg1:Function):void{ _scrollTipFunction = _arg1; dispatchEvent(new Event("scrollTipFunctionChanged")); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); layoutChrome(_arg1, _arg2); var _local3:Number = _arg1; var _local4:Number = _arg2; invLayout = false; var _local5:EdgeMetrics = (_viewMetrics = viewMetrics); if (((horizontalScrollBar) && (horizontalScrollBar.visible))){ horizontalScrollBar.setActualSize(((_local3 - _local5.left) - _local5.right), horizontalScrollBar.minHeight); horizontalScrollBar.move(_local5.left, (_local4 - _local5.bottom)); horizontalScrollBar.enabled = enabled; }; if (((verticalScrollBar) && (verticalScrollBar.visible))){ verticalScrollBar.setActualSize(verticalScrollBar.minWidth, ((_local4 - _local5.top) - _local5.bottom)); verticalScrollBar.move((_local3 - _local5.right), _local5.top); verticalScrollBar.enabled = enabled; }; var _local6:DisplayObject = maskShape; var _local7:Number = ((_local3 - _local5.left) - _local5.right); var _local8:Number = ((_local4 - _local5.top) - _local5.bottom); _local6.width = ((_local7 < 0)) ? 0 : _local7; _local6.height = ((_local8 < 0)) ? 0 : _local8; _local6.x = _local5.left; _local6.y = _local5.top; } protected function setScrollBarProperties(_arg1:int, _arg2:int, _arg3:int, _arg4:int):void{ var _local7:Boolean; var _local5:String = this.horizontalScrollPolicy; var _local6:String = this.verticalScrollPolicy; scrollAreaChanged = false; if ((((_local5 == ScrollPolicy.ON)) || ((((((_arg2 < _arg1)) && ((_arg1 > 0)))) && ((_local5 == ScrollPolicy.AUTO)))))){ if (!horizontalScrollBar){ createHScrollBar(false); horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollHandler); horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollTipHandler); horizontalScrollBar.scrollPosition = _horizontalScrollPosition; }; _local7 = roomForScrollBar(horizontalScrollBar, unscaledWidth, unscaledHeight); if (_local7 != horizontalScrollBar.visible){ horizontalScrollBar.visible = _local7; scrollAreaChanged = true; }; if (((((horizontalScrollBar) && (horizontalScrollBar.visible))) && (((((!((numberOfCols == _arg1))) || (!((viewableColumns == _arg2))))) || (scrollAreaChanged))))){ horizontalScrollBar.setScrollProperties(_arg2, 0, (_arg1 - _arg2)); if (horizontalScrollBar.scrollPosition != _horizontalScrollPosition){ horizontalScrollBar.scrollPosition = _horizontalScrollPosition; }; viewableColumns = _arg2; numberOfCols = _arg1; }; } else { if ((((((((_local5 == ScrollPolicy.AUTO)) || ((_local5 == ScrollPolicy.OFF)))) && (horizontalScrollBar))) && (horizontalScrollBar.visible))){ horizontalScrollPosition = 0; horizontalScrollBar.setScrollProperties(_arg2, 0, 0); horizontalScrollBar.visible = false; viewableColumns = NaN; scrollAreaChanged = true; }; }; if ((((_local6 == ScrollPolicy.ON)) || ((((((_arg4 < _arg3)) && ((_arg3 > 0)))) && ((_local6 == ScrollPolicy.AUTO)))))){ if (!verticalScrollBar){ createVScrollBar(false); verticalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollHandler); verticalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollTipHandler); verticalScrollBar.scrollPosition = _verticalScrollPosition; }; _local7 = roomForScrollBar(verticalScrollBar, unscaledWidth, unscaledHeight); if (_local7 != verticalScrollBar.visible){ verticalScrollBar.visible = _local7; scrollAreaChanged = true; }; if (((((verticalScrollBar) && (verticalScrollBar.visible))) && (((((!((numberOfRows == _arg3))) || (!((viewableRows == _arg4))))) || (scrollAreaChanged))))){ verticalScrollBar.setScrollProperties(_arg4, 0, (_arg3 - _arg4)); if (verticalScrollBar.scrollPosition != _verticalScrollPosition){ verticalScrollBar.scrollPosition = _verticalScrollPosition; }; viewableRows = _arg4; numberOfRows = _arg3; }; } else { if ((((((((_local6 == ScrollPolicy.AUTO)) || ((_local6 == ScrollPolicy.OFF)))) && (verticalScrollBar))) && (verticalScrollBar.visible))){ verticalScrollPosition = 0; verticalScrollBar.setScrollProperties(_arg4, 0, 0); verticalScrollBar.visible = false; viewableRows = NaN; scrollAreaChanged = true; }; }; if (scrollAreaChanged){ updateDisplayList(unscaledWidth, unscaledHeight); }; } private function createHScrollBar(_arg1:Boolean):ScrollBar{ horizontalScrollBar = new HScrollBar(); horizontalScrollBar.visible = _arg1; horizontalScrollBar.enabled = enabled; var _local2:String = getStyle("horizontalScrollBarStyleName"); horizontalScrollBar.styleName = _local2; addChild(horizontalScrollBar); horizontalScrollBar.validateNow(); return (horizontalScrollBar); } public function get horizontalScrollPolicy():String{ return (_horizontalScrollPolicy); } public function get maxVerticalScrollPosition():Number{ if (!isNaN(_maxVerticalScrollPosition)){ return (_maxVerticalScrollPosition); }; var _local1:Number = (verticalScrollBar) ? verticalScrollBar.maxScrollPosition : 0; return (_local1); } public function set horizontalScrollPosition(_arg1:Number):void{ _horizontalScrollPosition = _arg1; if (horizontalScrollBar){ horizontalScrollBar.scrollPosition = _arg1; }; dispatchEvent(new Event("viewChanged")); } protected function roomForScrollBar(_arg1:ScrollBar, _arg2:Number, _arg3:Number):Boolean{ var _local4:EdgeMetrics = borderMetrics; return ((((_arg2 >= ((_arg1.minWidth + _local4.left) + _local4.right))) && ((_arg3 >= ((_arg1.minHeight + _local4.top) + _local4.bottom))))); } public function set maxHorizontalScrollPosition(_arg1:Number):void{ _maxHorizontalScrollPosition = _arg1; dispatchEvent(new Event("maxHorizontalScrollPositionChanged")); } public function get verticalScrollPosition():Number{ return (_verticalScrollPosition); } public function set horizontalScrollPolicy(_arg1:String):void{ var _local2:String = _arg1.toLowerCase(); if (_horizontalScrollPolicy != _local2){ _horizontalScrollPolicy = _local2; invalidateDisplayList(); dispatchEvent(new Event("horizontalScrollPolicyChanged")); }; } override protected function createChildren():void{ var _local1:Graphics; super.createChildren(); createBorder(); if (!maskShape){ maskShape = new FlexShape(); maskShape.name = "mask"; _local1 = maskShape.graphics; _local1.beginFill(0xFFFFFF); _local1.drawRect(0, 0, 10, 10); _local1.endFill(); addChild(maskShape); }; maskShape.visible = false; } override public function styleChanged(_arg1:String):void{ var _local3:String; var _local4:String; var _local2:Boolean = (((_arg1 == null)) || ((_arg1 == "styleName"))); super.styleChanged(_arg1); if (((_local2) || ((_arg1 == "horizontalScrollBarStyleName")))){ if (horizontalScrollBar){ _local3 = getStyle("horizontalScrollBarStyleName"); horizontalScrollBar.styleName = _local3; }; }; if (((_local2) || ((_arg1 == "verticalScrollBarStyleName")))){ if (verticalScrollBar){ _local4 = getStyle("verticalScrollBarStyleName"); verticalScrollBar.styleName = _local4; }; }; if (((_local2) || ((_arg1 == "borderSkin")))){ if (border){ removeChild(DisplayObject(border)); border = null; createBorder(); }; }; } private function createVScrollBar(_arg1:Boolean):ScrollBar{ verticalScrollBar = new VScrollBar(); verticalScrollBar.visible = _arg1; verticalScrollBar.enabled = enabled; var _local2:String = getStyle("verticalScrollBarStyleName"); verticalScrollBar.styleName = _local2; addChild(verticalScrollBar); return (verticalScrollBar); } mx_internal function get scroll_verticalScrollBar():ScrollBar{ return (verticalScrollBar); } protected function createBorder():void{ var _local1:Class; if (((!(border)) && (isBorderNeeded()))){ _local1 = getStyle("borderSkin"); if (_local1 != null){ border = new (_local1); if ((border is IUIComponent)){ IUIComponent(border).enabled = enabled; }; if ((border is ISimpleStyleClient)){ ISimpleStyleClient(border).styleName = this; }; addChildAt(DisplayObject(border), 0); invalidateDisplayList(); }; }; } mx_internal function get scroll_horizontalScrollBar():ScrollBar{ return (horizontalScrollBar); } protected function layoutChrome(_arg1:Number, _arg2:Number):void{ if (border){ border.move(0, 0); border.setActualSize(_arg1, _arg2); }; } protected function scrollHandler(_arg1:Event):void{ var _local2:ScrollBar; var _local3:Number; var _local4:QName; if ((_arg1 is ScrollEvent)){ _local2 = ScrollBar(_arg1.target); _local3 = _local2.scrollPosition; if (_local2 == verticalScrollBar){ _local4 = new QName(mx_internal, "_verticalScrollPosition"); } else { if (_local2 == horizontalScrollBar){ _local4 = new QName(mx_internal, "_horizontalScrollPosition"); }; }; dispatchEvent(_arg1); if (_local4){ this[_local4] = _local3; }; }; } protected function mouseWheelHandler(_arg1:MouseEvent):void{ var _local2:int; var _local3:Number; var _local4:Number; var _local5:ScrollEvent; if (((verticalScrollBar) && (verticalScrollBar.visible))){ _arg1.stopPropagation(); _local2 = ((_arg1.delta <= 0)) ? 1 : -1; _local3 = Math.max(Math.abs(_arg1.delta), verticalScrollBar.lineScrollSize); _local4 = verticalScrollPosition; verticalScrollPosition = (verticalScrollPosition + ((3 * _local3) * _local2)); _local5 = new ScrollEvent(ScrollEvent.SCROLL); _local5.direction = ScrollEventDirection.VERTICAL; _local5.position = verticalScrollPosition; _local5.delta = (verticalScrollPosition - _local4); dispatchEvent(_local5); }; } private function scrollTipHandler(_arg1:Event):void{ var _local2:ScrollBar; var _local3:Boolean; var _local4:String; var _local5:Number; var _local6:String; var _local7:Point; if ((_arg1 is ScrollEvent)){ if (!showScrollTips){ return; }; if (ScrollEvent(_arg1).detail == ScrollEventDetail.THUMB_POSITION){ if (scrollTip){ systemManager.topLevelSystemManager.removeChildFromSandboxRoot("toolTipChildren", (scrollTip as DisplayObject)); scrollTip = null; ToolTipManager.enabled = oldTTMEnabled; }; } else { if (ScrollEvent(_arg1).detail == ScrollEventDetail.THUMB_TRACK){ _local2 = ScrollBar(_arg1.target); _local3 = (_local2 == verticalScrollBar); _local4 = (_local3) ? "vertical" : "horizontal"; _local5 = _local2.scrollPosition; if (!scrollTip){ scrollTip = new ToolTip(); systemManager.topLevelSystemManager.addChildToSandboxRoot("toolTipChildren", (scrollTip as DisplayObject)); scrollThumbMidPoint = (_local2.scrollThumb.height / 2); oldTTMEnabled = ToolTipManager.enabled; ToolTipManager.enabled = false; }; _local6 = _local5.toString(); if (_scrollTipFunction != null){ _local6 = _scrollTipFunction(_local4, _local5); }; if (_local6 == ""){ scrollTip.visible = false; } else { scrollTip.text = _local6; ToolTipManager.sizeTip(scrollTip); _local7 = new Point(); if (_local3){ _local7.x = (-3 - scrollTip.width); _local7.y = ((_local2.scrollThumb.y + scrollThumbMidPoint) - (scrollTip.height / 2)); } else { _local7.x = (-3 - scrollTip.height); _local7.y = ((_local2.scrollThumb.y + scrollThumbMidPoint) - (scrollTip.width / 2)); }; _local7 = _local2.localToGlobal(_local7); scrollTip.move(_local7.x, _local7.y); scrollTip.visible = true; }; }; }; }; } public function set verticalScrollPosition(_arg1:Number):void{ _verticalScrollPosition = _arg1; if (verticalScrollBar){ verticalScrollBar.scrollPosition = _arg1; }; dispatchEvent(new Event("viewChanged")); } public function get horizontalScrollPosition():Number{ return (_horizontalScrollPosition); } private function isBorderNeeded():Boolean{ var _local1:Object = getStyle("borderStyle"); if (_local1){ if (((!((_local1 == "none"))) || ((((_local1 == "none")) && (getStyle("mouseShield")))))){ return (true); }; }; _local1 = getStyle("backgroundColor"); if (((!((_local1 === null))) && (!((_local1 === ""))))){ return (true); }; _local1 = getStyle("backgroundImage"); return (((!((_local1 == null))) && (!((_local1 == ""))))); } public function get maxHorizontalScrollPosition():Number{ if (!isNaN(_maxHorizontalScrollPosition)){ return (_maxHorizontalScrollPosition); }; var _local1:Number = (horizontalScrollBar) ? horizontalScrollBar.maxScrollPosition : 0; return (_local1); } public function set maxVerticalScrollPosition(_arg1:Number):void{ _maxVerticalScrollPosition = _arg1; dispatchEvent(new Event("maxVerticalScrollPositionChanged")); } public function set verticalScrollPolicy(_arg1:String):void{ var _local2:String = _arg1.toLowerCase(); if (_verticalScrollPolicy != _local2){ _verticalScrollPolicy = _local2; invalidateDisplayList(); dispatchEvent(new Event("verticalScrollPolicyChanged")); }; } public function get viewMetrics():EdgeMetrics{ _viewMetrics = borderMetrics.clone(); if (((!(horizontalScrollBar)) && ((horizontalScrollPolicy == ScrollPolicy.ON)))){ createHScrollBar(true); horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollHandler); horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollTipHandler); horizontalScrollBar.scrollPosition = _horizontalScrollPosition; invalidateDisplayList(); }; if (((!(verticalScrollBar)) && ((verticalScrollPolicy == ScrollPolicy.ON)))){ createVScrollBar(true); verticalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollHandler); verticalScrollBar.addEventListener(ScrollEvent.SCROLL, scrollTipHandler); verticalScrollBar.scrollPosition = _verticalScrollPosition; invalidateDisplayList(); }; if (((verticalScrollBar) && (verticalScrollBar.visible))){ _viewMetrics.right = (_viewMetrics.right + verticalScrollBar.minWidth); }; if (((horizontalScrollBar) && (horizontalScrollBar.visible))){ _viewMetrics.bottom = (_viewMetrics.bottom + horizontalScrollBar.minHeight); }; return (_viewMetrics); } public function get verticalScrollPolicy():String{ return (_verticalScrollPolicy); } public function get borderMetrics():EdgeMetrics{ return ((((border) && ((border is IRectangularBorder)))) ? IRectangularBorder(border).borderMetrics : EdgeMetrics.EMPTY); } } }//package mx.core
Section 201
//ScrollPolicy (mx.core.ScrollPolicy) package mx.core { public final class ScrollPolicy { public static const AUTO:String = "auto"; public static const ON:String = "on"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const OFF:String = "off"; } }//package mx.core
Section 202
//Singleton (mx.core.Singleton) package mx.core { public class Singleton { mx_internal static const VERSION:String = "3.2.0.3794"; private static var classMap:Object = {}; public static function registerClass(_arg1:String, _arg2:Class):void{ var _local3:Class = classMap[_arg1]; if (!_local3){ classMap[_arg1] = _arg2; }; } public static function getClass(_arg1:String):Class{ return (classMap[_arg1]); } public static function getInstance(_arg1:String):Object{ var _local2:Class = classMap[_arg1]; if (!_local2){ throw (new Error((("No class registered for interface '" + _arg1) + "'."))); }; return (_local2["getInstance"]()); } } }//package mx.core
Section 203
//SpriteAsset (mx.core.SpriteAsset) package mx.core { public class SpriteAsset extends FlexSprite implements IFlexAsset, IFlexDisplayObject, IBorder { private var _measuredHeight:Number; private var _measuredWidth:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public function SpriteAsset(){ _measuredWidth = width; _measuredHeight = height; } public function get measuredWidth():Number{ return (_measuredWidth); } public function get measuredHeight():Number{ return (_measuredHeight); } public function setActualSize(_arg1:Number, _arg2:Number):void{ width = _arg1; height = _arg2; } public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } public function get borderMetrics():EdgeMetrics{ if (scale9Grid == null){ return (EdgeMetrics.EMPTY); }; return (new EdgeMetrics(scale9Grid.left, scale9Grid.top, Math.ceil((measuredWidth - scale9Grid.right)), Math.ceil((measuredHeight - scale9Grid.bottom)))); } } }//package mx.core
Section 204
//SWFBridgeGroup (mx.core.SWFBridgeGroup) package mx.core { import mx.managers.*; import flash.events.*; import flash.utils.*; public class SWFBridgeGroup implements ISWFBridgeGroup { private var _parentBridge:IEventDispatcher; private var _childBridges:Dictionary; private var _groupOwner:ISystemManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function SWFBridgeGroup(_arg1:ISystemManager){ _groupOwner = _arg1; } public function getChildBridgeProvider(_arg1:IEventDispatcher):ISWFBridgeProvider{ if (!_childBridges){ return (null); }; return (ISWFBridgeProvider(_childBridges[_arg1])); } public function removeChildBridge(_arg1:IEventDispatcher):void{ var _local2:Object; if (((!(_childBridges)) || (!(_arg1)))){ return; }; for (_local2 in _childBridges) { if (_local2 == _arg1){ delete _childBridges[_local2]; }; }; } public function get parentBridge():IEventDispatcher{ return (_parentBridge); } public function containsBridge(_arg1:IEventDispatcher):Boolean{ var _local2:Object; if (((parentBridge) && ((parentBridge == _arg1)))){ return (true); }; for (_local2 in _childBridges) { if (_arg1 == _local2){ return (true); }; }; return (false); } public function set parentBridge(_arg1:IEventDispatcher):void{ _parentBridge = _arg1; } public function addChildBridge(_arg1:IEventDispatcher, _arg2:ISWFBridgeProvider):void{ if (!_childBridges){ _childBridges = new Dictionary(); }; _childBridges[_arg1] = _arg2; } public function getChildBridges():Array{ var _local2:Object; var _local1:Array = []; for (_local2 in _childBridges) { _local1.push(_local2); }; return (_local1); } } }//package mx.core
Section 205
//TextFieldFactory (mx.core.TextFieldFactory) package mx.core { import flash.text.*; import flash.utils.*; public class TextFieldFactory implements ITextFieldFactory { private var textFields:Dictionary; mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:ITextFieldFactory; public function TextFieldFactory(){ textFields = new Dictionary(true); super(); } public function createTextField(_arg1:IFlexModuleFactory):TextField{ var _local4:Object; var _local2:TextField; var _local3:Dictionary = textFields[_arg1]; if (_local3){ for (_local4 in _local3) { _local2 = TextField(_local4); break; }; }; if (!_local2){ if (_arg1){ _local2 = TextField(_arg1.create("flash.text.TextField")); } else { _local2 = new TextField(); }; if (!_local3){ _local3 = new Dictionary(true); }; _local3[_local2] = 1; textFields[_arg1] = _local3; }; return (_local2); } public static function getInstance():ITextFieldFactory{ if (!instance){ instance = new (TextFieldFactory); }; return (instance); } } }//package mx.core
Section 206
//UIComponent (mx.core.UIComponent) package mx.core { import flash.display.*; import flash.geom.*; import flash.text.*; import mx.managers.*; import mx.automation.*; import flash.events.*; import mx.events.*; import mx.resources.*; import mx.styles.*; import mx.controls.*; import mx.states.*; import mx.effects.*; import mx.graphics.*; import mx.binding.*; import flash.utils.*; import mx.utils.*; import mx.validators.*; import flash.system.*; import mx.modules.*; public class UIComponent extends FlexSprite implements IAutomationObject, IChildList, IDeferredInstantiationUIComponent, IFlexDisplayObject, IFlexModule, IInvalidating, ILayoutManagerClient, IPropertyChangeNotifier, IRepeaterClient, ISimpleStyleClient, IStyleClient, IToolTipManagerClient, IUIComponent, IValidatorListener, IStateClient, IConstraintClient { private var cachedEmbeddedFont:EmbeddedFont;// = null private var errorStringChanged:Boolean;// = false mx_internal var overlay:UIComponent; mx_internal var automaticRadioButtonGroups:Object; private var _currentState:String; private var _isPopUp:Boolean; private var _repeaters:Array; private var _systemManager:ISystemManager; private var _measuredWidth:Number;// = 0 private var methodQueue:Array; mx_internal var _width:Number; private var _tweeningProperties:Array; private var _validationSubField:String; private var _endingEffectInstances:Array; mx_internal var saveBorderColor:Boolean;// = true mx_internal var overlayColor:uint; mx_internal var overlayReferenceCount:int;// = 0 private var hasFontContextBeenSaved:Boolean;// = false private var _repeaterIndices:Array; private var oldExplicitWidth:Number; mx_internal var _descriptor:UIComponentDescriptor; private var _initialized:Boolean;// = false private var _focusEnabled:Boolean;// = true private var cacheAsBitmapCount:int;// = 0 private var requestedCurrentState:String; private var listeningForRender:Boolean;// = false mx_internal var invalidateDisplayListFlag:Boolean;// = false private var oldScaleX:Number;// = 1 private var oldScaleY:Number;// = 1 mx_internal var _explicitMaxHeight:Number; mx_internal var invalidatePropertiesFlag:Boolean;// = false private var hasFocusRect:Boolean;// = false mx_internal var invalidateSizeFlag:Boolean;// = false private var _scaleX:Number;// = 1 private var _scaleY:Number;// = 1 private var _styleDeclaration:CSSStyleDeclaration; private var _resourceManager:IResourceManager; mx_internal var _affectedProperties:Object; mx_internal var _documentDescriptor:UIComponentDescriptor; private var _processedDescriptors:Boolean;// = false mx_internal var origBorderColor:Number; private var _focusManager:IFocusManager; private var _cachePolicy:String;// = "auto" private var _measuredHeight:Number;// = 0 private var _id:String; private var _owner:DisplayObjectContainer; public var transitions:Array; mx_internal var _parent:DisplayObjectContainer; private var _measuredMinWidth:Number;// = 0 private var oldMinWidth:Number; private var _explicitWidth:Number; private var _enabled:Boolean;// = false public var states:Array; private var _mouseFocusEnabled:Boolean;// = true private var oldHeight:Number;// = 0 private var _currentStateChanged:Boolean; private var cachedTextFormat:UITextFormat; mx_internal var _height:Number; private var _automationDelegate:IAutomationObject; private var _percentWidth:Number; private var _automationName:String;// = null private var _isEffectStarted:Boolean;// = false private var _styleName:Object; private var lastUnscaledWidth:Number; mx_internal var _document:Object; mx_internal var _errorString:String;// = "" private var oldExplicitHeight:Number; private var _nestLevel:int;// = 0 private var _systemManagerDirty:Boolean;// = false private var _explicitHeight:Number; mx_internal var _toolTip:String; private var _filters:Array; private var _focusPane:Sprite; private var playStateTransition:Boolean;// = true private var _nonInheritingStyles:Object; private var _showInAutomationHierarchy:Boolean;// = true private var _moduleFactory:IFlexModuleFactory; private var preventDrawFocus:Boolean;// = false private var oldX:Number;// = 0 private var oldY:Number;// = 0 private var _instanceIndices:Array; private var _visible:Boolean;// = true private var _inheritingStyles:Object; private var _includeInLayout:Boolean;// = true mx_internal var _effectsStarted:Array; mx_internal var _explicitMinWidth:Number; private var lastUnscaledHeight:Number; mx_internal var _explicitMaxWidth:Number; private var _measuredMinHeight:Number;// = 0 private var _uid:String; private var _currentTransitionEffect:IEffect; private var _updateCompletePendingFlag:Boolean;// = false private var oldMinHeight:Number; private var _flexContextMenu:IFlexContextMenu; mx_internal var _explicitMinHeight:Number; private var _percentHeight:Number; private var oldEmbeddedFontContext:IFlexModuleFactory;// = null private var oldWidth:Number;// = 0 public static const DEFAULT_MEASURED_WIDTH:Number = 160; public static const DEFAULT_MAX_WIDTH:Number = 10000; public static const DEFAULT_MEASURED_MIN_HEIGHT:Number = 22; public static const DEFAULT_MAX_HEIGHT:Number = 10000; public static const DEFAULT_MEASURED_HEIGHT:Number = 22; mx_internal static const VERSION:String = "3.2.0.3794"; public static const DEFAULT_MEASURED_MIN_WIDTH:Number = 40; mx_internal static var dispatchEventHook:Function; private static var fakeMouseY:QName = new QName(mx_internal, "_mouseY"); mx_internal static var createAccessibilityImplementation:Function; mx_internal static var STYLE_UNINITIALIZED:Object = {}; private static var fakeMouseX:QName = new QName(mx_internal, "_mouseX"); private static var _embeddedFontRegistry:IEmbeddedFontRegistry; public function UIComponent(){ methodQueue = []; _resourceManager = ResourceManager.getInstance(); _inheritingStyles = UIComponent.STYLE_UNINITIALIZED; _nonInheritingStyles = UIComponent.STYLE_UNINITIALIZED; states = []; transitions = []; _effectsStarted = []; _affectedProperties = {}; _endingEffectInstances = []; super(); focusRect = false; tabEnabled = (this is IFocusManagerComponent); tabChildren = false; enabled = true; $visible = false; addEventListener(Event.ADDED, addedHandler); addEventListener(Event.REMOVED, removedHandler); if ((this is IFocusManagerComponent)){ addEventListener(FocusEvent.FOCUS_IN, focusInHandler); addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler); addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); }; resourcesChanged(); resourceManager.addEventListener(Event.CHANGE, resourceManager_changeHandler, false, 0, true); _width = super.width; _height = super.height; } override public function get filters():Array{ return ((_filters) ? _filters : super.filters); } public function get toolTip():String{ return (_toolTip); } private function transition_effectEndHandler(_arg1:EffectEvent):void{ _currentTransitionEffect = null; } public function get nestLevel():int{ return (_nestLevel); } protected function adjustFocusRect(_arg1:DisplayObject=null):void{ var _local4:Number; var _local5:Number; var _local6:Point; var _local7:Number; if (!_arg1){ _arg1 = this; }; if (((isNaN(_arg1.width)) || (isNaN(_arg1.height)))){ return; }; var _local2:IFocusManager = focusManager; if (!_local2){ return; }; var _local3:IFlexDisplayObject = IFlexDisplayObject(getFocusObject()); if (_local3){ if (((errorString) && (!((errorString == ""))))){ _local4 = getStyle("errorColor"); } else { _local4 = getStyle("themeColor"); }; _local5 = getStyle("focusThickness"); if ((_local3 is IStyleClient)){ IStyleClient(_local3).setStyle("focusColor", _local4); }; _local3.setActualSize((_arg1.width + (2 * _local5)), (_arg1.height + (2 * _local5))); if (rotation){ _local7 = ((rotation * Math.PI) / 180); _local6 = new Point((_arg1.x - (_local5 * (Math.cos(_local7) - Math.sin(_local7)))), (_arg1.y - (_local5 * (Math.cos(_local7) + Math.sin(_local7))))); DisplayObject(_local3).rotation = rotation; } else { _local6 = new Point((_arg1.x - _local5), (_arg1.y - _local5)); }; if (_arg1.parent == this){ _local6.x = (_local6.x + x); _local6.y = (_local6.y + y); }; _local6 = parent.localToGlobal(_local6); _local6 = parent.globalToLocal(_local6); _local3.move(_local6.x, _local6.y); if ((_local3 is IInvalidating)){ IInvalidating(_local3).validateNow(); } else { if ((_local3 is IProgrammaticSkin)){ IProgrammaticSkin(_local3).validateNow(); }; }; }; } mx_internal function setUnscaledWidth(_arg1:Number):void{ var _local2:Number = (_arg1 * Math.abs(oldScaleX)); if (_explicitWidth == _local2){ return; }; if (!isNaN(_local2)){ _percentWidth = NaN; }; _explicitWidth = _local2; invalidateSize(); var _local3:IInvalidating = (parent as IInvalidating); if (((_local3) && (includeInLayout))){ _local3.invalidateSize(); _local3.invalidateDisplayList(); }; } private function isOnDisplayList():Boolean{ var p:DisplayObjectContainer; try { p = (_parent) ? _parent : super.parent; } catch(e:SecurityError) { return (true); }; return ((p) ? true : false); } public function set nestLevel(_arg1:int):void{ var _local2:IChildList; var _local3:int; var _local4:int; var _local5:ILayoutManagerClient; var _local6:IUITextField; if ((((_arg1 > 1)) && (!((_nestLevel == _arg1))))){ _nestLevel = _arg1; updateCallbacks(); _local2 = ((this is IRawChildrenContainer)) ? IRawChildrenContainer(this).rawChildren : IChildList(this); _local3 = _local2.numChildren; _local4 = 0; while (_local4 < _local3) { _local5 = (_local2.getChildAt(_local4) as ILayoutManagerClient); if (_local5){ _local5.nestLevel = (_arg1 + 1); } else { _local6 = (_local2.getChildAt(_local4) as IUITextField); if (_local6){ _local6.nestLevel = (_arg1 + 1); }; }; _local4++; }; }; } public function getExplicitOrMeasuredHeight():Number{ return ((isNaN(explicitHeight)) ? measuredHeight : explicitHeight); } private function callLaterDispatcher(_arg1:Event):void{ var callLaterErrorEvent:DynamicEvent; var event = _arg1; UIComponentGlobals.callLaterDispatcherCount++; if (!UIComponentGlobals.catchCallLaterExceptions){ callLaterDispatcher2(event); } else { try { callLaterDispatcher2(event); } catch(e:Error) { callLaterErrorEvent = new DynamicEvent("callLaterError"); callLaterErrorEvent.error = e; systemManager.dispatchEvent(callLaterErrorEvent); }; }; UIComponentGlobals.callLaterDispatcherCount--; } public function getStyle(_arg1:String){ return ((StyleManager.inheritingStyles[_arg1]) ? _inheritingStyles[_arg1] : _nonInheritingStyles[_arg1]); } final mx_internal function get $width():Number{ return (super.width); } public function get className():String{ var _local1:String = getQualifiedClassName(this); var _local2:int = _local1.indexOf("::"); if (_local2 != -1){ _local1 = _local1.substr((_local2 + 2)); }; return (_local1); } public function verticalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ UIComponentGlobals.tempMatrix.createGradientBox(_arg3, _arg4, (Math.PI / 2), _arg1, _arg2); return (UIComponentGlobals.tempMatrix); } public function setCurrentState(_arg1:String, _arg2:Boolean=true):void{ if (((!((_arg1 == currentState))) && (!(((isBaseState(_arg1)) && (isBaseState(currentState))))))){ requestedCurrentState = _arg1; playStateTransition = _arg2; if (initialized){ commitCurrentState(); } else { _currentStateChanged = true; addEventListener(FlexEvent.CREATION_COMPLETE, creationCompleteHandler); }; }; } private function getBaseStates(_arg1:State):Array{ var _local2:Array = []; while (((_arg1) && (_arg1.basedOn))) { _local2.push(_arg1.basedOn); _arg1 = getState(_arg1.basedOn); }; return (_local2); } public function set minHeight(_arg1:Number):void{ if (explicitMinHeight == _arg1){ return; }; explicitMinHeight = _arg1; } protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((_arg1 == this)); } public function get errorString():String{ return (_errorString); } mx_internal function setUnscaledHeight(_arg1:Number):void{ var _local2:Number = (_arg1 * Math.abs(oldScaleY)); if (_explicitHeight == _local2){ return; }; if (!isNaN(_local2)){ _percentHeight = NaN; }; _explicitHeight = _local2; invalidateSize(); var _local3:IInvalidating = (parent as IInvalidating); if (((_local3) && (includeInLayout))){ _local3.invalidateSize(); _local3.invalidateDisplayList(); }; } public function get automationName():String{ if (_automationName){ return (_automationName); }; if (automationDelegate){ return (automationDelegate.automationName); }; return (""); } final mx_internal function set $width(_arg1:Number):void{ super.width = _arg1; } public function getVisibleRect(_arg1:DisplayObject=null):Rectangle{ if (!_arg1){ _arg1 = DisplayObject(systemManager); }; var _local2:Point = new Point(x, y); var _local3:DisplayObject = ($parent) ? $parent : parent; _local2 = _local3.localToGlobal(_local2); var _local4:Rectangle = new Rectangle(_local2.x, _local2.y, width, height); var _local5:DisplayObject = this; var _local6:Rectangle = new Rectangle(); do { if ((_local5 is UIComponent)){ if (UIComponent(_local5).$parent){ _local5 = UIComponent(_local5).$parent; } else { _local5 = UIComponent(_local5).parent; }; } else { _local5 = _local5.parent; }; if (((_local5) && (_local5.scrollRect))){ _local6 = _local5.scrollRect.clone(); _local2 = _local5.localToGlobal(_local6.topLeft); _local6.x = _local2.x; _local6.y = _local2.y; _local4 = _local4.intersection(_local6); }; } while (((_local5) && (!((_local5 == _arg1))))); return (_local4); } public function invalidateDisplayList():void{ if (!invalidateDisplayListFlag){ invalidateDisplayListFlag = true; if (((isOnDisplayList()) && (UIComponentGlobals.layoutManager))){ UIComponentGlobals.layoutManager.invalidateDisplayList(this); }; }; } mx_internal function initThemeColor():Boolean{ var _local2:Object; var _local3:Number; var _local4:Number; var _local5:Object; var _local6:Array; var _local7:int; var _local8:CSSStyleDeclaration; var _local1:Object = _styleName; if (_styleDeclaration){ _local2 = _styleDeclaration.getStyle("themeColor"); _local3 = _styleDeclaration.getStyle("rollOverColor"); _local4 = _styleDeclaration.getStyle("selectionColor"); }; if ((((((_local2 === null)) || (!(StyleManager.isValidStyleValue(_local2))))) && (((_local1) && (!((_local1 is ISimpleStyleClient))))))){ _local5 = ((_local1 is String)) ? StyleManager.getStyleDeclaration(("." + _local1)) : _local1; if (_local5){ _local2 = _local5.getStyle("themeColor"); _local3 = _local5.getStyle("rollOverColor"); _local4 = _local5.getStyle("selectionColor"); }; }; if ((((_local2 === null)) || (!(StyleManager.isValidStyleValue(_local2))))){ _local6 = getClassStyleDeclarations(); _local7 = 0; while (_local7 < _local6.length) { _local8 = _local6[_local7]; if (_local8){ _local2 = _local8.getStyle("themeColor"); _local3 = _local8.getStyle("rollOverColor"); _local4 = _local8.getStyle("selectionColor"); }; if (((!((_local2 === null))) && (StyleManager.isValidStyleValue(_local2)))){ break; }; _local7++; }; }; if (((((((!((_local2 === null))) && (StyleManager.isValidStyleValue(_local2)))) && (isNaN(_local3)))) && (isNaN(_local4)))){ setThemeColor(_local2); return (true); }; return (((((((!((_local2 === null))) && (StyleManager.isValidStyleValue(_local2)))) && (!(isNaN(_local3))))) && (!(isNaN(_local4))))); } override public function get scaleX():Number{ return (_scaleX); } public function get uid():String{ if (!_uid){ _uid = toString(); }; return (_uid); } override public function get mouseX():Number{ if (((((!(root)) || ((root is Stage)))) || ((root[fakeMouseX] === undefined)))){ return (super.mouseX); }; return (globalToLocal(new Point(root[fakeMouseX], 0)).x); } override public function stopDrag():void{ super.stopDrag(); invalidateProperties(); dispatchEvent(new Event("xChanged")); dispatchEvent(new Event("yChanged")); } public function get focusPane():Sprite{ return (_focusPane); } public function set tweeningProperties(_arg1:Array):void{ _tweeningProperties = _arg1; } public function horizontalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ UIComponentGlobals.tempMatrix.createGradientBox(_arg3, _arg4, 0, _arg1, _arg2); return (UIComponentGlobals.tempMatrix); } public function get isDocument():Boolean{ return ((document == this)); } public function set validationSubField(_arg1:String):void{ _validationSubField = _arg1; } override public function get scaleY():Number{ return (_scaleY); } protected function keyDownHandler(_arg1:KeyboardEvent):void{ } protected function createInFontContext(_arg1:Class):Object{ hasFontContextBeenSaved = true; var _local2:String = StringUtil.trimArrayElements(getStyle("fontFamily"), ","); var _local3:String = getStyle("fontWeight"); var _local4:String = getStyle("fontStyle"); var _local5 = (_local3 == "bold"); var _local6 = (_local4 == "italic"); oldEmbeddedFontContext = getFontContext(_local2, _local5, _local6); var _local7:Object = createInModuleContext((oldEmbeddedFontContext) ? oldEmbeddedFontContext : moduleFactory, getQualifiedClassName(_arg1)); if (_local7 == null){ _local7 = new (_arg1); }; return (_local7); } public function get screen():Rectangle{ var _local1:ISystemManager = systemManager; return ((_local1) ? _local1.screen : null); } protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (isOurFocus(DisplayObject(_arg1.target))){ _local2 = focusManager; if (((_local2) && (_local2.showFocusIndicator))){ drawFocus(true); }; ContainerGlobals.checkFocus(_arg1.relatedObject, this); }; } public function hasFontContextChanged():Boolean{ if (!hasFontContextBeenSaved){ return (false); }; var _local1:String = StringUtil.trimArrayElements(getStyle("fontFamily"), ","); var _local2:String = getStyle("fontWeight"); var _local3:String = getStyle("fontStyle"); var _local4 = (_local2 == "bold"); var _local5 = (_local3 == "italic"); var _local6:EmbeddedFont = getEmbeddedFont(_local1, _local4, _local5); var _local7:IFlexModuleFactory = embeddedFontRegistry.getAssociatedModuleFactory(_local6, moduleFactory); return (!((_local7 == oldEmbeddedFontContext))); } public function get explicitHeight():Number{ return (_explicitHeight); } override public function get x():Number{ return (super.x); } override public function get y():Number{ return (super.y); } override public function get visible():Boolean{ return (_visible); } mx_internal function addOverlay(_arg1:uint, _arg2:RoundedRectangle=null):void{ if (!overlay){ overlayColor = _arg1; overlay = new UIComponent(); overlay.name = "overlay"; overlay.$visible = true; fillOverlay(overlay, _arg1, _arg2); attachOverlay(); if (!_arg2){ addEventListener(ResizeEvent.RESIZE, overlay_resizeHandler); }; overlay.x = 0; overlay.y = 0; invalidateDisplayList(); overlayReferenceCount = 1; } else { overlayReferenceCount++; }; dispatchEvent(new ChildExistenceChangedEvent(ChildExistenceChangedEvent.OVERLAY_CREATED, true, false, overlay)); } public function get percentWidth():Number{ return (_percentWidth); } public function set explicitMinHeight(_arg1:Number):void{ if (_explicitMinHeight == _arg1){ return; }; _explicitMinHeight = _arg1; invalidateSize(); var _local2:IInvalidating = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; dispatchEvent(new Event("explicitMinHeightChanged")); } public function set automationName(_arg1:String):void{ _automationName = _arg1; } public function get mouseFocusEnabled():Boolean{ return (_mouseFocusEnabled); } mx_internal function getEmbeddedFont(_arg1:String, _arg2:Boolean, _arg3:Boolean):EmbeddedFont{ if (cachedEmbeddedFont){ if ((((cachedEmbeddedFont.fontName == _arg1)) && ((cachedEmbeddedFont.fontStyle == EmbeddedFontRegistry.getFontStyle(_arg2, _arg3))))){ return (cachedEmbeddedFont); }; }; cachedEmbeddedFont = new EmbeddedFont(_arg1, _arg2, _arg3); return (cachedEmbeddedFont); } public function stylesInitialized():void{ } public function set errorString(_arg1:String):void{ var _local2:String = _errorString; _errorString = _arg1; ToolTipManager.registerErrorString(this, _local2, _arg1); errorStringChanged = true; invalidateProperties(); dispatchEvent(new Event("errorStringChanged")); } public function getExplicitOrMeasuredWidth():Number{ return ((isNaN(explicitWidth)) ? measuredWidth : explicitWidth); } final mx_internal function set $height(_arg1:Number):void{ super.height = _arg1; } protected function keyUpHandler(_arg1:KeyboardEvent):void{ } final mx_internal function $removeChild(_arg1:DisplayObject):DisplayObject{ return (super.removeChild(_arg1)); } override public function set scaleX(_arg1:Number):void{ if (_scaleX == _arg1){ return; }; _scaleX = _arg1; invalidateProperties(); invalidateSize(); dispatchEvent(new Event("scaleXChanged")); } override public function set scaleY(_arg1:Number):void{ if (_scaleY == _arg1){ return; }; _scaleY = _arg1; invalidateProperties(); invalidateSize(); dispatchEvent(new Event("scaleYChanged")); } public function set uid(_arg1:String):void{ this._uid = _arg1; } public function createAutomationIDPart(_arg1:IAutomationObject):Object{ if (automationDelegate){ return (automationDelegate.createAutomationIDPart(_arg1)); }; return (null); } public function getAutomationChildAt(_arg1:int):IAutomationObject{ if (automationDelegate){ return (automationDelegate.getAutomationChildAt(_arg1)); }; return (null); } mx_internal function get isEffectStarted():Boolean{ return (_isEffectStarted); } override public function get parent():DisplayObjectContainer{ try { return ((_parent) ? _parent : super.parent); } catch(e:SecurityError) { }; return (null); } override public function get mouseY():Number{ if (((((!(root)) || ((root is Stage)))) || ((root[fakeMouseY] === undefined)))){ return (super.mouseY); }; return (globalToLocal(new Point(0, root[fakeMouseY])).y); } public function setActualSize(_arg1:Number, _arg2:Number):void{ var _local3:Boolean; if (_width != _arg1){ _width = _arg1; dispatchEvent(new Event("widthChanged")); _local3 = true; }; if (_height != _arg2){ _height = _arg2; dispatchEvent(new Event("heightChanged")); _local3 = true; }; if (_local3){ invalidateDisplayList(); dispatchResizeEvent(); }; } private function focusObj_resizeHandler(_arg1:ResizeEvent):void{ adjustFocusRect(); } mx_internal function adjustSizesForScaleChanges():void{ var _local3:Number; var _local1:Number = scaleX; var _local2:Number = scaleY; if (_local1 != oldScaleX){ _local3 = Math.abs((_local1 / oldScaleX)); if (explicitMinWidth){ explicitMinWidth = (explicitMinWidth * _local3); }; if (!isNaN(explicitWidth)){ explicitWidth = (explicitWidth * _local3); }; if (explicitMaxWidth){ explicitMaxWidth = (explicitMaxWidth * _local3); }; oldScaleX = _local1; }; if (_local2 != oldScaleY){ _local3 = Math.abs((_local2 / oldScaleY)); if (explicitMinHeight){ explicitMinHeight = (explicitMinHeight * _local3); }; if (explicitHeight){ explicitHeight = (explicitHeight * _local3); }; if (explicitMaxHeight){ explicitMaxHeight = (explicitMaxHeight * _local3); }; oldScaleY = _local2; }; } public function set focusPane(_arg1:Sprite):void{ if (_arg1){ addChild(_arg1); _arg1.x = 0; _arg1.y = 0; _arg1.scrollRect = null; _focusPane = _arg1; } else { removeChild(_focusPane); _focusPane.mask = null; _focusPane = null; }; } public function determineTextFormatFromStyles():UITextFormat{ var _local2:String; var _local1:UITextFormat = cachedTextFormat; if (!_local1){ _local2 = StringUtil.trimArrayElements(_inheritingStyles.fontFamily, ","); _local1 = new UITextFormat(getNonNullSystemManager(), _local2); _local1.moduleFactory = moduleFactory; _local1.align = _inheritingStyles.textAlign; _local1.bold = (_inheritingStyles.fontWeight == "bold"); _local1.color = (enabled) ? _inheritingStyles.color : _inheritingStyles.disabledColor; _local1.font = _local2; _local1.indent = _inheritingStyles.textIndent; _local1.italic = (_inheritingStyles.fontStyle == "italic"); _local1.kerning = _inheritingStyles.kerning; _local1.leading = _nonInheritingStyles.leading; _local1.leftMargin = _nonInheritingStyles.paddingLeft; _local1.letterSpacing = _inheritingStyles.letterSpacing; _local1.rightMargin = _nonInheritingStyles.paddingRight; _local1.size = _inheritingStyles.fontSize; _local1.underline = (_nonInheritingStyles.textDecoration == "underline"); _local1.antiAliasType = _inheritingStyles.fontAntiAliasType; _local1.gridFitType = _inheritingStyles.fontGridFitType; _local1.sharpness = _inheritingStyles.fontSharpness; _local1.thickness = _inheritingStyles.fontThickness; cachedTextFormat = _local1; }; return (_local1); } public function validationResultHandler(_arg1:ValidationResultEvent):void{ var _local2:String; var _local3:ValidationResult; var _local4:int; if (_arg1.type == ValidationResultEvent.VALID){ if (errorString != ""){ errorString = ""; dispatchEvent(new FlexEvent(FlexEvent.VALID)); }; } else { if (((((!((validationSubField == null))) && (!((validationSubField == ""))))) && (_arg1.results))){ _local4 = 0; while (_local4 < _arg1.results.length) { _local3 = _arg1.results[_local4]; if (_local3.subField == validationSubField){ if (_local3.isError){ _local2 = _local3.errorMessage; } else { if (errorString != ""){ errorString = ""; dispatchEvent(new FlexEvent(FlexEvent.VALID)); }; }; break; }; _local4++; }; } else { if (((_arg1.results) && ((_arg1.results.length > 0)))){ _local2 = _arg1.results[0].errorMessage; }; }; if (((_local2) && (!((errorString == _local2))))){ errorString = _local2; dispatchEvent(new FlexEvent(FlexEvent.INVALID)); }; }; } public function invalidateProperties():void{ if (!invalidatePropertiesFlag){ invalidatePropertiesFlag = true; if (((parent) && (UIComponentGlobals.layoutManager))){ UIComponentGlobals.layoutManager.invalidateProperties(this); }; }; } public function get inheritingStyles():Object{ return (_inheritingStyles); } private function focusObj_scrollHandler(_arg1:Event):void{ adjustFocusRect(); } final mx_internal function get $x():Number{ return (super.x); } final mx_internal function get $y():Number{ return (super.y); } public function setConstraintValue(_arg1:String, _arg2):void{ setStyle(_arg1, _arg2); } protected function resourcesChanged():void{ } public function registerEffects(_arg1:Array):void{ var _local4:String; var _local2:int = _arg1.length; var _local3:int; while (_local3 < _local2) { _local4 = EffectManager.getEventForEffectTrigger(_arg1[_local3]); if (((!((_local4 == null))) && (!((_local4 == ""))))){ addEventListener(_local4, EffectManager.eventHandler, false, EventPriority.EFFECT); }; _local3++; }; } public function get explicitMinWidth():Number{ return (_explicitMinWidth); } private function filterChangeHandler(_arg1:Event):void{ super.filters = _filters; } override public function set visible(_arg1:Boolean):void{ setVisible(_arg1); } public function set explicitHeight(_arg1:Number):void{ if (_explicitHeight == _arg1){ return; }; if (!isNaN(_arg1)){ _percentHeight = NaN; }; _explicitHeight = _arg1; invalidateSize(); var _local2:IInvalidating = (parent as IInvalidating); if (((_local2) && (includeInLayout))){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; dispatchEvent(new Event("explicitHeightChanged")); } override public function set x(_arg1:Number):void{ if (super.x == _arg1){ return; }; super.x = _arg1; invalidateProperties(); dispatchEvent(new Event("xChanged")); } public function set showInAutomationHierarchy(_arg1:Boolean):void{ _showInAutomationHierarchy = _arg1; } override public function set y(_arg1:Number):void{ if (super.y == _arg1){ return; }; super.y = _arg1; invalidateProperties(); dispatchEvent(new Event("yChanged")); } private function resourceManager_changeHandler(_arg1:Event):void{ resourcesChanged(); } public function set systemManager(_arg1:ISystemManager):void{ _systemManager = _arg1; _systemManagerDirty = false; } mx_internal function getFocusObject():DisplayObject{ var _local1:IFocusManager = focusManager; if (((!(_local1)) || (!(_local1.focusPane)))){ return (null); }; return (((_local1.focusPane.numChildren == 0)) ? null : _local1.focusPane.getChildAt(0)); } public function set percentWidth(_arg1:Number):void{ if (_percentWidth == _arg1){ return; }; if (!isNaN(_arg1)){ _explicitWidth = NaN; }; _percentWidth = _arg1; var _local2:IInvalidating = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; } public function get moduleFactory():IFlexModuleFactory{ return (_moduleFactory); } override public function addChild(_arg1:DisplayObject):DisplayObject{ var _local2:DisplayObjectContainer = _arg1.parent; if (((_local2) && (!((_local2 is Loader))))){ _local2.removeChild(_arg1); }; var _local3:int = (((overlayReferenceCount) && (!((_arg1 == overlay))))) ? Math.max(0, (super.numChildren - 1)) : super.numChildren; addingChild(_arg1); $addChildAt(_arg1, _local3); childAdded(_arg1); return (_arg1); } public function get document():Object{ return (_document); } public function set mouseFocusEnabled(_arg1:Boolean):void{ _mouseFocusEnabled = _arg1; } final mx_internal function $addChild(_arg1:DisplayObject):DisplayObject{ return (super.addChild(_arg1)); } mx_internal function setThemeColor(_arg1:Object):void{ var _local2:Number; if ((_local2 is String)){ _local2 = parseInt(String(_arg1)); } else { _local2 = Number(_arg1); }; if (isNaN(_local2)){ _local2 = StyleManager.getColorName(_arg1); }; var _local3:Number = ColorUtil.adjustBrightness2(_local2, 50); var _local4:Number = ColorUtil.adjustBrightness2(_local2, 70); setStyle("selectionColor", _local3); setStyle("rollOverColor", _local4); } public function get explicitMaxWidth():Number{ return (_explicitMaxWidth); } public function get id():String{ return (_id); } override public function get height():Number{ return (_height); } public function set minWidth(_arg1:Number):void{ if (explicitMinWidth == _arg1){ return; }; explicitMinWidth = _arg1; } public function set currentState(_arg1:String):void{ setCurrentState(_arg1, true); } public function getRepeaterItem(_arg1:int=-1):Object{ var _local2:Array = repeaters; if (_arg1 == -1){ _arg1 = (_local2.length - 1); }; return (_local2[_arg1].getItemAt(repeaterIndices[_arg1])); } public function executeBindings(_arg1:Boolean=false):void{ var _local2:Object = (((descriptor) && (descriptor.document))) ? descriptor.document : parentDocument; BindingManager.executeBindings(_local2, id, this); } public function replayAutomatableEvent(_arg1:Event):Boolean{ if (automationDelegate){ return (automationDelegate.replayAutomatableEvent(_arg1)); }; return (false); } mx_internal function getFontContext(_arg1:String, _arg2:Boolean, _arg3:Boolean):IFlexModuleFactory{ return (embeddedFontRegistry.getAssociatedModuleFactory(getEmbeddedFont(_arg1, _arg2, _arg3), moduleFactory)); } public function get instanceIndex():int{ return ((_instanceIndices) ? _instanceIndices[(_instanceIndices.length - 1)] : -1); } public function set measuredWidth(_arg1:Number):void{ _measuredWidth = _arg1; } public function effectFinished(_arg1:IEffectInstance):void{ _endingEffectInstances.push(_arg1); invalidateProperties(); UIComponentGlobals.layoutManager.addEventListener(FlexEvent.UPDATE_COMPLETE, updateCompleteHandler, false, 0, true); } mx_internal function set isEffectStarted(_arg1:Boolean):void{ _isEffectStarted = _arg1; } mx_internal function fillOverlay(_arg1:UIComponent, _arg2:uint, _arg3:RoundedRectangle=null):void{ if (!_arg3){ _arg3 = new RoundedRectangle(0, 0, unscaledWidth, unscaledHeight, 0); }; var _local4:Graphics = _arg1.graphics; _local4.clear(); _local4.beginFill(_arg2); _local4.drawRoundRect(_arg3.x, _arg3.y, _arg3.width, _arg3.height, (_arg3.cornerRadius * 2), (_arg3.cornerRadius * 2)); _local4.endFill(); } public function get instanceIndices():Array{ return ((_instanceIndices) ? _instanceIndices.slice(0) : null); } mx_internal function childAdded(_arg1:DisplayObject):void{ if ((_arg1 is UIComponent)){ if (!UIComponent(_arg1).initialized){ UIComponent(_arg1).initialize(); }; } else { if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).initialize(); }; }; } public function globalToContent(_arg1:Point):Point{ return (globalToLocal(_arg1)); } mx_internal function removingChild(_arg1:DisplayObject):void{ } mx_internal function getEffectsForProperty(_arg1:String):Array{ return (((_affectedProperties[_arg1])!=undefined) ? _affectedProperties[_arg1] : []); } override public function removeChildAt(_arg1:int):DisplayObject{ var _local2:DisplayObject = getChildAt(_arg1); removingChild(_local2); $removeChild(_local2); childRemoved(_local2); return (_local2); } protected function measure():void{ measuredMinWidth = 0; measuredMinHeight = 0; measuredWidth = 0; measuredHeight = 0; } public function set owner(_arg1:DisplayObjectContainer):void{ _owner = _arg1; } mx_internal function getNonNullSystemManager():ISystemManager{ var _local1:ISystemManager = systemManager; if (!_local1){ _local1 = ISystemManager(SystemManager.getSWFRoot(this)); }; if (!_local1){ return (SystemManagerGlobals.topLevelSystemManagers[0]); }; return (_local1); } protected function get unscaledWidth():Number{ return ((width / Math.abs(scaleX))); } public function set processedDescriptors(_arg1:Boolean):void{ _processedDescriptors = _arg1; if (_arg1){ dispatchEvent(new FlexEvent(FlexEvent.INITIALIZE)); }; } private function processEffectFinished(_arg1:Array):void{ var _local3:int; var _local4:IEffectInstance; var _local5:IEffectInstance; var _local6:Array; var _local7:int; var _local8:String; var _local9:int; var _local2:int = (_effectsStarted.length - 1); while (_local2 >= 0) { _local3 = 0; while (_local3 < _arg1.length) { _local4 = _arg1[_local3]; if (_local4 == _effectsStarted[_local2]){ _local5 = _effectsStarted[_local2]; _effectsStarted.splice(_local2, 1); _local6 = _local5.effect.getAffectedProperties(); _local7 = 0; while (_local7 < _local6.length) { _local8 = _local6[_local7]; if (_affectedProperties[_local8] != undefined){ _local9 = 0; while (_local9 < _affectedProperties[_local8].length) { if (_affectedProperties[_local8][_local9] == _local4){ _affectedProperties[_local8].splice(_local9, 1); break; }; _local9++; }; if (_affectedProperties[_local8].length == 0){ delete _affectedProperties[_local8]; }; }; _local7++; }; break; }; _local3++; }; _local2--; }; isEffectStarted = ((_effectsStarted.length > 0)) ? true : false; if (((_local4) && (_local4.hideFocusRing))){ preventDrawFocus = false; }; } private function commitCurrentState():void{ var _local3:StateChangeEvent; var _local1:IEffect = (playStateTransition) ? getTransition(_currentState, requestedCurrentState) : null; var _local2:String = findCommonBaseState(_currentState, requestedCurrentState); var _local4:String = (_currentState) ? _currentState : ""; var _local5:State = getState(requestedCurrentState); if (_currentTransitionEffect){ _currentTransitionEffect.end(); }; initializeState(requestedCurrentState); if (_local1){ _local1.captureStartValues(); }; _local3 = new StateChangeEvent(StateChangeEvent.CURRENT_STATE_CHANGING); _local3.oldState = _local4; _local3.newState = (requestedCurrentState) ? requestedCurrentState : ""; dispatchEvent(_local3); if (isBaseState(_currentState)){ dispatchEvent(new FlexEvent(FlexEvent.EXIT_STATE)); }; removeState(_currentState, _local2); _currentState = requestedCurrentState; if (isBaseState(currentState)){ dispatchEvent(new FlexEvent(FlexEvent.ENTER_STATE)); } else { applyState(_currentState, _local2); }; _local3 = new StateChangeEvent(StateChangeEvent.CURRENT_STATE_CHANGE); _local3.oldState = _local4; _local3.newState = (_currentState) ? _currentState : ""; dispatchEvent(_local3); if (_local1){ UIComponentGlobals.layoutManager.validateNow(); _currentTransitionEffect = _local1; _local1.addEventListener(EffectEvent.EFFECT_END, transition_effectEndHandler); _local1.play(); }; } public function get includeInLayout():Boolean{ return (_includeInLayout); } private function dispatchResizeEvent():void{ var _local1:ResizeEvent = new ResizeEvent(ResizeEvent.RESIZE); _local1.oldWidth = oldWidth; _local1.oldHeight = oldHeight; dispatchEvent(_local1); oldWidth = width; oldHeight = height; } public function set maxWidth(_arg1:Number):void{ if (explicitMaxWidth == _arg1){ return; }; explicitMaxWidth = _arg1; } public function validateDisplayList():void{ var _local1:ISystemManager; var _local2:Number; var _local3:Number; if (invalidateDisplayListFlag){ _local1 = (parent as ISystemManager); if (_local1){ if ((((_local1 is SystemManagerProxy)) || ((((_local1 == systemManager.topLevelSystemManager)) && (!((_local1.document == this))))))){ setActualSize(getExplicitOrMeasuredWidth(), getExplicitOrMeasuredHeight()); }; }; _local2 = ((scaleX == 0)) ? 0 : (width / scaleX); _local3 = ((scaleY == 0)) ? 0 : (height / scaleY); if (Math.abs((_local2 - lastUnscaledWidth)) < 1E-5){ _local2 = lastUnscaledWidth; }; if (Math.abs((_local3 - lastUnscaledHeight)) < 1E-5){ _local3 = lastUnscaledHeight; }; updateDisplayList(_local2, _local3); lastUnscaledWidth = _local2; lastUnscaledHeight = _local3; invalidateDisplayListFlag = false; }; } public function contentToGlobal(_arg1:Point):Point{ return (localToGlobal(_arg1)); } public function resolveAutomationIDPart(_arg1:Object):Array{ if (automationDelegate){ return (automationDelegate.resolveAutomationIDPart(_arg1)); }; return ([]); } public function set inheritingStyles(_arg1:Object):void{ _inheritingStyles = _arg1; } public function setFocus():void{ var _local1:ISystemManager = systemManager; if (((_local1) && (((_local1.stage) || (_local1.useSWFBridge()))))){ if (UIComponentGlobals.callLaterDispatcherCount == 0){ _local1.stage.focus = this; UIComponentGlobals.nextFocusObject = null; } else { UIComponentGlobals.nextFocusObject = this; _local1.addEventListener(FlexEvent.ENTER_FRAME, setFocusLater); }; } else { UIComponentGlobals.nextFocusObject = this; callLater(setFocusLater); }; } private function getTransition(_arg1:String, _arg2:String):IEffect{ var _local6:Transition; var _local3:IEffect; var _local4:int; if (!transitions){ return (null); }; if (!_arg1){ _arg1 = ""; }; if (!_arg2){ _arg2 = ""; }; var _local5:int; while (_local5 < transitions.length) { _local6 = transitions[_local5]; if ((((((_local6.fromState == "*")) && ((_local6.toState == "*")))) && ((_local4 < 1)))){ _local3 = _local6.effect; _local4 = 1; } else { if ((((((_local6.fromState == _arg1)) && ((_local6.toState == "*")))) && ((_local4 < 2)))){ _local3 = _local6.effect; _local4 = 2; } else { if ((((((_local6.fromState == "*")) && ((_local6.toState == _arg2)))) && ((_local4 < 3)))){ _local3 = _local6.effect; _local4 = 3; } else { if ((((((_local6.fromState == _arg1)) && ((_local6.toState == _arg2)))) && ((_local4 < 4)))){ _local3 = _local6.effect; _local4 = 4; break; }; }; }; }; _local5++; }; return (_local3); } public function set initialized(_arg1:Boolean):void{ _initialized = _arg1; if (_arg1){ setVisible(_visible, true); dispatchEvent(new FlexEvent(FlexEvent.CREATION_COMPLETE)); }; } final mx_internal function set $y(_arg1:Number):void{ super.y = _arg1; } public function owns(_arg1:DisplayObject):Boolean{ var child = _arg1; var childList:IChildList = ((this is IRawChildrenContainer)) ? IRawChildrenContainer(this).rawChildren : IChildList(this); if (childList.contains(child)){ return (true); }; try { while (((child) && (!((child == this))))) { if ((child is IUIComponent)){ child = IUIComponent(child).owner; } else { child = child.parent; }; }; } catch(e:SecurityError) { return (false); }; return ((child == this)); } public function setVisible(_arg1:Boolean, _arg2:Boolean=false):void{ _visible = _arg1; if (!initialized){ return; }; if ($visible == _arg1){ return; }; $visible = _arg1; if (!_arg2){ dispatchEvent(new FlexEvent((_arg1) ? FlexEvent.SHOW : FlexEvent.HIDE)); }; } final mx_internal function $addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ return (super.addChildAt(_arg1, _arg2)); } public function deleteReferenceOnParentDocument(_arg1:IFlexDisplayObject):void{ var _local2:Array; var _local3:Object; var _local4:Array; var _local5:int; var _local6:int; var _local7:int; var _local8:Object; var _local9:PropertyChangeEvent; if (((id) && (!((id == ""))))){ _local2 = _instanceIndices; if (!_local2){ _arg1[id] = null; } else { _local3 = _arg1[id]; if (!_local3){ return; }; _local4 = []; _local4.push(_local3); _local5 = _local2.length; _local6 = 0; while (_local6 < (_local5 - 1)) { _local8 = _local3[_local2[_local6]]; if (!_local8){ return; }; _local3 = _local8; _local4.push(_local3); _local6++; }; _local3.splice(_local2[(_local5 - 1)], 1); _local7 = (_local4.length - 1); while (_local7 > 0) { if (_local4[_local7].length == 0){ _local4[(_local7 - 1)].splice(_local2[_local7], 1); }; _local7--; }; if ((((_local4.length > 0)) && ((_local4[0].length == 0)))){ _arg1[id] = null; } else { _local9 = PropertyChangeEvent.createUpdateEvent(_arg1, id, _arg1[id], _arg1[id]); _arg1.dispatchEvent(_local9); }; }; }; } public function get nonInheritingStyles():Object{ return (_nonInheritingStyles); } public function effectStarted(_arg1:IEffectInstance):void{ var _local4:String; _effectsStarted.push(_arg1); var _local2:Array = _arg1.effect.getAffectedProperties(); var _local3:int; while (_local3 < _local2.length) { _local4 = _local2[_local3]; if (_affectedProperties[_local4] == undefined){ _affectedProperties[_local4] = []; }; _affectedProperties[_local4].push(_arg1); _local3++; }; isEffectStarted = true; if (_arg1.hideFocusRing){ preventDrawFocus = true; drawFocus(false); }; } final mx_internal function set $x(_arg1:Number):void{ super.x = _arg1; } private function applyState(_arg1:String, _arg2:String):void{ var _local4:Array; var _local5:int; var _local3:State = getState(_arg1); if (_arg1 == _arg2){ return; }; if (_local3){ if (_local3.basedOn != _arg2){ applyState(_local3.basedOn, _arg2); }; _local4 = _local3.overrides; _local5 = 0; while (_local5 < _local4.length) { _local4[_local5].apply(this); _local5++; }; _local3.dispatchEnterState(); }; } protected function commitProperties():void{ var _local1:Number; var _local2:Number; if (_scaleX != oldScaleX){ _local1 = Math.abs((_scaleX / oldScaleX)); if (!isNaN(explicitMinWidth)){ explicitMinWidth = (explicitMinWidth * _local1); }; if (!isNaN(explicitWidth)){ explicitWidth = (explicitWidth * _local1); }; if (!isNaN(explicitMaxWidth)){ explicitMaxWidth = (explicitMaxWidth * _local1); }; _width = (_width * _local1); super.scaleX = (oldScaleX = _scaleX); }; if (_scaleY != oldScaleY){ _local2 = Math.abs((_scaleY / oldScaleY)); if (!isNaN(explicitMinHeight)){ explicitMinHeight = (explicitMinHeight * _local2); }; if (!isNaN(explicitHeight)){ explicitHeight = (explicitHeight * _local2); }; if (!isNaN(explicitMaxHeight)){ explicitMaxHeight = (explicitMaxHeight * _local2); }; _height = (_height * _local2); super.scaleY = (oldScaleY = _scaleY); }; if (((!((x == oldX))) || (!((y == oldY))))){ dispatchMoveEvent(); }; if (((!((width == oldWidth))) || (!((height == oldHeight))))){ dispatchResizeEvent(); }; if (errorStringChanged){ errorStringChanged = false; setBorderColorForErrorString(); }; } public function get percentHeight():Number{ return (_percentHeight); } override public function get width():Number{ return (_width); } final mx_internal function get $parent():DisplayObjectContainer{ return (super.parent); } public function set explicitMinWidth(_arg1:Number):void{ if (_explicitMinWidth == _arg1){ return; }; _explicitMinWidth = _arg1; invalidateSize(); var _local2:IInvalidating = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; dispatchEvent(new Event("explicitMinWidthChanged")); } public function get isPopUp():Boolean{ return (_isPopUp); } private function measureSizes():Boolean{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local1:Boolean; if (!invalidateSizeFlag){ return (_local1); }; if (((isNaN(explicitWidth)) || (isNaN(explicitHeight)))){ _local4 = Math.abs(scaleX); _local5 = Math.abs(scaleY); if (_local4 != 1){ _measuredMinWidth = (_measuredMinWidth / _local4); _measuredWidth = (_measuredWidth / _local4); }; if (_local5 != 1){ _measuredMinHeight = (_measuredMinHeight / _local5); _measuredHeight = (_measuredHeight / _local5); }; measure(); invalidateSizeFlag = false; if (((!(isNaN(explicitMinWidth))) && ((measuredWidth < explicitMinWidth)))){ measuredWidth = explicitMinWidth; }; if (((!(isNaN(explicitMaxWidth))) && ((measuredWidth > explicitMaxWidth)))){ measuredWidth = explicitMaxWidth; }; if (((!(isNaN(explicitMinHeight))) && ((measuredHeight < explicitMinHeight)))){ measuredHeight = explicitMinHeight; }; if (((!(isNaN(explicitMaxHeight))) && ((measuredHeight > explicitMaxHeight)))){ measuredHeight = explicitMaxHeight; }; if (_local4 != 1){ _measuredMinWidth = (_measuredMinWidth * _local4); _measuredWidth = (_measuredWidth * _local4); }; if (_local5 != 1){ _measuredMinHeight = (_measuredMinHeight * _local5); _measuredHeight = (_measuredHeight * _local5); }; } else { invalidateSizeFlag = false; _measuredMinWidth = 0; _measuredMinHeight = 0; }; adjustSizesForScaleChanges(); if (isNaN(oldMinWidth)){ oldMinWidth = (isNaN(explicitMinWidth)) ? measuredMinWidth : explicitMinWidth; oldMinHeight = (isNaN(explicitMinHeight)) ? measuredMinHeight : explicitMinHeight; oldExplicitWidth = (isNaN(explicitWidth)) ? measuredWidth : explicitWidth; oldExplicitHeight = (isNaN(explicitHeight)) ? measuredHeight : explicitHeight; _local1 = true; } else { _local3 = (isNaN(explicitMinWidth)) ? measuredMinWidth : explicitMinWidth; if (_local3 != oldMinWidth){ oldMinWidth = _local3; _local1 = true; }; _local3 = (isNaN(explicitMinHeight)) ? measuredMinHeight : explicitMinHeight; if (_local3 != oldMinHeight){ oldMinHeight = _local3; _local1 = true; }; _local3 = (isNaN(explicitWidth)) ? measuredWidth : explicitWidth; if (_local3 != oldExplicitWidth){ oldExplicitWidth = _local3; _local1 = true; }; _local3 = (isNaN(explicitHeight)) ? measuredHeight : explicitHeight; if (_local3 != oldExplicitHeight){ oldExplicitHeight = _local3; _local1 = true; }; }; return (_local1); } public function get automationTabularData():Object{ if (automationDelegate){ return (automationDelegate.automationTabularData); }; return (null); } public function validateNow():void{ UIComponentGlobals.layoutManager.validateClient(this); } public function finishPrint(_arg1:Object, _arg2:IFlexDisplayObject):void{ } public function get repeaters():Array{ return ((_repeaters) ? _repeaters.slice(0) : []); } private function dispatchMoveEvent():void{ var _local1:MoveEvent = new MoveEvent(MoveEvent.MOVE); _local1.oldX = oldX; _local1.oldY = oldY; dispatchEvent(_local1); oldX = x; oldY = y; } public function drawFocus(_arg1:Boolean):void{ var _local4:DisplayObjectContainer; var _local5:Class; if (!parent){ return; }; var _local2:DisplayObject = getFocusObject(); var _local3:Sprite = (focusManager) ? focusManager.focusPane : null; if (((_arg1) && (!(preventDrawFocus)))){ _local4 = _local3.parent; if (_local4 != parent){ if (_local4){ if ((_local4 is ISystemManager)){ ISystemManager(_local4).focusPane = null; } else { IUIComponent(_local4).focusPane = null; }; }; if ((parent is ISystemManager)){ ISystemManager(parent).focusPane = _local3; } else { IUIComponent(parent).focusPane = _local3; }; }; _local5 = getStyle("focusSkin"); if (((_local2) && (!((_local2 is _local5))))){ _local3.removeChild(_local2); _local2 = null; }; if (!_local2){ _local2 = new (_local5); _local2.name = "focus"; _local3.addChild(_local2); }; if ((_local2 is ILayoutManagerClient)){ ILayoutManagerClient(_local2).nestLevel = nestLevel; }; if ((_local2 is ISimpleStyleClient)){ ISimpleStyleClient(_local2).styleName = this; }; addEventListener(MoveEvent.MOVE, focusObj_moveHandler, true); addEventListener(MoveEvent.MOVE, focusObj_moveHandler); addEventListener(ResizeEvent.RESIZE, focusObj_resizeHandler, true); addEventListener(ResizeEvent.RESIZE, focusObj_resizeHandler); addEventListener(Event.REMOVED, focusObj_removedHandler, true); _local2.visible = true; hasFocusRect = true; adjustFocusRect(); } else { if (hasFocusRect){ hasFocusRect = false; if (_local2){ _local2.visible = false; }; removeEventListener(MoveEvent.MOVE, focusObj_moveHandler); removeEventListener(MoveEvent.MOVE, focusObj_moveHandler, true); removeEventListener(ResizeEvent.RESIZE, focusObj_resizeHandler, true); removeEventListener(ResizeEvent.RESIZE, focusObj_resizeHandler); removeEventListener(Event.REMOVED, focusObj_removedHandler, true); }; }; } public function get flexContextMenu():IFlexContextMenu{ return (_flexContextMenu); } private function get indexedID():String{ var _local1:String = id; var _local2:Array = instanceIndices; if (_local2){ _local1 = (_local1 + (("[" + _local2.join("][")) + "]")); }; return (_local1); } public function get measuredMinHeight():Number{ return (_measuredMinHeight); } mx_internal function addingChild(_arg1:DisplayObject):void{ if ((((_arg1 is IUIComponent)) && (!(IUIComponent(_arg1).document)))){ IUIComponent(_arg1).document = (document) ? document : ApplicationGlobals.application; }; if ((((_arg1 is UIComponent)) && ((UIComponent(_arg1).moduleFactory == null)))){ if (moduleFactory != null){ UIComponent(_arg1).moduleFactory = moduleFactory; } else { if ((((document is IFlexModule)) && (!((document.moduleFactory == null))))){ UIComponent(_arg1).moduleFactory = document.moduleFactory; } else { if ((((parent is UIComponent)) && (!((UIComponent(parent).moduleFactory == null))))){ UIComponent(_arg1).moduleFactory = UIComponent(parent).moduleFactory; }; }; }; }; if ((((((_arg1 is IFontContextComponent)) && ((!(_arg1) is UIComponent)))) && ((IFontContextComponent(_arg1).fontContext == null)))){ IFontContextComponent(_arg1).fontContext = moduleFactory; }; if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).parentChanged(this); }; if ((_arg1 is ILayoutManagerClient)){ ILayoutManagerClient(_arg1).nestLevel = (nestLevel + 1); } else { if ((_arg1 is IUITextField)){ IUITextField(_arg1).nestLevel = (nestLevel + 1); }; }; if ((_arg1 is InteractiveObject)){ if (doubleClickEnabled){ InteractiveObject(_arg1).doubleClickEnabled = true; }; }; if ((_arg1 is IStyleClient)){ IStyleClient(_arg1).regenerateStyleCache(true); } else { if ((((_arg1 is IUITextField)) && (IUITextField(_arg1).inheritingStyles))){ StyleProtoChain.initTextField(IUITextField(_arg1)); }; }; if ((_arg1 is ISimpleStyleClient)){ ISimpleStyleClient(_arg1).styleChanged(null); }; if ((_arg1 is IStyleClient)){ IStyleClient(_arg1).notifyStyleChangeInChildren(null, true); }; if ((_arg1 is UIComponent)){ UIComponent(_arg1).initThemeColor(); }; if ((_arg1 is UIComponent)){ UIComponent(_arg1).stylesInitialized(); }; } public function set repeaterIndices(_arg1:Array):void{ _repeaterIndices = _arg1; } protected function initializationComplete():void{ processedDescriptors = true; } public function set moduleFactory(_arg1:IFlexModuleFactory):void{ var _local4:UIComponent; var _local2:int = numChildren; var _local3:int; while (_local3 < _local2) { _local4 = (getChildAt(_local3) as UIComponent); if (!_local4){ } else { if ((((_local4.moduleFactory == null)) || ((_local4.moduleFactory == _moduleFactory)))){ _local4.moduleFactory = _arg1; }; }; _local3++; }; _moduleFactory = _arg1; } private function focusObj_removedHandler(_arg1:Event):void{ if (_arg1.target != this){ return; }; var _local2:DisplayObject = getFocusObject(); if (_local2){ _local2.visible = false; }; } mx_internal function updateCallbacks():void{ if (invalidateDisplayListFlag){ UIComponentGlobals.layoutManager.invalidateDisplayList(this); }; if (invalidateSizeFlag){ UIComponentGlobals.layoutManager.invalidateSize(this); }; if (invalidatePropertiesFlag){ UIComponentGlobals.layoutManager.invalidateProperties(this); }; if (((systemManager) && (((_systemManager.stage) || (_systemManager.useSWFBridge()))))){ if ((((methodQueue.length > 0)) && (!(listeningForRender)))){ _systemManager.addEventListener(FlexEvent.RENDER, callLaterDispatcher); _systemManager.addEventListener(FlexEvent.ENTER_FRAME, callLaterDispatcher); listeningForRender = true; }; if (_systemManager.stage){ _systemManager.stage.invalidate(); }; }; } public function set styleDeclaration(_arg1:CSSStyleDeclaration):void{ _styleDeclaration = _arg1; } override public function set doubleClickEnabled(_arg1:Boolean):void{ var _local2:IChildList; var _local4:InteractiveObject; super.doubleClickEnabled = _arg1; if ((this is IRawChildrenContainer)){ _local2 = IRawChildrenContainer(this).rawChildren; } else { _local2 = IChildList(this); }; var _local3:int; while (_local3 < _local2.numChildren) { _local4 = (_local2.getChildAt(_local3) as InteractiveObject); if (_local4){ _local4.doubleClickEnabled = _arg1; }; _local3++; }; } public function prepareToPrint(_arg1:IFlexDisplayObject):Object{ return (null); } public function get minHeight():Number{ if (!isNaN(explicitMinHeight)){ return (explicitMinHeight); }; return (measuredMinHeight); } public function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{ var _local5:ISimpleStyleClient; cachedTextFormat = null; var _local3:int = numChildren; var _local4:int; while (_local4 < _local3) { _local5 = (getChildAt(_local4) as ISimpleStyleClient); if (_local5){ _local5.styleChanged(_arg1); if ((_local5 is IStyleClient)){ IStyleClient(_local5).notifyStyleChangeInChildren(_arg1, _arg2); }; }; _local4++; }; } public function get contentMouseX():Number{ return (mouseX); } public function get contentMouseY():Number{ return (mouseY); } public function get tweeningProperties():Array{ return (_tweeningProperties); } public function set explicitMaxWidth(_arg1:Number):void{ if (_explicitMaxWidth == _arg1){ return; }; _explicitMaxWidth = _arg1; invalidateSize(); var _local2:IInvalidating = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; dispatchEvent(new Event("explicitMaxWidthChanged")); } public function set document(_arg1:Object):void{ var _local4:IUIComponent; var _local2:int = numChildren; var _local3:int; while (_local3 < _local2) { _local4 = (getChildAt(_local3) as IUIComponent); if (!_local4){ } else { if ((((_local4.document == _document)) || ((_local4.document == ApplicationGlobals.application)))){ _local4.document = _arg1; }; }; _local3++; }; _document = _arg1; } public function validateSize(_arg1:Boolean=false):void{ var _local2:int; var _local3:DisplayObject; var _local4:Boolean; var _local5:IInvalidating; if (_arg1){ _local2 = 0; while (_local2 < numChildren) { _local3 = getChildAt(_local2); if ((_local3 is ILayoutManagerClient)){ (_local3 as ILayoutManagerClient).validateSize(true); }; _local2++; }; }; if (invalidateSizeFlag){ _local4 = measureSizes(); if (((_local4) && (includeInLayout))){ invalidateDisplayList(); _local5 = (parent as IInvalidating); if (_local5){ _local5.invalidateSize(); _local5.invalidateDisplayList(); }; }; }; } public function get validationSubField():String{ return (_validationSubField); } override public function dispatchEvent(_arg1:Event):Boolean{ if (dispatchEventHook != null){ dispatchEventHook(_arg1, this); }; return (super.dispatchEvent(_arg1)); } public function set id(_arg1:String):void{ _id = _arg1; } private function overlay_resizeHandler(_arg1:Event):void{ fillOverlay(overlay, overlayColor, null); } public function set updateCompletePendingFlag(_arg1:Boolean):void{ _updateCompletePendingFlag = _arg1; } final mx_internal function get $height():Number{ return (super.height); } protected function attachOverlay():void{ addChild(overlay); } public function get explicitMinHeight():Number{ return (_explicitMinHeight); } override public function set height(_arg1:Number):void{ var _local2:IInvalidating; if (explicitHeight != _arg1){ explicitHeight = _arg1; invalidateSize(); }; if (_height != _arg1){ invalidateProperties(); invalidateDisplayList(); _local2 = (parent as IInvalidating); if (((_local2) && (includeInLayout))){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; _height = _arg1; dispatchEvent(new Event("heightChanged")); }; } public function get numAutomationChildren():int{ if (automationDelegate){ return (automationDelegate.numAutomationChildren); }; return (0); } public function get parentApplication():Object{ var _local2:UIComponent; var _local1:Object = systemManager.document; if (_local1 == this){ _local2 = (_local1.systemManager.parent as UIComponent); _local1 = (_local2) ? _local2.systemManager.document : null; }; return (_local1); } public function localToContent(_arg1:Point):Point{ return (_arg1); } public function get repeaterIndex():int{ return ((_repeaterIndices) ? _repeaterIndices[(_repeaterIndices.length - 1)] : -1); } private function removeState(_arg1:String, _arg2:String):void{ var _local4:Array; var _local5:int; var _local3:State = getState(_arg1); if (_arg1 == _arg2){ return; }; if (_local3){ _local3.dispatchExitState(); _local4 = _local3.overrides; _local5 = _local4.length; while (_local5) { _local4[(_local5 - 1)].remove(this); _local5--; }; if (_local3.basedOn != _arg2){ removeState(_local3.basedOn, _arg2); }; }; } public function setStyle(_arg1:String, _arg2):void{ if (_arg1 == "styleName"){ styleName = _arg2; return; }; if (EffectManager.getEventForEffectTrigger(_arg1) != ""){ EffectManager.setStyle(_arg1, this); }; var _local3:Boolean = StyleManager.isInheritingStyle(_arg1); var _local4 = !((inheritingStyles == UIComponent.STYLE_UNINITIALIZED)); var _local5 = !((getStyle(_arg1) == _arg2)); if (!_styleDeclaration){ _styleDeclaration = new CSSStyleDeclaration(); _styleDeclaration.setStyle(_arg1, _arg2); if (_local4){ regenerateStyleCache(_local3); }; } else { _styleDeclaration.setStyle(_arg1, _arg2); }; if (((_local4) && (_local5))){ styleChanged(_arg1); notifyStyleChangeInChildren(_arg1, _local3); }; } public function get showInAutomationHierarchy():Boolean{ return (_showInAutomationHierarchy); } public function get systemManager():ISystemManager{ var _local1:DisplayObject; var _local2:DisplayObjectContainer; var _local3:IUIComponent; if (((!(_systemManager)) || (_systemManagerDirty))){ _local1 = root; if ((_systemManager is SystemManagerProxy)){ } else { if (((_local1) && (!((_local1 is Stage))))){ _systemManager = (_local1 as ISystemManager); } else { if (_local1){ _systemManager = (Stage(_local1).getChildAt(0) as ISystemManager); } else { _local2 = parent; while (_local2) { _local3 = (_local2 as IUIComponent); if (_local3){ _systemManager = _local3.systemManager; break; } else { if ((_local2 is ISystemManager)){ _systemManager = (_local2 as ISystemManager); break; }; }; _local2 = _local2.parent; }; }; }; }; _systemManagerDirty = false; }; return (_systemManager); } private function isBaseState(_arg1:String):Boolean{ return (((!(_arg1)) || ((_arg1 == "")))); } public function set enabled(_arg1:Boolean):void{ _enabled = _arg1; cachedTextFormat = null; invalidateDisplayList(); dispatchEvent(new Event("enabledChanged")); } public function set focusEnabled(_arg1:Boolean):void{ _focusEnabled = _arg1; } public function get minWidth():Number{ if (!isNaN(explicitMinWidth)){ return (explicitMinWidth); }; return (measuredMinWidth); } private function setFocusLater(_arg1:Event=null):void{ var _local2:ISystemManager = systemManager; if (((_local2) && (_local2.stage))){ _local2.stage.removeEventListener(Event.ENTER_FRAME, setFocusLater); if (UIComponentGlobals.nextFocusObject){ _local2.stage.focus = UIComponentGlobals.nextFocusObject; }; UIComponentGlobals.nextFocusObject = null; }; } public function get currentState():String{ return ((_currentStateChanged) ? requestedCurrentState : _currentState); } public function initializeRepeaterArrays(_arg1:IRepeaterClient):void{ if (((((((_arg1) && (_arg1.instanceIndices))) && (((!(_arg1.isDocument)) || (!((_arg1 == descriptor.document))))))) && (!(_instanceIndices)))){ _instanceIndices = _arg1.instanceIndices; _repeaters = _arg1.repeaters; _repeaterIndices = _arg1.repeaterIndices; }; } public function get baselinePosition():Number{ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return (NaN); }; if (!validateBaselinePosition()){ return (NaN); }; var _local1:TextLineMetrics = measureText("Wj"); if (height < ((2 + _local1.ascent) + 2)){ return (int((height + ((_local1.ascent - height) / 2)))); }; return ((2 + _local1.ascent)); } public function get measuredWidth():Number{ return (_measuredWidth); } public function set instanceIndices(_arg1:Array):void{ _instanceIndices = _arg1; } public function set cachePolicy(_arg1:String):void{ if (_cachePolicy != _arg1){ _cachePolicy = _arg1; if (_arg1 == UIComponentCachePolicy.OFF){ cacheAsBitmap = false; } else { if (_arg1 == UIComponentCachePolicy.ON){ cacheAsBitmap = true; } else { cacheAsBitmap = (cacheAsBitmapCount > 0); }; }; }; } public function get automationValue():Array{ if (automationDelegate){ return (automationDelegate.automationValue); }; return ([]); } private function addedHandler(_arg1:Event):void{ var event = _arg1; if (event.eventPhase != EventPhase.AT_TARGET){ return; }; try { if ((((parent is IContainer)) && (IContainer(parent).creatingContentPane))){ event.stopImmediatePropagation(); return; }; } catch(error:SecurityError) { }; } public function parentChanged(_arg1:DisplayObjectContainer):void{ if (!_arg1){ _parent = null; _nestLevel = 0; } else { if ((_arg1 is IStyleClient)){ _parent = _arg1; } else { if ((_arg1 is ISystemManager)){ _parent = _arg1; } else { _parent = _arg1.parent; }; }; }; } public function get owner():DisplayObjectContainer{ return ((_owner) ? _owner : parent); } public function get processedDescriptors():Boolean{ return (_processedDescriptors); } override public function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ var _local3:DisplayObjectContainer = _arg1.parent; if (((_local3) && (!((_local3 is Loader))))){ _local3.removeChild(_arg1); }; if (((overlayReferenceCount) && (!((_arg1 == overlay))))){ _arg2 = Math.min(_arg2, Math.max(0, (super.numChildren - 1))); }; addingChild(_arg1); $addChildAt(_arg1, _arg2); childAdded(_arg1); return (_arg1); } public function get maxWidth():Number{ return ((isNaN(explicitMaxWidth)) ? DEFAULT_MAX_WIDTH : explicitMaxWidth); } override public function set alpha(_arg1:Number):void{ super.alpha = _arg1; dispatchEvent(new Event("alphaChanged")); } private function removedHandler(_arg1:Event):void{ var event = _arg1; if (event.eventPhase != EventPhase.AT_TARGET){ return; }; try { if ((((parent is IContainer)) && (IContainer(parent).creatingContentPane))){ event.stopImmediatePropagation(); return; }; } catch(error:SecurityError) { }; _systemManagerDirty = true; } public function callLater(_arg1:Function, _arg2:Array=null):void{ methodQueue.push(new MethodQueueElement(_arg1, _arg2)); var _local3:ISystemManager = systemManager; if (((_local3) && (((_local3.stage) || (_local3.useSWFBridge()))))){ if (!listeningForRender){ _local3.addEventListener(FlexEvent.RENDER, callLaterDispatcher); _local3.addEventListener(FlexEvent.ENTER_FRAME, callLaterDispatcher); listeningForRender = true; }; if (_local3.stage){ _local3.stage.invalidate(); }; }; } public function get initialized():Boolean{ return (_initialized); } private function callLaterDispatcher2(_arg1:Event):void{ var _local6:MethodQueueElement; if (UIComponentGlobals.callLaterSuspendCount > 0){ return; }; var _local2:ISystemManager = systemManager; if (((((_local2) && (((_local2.stage) || (_local2.useSWFBridge()))))) && (listeningForRender))){ _local2.removeEventListener(FlexEvent.RENDER, callLaterDispatcher); _local2.removeEventListener(FlexEvent.ENTER_FRAME, callLaterDispatcher); listeningForRender = false; }; var _local3:Array = methodQueue; methodQueue = []; var _local4:int = _local3.length; var _local5:int; while (_local5 < _local4) { _local6 = MethodQueueElement(_local3[_local5]); _local6.method.apply(null, _local6.args); _local5++; }; } public function measureHTMLText(_arg1:String):TextLineMetrics{ return (determineTextFormatFromStyles().measureHTMLText(_arg1)); } public function set descriptor(_arg1:UIComponentDescriptor):void{ _descriptor = _arg1; } private function getState(_arg1:String):State{ if (((!(states)) || (isBaseState(_arg1)))){ return (null); }; var _local2:int; while (_local2 < states.length) { if (states[_local2].name == _arg1){ return (states[_local2]); }; _local2++; }; var _local3:String = resourceManager.getString("core", "stateUndefined", [_arg1]); throw (new ArgumentError(_local3)); } public function validateProperties():void{ if (invalidatePropertiesFlag){ commitProperties(); invalidatePropertiesFlag = false; }; } mx_internal function get documentDescriptor():UIComponentDescriptor{ return (_documentDescriptor); } public function set includeInLayout(_arg1:Boolean):void{ var _local2:IInvalidating; if (_includeInLayout != _arg1){ _includeInLayout = _arg1; _local2 = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; dispatchEvent(new Event("includeInLayoutChanged")); }; } public function getClassStyleDeclarations():Array{ var myApplicationDomain:ApplicationDomain; var cache:Array; var myRoot:DisplayObject; var s:CSSStyleDeclaration; var factory:IFlexModuleFactory = ModuleManager.getAssociatedFactory(this); if (factory != null){ myApplicationDomain = ApplicationDomain(factory.info()["currentDomain"]); } else { myRoot = SystemManager.getSWFRoot(this); if (!myRoot){ return ([]); }; myApplicationDomain = myRoot.loaderInfo.applicationDomain; }; var className:String = getQualifiedClassName(this); className = className.replace("::", "."); cache = StyleManager.typeSelectorCache[className]; if (cache){ return (cache); }; var decls:Array = []; var classNames:Array = []; var caches:Array = []; var declcache:Array = []; while (((((!((className == null))) && (!((className == "mx.core.UIComponent"))))) && (!((className == "mx.core.UITextField"))))) { cache = StyleManager.typeSelectorCache[className]; if (cache){ decls = decls.concat(cache); break; }; s = StyleManager.getStyleDeclaration(className); if (s){ decls.unshift(s); classNames.push(className); caches.push(classNames); declcache.push(decls); decls = []; classNames = []; } else { classNames.push(className); }; try { className = getQualifiedSuperclassName(myApplicationDomain.getDefinition(className)); className = className.replace("::", "."); } catch(e:ReferenceError) { className = null; }; }; caches.push(classNames); declcache.push(decls); decls = []; while (caches.length) { classNames = caches.pop(); decls = decls.concat(declcache.pop()); while (classNames.length) { StyleManager.typeSelectorCache[classNames.pop()] = decls; }; }; return (decls); } public function set measuredMinWidth(_arg1:Number):void{ _measuredMinWidth = _arg1; } private function initializeState(_arg1:String):void{ var _local2:State = getState(_arg1); while (_local2) { _local2.initialize(); _local2 = getState(_local2.basedOn); }; } mx_internal function initProtoChain():void{ var _local1:CSSStyleDeclaration; var _local7:Object; var _local8:CSSStyleDeclaration; if (styleName){ if ((styleName is CSSStyleDeclaration)){ _local1 = CSSStyleDeclaration(styleName); } else { if ((((styleName is IFlexDisplayObject)) || ((styleName is IStyleClient)))){ StyleProtoChain.initProtoChainForUIComponentStyleName(this); return; }; if ((styleName is String)){ _local1 = StyleManager.getStyleDeclaration(("." + styleName)); }; }; }; var _local2:Object = StyleManager.stylesRoot; if (((_local2) && (_local2.effects))){ registerEffects(_local2.effects); }; var _local3:IStyleClient = (parent as IStyleClient); if (_local3){ _local7 = _local3.inheritingStyles; if (_local7 == UIComponent.STYLE_UNINITIALIZED){ _local7 = _local2; }; } else { if (isPopUp){ if ((((((FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0)) && (_owner))) && ((_owner is IStyleClient)))){ _local7 = IStyleClient(_owner).inheritingStyles; } else { _local7 = ApplicationGlobals.application.inheritingStyles; }; } else { _local7 = StyleManager.stylesRoot; }; }; var _local4:Array = getClassStyleDeclarations(); var _local5:int = _local4.length; var _local6:int; while (_local6 < _local5) { _local8 = _local4[_local6]; _local7 = _local8.addStyleToProtoChain(_local7, this); _local2 = _local8.addStyleToProtoChain(_local2, this); if (_local8.effects){ registerEffects(_local8.effects); }; _local6++; }; if (_local1){ _local7 = _local1.addStyleToProtoChain(_local7, this); _local2 = _local1.addStyleToProtoChain(_local2, this); if (_local1.effects){ registerEffects(_local1.effects); }; }; inheritingStyles = (_styleDeclaration) ? _styleDeclaration.addStyleToProtoChain(_local7, this) : _local7; nonInheritingStyles = (_styleDeclaration) ? _styleDeclaration.addStyleToProtoChain(_local2, this) : _local2; } public function get repeaterIndices():Array{ return ((_repeaterIndices) ? _repeaterIndices.slice() : []); } override public function removeChild(_arg1:DisplayObject):DisplayObject{ removingChild(_arg1); $removeChild(_arg1); childRemoved(_arg1); return (_arg1); } private function focusObj_moveHandler(_arg1:MoveEvent):void{ adjustFocusRect(); } public function get styleDeclaration():CSSStyleDeclaration{ return (_styleDeclaration); } override public function get doubleClickEnabled():Boolean{ return (super.doubleClickEnabled); } public function contentToLocal(_arg1:Point):Point{ return (_arg1); } private function creationCompleteHandler(_arg1:FlexEvent):void{ if (_currentStateChanged){ _currentStateChanged = false; commitCurrentState(); validateNow(); }; removeEventListener(FlexEvent.CREATION_COMPLETE, creationCompleteHandler); } public function set measuredHeight(_arg1:Number):void{ _measuredHeight = _arg1; } protected function createChildren():void{ } public function get activeEffects():Array{ return (_effectsStarted); } override public function setChildIndex(_arg1:DisplayObject, _arg2:int):void{ if (((overlayReferenceCount) && (!((_arg1 == overlay))))){ _arg2 = Math.min(_arg2, Math.max(0, (super.numChildren - 2))); }; super.setChildIndex(_arg1, _arg2); } public function regenerateStyleCache(_arg1:Boolean):void{ var _local5:DisplayObject; initProtoChain(); var _local2:IChildList = ((this is IRawChildrenContainer)) ? IRawChildrenContainer(this).rawChildren : IChildList(this); var _local3:int = _local2.numChildren; var _local4:int; while (_local4 < _local3) { _local5 = _local2.getChildAt(_local4); if ((_local5 is IStyleClient)){ if (IStyleClient(_local5).inheritingStyles != UIComponent.STYLE_UNINITIALIZED){ IStyleClient(_local5).regenerateStyleCache(_arg1); }; } else { if ((_local5 is IUITextField)){ if (IUITextField(_local5).inheritingStyles){ StyleProtoChain.initTextField(IUITextField(_local5)); }; }; }; _local4++; }; } public function get updateCompletePendingFlag():Boolean{ return (_updateCompletePendingFlag); } protected function focusOutHandler(_arg1:FocusEvent):void{ if (isOurFocus(DisplayObject(_arg1.target))){ drawFocus(false); }; } public function getFocus():InteractiveObject{ var _local1:ISystemManager = systemManager; if (!_local1){ return (null); }; if (UIComponentGlobals.nextFocusObject){ return (UIComponentGlobals.nextFocusObject); }; return (_local1.stage.focus); } public function endEffectsStarted():void{ var _local1:int = _effectsStarted.length; var _local2:int; while (_local2 < _local1) { _effectsStarted[_local2].end(); _local2++; }; } protected function get unscaledHeight():Number{ return ((height / Math.abs(scaleY))); } public function get enabled():Boolean{ return (_enabled); } public function get focusEnabled():Boolean{ return (_focusEnabled); } override public function set cacheAsBitmap(_arg1:Boolean):void{ super.cacheAsBitmap = _arg1; cacheAsBitmapCount = (_arg1) ? 1 : 0; } mx_internal function removeOverlay():void{ if ((((((overlayReferenceCount > 0)) && ((--overlayReferenceCount == 0)))) && (overlay))){ removeEventListener("resize", overlay_resizeHandler); if (super.getChildByName("overlay")){ $removeChild(overlay); }; overlay = null; }; } public function set cacheHeuristic(_arg1:Boolean):void{ if (_cachePolicy == UIComponentCachePolicy.AUTO){ if (_arg1){ cacheAsBitmapCount++; } else { if (cacheAsBitmapCount != 0){ cacheAsBitmapCount--; }; }; super.cacheAsBitmap = !((cacheAsBitmapCount == 0)); }; } public function get cachePolicy():String{ return (_cachePolicy); } public function set maxHeight(_arg1:Number):void{ if (explicitMaxHeight == _arg1){ return; }; explicitMaxHeight = _arg1; } public function getConstraintValue(_arg1:String){ return (getStyle(_arg1)); } public function set focusManager(_arg1:IFocusManager):void{ _focusManager = _arg1; } public function clearStyle(_arg1:String):void{ setStyle(_arg1, undefined); } public function get descriptor():UIComponentDescriptor{ return (_descriptor); } public function set nonInheritingStyles(_arg1:Object):void{ _nonInheritingStyles = _arg1; } public function get cursorManager():ICursorManager{ var _local2:ICursorManager; var _local1:DisplayObject = parent; while (_local1) { if ((((_local1 is IUIComponent)) && (("cursorManager" in _local1)))){ _local2 = _local1["cursorManager"]; return (_local2); }; _local1 = _local1.parent; }; return (CursorManager.getInstance()); } public function set automationDelegate(_arg1:Object):void{ _automationDelegate = (_arg1 as IAutomationObject); } public function get measuredMinWidth():Number{ return (_measuredMinWidth); } public function createReferenceOnParentDocument(_arg1:IFlexDisplayObject):void{ var _local2:Array; var _local3:Object; var _local4:int; var _local5:int; var _local6:PropertyChangeEvent; var _local7:Object; if (((id) && (!((id == ""))))){ _local2 = _instanceIndices; if (!_local2){ _arg1[id] = this; } else { _local3 = _arg1[id]; if (!(_local3 is Array)){ _local3 = (_arg1[id] = []); }; _local4 = _local2.length; _local5 = 0; while (_local5 < (_local4 - 1)) { _local7 = _local3[_local2[_local5]]; if (!(_local7 is Array)){ _local7 = (_local3[_local2[_local5]] = []); }; _local3 = _local7; _local5++; }; _local3[_local2[(_local4 - 1)]] = this; _local6 = PropertyChangeEvent.createUpdateEvent(_arg1, id, _arg1[id], _arg1[id]); _arg1.dispatchEvent(_local6); }; }; } public function get repeater():IRepeater{ return ((_repeaters) ? _repeaters[(_repeaters.length - 1)] : null); } public function set isPopUp(_arg1:Boolean):void{ _isPopUp = _arg1; } public function get measuredHeight():Number{ return (_measuredHeight); } public function initialize():void{ if (initialized){ return; }; dispatchEvent(new FlexEvent(FlexEvent.PREINITIALIZE)); createChildren(); childrenCreated(); initializeAccessibility(); initializationComplete(); } override public function set width(_arg1:Number):void{ var _local2:IInvalidating; if (explicitWidth != _arg1){ explicitWidth = _arg1; invalidateSize(); }; if (_width != _arg1){ invalidateProperties(); invalidateDisplayList(); _local2 = (parent as IInvalidating); if (((_local2) && (includeInLayout))){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; _width = _arg1; dispatchEvent(new Event("widthChanged")); }; } public function set percentHeight(_arg1:Number):void{ if (_percentHeight == _arg1){ return; }; if (!isNaN(_arg1)){ _explicitHeight = NaN; }; _percentHeight = _arg1; var _local2:IInvalidating = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; } final mx_internal function set $visible(_arg1:Boolean):void{ super.visible = _arg1; } private function findCommonBaseState(_arg1:String, _arg2:String):String{ var _local3:State = getState(_arg1); var _local4:State = getState(_arg2); if (((!(_local3)) || (!(_local4)))){ return (""); }; if (((isBaseState(_local3.basedOn)) && (isBaseState(_local4.basedOn)))){ return (""); }; var _local5:Array = getBaseStates(_local3); var _local6:Array = getBaseStates(_local4); var _local7 = ""; while (_local5[(_local5.length - 1)] == _local6[(_local6.length - 1)]) { _local7 = _local5.pop(); _local6.pop(); if (((!(_local5.length)) || (!(_local6.length)))){ break; }; }; if (((_local5.length) && ((_local5[(_local5.length - 1)] == _local4.name)))){ _local7 = _local4.name; } else { if (((_local6.length) && ((_local6[(_local6.length - 1)] == _local3.name)))){ _local7 = _local3.name; }; }; return (_local7); } mx_internal function childRemoved(_arg1:DisplayObject):void{ if ((_arg1 is IUIComponent)){ if (IUIComponent(_arg1).document != _arg1){ IUIComponent(_arg1).document = null; }; IUIComponent(_arg1).parentChanged(null); }; } final mx_internal function $removeChildAt(_arg1:int):DisplayObject{ return (super.removeChildAt(_arg1)); } public function get maxHeight():Number{ return ((isNaN(explicitMaxHeight)) ? DEFAULT_MAX_HEIGHT : explicitMaxHeight); } protected function initializeAccessibility():void{ if (UIComponent.createAccessibilityImplementation != null){ UIComponent.createAccessibilityImplementation(this); }; } public function set explicitMaxHeight(_arg1:Number):void{ if (_explicitMaxHeight == _arg1){ return; }; _explicitMaxHeight = _arg1; invalidateSize(); var _local2:IInvalidating = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; dispatchEvent(new Event("explicitMaxHeightChanged")); } public function get focusManager():IFocusManager{ if (_focusManager){ return (_focusManager); }; var _local1:DisplayObject = parent; while (_local1) { if ((_local1 is IFocusManagerContainer)){ return (IFocusManagerContainer(_local1).focusManager); }; _local1 = _local1.parent; }; return (null); } public function set styleName(_arg1:Object):void{ if (_styleName === _arg1){ return; }; _styleName = _arg1; if (inheritingStyles == UIComponent.STYLE_UNINITIALIZED){ return; }; regenerateStyleCache(true); initThemeColor(); styleChanged("styleName"); notifyStyleChangeInChildren("styleName", true); } public function get automationDelegate():Object{ return (_automationDelegate); } protected function get resourceManager():IResourceManager{ return (_resourceManager); } mx_internal function validateBaselinePosition():Boolean{ var _local1:Number; var _local2:Number; if (!parent){ return (false); }; if ((((width == 0)) && ((height == 0)))){ validateNow(); _local1 = getExplicitOrMeasuredWidth(); _local2 = getExplicitOrMeasuredHeight(); setActualSize(_local1, _local2); }; validateNow(); return (true); } mx_internal function cancelAllCallLaters():void{ var _local1:ISystemManager = systemManager; if (((_local1) && (((_local1.stage) || (_local1.useSWFBridge()))))){ if (listeningForRender){ _local1.removeEventListener(FlexEvent.RENDER, callLaterDispatcher); _local1.removeEventListener(FlexEvent.ENTER_FRAME, callLaterDispatcher); listeningForRender = false; }; }; methodQueue.splice(0); } private function updateCompleteHandler(_arg1:FlexEvent):void{ UIComponentGlobals.layoutManager.removeEventListener(FlexEvent.UPDATE_COMPLETE, updateCompleteHandler); processEffectFinished(_endingEffectInstances); _endingEffectInstances = []; } public function styleChanged(_arg1:String):void{ if ((((this is IFontContextComponent)) && (hasFontContextChanged()))){ invalidateProperties(); }; if (((((!(_arg1)) || ((_arg1 == "styleName")))) || (StyleManager.isSizeInvalidatingStyle(_arg1)))){ invalidateSize(); }; if (((((!(_arg1)) || ((_arg1 == "styleName")))) || ((_arg1 == "themeColor")))){ initThemeColor(); }; invalidateDisplayList(); if ((parent is IInvalidating)){ if (StyleManager.isParentSizeInvalidatingStyle(_arg1)){ IInvalidating(parent).invalidateSize(); }; if (StyleManager.isParentDisplayListInvalidatingStyle(_arg1)){ IInvalidating(parent).invalidateDisplayList(); }; }; } final mx_internal function get $visible():Boolean{ return (super.visible); } public function drawRoundRect(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:Object=null, _arg9:String=null, _arg10:Array=null, _arg11:Object=null):void{ var _local13:Number; var _local14:Array; var _local15:Matrix; var _local16:Object; var _local12:Graphics = graphics; if (((!(_arg3)) || (!(_arg4)))){ return; }; if (_arg6 !== null){ if ((_arg6 is Array)){ if ((_arg7 is Array)){ _local14 = (_arg7 as Array); } else { _local14 = [_arg7, _arg7]; }; if (!_arg10){ _arg10 = [0, 0xFF]; }; _local15 = null; if (_arg8){ if ((_arg8 is Matrix)){ _local15 = Matrix(_arg8); } else { _local15 = new Matrix(); if ((_arg8 is Number)){ _local15.createGradientBox(_arg3, _arg4, ((Number(_arg8) * Math.PI) / 180), _arg1, _arg2); } else { _local15.createGradientBox(_arg8.w, _arg8.h, _arg8.r, _arg8.x, _arg8.y); }; }; }; if (_arg9 == GradientType.RADIAL){ _local12.beginGradientFill(GradientType.RADIAL, (_arg6 as Array), _local14, _arg10, _local15); } else { _local12.beginGradientFill(GradientType.LINEAR, (_arg6 as Array), _local14, _arg10, _local15); }; } else { _local12.beginFill(Number(_arg6), Number(_arg7)); }; }; if (!_arg5){ _local12.drawRect(_arg1, _arg2, _arg3, _arg4); } else { if ((_arg5 is Number)){ _local13 = (Number(_arg5) * 2); _local12.drawRoundRect(_arg1, _arg2, _arg3, _arg4, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg1, _arg2, _arg3, _arg4, _arg5.tl, _arg5.tr, _arg5.bl, _arg5.br); }; }; if (_arg11){ _local16 = _arg11.r; if ((_local16 is Number)){ _local13 = (Number(_local16) * 2); _local12.drawRoundRect(_arg11.x, _arg11.y, _arg11.w, _arg11.h, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg11.x, _arg11.y, _arg11.w, _arg11.h, _local16.tl, _local16.tr, _local16.bl, _local16.br); }; }; if (_arg6 !== null){ _local12.endFill(); }; } public function move(_arg1:Number, _arg2:Number):void{ var _local3:Boolean; if (_arg1 != super.x){ super.x = _arg1; dispatchEvent(new Event("xChanged")); _local3 = true; }; if (_arg2 != super.y){ super.y = _arg2; dispatchEvent(new Event("yChanged")); _local3 = true; }; if (_local3){ dispatchMoveEvent(); }; } public function set toolTip(_arg1:String):void{ var _local2:String = _toolTip; _toolTip = _arg1; ToolTipManager.registerToolTip(this, _local2, _arg1); dispatchEvent(new Event("toolTipChanged")); } public function set repeaters(_arg1:Array):void{ _repeaters = _arg1; } public function get explicitMaxHeight():Number{ return (_explicitMaxHeight); } public function measureText(_arg1:String):TextLineMetrics{ return (determineTextFormatFromStyles().measureText(_arg1)); } public function get styleName():Object{ return (_styleName); } protected function createInModuleContext(_arg1:IFlexModuleFactory, _arg2:String):Object{ var _local3:Object; if (_arg1){ _local3 = _arg1.create(_arg2); }; return (_local3); } public function get parentDocument():Object{ var _local1:IUIComponent; var _local2:ISystemManager; if (document == this){ _local1 = (parent as IUIComponent); if (_local1){ return (_local1.document); }; _local2 = (parent as ISystemManager); if (_local2){ return (_local2.document); }; return (null); //unresolved jump }; return (document); } protected function childrenCreated():void{ invalidateProperties(); invalidateSize(); invalidateDisplayList(); } public function set flexContextMenu(_arg1:IFlexContextMenu):void{ if (_flexContextMenu){ _flexContextMenu.unsetContextMenu(this); }; _flexContextMenu = _arg1; if (_arg1 != null){ _flexContextMenu.setContextMenu(this); }; } public function set explicitWidth(_arg1:Number):void{ if (_explicitWidth == _arg1){ return; }; if (!isNaN(_arg1)){ _percentWidth = NaN; }; _explicitWidth = _arg1; invalidateSize(); var _local2:IInvalidating = (parent as IInvalidating); if (((_local2) && (includeInLayout))){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; dispatchEvent(new Event("explicitWidthChanged")); } private function setBorderColorForErrorString():void{ if (((!(_errorString)) || ((_errorString.length == 0)))){ if (!isNaN(origBorderColor)){ setStyle("borderColor", origBorderColor); saveBorderColor = true; }; } else { if (saveBorderColor){ saveBorderColor = false; origBorderColor = getStyle("borderColor"); }; setStyle("borderColor", getStyle("errorColor")); }; styleChanged("themeColor"); var _local1:IFocusManager = focusManager; var _local2:DisplayObject = (_local1) ? DisplayObject(_local1.getFocus()) : null; if (((((_local1) && (_local1.showFocusIndicator))) && ((_local2 == this)))){ drawFocus(true); }; } public function get explicitWidth():Number{ return (_explicitWidth); } public function invalidateSize():void{ if (!invalidateSizeFlag){ invalidateSizeFlag = true; if (((parent) && (UIComponentGlobals.layoutManager))){ UIComponentGlobals.layoutManager.invalidateSize(this); }; }; } public function set measuredMinHeight(_arg1:Number):void{ _measuredMinHeight = _arg1; } protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ } override public function set filters(_arg1:Array):void{ var _local2:int; var _local3:int; var _local4:IEventDispatcher; if (_filters){ _local2 = _filters.length; _local3 = 0; while (_local3 < _local2) { _local4 = (_filters[_local3] as IEventDispatcher); if (_local4){ _local4.removeEventListener("change", filterChangeHandler); }; _local3++; }; }; _filters = _arg1; if (_filters){ _local2 = _filters.length; _local3 = 0; while (_local3 < _local2) { _local4 = (_filters[_local3] as IEventDispatcher); if (_local4){ _local4.addEventListener("change", filterChangeHandler); }; _local3++; }; }; super.filters = _filters; } private static function get embeddedFontRegistry():IEmbeddedFontRegistry{ if (!_embeddedFontRegistry){ _embeddedFontRegistry = IEmbeddedFontRegistry(Singleton.getInstance("mx.core::IEmbeddedFontRegistry")); }; return (_embeddedFontRegistry); } public static function resumeBackgroundProcessing():void{ var _local1:ISystemManager; if (UIComponentGlobals.callLaterSuspendCount > 0){ UIComponentGlobals.callLaterSuspendCount--; if (UIComponentGlobals.callLaterSuspendCount == 0){ _local1 = SystemManagerGlobals.topLevelSystemManagers[0]; if (((_local1) && (_local1.stage))){ _local1.stage.invalidate(); }; }; }; } public static function suspendBackgroundProcessing():void{ UIComponentGlobals.callLaterSuspendCount++; } } }//package mx.core class MethodQueueElement { public var method:Function; public var args:Array; private function MethodQueueElement(_arg1:Function, _arg2:Array=null){ this.method = _arg1; this.args = _arg2; } }
Section 207
//UIComponentCachePolicy (mx.core.UIComponentCachePolicy) package mx.core { public final class UIComponentCachePolicy { public static const AUTO:String = "auto"; public static const ON:String = "on"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const OFF:String = "off"; } }//package mx.core
Section 208
//UIComponentDescriptor (mx.core.UIComponentDescriptor) package mx.core { public class UIComponentDescriptor extends ComponentDescriptor { mx_internal var instanceIndices:Array; public var stylesFactory:Function; public var effects:Array; mx_internal var repeaters:Array; mx_internal var repeaterIndices:Array; mx_internal static const VERSION:String = "3.2.0.3794"; public function UIComponentDescriptor(_arg1:Object){ super(_arg1); } override public function toString():String{ return (("UIComponentDescriptor_" + id)); } } }//package mx.core
Section 209
//UIComponentGlobals (mx.core.UIComponentGlobals) package mx.core { import flash.display.*; import flash.geom.*; import mx.managers.*; public class UIComponentGlobals { mx_internal static var callLaterSuspendCount:int = 0; mx_internal static var layoutManager:ILayoutManager; mx_internal static var nextFocusObject:InteractiveObject; mx_internal static var designTime:Boolean = false; mx_internal static var tempMatrix:Matrix = new Matrix(); mx_internal static var callLaterDispatcherCount:int = 0; private static var _catchCallLaterExceptions:Boolean = false; public static function set catchCallLaterExceptions(_arg1:Boolean):void{ _catchCallLaterExceptions = _arg1; } public static function get designMode():Boolean{ return (designTime); } public static function set designMode(_arg1:Boolean):void{ designTime = _arg1; } public static function get catchCallLaterExceptions():Boolean{ return (_catchCallLaterExceptions); } } }//package mx.core
Section 210
//UITextField (mx.core.UITextField) package mx.core { import flash.display.*; import flash.text.*; import mx.managers.*; import mx.automation.*; import flash.events.*; import mx.resources.*; import mx.styles.*; import flash.utils.*; import mx.utils.*; public class UITextField extends FlexTextField implements IAutomationObject, IIMESupport, IFlexModule, IInvalidating, ISimpleStyleClient, IToolTipManagerClient, IUITextField { private var _enabled:Boolean;// = true private var untruncatedText:String; private var cachedEmbeddedFont:EmbeddedFont;// = null private var cachedTextFormat:TextFormat; private var _automationDelegate:IAutomationObject; private var _automationName:String; private var _styleName:Object; private var _document:Object; mx_internal var _toolTip:String; private var _nestLevel:int;// = 0 private var _explicitHeight:Number; private var _moduleFactory:IFlexModuleFactory; private var _initialized:Boolean;// = false private var _nonInheritingStyles:Object; private var _inheritingStyles:Object; private var _includeInLayout:Boolean;// = true private var invalidateDisplayListFlag:Boolean;// = true mx_internal var explicitColor:uint;// = 4294967295 private var _processedDescriptors:Boolean;// = true private var _updateCompletePendingFlag:Boolean;// = false private var explicitHTMLText:String;// = null mx_internal var _parent:DisplayObjectContainer; private var _imeMode:String;// = null private var resourceManager:IResourceManager; mx_internal var styleChangedFlag:Boolean;// = true private var _ignorePadding:Boolean;// = true private var _owner:DisplayObjectContainer; private var _explicitWidth:Number; mx_internal static const TEXT_WIDTH_PADDING:int = 5; mx_internal static const TEXT_HEIGHT_PADDING:int = 4; mx_internal static const VERSION:String = "3.2.0.3794"; private static var truncationIndicatorResource:String; private static var _embeddedFontRegistry:IEmbeddedFontRegistry; mx_internal static var debuggingBorders:Boolean = false; public function UITextField(){ resourceManager = ResourceManager.getInstance(); _inheritingStyles = UIComponent.STYLE_UNINITIALIZED; _nonInheritingStyles = UIComponent.STYLE_UNINITIALIZED; super(); super.text = ""; focusRect = false; selectable = false; tabEnabled = false; if (debuggingBorders){ border = true; }; if (!truncationIndicatorResource){ truncationIndicatorResource = resourceManager.getString("core", "truncationIndicator"); }; addEventListener(Event.CHANGE, changeHandler); addEventListener("textFieldStyleChange", textFieldStyleChangeHandler); resourceManager.addEventListener(Event.CHANGE, resourceManager_changeHandler, false, 0, true); } public function set imeMode(_arg1:String):void{ _imeMode = _arg1; } public function get nestLevel():int{ return (_nestLevel); } private function textFieldStyleChangeHandler(_arg1:Event):void{ if (explicitHTMLText != null){ super.htmlText = explicitHTMLText; }; } public function truncateToFit(_arg1:String=null):Boolean{ var _local4:String; if (!_arg1){ _arg1 = truncationIndicatorResource; }; validateNow(); var _local2:String = super.text; untruncatedText = _local2; var _local3:Number = width; if (((!((_local2 == ""))) && (((textWidth + TEXT_WIDTH_PADDING) > (_local3 + 1E-14))))){ var _local5 = _local2; super.text = _local5; _local4 = _local5; _local2.slice(0, Math.floor(((_local3 / (textWidth + TEXT_WIDTH_PADDING)) * _local2.length))); while ((((_local4.length > 1)) && (((textWidth + TEXT_WIDTH_PADDING) > _local3)))) { _local4 = _local4.slice(0, -1); super.text = (_local4 + _arg1); }; return (true); }; return (false); } public function set nestLevel(_arg1:int):void{ if ((((_arg1 > 1)) && (!((_nestLevel == _arg1))))){ _nestLevel = _arg1; StyleProtoChain.initTextField(this); styleChangedFlag = true; validateNow(); }; } public function get minHeight():Number{ return (0); } public function getExplicitOrMeasuredHeight():Number{ return ((isNaN(explicitHeight)) ? measuredHeight : explicitHeight); } public function getStyle(_arg1:String){ if (StyleManager.inheritingStyles[_arg1]){ return ((inheritingStyles) ? inheritingStyles[_arg1] : IStyleClient(parent).getStyle(_arg1)); //unresolved jump }; return ((nonInheritingStyles) ? nonInheritingStyles[_arg1] : IStyleClient(parent).getStyle(_arg1)); } public function get className():String{ var _local1:String = getQualifiedClassName(this); var _local2:int = _local1.indexOf("::"); if (_local2 != -1){ _local1 = _local1.substr((_local2 + 2)); }; return (_local1); } public function setColor(_arg1:uint):void{ explicitColor = _arg1; styleChangedFlag = true; invalidateDisplayListFlag = true; validateNow(); } override public function replaceText(_arg1:int, _arg2:int, _arg3:String):void{ super.replaceText(_arg1, _arg2, _arg3); dispatchEvent(new Event("textReplace")); } private function creatingSystemManager():ISystemManager{ return ((((!((moduleFactory == null))) && ((moduleFactory is ISystemManager)))) ? ISystemManager(moduleFactory) : systemManager); } public function set document(_arg1:Object):void{ _document = _arg1; } public function get automationName():String{ if (_automationName){ return (_automationName); }; if (automationDelegate){ return (automationDelegate.automationName); }; return (""); } public function get explicitMinHeight():Number{ return (NaN); } public function get focusPane():Sprite{ return (null); } public function getTextStyles():TextFormat{ var _local1:TextFormat = new TextFormat(); _local1.align = getStyle("textAlign"); _local1.bold = (getStyle("fontWeight") == "bold"); if (enabled){ if (explicitColor == StyleManager.NOT_A_COLOR){ _local1.color = getStyle("color"); } else { _local1.color = explicitColor; }; } else { _local1.color = getStyle("disabledColor"); }; _local1.font = StringUtil.trimArrayElements(getStyle("fontFamily"), ","); _local1.indent = getStyle("textIndent"); _local1.italic = (getStyle("fontStyle") == "italic"); _local1.kerning = getStyle("kerning"); _local1.leading = getStyle("leading"); _local1.leftMargin = (ignorePadding) ? 0 : getStyle("paddingLeft"); _local1.letterSpacing = getStyle("letterSpacing"); _local1.rightMargin = (ignorePadding) ? 0 : getStyle("paddingRight"); _local1.size = getStyle("fontSize"); _local1.underline = (getStyle("textDecoration") == "underline"); cachedTextFormat = _local1; return (_local1); } override public function set text(_arg1:String):void{ if (!_arg1){ _arg1 = ""; }; if (((!(isHTML)) && ((super.text == _arg1)))){ return; }; super.text = _arg1; explicitHTMLText = null; if (invalidateDisplayListFlag){ validateNow(); }; } public function getExplicitOrMeasuredWidth():Number{ return ((isNaN(explicitWidth)) ? measuredWidth : explicitWidth); } public function get showInAutomationHierarchy():Boolean{ return (true); } public function set automationName(_arg1:String):void{ _automationName = _arg1; } public function get systemManager():ISystemManager{ var _local2:IUIComponent; var _local1:DisplayObject = parent; while (_local1) { _local2 = (_local1 as IUIComponent); if (_local2){ return (_local2.systemManager); }; _local1 = _local1.parent; }; return (null); } public function setStyle(_arg1:String, _arg2):void{ } public function get percentWidth():Number{ return (NaN); } public function get explicitHeight():Number{ return (_explicitHeight); } public function get baselinePosition():Number{ var _local1:TextLineMetrics; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local1 = getLineMetrics(0); return (((height - 4) - _local1.descent)); }; if (!parent){ return (NaN); }; var _local2 = (text == ""); if (_local2){ super.text = "Wj"; }; _local1 = getLineMetrics(0); if (_local2){ super.text = ""; }; return ((2 + _local1.ascent)); } public function set enabled(_arg1:Boolean):void{ mouseEnabled = _arg1; _enabled = _arg1; styleChanged("color"); } public function get minWidth():Number{ return (0); } public function get automationValue():Array{ if (automationDelegate){ return (automationDelegate.automationValue); }; return ([""]); } public function get tweeningProperties():Array{ return (null); } public function get measuredWidth():Number{ validateNow(); if (!stage){ return ((textWidth + TEXT_WIDTH_PADDING)); }; return (((textWidth * transform.concatenatedMatrix.d) + TEXT_WIDTH_PADDING)); } public function set tweeningProperties(_arg1:Array):void{ } public function createAutomationIDPart(_arg1:IAutomationObject):Object{ return (null); } override public function get parent():DisplayObjectContainer{ return ((_parent) ? _parent : super.parent); } public function set updateCompletePendingFlag(_arg1:Boolean):void{ _updateCompletePendingFlag = _arg1; } public function setActualSize(_arg1:Number, _arg2:Number):void{ if (width != _arg1){ width = _arg1; }; if (height != _arg2){ height = _arg2; }; } public function get numAutomationChildren():int{ return (0); } public function set focusPane(_arg1:Sprite):void{ } public function getAutomationChildAt(_arg1:int):IAutomationObject{ return (null); } public function get inheritingStyles():Object{ return (_inheritingStyles); } public function get owner():DisplayObjectContainer{ return ((_owner) ? _owner : parent); } public function parentChanged(_arg1:DisplayObjectContainer):void{ if (!_arg1){ _parent = null; _nestLevel = 0; } else { if ((_arg1 is IStyleClient)){ _parent = _arg1; } else { if ((_arg1 is SystemManager)){ _parent = _arg1; } else { _parent = _arg1.parent; }; }; }; } public function get processedDescriptors():Boolean{ return (_processedDescriptors); } public function get maxWidth():Number{ return (UIComponent.DEFAULT_MAX_WIDTH); } private function getEmbeddedFont(_arg1:String, _arg2:Boolean, _arg3:Boolean):EmbeddedFont{ if (cachedEmbeddedFont){ if ((((cachedEmbeddedFont.fontName == _arg1)) && ((cachedEmbeddedFont.fontStyle == EmbeddedFontRegistry.getFontStyle(_arg2, _arg3))))){ return (cachedEmbeddedFont); }; }; cachedEmbeddedFont = new EmbeddedFont(_arg1, _arg2, _arg3); return (cachedEmbeddedFont); } public function get initialized():Boolean{ return (_initialized); } public function invalidateDisplayList():void{ invalidateDisplayListFlag = true; } public function invalidateProperties():void{ } override public function insertXMLText(_arg1:int, _arg2:int, _arg3:String, _arg4:Boolean=false):void{ super.insertXMLText(_arg1, _arg2, _arg3, _arg4); dispatchEvent(new Event("textInsert")); } public function set includeInLayout(_arg1:Boolean):void{ var _local2:IInvalidating; if (_includeInLayout != _arg1){ _includeInLayout = _arg1; _local2 = (parent as IInvalidating); if (_local2){ _local2.invalidateSize(); _local2.invalidateDisplayList(); }; }; } override public function set htmlText(_arg1:String):void{ if (!_arg1){ _arg1 = ""; }; if (((isHTML) && ((super.htmlText == _arg1)))){ return; }; if (((cachedTextFormat) && ((styleSheet == null)))){ defaultTextFormat = cachedTextFormat; }; super.htmlText = _arg1; explicitHTMLText = _arg1; if (invalidateDisplayListFlag){ validateNow(); }; } public function set showInAutomationHierarchy(_arg1:Boolean):void{ } private function resourceManager_changeHandler(_arg1:Event):void{ truncationIndicatorResource = resourceManager.getString("core", "truncationIndicator"); if (untruncatedText != null){ super.text = untruncatedText; truncateToFit(); }; } public function set measuredMinWidth(_arg1:Number):void{ } public function set explicitHeight(_arg1:Number):void{ _explicitHeight = _arg1; } public function get explicitMinWidth():Number{ return (NaN); } public function set percentWidth(_arg1:Number):void{ } public function get imeMode():String{ return (_imeMode); } public function get moduleFactory():IFlexModuleFactory{ return (_moduleFactory); } public function set systemManager(_arg1:ISystemManager):void{ } public function get explicitMaxWidth():Number{ return (NaN); } public function get document():Object{ return (_document); } public function get updateCompletePendingFlag():Boolean{ return (_updateCompletePendingFlag); } public function replayAutomatableEvent(_arg1:Event):Boolean{ if (automationDelegate){ return (automationDelegate.replayAutomatableEvent(_arg1)); }; return (false); } public function get enabled():Boolean{ return (_enabled); } public function set owner(_arg1:DisplayObjectContainer):void{ _owner = _arg1; } public function get automationTabularData():Object{ return (null); } public function set nonInheritingStyles(_arg1:Object):void{ _nonInheritingStyles = _arg1; } public function get includeInLayout():Boolean{ return (_includeInLayout); } public function get measuredMinWidth():Number{ return (0); } public function set isPopUp(_arg1:Boolean):void{ } public function set automationDelegate(_arg1:Object):void{ _automationDelegate = (_arg1 as IAutomationObject); } public function get measuredHeight():Number{ validateNow(); if (!stage){ return ((textHeight + TEXT_HEIGHT_PADDING)); }; return (((textHeight * transform.concatenatedMatrix.a) + TEXT_HEIGHT_PADDING)); } public function set processedDescriptors(_arg1:Boolean):void{ _processedDescriptors = _arg1; } public function setFocus():void{ systemManager.stage.focus = this; } public function initialize():void{ } public function set percentHeight(_arg1:Number):void{ } public function resolveAutomationIDPart(_arg1:Object):Array{ return ([]); } public function set inheritingStyles(_arg1:Object):void{ _inheritingStyles = _arg1; } public function getUITextFormat():UITextFormat{ validateNow(); var _local1:UITextFormat = new UITextFormat(creatingSystemManager()); _local1.moduleFactory = moduleFactory; _local1.copyFrom(getTextFormat()); _local1.antiAliasType = antiAliasType; _local1.gridFitType = gridFitType; _local1.sharpness = sharpness; _local1.thickness = thickness; return (_local1); } private function changeHandler(_arg1:Event):void{ explicitHTMLText = null; } public function set initialized(_arg1:Boolean):void{ _initialized = _arg1; } public function get nonZeroTextHeight():Number{ var _local1:Number; if (super.text == ""){ super.text = "Wj"; _local1 = textHeight; super.text = ""; return (_local1); }; return (textHeight); } public function owns(_arg1:DisplayObject):Boolean{ return ((_arg1 == this)); } override public function setTextFormat(_arg1:TextFormat, _arg2:int=-1, _arg3:int=-1):void{ if (styleSheet){ return; }; super.setTextFormat(_arg1, _arg2, _arg3); dispatchEvent(new Event("textFormatChange")); } public function get nonInheritingStyles():Object{ return (_nonInheritingStyles); } public function setVisible(_arg1:Boolean, _arg2:Boolean=false):void{ this.visible = _arg1; } public function get maxHeight():Number{ return (UIComponent.DEFAULT_MAX_HEIGHT); } public function get automationDelegate():Object{ return (_automationDelegate); } public function get isPopUp():Boolean{ return (false); } public function set ignorePadding(_arg1:Boolean):void{ _ignorePadding = _arg1; styleChanged(null); } public function set styleName(_arg1:Object):void{ if (_styleName === _arg1){ return; }; _styleName = _arg1; if (parent){ StyleProtoChain.initTextField(this); styleChanged("styleName"); }; } public function styleChanged(_arg1:String):void{ styleChangedFlag = true; if (!invalidateDisplayListFlag){ invalidateDisplayListFlag = true; if (("callLater" in parent)){ Object(parent).callLater(validateNow); }; }; } public function get percentHeight():Number{ return (NaN); } private function get isHTML():Boolean{ return (!((explicitHTMLText == null))); } public function get explicitMaxHeight():Number{ return (NaN); } public function get styleName():Object{ return (_styleName); } public function set explicitWidth(_arg1:Number):void{ _explicitWidth = _arg1; } public function validateNow():void{ var _local1:TextFormat; var _local2:EmbeddedFont; var _local3:IFlexModuleFactory; var _local4:ISystemManager; if (!parent){ return; }; if (((!(isNaN(explicitWidth))) && (!((super.width == explicitWidth))))){ super.width = ((explicitWidth)>4) ? explicitWidth : 4; }; if (((!(isNaN(explicitHeight))) && (!((super.height == explicitHeight))))){ super.height = explicitHeight; }; if (styleChangedFlag){ _local1 = getTextStyles(); if (_local1.font){ _local2 = getEmbeddedFont(_local1.font, _local1.bold, _local1.italic); _local3 = embeddedFontRegistry.getAssociatedModuleFactory(_local2, moduleFactory); if (_local3 != null){ embedFonts = true; } else { _local4 = creatingSystemManager(); embedFonts = ((!((_local4 == null))) && (_local4.isFontFaceEmbedded(_local1))); }; } else { embedFonts = getStyle("embedFonts"); }; if (getStyle("fontAntiAliasType") != undefined){ antiAliasType = getStyle("fontAntiAliasType"); gridFitType = getStyle("fontGridFitType"); sharpness = getStyle("fontSharpness"); thickness = getStyle("fontThickness"); }; if (!styleSheet){ super.setTextFormat(_local1); defaultTextFormat = _local1; }; dispatchEvent(new Event("textFieldStyleChange")); }; styleChangedFlag = false; invalidateDisplayListFlag = false; } public function set toolTip(_arg1:String):void{ var _local2:String = _toolTip; _toolTip = _arg1; ToolTipManager.registerToolTip(this, _local2, _arg1); } public function move(_arg1:Number, _arg2:Number):void{ if (this.x != _arg1){ this.x = _arg1; }; if (this.y != _arg2){ this.y = _arg2; }; } public function get toolTip():String{ return (_toolTip); } public function get ignorePadding():Boolean{ return (_ignorePadding); } public function get explicitWidth():Number{ return (_explicitWidth); } public function invalidateSize():void{ invalidateDisplayListFlag = true; } public function set measuredMinHeight(_arg1:Number):void{ } public function get measuredMinHeight():Number{ return (0); } public function set moduleFactory(_arg1:IFlexModuleFactory):void{ _moduleFactory = _arg1; } private static function get embeddedFontRegistry():IEmbeddedFontRegistry{ if (!_embeddedFontRegistry){ _embeddedFontRegistry = IEmbeddedFontRegistry(Singleton.getInstance("mx.core::IEmbeddedFontRegistry")); }; return (_embeddedFontRegistry); } } }//package mx.core
Section 211
//UITextFormat (mx.core.UITextFormat) package mx.core { import flash.text.*; import mx.managers.*; public class UITextFormat extends TextFormat { private var systemManager:ISystemManager; public var sharpness:Number; public var gridFitType:String; public var antiAliasType:String; public var thickness:Number; private var cachedEmbeddedFont:EmbeddedFont;// = null private var _moduleFactory:IFlexModuleFactory; mx_internal static const VERSION:String = "3.2.0.3794"; private static var _embeddedFontRegistry:IEmbeddedFontRegistry; private static var _textFieldFactory:ITextFieldFactory; public function UITextFormat(_arg1:ISystemManager, _arg2:String=null, _arg3:Object=null, _arg4:Object=null, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:String=null, _arg9:String=null, _arg10:String=null, _arg11:Object=null, _arg12:Object=null, _arg13:Object=null, _arg14:Object=null){ this.systemManager = _arg1; super(_arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8, _arg9, _arg10, _arg11, _arg12, _arg13, _arg14); } public function set moduleFactory(_arg1:IFlexModuleFactory):void{ _moduleFactory = _arg1; } mx_internal function copyFrom(_arg1:TextFormat):void{ font = _arg1.font; size = _arg1.size; color = _arg1.color; bold = _arg1.bold; italic = _arg1.italic; underline = _arg1.underline; url = _arg1.url; target = _arg1.target; align = _arg1.align; leftMargin = _arg1.leftMargin; rightMargin = _arg1.rightMargin; indent = _arg1.indent; leading = _arg1.leading; letterSpacing = _arg1.letterSpacing; blockIndent = _arg1.blockIndent; bullet = _arg1.bullet; display = _arg1.display; indent = _arg1.indent; kerning = _arg1.kerning; tabStops = _arg1.tabStops; } private function getEmbeddedFont(_arg1:String, _arg2:Boolean, _arg3:Boolean):EmbeddedFont{ if (cachedEmbeddedFont){ if ((((cachedEmbeddedFont.fontName == _arg1)) && ((cachedEmbeddedFont.fontStyle == EmbeddedFontRegistry.getFontStyle(_arg2, _arg3))))){ return (cachedEmbeddedFont); }; }; cachedEmbeddedFont = new EmbeddedFont(_arg1, _arg2, _arg3); return (cachedEmbeddedFont); } public function measureText(_arg1:String, _arg2:Boolean=true):TextLineMetrics{ return (measure(_arg1, false, _arg2)); } private function measure(_arg1:String, _arg2:Boolean, _arg3:Boolean):TextLineMetrics{ if (!_arg1){ _arg1 = ""; }; var _local4:Boolean; var _local5:IFlexModuleFactory = embeddedFontRegistry.getAssociatedModuleFactory(getEmbeddedFont(font, bold, italic), moduleFactory); _local4 = !((_local5 == null)); if (_local5 == null){ _local5 = systemManager; }; var _local6:TextField; _local6 = TextField(textFieldFactory.createTextField(_local5)); if (_arg2){ _local6.htmlText = ""; } else { _local6.text = ""; }; _local6.defaultTextFormat = this; if (font){ _local6.embedFonts = ((_local4) || (((!((systemManager == null))) && (systemManager.isFontFaceEmbedded(this))))); } else { _local6.embedFonts = false; }; _local6.antiAliasType = antiAliasType; _local6.gridFitType = gridFitType; _local6.sharpness = sharpness; _local6.thickness = thickness; if (_arg2){ _local6.htmlText = _arg1; } else { _local6.text = _arg1; }; var _local7:TextLineMetrics = _local6.getLineMetrics(0); if (indent != null){ _local7.width = (_local7.width + indent); }; if (_arg3){ _local7.width = Math.ceil(_local7.width); _local7.height = Math.ceil(_local7.height); }; return (_local7); } public function measureHTMLText(_arg1:String, _arg2:Boolean=true):TextLineMetrics{ return (measure(_arg1, true, _arg2)); } public function get moduleFactory():IFlexModuleFactory{ return (_moduleFactory); } private static function get embeddedFontRegistry():IEmbeddedFontRegistry{ if (!_embeddedFontRegistry){ _embeddedFontRegistry = IEmbeddedFontRegistry(Singleton.getInstance("mx.core::IEmbeddedFontRegistry")); }; return (_embeddedFontRegistry); } private static function get textFieldFactory():ITextFieldFactory{ if (!_textFieldFactory){ _textFieldFactory = ITextFieldFactory(Singleton.getInstance("mx.core::ITextFieldFactory")); }; return (_textFieldFactory); } } }//package mx.core
Section 212
//AddRemoveEffectTargetFilter (mx.effects.effectClasses.AddRemoveEffectTargetFilter) package mx.effects.effectClasses { import mx.effects.*; public class AddRemoveEffectTargetFilter extends EffectTargetFilter { public var add:Boolean;// = true mx_internal static const VERSION:String = "3.2.0.3794"; public function AddRemoveEffectTargetFilter(){ filterProperties = ["parent"]; } override protected function defaultFilterFunction(_arg1:Array, _arg2:Object):Boolean{ var _local5:PropertyChanges; var _local3:int = _arg1.length; var _local4:int; while (_local4 < _local3) { _local5 = _arg1[_local4]; if (_local5.target == _arg2){ if (add){ return ((((_local5.start["parent"] == null)) && (!((_local5.end["parent"] == null))))); }; return (((!((_local5.start["parent"] == null))) && ((_local5.end["parent"] == null)))); }; _local4++; }; return (false); } } }//package mx.effects.effectClasses
Section 213
//BlurInstance (mx.effects.effectClasses.BlurInstance) package mx.effects.effectClasses { import flash.events.*; import flash.filters.*; public class BlurInstance extends TweenEffectInstance { public var blurXTo:Number; public var blurYTo:Number; public var blurXFrom:Number; public var blurYFrom:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public function BlurInstance(_arg1:Object){ super(_arg1); } override public function initEffect(_arg1:Event):void{ super.initEffect(_arg1); } override public function onTweenEnd(_arg1:Object):void{ setBlurFilter(_arg1[0], _arg1[1]); super.onTweenEnd(_arg1); } private function setBlurFilter(_arg1:Number, _arg2:Number):void{ var _local3:Array = target.filters; var _local4:int = _local3.length; var _local5:int; while (_local5 < _local4) { if ((_local3[_local5] is BlurFilter)){ _local3.splice(_local5, 1); }; _local5++; }; if (((_arg1) || (_arg2))){ _local3.push(new BlurFilter(_arg1, _arg2)); }; target.filters = _local3; } override public function play():void{ super.play(); if (isNaN(blurXFrom)){ blurXFrom = 4; }; if (isNaN(blurXTo)){ blurXTo = 0; }; if (isNaN(blurYFrom)){ blurYFrom = 4; }; if (isNaN(blurYTo)){ blurYTo = 0; }; tween = createTween(this, [blurXFrom, blurYFrom], [blurXTo, blurYTo], duration); } override public function onTweenUpdate(_arg1:Object):void{ setBlurFilter(_arg1[0], _arg1[1]); } } }//package mx.effects.effectClasses
Section 214
//FadeInstance (mx.effects.effectClasses.FadeInstance) package mx.effects.effectClasses { import mx.core.*; import flash.events.*; import mx.events.*; public class FadeInstance extends TweenEffectInstance { public var alphaFrom:Number; private var restoreAlpha:Boolean; public var alphaTo:Number; private var origAlpha:Number;// = NAN mx_internal static const VERSION:String = "3.2.0.3794"; public function FadeInstance(_arg1:Object){ super(_arg1); } override public function initEffect(_arg1:Event):void{ super.initEffect(_arg1); switch (_arg1.type){ case "childrenCreationComplete": case FlexEvent.CREATION_COMPLETE: case FlexEvent.SHOW: case Event.ADDED: case "resizeEnd": if (isNaN(alphaFrom)){ alphaFrom = 0; }; if (isNaN(alphaTo)){ alphaTo = target.alpha; }; break; case FlexEvent.HIDE: case Event.REMOVED: case "resizeStart": restoreAlpha = true; if (isNaN(alphaFrom)){ alphaFrom = target.alpha; }; if (isNaN(alphaTo)){ alphaTo = 0; }; break; }; } override public function onTweenEnd(_arg1:Object):void{ super.onTweenEnd(_arg1); if (((mx_internal::hideOnEffectEnd) || (restoreAlpha))){ target.alpha = origAlpha; }; } override public function play():void{ super.play(); origAlpha = target.alpha; var _local1:PropertyChanges = propertyChanges; if (((isNaN(alphaFrom)) && (isNaN(alphaTo)))){ if (((_local1) && (!((_local1.end["alpha"] === undefined))))){ alphaFrom = origAlpha; alphaTo = _local1.end["alpha"]; } else { if (((_local1) && (!((_local1.end["visible"] === undefined))))){ alphaFrom = (_local1.start["visible"]) ? origAlpha : 0; alphaTo = (_local1.end["visible"]) ? origAlpha : 0; } else { alphaFrom = 0; alphaTo = origAlpha; }; }; } else { if (isNaN(alphaFrom)){ alphaFrom = ((alphaTo)==0) ? origAlpha : 0; } else { if (isNaN(alphaTo)){ if (((_local1) && (!((_local1.end["alpha"] === undefined))))){ alphaTo = _local1.end["alpha"]; } else { alphaTo = ((alphaFrom)==0) ? origAlpha : 0; }; }; }; }; tween = createTween(this, alphaFrom, alphaTo, duration); target.alpha = tween.mx_internal::getCurrentValue(0); } override public function onTweenUpdate(_arg1:Object):void{ target.alpha = _arg1; } } }//package mx.effects.effectClasses
Section 215
//HideShowEffectTargetFilter (mx.effects.effectClasses.HideShowEffectTargetFilter) package mx.effects.effectClasses { import mx.effects.*; public class HideShowEffectTargetFilter extends EffectTargetFilter { public var show:Boolean;// = true mx_internal static const VERSION:String = "3.2.0.3794"; public function HideShowEffectTargetFilter(){ filterProperties = ["visible"]; } override protected function defaultFilterFunction(_arg1:Array, _arg2:Object):Boolean{ var _local5:PropertyChanges; var _local3:int = _arg1.length; var _local4:int; while (_local4 < _local3) { _local5 = _arg1[_local4]; if (_local5.target == _arg2){ return ((_local5.end["visible"] == show)); }; _local4++; }; return (false); } } }//package mx.effects.effectClasses
Section 216
//MoveInstance (mx.effects.effectClasses.MoveInstance) package mx.effects.effectClasses { import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.effects.*; public class MoveInstance extends TweenEffectInstance { public var xFrom:Number; public var yFrom:Number; private var left; private var forceClipping:Boolean;// = false public var xTo:Number; private var top; private var horizontalCenter; public var yTo:Number; private var oldWidth:Number; private var right; private var bottom; private var oldHeight:Number; public var xBy:Number; public var yBy:Number; private var checkClipping:Boolean;// = true private var verticalCenter; mx_internal static const VERSION:String = "3.2.0.3794"; public function MoveInstance(_arg1:Object){ super(_arg1); } override public function initEffect(_arg1:Event):void{ super.initEffect(_arg1); if ((((_arg1 is MoveEvent)) && ((_arg1.type == MoveEvent.MOVE)))){ if (((((((((((isNaN(xFrom)) && (isNaN(xTo)))) && (isNaN(xBy)))) && (isNaN(yFrom)))) && (isNaN(yTo)))) && (isNaN(yBy)))){ xFrom = MoveEvent(_arg1).oldX; xTo = target.x; yFrom = MoveEvent(_arg1).oldY; yTo = target.y; }; }; } override public function play():void{ var _local2:EdgeMetrics; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; super.play(); var _local9 = EffectManager; _local9.mx_internal::startBitmapEffect(IUIComponent(target)); if (isNaN(xFrom)){ xFrom = (((!(isNaN(xTo))) && (!(isNaN(xBy))))) ? (xTo - xBy) : target.x; }; if (isNaN(xTo)){ if (((((isNaN(xBy)) && (propertyChanges))) && (!((propertyChanges.end["x"] === undefined))))){ xTo = propertyChanges.end["x"]; } else { xTo = (isNaN(xBy)) ? target.x : (xFrom + xBy); }; }; if (isNaN(yFrom)){ yFrom = (((!(isNaN(yTo))) && (!(isNaN(yBy))))) ? (yTo - yBy) : target.y; }; if (isNaN(yTo)){ if (((((isNaN(yBy)) && (propertyChanges))) && (!((propertyChanges.end["y"] === undefined))))){ yTo = propertyChanges.end["y"]; } else { yTo = (isNaN(yBy)) ? target.y : (yFrom + yBy); }; }; tween = createTween(this, [xFrom, yFrom], [xTo, yTo], duration); var _local1:Container = (target.parent as Container); if (_local1){ _local2 = _local1.viewMetrics; _local3 = _local2.left; _local4 = (_local1.width - _local2.right); _local5 = _local2.top; _local6 = (_local1.height - _local2.bottom); if ((((((((((((((((xFrom < _local3)) || ((xTo < _local3)))) || (((xFrom + target.width) > _local4)))) || (((xTo + target.width) > _local4)))) || ((yFrom < _local5)))) || ((yTo < _local5)))) || (((yFrom + target.height) > _local6)))) || (((yTo + target.height) > _local6)))){ forceClipping = true; _local1.mx_internal::forceClipping = true; }; }; mx_internal::applyTweenStartValues(); if ((target is IStyleClient)){ left = target.getStyle("left"); if (left != undefined){ target.setStyle("left", undefined); }; right = target.getStyle("right"); if (right != undefined){ target.setStyle("right", undefined); }; top = target.getStyle("top"); if (top != undefined){ target.setStyle("top", undefined); }; bottom = target.getStyle("bottom"); if (bottom != undefined){ target.setStyle("bottom", undefined); }; horizontalCenter = target.getStyle("horizontalCenter"); if (horizontalCenter != undefined){ target.setStyle("horizontalCenter", undefined); }; verticalCenter = target.getStyle("verticalCenter"); if (verticalCenter != undefined){ target.setStyle("verticalCenter", undefined); }; if (((!((left == undefined))) && (!((right == undefined))))){ _local7 = target.width; oldWidth = target.explicitWidth; target.width = _local7; }; if (((!((top == undefined))) && (!((bottom == undefined))))){ _local8 = target.height; oldHeight = target.explicitHeight; target.height = _local8; }; }; } override public function onTweenUpdate(_arg1:Object):void{ var _local2:Container; var _local3:EdgeMetrics; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; EffectManager.suspendEventHandling(); if (((!(forceClipping)) && (checkClipping))){ _local2 = (target.parent as Container); if (_local2){ _local3 = _local2.viewMetrics; _local4 = _local3.left; _local5 = (_local2.width - _local3.right); _local6 = _local3.top; _local7 = (_local2.height - _local3.bottom); if ((((((((_arg1[0] < _local4)) || (((_arg1[0] + target.width) > _local5)))) || ((_arg1[1] < _local6)))) || (((_arg1[1] + target.height) > _local7)))){ forceClipping = true; _local2.mx_internal::forceClipping = true; }; }; }; target.move(_arg1[0], _arg1[1]); EffectManager.resumeEventHandling(); } override public function onTweenEnd(_arg1:Object):void{ var _local2:Container; var _local3 = EffectManager; _local3.mx_internal::endBitmapEffect(IUIComponent(target)); if (left != undefined){ target.setStyle("left", left); }; if (right != undefined){ target.setStyle("right", right); }; if (top != undefined){ target.setStyle("top", top); }; if (bottom != undefined){ target.setStyle("bottom", bottom); }; if (horizontalCenter != undefined){ target.setStyle("horizontalCenter", horizontalCenter); }; if (verticalCenter != undefined){ target.setStyle("verticalCenter", verticalCenter); }; if (((!((left == undefined))) && (!((right == undefined))))){ target.explicitWidth = oldWidth; }; if (((!((top == undefined))) && (!((bottom == undefined))))){ target.explicitHeight = oldHeight; }; if (forceClipping){ _local2 = (target.parent as Container); if (_local2){ forceClipping = false; _local2.mx_internal::forceClipping = false; }; }; checkClipping = false; super.onTweenEnd(_arg1); } } }//package mx.effects.effectClasses
Section 217
//PropertyChanges (mx.effects.effectClasses.PropertyChanges) package mx.effects.effectClasses { public class PropertyChanges { public var target:Object; public var start:Object; public var end:Object; mx_internal static const VERSION:String = "3.2.0.3794"; public function PropertyChanges(_arg1:Object){ end = {}; start = {}; super(); this.target = _arg1; } } }//package mx.effects.effectClasses
Section 218
//TweenEffectInstance (mx.effects.effectClasses.TweenEffectInstance) package mx.effects.effectClasses { import mx.core.*; import mx.events.*; import mx.effects.*; public class TweenEffectInstance extends EffectInstance { private var _seekTime:Number;// = 0 public var easingFunction:Function; public var tween:Tween; mx_internal var needToLayout:Boolean;// = false mx_internal static const VERSION:String = "3.2.0.3794"; public function TweenEffectInstance(_arg1:Object){ super(_arg1); } override public function stop():void{ super.stop(); if (tween){ tween.stop(); }; } mx_internal function applyTweenStartValues():void{ if (duration > 0){ onTweenUpdate(tween.getCurrentValue(0)); }; } override public function get playheadTime():Number{ if (tween){ return ((tween.playheadTime + super.playheadTime)); }; return (0); } protected function createTween(_arg1:Object, _arg2:Object, _arg3:Object, _arg4:Number=-1, _arg5:Number=-1):Tween{ var _local6:Tween = new Tween(_arg1, _arg2, _arg3, _arg4, _arg5); _local6.addEventListener(TweenEvent.TWEEN_START, tweenEventHandler); _local6.addEventListener(TweenEvent.TWEEN_UPDATE, tweenEventHandler); _local6.addEventListener(TweenEvent.TWEEN_END, tweenEventHandler); if (easingFunction != null){ _local6.easingFunction = easingFunction; }; if (_seekTime > 0){ _local6.seek(_seekTime); }; _local6.playReversed = playReversed; return (_local6); } private function tweenEventHandler(_arg1:TweenEvent):void{ dispatchEvent(_arg1); } override public function end():void{ stopRepeat = true; if (delayTimer){ delayTimer.reset(); }; if (tween){ tween.endTween(); tween = null; }; } override public function reverse():void{ super.reverse(); if (tween){ tween.reverse(); }; super.playReversed = !(playReversed); } override mx_internal function set playReversed(_arg1:Boolean):void{ super.playReversed = _arg1; if (tween){ tween.playReversed = _arg1; }; } override public function resume():void{ super.resume(); if (tween){ tween.resume(); }; } public function onTweenEnd(_arg1:Object):void{ onTweenUpdate(_arg1); tween = null; if (needToLayout){ UIComponentGlobals.layoutManager.validateNow(); }; finishRepeat(); } public function onTweenUpdate(_arg1:Object):void{ } override public function pause():void{ super.pause(); if (tween){ tween.pause(); }; } public function seek(_arg1:Number):void{ if (tween){ tween.seek(_arg1); } else { _seekTime = _arg1; }; } } }//package mx.effects.effectClasses
Section 219
//ZoomInstance (mx.effects.effectClasses.ZoomInstance) package mx.effects.effectClasses { import flash.events.*; import mx.events.*; import mx.effects.*; public class ZoomInstance extends TweenEffectInstance { private var newY:Number; public var originY:Number; private var origX:Number; private var origY:Number; public var originX:Number; private var origPercentHeight:Number; public var zoomWidthFrom:Number; public var zoomWidthTo:Number; private var newX:Number; public var captureRollEvents:Boolean; private var origPercentWidth:Number; public var zoomHeightFrom:Number; private var origScaleX:Number; public var zoomHeightTo:Number; private var origScaleY:Number; private var scaledOriginX:Number; private var scaledOriginY:Number; private var show:Boolean;// = true private var _mouseHasMoved:Boolean;// = false mx_internal static const VERSION:String = "3.2.0.3794"; public function ZoomInstance(_arg1:Object){ super(_arg1); } override public function finishEffect():void{ if (captureRollEvents){ target.removeEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false); target.removeEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false); target.removeEventListener(MouseEvent.MOUSE_MOVE, mouseEventHandler, false); }; super.finishEffect(); } private function getScaleFromWidth(_arg1:Number):Number{ return ((_arg1 / (target.width / Math.abs(target.scaleX)))); } override public function initEffect(_arg1:Event):void{ super.initEffect(_arg1); if ((((_arg1.type == FlexEvent.HIDE)) || ((_arg1.type == Event.REMOVED)))){ show = false; }; } private function getScaleFromHeight(_arg1:Number):Number{ return ((_arg1 / (target.height / Math.abs(target.scaleY)))); } private function applyPropertyChanges():void{ var _local2:Boolean; var _local3:Boolean; var _local1:PropertyChanges = propertyChanges; if (_local1){ _local2 = false; _local3 = false; if (_local1.end["scaleX"] !== undefined){ zoomWidthFrom = (isNaN(zoomWidthFrom)) ? target.scaleX : zoomWidthFrom; zoomWidthTo = (isNaN(zoomWidthTo)) ? _local1.end["scaleX"] : zoomWidthTo; _local3 = true; }; if (_local1.end["scaleY"] !== undefined){ zoomHeightFrom = (isNaN(zoomHeightFrom)) ? target.scaleY : zoomHeightFrom; zoomHeightTo = (isNaN(zoomHeightTo)) ? _local1.end["scaleY"] : zoomHeightTo; _local3 = true; }; if (_local3){ return; }; if (_local1.end["width"] !== undefined){ zoomWidthFrom = (isNaN(zoomWidthFrom)) ? getScaleFromWidth(target.width) : zoomWidthFrom; zoomWidthTo = (isNaN(zoomWidthTo)) ? getScaleFromWidth(_local1.end["width"]) : zoomWidthTo; _local2 = true; }; if (_local1.end["height"] !== undefined){ zoomHeightFrom = (isNaN(zoomHeightFrom)) ? getScaleFromHeight(target.height) : zoomHeightFrom; zoomHeightTo = (isNaN(zoomHeightTo)) ? getScaleFromHeight(_local1.end["height"]) : zoomHeightTo; _local2 = true; }; if (_local2){ return; }; if (_local1.end["visible"] !== undefined){ show = _local1.end["visible"]; }; }; } private function mouseEventHandler(_arg1:MouseEvent):void{ if (_arg1.type == MouseEvent.MOUSE_MOVE){ _mouseHasMoved = true; } else { if ((((_arg1.type == MouseEvent.ROLL_OUT)) || ((_arg1.type == MouseEvent.ROLL_OVER)))){ if (!_mouseHasMoved){ _arg1.stopImmediatePropagation(); }; _mouseHasMoved = false; }; }; } override public function play():void{ super.play(); applyPropertyChanges(); if (((((((isNaN(zoomWidthFrom)) && (isNaN(zoomWidthTo)))) && (isNaN(zoomHeightFrom)))) && (isNaN(zoomHeightTo)))){ if (show){ zoomWidthFrom = (zoomHeightFrom = 0); zoomWidthTo = target.scaleX; zoomHeightTo = target.scaleY; } else { zoomWidthFrom = target.scaleX; zoomHeightFrom = target.scaleY; zoomWidthTo = (zoomHeightTo = 0); }; } else { if (((isNaN(zoomWidthFrom)) && (isNaN(zoomWidthTo)))){ zoomWidthFrom = (zoomWidthTo = target.scaleX); } else { if (((isNaN(zoomHeightFrom)) && (isNaN(zoomHeightTo)))){ zoomHeightFrom = (zoomHeightTo = target.scaleY); }; }; if (isNaN(zoomWidthFrom)){ zoomWidthFrom = target.scaleX; } else { if (isNaN(zoomWidthTo)){ zoomWidthTo = ((zoomWidthFrom)==1) ? 0 : 1; }; }; if (isNaN(zoomHeightFrom)){ zoomHeightFrom = target.scaleY; } else { if (isNaN(zoomHeightTo)){ zoomHeightTo = ((zoomHeightFrom)==1) ? 0 : 1; }; }; }; if (zoomWidthFrom < 0.01){ zoomWidthFrom = 0.01; }; if (zoomWidthTo < 0.01){ zoomWidthTo = 0.01; }; if (zoomHeightFrom < 0.01){ zoomHeightFrom = 0.01; }; if (zoomHeightTo < 0.01){ zoomHeightTo = 0.01; }; origScaleX = target.scaleX; origScaleY = target.scaleY; newX = (origX = target.x); newY = (origY = target.y); if (isNaN(originX)){ scaledOriginX = (target.width / 2); } else { scaledOriginX = (originX * origScaleX); }; if (isNaN(originY)){ scaledOriginY = (target.height / 2); } else { scaledOriginY = (originY * origScaleY); }; scaledOriginX = Number(scaledOriginX.toFixed(1)); scaledOriginY = Number(scaledOriginY.toFixed(1)); origPercentWidth = target.percentWidth; if (!isNaN(origPercentWidth)){ target.width = target.width; }; origPercentHeight = target.percentHeight; if (!isNaN(origPercentHeight)){ target.height = target.height; }; tween = createTween(this, [zoomWidthFrom, zoomHeightFrom], [zoomWidthTo, zoomHeightTo], duration); if (captureRollEvents){ target.addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false); target.addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false); target.addEventListener(MouseEvent.MOUSE_MOVE, mouseEventHandler, false); }; } override public function onTweenEnd(_arg1:Object):void{ var _local2:Number; var _local3:Number; if (!isNaN(origPercentWidth)){ _local2 = target.width; target.percentWidth = origPercentWidth; if (((target.parent) && ((target.parent.autoLayout == false)))){ target._width = _local2; }; }; if (!isNaN(origPercentHeight)){ _local3 = target.height; target.percentHeight = origPercentHeight; if (((target.parent) && ((target.parent.autoLayout == false)))){ target._height = _local3; }; }; super.onTweenEnd(_arg1); if (hideOnEffectEnd){ EffectManager.suspendEventHandling(); target.scaleX = origScaleX; target.scaleY = origScaleY; target.move(origX, origY); EffectManager.resumeEventHandling(); }; } override public function onTweenUpdate(_arg1:Object):void{ EffectManager.suspendEventHandling(); if (Math.abs((newX - target.x)) > 0.1){ origX = (origX + (Number(target.x.toFixed(1)) - newX)); }; if (Math.abs((newY - target.y)) > 0.1){ origY = (origY + (Number(target.y.toFixed(1)) - newY)); }; target.scaleX = _arg1[0]; target.scaleY = _arg1[1]; var _local2:Number = (_arg1[0] / origScaleX); var _local3:Number = (_arg1[1] / origScaleY); var _local4:Number = (scaledOriginX * _local2); var _local5:Number = (scaledOriginY * _local3); newX = ((scaledOriginX - _local4) + origX); newY = ((scaledOriginY - _local5) + origY); newX = Number(newX.toFixed(1)); newY = Number(newY.toFixed(1)); target.move(newX, newY); if (tween){ tween.needToLayout = true; } else { needToLayout = true; }; EffectManager.resumeEventHandling(); } } }//package mx.effects.effectClasses
Section 220
//Blur (mx.effects.Blur) package mx.effects { import mx.effects.effectClasses.*; public class Blur extends TweenEffect { public var blurXTo:Number; public var blurXFrom:Number; public var blurYFrom:Number; public var blurYTo:Number; mx_internal static const VERSION:String = "3.2.0.3794"; private static var AFFECTED_PROPERTIES:Array = ["filters"]; public function Blur(_arg1:Object=null){ super(_arg1); instanceClass = BlurInstance; } override public function getAffectedProperties():Array{ return (AFFECTED_PROPERTIES); } override protected function initInstance(_arg1:IEffectInstance):void{ var _local2:BlurInstance; super.initInstance(_arg1); _local2 = BlurInstance(_arg1); _local2.blurXFrom = blurXFrom; _local2.blurXTo = blurXTo; _local2.blurYFrom = blurYFrom; _local2.blurYTo = blurYTo; } } }//package mx.effects
Section 221
//Effect (mx.effects.Effect) package mx.effects { import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.effects.effectClasses.*; import flash.utils.*; public class Effect extends EventDispatcher implements IEffect { private var _perElementOffset:Number;// = 0 private var _hideFocusRing:Boolean;// = false private var _customFilter:EffectTargetFilter; public var repeatCount:int;// = 1 public var suspendBackgroundProcessing:Boolean;// = false public var startDelay:int;// = 0 private var _relevantProperties:Array; private var _callValidateNow:Boolean;// = false mx_internal var applyActualDimensions:Boolean;// = true private var _filter:String; private var _triggerEvent:Event; private var _effectTargetHost:IEffectTargetHost; mx_internal var durationExplicitlySet:Boolean;// = false public var repeatDelay:int;// = 0 private var _targets:Array; mx_internal var propertyChangesArray:Array; mx_internal var filterObject:EffectTargetFilter; protected var endValuesCaptured:Boolean;// = false public var instanceClass:Class; private var _duration:Number;// = 500 private var isPaused:Boolean;// = false private var _relevantStyles:Array; private var _instances:Array; mx_internal static const VERSION:String = "3.2.0.3794"; public function Effect(_arg1:Object=null){ _instances = []; instanceClass = IEffectInstance; _relevantStyles = []; _targets = []; super(); this.target = _arg1; } public function get targets():Array{ return (_targets); } public function set targets(_arg1:Array):void{ var _local2:int = _arg1.length; var _local3:int = (_local2 - 1); while (_local3 > 0) { if (_arg1[_local3] == null){ _arg1.splice(_local3, 1); }; _local3--; }; _targets = _arg1; } public function set hideFocusRing(_arg1:Boolean):void{ _hideFocusRing = _arg1; } public function get hideFocusRing():Boolean{ return (_hideFocusRing); } public function stop():void{ var _local3:IEffectInstance; var _local1:int = _instances.length; var _local2:int = _local1; while (_local2 >= 0) { _local3 = IEffectInstance(_instances[_local2]); if (_local3){ _local3.stop(); }; _local2--; }; } public function captureStartValues():void{ var _local1:int; var _local2:int; if (targets.length > 0){ propertyChangesArray = []; _callValidateNow = true; _local1 = targets.length; _local2 = 0; while (_local2 < _local1) { propertyChangesArray.push(new PropertyChanges(targets[_local2])); _local2++; }; propertyChangesArray = captureValues(propertyChangesArray, true); }; endValuesCaptured = false; } mx_internal function captureValues(_arg1:Array, _arg2:Boolean):Array{ var _local4:Object; var _local5:Object; var _local6:int; var _local7:int; var _local8:int; var _local9:int; var _local3:Array = (filterObject) ? mergeArrays(relevantProperties, filterObject.filterProperties) : relevantProperties; if (((_local3) && ((_local3.length > 0)))){ _local6 = _arg1.length; _local7 = 0; while (_local7 < _local6) { _local5 = _arg1[_local7].target; _local4 = (_arg2) ? _arg1[_local7].start : _arg1[_local7].end; _local8 = _local3.length; _local9 = 0; while (_local9 < _local8) { _local4[_local3[_local9]] = getValueFromTarget(_local5, _local3[_local9]); _local9++; }; _local7++; }; }; var _local10:Array = (filterObject) ? mergeArrays(relevantStyles, filterObject.filterStyles) : relevantStyles; if (((_local10) && ((_local10.length > 0)))){ _local6 = _arg1.length; _local7 = 0; while (_local7 < _local6) { _local5 = _arg1[_local7].target; _local4 = (_arg2) ? _arg1[_local7].start : _arg1[_local7].end; _local8 = _local10.length; _local9 = 0; while (_local9 < _local8) { _local4[_local10[_local9]] = _local5.getStyle(_local10[_local9]); _local9++; }; _local7++; }; }; return (_arg1); } protected function getValueFromTarget(_arg1:Object, _arg2:String){ if ((_arg2 in _arg1)){ return (_arg1[_arg2]); }; return (undefined); } public function set target(_arg1:Object):void{ _targets.splice(0); if (_arg1){ _targets[0] = _arg1; }; } public function get className():String{ var _local1:String = getQualifiedClassName(this); var _local2:int = _local1.indexOf("::"); if (_local2 != -1){ _local1 = _local1.substr((_local2 + 2)); }; return (_local1); } public function set perElementOffset(_arg1:Number):void{ _perElementOffset = _arg1; } public function resume():void{ var _local1:int; var _local2:int; if (((isPlaying) && (isPaused))){ isPaused = false; _local1 = _instances.length; _local2 = 0; while (_local2 < _local1) { IEffectInstance(_instances[_local2]).resume(); _local2++; }; }; } public function set duration(_arg1:Number):void{ durationExplicitlySet = true; _duration = _arg1; } public function play(_arg1:Array=null, _arg2:Boolean=false):Array{ var _local6:IEffectInstance; if ((((_arg1 == null)) && (!((propertyChangesArray == null))))){ if (_callValidateNow){ LayoutManager.getInstance().validateNow(); }; if (!endValuesCaptured){ propertyChangesArray = captureValues(propertyChangesArray, false); }; propertyChangesArray = stripUnchangedValues(propertyChangesArray); applyStartValues(propertyChangesArray, this.targets); }; var _local3:Array = createInstances(_arg1); var _local4:int = _local3.length; var _local5:int; while (_local5 < _local4) { _local6 = IEffectInstance(_local3[_local5]); Object(_local6).playReversed = _arg2; _local6.startEffect(); _local5++; }; return (_local3); } public function captureEndValues():void{ propertyChangesArray = captureValues(propertyChangesArray, false); endValuesCaptured = true; } protected function filterInstance(_arg1:Array, _arg2:Object):Boolean{ if (filterObject){ return (filterObject.filterInstance(_arg1, effectTargetHost, _arg2)); }; return (true); } public function get customFilter():EffectTargetFilter{ return (_customFilter); } public function get effectTargetHost():IEffectTargetHost{ return (_effectTargetHost); } public function set relevantProperties(_arg1:Array):void{ _relevantProperties = _arg1; } public function captureMoreStartValues(_arg1:Array):void{ var _local2:Array; var _local3:int; if (_arg1.length > 0){ _local2 = []; _local3 = 0; while (_local3 < _arg1.length) { _local2.push(new PropertyChanges(_arg1[_local3])); _local3++; }; _local2 = captureValues(_local2, true); propertyChangesArray = propertyChangesArray.concat(_local2); }; } public function deleteInstance(_arg1:IEffectInstance):void{ EventDispatcher(_arg1).removeEventListener(EffectEvent.EFFECT_START, effectStartHandler); EventDispatcher(_arg1).removeEventListener(EffectEvent.EFFECT_END, effectEndHandler); var _local2:int = _instances.length; var _local3:int; while (_local3 < _local2) { if (_instances[_local3] === _arg1){ _instances.splice(_local3, 1); }; _local3++; }; } public function get filter():String{ return (_filter); } public function set triggerEvent(_arg1:Event):void{ _triggerEvent = _arg1; } public function get target():Object{ if (_targets.length > 0){ return (_targets[0]); }; return (null); } public function get duration():Number{ return (_duration); } public function set customFilter(_arg1:EffectTargetFilter):void{ _customFilter = _arg1; filterObject = _arg1; } public function get perElementOffset():Number{ return (_perElementOffset); } public function set effectTargetHost(_arg1:IEffectTargetHost):void{ _effectTargetHost = _arg1; } public function get isPlaying():Boolean{ return (((_instances) && ((_instances.length > 0)))); } protected function effectEndHandler(_arg1:EffectEvent):void{ var _local2:IEffectInstance = IEffectInstance(_arg1.effectInstance); deleteInstance(_local2); dispatchEvent(_arg1); } public function get relevantProperties():Array{ if (_relevantProperties){ return (_relevantProperties); }; return (getAffectedProperties()); } public function createInstance(_arg1:Object=null):IEffectInstance{ var _local6:int; var _local7:int; if (!_arg1){ _arg1 = this.target; }; var _local2:IEffectInstance; var _local3:PropertyChanges; var _local4:Boolean; var _local5:Boolean; if (propertyChangesArray){ _local5 = true; _local4 = filterInstance(propertyChangesArray, _arg1); }; if (_local4){ _local2 = IEffectInstance(new instanceClass(_arg1)); initInstance(_local2); if (_local5){ _local6 = propertyChangesArray.length; _local7 = 0; while (_local7 < _local6) { if (propertyChangesArray[_local7].target == _arg1){ _local2.propertyChanges = propertyChangesArray[_local7]; }; _local7++; }; }; EventDispatcher(_local2).addEventListener(EffectEvent.EFFECT_START, effectStartHandler); EventDispatcher(_local2).addEventListener(EffectEvent.EFFECT_END, effectEndHandler); _instances.push(_local2); if (triggerEvent){ _local2.initEffect(triggerEvent); }; }; return (_local2); } protected function effectStartHandler(_arg1:EffectEvent):void{ dispatchEvent(_arg1); } public function getAffectedProperties():Array{ return ([]); } public function set relevantStyles(_arg1:Array):void{ _relevantStyles = _arg1; } public function get triggerEvent():Event{ return (_triggerEvent); } protected function applyValueToTarget(_arg1:Object, _arg2:String, _arg3, _arg4:Object):void{ var target = _arg1; var property = _arg2; var value = _arg3; var props = _arg4; if ((property in target)){ try { if (((((applyActualDimensions) && ((target is IFlexDisplayObject)))) && ((property == "height")))){ target.setActualSize(target.width, value); } else { if (((((applyActualDimensions) && ((target is IFlexDisplayObject)))) && ((property == "width")))){ target.setActualSize(value, target.height); } else { target[property] = value; }; }; } catch(e:Error) { }; }; } protected function initInstance(_arg1:IEffectInstance):void{ _arg1.duration = duration; Object(_arg1).durationExplicitlySet = durationExplicitlySet; _arg1.effect = this; _arg1.effectTargetHost = effectTargetHost; _arg1.hideFocusRing = hideFocusRing; _arg1.repeatCount = repeatCount; _arg1.repeatDelay = repeatDelay; _arg1.startDelay = startDelay; _arg1.suspendBackgroundProcessing = suspendBackgroundProcessing; } mx_internal function applyStartValues(_arg1:Array, _arg2:Array):void{ var _local6:int; var _local7:int; var _local8:Object; var _local9:Boolean; var _local3:Array = relevantProperties; var _local4:int = _arg1.length; var _local5:int; while (_local5 < _local4) { _local8 = _arg1[_local5].target; _local9 = false; _local6 = _arg2.length; _local7 = 0; while (_local7 < _local6) { if (_arg2[_local7] == _local8){ _local9 = filterInstance(_arg1, _local8); break; }; _local7++; }; if (_local9){ _local6 = _local3.length; _local7 = 0; while (_local7 < _local6) { if ((((_local3[_local7] in _arg1[_local5].start)) && ((_local3[_local7] in _local8)))){ applyValueToTarget(_local8, _local3[_local7], _arg1[_local5].start[_local3[_local7]], _arg1[_local5].start); }; _local7++; }; _local6 = relevantStyles.length; _local7 = 0; while (_local7 < _local6) { if ((relevantStyles[_local7] in _arg1[_local5].start)){ _local8.setStyle(relevantStyles[_local7], _arg1[_local5].start[relevantStyles[_local7]]); }; _local7++; }; }; _local5++; }; } public function end(_arg1:IEffectInstance=null):void{ var _local2:int; var _local3:int; var _local4:IEffectInstance; if (_arg1){ _arg1.end(); } else { _local2 = _instances.length; _local3 = _local2; while (_local3 >= 0) { _local4 = IEffectInstance(_instances[_local3]); if (_local4){ _local4.end(); }; _local3--; }; }; } public function get relevantStyles():Array{ return (_relevantStyles); } public function createInstances(_arg1:Array=null):Array{ var _local6:IEffectInstance; if (!_arg1){ _arg1 = this.targets; }; var _local2:Array = []; var _local3:int = _arg1.length; var _local4:Number = 0; var _local5:int; while (_local5 < _local3) { _local6 = createInstance(_arg1[_local5]); if (_local6){ _local6.startDelay = (_local6.startDelay + _local4); _local4 = (_local4 + perElementOffset); _local2.push(_local6); }; _local5++; }; triggerEvent = null; return (_local2); } public function pause():void{ var _local1:int; var _local2:int; if (((isPlaying) && (!(isPaused)))){ isPaused = true; _local1 = _instances.length; _local2 = 0; while (_local2 < _local1) { IEffectInstance(_instances[_local2]).pause(); _local2++; }; }; } public function set filter(_arg1:String):void{ if (!customFilter){ _filter = _arg1; switch (_arg1){ case "add": case "remove": filterObject = new AddRemoveEffectTargetFilter(); AddRemoveEffectTargetFilter(filterObject).add = (_arg1 == "add"); break; case "hide": case "show": filterObject = new HideShowEffectTargetFilter(); HideShowEffectTargetFilter(filterObject).show = (_arg1 == "show"); break; case "move": filterObject = new EffectTargetFilter(); filterObject.filterProperties = ["x", "y"]; break; case "resize": filterObject = new EffectTargetFilter(); filterObject.filterProperties = ["width", "height"]; break; case "addItem": filterObject = new EffectTargetFilter(); filterObject.requiredSemantics = {added:true}; break; case "removeItem": filterObject = new EffectTargetFilter(); filterObject.requiredSemantics = {removed:true}; break; case "replacedItem": filterObject = new EffectTargetFilter(); filterObject.requiredSemantics = {replaced:true}; break; case "replacementItem": filterObject = new EffectTargetFilter(); filterObject.requiredSemantics = {replacement:true}; break; default: filterObject = null; break; }; }; } public function reverse():void{ var _local1:int; var _local2:int; if (isPlaying){ _local1 = _instances.length; _local2 = 0; while (_local2 < _local1) { IEffectInstance(_instances[_local2]).reverse(); _local2++; }; }; } private static function mergeArrays(_arg1:Array, _arg2:Array):Array{ var _local3:int; var _local4:Boolean; var _local5:int; if (_arg2){ _local3 = 0; while (_local3 < _arg2.length) { _local4 = true; _local5 = 0; while (_local5 < _arg1.length) { if (_arg1[_local5] == _arg2[_local3]){ _local4 = false; break; }; _local5++; }; if (_local4){ _arg1.push(_arg2[_local3]); }; _local3++; }; }; return (_arg1); } private static function stripUnchangedValues(_arg1:Array):Array{ var _local3:Object; var _local2:int; while (_local2 < _arg1.length) { for (_local3 in _arg1[_local2].start) { if ((((_arg1[_local2].start[_local3] == _arg1[_local2].end[_local3])) || ((((((((typeof(_arg1[_local2].start[_local3]) == "number")) && ((typeof(_arg1[_local2].end[_local3]) == "number")))) && (isNaN(_arg1[_local2].start[_local3])))) && (isNaN(_arg1[_local2].end[_local3])))))){ delete _arg1[_local2].start[_local3]; delete _arg1[_local2].end[_local3]; }; }; _local2++; }; return (_arg1); } } }//package mx.effects
Section 222
//EffectInstance (mx.effects.EffectInstance) package mx.effects { import mx.core.*; import flash.events.*; import mx.events.*; import mx.effects.effectClasses.*; import flash.utils.*; public class EffectInstance extends EventDispatcher implements IEffectInstance { private var _hideFocusRing:Boolean; private var delayStartTime:Number;// = 0 mx_internal var stopRepeat:Boolean;// = false private var playCount:int;// = 0 private var _repeatCount:int;// = 0 private var _suspendBackgroundProcessing:Boolean;// = false mx_internal var delayTimer:Timer; private var _triggerEvent:Event; private var _effectTargetHost:IEffectTargetHost; mx_internal var parentCompositeEffectInstance:EffectInstance; mx_internal var durationExplicitlySet:Boolean;// = false private var _effect:IEffect; private var _target:Object; mx_internal var hideOnEffectEnd:Boolean;// = false private var _startDelay:int;// = 0 private var delayElapsedTime:Number;// = 0 private var _repeatDelay:int;// = 0 private var _propertyChanges:PropertyChanges; private var _duration:Number;// = 500 private var _playReversed:Boolean; mx_internal static const VERSION:String = "3.2.0.3794"; public function EffectInstance(_arg1:Object){ this.target = _arg1; } public function get playheadTime():Number{ return ((((Math.max((playCount - 1), 0) * duration) + (Math.max((playCount - 2), 0) * repeatDelay)) + (playReversed) ? 0 : startDelay)); } public function get hideFocusRing():Boolean{ return (_hideFocusRing); } public function stop():void{ if (delayTimer){ delayTimer.reset(); }; stopRepeat = true; finishEffect(); } public function finishEffect():void{ playCount = 0; dispatchEvent(new EffectEvent(EffectEvent.EFFECT_END, false, false, this)); if (target){ target.dispatchEvent(new EffectEvent(EffectEvent.EFFECT_END, false, false, this)); }; if ((target is UIComponent)){ UIComponent(target).effectFinished(this); }; EffectManager.effectFinished(this); } public function set hideFocusRing(_arg1:Boolean):void{ _hideFocusRing = _arg1; } public function finishRepeat():void{ if (((((!(stopRepeat)) && (!((playCount == 0))))) && ((((playCount < repeatCount)) || ((repeatCount == 0)))))){ if (repeatDelay > 0){ delayTimer = new Timer(repeatDelay, 1); delayStartTime = getTimer(); delayTimer.addEventListener(TimerEvent.TIMER, delayTimerHandler); delayTimer.start(); } else { play(); }; } else { finishEffect(); }; } mx_internal function get playReversed():Boolean{ return (_playReversed); } public function set effect(_arg1:IEffect):void{ _effect = _arg1; } public function get className():String{ var _local1:String = getQualifiedClassName(this); var _local2:int = _local1.indexOf("::"); if (_local2 != -1){ _local1 = _local1.substr((_local2 + 2)); }; return (_local1); } public function set duration(_arg1:Number):void{ durationExplicitlySet = true; _duration = _arg1; } mx_internal function set playReversed(_arg1:Boolean):void{ _playReversed = _arg1; } public function resume():void{ if (((((delayTimer) && (!(delayTimer.running)))) && (!(isNaN(delayElapsedTime))))){ delayTimer.delay = (playReversed) ? delayElapsedTime : (delayTimer.delay - delayElapsedTime); delayTimer.start(); }; } public function get propertyChanges():PropertyChanges{ return (_propertyChanges); } public function set target(_arg1:Object):void{ _target = _arg1; } public function get repeatCount():int{ return (_repeatCount); } mx_internal function playWithNoDuration():void{ duration = 0; repeatCount = 1; repeatDelay = 0; startDelay = 0; startEffect(); } public function get startDelay():int{ return (_startDelay); } mx_internal function get actualDuration():Number{ var _local1:Number = NaN; if (repeatCount > 0){ _local1 = (((duration * repeatCount) + ((repeatDelay * repeatCount) - 1)) + startDelay); }; return (_local1); } public function play():void{ playCount++; dispatchEvent(new EffectEvent(EffectEvent.EFFECT_START, false, false, this)); if (target){ target.dispatchEvent(new EffectEvent(EffectEvent.EFFECT_START, false, false, this)); }; } public function get suspendBackgroundProcessing():Boolean{ return (_suspendBackgroundProcessing); } public function get effectTargetHost():IEffectTargetHost{ return (_effectTargetHost); } public function set repeatDelay(_arg1:int):void{ _repeatDelay = _arg1; } public function set propertyChanges(_arg1:PropertyChanges):void{ _propertyChanges = _arg1; } mx_internal function eventHandler(_arg1:Event):void{ if ((((_arg1.type == FlexEvent.SHOW)) && ((hideOnEffectEnd == true)))){ hideOnEffectEnd = false; _arg1.target.removeEventListener(FlexEvent.SHOW, eventHandler); }; } public function set repeatCount(_arg1:int):void{ _repeatCount = _arg1; } private function delayTimerHandler(_arg1:TimerEvent):void{ delayTimer.reset(); delayStartTime = NaN; delayElapsedTime = NaN; play(); } public function set suspendBackgroundProcessing(_arg1:Boolean):void{ _suspendBackgroundProcessing = _arg1; } public function set triggerEvent(_arg1:Event):void{ _triggerEvent = _arg1; } public function set startDelay(_arg1:int):void{ _startDelay = _arg1; } public function get effect():IEffect{ return (_effect); } public function set effectTargetHost(_arg1:IEffectTargetHost):void{ _effectTargetHost = _arg1; } public function get target():Object{ return (_target); } public function startEffect():void{ EffectManager.effectStarted(this); if ((target is UIComponent)){ UIComponent(target).effectStarted(this); }; if ((((startDelay > 0)) && (!(playReversed)))){ delayTimer = new Timer(startDelay, 1); delayStartTime = getTimer(); delayTimer.addEventListener(TimerEvent.TIMER, delayTimerHandler); delayTimer.start(); } else { play(); }; } public function get repeatDelay():int{ return (_repeatDelay); } public function get duration():Number{ if (((!(durationExplicitlySet)) && (parentCompositeEffectInstance))){ return (parentCompositeEffectInstance.duration); }; return (_duration); } public function initEffect(_arg1:Event):void{ triggerEvent = _arg1; switch (_arg1.type){ case "resizeStart": case "resizeEnd": if (!durationExplicitlySet){ duration = 250; }; break; case FlexEvent.HIDE: target.setVisible(true, true); hideOnEffectEnd = true; target.addEventListener(FlexEvent.SHOW, eventHandler); break; }; } public function get triggerEvent():Event{ return (_triggerEvent); } public function end():void{ if (delayTimer){ delayTimer.reset(); }; stopRepeat = true; finishEffect(); } public function reverse():void{ if (repeatCount > 0){ playCount = ((repeatCount - playCount) + 1); }; } public function pause():void{ if (((((delayTimer) && (delayTimer.running))) && (!(isNaN(delayStartTime))))){ delayTimer.stop(); delayElapsedTime = (getTimer() - delayStartTime); }; } } }//package mx.effects
Section 223
//EffectManager (mx.effects.EffectManager) package mx.effects { import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.resources.*; import flash.utils.*; public class EffectManager extends EventDispatcher { mx_internal static const VERSION:String = "3.2.0.3794"; private static var _resourceManager:IResourceManager; private static var effects:Dictionary = new Dictionary(true); mx_internal static var effectsPlaying:Array = []; private static var targetsInfo:Array = []; private static var effectTriggersForEvent:Object = {}; mx_internal static var lastEffectCreated:Effect; private static var eventHandlingSuspendCount:Number = 0; private static var eventsForEffectTriggers:Object = {}; public static function suspendEventHandling():void{ eventHandlingSuspendCount++; } mx_internal static function registerEffectTrigger(_arg1:String, _arg2:String):void{ var _local3:Number; if (_arg1 != ""){ if (_arg2 == ""){ _local3 = _arg1.length; if ((((_local3 > 6)) && ((_arg1.substring((_local3 - 6)) == "Effect")))){ _arg2 = _arg1.substring(0, (_local3 - 6)); }; }; if (_arg2 != ""){ effectTriggersForEvent[_arg2] = _arg1; eventsForEffectTriggers[_arg1] = _arg2; }; }; } private static function removedEffectHandler(_arg1:DisplayObject, _arg2:DisplayObjectContainer, _arg3:int, _arg4:Event):void{ suspendEventHandling(); _arg2.addChildAt(_arg1, _arg3); resumeEventHandling(); createAndPlayEffect(_arg4, _arg1); } private static function createAndPlayEffect(_arg1:Event, _arg2:Object):void{ var _local4:int; var _local5:int; var _local6:int; var _local7:int; var _local9:String; var _local10:String; var _local11:Array; var _local12:Array; var _local13:Array; var _local14:Array; var _local15:EffectInstance; var _local3:Effect = createEffectForType(_arg2, _arg1.type); if (!_local3){ return; }; if ((((_local3 is Zoom)) && ((_arg1.type == MoveEvent.MOVE)))){ _local9 = resourceManager.getString("effects", "incorrectTrigger"); throw (new Error(_local9)); }; if (_arg2.initialized == false){ _local10 = _arg1.type; if ((((((((((_local10 == MoveEvent.MOVE)) || ((_local10 == ResizeEvent.RESIZE)))) || ((_local10 == FlexEvent.SHOW)))) || ((_local10 == FlexEvent.HIDE)))) || ((_local10 == Event.CHANGE)))){ _local3 = null; return; }; }; if ((_local3.target is IUIComponent)){ _local11 = IUIComponent(_local3.target).tweeningProperties; if (((_local11) && ((_local11.length > 0)))){ _local12 = _local3.getAffectedProperties(); _local4 = _local11.length; _local6 = _local12.length; _local5 = 0; while (_local5 < _local4) { _local7 = 0; while (_local7 < _local6) { if (_local11[_local5] == _local12[_local7]){ _local3 = null; return; }; _local7++; }; _local5++; }; }; }; if ((((_local3.target is UIComponent)) && (UIComponent(_local3.target).isEffectStarted))){ _local13 = _local3.getAffectedProperties(); _local5 = 0; while (_local5 < _local13.length) { _local14 = _local3.target.getEffectsForProperty(_local13[_local5]); if (_local14.length > 0){ if (_arg1.type == ResizeEvent.RESIZE){ return; }; _local7 = 0; while (_local7 < _local14.length) { _local15 = _local14[_local7]; if ((((_arg1.type == FlexEvent.SHOW)) && (_local15.hideOnEffectEnd))){ _local15.target.removeEventListener(FlexEvent.SHOW, _local15.eventHandler); _local15.hideOnEffectEnd = false; }; _local15.end(); _local7++; }; }; _local5++; }; }; _local3.triggerEvent = _arg1; _local3.addEventListener(EffectEvent.EFFECT_END, EffectManager.effectEndHandler); lastEffectCreated = _local3; var _local8:Array = _local3.play(); _local4 = _local8.length; _local5 = 0; while (_local5 < _local4) { effectsPlaying.push(new EffectNode(_local3, _local8[_local5])); _local5++; }; if (_local3.suspendBackgroundProcessing){ UIComponent.suspendBackgroundProcessing(); }; } public static function endEffectsForTarget(_arg1:IUIComponent):void{ var _local4:EffectInstance; var _local2:int = effectsPlaying.length; var _local3:int = (_local2 - 1); while (_local3 >= 0) { _local4 = effectsPlaying[_local3].instance; if (_local4.target == _arg1){ _local4.end(); }; _local3--; }; } private static function cacheOrUncacheTargetAsBitmap(_arg1:IUIComponent, _arg2:Boolean=true, _arg3:Boolean=true):void{ var _local4:int; var _local5:int; var _local6:Object; _local4 = targetsInfo.length; _local5 = 0; while (_local5 < _local4) { if (targetsInfo[_local5].target == _arg1){ _local6 = targetsInfo[_local5]; break; }; _local5++; }; if (!_local6){ _local6 = {target:_arg1, bitmapEffectsCount:0, vectorEffectsCount:0}; targetsInfo.push(_local6); }; if (_arg2){ if (_arg3){ _local6.bitmapEffectsCount++; if ((((_local6.vectorEffectsCount == 0)) && ((_arg1 is IDeferredInstantiationUIComponent)))){ IDeferredInstantiationUIComponent(_arg1).cacheHeuristic = true; }; } else { if ((((((_local6.vectorEffectsCount++ == 0)) && ((_arg1 is IDeferredInstantiationUIComponent)))) && ((IDeferredInstantiationUIComponent(_arg1).cachePolicy == UIComponentCachePolicy.AUTO)))){ _arg1.cacheAsBitmap = false; }; }; } else { if (_arg3){ if (_local6.bitmapEffectsCount != 0){ _local6.bitmapEffectsCount--; }; if ((_arg1 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_arg1).cacheHeuristic = false; }; } else { if (_local6.vectorEffectsCount != 0){ if ((((--_local6.vectorEffectsCount == 0)) && (!((_local6.bitmapEffectsCount == 0))))){ _local4 = _local6.bitmapEffectsCount; _local5 = 0; while (_local5 < _local4) { if ((_arg1 is IDeferredInstantiationUIComponent)){ IDeferredInstantiationUIComponent(_arg1).cacheHeuristic = true; }; _local5++; }; }; }; }; if ((((_local6.bitmapEffectsCount == 0)) && ((_local6.vectorEffectsCount == 0)))){ _local4 = targetsInfo.length; _local5 = 0; while (_local5 < _local4) { if (targetsInfo[_local5].target == _arg1){ targetsInfo.splice(_local5, 1); break; }; _local5++; }; }; }; } mx_internal static function eventHandler(_arg1:Event):void{ var _local2:FocusEvent; var _local3:DisplayObject; var _local4:int; var _local5:DisplayObjectContainer; var _local6:int; if (!(_arg1.currentTarget is IFlexDisplayObject)){ return; }; if (eventHandlingSuspendCount > 0){ return; }; if ((((_arg1 is FocusEvent)) && ((((_arg1.type == FocusEvent.FOCUS_OUT)) || ((_arg1.type == FocusEvent.FOCUS_IN)))))){ _local2 = FocusEvent(_arg1); if (((_local2.relatedObject) && (((_local2.currentTarget.contains(_local2.relatedObject)) || ((_local2.currentTarget == _local2.relatedObject)))))){ return; }; }; if ((((((_arg1.type == Event.ADDED)) || ((_arg1.type == Event.REMOVED)))) && (!((_arg1.target == _arg1.currentTarget))))){ return; }; if (_arg1.type == Event.REMOVED){ if ((_arg1.target is UIComponent)){ if (UIComponent(_arg1.target).initialized == false){ return; }; if (UIComponent(_arg1.target).isEffectStarted){ _local4 = 0; while (_local4 < UIComponent(_arg1.target)._effectsStarted.length) { if (UIComponent(_arg1.target)._effectsStarted[_local4].triggerEvent.type == Event.REMOVED){ return; }; _local4++; }; }; }; _local3 = (_arg1.target as DisplayObject); if (_local3 != null){ _local5 = (_local3.parent as DisplayObjectContainer); if (_local5 != null){ _local6 = _local5.getChildIndex(_local3); if (_local6 >= 0){ if ((_local3 is UIComponent)){ UIComponent(_local3).callLater(removedEffectHandler, [_local3, _local5, _local6, _arg1]); }; }; }; }; } else { createAndPlayEffect(_arg1, _arg1.currentTarget); }; } mx_internal static function endBitmapEffect(_arg1:IUIComponent):void{ cacheOrUncacheTargetAsBitmap(_arg1, false, true); } private static function animateSameProperty(_arg1:Effect, _arg2:Effect, _arg3:EffectInstance):Boolean{ var _local4:Array; var _local5:Array; var _local6:int; var _local7:int; var _local8:int; var _local9:int; if (_arg1.target == _arg3.target){ _local4 = _arg1.getAffectedProperties(); _local5 = _arg2.getAffectedProperties(); _local6 = _local4.length; _local7 = _local5.length; _local8 = 0; while (_local8 < _local6) { _local9 = 0; while (_local9 < _local7) { if (_local4[_local8] == _local5[_local9]){ return (true); }; _local9++; }; _local8++; }; }; return (false); } mx_internal static function effectFinished(_arg1:EffectInstance):void{ delete effects[_arg1]; } mx_internal static function effectsInEffect():Boolean{ var _local1:*; for (_local1 in effects) { return (true); }; return (false); } mx_internal static function effectEndHandler(_arg1:EffectEvent):void{ var _local5:DisplayObject; var _local6:DisplayObjectContainer; var _local2:IEffectInstance = _arg1.effectInstance; var _local3:int = effectsPlaying.length; var _local4:int = (_local3 - 1); while (_local4 >= 0) { if (effectsPlaying[_local4].instance == _local2){ effectsPlaying.splice(_local4, 1); break; }; _local4--; }; if (Object(_local2).hideOnEffectEnd == true){ _local2.target.removeEventListener(FlexEvent.SHOW, Object(_local2).eventHandler); _local2.target.setVisible(false, true); }; if (((_local2.triggerEvent) && ((_local2.triggerEvent.type == Event.REMOVED)))){ _local5 = (_local2.target as DisplayObject); if (_local5 != null){ _local6 = (_local5.parent as DisplayObjectContainer); if (_local6 != null){ suspendEventHandling(); _local6.removeChild(_local5); resumeEventHandling(); }; }; }; if (_local2.suspendBackgroundProcessing){ UIComponent.resumeBackgroundProcessing(); }; } mx_internal static function startBitmapEffect(_arg1:IUIComponent):void{ cacheOrUncacheTargetAsBitmap(_arg1, true, true); } mx_internal static function setStyle(_arg1:String, _arg2):void{ var _local3:String = eventsForEffectTriggers[_arg1]; if (((!((_local3 == null))) && (!((_local3 == ""))))){ _arg2.addEventListener(_local3, EffectManager.eventHandler, false, EventPriority.EFFECT); }; } mx_internal static function getEventForEffectTrigger(_arg1:String):String{ var effectTrigger = _arg1; if (eventsForEffectTriggers){ try { return (eventsForEffectTriggers[effectTrigger]); } catch(e:Error) { return (""); }; }; return (""); } mx_internal static function createEffectForType(_arg1:Object, _arg2:String):Effect{ var cls:Class; var effectObj:Effect; var doc:Object; var target = _arg1; var type = _arg2; var trigger:String = effectTriggersForEvent[type]; if (trigger == ""){ trigger = (type + "Effect"); }; var value:Object = target.getStyle(trigger); if (!value){ return (null); }; if ((value is Class)){ cls = Class(value); return (new cls(target)); }; try { if ((value is String)){ doc = target.parentDocument; if (!doc){ doc = ApplicationGlobals.application; }; effectObj = doc[value]; } else { if ((value is Effect)){ effectObj = Effect(value); }; }; if (effectObj){ effectObj.target = target; return (effectObj); }; } catch(e:Error) { }; var effectClass:Class = Class(target.systemManager.getDefinitionByName(("mx.effects." + value))); if (effectClass){ return (new effectClass(target)); }; return (null); } mx_internal static function effectStarted(_arg1:EffectInstance):void{ effects[_arg1] = 1; } public static function resumeEventHandling():void{ eventHandlingSuspendCount--; } mx_internal static function startVectorEffect(_arg1:IUIComponent):void{ cacheOrUncacheTargetAsBitmap(_arg1, true, false); } mx_internal static function endVectorEffect(_arg1:IUIComponent):void{ cacheOrUncacheTargetAsBitmap(_arg1, false, false); } private static function get resourceManager():IResourceManager{ if (!_resourceManager){ _resourceManager = ResourceManager.getInstance(); }; return (_resourceManager); } } }//package mx.effects class EffectNode { public var factory:Effect; public var instance:EffectInstance; private function EffectNode(_arg1:Effect, _arg2:EffectInstance){ this.factory = _arg1; this.instance = _arg2; } }
Section 224
//EffectTargetFilter (mx.effects.EffectTargetFilter) package mx.effects { import mx.effects.effectClasses.*; public class EffectTargetFilter { public var filterFunction:Function; public var filterStyles:Array; public var filterProperties:Array; public var requiredSemantics:Object;// = null mx_internal static const VERSION:String = "3.2.0.3794"; public function EffectTargetFilter(){ filterFunction = defaultFilterFunctionEx; filterProperties = []; filterStyles = []; super(); } protected function defaultFilterFunctionEx(_arg1:Array, _arg2:IEffectTargetHost, _arg3:Object):Boolean{ var _local4:String; if (requiredSemantics){ for (_local4 in requiredSemantics) { if (!_arg2){ return (false); }; if (_arg2.getRendererSemanticValue(_arg3, _local4) != requiredSemantics[_local4]){ return (false); }; }; return (true); }; return (defaultFilterFunction(_arg1, _arg3)); } protected function defaultFilterFunction(_arg1:Array, _arg2:Object):Boolean{ var _local5:PropertyChanges; var _local6:Array; var _local7:int; var _local8:int; var _local3:int = _arg1.length; var _local4:int; while (_local4 < _local3) { _local5 = _arg1[_local4]; if (_local5.target == _arg2){ _local6 = filterProperties.concat(filterStyles); _local7 = _local6.length; _local8 = 0; while (_local8 < _local7) { if (((!((_local5.start[_local6[_local8]] === undefined))) && (!((_local5.end[_local6[_local8]] == _local5.start[_local6[_local8]]))))){ return (true); }; _local8++; }; }; _local4++; }; return (false); } public function filterInstance(_arg1:Array, _arg2:IEffectTargetHost, _arg3:Object):Boolean{ if (filterFunction.length == 2){ return (filterFunction(_arg1, _arg3)); }; return (filterFunction(_arg1, _arg2, _arg3)); } } }//package mx.effects
Section 225
//Fade (mx.effects.Fade) package mx.effects { import mx.effects.effectClasses.*; public class Fade extends TweenEffect { public var alphaFrom:Number; public var alphaTo:Number; mx_internal static const VERSION:String = "3.2.0.3794"; private static var AFFECTED_PROPERTIES:Array = ["alpha", "visible"]; public function Fade(_arg1:Object=null){ super(_arg1); instanceClass = FadeInstance; } override protected function initInstance(_arg1:IEffectInstance):void{ super.initInstance(_arg1); var _local2:FadeInstance = FadeInstance(_arg1); _local2.alphaFrom = alphaFrom; _local2.alphaTo = alphaTo; } override public function getAffectedProperties():Array{ return (AFFECTED_PROPERTIES); } } }//package mx.effects
Section 226
//IAbstractEffect (mx.effects.IAbstractEffect) package mx.effects { import flash.events.*; public interface IAbstractEffect extends IEventDispatcher { } }//package mx.effects
Section 227
//IEffect (mx.effects.IEffect) package mx.effects { import flash.events.*; public interface IEffect extends IAbstractEffect { function captureMoreStartValues(_arg1:Array):void; function get triggerEvent():Event; function set targets(_arg1:Array):void; function captureStartValues():void; function get hideFocusRing():Boolean; function get customFilter():EffectTargetFilter; function get effectTargetHost():IEffectTargetHost; function set triggerEvent(_arg1:Event):void; function set hideFocusRing(_arg1:Boolean):void; function captureEndValues():void; function get target():Object; function set customFilter(_arg1:EffectTargetFilter):void; function get duration():Number; function get perElementOffset():Number; function get targets():Array; function set effectTargetHost(_arg1:IEffectTargetHost):void; function get relevantStyles():Array; function set relevantProperties(_arg1:Array):void; function set target(_arg1:Object):void; function get className():String; function get isPlaying():Boolean; function deleteInstance(_arg1:IEffectInstance):void; function set duration(_arg1:Number):void; function createInstances(_arg1:Array=null):Array; function end(_arg1:IEffectInstance=null):void; function set perElementOffset(_arg1:Number):void; function resume():void; function stop():void; function set filter(_arg1:String):void; function createInstance(_arg1:Object=null):IEffectInstance; function play(_arg1:Array=null, _arg2:Boolean=false):Array; function pause():void; function get relevantProperties():Array; function get filter():String; function reverse():void; function getAffectedProperties():Array; function set relevantStyles(_arg1:Array):void; } }//package mx.effects
Section 228
//IEffectInstance (mx.effects.IEffectInstance) package mx.effects { import flash.events.*; import mx.effects.effectClasses.*; public interface IEffectInstance { function get playheadTime():Number; function get triggerEvent():Event; function set triggerEvent(_arg1:Event):void; function get hideFocusRing():Boolean; function initEffect(_arg1:Event):void; function set startDelay(_arg1:int):void; function get effectTargetHost():IEffectTargetHost; function finishEffect():void; function set hideFocusRing(_arg1:Boolean):void; function finishRepeat():void; function set repeatDelay(_arg1:int):void; function get effect():IEffect; function startEffect():void; function get duration():Number; function get target():Object; function get startDelay():int; function stop():void; function set effectTargetHost(_arg1:IEffectTargetHost):void; function set propertyChanges(_arg1:PropertyChanges):void; function set effect(_arg1:IEffect):void; function get className():String; function set duration(_arg1:Number):void; function set target(_arg1:Object):void; function end():void; function resume():void; function get propertyChanges():PropertyChanges; function set repeatCount(_arg1:int):void; function reverse():void; function get repeatCount():int; function pause():void; function get repeatDelay():int; function set suspendBackgroundProcessing(_arg1:Boolean):void; function play():void; function get suspendBackgroundProcessing():Boolean; } }//package mx.effects
Section 229
//IEffectTargetHost (mx.effects.IEffectTargetHost) package mx.effects { public interface IEffectTargetHost { function unconstrainRenderer(_arg1:Object):void; function removeDataEffectItem(_arg1:Object):void; function getRendererSemanticValue(_arg1:Object, _arg2:String):Object; function addDataEffectItem(_arg1:Object):void; } }//package mx.effects
Section 230
//Move (mx.effects.Move) package mx.effects { import mx.effects.effectClasses.*; public class Move extends TweenEffect { public var xFrom:Number; public var yFrom:Number; public var xBy:Number; public var yBy:Number; public var yTo:Number; public var xTo:Number; mx_internal static const VERSION:String = "3.2.0.3794"; private static var AFFECTED_PROPERTIES:Array = ["x", "y"]; public function Move(_arg1:Object=null){ super(_arg1); instanceClass = MoveInstance; } override protected function initInstance(_arg1:IEffectInstance):void{ var _local2:MoveInstance; super.initInstance(_arg1); _local2 = MoveInstance(_arg1); _local2.xFrom = xFrom; _local2.xTo = xTo; _local2.xBy = xBy; _local2.yFrom = yFrom; _local2.yTo = yTo; _local2.yBy = yBy; } override public function getAffectedProperties():Array{ return (AFFECTED_PROPERTIES); } } }//package mx.effects
Section 231
//Tween (mx.effects.Tween) package mx.effects { import mx.core.*; import flash.events.*; import mx.events.*; import flash.utils.*; public class Tween extends EventDispatcher { private var started:Boolean;// = false private var previousUpdateTime:Number; public var duration:Number;// = 3000 private var id:int; private var arrayMode:Boolean; private var _isPlaying:Boolean;// = true private var startValue:Object; public var listener:Object; private var userEquation:Function; mx_internal var needToLayout:Boolean;// = false private var updateFunction:Function; private var _doSeek:Boolean;// = false mx_internal var startTime:Number; private var endFunction:Function; private var endValue:Object; private var _doReverse:Boolean;// = false private var _playheadTime:Number;// = 0 private var _invertValues:Boolean;// = false private var maxDelay:Number;// = 87.5 mx_internal static const VERSION:String = "3.2.0.3794"; private static var timer:Timer = null; private static var interval:Number = 10; mx_internal static var activeTweens:Array = []; mx_internal static var intervalTime:Number = NAN; public function Tween(_arg1:Object, _arg2:Object, _arg3:Object, _arg4:Number=-1, _arg5:Number=-1, _arg6:Function=null, _arg7:Function=null){ userEquation = defaultEasingFunction; super(); if (!_arg1){ return; }; if ((_arg2 is Array)){ arrayMode = true; }; this.listener = _arg1; this.startValue = _arg2; this.endValue = _arg3; if (((!(isNaN(_arg4))) && (!((_arg4 == -1))))){ this.duration = _arg4; }; if (((!(isNaN(_arg5))) && (!((_arg5 == -1))))){ maxDelay = (1000 / _arg5); }; this.updateFunction = _arg6; this.endFunction = _arg7; if (_arg4 == 0){ id = -1; endTween(); } else { Tween.addTween(this); }; } mx_internal function get playheadTime():Number{ return (_playheadTime); } public function stop():void{ if (id >= 0){ Tween.removeTweenAt(id); }; } mx_internal function get playReversed():Boolean{ return (_invertValues); } mx_internal function set playReversed(_arg1:Boolean):void{ _invertValues = _arg1; } public function resume():void{ _isPlaying = true; startTime = (intervalTime - _playheadTime); if (_doReverse){ reverse(); _doReverse = false; }; } public function setTweenHandlers(_arg1:Function, _arg2:Function):void{ this.updateFunction = _arg1; this.endFunction = _arg2; } private function defaultEasingFunction(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 / 2) * (Math.sin((Math.PI * ((_arg1 / _arg4) - 0.5))) + 1)) + _arg2)); } public function set easingFunction(_arg1:Function):void{ userEquation = _arg1; } public function endTween():void{ var _local1:TweenEvent = new TweenEvent(TweenEvent.TWEEN_END); var _local2:Object = getCurrentValue(duration); _local1.value = _local2; dispatchEvent(_local1); if (endFunction != null){ endFunction(_local2); } else { listener.onTweenEnd(_local2); }; if (id >= 0){ Tween.removeTweenAt(id); }; } public function reverse():void{ if (_isPlaying){ _doReverse = false; seek((duration - _playheadTime)); _invertValues = !(_invertValues); } else { _doReverse = !(_doReverse); }; } mx_internal function getCurrentValue(_arg1:Number):Object{ var _local2:Array; var _local3:int; var _local4:int; if (duration == 0){ return (endValue); }; if (_invertValues){ _arg1 = (duration - _arg1); }; if (arrayMode){ _local2 = []; _local3 = startValue.length; _local4 = 0; while (_local4 < _local3) { _local2[_local4] = userEquation(_arg1, startValue[_local4], (endValue[_local4] - startValue[_local4]), duration); _local4++; }; return (_local2); //unresolved jump }; return (userEquation(_arg1, startValue, (Number(endValue) - Number(startValue)), duration)); } mx_internal function doInterval():Boolean{ var _local2:Number; var _local3:Object; var _local4:TweenEvent; var _local5:TweenEvent; var _local1:Boolean; previousUpdateTime = intervalTime; if (((_isPlaying) || (_doSeek))){ _local2 = (intervalTime - startTime); _playheadTime = _local2; _local3 = getCurrentValue(_local2); if ((((_local2 >= duration)) && (!(_doSeek)))){ endTween(); _local1 = true; } else { if (!started){ _local5 = new TweenEvent(TweenEvent.TWEEN_START); dispatchEvent(_local5); started = true; }; _local4 = new TweenEvent(TweenEvent.TWEEN_UPDATE); _local4.value = _local3; dispatchEvent(_local4); if (updateFunction != null){ updateFunction(_local3); } else { listener.onTweenUpdate(_local3); }; }; _doSeek = false; }; return (_local1); } public function pause():void{ _isPlaying = false; } public function seek(_arg1:Number):void{ var _local2:Number = intervalTime; previousUpdateTime = _local2; startTime = (_local2 - _arg1); _doSeek = true; } mx_internal static function removeTween(_arg1:Tween):void{ removeTweenAt(_arg1.id); } private static function addTween(_arg1:Tween):void{ _arg1.id = activeTweens.length; activeTweens.push(_arg1); if (!timer){ timer = new Timer(interval); timer.addEventListener(TimerEvent.TIMER, timerHandler); timer.start(); } else { timer.start(); }; if (isNaN(intervalTime)){ intervalTime = getTimer(); }; _arg1.startTime = (_arg1.previousUpdateTime = intervalTime); } private static function timerHandler(_arg1:TimerEvent):void{ var _local6:Tween; var _local2:Boolean; var _local3:Number = intervalTime; intervalTime = getTimer(); var _local4:int = activeTweens.length; var _local5:int = _local4; while (_local5 >= 0) { _local6 = Tween(activeTweens[_local5]); if (_local6){ _local6.needToLayout = false; _local6.doInterval(); if (_local6.needToLayout){ _local2 = true; }; }; _local5--; }; if (_local2){ UIComponentGlobals.layoutManager.validateNow(); }; _arg1.updateAfterEvent(); } private static function removeTweenAt(_arg1:int):void{ var _local4:Tween; if ((((_arg1 >= activeTweens.length)) || ((_arg1 < 0)))){ return; }; activeTweens.splice(_arg1, 1); var _local2:int = activeTweens.length; var _local3:int = _arg1; while (_local3 < _local2) { _local4 = Tween(activeTweens[_local3]); _local4.id--; _local3++; }; if (_local2 == 0){ intervalTime = NaN; timer.reset(); }; } } }//package mx.effects
Section 232
//TweenEffect (mx.effects.TweenEffect) package mx.effects { import flash.events.*; import mx.events.*; import mx.effects.effectClasses.*; public class TweenEffect extends Effect { public var easingFunction:Function;// = null mx_internal static const VERSION:String = "3.2.0.3794"; public function TweenEffect(_arg1:Object=null){ super(_arg1); instanceClass = TweenEffectInstance; } protected function tweenEventHandler(_arg1:TweenEvent):void{ dispatchEvent(_arg1); } override protected function initInstance(_arg1:IEffectInstance):void{ super.initInstance(_arg1); TweenEffectInstance(_arg1).easingFunction = easingFunction; EventDispatcher(_arg1).addEventListener(TweenEvent.TWEEN_START, tweenEventHandler); EventDispatcher(_arg1).addEventListener(TweenEvent.TWEEN_UPDATE, tweenEventHandler); EventDispatcher(_arg1).addEventListener(TweenEvent.TWEEN_END, tweenEventHandler); } } }//package mx.effects
Section 233
//Zoom (mx.effects.Zoom) package mx.effects { import mx.effects.effectClasses.*; public class Zoom extends TweenEffect { public var zoomHeightFrom:Number; public var zoomWidthTo:Number; public var originX:Number; public var zoomHeightTo:Number; public var originY:Number; public var captureRollEvents:Boolean; public var zoomWidthFrom:Number; mx_internal static const VERSION:String = "3.2.0.3794"; private static var AFFECTED_PROPERTIES:Array = ["scaleX", "scaleY", "x", "y", "width", "height"]; public function Zoom(_arg1:Object=null){ super(_arg1); instanceClass = ZoomInstance; applyActualDimensions = false; relevantProperties = ["scaleX", "scaleY", "width", "height", "visible"]; } override protected function initInstance(_arg1:IEffectInstance):void{ var _local2:ZoomInstance; super.initInstance(_arg1); _local2 = ZoomInstance(_arg1); _local2.zoomWidthFrom = zoomWidthFrom; _local2.zoomWidthTo = zoomWidthTo; _local2.zoomHeightFrom = zoomHeightFrom; _local2.zoomHeightTo = zoomHeightTo; _local2.originX = originX; _local2.originY = originY; _local2.captureRollEvents = captureRollEvents; } override public function getAffectedProperties():Array{ return (AFFECTED_PROPERTIES); } } }//package mx.effects
Section 234
//BrowserChangeEvent (mx.events.BrowserChangeEvent) package mx.events { import flash.events.*; public class BrowserChangeEvent extends Event { public var lastURL:String; public var url:String; public static const BROWSER_URL_CHANGE:String = "browserURLChange"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const URL_CHANGE:String = "urlChange"; public static const APPLICATION_URL_CHANGE:String = "applicationURLChange"; public function BrowserChangeEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:String=null){ super(_arg1, _arg2, _arg3); this.url = _arg4; this.lastURL = _arg5; } override public function clone():Event{ return (new BrowserChangeEvent(type, bubbles, cancelable, url, lastURL)); } } }//package mx.events
Section 235
//ChildExistenceChangedEvent (mx.events.ChildExistenceChangedEvent) package mx.events { import flash.display.*; import flash.events.*; public class ChildExistenceChangedEvent extends Event { public var relatedObject:DisplayObject; public static const CHILD_REMOVE:String = "childRemove"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const OVERLAY_CREATED:String = "overlayCreated"; public static const CHILD_ADD:String = "childAdd"; public function ChildExistenceChangedEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:DisplayObject=null){ super(_arg1, _arg2, _arg3); this.relatedObject = _arg4; } override public function clone():Event{ return (new ChildExistenceChangedEvent(type, bubbles, cancelable, relatedObject)); } } }//package mx.events
Section 236
//CloseEvent (mx.events.CloseEvent) package mx.events { import flash.events.*; public class CloseEvent extends Event { public var detail:int; mx_internal static const VERSION:String = "3.2.0.3794"; public static const CLOSE:String = "close"; public function CloseEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:int=-1){ super(_arg1, _arg2, _arg3); this.detail = _arg4; } override public function clone():Event{ return (new CloseEvent(type, bubbles, cancelable, detail)); } } }//package mx.events
Section 237
//CollectionEvent (mx.events.CollectionEvent) package mx.events { import flash.events.*; public class CollectionEvent extends Event { public var kind:String; public var location:int; public var items:Array; public var oldLocation:int; mx_internal static const VERSION:String = "3.2.0.3794"; public static const COLLECTION_CHANGE:String = "collectionChange"; public function CollectionEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:int=-1, _arg6:int=-1, _arg7:Array=null){ super(_arg1, _arg2, _arg3); this.kind = _arg4; this.location = _arg5; this.oldLocation = _arg6; this.items = (_arg7) ? _arg7 : []; } override public function toString():String{ return (formatToString("CollectionEvent", "kind", "location", "oldLocation", "type", "bubbles", "cancelable", "eventPhase")); } override public function clone():Event{ return (new CollectionEvent(type, bubbles, cancelable, kind, location, oldLocation, items)); } } }//package mx.events
Section 238
//CollectionEventKind (mx.events.CollectionEventKind) package mx.events { public final class CollectionEventKind { public static const ADD:String = "add"; public static const REMOVE:String = "remove"; public static const UPDATE:String = "update"; public static const MOVE:String = "move"; mx_internal static const EXPAND:String = "expand"; public static const REPLACE:String = "replace"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const REFRESH:String = "refresh"; public static const RESET:String = "reset"; } }//package mx.events
Section 239
//DragEvent (mx.events.DragEvent) package mx.events { import mx.core.*; import flash.events.*; public class DragEvent extends MouseEvent { public var draggedItem:Object; public var action:String; public var dragInitiator:IUIComponent; public var dragSource:DragSource; public static const DRAG_DROP:String = "dragDrop"; public static const DRAG_COMPLETE:String = "dragComplete"; public static const DRAG_EXIT:String = "dragExit"; public static const DRAG_ENTER:String = "dragEnter"; public static const DRAG_START:String = "dragStart"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const DRAG_OVER:String = "dragOver"; public function DragEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=true, _arg4:IUIComponent=null, _arg5:DragSource=null, _arg6:String=null, _arg7:Boolean=false, _arg8:Boolean=false, _arg9:Boolean=false){ super(_arg1, _arg2, _arg3); this.dragInitiator = _arg4; this.dragSource = _arg5; this.action = _arg6; this.ctrlKey = _arg7; this.altKey = _arg8; this.shiftKey = _arg9; } override public function clone():Event{ var _local1:DragEvent = new DragEvent(type, bubbles, cancelable, dragInitiator, dragSource, action, ctrlKey, altKey, shiftKey); _local1.relatedObject = this.relatedObject; _local1.localX = this.localX; _local1.localY = this.localY; return (_local1); } } }//package mx.events
Section 240
//DynamicEvent (mx.events.DynamicEvent) package mx.events { import flash.events.*; public dynamic class DynamicEvent extends Event { mx_internal static const VERSION:String = "3.2.0.3794"; public function DynamicEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function clone():Event{ var _local2:String; var _local1:DynamicEvent = new DynamicEvent(type, bubbles, cancelable); for (_local2 in this) { _local1[_local2] = this[_local2]; }; return (_local1); } } }//package mx.events
Section 241
//EffectEvent (mx.events.EffectEvent) package mx.events { import flash.events.*; import mx.effects.*; public class EffectEvent extends Event { public var effectInstance:IEffectInstance; public static const EFFECT_START:String = "effectStart"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const EFFECT_END:String = "effectEnd"; public function EffectEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:IEffectInstance=null){ super(_arg1, _arg2, _arg3); this.effectInstance = _arg4; } override public function clone():Event{ return (new EffectEvent(type, bubbles, cancelable, effectInstance)); } } }//package mx.events
Section 242
//EventListenerRequest (mx.events.EventListenerRequest) package mx.events { import mx.core.*; import flash.events.*; public class EventListenerRequest extends SWFBridgeRequest { private var _priority:int; private var _useWeakReference:Boolean; private var _eventType:String; private var _useCapture:Boolean; public static const REMOVE_EVENT_LISTENER_REQUEST:String = "removeEventListenerRequest"; public static const ADD_EVENT_LISTENER_REQUEST:String = "addEventListenerRequest"; mx_internal static const VERSION:String = "3.2.0.3794"; public function EventListenerRequest(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=true, _arg4:String=null, _arg5:Boolean=false, _arg6:int=0, _arg7:Boolean=false){ super(_arg1, false, false); _eventType = _arg4; _useCapture = _arg5; _priority = _arg6; _useWeakReference = _arg7; } public function get priority():int{ return (_priority); } public function get useWeakReference():Boolean{ return (_useWeakReference); } public function get eventType():String{ return (_eventType); } override public function clone():Event{ return (new EventListenerRequest(type, bubbles, cancelable, eventType, useCapture, priority, useWeakReference)); } public function get useCapture():Boolean{ return (_useCapture); } public static function marshal(_arg1:Event):EventListenerRequest{ var _local2:Object = _arg1; return (new EventListenerRequest(_local2.type, _local2.bubbles, _local2.cancelable, _local2.eventType, _local2.useCapture, _local2.priority, _local2.useWeakReference)); } } }//package mx.events
Section 243
//FlexEvent (mx.events.FlexEvent) package mx.events { import mx.core.*; import flash.events.*; public class FlexEvent extends Event { public static const ADD:String = "add"; public static const TRANSFORM_CHANGE:String = "transformChange"; public static const ENTER_FRAME:String = "flexEventEnterFrame"; public static const INIT_COMPLETE:String = "initComplete"; public static const REMOVE:String = "remove"; public static const BUTTON_DOWN:String = "buttonDown"; public static const EXIT_STATE:String = "exitState"; public static const CREATION_COMPLETE:String = "creationComplete"; public static const REPEAT:String = "repeat"; public static const LOADING:String = "loading"; public static const RENDER:String = "flexEventRender"; public static const REPEAT_START:String = "repeatStart"; public static const INITIALIZE:String = "initialize"; public static const ENTER_STATE:String = "enterState"; public static const URL_CHANGED:String = "urlChanged"; public static const REPEAT_END:String = "repeatEnd"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const HIDE:String = "hide"; public static const ENTER:String = "enter"; public static const PRELOADER_DONE:String = "preloaderDone"; public static const CURSOR_UPDATE:String = "cursorUpdate"; public static const PREINITIALIZE:String = "preinitialize"; public static const INVALID:String = "invalid"; public static const IDLE:String = "idle"; public static const VALID:String = "valid"; public static const DATA_CHANGE:String = "dataChange"; public static const APPLICATION_COMPLETE:String = "applicationComplete"; public static const VALUE_COMMIT:String = "valueCommit"; public static const UPDATE_COMPLETE:String = "updateComplete"; public static const INIT_PROGRESS:String = "initProgress"; public static const SHOW:String = "show"; public function FlexEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function clone():Event{ return (new FlexEvent(type, bubbles, cancelable)); } } }//package mx.events
Section 244
//FlexMouseEvent (mx.events.FlexMouseEvent) package mx.events { import flash.display.*; import flash.events.*; public class FlexMouseEvent extends MouseEvent { public static const MOUSE_DOWN_OUTSIDE:String = "mouseDownOutside"; public static const MOUSE_WHEEL_OUTSIDE:String = "mouseWheelOutside"; mx_internal static const VERSION:String = "3.2.0.3794"; public function FlexMouseEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Number=0, _arg5:Number=0, _arg6:InteractiveObject=null, _arg7:Boolean=false, _arg8:Boolean=false, _arg9:Boolean=false, _arg10:Boolean=false, _arg11:int=0){ super(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8, _arg9, _arg10, _arg11); } override public function clone():Event{ return (new FlexMouseEvent(type, bubbles, cancelable, localX, localY, relatedObject, ctrlKey, altKey, shiftKey, buttonDown, delta)); } } }//package mx.events
Section 245
//FocusRequestDirection (mx.events.FocusRequestDirection) package mx.events { public final class FocusRequestDirection { public static const BACKWARD:String = "backward"; public static const FORWARD:String = "forward"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const BOTTOM:String = "bottom"; public static const TOP:String = "top"; } }//package mx.events
Section 246
//IndexChangedEvent (mx.events.IndexChangedEvent) package mx.events { import flash.display.*; import flash.events.*; public class IndexChangedEvent extends Event { public var newIndex:Number; public var triggerEvent:Event; public var relatedObject:DisplayObject; public var oldIndex:Number; public static const HEADER_SHIFT:String = "headerShift"; public static const CHANGE:String = "change"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const CHILD_INDEX_CHANGE:String = "childIndexChange"; public function IndexChangedEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:DisplayObject=null, _arg5:Number=-1, _arg6:Number=-1, _arg7:Event=null){ super(_arg1, _arg2, _arg3); this.relatedObject = _arg4; this.oldIndex = _arg5; this.newIndex = _arg6; this.triggerEvent = _arg7; } override public function clone():Event{ return (new IndexChangedEvent(type, bubbles, cancelable, relatedObject, oldIndex, newIndex, triggerEvent)); } } }//package mx.events
Section 247
//InterDragManagerEvent (mx.events.InterDragManagerEvent) package mx.events { import flash.display.*; import mx.core.*; import flash.events.*; public class InterDragManagerEvent extends DragEvent { public var dropTarget:DisplayObject; public var dragEventType:String; mx_internal static const VERSION:String = "3.2.0.3794"; public static const DISPATCH_DRAG_EVENT:String = "dispatchDragEvent"; public function InterDragManagerEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Number=NaN, _arg5:Number=NaN, _arg6:InteractiveObject=null, _arg7:Boolean=false, _arg8:Boolean=false, _arg9:Boolean=false, _arg10:Boolean=false, _arg11:int=0, _arg12:DisplayObject=null, _arg13:String=null, _arg14:IUIComponent=null, _arg15:DragSource=null, _arg16:String=null, _arg17:Object=null){ super(_arg1, false, false, _arg14, _arg15, _arg16, _arg7, _arg8, _arg9); this.dropTarget = _arg12; this.dragEventType = _arg13; this.draggedItem = _arg17; this.localX = _arg4; this.localY = _arg5; this.buttonDown = _arg10; this.delta = _arg11; this.relatedObject = _arg6; } override public function clone():Event{ var _local1:InterDragManagerEvent = new InterDragManagerEvent(type, bubbles, cancelable, localX, localY, relatedObject, ctrlKey, altKey, shiftKey, buttonDown, delta, dropTarget, dragEventType, dragInitiator, dragSource, action, draggedItem); return (_local1); } } }//package mx.events
Section 248
//InterManagerRequest (mx.events.InterManagerRequest) package mx.events { import mx.core.*; import flash.events.*; public class InterManagerRequest extends Event { public var value:Object; public var name:String; public static const TOOLTIP_MANAGER_REQUEST:String = "tooltipManagerRequest"; public static const SYSTEM_MANAGER_REQUEST:String = "systemManagerRequest"; public static const INIT_MANAGER_REQUEST:String = "initManagerRequest"; public static const DRAG_MANAGER_REQUEST:String = "dragManagerRequest"; public static const CURSOR_MANAGER_REQUEST:String = "cursorManagerRequest"; mx_internal static const VERSION:String = "3.2.0.3794"; public function InterManagerRequest(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:Object=null){ super(_arg1, _arg2, _arg3); this.name = _arg4; this.value = _arg5; } override public function clone():Event{ var _local1:InterManagerRequest = new InterManagerRequest(type, bubbles, cancelable, name, value); return (_local1); } } }//package mx.events
Section 249
//InvalidateRequestData (mx.events.InvalidateRequestData) package mx.events { import mx.core.*; public final class InvalidateRequestData { public static const SIZE:uint = 4; public static const PROPERTIES:uint = 2; mx_internal static const VERSION:String = "3.2.0.3794"; public static const DISPLAY_LIST:uint = 1; } }//package mx.events
Section 250
//ListEvent (mx.events.ListEvent) package mx.events { import flash.events.*; import mx.controls.listClasses.*; public class ListEvent extends Event { public var reason:String; public var itemRenderer:IListItemRenderer; public var rowIndex:int; public var columnIndex:int; public static const ITEM_ROLL_OUT:String = "itemRollOut"; public static const ITEM_DOUBLE_CLICK:String = "itemDoubleClick"; public static const ITEM_EDIT_BEGIN:String = "itemEditBegin"; public static const ITEM_ROLL_OVER:String = "itemRollOver"; public static const ITEM_EDIT_END:String = "itemEditEnd"; public static const ITEM_EDIT_BEGINNING:String = "itemEditBeginning"; public static const CHANGE:String = "change"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const ITEM_FOCUS_OUT:String = "itemFocusOut"; public static const ITEM_CLICK:String = "itemClick"; public static const ITEM_FOCUS_IN:String = "itemFocusIn"; public function ListEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:int=-1, _arg5:int=-1, _arg6:String=null, _arg7:IListItemRenderer=null){ super(_arg1, _arg2, _arg3); this.columnIndex = _arg4; this.rowIndex = _arg5; this.reason = _arg6; this.itemRenderer = _arg7; } override public function clone():Event{ return (new ListEvent(type, bubbles, cancelable, columnIndex, rowIndex, reason, itemRenderer)); } } }//package mx.events
Section 251
//ModuleEvent (mx.events.ModuleEvent) package mx.events { import mx.core.*; import flash.events.*; import mx.modules.*; public class ModuleEvent extends ProgressEvent { public var errorText:String; private var _module:IModuleInfo; public static const READY:String = "ready"; public static const ERROR:String = "error"; public static const PROGRESS:String = "progress"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const SETUP:String = "setup"; public static const UNLOAD:String = "unload"; public function ModuleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null, _arg7:IModuleInfo=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; this._module = _arg7; } public function get module():IModuleInfo{ if (_module){ return (_module); }; return ((target as IModuleInfo)); } override public function clone():Event{ return (new ModuleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText, module)); } } }//package mx.events
Section 252
//MoveEvent (mx.events.MoveEvent) package mx.events { import flash.events.*; public class MoveEvent extends Event { public var oldX:Number; public var oldY:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public static const MOVE:String = "move"; public function MoveEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Number=NaN, _arg5:Number=NaN){ super(_arg1, _arg2, _arg3); this.oldX = _arg4; this.oldY = _arg5; } override public function clone():Event{ return (new MoveEvent(type, bubbles, cancelable, oldX, oldY)); } } }//package mx.events
Section 253
//PropertyChangeEvent (mx.events.PropertyChangeEvent) package mx.events { import flash.events.*; public class PropertyChangeEvent extends Event { public var newValue:Object; public var kind:String; public var property:Object; public var oldValue:Object; public var source:Object; mx_internal static const VERSION:String = "3.2.0.3794"; public static const PROPERTY_CHANGE:String = "propertyChange"; public function PropertyChangeEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:Object=null){ super(_arg1, _arg2, _arg3); this.kind = _arg4; this.property = _arg5; this.oldValue = _arg6; this.newValue = _arg7; this.source = _arg8; } override public function clone():Event{ return (new PropertyChangeEvent(type, bubbles, cancelable, kind, property, oldValue, newValue, source)); } public static function createUpdateEvent(_arg1:Object, _arg2:Object, _arg3:Object, _arg4:Object):PropertyChangeEvent{ var _local5:PropertyChangeEvent = new PropertyChangeEvent(PROPERTY_CHANGE); _local5.kind = PropertyChangeEventKind.UPDATE; _local5.oldValue = _arg3; _local5.newValue = _arg4; _local5.source = _arg1; _local5.property = _arg2; return (_local5); } } }//package mx.events
Section 254
//PropertyChangeEventKind (mx.events.PropertyChangeEventKind) package mx.events { public final class PropertyChangeEventKind { mx_internal static const VERSION:String = "3.2.0.3794"; public static const UPDATE:String = "update"; public static const DELETE:String = "delete"; } }//package mx.events
Section 255
//ResizeEvent (mx.events.ResizeEvent) package mx.events { import flash.events.*; public class ResizeEvent extends Event { public var oldHeight:Number; public var oldWidth:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public static const RESIZE:String = "resize"; public function ResizeEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Number=NaN, _arg5:Number=NaN){ super(_arg1, _arg2, _arg3); this.oldWidth = _arg4; this.oldHeight = _arg5; } override public function clone():Event{ return (new ResizeEvent(type, bubbles, cancelable, oldWidth, oldHeight)); } } }//package mx.events
Section 256
//ResourceEvent (mx.events.ResourceEvent) package mx.events { import mx.core.*; import flash.events.*; public class ResourceEvent extends ProgressEvent { public var errorText:String; mx_internal static const VERSION:String = "3.2.0.3794"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public static const ERROR:String = "error"; public function ResourceEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; } override public function clone():Event{ return (new ResourceEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText)); } } }//package mx.events
Section 257
//RSLEvent (mx.events.RSLEvent) package mx.events { import mx.core.*; import flash.events.*; import flash.net.*; public class RSLEvent extends ProgressEvent { public var errorText:String; public var rslIndex:int; public var rslTotal:int; public var url:URLRequest; public static const RSL_PROGRESS:String = "rslProgress"; public static const RSL_ERROR:String = "rslError"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const RSL_COMPLETE:String = "rslComplete"; public function RSLEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:int=-1, _arg5:int=-1, _arg6:int=-1, _arg7:int=-1, _arg8:URLRequest=null, _arg9:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.rslIndex = _arg6; this.rslTotal = _arg7; this.url = _arg8; this.errorText = _arg9; } override public function clone():Event{ return (new RSLEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, rslIndex, rslTotal, url, errorText)); } } }//package mx.events
Section 258
//SandboxMouseEvent (mx.events.SandboxMouseEvent) package mx.events { import mx.core.*; import flash.events.*; public class SandboxMouseEvent extends Event { public var buttonDown:Boolean; public var altKey:Boolean; public var ctrlKey:Boolean; public var shiftKey:Boolean; public static const CLICK_SOMEWHERE:String = "clickSomewhere"; public static const MOUSE_UP_SOMEWHERE:String = "mouseUpSomewhere"; public static const DOUBLE_CLICK_SOMEWHERE:String = "coubleClickSomewhere"; public static const MOUSE_WHEEL_SOMEWHERE:String = "mouseWheelSomewhere"; public static const MOUSE_DOWN_SOMEWHERE:String = "mouseDownSomewhere"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const MOUSE_MOVE_SOMEWHERE:String = "mouseMoveSomewhere"; public function SandboxMouseEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Boolean=false, _arg5:Boolean=false, _arg6:Boolean=false, _arg7:Boolean=false){ super(_arg1, _arg2, _arg3); this.ctrlKey = _arg4; this.altKey = _arg5; this.shiftKey = _arg6; this.buttonDown = _arg7; } override public function clone():Event{ return (new SandboxMouseEvent(type, bubbles, cancelable, ctrlKey, altKey, shiftKey, buttonDown)); } public static function marshal(_arg1:Event):SandboxMouseEvent{ var _local2:Object = _arg1; return (new SandboxMouseEvent(_local2.type, _local2.bubbles, _local2.cancelable, _local2.ctrlKey, _local2.altKey, _local2.shiftKey, _local2.buttonDown)); } } }//package mx.events
Section 259
//ScrollEvent (mx.events.ScrollEvent) package mx.events { import flash.events.*; public class ScrollEvent extends Event { public var detail:String; public var delta:Number; public var position:Number; public var direction:String; mx_internal static const VERSION:String = "3.2.0.3794"; public static const SCROLL:String = "scroll"; public function ScrollEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:Number=NaN, _arg6:String=null, _arg7:Number=NaN){ super(_arg1, _arg2, _arg3); this.detail = _arg4; this.position = _arg5; this.direction = _arg6; this.delta = _arg7; } override public function clone():Event{ return (new ScrollEvent(type, bubbles, cancelable, detail, position, direction, delta)); } } }//package mx.events
Section 260
//ScrollEventDetail (mx.events.ScrollEventDetail) package mx.events { public final class ScrollEventDetail { public static const LINE_UP:String = "lineUp"; public static const AT_RIGHT:String = "atRight"; public static const PAGE_UP:String = "pageUp"; public static const LINE_DOWN:String = "lineDown"; public static const PAGE_DOWN:String = "pageDown"; public static const AT_LEFT:String = "atLeft"; public static const PAGE_RIGHT:String = "pageRight"; public static const THUMB_POSITION:String = "thumbPosition"; public static const AT_TOP:String = "atTop"; public static const LINE_LEFT:String = "lineLeft"; public static const AT_BOTTOM:String = "atBottom"; public static const LINE_RIGHT:String = "lineRight"; public static const THUMB_TRACK:String = "thumbTrack"; public static const PAGE_LEFT:String = "pageLeft"; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.events
Section 261
//ScrollEventDirection (mx.events.ScrollEventDirection) package mx.events { public final class ScrollEventDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.events
Section 262
//StateChangeEvent (mx.events.StateChangeEvent) package mx.events { import flash.events.*; public class StateChangeEvent extends Event { public var newState:String; public var oldState:String; public static const CURRENT_STATE_CHANGING:String = "currentStateChanging"; public static const CURRENT_STATE_CHANGE:String = "currentStateChange"; mx_internal static const VERSION:String = "3.2.0.3794"; public function StateChangeEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:String=null){ super(_arg1, _arg2, _arg3); this.oldState = _arg4; this.newState = _arg5; } override public function clone():Event{ return (new StateChangeEvent(type, bubbles, cancelable, oldState, newState)); } } }//package mx.events
Section 263
//StyleEvent (mx.events.StyleEvent) package mx.events { import mx.core.*; import flash.events.*; public class StyleEvent extends ProgressEvent { public var errorText:String; mx_internal static const VERSION:String = "3.2.0.3794"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public static const ERROR:String = "error"; public function StyleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; } override public function clone():Event{ return (new StyleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText)); } } }//package mx.events
Section 264
//SWFBridgeEvent (mx.events.SWFBridgeEvent) package mx.events { import mx.core.*; import flash.events.*; public class SWFBridgeEvent extends Event { public var data:Object; public static const BRIDGE_FOCUS_MANAGER_ACTIVATE:String = "bridgeFocusManagerActivate"; public static const BRIDGE_WINDOW_ACTIVATE:String = "bridgeWindowActivate"; public static const BRIDGE_WINDOW_DEACTIVATE:String = "brdigeWindowDeactivate"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const BRIDGE_NEW_APPLICATION:String = "bridgeNewApplication"; public static const BRIDGE_APPLICATION_UNLOADING:String = "bridgeApplicationUnloading"; public static const BRIDGE_APPLICATION_ACTIVATE:String = "bridgeApplicationActivate"; public function SWFBridgeEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Object=null){ super(_arg1, _arg2, _arg3); this.data = _arg4; } override public function clone():Event{ return (new SWFBridgeEvent(type, bubbles, cancelable, data)); } public static function marshal(_arg1:Event):SWFBridgeEvent{ var _local2:Object = _arg1; return (new SWFBridgeEvent(_local2.type, _local2.bubbles, _local2.cancelable, _local2.data)); } } }//package mx.events
Section 265
//SWFBridgeRequest (mx.events.SWFBridgeRequest) package mx.events { import mx.core.*; import flash.events.*; public class SWFBridgeRequest extends Event { public var requestor:IEventDispatcher; public var data:Object; public static const SHOW_MOUSE_CURSOR_REQUEST:String = "showMouseCursorRequest"; public static const DEACTIVATE_POP_UP_REQUEST:String = "deactivatePopUpRequest"; public static const SET_ACTUAL_SIZE_REQUEST:String = "setActualSizeRequest"; public static const MOVE_FOCUS_REQUEST:String = "moveFocusRequest"; public static const GET_VISIBLE_RECT_REQUEST:String = "getVisibleRectRequest"; public static const ADD_POP_UP_PLACE_HOLDER_REQUEST:String = "addPopUpPlaceHolderRequest"; public static const REMOVE_POP_UP_PLACE_HOLDER_REQUEST:String = "removePopUpPlaceHolderRequest"; public static const RESET_MOUSE_CURSOR_REQUEST:String = "resetMouseCursorRequest"; public static const ADD_POP_UP_REQUEST:String = "addPopUpRequest"; public static const GET_SIZE_REQUEST:String = "getSizeRequest"; public static const SHOW_MODAL_WINDOW_REQUEST:String = "showModalWindowRequest"; public static const ACTIVATE_FOCUS_REQUEST:String = "activateFocusRequest"; public static const DEACTIVATE_FOCUS_REQUEST:String = "deactivateFocusRequest"; public static const HIDE_MOUSE_CURSOR_REQUEST:String = "hideMouseCursorRequest"; public static const ACTIVATE_POP_UP_REQUEST:String = "activatePopUpRequest"; public static const IS_BRIDGE_CHILD_REQUEST:String = "isBridgeChildRequest"; public static const CAN_ACTIVATE_POP_UP_REQUEST:String = "canActivateRequestPopUpRequest"; public static const HIDE_MODAL_WINDOW_REQUEST:String = "hideModalWindowRequest"; public static const INVALIDATE_REQUEST:String = "invalidateRequest"; public static const SET_SHOW_FOCUS_INDICATOR_REQUEST:String = "setShowFocusIndicatorRequest"; public static const CREATE_MODAL_WINDOW_REQUEST:String = "createModalWindowRequest"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const REMOVE_POP_UP_REQUEST:String = "removePopUpRequest"; public function SWFBridgeRequest(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:IEventDispatcher=null, _arg5:Object=null){ super(_arg1, _arg2, _arg3); this.requestor = _arg4; this.data = _arg5; } override public function clone():Event{ return (new SWFBridgeRequest(type, bubbles, cancelable, requestor, data)); } public static function marshal(_arg1:Event):SWFBridgeRequest{ var _local2:Object = _arg1; return (new SWFBridgeRequest(_local2.type, _local2.bubbles, _local2.cancelable, _local2.requestor, _local2.data)); } } }//package mx.events
Section 266
//ToolTipEvent (mx.events.ToolTipEvent) package mx.events { import mx.core.*; import flash.events.*; public class ToolTipEvent extends Event { public var toolTip:IToolTip; public static const TOOL_TIP_SHOWN:String = "toolTipShown"; public static const TOOL_TIP_CREATE:String = "toolTipCreate"; public static const TOOL_TIP_SHOW:String = "toolTipShow"; public static const TOOL_TIP_HIDE:String = "toolTipHide"; public static const TOOL_TIP_END:String = "toolTipEnd"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const TOOL_TIP_START:String = "toolTipStart"; public function ToolTipEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:IToolTip=null){ super(_arg1, _arg2, _arg3); this.toolTip = _arg4; } override public function clone():Event{ return (new ToolTipEvent(type, bubbles, cancelable, toolTip)); } } }//package mx.events
Section 267
//TweenEvent (mx.events.TweenEvent) package mx.events { import flash.events.*; public class TweenEvent extends Event { public var value:Object; public static const TWEEN_END:String = "tweenEnd"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const TWEEN_UPDATE:String = "tweenUpdate"; public static const TWEEN_START:String = "tweenStart"; public function TweenEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Object=null){ super(_arg1, _arg2, _arg3); this.value = _arg4; } override public function clone():Event{ return (new TweenEvent(type, bubbles, cancelable, value)); } } }//package mx.events
Section 268
//ValidationResultEvent (mx.events.ValidationResultEvent) package mx.events { import flash.events.*; public class ValidationResultEvent extends Event { public var results:Array; public var field:String; public static const INVALID:String = "invalid"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const VALID:String = "valid"; public function ValidationResultEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:Array=null){ super(_arg1, _arg2, _arg3); this.field = _arg4; this.results = _arg5; } public function get message():String{ var _local1 = ""; var _local2:int = results.length; var _local3:int; while (_local3 < _local2) { if (results[_local3].isError){ _local1 = (_local1 + ((_local1 == "")) ? "" : "\n"); _local1 = (_local1 + results[_local3].errorMessage); }; _local3++; }; return (_local1); } override public function clone():Event{ return (new ValidationResultEvent(type, bubbles, cancelable, field, results)); } } }//package mx.events
Section 269
//RectangularDropShadow (mx.graphics.RectangularDropShadow) package mx.graphics { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.utils.*; import flash.filters.*; public class RectangularDropShadow { private var leftShadow:BitmapData; private var _tlRadius:Number;// = 0 private var _trRadius:Number;// = 0 private var _angle:Number;// = 45 private var topShadow:BitmapData; private var _distance:Number;// = 4 private var rightShadow:BitmapData; private var _alpha:Number;// = 0.4 private var shadow:BitmapData; private var _brRadius:Number;// = 0 private var _blRadius:Number;// = 0 private var _color:int;// = 0 private var bottomShadow:BitmapData; private var changed:Boolean;// = true mx_internal static const VERSION:String = "3.2.0.3794"; public function get blRadius():Number{ return (_blRadius); } public function set brRadius(_arg1:Number):void{ if (_brRadius != _arg1){ _brRadius = _arg1; changed = true; }; } public function set color(_arg1:int):void{ if (_color != _arg1){ _color = _arg1; changed = true; }; } public function drawShadow(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; if (changed){ createShadowBitmaps(); changed = false; }; _arg4 = Math.ceil(_arg4); _arg5 = Math.ceil(_arg5); var _local6:int = (leftShadow) ? leftShadow.width : 0; var _local7:int = (rightShadow) ? rightShadow.width : 0; var _local8:int = (topShadow) ? topShadow.height : 0; var _local9:int = (bottomShadow) ? bottomShadow.height : 0; var _local10:int = (_local6 + _local7); var _local11:int = (_local8 + _local9); var _local12:Number = ((_arg5 + _local11) / 2); var _local13:Number = ((_arg4 + _local10) / 2); var _local14:Matrix = new Matrix(); if (((leftShadow) || (topShadow))){ _local15 = Math.min((tlRadius + _local10), _local13); _local16 = Math.min((tlRadius + _local11), _local12); _local14.tx = (_arg2 - _local6); _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((_arg2 - _local6), (_arg3 - _local8), _local15, _local16); _arg1.endFill(); }; if (((rightShadow) || (topShadow))){ _local17 = Math.min((trRadius + _local10), _local13); _local18 = Math.min((trRadius + _local11), _local12); _local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width); _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((((_arg2 + _arg4) + _local7) - _local17), (_arg3 - _local8), _local17, _local18); _arg1.endFill(); }; if (((leftShadow) || (bottomShadow))){ _local19 = Math.min((blRadius + _local10), _local13); _local20 = Math.min((blRadius + _local11), _local12); _local14.tx = (_arg2 - _local6); _local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((_arg2 - _local6), (((_arg3 + _arg5) + _local9) - _local20), _local19, _local20); _arg1.endFill(); }; if (((rightShadow) || (bottomShadow))){ _local21 = Math.min((brRadius + _local10), _local13); _local22 = Math.min((brRadius + _local11), _local12); _local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width); _local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((((_arg2 + _arg4) + _local7) - _local21), (((_arg3 + _arg5) + _local9) - _local22), _local21, _local22); _arg1.endFill(); }; if (leftShadow){ _local14.tx = (_arg2 - _local6); _local14.ty = 0; _arg1.beginBitmapFill(leftShadow, _local14); _arg1.drawRect((_arg2 - _local6), ((_arg3 - _local8) + _local16), _local6, ((((_arg5 + _local8) + _local9) - _local16) - _local20)); _arg1.endFill(); }; if (rightShadow){ _local14.tx = (_arg2 + _arg4); _local14.ty = 0; _arg1.beginBitmapFill(rightShadow, _local14); _arg1.drawRect((_arg2 + _arg4), ((_arg3 - _local8) + _local18), _local7, ((((_arg5 + _local8) + _local9) - _local18) - _local22)); _arg1.endFill(); }; if (topShadow){ _local14.tx = 0; _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(topShadow, _local14); _arg1.drawRect(((_arg2 - _local6) + _local15), (_arg3 - _local8), ((((_arg4 + _local6) + _local7) - _local15) - _local17), _local8); _arg1.endFill(); }; if (bottomShadow){ _local14.tx = 0; _local14.ty = (_arg3 + _arg5); _arg1.beginBitmapFill(bottomShadow, _local14); _arg1.drawRect(((_arg2 - _local6) + _local19), (_arg3 + _arg5), ((((_arg4 + _local6) + _local7) - _local19) - _local21), _local9); _arg1.endFill(); }; } public function get brRadius():Number{ return (_brRadius); } public function get angle():Number{ return (_angle); } private function createShadowBitmaps():void{ var _local1:Number = ((Math.max(tlRadius, blRadius) + (2 * distance)) + Math.max(trRadius, brRadius)); var _local2:Number = ((Math.max(tlRadius, trRadius) + (2 * distance)) + Math.max(blRadius, brRadius)); if ((((_local1 < 0)) || ((_local2 < 0)))){ return; }; var _local3:Shape = new FlexShape(); var _local4:Graphics = _local3.graphics; _local4.beginFill(0xFFFFFF); GraphicsUtil.drawRoundRectComplex(_local4, 0, 0, _local1, _local2, tlRadius, trRadius, blRadius, brRadius); _local4.endFill(); var _local5:BitmapData = new BitmapData(_local1, _local2, true, 0); _local5.draw(_local3, new Matrix()); var _local6:DropShadowFilter = new DropShadowFilter(distance, angle, color, alpha); _local6.knockout = true; var _local7:Rectangle = new Rectangle(0, 0, _local1, _local2); var _local8:Rectangle = _local5.generateFilterRect(_local7, _local6); var _local9:Number = (_local7.left - _local8.left); var _local10:Number = (_local8.right - _local7.right); var _local11:Number = (_local7.top - _local8.top); var _local12:Number = (_local8.bottom - _local7.bottom); shadow = new BitmapData(_local8.width, _local8.height); shadow.applyFilter(_local5, _local7, new Point(_local9, _local11), _local6); var _local13:Point = new Point(0, 0); var _local14:Rectangle = new Rectangle(); if (_local9 > 0){ _local14.x = 0; _local14.y = ((tlRadius + _local11) + _local12); _local14.width = _local9; _local14.height = 1; leftShadow = new BitmapData(_local9, 1); leftShadow.copyPixels(shadow, _local14, _local13); } else { leftShadow = null; }; if (_local10 > 0){ _local14.x = (shadow.width - _local10); _local14.y = ((trRadius + _local11) + _local12); _local14.width = _local10; _local14.height = 1; rightShadow = new BitmapData(_local10, 1); rightShadow.copyPixels(shadow, _local14, _local13); } else { rightShadow = null; }; if (_local11 > 0){ _local14.x = ((tlRadius + _local9) + _local10); _local14.y = 0; _local14.width = 1; _local14.height = _local11; topShadow = new BitmapData(1, _local11); topShadow.copyPixels(shadow, _local14, _local13); } else { topShadow = null; }; if (_local12 > 0){ _local14.x = ((blRadius + _local9) + _local10); _local14.y = (shadow.height - _local12); _local14.width = 1; _local14.height = _local12; bottomShadow = new BitmapData(1, _local12); bottomShadow.copyPixels(shadow, _local14, _local13); } else { bottomShadow = null; }; } public function get alpha():Number{ return (_alpha); } public function get color():int{ return (_color); } public function set angle(_arg1:Number):void{ if (_angle != _arg1){ _angle = _arg1; changed = true; }; } public function set trRadius(_arg1:Number):void{ if (_trRadius != _arg1){ _trRadius = _arg1; changed = true; }; } public function set tlRadius(_arg1:Number):void{ if (_tlRadius != _arg1){ _tlRadius = _arg1; changed = true; }; } public function get trRadius():Number{ return (_trRadius); } public function set distance(_arg1:Number):void{ if (_distance != _arg1){ _distance = _arg1; changed = true; }; } public function get distance():Number{ return (_distance); } public function get tlRadius():Number{ return (_tlRadius); } public function set alpha(_arg1:Number):void{ if (_alpha != _arg1){ _alpha = _arg1; changed = true; }; } public function set blRadius(_arg1:Number):void{ if (_blRadius != _arg1){ _blRadius = _arg1; changed = true; }; } } }//package mx.graphics
Section 270
//RoundedRectangle (mx.graphics.RoundedRectangle) package mx.graphics { import flash.geom.*; import mx.core.*; public class RoundedRectangle extends Rectangle { public var cornerRadius:Number;// = 0 mx_internal static const VERSION:String = "3.2.0.3794"; public function RoundedRectangle(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0, _arg5:Number=0){ super(_arg1, _arg2, _arg3, _arg4); this.cornerRadius = _arg5; } } }//package mx.graphics
Section 271
//DragProxy (mx.managers.dragClasses.DragProxy) package mx.managers.dragClasses { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.effects.*; public class DragProxy extends UIComponent { public var allowMove:Boolean;// = true private var cursorClass:Class;// = null public var action:String; private var sandboxRoot:IEventDispatcher; public var target:DisplayObject;// = null public var dragInitiator:IUIComponent; public var xOffset:Number; public var yOffset:Number; public var dragSource:DragSource; private var cursorID:int;// = 0 private var lastMouseEvent:MouseEvent; public var startX:Number; public var startY:Number; private var lastKeyEvent:KeyboardEvent; mx_internal static const VERSION:String = "3.2.0.3794"; private static var $visible:QName = new QName(mx_internal, "$visible"); public function DragProxy(_arg1:IUIComponent, _arg2:DragSource){ this.dragInitiator = _arg1; this.dragSource = _arg2; var _local3:ISystemManager = (_arg1.systemManager.topLevelSystemManager as ISystemManager); var _local4:IEventDispatcher = (sandboxRoot = _local3.getSandboxRoot()); _local4.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true); _local4.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true); _local4.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); _local4.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); } public function mouseUpHandler(_arg1:MouseEvent):void{ var _local2:DragEvent; var _local6:Point; var _local7:Move; var _local8:Zoom; var _local9:Move; var _local3:ISystemManager = (dragInitiator.systemManager.topLevelSystemManager as ISystemManager); var _local4:IEventDispatcher = sandboxRoot; _local4.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true); _local4.removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true); _local4.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); _local4.removeEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, mouseLeaveHandler); _local4.removeEventListener(KeyboardEvent.KEY_UP, keyUpHandler); var _local5:Object = automationDelegate; if (((target) && (!((action == DragManager.NONE))))){ _local2 = new DragEvent(DragEvent.DRAG_DROP); _local2.dragInitiator = dragInitiator; _local2.dragSource = dragSource; _local2.action = action; _local2.ctrlKey = _arg1.ctrlKey; _local2.altKey = _arg1.altKey; _local2.shiftKey = _arg1.shiftKey; _local6 = new Point(); _local6.x = lastMouseEvent.localX; _local6.y = lastMouseEvent.localY; _local6 = DisplayObject(lastMouseEvent.target).localToGlobal(_local6); _local6 = DisplayObject(target).globalToLocal(_local6); _local2.localX = _local6.x; _local2.localY = _local6.y; if (_local5){ _local5.recordAutomatableDragDrop(target, _local2); }; _dispatchDragEvent(target, _local2); } else { action = DragManager.NONE; }; if (action == DragManager.NONE){ _local7 = new Move(this); _local7.addEventListener(EffectEvent.EFFECT_END, effectEndHandler); _local7.xFrom = x; _local7.yFrom = y; _local7.xTo = startX; _local7.yTo = startY; _local7.duration = 200; _local7.play(); } else { _local8 = new Zoom(this); new Zoom(this).zoomWidthFrom = (_local8.zoomHeightFrom = 1); _local8.zoomWidthTo = (_local8.zoomHeightTo = 0); _local8.duration = 200; _local8.play(); _local9 = new Move(this); _local9.addEventListener(EffectEvent.EFFECT_END, effectEndHandler); _local9.xFrom = x; _local9.yFrom = this.y; _local9.xTo = parent.mouseX; _local9.yTo = parent.mouseY; _local9.duration = 200; _local9.play(); }; _local2 = new DragEvent(DragEvent.DRAG_COMPLETE); _local2.dragInitiator = dragInitiator; _local2.dragSource = dragSource; _local2.relatedObject = InteractiveObject(target); _local2.action = action; _local2.ctrlKey = _arg1.ctrlKey; _local2.altKey = _arg1.altKey; _local2.shiftKey = _arg1.shiftKey; dragInitiator.dispatchEvent(_local2); if (((_local5) && ((action == DragManager.NONE)))){ _local5.recordAutomatableDragCancel(dragInitiator, _local2); }; cursorManager.removeCursor(cursorID); cursorID = CursorManager.NO_CURSOR; this.lastMouseEvent = null; } private function isSameOrChildApplicationDomain(_arg1:Object):Boolean{ var _local2:DisplayObject = SystemManager.getSWFRoot(_arg1); if (_local2){ return (true); }; var _local3:InterManagerRequest = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST); _local3.name = "hasSWFBridges"; sandboxRoot.dispatchEvent(_local3); if (!_local3.value){ return (true); }; return (false); } public function showFeedback():void{ var _local1:Class = cursorClass; var _local2:CSSStyleDeclaration = StyleManager.getStyleDeclaration("DragManager"); if (action == DragManager.COPY){ _local1 = _local2.getStyle("copyCursor"); } else { if (action == DragManager.LINK){ _local1 = _local2.getStyle("linkCursor"); } else { if (action == DragManager.NONE){ _local1 = _local2.getStyle("rejectCursor"); } else { _local1 = _local2.getStyle("moveCursor"); }; }; }; if (_local1 != cursorClass){ cursorClass = _local1; if (cursorID != CursorManager.NO_CURSOR){ cursorManager.removeCursor(cursorID); }; cursorID = cursorManager.setCursor(cursorClass, 2, 0, 0); }; } override public function initialize():void{ super.initialize(); dragInitiator.systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, mouseLeaveHandler); if (!getFocus()){ setFocus(); }; } public function mouseMoveHandler(_arg1:MouseEvent):void{ var _local2:DragEvent; var _local3:DisplayObject; var _local4:int; var _local10:Array; var _local14:Boolean; var _local15:DisplayObject; lastMouseEvent = _arg1; var _local5:Point = new Point(); var _local6:Point = new Point(_arg1.localX, _arg1.localY); var _local7:Point = DisplayObject(_arg1.target).localToGlobal(_local6); _local6 = DisplayObject(sandboxRoot).globalToLocal(_local7); var _local8:Number = _local6.x; var _local9:Number = _local6.y; x = (_local8 - xOffset); y = (_local9 - yOffset); if (!_arg1){ return; }; var _local11:IEventDispatcher = systemManager.getTopLevelRoot(); _local10 = []; DragProxy.getObjectsUnderPoint(DisplayObject(sandboxRoot), _local7, _local10); var _local12:DisplayObject; var _local13:int = (_local10.length - 1); while (_local13 >= 0) { _local12 = _local10[_local13]; if (((!((_local12 == this))) && (!(contains(_local12))))){ break; }; _local13--; }; if (target){ _local14 = false; _local15 = target; _local3 = _local12; while (_local3) { if (_local3 == target){ dispatchDragEvent(DragEvent.DRAG_OVER, _arg1, _local3); _local14 = true; break; } else { dispatchDragEvent(DragEvent.DRAG_ENTER, _arg1, _local3); if (target == _local3){ _local14 = false; break; }; }; _local3 = _local3.parent; }; if (!_local14){ dispatchDragEvent(DragEvent.DRAG_EXIT, _arg1, _local15); if (target == _local15){ target = null; }; }; }; if (!target){ action = DragManager.MOVE; _local3 = _local12; while (_local3) { if (_local3 != this){ dispatchDragEvent(DragEvent.DRAG_ENTER, _arg1, _local3); if (target){ break; }; }; _local3 = _local3.parent; }; if (!target){ action = DragManager.NONE; }; }; showFeedback(); } private function dispatchDragEvent(_arg1:String, _arg2:MouseEvent, _arg3:Object):void{ var _local4:DragEvent = new DragEvent(_arg1); var _local5:Point = new Point(); _local4.dragInitiator = dragInitiator; _local4.dragSource = dragSource; _local4.action = action; _local4.ctrlKey = _arg2.ctrlKey; _local4.altKey = _arg2.altKey; _local4.shiftKey = _arg2.shiftKey; _local5.x = lastMouseEvent.localX; _local5.y = lastMouseEvent.localY; _local5 = DisplayObject(lastMouseEvent.target).localToGlobal(_local5); _local5 = DisplayObject(_arg3).globalToLocal(_local5); _local4.localX = _local5.x; _local4.localY = _local5.y; _dispatchDragEvent(DisplayObject(_arg3), _local4); } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ checkKeyEvent(_arg1); } private function effectEndHandler(_arg1:EffectEvent):void{ var _local2 = DragManager; _local2.mx_internal::endDrag(); } public function checkKeyEvent(_arg1:KeyboardEvent):void{ var _local2:DragEvent; var _local3:Point; if (target){ if (((((lastKeyEvent) && ((_arg1.type == lastKeyEvent.type)))) && ((_arg1.keyCode == lastKeyEvent.keyCode)))){ return; }; lastKeyEvent = _arg1; _local2 = new DragEvent(DragEvent.DRAG_OVER); _local2.dragInitiator = dragInitiator; _local2.dragSource = dragSource; _local2.action = action; _local2.ctrlKey = _arg1.ctrlKey; _local2.altKey = _arg1.altKey; _local2.shiftKey = _arg1.shiftKey; _local3 = new Point(); _local3.x = lastMouseEvent.localX; _local3.y = lastMouseEvent.localY; _local3 = DisplayObject(lastMouseEvent.target).localToGlobal(_local3); _local3 = DisplayObject(target).globalToLocal(_local3); _local2.localX = _local3.x; _local2.localY = _local3.y; _dispatchDragEvent(target, _local2); showFeedback(); }; } public function mouseLeaveHandler(_arg1:Event):void{ mouseUpHandler(lastMouseEvent); } private function _dispatchDragEvent(_arg1:DisplayObject, _arg2:DragEvent):void{ var _local3:InterManagerRequest; var _local4:InterDragManagerEvent; if (isSameOrChildApplicationDomain(_arg1)){ _arg1.dispatchEvent(_arg2); } else { _local3 = new InterManagerRequest(InterManagerRequest.INIT_MANAGER_REQUEST); _local3.name = "mx.managers::IDragManager"; sandboxRoot.dispatchEvent(_local3); _local4 = new InterDragManagerEvent(InterDragManagerEvent.DISPATCH_DRAG_EVENT, false, false, _arg2.localX, _arg2.localY, _arg2.relatedObject, _arg2.ctrlKey, _arg2.altKey, _arg2.shiftKey, _arg2.buttonDown, _arg2.delta, _arg1, _arg2.type, _arg2.dragInitiator, _arg2.dragSource, _arg2.action, _arg2.draggedItem); sandboxRoot.dispatchEvent(_local4); }; } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ checkKeyEvent(_arg1); } public function stage_mouseMoveHandler(_arg1:MouseEvent):void{ if (_arg1.target != stage){ return; }; mouseMoveHandler(_arg1); } private static function getObjectsUnderPoint(_arg1:DisplayObject, _arg2:Point, _arg3:Array):void{ var doc:DisplayObjectContainer; var rc:Object; var n:int; var i:int; var child:DisplayObject; var obj = _arg1; var pt = _arg2; var arr = _arg3; if (!obj.visible){ return; }; try { if (!obj[$visible]){ return; }; } catch(e:Error) { }; if (obj.hitTestPoint(pt.x, pt.y, true)){ if ((((obj is InteractiveObject)) && (InteractiveObject(obj).mouseEnabled))){ arr.push(obj); }; if ((obj is DisplayObjectContainer)){ doc = (obj as DisplayObjectContainer); if (doc.mouseChildren){ if (("rawChildren" in doc)){ rc = doc["rawChildren"]; n = rc.numChildren; i = 0; while (i < n) { try { getObjectsUnderPoint(rc.getChildAt(i), pt, arr); } catch(e:Error) { }; i = (i + 1); }; } else { if (doc.numChildren){ n = doc.numChildren; i = 0; while (i < n) { try { child = doc.getChildAt(i); getObjectsUnderPoint(child, pt, arr); } catch(e:Error) { }; i = (i + 1); }; }; }; }; }; }; } } }//package mx.managers.dragClasses
Section 272
//PriorityQueue (mx.managers.layoutClasses.PriorityQueue) package mx.managers.layoutClasses { import flash.display.*; import mx.core.*; import mx.managers.*; public class PriorityQueue { private var maxPriority:int;// = -1 private var arrayOfArrays:Array; private var minPriority:int;// = 0 mx_internal static const VERSION:String = "3.2.0.3794"; public function PriorityQueue(){ arrayOfArrays = []; super(); } public function addObject(_arg1:Object, _arg2:int):void{ if (!arrayOfArrays[_arg2]){ arrayOfArrays[_arg2] = []; }; arrayOfArrays[_arg2].push(_arg1); if (maxPriority < minPriority){ minPriority = (maxPriority = _arg2); } else { if (_arg2 < minPriority){ minPriority = _arg2; }; if (_arg2 > maxPriority){ maxPriority = _arg2; }; }; } public function removeSmallest():Object{ var _local1:Object; if (minPriority <= maxPriority){ while (((!(arrayOfArrays[minPriority])) || ((arrayOfArrays[minPriority].length == 0)))) { minPriority++; if (minPriority > maxPriority){ return (null); }; }; _local1 = arrayOfArrays[minPriority].shift(); while (((!(arrayOfArrays[minPriority])) || ((arrayOfArrays[minPriority].length == 0)))) { minPriority++; if (minPriority > maxPriority){ break; }; }; }; return (_local1); } public function removeLargestChild(_arg1:ILayoutManagerClient):Object{ var _local5:int; var _local2:Object; var _local3:int = maxPriority; var _local4:int = _arg1.nestLevel; while (_local4 <= _local3) { if (((arrayOfArrays[_local3]) && ((arrayOfArrays[_local3].length > 0)))){ _local5 = 0; while (_local5 < arrayOfArrays[_local3].length) { if (contains(DisplayObject(_arg1), arrayOfArrays[_local3][_local5])){ _local2 = arrayOfArrays[_local3][_local5]; arrayOfArrays[_local3].splice(_local5, 1); return (_local2); }; _local5++; }; _local3--; } else { if (_local3 == maxPriority){ maxPriority--; }; _local3--; if (_local3 < _local4){ break; }; }; }; return (_local2); } public function isEmpty():Boolean{ return ((minPriority > maxPriority)); } public function removeLargest():Object{ var _local1:Object; if (minPriority <= maxPriority){ while (((!(arrayOfArrays[maxPriority])) || ((arrayOfArrays[maxPriority].length == 0)))) { maxPriority--; if (maxPriority < minPriority){ return (null); }; }; _local1 = arrayOfArrays[maxPriority].shift(); while (((!(arrayOfArrays[maxPriority])) || ((arrayOfArrays[maxPriority].length == 0)))) { maxPriority--; if (maxPriority < minPriority){ break; }; }; }; return (_local1); } public function removeSmallestChild(_arg1:ILayoutManagerClient):Object{ var _local4:int; var _local2:Object; var _local3:int = _arg1.nestLevel; while (_local3 <= maxPriority) { if (((arrayOfArrays[_local3]) && ((arrayOfArrays[_local3].length > 0)))){ _local4 = 0; while (_local4 < arrayOfArrays[_local3].length) { if (contains(DisplayObject(_arg1), arrayOfArrays[_local3][_local4])){ _local2 = arrayOfArrays[_local3][_local4]; arrayOfArrays[_local3].splice(_local4, 1); return (_local2); }; _local4++; }; _local3++; } else { if (_local3 == minPriority){ minPriority++; }; _local3++; if (_local3 > maxPriority){ break; }; }; }; return (_local2); } public function removeAll():void{ arrayOfArrays.splice(0); minPriority = 0; maxPriority = -1; } private function contains(_arg1:DisplayObject, _arg2:DisplayObject):Boolean{ var _local3:IChildList; if ((_arg1 is IRawChildrenContainer)){ _local3 = IRawChildrenContainer(_arg1).rawChildren; return (_local3.contains(_arg2)); }; if ((_arg1 is DisplayObjectContainer)){ return (DisplayObjectContainer(_arg1).contains(_arg2)); }; return ((_arg1 == _arg2)); } } }//package mx.managers.layoutClasses
Section 273
//EventProxy (mx.managers.systemClasses.EventProxy) package mx.managers.systemClasses { import mx.managers.*; import flash.events.*; import mx.events.*; import mx.utils.*; public class EventProxy extends EventDispatcher { private var systemManager:ISystemManager; public function EventProxy(_arg1:ISystemManager){ this.systemManager = _arg1; } public function marshalListener(_arg1:Event):void{ var _local2:MouseEvent; var _local3:SandboxMouseEvent; if ((_arg1 is MouseEvent)){ _local2 = (_arg1 as MouseEvent); _local3 = new SandboxMouseEvent(EventUtil.mouseEventMap[_arg1.type], false, false, _local2.ctrlKey, _local2.altKey, _local2.shiftKey, _local2.buttonDown); systemManager.dispatchEventFromSWFBridges(_local3, null, true, true); }; } } }//package mx.managers.systemClasses
Section 274
//PlaceholderData (mx.managers.systemClasses.PlaceholderData) package mx.managers.systemClasses { import flash.events.*; public class PlaceholderData { public var bridge:IEventDispatcher; public var data:Object; public var id:String; public function PlaceholderData(_arg1:String, _arg2:IEventDispatcher, _arg3:Object){ this.id = _arg1; this.bridge = _arg2; this.data = _arg3; } } }//package mx.managers.systemClasses
Section 275
//RemotePopUp (mx.managers.systemClasses.RemotePopUp) package mx.managers.systemClasses { public class RemotePopUp { public var window:Object; public var bridge:Object; public function RemotePopUp(_arg1:Object, _arg2:Object){ this.window = _arg1; this.bridge = _arg2; } } }//package mx.managers.systemClasses
Section 276
//StageEventProxy (mx.managers.systemClasses.StageEventProxy) package mx.managers.systemClasses { import flash.display.*; import flash.events.*; public class StageEventProxy { private var listener:Function; public function StageEventProxy(_arg1:Function){ this.listener = _arg1; } public function stageListener(_arg1:Event):void{ if ((_arg1.target is Stage)){ listener(_arg1); }; } } }//package mx.managers.systemClasses
Section 277
//BrowserManager (mx.managers.BrowserManager) package mx.managers { import mx.core.*; public class BrowserManager { mx_internal static const VERSION:String = "3.2.0.3794"; private static var implClassDependency:BrowserManagerImpl; private static var instance:IBrowserManager; public static function getInstance():IBrowserManager{ if (!instance){ instance = IBrowserManager(Singleton.getInstance("mx.managers::IBrowserManager")); }; return (instance); } } }//package mx.managers
Section 278
//BrowserManagerImpl (mx.managers.BrowserManagerImpl) package mx.managers { import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import flash.external.*; public class BrowserManagerImpl extends EventDispatcher implements IBrowserManager { private var _defaultFragment:String;// = "" private var _title:String; private var browserMode:Boolean;// = true private var _fragment:String; private var _url:String; private var _base:String; mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:IBrowserManager; public function BrowserManagerImpl(){ var sandboxRoot:Object; var parent:Object; super(); var systemManager:Object = SystemManagerGlobals.topLevelSystemManagers; if (systemManager){ systemManager = systemManager[0]; }; if (systemManager){ sandboxRoot = systemManager.getSandboxRoot(); if (!sandboxRoot.dispatchEvent(new Event("mx.managers::BrowserManager", false, true))){ browserMode = false; return; }; try { parent = sandboxRoot.parent; while (parent) { if ((sandboxRoot.parent is Stage)){ break; } else { parent = parent.parent; }; }; } catch(e:Error) { browserMode = false; return; }; sandboxRoot.addEventListener("mx.managers::BrowserManager", sandboxBrowserManagerHandler, false, 0, true); }; try { ExternalInterface.addCallback("browserURLChange", browserURLChangeBrowser); ExternalInterface.addCallback("debugTrace", debugTrace); } catch(e:Error) { browserMode = false; }; } private function setup(_arg1:String, _arg2:String):void{ if (!browserMode){ return; }; _defaultFragment = _arg1; _url = ExternalInterface.call("BrowserHistory.getURL"); if (!_url){ browserMode = false; return; }; var _local3:int = _url.indexOf("#"); if ((((_local3 == -1)) || ((_local3 == (_url.length - 1))))){ _base = _url; _fragment = ""; _title = _arg2; ExternalInterface.call("BrowserHistory.setDefaultURL", _arg1); setTitle(_arg2); } else { _base = _url.substring(0, _local3); _fragment = _url.substring((_local3 + 1)); _title = ExternalInterface.call("BrowserHistory.getTitle"); ExternalInterface.call("BrowserHistory.setDefaultURL", _fragment); if (_fragment != _defaultFragment){ browserURLChange(_fragment, true); }; }; } private function browserURLChange(_arg1:String, _arg2:Boolean=false):void{ var _local3:String; if (((!((decodeURI(_fragment) == decodeURI(_arg1)))) || (_arg2))){ _fragment = _arg1; _local3 = url; _url = ((_base + "#") + _arg1); dispatchEvent(new BrowserChangeEvent(BrowserChangeEvent.BROWSER_URL_CHANGE, false, false, url, _local3)); dispatchEvent(new BrowserChangeEvent(BrowserChangeEvent.URL_CHANGE, false, false, url, _local3)); }; } public function get base():String{ return (_base); } public function setFragment(_arg1:String):void{ if (!browserMode){ return; }; var _local2:String = _url; var _local3:String = _fragment; _url = ((base + "#") + _arg1); _fragment = _arg1; if (dispatchEvent(new BrowserChangeEvent(BrowserChangeEvent.APPLICATION_URL_CHANGE, false, true, _url, _local2))){ ExternalInterface.call("BrowserHistory.setBrowserURL", _arg1, ExternalInterface.objectID); dispatchEvent(new BrowserChangeEvent(BrowserChangeEvent.URL_CHANGE, false, false, _url, _local2)); } else { _fragment = _local3; _url = _local2; }; } private function debugTrace(_arg1:String):void{ trace(_arg1); } public function get fragment():String{ if (((_fragment) && (_fragment.length))){ return (_fragment); }; return (_defaultFragment); } public function get title():String{ return (_title); } public function setTitle(_arg1:String):void{ if (!browserMode){ return; }; ExternalInterface.call("BrowserHistory.setTitle", _arg1); _title = ExternalInterface.call("BrowserHistory.getTitle"); } public function init(_arg1:String="", _arg2:String=""):void{ ApplicationGlobals.application.historyManagementEnabled = false; setup(_arg1, _arg2); } private function sandboxBrowserManagerHandler(_arg1:Event):void{ _arg1.preventDefault(); } private function browserURLChangeBrowser(_arg1:String):void{ browserURLChange(_arg1, false); } public function initForHistoryManager():void{ setup("", ""); } public function get url():String{ return (_url); } public static function getInstance():IBrowserManager{ if (!instance){ instance = new (BrowserManagerImpl); }; return (instance); } } }//package mx.managers
Section 279
//CursorManager (mx.managers.CursorManager) package mx.managers { import mx.core.*; public class CursorManager { mx_internal static const VERSION:String = "3.2.0.3794"; public static const NO_CURSOR:int = 0; private static var _impl:ICursorManager; private static var implClassDependency:CursorManagerImpl; public static function set currentCursorYOffset(_arg1:Number):void{ impl.currentCursorYOffset = _arg1; } mx_internal static function registerToUseBusyCursor(_arg1:Object):void{ impl.registerToUseBusyCursor(_arg1); } public static function get currentCursorID():int{ return (impl.currentCursorID); } public static function getInstance():ICursorManager{ return (impl); } public static function removeBusyCursor():void{ impl.removeBusyCursor(); } public static function setCursor(_arg1:Class, _arg2:int=2, _arg3:Number=0, _arg4:Number=0):int{ return (impl.setCursor(_arg1, _arg2, _arg3, _arg4)); } public static function set currentCursorID(_arg1:int):void{ impl.currentCursorID = _arg1; } mx_internal static function unRegisterToUseBusyCursor(_arg1:Object):void{ impl.unRegisterToUseBusyCursor(_arg1); } private static function get impl():ICursorManager{ if (!_impl){ _impl = ICursorManager(Singleton.getInstance("mx.managers::ICursorManager")); }; return (_impl); } public static function removeAllCursors():void{ impl.removeAllCursors(); } public static function setBusyCursor():void{ impl.setBusyCursor(); } public static function showCursor():void{ impl.showCursor(); } public static function hideCursor():void{ impl.hideCursor(); } public static function removeCursor(_arg1:int):void{ impl.removeCursor(_arg1); } public static function get currentCursorXOffset():Number{ return (impl.currentCursorXOffset); } public static function get currentCursorYOffset():Number{ return (impl.currentCursorYOffset); } public static function set currentCursorXOffset(_arg1:Number):void{ impl.currentCursorXOffset = _arg1; } } }//package mx.managers
Section 280
//CursorManagerImpl (mx.managers.CursorManagerImpl) package mx.managers { import flash.display.*; import flash.geom.*; import flash.text.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import flash.ui.*; public class CursorManagerImpl implements ICursorManager { private var showSystemCursor:Boolean;// = false private var nextCursorID:int;// = 1 private var systemManager:ISystemManager;// = null private var cursorList:Array; private var _currentCursorYOffset:Number;// = 0 private var cursorHolder:Sprite; private var currentCursor:DisplayObject; private var sandboxRoot:IEventDispatcher;// = null private var showCustomCursor:Boolean;// = false private var listenForContextMenu:Boolean;// = false private var _currentCursorID:int;// = 0 private var initialized:Boolean;// = false private var overTextField:Boolean;// = false private var _currentCursorXOffset:Number;// = 0 private var busyCursorList:Array; private var overLink:Boolean;// = false private var sourceArray:Array; mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:ICursorManager; public function CursorManagerImpl(_arg1:ISystemManager=null){ cursorList = []; busyCursorList = []; sourceArray = []; super(); if (((instance) && (!(_arg1)))){ throw (new Error("Instance already exists.")); }; if (_arg1){ this.systemManager = (_arg1 as ISystemManager); } else { this.systemManager = (SystemManagerGlobals.topLevelSystemManagers[0] as ISystemManager); }; sandboxRoot = this.systemManager.getSandboxRoot(); sandboxRoot.addEventListener(InterManagerRequest.CURSOR_MANAGER_REQUEST, marshalCursorManagerHandler, false, 0, true); var _local2:InterManagerRequest = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local2.name = "update"; sandboxRoot.dispatchEvent(_local2); } public function set currentCursorYOffset(_arg1:Number):void{ var _local2:InterManagerRequest; _currentCursorYOffset = _arg1; if (!cursorHolder){ _local2 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local2.name = "currentCursorYOffset"; _local2.value = currentCursorYOffset; sandboxRoot.dispatchEvent(_local2); }; } public function get currentCursorXOffset():Number{ return (_currentCursorXOffset); } public function removeCursor(_arg1:int):void{ var _local2:Object; var _local3:InterManagerRequest; var _local4:CursorQueueItem; if (((initialized) && (!(cursorHolder)))){ _local3 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local3.name = "removeCursor"; _local3.value = _arg1; sandboxRoot.dispatchEvent(_local3); return; }; for (_local2 in cursorList) { _local4 = cursorList[_local2]; if (_local4.cursorID == _arg1){ cursorList.splice(_local2, 1); showCurrentCursor(); break; }; }; } public function get currentCursorID():int{ return (_currentCursorID); } private function marshalMouseMoveHandler(_arg1:Event):void{ var _local2:SWFBridgeRequest; var _local3:IEventDispatcher; if (cursorHolder.visible){ cursorHolder.visible = false; _local2 = new SWFBridgeRequest(SWFBridgeRequest.SHOW_MOUSE_CURSOR_REQUEST); if (systemManager.useSWFBridge()){ _local3 = systemManager.swfBridgeGroup.parentBridge; } else { _local3 = systemManager; }; _local2.requestor = _local3; _local3.dispatchEvent(_local2); if (_local2.data){ Mouse.show(); }; }; } public function set currentCursorID(_arg1:int):void{ var _local2:InterManagerRequest; _currentCursorID = _arg1; if (!cursorHolder){ _local2 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local2.name = "currentCursorID"; _local2.value = currentCursorID; sandboxRoot.dispatchEvent(_local2); }; } public function removeAllCursors():void{ var _local1:InterManagerRequest; if (((initialized) && (!(cursorHolder)))){ _local1 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local1.name = "removeAllCursors"; sandboxRoot.dispatchEvent(_local1); return; }; cursorList.splice(0); showCurrentCursor(); } private function priorityCompare(_arg1:CursorQueueItem, _arg2:CursorQueueItem):int{ if (_arg1.priority < _arg2.priority){ return (-1); }; if (_arg1.priority == _arg2.priority){ return (0); }; return (1); } public function setBusyCursor():void{ var _local3:InterManagerRequest; if (((initialized) && (!(cursorHolder)))){ _local3 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local3.name = "setBusyCursor"; sandboxRoot.dispatchEvent(_local3); return; }; var _local1:CSSStyleDeclaration = StyleManager.getStyleDeclaration("CursorManager"); var _local2:Class = _local1.getStyle("busyCursor"); busyCursorList.push(setCursor(_local2, CursorManagerPriority.LOW)); } public function showCursor():void{ var _local1:InterManagerRequest; if (cursorHolder){ cursorHolder.visible = true; } else { _local1 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local1.name = "showCursor"; sandboxRoot.dispatchEvent(_local1); }; } private function findSource(_arg1:Object):int{ var _local2:int = sourceArray.length; var _local3:int; while (_local3 < _local2) { if (sourceArray[_local3] === _arg1){ return (_local3); }; _local3++; }; return (-1); } private function showCurrentCursor():void{ var _local1:InteractiveObject; var _local2:InteractiveObject; var _local3:CursorQueueItem; var _local4:InterManagerRequest; var _local5:Point; if (cursorList.length > 0){ if (!initialized){ cursorHolder = new FlexSprite(); cursorHolder.name = "cursorHolder"; cursorHolder.mouseEnabled = false; cursorHolder.mouseChildren = false; systemManager.addChildToSandboxRoot("cursorChildren", cursorHolder); initialized = true; _local4 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local4.name = "initialized"; sandboxRoot.dispatchEvent(_local4); }; _local3 = cursorList[0]; if (currentCursorID == CursorManager.NO_CURSOR){ Mouse.hide(); }; if (_local3.cursorID != currentCursorID){ if (cursorHolder.numChildren > 0){ cursorHolder.removeChildAt(0); }; currentCursor = new _local3.cursorClass(); if (currentCursor){ if ((currentCursor is InteractiveObject)){ InteractiveObject(currentCursor).mouseEnabled = false; }; if ((currentCursor is DisplayObjectContainer)){ DisplayObjectContainer(currentCursor).mouseChildren = false; }; cursorHolder.addChild(currentCursor); if (!listenForContextMenu){ _local1 = (systemManager.document as InteractiveObject); if (((_local1) && (_local1.contextMenu))){ _local1.contextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, contextMenu_menuSelectHandler); listenForContextMenu = true; }; _local2 = (systemManager as InteractiveObject); if (((_local2) && (_local2.contextMenu))){ _local2.contextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, contextMenu_menuSelectHandler); listenForContextMenu = true; }; }; if ((systemManager is SystemManager)){ _local5 = new Point((SystemManager(systemManager).mouseX + _local3.x), (SystemManager(systemManager).mouseY + _local3.y)); _local5 = SystemManager(systemManager).localToGlobal(_local5); _local5 = cursorHolder.parent.globalToLocal(_local5); cursorHolder.x = _local5.x; cursorHolder.y = _local5.y; } else { if ((systemManager is DisplayObject)){ _local5 = new Point((DisplayObject(systemManager).mouseX + _local3.x), (DisplayObject(systemManager).mouseY + _local3.y)); _local5 = DisplayObject(systemManager).localToGlobal(_local5); _local5 = cursorHolder.parent.globalToLocal(_local5); cursorHolder.x = (DisplayObject(systemManager).mouseX + _local3.x); cursorHolder.y = (DisplayObject(systemManager).mouseY + _local3.y); } else { cursorHolder.x = _local3.x; cursorHolder.y = _local3.y; }; }; if (systemManager.useSWFBridge()){ sandboxRoot.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true, EventPriority.CURSOR_MANAGEMENT); } else { systemManager.stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true, EventPriority.CURSOR_MANAGEMENT); }; sandboxRoot.addEventListener(SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE, marshalMouseMoveHandler, false, EventPriority.CURSOR_MANAGEMENT); }; currentCursorID = _local3.cursorID; currentCursorXOffset = _local3.x; currentCursorYOffset = _local3.y; }; } else { if (currentCursorID != CursorManager.NO_CURSOR){ currentCursorID = CursorManager.NO_CURSOR; currentCursorXOffset = 0; currentCursorYOffset = 0; if (systemManager.useSWFBridge()){ sandboxRoot.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true); } else { systemManager.stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true); }; sandboxRoot.removeEventListener(SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE, marshalMouseMoveHandler, false); cursorHolder.removeChild(currentCursor); if (listenForContextMenu){ _local1 = (systemManager.document as InteractiveObject); if (((_local1) && (_local1.contextMenu))){ _local1.contextMenu.removeEventListener(ContextMenuEvent.MENU_SELECT, contextMenu_menuSelectHandler); }; _local2 = (systemManager as InteractiveObject); if (((_local2) && (_local2.contextMenu))){ _local2.contextMenu.removeEventListener(ContextMenuEvent.MENU_SELECT, contextMenu_menuSelectHandler); }; listenForContextMenu = false; }; }; Mouse.show(); }; } public function get currentCursorYOffset():Number{ return (_currentCursorYOffset); } private function contextMenu_menuSelectHandler(_arg1:ContextMenuEvent):void{ showCustomCursor = true; sandboxRoot.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler); } public function hideCursor():void{ var _local1:InterManagerRequest; if (cursorHolder){ cursorHolder.visible = false; } else { _local1 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local1.name = "hideCursor"; sandboxRoot.dispatchEvent(_local1); }; } private function marshalCursorManagerHandler(_arg1:Event):void{ var _local3:InterManagerRequest; if ((_arg1 is InterManagerRequest)){ return; }; var _local2:Object = _arg1; switch (_local2.name){ case "initialized": initialized = _local2.value; break; case "currentCursorID": _currentCursorID = _local2.value; break; case "currentCursorXOffset": _currentCursorXOffset = _local2.value; break; case "currentCursorYOffset": _currentCursorYOffset = _local2.value; break; case "showCursor": if (cursorHolder){ cursorHolder.visible = true; }; break; case "hideCursor": if (cursorHolder){ cursorHolder.visible = false; }; break; case "setCursor": if (cursorHolder){ _local2.value = setCursor.apply(this, _local2.value); }; break; case "removeCursor": if (cursorHolder){ removeCursor.apply(this, [_local2.value]); }; break; case "removeAllCursors": if (cursorHolder){ removeAllCursors(); }; break; case "setBusyCursor": if (cursorHolder){ setBusyCursor(); }; break; case "removeBusyCursor": if (cursorHolder){ removeBusyCursor(); }; break; case "registerToUseBusyCursor": if (cursorHolder){ registerToUseBusyCursor.apply(this, _local2.value); }; break; case "unRegisterToUseBusyCursor": if (cursorHolder){ unRegisterToUseBusyCursor.apply(this, _local2.value); }; break; case "update": if (cursorHolder){ _local3 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local3.name = "initialized"; _local3.value = true; sandboxRoot.dispatchEvent(_local3); _local3 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local3.name = "currentCursorID"; _local3.value = currentCursorID; sandboxRoot.dispatchEvent(_local3); _local3 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local3.name = "currentCursorXOffset"; _local3.value = currentCursorXOffset; sandboxRoot.dispatchEvent(_local3); _local3 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local3.name = "currentCursorYOffset"; _local3.value = currentCursorYOffset; sandboxRoot.dispatchEvent(_local3); }; }; } public function registerToUseBusyCursor(_arg1:Object):void{ var _local2:InterManagerRequest; if (((initialized) && (!(cursorHolder)))){ _local2 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local2.name = "registerToUseBusyCursor"; _local2.value = _arg1; sandboxRoot.dispatchEvent(_local2); return; }; if (((_arg1) && ((_arg1 is EventDispatcher)))){ _arg1.addEventListener(ProgressEvent.PROGRESS, progressHandler); _arg1.addEventListener(Event.COMPLETE, completeHandler); _arg1.addEventListener(IOErrorEvent.IO_ERROR, completeHandler); }; } private function completeHandler(_arg1:Event):void{ var _local2:int = findSource(_arg1.target); if (_local2 != -1){ sourceArray.splice(_local2, 1); removeBusyCursor(); }; } public function removeBusyCursor():void{ var _local1:InterManagerRequest; if (((initialized) && (!(cursorHolder)))){ _local1 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local1.name = "removeBusyCursor"; sandboxRoot.dispatchEvent(_local1); return; }; if (busyCursorList.length > 0){ removeCursor(int(busyCursorList.pop())); }; } public function setCursor(_arg1:Class, _arg2:int=2, _arg3:Number=0, _arg4:Number=0):int{ var _local7:InterManagerRequest; if (((initialized) && (!(cursorHolder)))){ _local7 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local7.name = "setCursor"; _local7.value = [_arg1, _arg2, _arg3, _arg4]; sandboxRoot.dispatchEvent(_local7); return ((_local7.value as int)); }; var _local5:int = nextCursorID++; var _local6:CursorQueueItem = new CursorQueueItem(); _local6.cursorID = _local5; _local6.cursorClass = _arg1; _local6.priority = _arg2; _local6.x = _arg3; _local6.y = _arg4; if (systemManager){ _local6.systemManager = systemManager; } else { _local6.systemManager = ApplicationGlobals.application.systemManager; }; cursorList.push(_local6); cursorList.sort(priorityCompare); showCurrentCursor(); return (_local5); } private function progressHandler(_arg1:ProgressEvent):void{ var _local2:int = findSource(_arg1.target); if (_local2 == -1){ sourceArray.push(_arg1.target); setBusyCursor(); }; } private function mouseMoveHandler(_arg1:MouseEvent):void{ var _local4:SWFBridgeRequest; var _local5:IEventDispatcher; var _local2:Point = new Point(_arg1.stageX, _arg1.stageY); _local2 = cursorHolder.parent.globalToLocal(_local2); _local2.x = (_local2.x + currentCursorXOffset); _local2.y = (_local2.y + currentCursorYOffset); cursorHolder.x = _local2.x; cursorHolder.y = _local2.y; var _local3:Object = _arg1.target; if (((((!(overTextField)) && ((_local3 is TextField)))) && ((_local3.type == TextFieldType.INPUT)))){ overTextField = true; showSystemCursor = true; } else { if (((overTextField) && (!((((_local3 is TextField)) && ((_local3.type == TextFieldType.INPUT))))))){ overTextField = false; showCustomCursor = true; } else { showCustomCursor = true; }; }; if (showSystemCursor){ showSystemCursor = false; cursorHolder.visible = false; Mouse.show(); }; if (showCustomCursor){ showCustomCursor = false; cursorHolder.visible = true; Mouse.hide(); _local4 = new SWFBridgeRequest(SWFBridgeRequest.HIDE_MOUSE_CURSOR_REQUEST); if (systemManager.useSWFBridge()){ _local5 = systemManager.swfBridgeGroup.parentBridge; } else { _local5 = systemManager; }; _local4.requestor = _local5; _local5.dispatchEvent(_local4); }; } public function unRegisterToUseBusyCursor(_arg1:Object):void{ var _local2:InterManagerRequest; if (((initialized) && (!(cursorHolder)))){ _local2 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local2.name = "unRegisterToUseBusyCursor"; _local2.value = _arg1; sandboxRoot.dispatchEvent(_local2); return; }; if (((_arg1) && ((_arg1 is EventDispatcher)))){ _arg1.removeEventListener(ProgressEvent.PROGRESS, progressHandler); _arg1.removeEventListener(Event.COMPLETE, completeHandler); _arg1.removeEventListener(IOErrorEvent.IO_ERROR, completeHandler); }; } private function mouseOverHandler(_arg1:MouseEvent):void{ sandboxRoot.removeEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler); mouseMoveHandler(_arg1); } public function set currentCursorXOffset(_arg1:Number):void{ var _local2:InterManagerRequest; _currentCursorXOffset = _arg1; if (!cursorHolder){ _local2 = new InterManagerRequest(InterManagerRequest.CURSOR_MANAGER_REQUEST); _local2.name = "currentCursorXOffset"; _local2.value = currentCursorXOffset; sandboxRoot.dispatchEvent(_local2); }; } public static function getInstance():ICursorManager{ if (!instance){ instance = new (CursorManagerImpl); }; return (instance); } } }//package mx.managers class CursorQueueItem { public var priority:int;// = 2 public var cursorClass:Class;// = null public var cursorID:int;// = 0 public var x:Number; public var y:Number; public var systemManager:ISystemManager; mx_internal static const VERSION:String = "3.2.0.3794"; private function CursorQueueItem(){ } }
Section 281
//CursorManagerPriority (mx.managers.CursorManagerPriority) package mx.managers { public final class CursorManagerPriority { public static const HIGH:int = 1; public static const MEDIUM:int = 2; mx_internal static const VERSION:String = "3.2.0.3794"; public static const LOW:int = 3; } }//package mx.managers
Section 282
//DragManager (mx.managers.DragManager) package mx.managers { import mx.core.*; import flash.events.*; import mx.managers.dragClasses.*; public class DragManager { public static const MOVE:String = "move"; public static const COPY:String = "copy"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const LINK:String = "link"; public static const NONE:String = "none"; private static var implClassDependency:DragManagerImpl; private static var _impl:IDragManager; private static function get impl():IDragManager{ if (!_impl){ _impl = IDragManager(Singleton.getInstance("mx.managers::IDragManager")); }; return (_impl); } mx_internal static function get dragProxy():DragProxy{ return (Object(impl).dragProxy); } public static function showFeedback(_arg1:String):void{ impl.showFeedback(_arg1); } public static function acceptDragDrop(_arg1:IUIComponent):void{ impl.acceptDragDrop(_arg1); } public static function doDrag(_arg1:IUIComponent, _arg2:DragSource, _arg3:MouseEvent, _arg4:IFlexDisplayObject=null, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0.5, _arg8:Boolean=true):void{ impl.doDrag(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8); } mx_internal static function endDrag():void{ impl.endDrag(); } public static function get isDragging():Boolean{ return (impl.isDragging); } public static function getFeedback():String{ return (impl.getFeedback()); } } }//package mx.managers
Section 283
//DragManagerImpl (mx.managers.DragManagerImpl) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.managers.dragClasses.*; public class DragManagerImpl implements IDragManager { private var bDoingDrag:Boolean;// = false private var sandboxRoot:IEventDispatcher; public var dragProxy:DragProxy; private var dragInitiator:IUIComponent; private var mouseIsDown:Boolean;// = false mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:IDragManager; private static var sm:ISystemManager; public function DragManagerImpl(){ var _local1:IEventDispatcher; super(); if (instance){ throw (new Error("Instance already exists.")); }; if (!sm.isTopLevelRoot()){ sandboxRoot = sm.getSandboxRoot(); sandboxRoot.addEventListener(InterDragManagerEvent.DISPATCH_DRAG_EVENT, marshalDispatchEventHandler, false, 0, true); } else { _local1 = sm; _local1.addEventListener(MouseEvent.MOUSE_DOWN, sm_mouseDownHandler, false, 0, true); _local1.addEventListener(MouseEvent.MOUSE_UP, sm_mouseUpHandler, false, 0, true); sandboxRoot = sm; sandboxRoot.addEventListener(InterDragManagerEvent.DISPATCH_DRAG_EVENT, marshalDispatchEventHandler, false, 0, true); }; sandboxRoot.addEventListener(InterManagerRequest.DRAG_MANAGER_REQUEST, marshalDragManagerHandler, false, 0, true); var _local2:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local2.name = "update"; sandboxRoot.dispatchEvent(_local2); } private function marshalDragManagerHandler(_arg1:Event):void{ var _local3:InterManagerRequest; if ((_arg1 is InterManagerRequest)){ return; }; var _local2:Object = _arg1; switch (_local2.name){ case "isDragging": bDoingDrag = _local2.value; break; case "acceptDragDrop": if (dragProxy){ dragProxy.target = _local2.value; }; break; case "showFeedback": if (dragProxy){ showFeedback(_local2.value); }; break; case "getFeedback": if (dragProxy){ _local2.value = getFeedback(); }; break; case "endDrag": endDrag(); break; case "update": if (((dragProxy) && (isDragging))){ _local3 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local3.name = "isDragging"; _local3.value = true; sandboxRoot.dispatchEvent(_local3); }; }; } private function sm_mouseUpHandler(_arg1:MouseEvent):void{ mouseIsDown = false; } public function get isDragging():Boolean{ return (bDoingDrag); } public function doDrag(_arg1:IUIComponent, _arg2:DragSource, _arg3:MouseEvent, _arg4:IFlexDisplayObject=null, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0.5, _arg8:Boolean=true):void{ var _local9:Number; var _local10:Number; var _local18:CSSStyleDeclaration; var _local19:Class; if (bDoingDrag){ return; }; if (!(((((((_arg3.type == MouseEvent.MOUSE_DOWN)) || ((_arg3.type == MouseEvent.CLICK)))) || (mouseIsDown))) || (_arg3.buttonDown))){ return; }; bDoingDrag = true; var _local11:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local11.name = "isDragging"; _local11.value = true; sandboxRoot.dispatchEvent(_local11); _local11 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local11.name = "mouseShield"; _local11.value = true; sandboxRoot.dispatchEvent(_local11); this.dragInitiator = _arg1; dragProxy = new DragProxy(_arg1, _arg2); sm.addChildToSandboxRoot("popUpChildren", dragProxy); if (!_arg4){ _local18 = StyleManager.getStyleDeclaration("DragManager"); _local19 = _local18.getStyle("defaultDragImageSkin"); _arg4 = new (_local19); dragProxy.addChild(DisplayObject(_arg4)); _local9 = _arg1.width; _local10 = _arg1.height; } else { dragProxy.addChild(DisplayObject(_arg4)); if ((_arg4 is ILayoutManagerClient)){ UIComponentGlobals.layoutManager.validateClient(ILayoutManagerClient(_arg4), true); }; if ((_arg4 is IUIComponent)){ _local9 = (_arg4 as IUIComponent).getExplicitOrMeasuredWidth(); _local10 = (_arg4 as IUIComponent).getExplicitOrMeasuredHeight(); } else { _local9 = _arg4.measuredWidth; _local10 = _arg4.measuredHeight; }; }; _arg4.setActualSize(_local9, _local10); dragProxy.setActualSize(_local9, _local10); dragProxy.alpha = _arg7; dragProxy.allowMove = _arg8; var _local12:Object = _arg3.target; if (_local12 == null){ _local12 = _arg1; }; var _local13:Point = new Point(_arg3.localX, _arg3.localY); _local13 = DisplayObject(_local12).localToGlobal(_local13); _local13 = DisplayObject(sandboxRoot).globalToLocal(_local13); var _local14:Number = _local13.x; var _local15:Number = _local13.y; var _local16:Point = DisplayObject(_local12).localToGlobal(new Point(_arg3.localX, _arg3.localY)); _local16 = DisplayObject(_arg1).globalToLocal(_local16); dragProxy.xOffset = (_local16.x + _arg5); dragProxy.yOffset = (_local16.y + _arg6); dragProxy.x = (_local14 - dragProxy.xOffset); dragProxy.y = (_local15 - dragProxy.yOffset); dragProxy.startX = dragProxy.x; dragProxy.startY = dragProxy.y; if ((_arg4 is DisplayObject)){ DisplayObject(_arg4).cacheAsBitmap = true; }; var _local17:Object = dragProxy.automationDelegate; if (_local17){ _local17.recordAutomatableDragStart(_arg1, _arg3); }; } private function sm_mouseDownHandler(_arg1:MouseEvent):void{ mouseIsDown = true; } public function showFeedback(_arg1:String):void{ var _local2:InterManagerRequest; if (dragProxy){ if ((((_arg1 == DragManager.MOVE)) && (!(dragProxy.allowMove)))){ _arg1 = DragManager.COPY; }; dragProxy.action = _arg1; } else { if (isDragging){ _local2 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local2.name = "showFeedback"; _local2.value = _arg1; sandboxRoot.dispatchEvent(_local2); }; }; } public function acceptDragDrop(_arg1:IUIComponent):void{ var _local2:InterManagerRequest; if (dragProxy){ dragProxy.target = (_arg1 as DisplayObject); } else { if (isDragging){ _local2 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local2.name = "acceptDragDrop"; _local2.value = _arg1; sandboxRoot.dispatchEvent(_local2); }; }; } private function marshalDispatchEventHandler(_arg1:Event):void{ if ((_arg1 is InterDragManagerEvent)){ return; }; var _local2:Object = _arg1; var _local3:DisplayObject = SystemManager.getSWFRoot(_local2.dropTarget); if (!_local3){ return; }; var _local4:DragEvent = new DragEvent(_local2.dragEventType, _local2.bubbles, _local2.cancelable); _local4.localX = _local2.localX; _local4.localY = _local2.localY; _local4.action = _local2.action; _local4.ctrlKey = _local2.ctrlKey; _local4.altKey = _local2.altKey; _local4.shiftKey = _local2.shiftKey; _local4.draggedItem = _local2.draggedItem; _local4.dragSource = new DragSource(); var _local5:Array = _local2.dragSource.formats; var _local6:int = _local5.length; var _local7:int; while (_local7 < _local6) { _local4.dragSource.addData(_local2.dragSource.dataForFormat(_local5[_local7]), _local5[_local7]); _local7++; }; if (!_local2.dropTarget.dispatchEvent(_local4)){ _arg1.preventDefault(); }; } public function getFeedback():String{ var _local1:InterManagerRequest; if (((!(dragProxy)) && (isDragging))){ _local1 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local1.name = "getFeedback"; sandboxRoot.dispatchEvent(_local1); return ((_local1.value as String)); }; return ((dragProxy) ? dragProxy.action : DragManager.NONE); } public function endDrag():void{ var _local1:InterManagerRequest; if (dragProxy){ sm.removeChildFromSandboxRoot("popUpChildren", dragProxy); dragProxy.removeChildAt(0); dragProxy = null; } else { if (isDragging){ _local1 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local1.name = "endDrag"; sandboxRoot.dispatchEvent(_local1); }; }; _local1 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local1.name = "mouseShield"; _local1.value = false; sandboxRoot.dispatchEvent(_local1); dragInitiator = null; bDoingDrag = false; _local1 = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST); _local1.name = "isDragging"; _local1.value = false; sandboxRoot.dispatchEvent(_local1); } public static function getInstance():IDragManager{ if (!instance){ sm = SystemManagerGlobals.topLevelSystemManagers[0]; instance = new (DragManagerImpl); }; return (instance); } } }//package mx.managers
Section 284
//FocusManager (mx.managers.FocusManager) package mx.managers { import flash.display.*; import flash.text.*; import mx.core.*; import flash.events.*; import mx.events.*; import flash.ui.*; import flash.system.*; public class FocusManager implements IFocusManager { private var lastActiveFocusManager:FocusManager; private var _showFocusIndicator:Boolean;// = false private var focusableCandidates:Array; private var LARGE_TAB_INDEX:int;// = 99999 private var browserFocusComponent:InteractiveObject; private var calculateCandidates:Boolean;// = true private var _lastFocus:IFocusManagerComponent; private var lastAction:String; private var focusSetLocally:Boolean; private var focusableObjects:Array; private var swfBridgeGroup:SWFBridgeGroup; private var defButton:IButton; private var _form:IFocusManagerContainer; private var popup:Boolean; private var focusChanged:Boolean; private var _defaultButtonEnabled:Boolean;// = true private var activated:Boolean;// = false private var _defaultButton:IButton; private var fauxFocus:DisplayObject; private var _focusPane:Sprite; private var skipBridge:IEventDispatcher; public var browserMode:Boolean; mx_internal static const VERSION:String = "3.2.0.3794"; private static const FROM_INDEX_UNSPECIFIED:int = -2; public function FocusManager(_arg1:IFocusManagerContainer, _arg2:Boolean=false){ var sm:ISystemManager; var bridge:IEventDispatcher; var container = _arg1; var popup = _arg2; super(); this.popup = popup; browserMode = (((Capabilities.playerType == "ActiveX")) && (!(popup))); container.focusManager = this; _form = container; focusableObjects = []; focusPane = new FlexSprite(); focusPane.name = "focusPane"; addFocusables(DisplayObject(container)); container.addEventListener(Event.ADDED, addedHandler); container.addEventListener(Event.REMOVED, removedHandler); container.addEventListener(FlexEvent.SHOW, showHandler); container.addEventListener(FlexEvent.HIDE, hideHandler); if ((container.systemManager is SystemManager)){ if (container != SystemManager(container.systemManager).application){ container.addEventListener(FlexEvent.CREATION_COMPLETE, creationCompleteHandler); }; }; try { container.systemManager.addFocusManager(container); sm = form.systemManager; swfBridgeGroup = new SWFBridgeGroup(sm); if (!popup){ swfBridgeGroup.parentBridge = sm.swfBridgeGroup.parentBridge; }; if (sm.useSWFBridge()){ sm.addEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_UNLOADING, removeFromParentBridge); bridge = swfBridgeGroup.parentBridge; if (bridge){ bridge.addEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler); bridge.addEventListener(SWFBridgeRequest.SET_SHOW_FOCUS_INDICATOR_REQUEST, setShowFocusIndicatorRequestHandler); }; if (((bridge) && (!((form.systemManager is SystemManagerProxy))))){ bridge.addEventListener(SWFBridgeRequest.ACTIVATE_FOCUS_REQUEST, focusRequestActivateHandler); bridge.addEventListener(SWFBridgeRequest.DEACTIVATE_FOCUS_REQUEST, focusRequestDeactivateHandler); bridge.addEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE, bridgeEventActivateHandler); }; container.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); }; } catch(e:Error) { }; } private function dispatchSetShowFocusIndicatorRequest(_arg1:Boolean, _arg2:IEventDispatcher):void{ var _local3:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.SET_SHOW_FOCUS_INDICATOR_REQUEST, false, false, null, _arg1); dispatchEventFromSWFBridges(_local3, _arg2); } private function creationCompleteHandler(_arg1:FlexEvent):void{ if (((DisplayObject(form).visible) && (!(activated)))){ form.systemManager.activate(form); }; } private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{ var addToFocusables:Boolean; var focusable:IFocusManagerComponent; var doc:DisplayObjectContainer; var rawChildren:IChildList; var i:int; var o = _arg1; var skipTopLevel = _arg2; if ((((o is IFocusManagerComponent)) && (!(skipTopLevel)))){ addToFocusables = false; if ((o is IFocusManagerComponent)){ focusable = IFocusManagerComponent(o); if (focusable.focusEnabled){ if (((focusable.tabEnabled) && (isTabVisible(o)))){ addToFocusables = true; }; }; }; if (addToFocusables){ if (focusableObjects.indexOf(o) == -1){ focusableObjects.push(o); calculateCandidates = true; }; o.addEventListener("tabEnabledChange", tabEnabledChangeHandler); o.addEventListener("tabIndexChange", tabIndexChangeHandler); }; }; if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); o.addEventListener("tabChildrenChange", tabChildrenChangeHandler); if (doc.tabChildren){ if ((o is IRawChildrenContainer)){ rawChildren = IRawChildrenContainer(o).rawChildren; i = 0; while (i < rawChildren.numChildren) { try { addFocusables(rawChildren.getChildAt(i)); } catch(error:SecurityError) { }; i = (i + 1); }; } else { i = 0; while (i < doc.numChildren) { try { addFocusables(doc.getChildAt(i)); } catch(error:SecurityError) { }; i = (i + 1); }; }; }; }; } private function tabEnabledChangeHandler(_arg1:Event):void{ calculateCandidates = true; var _local2:InteractiveObject = InteractiveObject(_arg1.target); var _local3:int = focusableObjects.length; var _local4:int; while (_local4 < _local3) { if (focusableObjects[_local4] == _local2){ break; }; _local4++; }; if (_local2.tabEnabled){ if ((((_local4 == _local3)) && (isTabVisible(_local2)))){ if (focusableObjects.indexOf(_local2) == -1){ focusableObjects.push(_local2); }; }; } else { if (_local4 < _local3){ focusableObjects.splice(_local4, 1); }; }; } private function mouseFocusChangeHandler(_arg1:FocusEvent):void{ var _local2:TextField; if ((((((_arg1.relatedObject == null)) && (("isRelatedObjectInaccessible" in _arg1)))) && ((_arg1["isRelatedObjectInaccessible"] == true)))){ return; }; if ((_arg1.relatedObject is TextField)){ _local2 = (_arg1.relatedObject as TextField); if ((((_local2.type == "input")) || (_local2.selectable))){ return; }; }; _arg1.preventDefault(); } public function addSWFBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void{ if (!_arg2){ return; }; var _local3:ISystemManager = _form.systemManager; if (focusableObjects.indexOf(_arg2) == -1){ focusableObjects.push(_arg2); calculateCandidates = true; }; swfBridgeGroup.addChildBridge(_arg1, ISWFBridgeProvider(_arg2)); _arg1.addEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler); _arg1.addEventListener(SWFBridgeRequest.SET_SHOW_FOCUS_INDICATOR_REQUEST, setShowFocusIndicatorRequestHandler); _arg1.addEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE, bridgeEventActivateHandler); } private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{ var parent = _arg1; var child = _arg2; try { return (parent.getChildIndex(child)); } catch(e:Error) { if ((parent is IRawChildrenContainer)){ return (IRawChildrenContainer(parent).rawChildren.getChildIndex(child)); }; throw (e); }; throw (new Error("FocusManager.getChildIndex failed")); } private function bridgeEventActivateHandler(_arg1:Event):void{ if ((_arg1 is SWFBridgeEvent)){ return; }; lastActiveFocusManager = null; _lastFocus = null; dispatchActivatedFocusManagerEvent(IEventDispatcher(_arg1.target)); } private function focusOutHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject = InteractiveObject(_arg1.target); } 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 removeFocusables(_arg1:DisplayObject, _arg2:Boolean):void{ var _local3:int; if ((_arg1 is DisplayObjectContainer)){ if (!_arg2){ _arg1.removeEventListener("tabChildrenChange", tabChildrenChangeHandler); }; _local3 = 0; while (_local3 < focusableObjects.length) { if (isParent(DisplayObjectContainer(_arg1), focusableObjects[_local3])){ if (focusableObjects[_local3] == _lastFocus){ _lastFocus.drawFocus(false); _lastFocus = null; }; focusableObjects[_local3].removeEventListener("tabEnabledChange", tabEnabledChangeHandler); focusableObjects[_local3].removeEventListener("tabIndexChange", tabIndexChangeHandler); focusableObjects.splice(_local3, 1); _local3--; calculateCandidates = true; }; _local3++; }; }; } private function addedHandler(_arg1:Event):void{ var _local2:DisplayObject = DisplayObject(_arg1.target); if (_local2.stage){ addFocusables(DisplayObject(_arg1.target)); }; } 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, true); }; } private function sortByDepth(_arg1:DisplayObject, _arg2:DisplayObject):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); } mx_internal function sendDefaultButtonEvent():void{ defButton.dispatchEvent(new MouseEvent("click")); } public function getFocus():IFocusManagerComponent{ var _local1:InteractiveObject = form.systemManager.stage.focus; return (findFocusManagerComponent(_local1)); } private function deactivateHandler(_arg1:Event):void{ } private function setFocusToBottom():void{ setFocusToNextIndex(focusableObjects.length, true); } private function tabIndexChangeHandler(_arg1:Event):void{ calculateCandidates = true; } private function sortFocusableObjects():void{ var _local3:InteractiveObject; focusableCandidates = []; var _local1:int = focusableObjects.length; var _local2:int; while (_local2 < _local1) { _local3 = focusableObjects[_local2]; if (((((_local3.tabIndex) && (!(isNaN(Number(_local3.tabIndex)))))) && ((_local3.tabIndex > 0)))){ sortFocusableObjectsTabIndex(); return; }; focusableCandidates.push(_local3); _local2++; }; focusableCandidates.sort(sortByDepth); } private function keyFocusChangeHandler(_arg1:FocusEvent):void{ var _local2:ISystemManager = form.systemManager; if (_local2.isDisplayObjectInABridgedApplication(DisplayObject(_arg1.target))){ return; }; showFocusIndicator = true; focusChanged = false; if ((((_arg1.keyCode == Keyboard.TAB)) && (!(_arg1.isDefaultPrevented())))){ if (browserFocusComponent){ if (browserFocusComponent.tabIndex == LARGE_TAB_INDEX){ browserFocusComponent.tabIndex = -1; }; browserFocusComponent = null; if (SystemManager(form.systemManager).useSWFBridge()){ moveFocusToParent(_arg1.shiftKey); if (focusChanged){ _arg1.preventDefault(); }; }; return; }; setFocusToNextObject(_arg1); if (focusChanged){ _arg1.preventDefault(); }; }; } private function getNextFocusManagerComponent2(_arg1:Boolean=false, _arg2:DisplayObject=null, _arg3:int=-2):FocusInfo{ var _local10:DisplayObject; var _local11:String; var _local12:IFocusManagerGroup; if (focusableObjects.length == 0){ return (null); }; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; var _local4:int = _arg3; if (_arg3 == FROM_INDEX_UNSPECIFIED){ _local10 = _arg2; if (!_local10){ _local10 = form.systemManager.stage.focus; }; _local10 = DisplayObject(findFocusManagerComponent2(InteractiveObject(_local10))); _local11 = ""; if ((_local10 is IFocusManagerGroup)){ _local12 = IFocusManagerGroup(_local10); _local11 = _local12.groupName; }; _local4 = getIndexOfFocusedObject(_local10); }; var _local5:Boolean; var _local6:int = _local4; if (_local4 == -1){ if (_arg1){ _local4 = focusableCandidates.length; }; _local5 = true; }; var _local7:int = getIndexOfNextObject(_local4, _arg1, _local5, _local11); var _local8:Boolean; if (_arg1){ if (_local7 >= _local4){ _local8 = true; }; } else { if (_local7 <= _local4){ _local8 = true; }; }; var _local9:FocusInfo = new FocusInfo(); _local9.displayObject = findFocusManagerComponent2(focusableCandidates[_local7]); _local9.wrapped = _local8; return (_local9); } private function getIndexOfFocusedObject(_arg1:DisplayObject):int{ var _local4:IUIComponent; if (!_arg1){ return (-1); }; var _local2:int = focusableCandidates.length; var _local3:int; _local3 = 0; while (_local3 < _local2) { if (focusableCandidates[_local3] == _arg1){ return (_local3); }; _local3++; }; _local3 = 0; while (_local3 < _local2) { _local4 = (focusableCandidates[_local3] as IUIComponent); if (((_local4) && (_local4.owns(_arg1)))){ return (_local3); }; _local3++; }; return (-1); } private function focusRequestActivateHandler(_arg1:Event):void{ skipBridge = IEventDispatcher(_arg1.target); activate(); skipBridge = null; } private function removeFromParentBridge(_arg1:Event):void{ var _local3:IEventDispatcher; var _local2:ISystemManager = form.systemManager; if (_local2.useSWFBridge()){ _local2.removeEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_UNLOADING, removeFromParentBridge); _local3 = swfBridgeGroup.parentBridge; if (_local3){ _local3.removeEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler); _local3.removeEventListener(SWFBridgeRequest.SET_SHOW_FOCUS_INDICATOR_REQUEST, setShowFocusIndicatorRequestHandler); }; if (((_local3) && (!((form.systemManager is SystemManagerProxy))))){ _local3.removeEventListener(SWFBridgeRequest.ACTIVATE_FOCUS_REQUEST, focusRequestActivateHandler); _local3.removeEventListener(SWFBridgeRequest.DEACTIVATE_FOCUS_REQUEST, focusRequestDeactivateHandler); _local3.removeEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE, bridgeEventActivateHandler); }; }; } private function getParentBridge():IEventDispatcher{ if (swfBridgeGroup){ return (swfBridgeGroup.parentBridge); }; return (null); } private function setFocusToComponent(_arg1:Object, _arg2:Boolean):void{ var _local3:SWFBridgeRequest; var _local4:IEventDispatcher; focusChanged = false; if (_arg1){ if ((((_arg1 is ISWFLoader)) && (ISWFLoader(_arg1).swfBridge))){ _local3 = new SWFBridgeRequest(SWFBridgeRequest.MOVE_FOCUS_REQUEST, false, true, null, (_arg2) ? FocusRequestDirection.BOTTOM : FocusRequestDirection.TOP); _local4 = ISWFLoader(_arg1).swfBridge; if (_local4){ _local4.dispatchEvent(_local3); focusChanged = _local3.data; }; } else { if ((_arg1 is IFocusManagerComplexComponent)){ IFocusManagerComplexComponent(_arg1).assignFocus((_arg2) ? "bottom" : "top"); focusChanged = true; } else { if ((_arg1 is IFocusManagerComponent)){ setFocus(IFocusManagerComponent(_arg1)); focusChanged = true; }; }; }; }; } private function focusRequestMoveHandler(_arg1:Event):void{ var _local3:DisplayObject; if ((_arg1 is SWFBridgeRequest)){ return; }; focusSetLocally = false; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if ((((_local2.data == FocusRequestDirection.TOP)) || ((_local2.data == FocusRequestDirection.BOTTOM)))){ if (focusableObjects.length == 0){ moveFocusToParent(((_local2.data == FocusRequestDirection.TOP)) ? false : true); _arg1["data"] = focusChanged; return; }; if (_local2.data == FocusRequestDirection.TOP){ setFocusToTop(); } else { setFocusToBottom(); }; _arg1["data"] = focusChanged; } else { _local3 = DisplayObject(_form.systemManager.swfBridgeGroup.getChildBridgeProvider(IEventDispatcher(_arg1.target))); moveFocus((_local2.data as String), _local3); _arg1["data"] = focusChanged; }; if (focusSetLocally){ dispatchActivatedFocusManagerEvent(null); lastActiveFocusManager = this; }; } public function get nextTabIndex():int{ return ((getMaxTabIndex() + 1)); } private function dispatchActivatedFocusManagerEvent(_arg1:IEventDispatcher=null):void{ if (lastActiveFocusManager == this){ return; }; var _local2:SWFBridgeEvent = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE); dispatchEventFromSWFBridges(_local2, _arg1); } private function focusRequestDeactivateHandler(_arg1:Event):void{ skipBridge = IEventDispatcher(_arg1.target); deactivate(); skipBridge = null; } public function get focusPane():Sprite{ return (_focusPane); } private function keyDownHandler(_arg1:KeyboardEvent):void{ var _local3:DisplayObject; var _local4:String; var _local5:int; var _local6:int; var _local7:IFocusManagerGroup; var _local2:ISystemManager = form.systemManager; if (_local2.isDisplayObjectInABridgedApplication(DisplayObject(_arg1.target))){ return; }; if ((_local2 is SystemManager)){ SystemManager(_local2).idleCounter = 0; }; if (_arg1.keyCode == Keyboard.TAB){ lastAction = "KEY"; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; }; if (browserMode){ if ((((_arg1.keyCode == Keyboard.TAB)) && ((focusableCandidates.length > 0)))){ _local3 = fauxFocus; if (!_local3){ _local3 = form.systemManager.stage.focus; }; _local3 = DisplayObject(findFocusManagerComponent2(InteractiveObject(_local3))); _local4 = ""; if ((_local3 is IFocusManagerGroup)){ _local7 = IFocusManagerGroup(_local3); _local4 = _local7.groupName; }; _local5 = getIndexOfFocusedObject(_local3); _local6 = getIndexOfNextObject(_local5, _arg1.shiftKey, false, _local4); if (_arg1.shiftKey){ if (_local6 >= _local5){ browserFocusComponent = getBrowserFocusComponent(_arg1.shiftKey); if (browserFocusComponent.tabIndex == -1){ browserFocusComponent.tabIndex = 0; }; }; } else { if (_local6 <= _local5){ browserFocusComponent = getBrowserFocusComponent(_arg1.shiftKey); if (browserFocusComponent.tabIndex == -1){ browserFocusComponent.tabIndex = LARGE_TAB_INDEX; }; }; }; }; }; if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){ defButton.callLater(sendDefaultButtonEvent); }; } private function mouseDownHandler(_arg1:MouseEvent):void{ if (_arg1.isDefaultPrevented()){ return; }; var _local2:ISystemManager = form.systemManager; var _local3:DisplayObject = getTopLevelFocusTarget(InteractiveObject(_arg1.target)); if (!_local3){ return; }; showFocusIndicator = false; if (((((!((_local3 == _lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local3 is TextField))))){ setFocus(IFocusManagerComponent(_local3)); } else { if (_lastFocus){ if (((((!(_lastFocus)) && ((_local3 is IEventDispatcher)))) && (SystemManager(form.systemManager).useSWFBridge()))){ IEventDispatcher(_local3).dispatchEvent(new FocusEvent(FocusEvent.FOCUS_IN)); }; }; }; lastAction = "MOUSEDOWN"; dispatchActivatedFocusManagerEvent(null); lastActiveFocusManager = this; } private function focusInHandler(_arg1:FocusEvent):void{ var _local4:IButton; var _local2:InteractiveObject = InteractiveObject(_arg1.target); var _local3:ISystemManager = form.systemManager; if (_local3.isDisplayObjectInABridgedApplication(DisplayObject(_arg1.target))){ return; }; if (isParent(DisplayObjectContainer(form), _local2)){ _lastFocus = findFocusManagerComponent(InteractiveObject(_local2)); if ((_lastFocus is IButton)){ _local4 = (_lastFocus as IButton); if (defButton){ defButton.emphasized = false; defButton = _local4; _local4.emphasized = true; }; } else { if (((defButton) && (!((defButton == _defaultButton))))){ defButton.emphasized = false; defButton = _defaultButton; _defaultButton.emphasized = true; }; }; }; } public function toString():String{ return ((Object(form).toString() + ".focusManager")); } public function deactivate():void{ var _local1:ISystemManager = form.systemManager; if (_local1){ if (_local1.isTopLevelRoot()){ _local1.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); _local1.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); _local1.stage.removeEventListener(Event.ACTIVATE, activateHandler); _local1.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler); } else { _local1.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); _local1.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); _local1.removeEventListener(Event.ACTIVATE, activateHandler); _local1.removeEventListener(Event.DEACTIVATE, deactivateHandler); }; }; form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = false; dispatchEventFromSWFBridges(new SWFBridgeRequest(SWFBridgeRequest.DEACTIVATE_FOCUS_REQUEST), skipBridge); } private function findFocusManagerComponent2(_arg1:InteractiveObject):DisplayObject{ var o = _arg1; try { while (o) { if ((((((o is IFocusManagerComponent)) && (IFocusManagerComponent(o).focusEnabled))) || ((o is ISWFLoader)))){ return (o); }; o = o.parent; }; } catch(error:SecurityError) { }; return (null); } 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(findFocusManagerComponent2(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))){ if (((!((InteractiveObject(_local10).tabIndex == InteractiveObject(_local7).tabIndex))) && (!(_local8.selected)))){ return (getIndexOfNextObject(_arg1, _arg2, _arg3, _arg4)); }; _arg1 = _local9; break; }; }; _local9++; }; }; return (_arg1); }; }; return (_arg1); } public function moveFocus(_arg1:String, _arg2:DisplayObject=null):void{ if (_arg1 == FocusRequestDirection.TOP){ setFocusToTop(); return; }; if (_arg1 == FocusRequestDirection.BOTTOM){ setFocusToBottom(); return; }; var _local3:KeyboardEvent = new KeyboardEvent(KeyboardEvent.KEY_DOWN); _local3.keyCode = Keyboard.TAB; _local3.shiftKey = ((_arg1)==FocusRequestDirection.FORWARD) ? false : true; fauxFocus = _arg2; keyDownHandler(_local3); var _local4:FocusEvent = new FocusEvent(FocusEvent.KEY_FOCUS_CHANGE); _local4.keyCode = Keyboard.TAB; _local4.shiftKey = ((_arg1)==FocusRequestDirection.FORWARD) ? false : true; keyFocusChangeHandler(_local4); fauxFocus = null; } private function getMaxTabIndex():int{ var _local4:Number; var _local1:Number = 0; var _local2:int = focusableObjects.length; var _local3:int; while (_local3 < _local2) { _local4 = focusableObjects[_local3].tabIndex; if (!isNaN(_local4)){ _local1 = Math.max(_local1, _local4); }; _local3++; }; return (_local1); } private function isParent(_arg1:DisplayObjectContainer, _arg2:DisplayObject):Boolean{ if ((_arg1 is IRawChildrenContainer)){ return (IRawChildrenContainer(_arg1).rawChildren.contains(_arg2)); }; return (_arg1.contains(_arg2)); } private function showHandler(_arg1:Event):void{ form.systemManager.activate(form); } mx_internal function set form(_arg1:IFocusManagerContainer):void{ _form = _arg1; } public function setFocus(_arg1:IFocusManagerComponent):void{ _arg1.setFocus(); focusSetLocally = true; } public function findFocusManagerComponent(_arg1:InteractiveObject):IFocusManagerComponent{ return ((findFocusManagerComponent2(_arg1) as IFocusManagerComponent)); } public function removeSWFBridge(_arg1:IEventDispatcher):void{ var _local4:int; var _local2:ISystemManager = _form.systemManager; var _local3:DisplayObject = DisplayObject(swfBridgeGroup.getChildBridgeProvider(_arg1)); if (_local3){ _local4 = focusableObjects.indexOf(_local3); if (_local4 != -1){ focusableObjects.splice(_local4, 1); calculateCandidates = true; }; } else { throw (new Error()); }; _arg1.removeEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler); _arg1.removeEventListener(SWFBridgeRequest.SET_SHOW_FOCUS_INDICATOR_REQUEST, setShowFocusIndicatorRequestHandler); _arg1.removeEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE, bridgeEventActivateHandler); swfBridgeGroup.removeChildBridge(_arg1); } private function sortFocusableObjectsTabIndex():void{ var _local3:IFocusManagerComponent; focusableCandidates = []; var _local1:int = focusableObjects.length; var _local2:int; while (_local2 < _local1) { _local3 = (focusableObjects[_local2] as IFocusManagerComponent); if (((((((_local3) && (_local3.tabIndex))) && (!(isNaN(Number(_local3.tabIndex)))))) || ((focusableObjects[_local2] is ISWFLoader)))){ focusableCandidates.push(focusableObjects[_local2]); }; _local2++; }; focusableCandidates.sort(sortByTabIndex); } public function set defaultButton(_arg1:IButton):void{ var _local2:IButton = (_arg1) ? IButton(_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 setFocusToNextObject(_arg1:FocusEvent):void{ focusChanged = false; if (focusableObjects.length == 0){ return; }; var _local2:FocusInfo = getNextFocusManagerComponent2(_arg1.shiftKey, fauxFocus); if (((!(popup)) && (_local2.wrapped))){ if (getParentBridge()){ moveFocusToParent(_arg1.shiftKey); return; }; }; setFocusToComponent(_local2.displayObject, _arg1.shiftKey); } private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{ while (_arg1 != InteractiveObject(form)) { if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (((_arg1 is IUIComponent)) ? IUIComponent(_arg1).enabled : true))){ return (_arg1); }; if ((_arg1.parent is ISWFLoader)){ if (ISWFLoader(_arg1.parent).swfBridge){ return (null); }; }; _arg1 = _arg1.parent; if (_arg1 == null){ break; }; }; return (null); } private function addedToStageHandler(_arg1:Event):void{ _form.removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); if (focusableObjects.length == 0){ addFocusables(DisplayObject(_form)); calculateCandidates = true; }; } private function hideHandler(_arg1:Event):void{ form.systemManager.deactivate(form); } private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer = DisplayObject(form).parent; while (_arg1 != _local2) { if ((_arg1 is IUIComponent)){ if (!IUIComponent(_arg1).enabled){ return (false); }; }; if (!_arg1.visible){ return (false); }; _arg1 = _arg1.parent; }; return (true); } public function hideFocus():void{ if (showFocusIndicator){ showFocusIndicator = false; if (_lastFocus){ _lastFocus.drawFocus(false); }; }; } private function getBrowserFocusComponent(_arg1:Boolean):InteractiveObject{ var _local3:int; var _local2:InteractiveObject = form.systemManager.stage.focus; if (!_local2){ _local3 = (_arg1) ? 0 : (focusableCandidates.length - 1); _local2 = focusableCandidates[_local3]; }; return (_local2); } public function get showFocusIndicator():Boolean{ return (_showFocusIndicator); } private function moveFocusToParent(_arg1:Boolean):Boolean{ var _local2:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.MOVE_FOCUS_REQUEST, false, true, null, (_arg1) ? FocusRequestDirection.BACKWARD : FocusRequestDirection.FORWARD); var _local3:IEventDispatcher = _form.systemManager.swfBridgeGroup.parentBridge; _local3.dispatchEvent(_local2); focusChanged = _local2.data; return (focusChanged); } public function set focusPane(_arg1:Sprite):void{ _focusPane = _arg1; } mx_internal function get form():IFocusManagerContainer{ return (_form); } private function removedHandler(_arg1:Event):void{ var _local2:int; var _local3:DisplayObject = DisplayObject(_arg1.target); if ((_local3 is IFocusManagerComponent)){ _local2 = 0; while (_local2 < focusableObjects.length) { if (_local3 == focusableObjects[_local2]){ if (_local3 == _lastFocus){ _lastFocus.drawFocus(false); _lastFocus = null; }; _local3.removeEventListener("tabEnabledChange", tabEnabledChangeHandler); _local3.removeEventListener("tabIndexChange", tabIndexChangeHandler); focusableObjects.splice(_local2, 1); calculateCandidates = true; break; }; _local2++; }; }; removeFocusables(_local3, false); } private function dispatchEventFromSWFBridges(_arg1:Event, _arg2:IEventDispatcher=null):void{ var _local3:Event; var _local7:IEventDispatcher; var _local4:ISystemManager = form.systemManager; if (!popup){ _local7 = swfBridgeGroup.parentBridge; if (((_local7) && (!((_local7 == _arg2))))){ _local3 = _arg1.clone(); if ((_local3 is SWFBridgeRequest)){ SWFBridgeRequest(_local3).requestor = _local7; }; _local7.dispatchEvent(_local3); }; }; var _local5:Array = swfBridgeGroup.getChildBridges(); var _local6:int; while (_local6 < _local5.length) { if (_local5[_local6] != _arg2){ _local3 = _arg1.clone(); if ((_local3 is SWFBridgeRequest)){ SWFBridgeRequest(_local3).requestor = IEventDispatcher(_local5[_local6]); }; IEventDispatcher(_local5[_local6]).dispatchEvent(_local3); }; _local6++; }; } public function get defaultButton():IButton{ return (_defaultButton); } private function activateHandler(_arg1:Event):void{ if (((_lastFocus) && (!(browserMode)))){ _lastFocus.setFocus(); }; lastAction = "ACTIVATE"; } public function showFocus():void{ if (!showFocusIndicator){ showFocusIndicator = true; if (_lastFocus){ _lastFocus.drawFocus(true); }; }; } public function getNextFocusManagerComponent(_arg1:Boolean=false):IFocusManagerComponent{ return ((getNextFocusManagerComponent2(false, fauxFocus) as IFocusManagerComponent)); } private function setShowFocusIndicatorRequestHandler(_arg1:Event):void{ if ((_arg1 is SWFBridgeRequest)){ return; }; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); _showFocusIndicator = _local2.data; dispatchSetShowFocusIndicatorRequest(_showFocusIndicator, IEventDispatcher(_arg1.target)); } private function setFocusToTop():void{ setFocusToNextIndex(-1, false); } private function isTabVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObject = DisplayObject(form.systemManager); if (!_local2){ return (false); }; var _local3:DisplayObjectContainer = _arg1.parent; while (((_local3) && (!((_local3 == _local2))))) { if (!_local3.tabChildren){ return (false); }; _local3 = _local3.parent; }; return (true); } mx_internal function get lastFocus():IFocusManagerComponent{ return (_lastFocus); } public function set defaultButtonEnabled(_arg1:Boolean):void{ _defaultButtonEnabled = _arg1; } public function get defaultButtonEnabled():Boolean{ return (_defaultButtonEnabled); } public function set showFocusIndicator(_arg1:Boolean):void{ var _local2 = !((_showFocusIndicator == _arg1)); _showFocusIndicator = _arg1; if (((((_local2) && (!(popup)))) && (form.systemManager.swfBridgeGroup))){ dispatchSetShowFocusIndicatorRequest(_arg1, null); }; } private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{ var _local3:int = _arg1.tabIndex; var _local4:int = _arg2.tabIndex; if (_local3 == -1){ _local3 = int.MAX_VALUE; }; if (_local4 == -1){ _local4 = int.MAX_VALUE; }; return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : sortByDepth(DisplayObject(_arg1), DisplayObject(_arg2))); } public function activate():void{ if (activated){ return; }; var _local1:ISystemManager = form.systemManager; if (_local1){ if (_local1.isTopLevelRoot()){ _local1.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true); _local1.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true); _local1.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true); _local1.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); } else { _local1.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true); _local1.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true); _local1.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true); _local1.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); }; }; form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = true; if (_lastFocus){ setFocus(_lastFocus); }; dispatchEventFromSWFBridges(new SWFBridgeRequest(SWFBridgeRequest.ACTIVATE_FOCUS_REQUEST), skipBridge); } private function setFocusToNextIndex(_arg1:int, _arg2:Boolean):void{ if (focusableObjects.length == 0){ return; }; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; var _local3:FocusInfo = getNextFocusManagerComponent2(_arg2, null, _arg1); if (((!(popup)) && (_local3.wrapped))){ if (getParentBridge()){ moveFocusToParent(_arg2); return; }; }; setFocusToComponent(_local3.displayObject, _arg2); } } }//package mx.managers import flash.display.*; class FocusInfo { public var displayObject:DisplayObject; public var wrapped:Boolean; private function FocusInfo(){ } }
Section 285
//HistoryManager (mx.managers.HistoryManager) package mx.managers { import mx.core.*; public class HistoryManager { mx_internal static const VERSION:String = "3.2.0.3794"; private static var implClassDependency:HistoryManagerImpl; private static var _impl:IHistoryManager; public static function save():void{ impl.save(); } private static function get impl():IHistoryManager{ if (!_impl){ _impl = IHistoryManager(Singleton.getInstance("mx.managers::IHistoryManager")); }; return (_impl); } public static function register(_arg1:IHistoryManagerClient):void{ impl.register(_arg1); } public static function unregister(_arg1:IHistoryManagerClient):void{ impl.unregister(_arg1); } public static function initialize(_arg1:ISystemManager):void{ } } }//package mx.managers
Section 286
//HistoryManagerGlobals (mx.managers.HistoryManagerGlobals) package mx.managers { import flash.display.*; public class HistoryManagerGlobals { public static var loaderInfo:LoaderInfo; } }//package mx.managers
Section 287
//HistoryManagerImpl (mx.managers.HistoryManagerImpl) package mx.managers { import flash.display.*; import mx.core.*; import mx.events.*; import flash.utils.*; public class HistoryManagerImpl implements IHistoryManager { private var registeredObjects:Array; private var pendingQueryString:String; private var pendingStates:Object; private var registrationMap:Dictionary; private static const NAME_VALUE_SEPARATOR:String = "="; private static const HANDSHAKE_INTERVAL:int = 500; private static const ID_NAME_SEPARATOR:String = "-"; private static const MAX_HANDSHAKE_TRIES:int = 100; mx_internal static const VERSION:String = "3.2.0.3794"; private static const PROPERTY_SEPARATOR:String = "&"; private static var instance:IHistoryManager; private static var appID:String; private static var historyURL:String; private static var systemManager:ISystemManager; public function HistoryManagerImpl(){ var _local1:LoaderInfo; var _local2:String; registeredObjects = []; pendingStates = {}; super(); if (instance){ throw (new Error("Instance already exists.")); }; if (appID){ return; }; if (!ApplicationGlobals.application.historyManagementEnabled){ return; }; if (HistoryManagerGlobals.loaderInfo){ _local1 = HistoryManagerGlobals.loaderInfo; } else { _local1 = DisplayObject(systemManager).loaderInfo; }; if (HistoryManagerGlobals.loaderInfo){ _local2 = HistoryManagerGlobals.loaderInfo.url; } else { _local2 = DisplayObject(systemManager).loaderInfo.url; }; appID = calcCRC(_local2); BrowserManager.getInstance().addEventListener(BrowserChangeEvent.BROWSER_URL_CHANGE, browserURLChangeHandler); BrowserManager.getInstance().initForHistoryManager(); } public function registered():void{ } public function unregister(_arg1:IHistoryManagerClient):void{ if (!ApplicationGlobals.application.historyManagementEnabled){ return; }; var _local2 = -1; var _local3:int = registeredObjects.length; var _local4:int; while (_local4 < _local3) { if (registeredObjects[_local4] == _arg1){ _local2 = _local4; break; }; _local4++; }; if (_local2 >= 0){ registeredObjects.splice(_local2, 1); }; if (((_arg1) && (registrationMap))){ delete registrationMap[_arg1]; }; } private function updateCRC(_arg1:uint, _arg2:uint):uint{ var _local6:Boolean; var _local3:uint = 4129; var _local4:uint = 128; var _local5:int; while (_local5 < 8) { _local6 = !(((_arg1 & 0x8000) == 0)); _arg1 = (_arg1 << 1); _arg1 = (_arg1 & 0xFFFF); if ((_arg2 & _local4) != 0){ _arg1++; }; if (_local6){ _arg1 = (_arg1 ^ _local3); }; _local4 = (_local4 >> 1); _local5++; }; return (_arg1); } private function submitQuery():void{ if (pendingQueryString){ BrowserManager.getInstance().setFragment(pendingQueryString); pendingQueryString = null; ApplicationGlobals.application.resetHistory = true; }; } public function browserURLChangeHandler(_arg1:BrowserChangeEvent):void{ var _local2:String; var _local3:String; var _local9:Array; var _local10:int; var _local11:String; var _local12:Object; var _local13:IHistoryManagerClient; if (!ApplicationGlobals.application.historyManagementEnabled){ return; }; var _local4:Array = _arg1.url.split(PROPERTY_SEPARATOR); var _local5:Object = {}; var _local6:int = _local4.length; var _local7:int; while (_local7 < _local6) { _local9 = _local4[_local7].split(NAME_VALUE_SEPARATOR); _local5[_local9[0]] = parseString(_local9[1]); _local7++; }; var _local8:Object = {}; for (_local2 in _local5) { _local10 = _local2.indexOf(ID_NAME_SEPARATOR); if (_local10 > -1){ _local3 = _local2.substr(0, _local10); _local11 = _local2.substr((_local10 + 1), _local2.length); _local12 = _local5[_local2]; if (!_local8[_local3]){ _local8[_local3] = {}; }; _local8[_local3][_local11] = _local12; }; }; _local6 = registeredObjects.length; _local7 = 0; while (_local7 < _local6) { _local13 = registeredObjects[_local7]; _local3 = getRegistrationInfo(_local13).crc; _local13.loadState(_local8[_local3]); delete _local8[_local3]; _local7++; }; for (_local2 in _local8) { pendingStates[_local2] = _local8[_local2]; }; } public function registerHandshake():void{ } private function getRegistrationInfo(_arg1:IHistoryManagerClient):RegistrationInfo{ return ((registrationMap) ? registrationMap[_arg1] : null); } private function getPath(_arg1:IHistoryManagerClient):String{ return (_arg1.toString()); } public function load(_arg1:Object):void{ } private function depthCompare(_arg1:Object, _arg2:Object):int{ var _local3:RegistrationInfo = getRegistrationInfo(IHistoryManagerClient(_arg1)); var _local4:RegistrationInfo = getRegistrationInfo(IHistoryManagerClient(_arg2)); if (((!(_local3)) || (!(_local4)))){ return (0); }; if (_local3.depth > _local4.depth){ return (1); }; if (_local3.depth < _local4.depth){ return (-1); }; return (0); } public function register(_arg1:IHistoryManagerClient):void{ if (!ApplicationGlobals.application.historyManagementEnabled){ return; }; unregister(_arg1); registeredObjects.push(_arg1); var _local2:String = getPath(_arg1); var _local3:String = calcCRC(_local2); var _local4:int = calcDepth(_local2); if (!registrationMap){ registrationMap = new Dictionary(true); }; registrationMap[_arg1] = new RegistrationInfo(_local3, _local4); registeredObjects.sort(depthCompare); if (pendingStates[_local3]){ _arg1.loadState(pendingStates[_local3]); delete pendingStates[_local3]; }; } private function parseString(_arg1:String):Object{ if (_arg1 == "true"){ return (true); }; if (_arg1 == "false"){ return (false); }; var _local2:int = parseInt(_arg1); if (_local2.toString() == _arg1){ return (_local2); }; var _local3:Number = parseFloat(_arg1); if (_local3.toString() == _arg1){ return (_local3); }; return (_arg1); } private function calcDepth(_arg1:String):int{ return (_arg1.split(".").length); } public function loadInitialState():void{ } public function save():void{ var _local5:IHistoryManagerClient; var _local6:Object; var _local7:String; var _local8:String; var _local9:Object; if (!ApplicationGlobals.application.historyManagementEnabled){ return; }; var _local1:Boolean; var _local2:String = ("app=" + appID); var _local3:int = registeredObjects.length; var _local4:int; while (_local4 < _local3) { _local5 = registeredObjects[_local4]; _local6 = _local5.saveState(); _local7 = getRegistrationInfo(_local5).crc; for (_local8 in _local6) { _local9 = _local6[_local8]; if (_local2.length > 0){ _local2 = (_local2 + PROPERTY_SEPARATOR); }; _local2 = (_local2 + _local7); _local2 = (_local2 + ID_NAME_SEPARATOR); _local2 = (_local2 + escape(_local8)); _local2 = (_local2 + NAME_VALUE_SEPARATOR); _local2 = (_local2 + escape(_local9.toString())); _local1 = true; }; _local4++; }; if (_local1){ pendingQueryString = _local2; ApplicationGlobals.application.callLater(this.submitQuery); }; } private function calcCRC(_arg1:String):String{ var _local5:uint; var _local6:uint; var _local7:uint; var _local2:uint = 0xFFFF; var _local3:int = _arg1.length; var _local4:int; while (_local4 < _local3) { _local5 = _arg1.charCodeAt(_local4); _local6 = (_local5 & 0xFF); _local7 = (_local5 >> 8); if (_local7 != 0){ _local2 = updateCRC(_local2, _local7); }; _local2 = updateCRC(_local2, _local6); _local4++; }; _local2 = updateCRC(_local2, 0); _local2 = updateCRC(_local2, 0); return (_local2.toString(16)); } public static function getInstance():IHistoryManager{ if (!instance){ systemManager = SystemManagerGlobals.topLevelSystemManagers[0]; instance = new (HistoryManagerImpl); }; return (instance); } } }//package mx.managers class RegistrationInfo { public var depth:int; public var crc:String; mx_internal static const VERSION:String = "3.2.0.3794"; private function RegistrationInfo(_arg1:String, _arg2:int){ this.crc = _arg1; this.depth = _arg2; } }
Section 288
//IBrowserManager (mx.managers.IBrowserManager) package mx.managers { import flash.events.*; public interface IBrowserManager extends IEventDispatcher { function get fragment():String; function get base():String; function setFragment(_arg1:String):void; function setTitle(_arg1:String):void; function init(_arg1:String=null, _arg2:String=null):void; function get title():String; function initForHistoryManager():void; function get url():String; } }//package mx.managers
Section 289
//ICursorManager (mx.managers.ICursorManager) package mx.managers { public interface ICursorManager { function removeAllCursors():void; function set currentCursorYOffset(_arg1:Number):void; function removeBusyCursor():void; function unRegisterToUseBusyCursor(_arg1:Object):void; function hideCursor():void; function get currentCursorID():int; function registerToUseBusyCursor(_arg1:Object):void; function setBusyCursor():void; function showCursor():void; function set currentCursorID(_arg1:int):void; function setCursor(_arg1:Class, _arg2:int=2, _arg3:Number=0, _arg4:Number=0):int; function removeCursor(_arg1:int):void; function get currentCursorXOffset():Number; function get currentCursorYOffset():Number; function set currentCursorXOffset(_arg1:Number):void; } }//package mx.managers
Section 290
//IDragManager (mx.managers.IDragManager) package mx.managers { import mx.core.*; import flash.events.*; public interface IDragManager { function showFeedback(_arg1:String):void; function doDrag(_arg1:IUIComponent, _arg2:DragSource, _arg3:MouseEvent, _arg4:IFlexDisplayObject=null, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0.5, _arg8:Boolean=true):void; function get isDragging():Boolean; function getFeedback():String; function acceptDragDrop(_arg1:IUIComponent):void; function endDrag():void; } }//package mx.managers
Section 291
//IFocusManager (mx.managers.IFocusManager) package mx.managers { import flash.display.*; import mx.core.*; import flash.events.*; public interface IFocusManager { function get focusPane():Sprite; function getFocus():IFocusManagerComponent; function deactivate():void; function set defaultButton(_arg1:IButton):void; function set focusPane(_arg1:Sprite):void; function set showFocusIndicator(_arg1:Boolean):void; function moveFocus(_arg1:String, _arg2:DisplayObject=null):void; function addSWFBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void; function removeSWFBridge(_arg1:IEventDispatcher):void; function get defaultButtonEnabled():Boolean; function findFocusManagerComponent(_arg1:InteractiveObject):IFocusManagerComponent; function get nextTabIndex():int; function get defaultButton():IButton; function get showFocusIndicator():Boolean; function setFocus(_arg1:IFocusManagerComponent):void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function hideFocus():void; function getNextFocusManagerComponent(_arg1:Boolean=false):IFocusManagerComponent; } }//package mx.managers
Section 292
//IFocusManagerComplexComponent (mx.managers.IFocusManagerComplexComponent) package mx.managers { public interface IFocusManagerComplexComponent extends IFocusManagerComponent { function assignFocus(_arg1:String):void; function get hasFocusableContent():Boolean; } }//package mx.managers
Section 293
//IFocusManagerComponent (mx.managers.IFocusManagerComponent) package mx.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 mx.managers
Section 294
//IFocusManagerContainer (mx.managers.IFocusManagerContainer) package mx.managers { import flash.display.*; import flash.events.*; public interface IFocusManagerContainer extends IEventDispatcher { function set focusManager(_arg1:IFocusManager):void; function get focusManager():IFocusManager; function get systemManager():ISystemManager; function contains(_arg1:DisplayObject):Boolean; } }//package mx.managers
Section 295
//IFocusManagerGroup (mx.managers.IFocusManagerGroup) package mx.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 mx.managers
Section 296
//IHistoryManager (mx.managers.IHistoryManager) package mx.managers { public interface IHistoryManager { function registered():void; function register(_arg1:IHistoryManagerClient):void; function registerHandshake():void; function load(_arg1:Object):void; function loadInitialState():void; function unregister(_arg1:IHistoryManagerClient):void; function save():void; } }//package mx.managers
Section 297
//IHistoryManagerClient (mx.managers.IHistoryManagerClient) package mx.managers { public interface IHistoryManagerClient { function loadState(_arg1:Object):void; function saveState():Object; function toString():String; } }//package mx.managers
Section 298
//ILayoutManager (mx.managers.ILayoutManager) package mx.managers { import flash.events.*; public interface ILayoutManager extends IEventDispatcher { function validateNow():void; function validateClient(_arg1:ILayoutManagerClient, _arg2:Boolean=false):void; function isInvalid():Boolean; function invalidateDisplayList(_arg1:ILayoutManagerClient):void; function set usePhasedInstantiation(_arg1:Boolean):void; function invalidateSize(_arg1:ILayoutManagerClient):void; function get usePhasedInstantiation():Boolean; function invalidateProperties(_arg1:ILayoutManagerClient):void; } }//package mx.managers
Section 299
//ILayoutManagerClient (mx.managers.ILayoutManagerClient) package mx.managers { import flash.events.*; public interface ILayoutManagerClient extends IEventDispatcher { function get updateCompletePendingFlag():Boolean; function set updateCompletePendingFlag(_arg1:Boolean):void; function set initialized(_arg1:Boolean):void; function validateProperties():void; function validateDisplayList():void; function get nestLevel():int; function get initialized():Boolean; function get processedDescriptors():Boolean; function validateSize(_arg1:Boolean=false):void; function set nestLevel(_arg1:int):void; function set processedDescriptors(_arg1:Boolean):void; } }//package mx.managers
Section 300
//IPopUpManager (mx.managers.IPopUpManager) package mx.managers { import flash.display.*; import mx.core.*; public interface IPopUpManager { function createPopUp(_arg1:DisplayObject, _arg2:Class, _arg3:Boolean=false, _arg4:String=null):IFlexDisplayObject; function centerPopUp(_arg1:IFlexDisplayObject):void; function removePopUp(_arg1:IFlexDisplayObject):void; function addPopUp(_arg1:IFlexDisplayObject, _arg2:DisplayObject, _arg3:Boolean=false, _arg4:String=null):void; function bringToFront(_arg1:IFlexDisplayObject):void; } }//package mx.managers
Section 301
//ISystemManager (mx.managers.ISystemManager) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.text.*; import flash.events.*; public interface ISystemManager extends IEventDispatcher, IChildList, IFlexModuleFactory { function set focusPane(_arg1:Sprite):void; function get toolTipChildren():IChildList; function useSWFBridge():Boolean; function isFontFaceEmbedded(_arg1:TextFormat):Boolean; function deployMouseShields(_arg1:Boolean):void; function get rawChildren():IChildList; function get topLevelSystemManager():ISystemManager; function dispatchEventFromSWFBridges(_arg1:Event, _arg2:IEventDispatcher=null, _arg3:Boolean=false, _arg4:Boolean=false):void; function getSandboxRoot():DisplayObject; function get swfBridgeGroup():ISWFBridgeGroup; function removeFocusManager(_arg1:IFocusManagerContainer):void; function addChildToSandboxRoot(_arg1:String, _arg2:DisplayObject):void; function get document():Object; function get focusPane():Sprite; function get loaderInfo():LoaderInfo; function addChildBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void; function getTopLevelRoot():DisplayObject; function removeChildBridge(_arg1:IEventDispatcher):void; function isDisplayObjectInABridgedApplication(_arg1:DisplayObject):Boolean; function get popUpChildren():IChildList; function get screen():Rectangle; function removeChildFromSandboxRoot(_arg1:String, _arg2:DisplayObject):void; function getDefinitionByName(_arg1:String):Object; function activate(_arg1:IFocusManagerContainer):void; function deactivate(_arg1:IFocusManagerContainer):void; function get cursorChildren():IChildList; function set document(_arg1:Object):void; function get embeddedFontList():Object; function set numModalWindows(_arg1:int):void; function isTopLevel():Boolean; function isTopLevelRoot():Boolean; function get numModalWindows():int; function addFocusManager(_arg1:IFocusManagerContainer):void; function get stage():Stage; function getVisibleApplicationRect(_arg1:Rectangle=null):Rectangle; } }//package mx.managers
Section 302
//IToolTipManager2 (mx.managers.IToolTipManager2) package mx.managers { import flash.display.*; import mx.core.*; import mx.effects.*; public interface IToolTipManager2 { function registerToolTip(_arg1:DisplayObject, _arg2:String, _arg3:String):void; function get enabled():Boolean; function set enabled(_arg1:Boolean):void; function get scrubDelay():Number; function set hideEffect(_arg1:IAbstractEffect):void; function createToolTip(_arg1:String, _arg2:Number, _arg3:Number, _arg4:String=null, _arg5:IUIComponent=null):IToolTip; function set scrubDelay(_arg1:Number):void; function set hideDelay(_arg1:Number):void; function get currentTarget():DisplayObject; function set showDelay(_arg1:Number):void; function get showDelay():Number; function get showEffect():IAbstractEffect; function get hideDelay():Number; function get currentToolTip():IToolTip; function get hideEffect():IAbstractEffect; function set currentToolTip(_arg1:IToolTip):void; function get toolTipClass():Class; function registerErrorString(_arg1:DisplayObject, _arg2:String, _arg3:String):void; function destroyToolTip(_arg1:IToolTip):void; function set toolTipClass(_arg1:Class):void; function sizeTip(_arg1:IToolTip):void; function set currentTarget(_arg1:DisplayObject):void; function set showEffect(_arg1:IAbstractEffect):void; } }//package mx.managers
Section 303
//IToolTipManagerClient (mx.managers.IToolTipManagerClient) package mx.managers { import mx.core.*; public interface IToolTipManagerClient extends IFlexDisplayObject { function get toolTip():String; function set toolTip(_arg1:String):void; } }//package mx.managers
Section 304
//LayoutManager (mx.managers.LayoutManager) package mx.managers { import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.managers.layoutClasses.*; public class LayoutManager extends EventDispatcher implements ILayoutManager { private var invalidateClientPropertiesFlag:Boolean;// = false private var invalidateDisplayListQueue:PriorityQueue; private var updateCompleteQueue:PriorityQueue; private var invalidateDisplayListFlag:Boolean;// = false private var invalidateClientSizeFlag:Boolean;// = false private var invalidateSizeQueue:PriorityQueue; private var originalFrameRate:Number; private var invalidatePropertiesFlag:Boolean;// = false private var invalidatePropertiesQueue:PriorityQueue; private var invalidateSizeFlag:Boolean;// = false private var callLaterPending:Boolean;// = false private var _usePhasedInstantiation:Boolean;// = false private var callLaterObject:UIComponent; private var targetLevel:int;// = 2147483647 mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:LayoutManager; public function LayoutManager(){ updateCompleteQueue = new PriorityQueue(); invalidatePropertiesQueue = new PriorityQueue(); invalidateSizeQueue = new PriorityQueue(); invalidateDisplayListQueue = new PriorityQueue(); super(); } public function set usePhasedInstantiation(_arg1:Boolean):void{ var sm:ISystemManager; var stage:Stage; var value = _arg1; if (_usePhasedInstantiation != value){ _usePhasedInstantiation = value; try { sm = SystemManagerGlobals.topLevelSystemManagers[0]; stage = SystemManagerGlobals.topLevelSystemManagers[0].stage; if (stage){ if (value){ originalFrameRate = stage.frameRate; stage.frameRate = 1000; } else { stage.frameRate = originalFrameRate; }; }; } catch(e:SecurityError) { }; }; } private function waitAFrame():void{ callLaterObject.callLater(doPhasedInstantiation); } public function validateClient(_arg1:ILayoutManagerClient, _arg2:Boolean=false):void{ var _local3:ILayoutManagerClient; var _local4:int; var _local5:Boolean; var _local6:int = targetLevel; if (targetLevel == int.MAX_VALUE){ targetLevel = _arg1.nestLevel; }; while (!(_local5)) { _local5 = true; _local3 = ILayoutManagerClient(invalidatePropertiesQueue.removeSmallestChild(_arg1)); while (_local3) { _local3.validateProperties(); if (!_local3.updateCompletePendingFlag){ updateCompleteQueue.addObject(_local3, _local3.nestLevel); _local3.updateCompletePendingFlag = true; }; _local3 = ILayoutManagerClient(invalidatePropertiesQueue.removeSmallestChild(_arg1)); }; if (invalidatePropertiesQueue.isEmpty()){ invalidatePropertiesFlag = false; invalidateClientPropertiesFlag = false; }; _local3 = ILayoutManagerClient(invalidateSizeQueue.removeLargestChild(_arg1)); while (_local3) { _local3.validateSize(); if (!_local3.updateCompletePendingFlag){ updateCompleteQueue.addObject(_local3, _local3.nestLevel); _local3.updateCompletePendingFlag = true; }; if (invalidateClientPropertiesFlag){ _local3 = ILayoutManagerClient(invalidatePropertiesQueue.removeSmallestChild(_arg1)); if (_local3){ invalidatePropertiesQueue.addObject(_local3, _local3.nestLevel); _local5 = false; break; }; }; _local3 = ILayoutManagerClient(invalidateSizeQueue.removeLargestChild(_arg1)); }; if (invalidateSizeQueue.isEmpty()){ invalidateSizeFlag = false; invalidateClientSizeFlag = false; }; if (!_arg2){ _local3 = ILayoutManagerClient(invalidateDisplayListQueue.removeSmallestChild(_arg1)); while (_local3) { _local3.validateDisplayList(); if (!_local3.updateCompletePendingFlag){ updateCompleteQueue.addObject(_local3, _local3.nestLevel); _local3.updateCompletePendingFlag = true; }; if (invalidateClientPropertiesFlag){ _local3 = ILayoutManagerClient(invalidatePropertiesQueue.removeSmallestChild(_arg1)); if (_local3){ invalidatePropertiesQueue.addObject(_local3, _local3.nestLevel); _local5 = false; break; }; }; if (invalidateClientSizeFlag){ _local3 = ILayoutManagerClient(invalidateSizeQueue.removeLargestChild(_arg1)); if (_local3){ invalidateSizeQueue.addObject(_local3, _local3.nestLevel); _local5 = false; break; }; }; _local3 = ILayoutManagerClient(invalidateDisplayListQueue.removeSmallestChild(_arg1)); }; if (invalidateDisplayListQueue.isEmpty()){ invalidateDisplayListFlag = false; }; }; }; if (_local6 == int.MAX_VALUE){ targetLevel = int.MAX_VALUE; if (!_arg2){ _local3 = ILayoutManagerClient(updateCompleteQueue.removeLargestChild(_arg1)); while (_local3) { if (!_local3.initialized){ _local3.initialized = true; }; _local3.dispatchEvent(new FlexEvent(FlexEvent.UPDATE_COMPLETE)); _local3.updateCompletePendingFlag = false; _local3 = ILayoutManagerClient(updateCompleteQueue.removeLargestChild(_arg1)); }; }; }; } private function validateProperties():void{ var _local1:ILayoutManagerClient = ILayoutManagerClient(invalidatePropertiesQueue.removeSmallest()); while (_local1) { _local1.validateProperties(); if (!_local1.updateCompletePendingFlag){ updateCompleteQueue.addObject(_local1, _local1.nestLevel); _local1.updateCompletePendingFlag = true; }; _local1 = ILayoutManagerClient(invalidatePropertiesQueue.removeSmallest()); }; if (invalidatePropertiesQueue.isEmpty()){ invalidatePropertiesFlag = false; }; } public function invalidateProperties(_arg1:ILayoutManagerClient):void{ if (((!(invalidatePropertiesFlag)) && (ApplicationGlobals.application.systemManager))){ invalidatePropertiesFlag = true; if (!callLaterPending){ if (!callLaterObject){ callLaterObject = new UIComponent(); callLaterObject.systemManager = ApplicationGlobals.application.systemManager; callLaterObject.callLater(waitAFrame); } else { callLaterObject.callLater(doPhasedInstantiation); }; callLaterPending = true; }; }; if (targetLevel <= _arg1.nestLevel){ invalidateClientPropertiesFlag = true; }; invalidatePropertiesQueue.addObject(_arg1, _arg1.nestLevel); } public function invalidateDisplayList(_arg1:ILayoutManagerClient):void{ if (((!(invalidateDisplayListFlag)) && (ApplicationGlobals.application.systemManager))){ invalidateDisplayListFlag = true; if (!callLaterPending){ if (!callLaterObject){ callLaterObject = new UIComponent(); callLaterObject.systemManager = ApplicationGlobals.application.systemManager; callLaterObject.callLater(waitAFrame); } else { callLaterObject.callLater(doPhasedInstantiation); }; callLaterPending = true; }; } else { if (((!(invalidateDisplayListFlag)) && (!(ApplicationGlobals.application.systemManager)))){ }; }; invalidateDisplayListQueue.addObject(_arg1, _arg1.nestLevel); } private function validateDisplayList():void{ var _local1:ILayoutManagerClient = ILayoutManagerClient(invalidateDisplayListQueue.removeSmallest()); while (_local1) { _local1.validateDisplayList(); if (!_local1.updateCompletePendingFlag){ updateCompleteQueue.addObject(_local1, _local1.nestLevel); _local1.updateCompletePendingFlag = true; }; _local1 = ILayoutManagerClient(invalidateDisplayListQueue.removeSmallest()); }; if (invalidateDisplayListQueue.isEmpty()){ invalidateDisplayListFlag = false; }; } public function validateNow():void{ var _local1:int; if (!usePhasedInstantiation){ _local1 = 0; while (((callLaterPending) && ((_local1 < 100)))) { doPhasedInstantiation(); }; }; } private function validateSize():void{ var _local1:ILayoutManagerClient = ILayoutManagerClient(invalidateSizeQueue.removeLargest()); while (_local1) { _local1.validateSize(); if (!_local1.updateCompletePendingFlag){ updateCompleteQueue.addObject(_local1, _local1.nestLevel); _local1.updateCompletePendingFlag = true; }; _local1 = ILayoutManagerClient(invalidateSizeQueue.removeLargest()); }; if (invalidateSizeQueue.isEmpty()){ invalidateSizeFlag = false; }; } private function doPhasedInstantiation():void{ var _local1:ILayoutManagerClient; if (usePhasedInstantiation){ if (invalidatePropertiesFlag){ validateProperties(); ApplicationGlobals.application.dispatchEvent(new Event("validatePropertiesComplete")); } else { if (invalidateSizeFlag){ validateSize(); ApplicationGlobals.application.dispatchEvent(new Event("validateSizeComplete")); } else { if (invalidateDisplayListFlag){ validateDisplayList(); ApplicationGlobals.application.dispatchEvent(new Event("validateDisplayListComplete")); }; }; }; } else { if (invalidatePropertiesFlag){ validateProperties(); }; if (invalidateSizeFlag){ validateSize(); }; if (invalidateDisplayListFlag){ validateDisplayList(); }; }; if (((((invalidatePropertiesFlag) || (invalidateSizeFlag))) || (invalidateDisplayListFlag))){ callLaterObject.callLater(doPhasedInstantiation); } else { usePhasedInstantiation = false; callLaterPending = false; _local1 = ILayoutManagerClient(updateCompleteQueue.removeLargest()); while (_local1) { if (((!(_local1.initialized)) && (_local1.processedDescriptors))){ _local1.initialized = true; }; _local1.dispatchEvent(new FlexEvent(FlexEvent.UPDATE_COMPLETE)); _local1.updateCompletePendingFlag = false; _local1 = ILayoutManagerClient(updateCompleteQueue.removeLargest()); }; dispatchEvent(new FlexEvent(FlexEvent.UPDATE_COMPLETE)); }; } public function isInvalid():Boolean{ return (((((invalidatePropertiesFlag) || (invalidateSizeFlag))) || (invalidateDisplayListFlag))); } public function get usePhasedInstantiation():Boolean{ return (_usePhasedInstantiation); } public function invalidateSize(_arg1:ILayoutManagerClient):void{ if (((!(invalidateSizeFlag)) && (ApplicationGlobals.application.systemManager))){ invalidateSizeFlag = true; if (!callLaterPending){ if (!callLaterObject){ callLaterObject = new UIComponent(); callLaterObject.systemManager = ApplicationGlobals.application.systemManager; callLaterObject.callLater(waitAFrame); } else { callLaterObject.callLater(doPhasedInstantiation); }; callLaterPending = true; }; }; if (targetLevel <= _arg1.nestLevel){ invalidateClientSizeFlag = true; }; invalidateSizeQueue.addObject(_arg1, _arg1.nestLevel); } public static function getInstance():LayoutManager{ if (!instance){ instance = new (LayoutManager); }; return (instance); } } }//package mx.managers
Section 305
//PopUpManager (mx.managers.PopUpManager) package mx.managers { import flash.display.*; import mx.core.*; public class PopUpManager { mx_internal static const VERSION:String = "3.2.0.3794"; private static var implClassDependency:PopUpManagerImpl; private static var _impl:IPopUpManager; private static function get impl():IPopUpManager{ if (!_impl){ _impl = IPopUpManager(Singleton.getInstance("mx.managers::IPopUpManager")); }; return (_impl); } public static function removePopUp(_arg1:IFlexDisplayObject):void{ impl.removePopUp(_arg1); } public static function addPopUp(_arg1:IFlexDisplayObject, _arg2:DisplayObject, _arg3:Boolean=false, _arg4:String=null):void{ impl.addPopUp(_arg1, _arg2, _arg3, _arg4); } public static function centerPopUp(_arg1:IFlexDisplayObject):void{ impl.centerPopUp(_arg1); } public static function bringToFront(_arg1:IFlexDisplayObject):void{ impl.bringToFront(_arg1); } public static function createPopUp(_arg1:DisplayObject, _arg2:Class, _arg3:Boolean=false, _arg4:String=null):IFlexDisplayObject{ return (impl.createPopUp(_arg1, _arg2, _arg3, _arg4)); } } }//package mx.managers
Section 306
//PopUpManagerChildList (mx.managers.PopUpManagerChildList) package mx.managers { import mx.core.*; public final class PopUpManagerChildList { public static const PARENT:String = "parent"; public static const APPLICATION:String = "application"; mx_internal static const VERSION:String = "3.2.0.3794"; public static const POPUP:String = "popup"; } }//package mx.managers
Section 307
//PopUpManagerImpl (mx.managers.PopUpManagerImpl) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.automation.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.effects.*; import mx.utils.*; public class PopUpManagerImpl implements IPopUpManager { private var popupInfo:Array; mx_internal var modalWindowClass:Class; mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:IPopUpManager; public function PopUpManagerImpl(){ var _local1:ISystemManager = ISystemManager(SystemManagerGlobals.topLevelSystemManagers[0]); _local1.addEventListener(SWFBridgeRequest.CREATE_MODAL_WINDOW_REQUEST, createModalWindowRequestHandler, false, 0, true); _local1.addEventListener(SWFBridgeRequest.SHOW_MODAL_WINDOW_REQUEST, showModalWindowRequest, false, 0, true); _local1.addEventListener(SWFBridgeRequest.HIDE_MODAL_WINDOW_REQUEST, hideModalWindowRequest, false, 0, true); } private function showModalWindow(_arg1:PopUpData, _arg2:ISystemManager, _arg3:Boolean=true):void{ var _local4:IStyleClient = (_arg1.owner as IStyleClient); var _local5:Number = 0; var _local6:Number = 0; if (!isNaN(_arg1.modalTransparencyDuration)){ _local5 = _arg1.modalTransparencyDuration; } else { if (_local4){ _local5 = _local4.getStyle("modalTransparencyDuration"); _arg1.modalTransparencyDuration = _local5; }; }; if (!isNaN(_arg1.modalTransparency)){ _local6 = _arg1.modalTransparency; } else { if (_local4){ _local6 = _local4.getStyle("modalTransparency"); _arg1.modalTransparency = _local6; }; }; _arg1.modalWindow.alpha = _local6; var _local7:Number = 0; if (!isNaN(_arg1.modalTransparencyBlur)){ _local7 = _arg1.modalTransparencyBlur; } else { if (_local4){ _local7 = _local4.getStyle("modalTransparencyBlur"); _arg1.modalTransparencyBlur = _local7; }; }; var _local8:Number = 0xFFFFFF; if (!isNaN(_arg1.modalTransparencyColor)){ _local8 = _arg1.modalTransparencyColor; } else { if (_local4){ _local8 = _local4.getStyle("modalTransparencyColor"); _arg1.modalTransparencyColor = _local8; }; }; if ((_arg2 is SystemManagerProxy)){ _arg2 = SystemManagerProxy(_arg2).systemManager; }; var _local9:DisplayObject = _arg2.getSandboxRoot(); showModalWindowInternal(_arg1, _local5, _local6, _local8, _local7, _arg2, _local9); if (((_arg3) && (_arg2.useSWFBridge()))){ dispatchModalWindowRequest(SWFBridgeRequest.SHOW_MODAL_WINDOW_REQUEST, _arg2, _local9, _arg1, true); }; } private function popupShowHandler(_arg1:FlexEvent):void{ var _local2:PopUpData = findPopupInfoByOwner(_arg1.target); if (_local2){ showModalWindow(_local2, getTopLevelSystemManager(_local2.parent)); }; } public function bringToFront(_arg1:IFlexDisplayObject):void{ var _local2:PopUpData; var _local3:ISystemManager; var _local4:InterManagerRequest; if (((_arg1) && (_arg1.parent))){ _local2 = findPopupInfoByOwner(_arg1); if (_local2){ _local3 = ISystemManager(_arg1.parent); if ((_local3 is SystemManagerProxy)){ _local4 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "bringToFront", {topMost:_local2.topMost, popUp:_local3}); _local3.getSandboxRoot().dispatchEvent(_local4); } else { if (_local2.topMost){ _local3.popUpChildren.setChildIndex(DisplayObject(_arg1), (_local3.popUpChildren.numChildren - 1)); } else { _local3.setChildIndex(DisplayObject(_arg1), (_local3.numChildren - 1)); }; }; }; }; } public function centerPopUp(_arg1:IFlexDisplayObject):void{ var _local3:ISystemManager; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Rectangle; var _local11:Rectangle; var _local12:Point; var _local13:Point; var _local14:Boolean; var _local15:DisplayObject; var _local16:InterManagerRequest; var _local17:Point; if ((_arg1 is IInvalidating)){ IInvalidating(_arg1).validateNow(); }; var _local2:PopUpData = findPopupInfoByOwner(_arg1); if (((_local2) && (_local2.parent))){ _local3 = _local2.systemManager; _local12 = new Point(); _local15 = _local3.getSandboxRoot(); if (_local3 != _local15){ _local16 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "isTopLevelRoot"); _local15.dispatchEvent(_local16); _local14 = Boolean(_local16.value); } else { _local14 = _local3.isTopLevelRoot(); }; if (_local14){ _local10 = _local3.screen; _local6 = _local10.width; _local7 = _local10.height; } else { if (_local3 != _local15){ _local16 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "getVisibleApplicationRect"); _local15.dispatchEvent(_local16); _local11 = Rectangle(_local16.value); } else { _local11 = _local3.getVisibleApplicationRect(); }; _local12 = new Point(_local11.x, _local11.y); _local12 = DisplayObject(_local3).globalToLocal(_local12); _local6 = _local11.width; _local7 = _local11.height; }; if ((_local2.parent is UIComponent)){ _local11 = UIComponent(_local2.parent).getVisibleRect(); _local17 = _local2.parent.globalToLocal(_local11.topLeft); _local12.x = (_local12.x + _local17.x); _local12.y = (_local12.y + _local17.y); _local8 = _local11.width; _local9 = _local11.height; } else { _local8 = _local2.parent.width; _local9 = _local2.parent.height; }; _local4 = Math.max(0, ((Math.min(_local6, _local8) - _arg1.width) / 2)); _local5 = Math.max(0, ((Math.min(_local7, _local9) - _arg1.height) / 2)); _local13 = new Point(_local12.x, _local12.y); _local13 = _local2.parent.localToGlobal(_local13); _local13 = _arg1.parent.globalToLocal(_local13); _arg1.move((Math.round(_local4) + _local13.x), (Math.round(_local5) + _local13.y)); }; } private function showModalWindowRequest(_arg1:Event):void{ var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if ((_arg1 is SWFBridgeRequest)){ _local2 = SWFBridgeRequest(_arg1); } else { _local2 = SWFBridgeRequest.marshal(_arg1); }; var _local3:ISystemManager = getTopLevelSystemManager(DisplayObject(ApplicationGlobals.application)); var _local4:DisplayObject = _local3.getSandboxRoot(); var _local5:PopUpData = findHighestRemoteModalPopupInfo(); _local5.excludeRect = Rectangle(_local2.data); _local5.modalTransparency = _local2.data.transparency; _local5.modalTransparencyBlur = 0; _local5.modalTransparencyColor = _local2.data.transparencyColor; _local5.modalTransparencyDuration = _local2.data.transparencyDuration; if (((_local5.owner) || (_local5.parent))){ throw (new Error()); }; showModalWindow(_local5, _local3); } private function hideOwnerHandler(_arg1:FlexEvent):void{ var _local2:PopUpData = findPopupInfoByOwner(_arg1.target); if (_local2){ removeMouseOutEventListeners(_local2); }; } private function fadeOutDestroyEffectEndHandler(_arg1:EffectEvent):void{ var _local4:ISystemManager; effectEndHandler(_arg1); var _local2:DisplayObject = DisplayObject(_arg1.effectInstance.target); var _local3:DisplayObject = _local2.mask; if (_local3){ _local2.mask = null; _local4.popUpChildren.removeChild(_local3); }; if ((_local2.parent is ISystemManager)){ _local4 = ISystemManager(_local2.parent); if (_local4.popUpChildren.contains(_local2)){ _local4.popUpChildren.removeChild(_local2); } else { _local4.removeChild(_local2); }; } else { if (_local2.parent){ _local2.parent.removeChild(_local2); }; }; } private function createModalWindowRequestHandler(_arg1:Event):void{ var _local2:SWFBridgeRequest; if ((_arg1 is SWFBridgeRequest)){ _local2 = SWFBridgeRequest(_arg1); } else { _local2 = SWFBridgeRequest.marshal(_arg1); }; var _local3:ISystemManager = getTopLevelSystemManager(DisplayObject(ApplicationGlobals.application)); var _local4:DisplayObject = _local3.getSandboxRoot(); var _local5:PopUpData = new PopUpData(); _local5.isRemoteModalWindow = true; _local5.systemManager = _local3; _local5.modalTransparency = _local2.data.transparency; _local5.modalTransparencyBlur = 0; _local5.modalTransparencyColor = _local2.data.transparencyColor; _local5.modalTransparencyDuration = _local2.data.transparencyDuration; _local5.exclude = (_local3.swfBridgeGroup.getChildBridgeProvider(_local2.requestor) as IUIComponent); _local5.useExclude = _local2.data.useExclude; _local5.excludeRect = Rectangle(_local2.data.excludeRect); if (!popupInfo){ popupInfo = []; }; popupInfo.push(_local5); createModalWindow(null, _local5, _local3.popUpChildren, _local2.data.show, _local3, _local4); } private function showOwnerHandler(_arg1:FlexEvent):void{ var _local2:PopUpData = findPopupInfoByOwner(_arg1.target); if (_local2){ addMouseOutEventListeners(_local2); }; } private function addMouseOutEventListeners(_arg1:PopUpData):void{ var _local2:DisplayObject = _arg1.systemManager.getSandboxRoot(); if (_arg1.modalWindow){ _arg1.modalWindow.addEventListener(MouseEvent.MOUSE_DOWN, _arg1.mouseDownOutsideHandler); _arg1.modalWindow.addEventListener(MouseEvent.MOUSE_WHEEL, _arg1.mouseWheelOutsideHandler, true); } else { _local2.addEventListener(MouseEvent.MOUSE_DOWN, _arg1.mouseDownOutsideHandler); _local2.addEventListener(MouseEvent.MOUSE_WHEEL, _arg1.mouseWheelOutsideHandler, true); }; _local2.addEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, _arg1.marshalMouseOutsideHandler); _local2.addEventListener(SandboxMouseEvent.MOUSE_WHEEL_SOMEWHERE, _arg1.marshalMouseOutsideHandler, true); } private function fadeInEffectEndHandler(_arg1:EffectEvent):void{ var _local4:PopUpData; effectEndHandler(_arg1); var _local2:int = popupInfo.length; var _local3:int; while (_local3 < _local2) { _local4 = popupInfo[_local3]; if (((_local4.owner) && ((_local4.modalWindow == _arg1.effectInstance.target)))){ IUIComponent(_local4.owner).setVisible(true, true); break; }; _local3++; }; } private function hideModalWindowRequest(_arg1:Event):void{ var _local2:SWFBridgeRequest; if ((_arg1 is SWFBridgeRequest)){ _local2 = SWFBridgeRequest(_arg1); } else { _local2 = SWFBridgeRequest.marshal(_arg1); }; var _local3:ISystemManager = getTopLevelSystemManager(DisplayObject(ApplicationGlobals.application)); var _local4:DisplayObject = _local3.getSandboxRoot(); var _local5:PopUpData = findHighestRemoteModalPopupInfo(); if (((((!(_local5)) || (_local5.owner))) || (_local5.parent))){ throw (new Error()); }; hideModalWindow(_local5, _local2.data.remove); if (_local2.data.remove){ popupInfo.splice(popupInfo.indexOf(_local5), 1); _local3.numModalWindows--; }; } private function getTopLevelSystemManager(_arg1:DisplayObject):ISystemManager{ var _local2:DisplayObjectContainer; var _local3:ISystemManager; if ((_arg1.parent is SystemManagerProxy)){ _local2 = DisplayObjectContainer(SystemManagerProxy(_arg1.parent).systemManager); } else { if ((((_arg1 is IUIComponent)) && ((IUIComponent(_arg1).systemManager is SystemManagerProxy)))){ _local2 = DisplayObjectContainer(SystemManagerProxy(IUIComponent(_arg1).systemManager).systemManager); } else { _local2 = DisplayObjectContainer(_arg1.root); }; }; if (((((!(_local2)) || ((_local2 is Stage)))) && ((_arg1 is IUIComponent)))){ _local2 = DisplayObjectContainer(IUIComponent(_arg1).systemManager); }; if ((_local2 is ISystemManager)){ _local3 = ISystemManager(_local2); if (!_local3.isTopLevel()){ _local3 = _local3.topLevelSystemManager; }; }; return (_local3); } private function hideModalWindow(_arg1:PopUpData, _arg2:Boolean=false):void{ var _local6:Fade; var _local7:Number; var _local8:Blur; var _local9:DisplayObject; var _local10:SWFBridgeRequest; var _local11:IEventDispatcher; var _local12:IEventDispatcher; var _local13:InterManagerRequest; if (((_arg2) && (_arg1.exclude))){ _arg1.exclude.removeEventListener(Event.RESIZE, _arg1.resizeHandler); _arg1.exclude.removeEventListener(MoveEvent.MOVE, _arg1.resizeHandler); }; var _local3:IStyleClient = (_arg1.owner as IStyleClient); var _local4:Number = 0; if (_local3){ _local4 = _local3.getStyle("modalTransparencyDuration"); }; endEffects(_arg1); if (_local4){ _local6 = new Fade(_arg1.modalWindow); _local6.alphaFrom = _arg1.modalWindow.alpha; _local6.alphaTo = 0; _local6.duration = _local4; _local6.addEventListener(EffectEvent.EFFECT_END, (_arg2) ? fadeOutDestroyEffectEndHandler : fadeOutCloseEffectEndHandler); _arg1.modalWindow.visible = true; _arg1.fade = _local6; _local6.play(); _local7 = _local3.getStyle("modalTransparencyBlur"); if (_local7){ _local8 = new Blur(_arg1.blurTarget); new Blur(_arg1.blurTarget).blurXFrom = (_local8.blurYFrom = _local7); _local8.blurXTo = (_local8.blurYTo = 0); _local8.duration = _local4; _local8.addEventListener(EffectEvent.EFFECT_END, effectEndHandler); _arg1.blur = _local8; _local8.play(); }; } else { _arg1.modalWindow.visible = false; }; var _local5:ISystemManager = ISystemManager(ApplicationGlobals.application.systemManager); if (_local5.useSWFBridge()){ _local9 = _local5.getSandboxRoot(); if (((!(_arg1.isRemoteModalWindow)) && (!((_local5 == _local9))))){ _local13 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "isTopLevelRoot"); _local9.dispatchEvent(_local13); if (Boolean(_local13.value)){ return; }; }; _local10 = new SWFBridgeRequest(SWFBridgeRequest.HIDE_MODAL_WINDOW_REQUEST, false, false, null, {skip:((!(_arg1.isRemoteModalWindow)) && (!((_local5 == _local9)))), show:false, remove:_arg2}); _local11 = _local5.swfBridgeGroup.parentBridge; _local10.requestor = _local11; _local11.dispatchEvent(_local10); }; } private function popupHideHandler(_arg1:FlexEvent):void{ var _local2:PopUpData = findPopupInfoByOwner(_arg1.target); if (_local2){ hideModalWindow(_local2); }; } private function showModalWindowInternal(_arg1:PopUpData, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:ISystemManager, _arg7:DisplayObject):void{ var _local8:Fade; var _local9:Number; var _local10:Object; var _local11:Blur; var _local12:InterManagerRequest; endEffects(_arg1); if (_arg2){ _local8 = new Fade(_arg1.modalWindow); _local8.alphaFrom = 0; _local8.alphaTo = _arg3; _local8.duration = _arg2; _local8.addEventListener(EffectEvent.EFFECT_END, fadeInEffectEndHandler); _arg1.modalWindow.alpha = 0; _arg1.modalWindow.visible = true; _arg1.fade = _local8; if (_arg1.owner){ IUIComponent(_arg1.owner).setVisible(false, true); }; _local8.play(); _local9 = _arg5; if (_local9){ if (_arg6 != _arg7){ _local12 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "application", _local10); _arg7.dispatchEvent(_local12); _arg1.blurTarget = _local12.value; } else { _arg1.blurTarget = ApplicationGlobals.application; }; _local11 = new Blur(_arg1.blurTarget); new Blur(_arg1.blurTarget).blurXFrom = (_local11.blurYFrom = 0); _local11.blurXTo = (_local11.blurYTo = _local9); _local11.duration = _arg2; _local11.addEventListener(EffectEvent.EFFECT_END, effectEndHandler); _arg1.blur = _local11; _local11.play(); }; } else { if (_arg1.owner){ IUIComponent(_arg1.owner).setVisible(true, true); }; _arg1.modalWindow.visible = true; }; } private function effectEndHandler(_arg1:EffectEvent):void{ var _local4:PopUpData; var _local5:IEffect; var _local2:int = popupInfo.length; var _local3:int; while (_local3 < _local2) { _local4 = popupInfo[_local3]; _local5 = _arg1.effectInstance.effect; if (_local5 == _local4.fade){ _local4.fade = null; } else { if (_local5 == _local4.blur){ _local4.blur = null; }; }; _local3++; }; } private function createModalWindow(_arg1:DisplayObject, _arg2:PopUpData, _arg3:IChildList, _arg4:Boolean, _arg5:ISystemManager, _arg6:DisplayObject):void{ var _local7:IFlexDisplayObject; var _local10:Sprite; var _local11:SystemManagerProxy; var _local12:ISystemManager; _local7 = IFlexDisplayObject(_arg2.owner); var _local8:IStyleClient = (_local7 as IStyleClient); var _local9:Number = 0; if (modalWindowClass){ _local10 = new modalWindowClass(); } else { _local10 = new FlexSprite(); _local10.name = "modalWindow"; }; if (((!(_arg5)) && (_arg1))){ _arg5 = IUIComponent(_arg1).systemManager; }; if ((_arg5 is SystemManagerProxy)){ _local11 = SystemManagerProxy(_arg5); _local12 = _local11.systemManager; } else { _local12 = _arg5; }; _local12.numModalWindows++; if (_local7){ _arg3.addChildAt(_local10, _arg3.getChildIndex(DisplayObject(_local7))); } else { _arg3.addChild(_local10); }; if ((_local7 is IAutomationObject)){ IAutomationObject(_local7).showInAutomationHierarchy = true; }; if (!isNaN(_arg2.modalTransparency)){ _local10.alpha = _arg2.modalTransparency; } else { if (_local8){ _local10.alpha = _local8.getStyle("modalTransparency"); } else { _local10.alpha = 0; }; }; _arg2.modalTransparency = _local10.alpha; _local10.tabEnabled = false; var _local13:Rectangle = _local12.screen; var _local14:Graphics = _local10.graphics; var _local15:Number = 0xFFFFFF; if (!isNaN(_arg2.modalTransparencyColor)){ _local15 = _arg2.modalTransparencyColor; } else { if (_local8){ _local15 = _local8.getStyle("modalTransparencyColor"); _arg2.modalTransparencyColor = _local15; }; }; _local14.clear(); _local14.beginFill(_local15, 100); _local14.drawRect(_local13.x, _local13.y, _local13.width, _local13.height); _local14.endFill(); _arg2.modalWindow = _local10; if (_arg2.exclude){ _arg2.modalMask = new Sprite(); updateModalMask(_local12, _local10, (_arg2.useExclude) ? _arg2.exclude : null, _arg2.excludeRect, _arg2.modalMask); _local10.mask = _arg2.modalMask; _arg3.addChild(_arg2.modalMask); _arg2.exclude.addEventListener(Event.RESIZE, _arg2.resizeHandler); _arg2.exclude.addEventListener(MoveEvent.MOVE, _arg2.resizeHandler); }; _arg2._mouseDownOutsideHandler = dispatchMouseDownOutsideEvent; _arg2._mouseWheelOutsideHandler = dispatchMouseWheelOutsideEvent; _local12.addEventListener(Event.RESIZE, _arg2.resizeHandler); if (_local7){ _local7.addEventListener(FlexEvent.SHOW, popupShowHandler); _local7.addEventListener(FlexEvent.HIDE, popupHideHandler); }; if (_arg4){ showModalWindow(_arg2, _arg5, false); } else { _local7.visible = _arg4; }; if (_local12.useSWFBridge()){ if (_local8){ _arg2.modalTransparencyDuration = _local8.getStyle("modalTransparencyDuration"); _arg2.modalTransparencyBlur = _local8.getStyle("modalTransparencyBlur"); }; dispatchModalWindowRequest(SWFBridgeRequest.CREATE_MODAL_WINDOW_REQUEST, _local12, _arg6, _arg2, _arg4); }; } private function findPopupInfoByOwner(_arg1:Object):PopUpData{ var _local4:PopUpData; var _local2:int = popupInfo.length; var _local3:int; while (_local3 < _local2) { _local4 = popupInfo[_local3]; if (_local4.owner == _arg1){ return (_local4); }; _local3++; }; return (null); } private function popupRemovedHandler(_arg1:Event):void{ var _local4:PopUpData; var _local5:DisplayObject; var _local6:DisplayObject; var _local7:DisplayObject; var _local8:ISystemManager; var _local9:ISystemManager; var _local10:IEventDispatcher; var _local11:SWFBridgeRequest; var _local2:int = popupInfo.length; var _local3:int; while (_local3 < _local2) { _local4 = popupInfo[_local3]; _local5 = _local4.owner; if (_local5 == _arg1.target){ _local6 = _local4.parent; _local7 = _local4.modalWindow; _local8 = _local4.systemManager; if ((_local8 is SystemManagerProxy)){ _local9 = SystemManagerProxy(_local8).systemManager; } else { _local9 = _local8; }; if (!_local8.isTopLevel()){ _local8 = _local8.topLevelSystemManager; }; if ((_local5 is IUIComponent)){ IUIComponent(_local5).isPopUp = false; }; if ((_local5 is IFocusManagerContainer)){ _local8.removeFocusManager(IFocusManagerContainer(_local5)); }; _local5.removeEventListener(Event.REMOVED, popupRemovedHandler); if ((_local8 is SystemManagerProxy)){ _local10 = _local9.swfBridgeGroup.parentBridge; _local11 = new SWFBridgeRequest(SWFBridgeRequest.REMOVE_POP_UP_REQUEST, false, false, _local10, {window:DisplayObject(_local8), parent:_local4.parent, modal:!((_local4.modalWindow == null))}); _local9.getSandboxRoot().dispatchEvent(_local11); } else { if (_local8.useSWFBridge()){ _local11 = new SWFBridgeRequest(SWFBridgeRequest.REMOVE_POP_UP_PLACE_HOLDER_REQUEST, false, false, null, {window:DisplayObject(_local5)}); _local11.requestor = _local8.swfBridgeGroup.parentBridge; _local11.data.placeHolderId = NameUtil.displayObjectToString(DisplayObject(_local5)); _local8.dispatchEvent(_local11); }; }; if (_local4.owner){ _local4.owner.removeEventListener(FlexEvent.SHOW, showOwnerHandler); _local4.owner.removeEventListener(FlexEvent.HIDE, hideOwnerHandler); }; removeMouseOutEventListeners(_local4); if (_local7){ _local9.removeEventListener(Event.RESIZE, _local4.resizeHandler); _local5.removeEventListener(FlexEvent.SHOW, popupShowHandler); _local5.removeEventListener(FlexEvent.HIDE, popupHideHandler); hideModalWindow(_local4, true); _local9.numModalWindows--; }; popupInfo.splice(_local3, 1); break; }; _local3++; }; } private function fadeOutCloseEffectEndHandler(_arg1:EffectEvent):void{ effectEndHandler(_arg1); DisplayObject(_arg1.effectInstance.target).visible = false; } private function endEffects(_arg1:PopUpData):void{ if (_arg1.fade){ _arg1.fade.end(); _arg1.fade = null; }; if (_arg1.blur){ _arg1.blur.end(); _arg1.blur = null; }; } public function removePopUp(_arg1:IFlexDisplayObject):void{ var _local2:PopUpData; var _local3:ISystemManager; var _local4:IUIComponent; if (((_arg1) && (_arg1.parent))){ _local2 = findPopupInfoByOwner(_arg1); if (_local2){ _local3 = _local2.systemManager; if (!_local3){ _local4 = (_arg1 as IUIComponent); if (_local4){ _local3 = ISystemManager(_local4.systemManager); } else { return; }; }; if (_local2.topMost){ _local3.popUpChildren.removeChild(DisplayObject(_arg1)); } else { _local3.removeChild(DisplayObject(_arg1)); }; }; }; } public function addPopUp(_arg1:IFlexDisplayObject, _arg2:DisplayObject, _arg3:Boolean=false, _arg4:String=null):void{ var _local7:IChildList; var _local8:Boolean; var _local5:Boolean = _arg1.visible; if ((((((_arg2 is IUIComponent)) && ((_arg1 is IUIComponent)))) && ((IUIComponent(_arg1).document == null)))){ IUIComponent(_arg1).document = IUIComponent(_arg2).document; }; if ((((((((_arg2 is IUIComponent)) && ((IUIComponent(_arg2).document is IFlexModule)))) && ((_arg1 is UIComponent)))) && ((UIComponent(_arg1).moduleFactory == null)))){ UIComponent(_arg1).moduleFactory = IFlexModule(IUIComponent(_arg2).document).moduleFactory; }; var _local6:ISystemManager = getTopLevelSystemManager(_arg2); if (!_local6){ _local6 = ISystemManager(SystemManagerGlobals.topLevelSystemManagers[0]); if (_local6.getSandboxRoot() != _arg2){ return; }; }; var _local9:ISystemManager = _local6; var _local10:DisplayObject = _local6.getSandboxRoot(); var _local11:SWFBridgeRequest; if (_local6.useSWFBridge()){ if (_local10 != _local6){ _local9 = new SystemManagerProxy(_local6); _local11 = new SWFBridgeRequest(SWFBridgeRequest.ADD_POP_UP_REQUEST, false, false, _local6.swfBridgeGroup.parentBridge, {window:DisplayObject(_local9), parent:_arg2, modal:_arg3, childList:_arg4}); _local10.dispatchEvent(_local11); } else { _local9 = _local6; }; }; if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).isPopUp = true; }; if (((!(_arg4)) || ((_arg4 == PopUpManagerChildList.PARENT)))){ _local8 = _local9.popUpChildren.contains(_arg2); } else { _local8 = (_arg4 == PopUpManagerChildList.POPUP); }; _local7 = (_local8) ? _local9.popUpChildren : _local9; _local7.addChild(DisplayObject(_arg1)); _arg1.visible = false; if (!popupInfo){ popupInfo = []; }; var _local12:PopUpData = new PopUpData(); _local12.owner = DisplayObject(_arg1); _local12.topMost = _local8; _local12.systemManager = _local9; popupInfo.push(_local12); if ((_arg1 is IFocusManagerContainer)){ if (IFocusManagerContainer(_arg1).focusManager){ _local9.addFocusManager(IFocusManagerContainer(_arg1)); } else { IFocusManagerContainer(_arg1).focusManager = new FocusManager(IFocusManagerContainer(_arg1), true); }; }; if (((((!(_local6.isTopLevelRoot())) && (_local10))) && ((_local6 == _local10)))){ _local11 = new SWFBridgeRequest(SWFBridgeRequest.ADD_POP_UP_PLACE_HOLDER_REQUEST, false, false, null, {window:DisplayObject(_arg1)}); _local11.requestor = _local6.swfBridgeGroup.parentBridge; _local11.data.placeHolderId = NameUtil.displayObjectToString(DisplayObject(_arg1)); _local6.dispatchEvent(_local11); }; if ((_arg1 is IAutomationObject)){ IAutomationObject(_arg1).showInAutomationHierarchy = true; }; if ((_arg1 is ILayoutManagerClient)){ UIComponentGlobals.layoutManager.validateClient(ILayoutManagerClient(_arg1), true); }; _local12.parent = _arg2; if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).setActualSize(IUIComponent(_arg1).getExplicitOrMeasuredWidth(), IUIComponent(_arg1).getExplicitOrMeasuredHeight()); }; if (_arg3){ createModalWindow(_arg2, _local12, _local7, _local5, _local9, _local10); } else { _local12._mouseDownOutsideHandler = nonmodalMouseDownOutsideHandler; _local12._mouseWheelOutsideHandler = nonmodalMouseWheelOutsideHandler; _arg1.visible = _local5; }; _local12.owner.addEventListener(FlexEvent.SHOW, showOwnerHandler); _local12.owner.addEventListener(FlexEvent.HIDE, hideOwnerHandler); addMouseOutEventListeners(_local12); _arg1.addEventListener(Event.REMOVED, popupRemovedHandler); if ((((_arg1 is IFocusManagerContainer)) && (_local5))){ if (((!((_local9 is SystemManagerProxy))) && (_local9.useSWFBridge()))){ SystemManager(_local9).dispatchActivatedWindowEvent(DisplayObject(_arg1)); } else { _local9.activate(IFocusManagerContainer(_arg1)); }; }; } private function dispatchModalWindowRequest(_arg1:String, _arg2:ISystemManager, _arg3:DisplayObject, _arg4:PopUpData, _arg5:Boolean):void{ var _local8:InterManagerRequest; if (((!(_arg4.isRemoteModalWindow)) && (!((_arg2 == _arg3))))){ _local8 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "isTopLevelRoot"); _arg3.dispatchEvent(_local8); if (Boolean(_local8.value)){ return; }; }; var _local6:SWFBridgeRequest = new SWFBridgeRequest(_arg1, false, false, null, {skip:((!(_arg4.isRemoteModalWindow)) && (!((_arg2 == _arg3)))), useExclude:_arg4.useExclude, show:_arg5, remove:false, transparencyDuration:_arg4.modalTransparencyDuration, transparency:_arg4.modalTransparency, transparencyColor:_arg4.modalTransparencyColor, transparencyBlur:_arg4.modalTransparencyBlur}); var _local7:IEventDispatcher = _arg2.swfBridgeGroup.parentBridge; _local6.requestor = _local7; _local7.dispatchEvent(_local6); } public function createPopUp(_arg1:DisplayObject, _arg2:Class, _arg3:Boolean=false, _arg4:String=null):IFlexDisplayObject{ var _local5:IUIComponent = new (_arg2); addPopUp(_local5, _arg1, _arg3, _arg4); return (_local5); } private function removeMouseOutEventListeners(_arg1:PopUpData):void{ var _local2:DisplayObject = _arg1.systemManager.getSandboxRoot(); if (_arg1.modalWindow){ _arg1.modalWindow.removeEventListener(MouseEvent.MOUSE_DOWN, _arg1.mouseDownOutsideHandler); _arg1.modalWindow.removeEventListener(MouseEvent.MOUSE_WHEEL, _arg1.mouseWheelOutsideHandler, true); } else { _local2.removeEventListener(MouseEvent.MOUSE_DOWN, _arg1.mouseDownOutsideHandler); _local2.removeEventListener(MouseEvent.MOUSE_WHEEL, _arg1.mouseWheelOutsideHandler, true); }; _local2.removeEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, _arg1.marshalMouseOutsideHandler); _local2.removeEventListener(SandboxMouseEvent.MOUSE_WHEEL_SOMEWHERE, _arg1.marshalMouseOutsideHandler, true); } private function findHighestRemoteModalPopupInfo():PopUpData{ var _local3:PopUpData; var _local1:int = (popupInfo.length - 1); var _local2:int = _local1; while (_local2 >= 0) { _local3 = popupInfo[_local2]; if (_local3.isRemoteModalWindow){ return (_local3); }; _local2--; }; return (null); } private static function nonmodalMouseWheelOutsideHandler(_arg1:DisplayObject, _arg2:MouseEvent):void{ if (_arg1.hitTestPoint(_arg2.stageX, _arg2.stageY, true)){ } else { if ((_arg1 is IUIComponent)){ if (IUIComponent(_arg1).owns(DisplayObject(_arg2.target))){ return; }; }; dispatchMouseWheelOutsideEvent(_arg1, _arg2); }; } private static function dispatchMouseWheelOutsideEvent(_arg1:DisplayObject, _arg2:MouseEvent):void{ if (!_arg1){ return; }; var _local3:MouseEvent = new FlexMouseEvent(FlexMouseEvent.MOUSE_WHEEL_OUTSIDE); var _local4:Point = _arg1.globalToLocal(new Point(_arg2.stageX, _arg2.stageY)); _local3.localX = _local4.x; _local3.localY = _local4.y; _local3.buttonDown = _arg2.buttonDown; _local3.shiftKey = _arg2.shiftKey; _local3.altKey = _arg2.altKey; _local3.ctrlKey = _arg2.ctrlKey; _local3.delta = _arg2.delta; _local3.relatedObject = InteractiveObject(_arg2.target); _arg1.dispatchEvent(_local3); } mx_internal static function updateModalMask(_arg1:ISystemManager, _arg2:DisplayObject, _arg3:IUIComponent, _arg4:Rectangle, _arg5:Sprite):void{ var _local7:Rectangle; var _local8:Point; var _local9:Rectangle; var _local6:Rectangle = _arg2.getBounds(DisplayObject(_arg1)); if ((_arg3 is ISWFLoader)){ _local7 = ISWFLoader(_arg3).getVisibleApplicationRect(); _local8 = new Point(_local7.x, _local7.y); _local8 = DisplayObject(_arg1).globalToLocal(_local8); _local7.x = _local8.x; _local7.y = _local8.y; } else { if (!_arg3){ _local7 = _local6.clone(); } else { _local7 = DisplayObject(_arg3).getBounds(DisplayObject(_arg1)); }; }; if (_arg4){ _local8 = new Point(_arg4.x, _arg4.y); _local8 = DisplayObject(_arg1).globalToLocal(_local8); _local9 = new Rectangle(_local8.x, _local8.y, _arg4.width, _arg4.height); _local7 = _local7.intersection(_local9); }; _arg5.graphics.clear(); _arg5.graphics.beginFill(0); if (_local7.y > _local6.y){ _arg5.graphics.drawRect(_local6.x, _local6.y, _local6.width, (_local7.y - _local6.y)); }; if (_local6.x < _local7.x){ _arg5.graphics.drawRect(_local6.x, _local7.y, (_local7.x - _local6.x), _local7.height); }; if ((_local6.x + _local6.width) > (_local7.x + _local7.width)){ _arg5.graphics.drawRect((_local7.x + _local7.width), _local7.y, (((_local6.x + _local6.width) - _local7.x) - _local7.width), _local7.height); }; if ((_local7.y + _local7.height) < (_local6.y + _local6.height)){ _arg5.graphics.drawRect(_local6.x, (_local7.y + _local7.height), _local6.width, (((_local6.y + _local6.height) - _local7.y) - _local7.height)); }; _arg5.graphics.endFill(); } private static function dispatchMouseDownOutsideEvent(_arg1:DisplayObject, _arg2:MouseEvent):void{ if (!_arg1){ return; }; var _local3:MouseEvent = new FlexMouseEvent(FlexMouseEvent.MOUSE_DOWN_OUTSIDE); var _local4:Point = _arg1.globalToLocal(new Point(_arg2.stageX, _arg2.stageY)); _local3.localX = _local4.x; _local3.localY = _local4.y; _local3.buttonDown = _arg2.buttonDown; _local3.shiftKey = _arg2.shiftKey; _local3.altKey = _arg2.altKey; _local3.ctrlKey = _arg2.ctrlKey; _local3.delta = _arg2.delta; _local3.relatedObject = InteractiveObject(_arg2.target); _arg1.dispatchEvent(_local3); } public static function getInstance():IPopUpManager{ if (!instance){ instance = new (PopUpManagerImpl); }; return (instance); } private static function nonmodalMouseDownOutsideHandler(_arg1:DisplayObject, _arg2:MouseEvent):void{ if (_arg1.hitTestPoint(_arg2.stageX, _arg2.stageY, true)){ } else { if ((_arg1 is IUIComponent)){ if (IUIComponent(_arg1).owns(DisplayObject(_arg2.target))){ return; }; }; dispatchMouseDownOutsideEvent(_arg1, _arg2); }; } } }//package mx.managers import flash.display.*; import flash.geom.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.effects.*; class PopUpData { public var fade:Effect; public var modalTransparencyColor:Number; public var exclude:IUIComponent; public var isRemoteModalWindow:Boolean; public var useExclude:Boolean; public var blurTarget:Object; public var modalTransparencyDuration:Number; public var _mouseWheelOutsideHandler:Function; public var excludeRect:Rectangle; public var modalTransparency:Number; public var blur:Effect; public var parent:DisplayObject; public var modalTransparencyBlur:Number; public var _mouseDownOutsideHandler:Function; public var owner:DisplayObject; public var topMost:Boolean; public var modalMask:Sprite; public var modalWindow:DisplayObject; public var systemManager:ISystemManager; private function PopUpData(){ useExclude = true; } public function marshalMouseOutsideHandler(_arg1:Event):void{ if (!(_arg1 is SandboxMouseEvent)){ _arg1 = SandboxMouseEvent.marshal(_arg1); }; if (owner){ owner.dispatchEvent(_arg1); }; } public function mouseDownOutsideHandler(_arg1:MouseEvent):void{ _mouseDownOutsideHandler(owner, _arg1); } public function mouseWheelOutsideHandler(_arg1:MouseEvent):void{ _mouseWheelOutsideHandler(owner, _arg1); } public function resizeHandler(_arg1:Event):void{ var _local2:Rectangle; if (((((owner) && ((owner.stage == DisplayObject(_arg1.target).stage)))) || (((modalWindow) && ((modalWindow.stage == DisplayObject(_arg1.target).stage)))))){ _local2 = systemManager.screen; modalWindow.width = _local2.width; modalWindow.height = _local2.height; modalWindow.x = _local2.x; modalWindow.y = _local2.y; if (modalMask){ PopUpManagerImpl.updateModalMask(systemManager, modalWindow, exclude, excludeRect, modalMask); }; }; } }
Section 308
//SystemChildrenList (mx.managers.SystemChildrenList) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; public class SystemChildrenList implements IChildList { private var lowerBoundReference:QName; private var upperBoundReference:QName; private var owner:SystemManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function SystemChildrenList(_arg1:SystemManager, _arg2:QName, _arg3:QName){ this.owner = _arg1; this.lowerBoundReference = _arg2; this.upperBoundReference = _arg3; } public function getChildAt(_arg1:int):DisplayObject{ var _local2:DisplayObject = owner.mx_internal::rawChildren_getChildAt((owner[lowerBoundReference] + _arg1)); return (_local2); } public function getChildByName(_arg1:String):DisplayObject{ return (owner.mx_internal::rawChildren_getChildByName(_arg1)); } public function removeChildAt(_arg1:int):DisplayObject{ var _local2:DisplayObject = owner.mx_internal::rawChildren_removeChildAt((_arg1 + owner[lowerBoundReference])); var _local3 = owner; var _local4 = upperBoundReference; var _local5 = (_local3[_local4] - 1); _local3[_local4] = _local5; return (_local2); } public function getChildIndex(_arg1:DisplayObject):int{ var _local2:int = owner.mx_internal::rawChildren_getChildIndex(_arg1); _local2 = (_local2 - owner[lowerBoundReference]); return (_local2); } public function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ var _local3 = owner; _local3.mx_internal::rawChildren_addChildAt(_arg1, (owner[lowerBoundReference] + _arg2)); _local3 = owner; var _local4 = upperBoundReference; var _local5 = (_local3[_local4] + 1); _local3[_local4] = _local5; return (_arg1); } public function getObjectsUnderPoint(_arg1:Point):Array{ return (owner.mx_internal::rawChildren_getObjectsUnderPoint(_arg1)); } public function setChildIndex(_arg1:DisplayObject, _arg2:int):void{ var _local3 = owner; _local3.mx_internal::rawChildren_setChildIndex(_arg1, (owner[lowerBoundReference] + _arg2)); } public function get numChildren():int{ return ((owner[upperBoundReference] - owner[lowerBoundReference])); } public function contains(_arg1:DisplayObject):Boolean{ var _local2:int; if (((!((_arg1 == owner))) && (owner.mx_internal::rawChildren_contains(_arg1)))){ while (_arg1.parent != owner) { _arg1 = _arg1.parent; }; _local2 = owner.mx_internal::rawChildren_getChildIndex(_arg1); if ((((_local2 >= owner[lowerBoundReference])) && ((_local2 < owner[upperBoundReference])))){ return (true); }; }; return (false); } public function removeChild(_arg1:DisplayObject):DisplayObject{ var _local2:int = owner.mx_internal::rawChildren_getChildIndex(_arg1); if ((((owner[lowerBoundReference] <= _local2)) && ((_local2 < owner[upperBoundReference])))){ var _local3 = owner; _local3.mx_internal::rawChildren_removeChild(_arg1); _local3 = owner; var _local4 = upperBoundReference; var _local5 = (_local3[_local4] - 1); _local3[_local4] = _local5; }; return (_arg1); } public function addChild(_arg1:DisplayObject):DisplayObject{ var _local2 = owner; _local2.mx_internal::rawChildren_addChildAt(_arg1, owner[upperBoundReference]); _local2 = owner; var _local3 = upperBoundReference; var _local4 = (_local2[_local3] + 1); _local2[_local3] = _local4; return (_arg1); } } }//package mx.managers
Section 309
//SystemManager (mx.managers.SystemManager) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.text.*; import flash.events.*; import mx.managers.systemClasses.*; import mx.events.*; import mx.styles.*; import mx.resources.*; import flash.system.*; import mx.preloaders.*; import flash.utils.*; import mx.messaging.config.*; import mx.utils.*; public class SystemManager extends MovieClip implements IChildList, IFlexDisplayObject, IFlexModuleFactory, ISystemManager, ISWFBridgeProvider { private var _stage:Stage; mx_internal var nestLevel:int;// = 0 private var currentSandboxEvent:Event; private var forms:Array; private var mouseCatcher:Sprite; private var _height:Number; private var dispatchingToSystemManagers:Boolean;// = false private var preloader:Preloader; private var lastFrame:int; private var _document:Object; private var strongReferenceProxies:Dictionary; private var _rawChildren:SystemRawChildrenList; private var _topLevelSystemManager:ISystemManager; private var _toolTipIndex:int;// = 0 private var _explicitHeight:Number; private var idToPlaceholder:Object; private var _swfBridgeGroup:ISWFBridgeGroup; private var _toolTipChildren:SystemChildrenList; private var form:Object; private var _width:Number; private var initialized:Boolean;// = false private var _focusPane:Sprite; private var _fontList:Object;// = null private var isStageRoot:Boolean;// = true private var _popUpChildren:SystemChildrenList; private var rslSizes:Array;// = null private var _topMostIndex:int;// = 0 private var nextFrameTimer:Timer;// = null mx_internal var topLevel:Boolean;// = true private var weakReferenceProxies:Dictionary; private var _cursorIndex:int;// = 0 private var isBootstrapRoot:Boolean;// = false mx_internal var _mouseY; private var _numModalWindows:int;// = 0 mx_internal var _mouseX; private var _screen:Rectangle; mx_internal var idleCounter:int;// = 0 private var _cursorChildren:SystemChildrenList; private var initCallbackFunctions:Array; private var bridgeToFocusManager:Dictionary; private var _noTopMostIndex:int;// = 0 private var _applicationIndex:int;// = 1 private var isDispatchingResizeEvent:Boolean; private var idleTimer:Timer; private var doneExecutingInitCallbacks:Boolean;// = false private var _explicitWidth:Number; private var eventProxy:EventProxy; mx_internal var topLevelWindow:IUIComponent; private static const IDLE_THRESHOLD:Number = 1000; private static const IDLE_INTERVAL:Number = 100; mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var lastSystemManager:SystemManager; mx_internal static var allSystemManagers:Dictionary = new Dictionary(true); public function SystemManager(){ initCallbackFunctions = []; forms = []; weakReferenceProxies = new Dictionary(true); strongReferenceProxies = new Dictionary(false); super(); if (stage){ stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; }; if ((((SystemManagerGlobals.topLevelSystemManagers.length > 0)) && (!(stage)))){ topLevel = false; }; if (!stage){ isStageRoot = false; }; if (topLevel){ SystemManagerGlobals.topLevelSystemManagers.push(this); }; lastSystemManager = this; var _local1:Array = info()["compiledLocales"]; ResourceBundle.locale = (((!((_local1 == null))) && ((_local1.length > 0)))) ? _local1[0] : "en_US"; executeCallbacks(); stop(); if (((topLevel) && (!((currentFrame == 1))))){ throw (new Error((("The SystemManager constructor was called when the currentFrame was at " + currentFrame) + " Please add this SWF to bug 129782."))); }; if (((root) && (root.loaderInfo))){ root.loaderInfo.addEventListener(Event.INIT, initHandler); }; } private function removeEventListenerFromSandboxes(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:IEventDispatcher=null):void{ var _local8:int; if (!swfBridgeGroup){ return; }; var _local5:EventListenerRequest = new EventListenerRequest(EventListenerRequest.REMOVE_EVENT_LISTENER_REQUEST, false, false, _arg1, _arg3); var _local6:IEventDispatcher = swfBridgeGroup.parentBridge; if (((_local6) && (!((_local6 == _arg4))))){ _local6.removeEventListener(_arg1, _arg2, _arg3); }; var _local7:Array = swfBridgeGroup.getChildBridges(); while (_local8 < _local7.length) { if (_local7[_local8] != _arg4){ IEventDispatcher(_local7[_local8]).removeEventListener(_arg1, _arg2, _arg3); }; _local8++; }; dispatchEventFromSWFBridges(_local5, _arg4); } mx_internal function addingChild(_arg1:DisplayObject):void{ var _local4:DisplayObjectContainer; var _local2 = 1; if (((!(topLevel)) && (parent))){ _local4 = parent.parent; while (_local4) { if ((_local4 is ILayoutManagerClient)){ _local2 = (ILayoutManagerClient(_local4).nestLevel + 1); break; }; _local4 = _local4.parent; }; }; nestLevel = _local2; if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).systemManager = this; }; var _local3:Class = Class(getDefinitionByName("mx.core.UIComponent")); if ((((_arg1 is IUIComponent)) && (!(IUIComponent(_arg1).document)))){ IUIComponent(_arg1).document = document; }; if ((_arg1 is ILayoutManagerClient)){ ILayoutManagerClient(_arg1).nestLevel = (nestLevel + 1); }; if ((_arg1 is InteractiveObject)){ if (doubleClickEnabled){ InteractiveObject(_arg1).doubleClickEnabled = true; }; }; if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).parentChanged(this); }; if ((_arg1 is IStyleClient)){ IStyleClient(_arg1).regenerateStyleCache(true); }; if ((_arg1 is ISimpleStyleClient)){ ISimpleStyleClient(_arg1).styleChanged(null); }; if ((_arg1 is IStyleClient)){ IStyleClient(_arg1).notifyStyleChangeInChildren(null, true); }; if (((_local3) && ((_arg1 is _local3)))){ _local3(_arg1).initThemeColor(); }; if (((_local3) && ((_arg1 is _local3)))){ _local3(_arg1).stylesInitialized(); }; } private function dispatchEventToOtherSystemManagers(_arg1:Event):void{ dispatchingToSystemManagers = true; var _local2:Array = SystemManagerGlobals.topLevelSystemManagers; var _local3:int = _local2.length; var _local4:int; while (_local4 < _local3) { if (_local2[_local4] != this){ _local2[_local4].dispatchEvent(_arg1); }; _local4++; }; dispatchingToSystemManagers = false; } private function idleTimer_timerHandler(_arg1:TimerEvent):void{ idleCounter++; if ((idleCounter * IDLE_INTERVAL) > IDLE_THRESHOLD){ dispatchEvent(new FlexEvent(FlexEvent.IDLE)); }; } private function initManagerHandler(_arg1:Event):void{ var event = _arg1; if (!dispatchingToSystemManagers){ dispatchEventToOtherSystemManagers(event); }; if ((event is InterManagerRequest)){ return; }; var name:String = event["name"]; try { Singleton.getInstance(name); } catch(e:Error) { }; } private function getSizeRequestHandler(_arg1:Event):void{ var _local2:Object = Object(_arg1); _local2.data = {width:measuredWidth, height:measuredHeight}; } private function beforeUnloadHandler(_arg1:Event):void{ var _local2:DisplayObject; if (((topLevel) && (stage))){ _local2 = getSandboxRoot(); if (_local2 != this){ _local2.removeEventListener(Event.RESIZE, Stage_resizeHandler); }; }; removeParentBridgeListeners(); dispatchEvent(_arg1); } public function getExplicitOrMeasuredHeight():Number{ return ((isNaN(explicitHeight)) ? measuredHeight : explicitHeight); } private function getVisibleRectRequestHandler(_arg1:Event):void{ var _local5:Rectangle; var _local7:Point; var _local8:IEventDispatcher; if ((_arg1 is SWFBridgeRequest)){ return; }; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); var _local3:Rectangle = Rectangle(_local2.data); var _local4:DisplayObject = DisplayObject(swfBridgeGroup.getChildBridgeProvider(_local2.requestor)); var _local6:Boolean; if (!DisplayObjectContainer(document).contains(_local4)){ _local6 = false; }; if ((_local4 is ISWFLoader)){ _local5 = ISWFLoader(_local4).getVisibleApplicationRect(); } else { _local5 = _local4.getBounds(this); _local7 = localToGlobal(_local5.topLeft); _local5.x = _local7.x; _local5.y = _local7.y; }; _local3 = _local3.intersection(_local5); _local2.data = _local3; if (((_local6) && (useSWFBridge()))){ _local8 = swfBridgeGroup.parentBridge; _local2.requestor = _local8; _local8.dispatchEvent(_local2); }; Object(_arg1).data = _local2.data; } mx_internal function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{ var _local6:IStyleClient; var _local3:Boolean; var _local4:int = rawChildren.numChildren; var _local5:int; while (_local5 < _local4) { _local6 = (rawChildren.getChildAt(_local5) as IStyleClient); if (_local6){ _local6.styleChanged(_arg1); _local6.notifyStyleChangeInChildren(_arg1, _arg2); }; if (isTopLevelWindow(DisplayObject(_local6))){ _local3 = true; }; _local4 = rawChildren.numChildren; _local5++; }; if (((!(_local3)) && ((topLevelWindow is IStyleClient)))){ IStyleClient(topLevelWindow).styleChanged(_arg1); IStyleClient(topLevelWindow).notifyStyleChangeInChildren(_arg1, _arg2); }; } mx_internal function rawChildren_getObjectsUnderPoint(_arg1:Point):Array{ return (super.getObjectsUnderPoint(_arg1)); } private function initHandler(_arg1:Event):void{ var bridgeEvent:SWFBridgeEvent; var event = _arg1; if (!isStageRoot){ if (root.loaderInfo.parentAllowsChild){ try { if (!parent.dispatchEvent(new Event("mx.managers.SystemManager.isBootstrapRoot", false, true))){ isBootstrapRoot = true; }; } catch(e:Error) { }; }; }; allSystemManagers[this] = this.loaderInfo.url; root.loaderInfo.removeEventListener(Event.INIT, initHandler); if (useSWFBridge()){ swfBridgeGroup = new SWFBridgeGroup(this); swfBridgeGroup.parentBridge = loaderInfo.sharedEvents; addParentBridgeListeners(); bridgeEvent = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_NEW_APPLICATION); bridgeEvent.data = swfBridgeGroup.parentBridge; swfBridgeGroup.parentBridge.dispatchEvent(bridgeEvent); addEventListener(SWFBridgeRequest.ADD_POP_UP_PLACE_HOLDER_REQUEST, addPlaceholderPopupRequestHandler); root.loaderInfo.addEventListener(Event.UNLOAD, unloadHandler, false, 0, true); }; getSandboxRoot().addEventListener(InterManagerRequest.INIT_MANAGER_REQUEST, initManagerHandler, false, 0, true); if (getSandboxRoot() == this){ addEventListener(InterManagerRequest.SYSTEM_MANAGER_REQUEST, systemManagerHandler); addEventListener(InterManagerRequest.DRAG_MANAGER_REQUEST, multiWindowRedispatcher); addEventListener("dispatchDragEvent", multiWindowRedispatcher); addEventListener(SWFBridgeRequest.ADD_POP_UP_REQUEST, addPopupRequestHandler); addEventListener(SWFBridgeRequest.REMOVE_POP_UP_REQUEST, removePopupRequestHandler); addEventListener(SWFBridgeRequest.ADD_POP_UP_PLACE_HOLDER_REQUEST, addPlaceholderPopupRequestHandler); addEventListener(SWFBridgeRequest.REMOVE_POP_UP_PLACE_HOLDER_REQUEST, removePlaceholderPopupRequestHandler); addEventListener(SWFBridgeEvent.BRIDGE_WINDOW_ACTIVATE, activateFormSandboxEventHandler); addEventListener(SWFBridgeEvent.BRIDGE_WINDOW_DEACTIVATE, deactivateFormSandboxEventHandler); addEventListener(SWFBridgeRequest.HIDE_MOUSE_CURSOR_REQUEST, hideMouseCursorRequestHandler); addEventListener(SWFBridgeRequest.SHOW_MOUSE_CURSOR_REQUEST, showMouseCursorRequestHandler); addEventListener(SWFBridgeRequest.RESET_MOUSE_CURSOR_REQUEST, resetMouseCursorRequestHandler); }; var docFrame:int = ((totalFrames)==1) ? 0 : 1; addEventListener(Event.ENTER_FRAME, docFrameListener); initialize(); } mx_internal function findFocusManagerContainer(_arg1:SystemManagerProxy):IFocusManagerContainer{ var _local5:DisplayObject; var _local2:IChildList = _arg1.rawChildren; var _local3:int = _local2.numChildren; var _local4:int; while (_local4 < _local3) { _local5 = _local2.getChildAt(_local4); if ((_local5 is IFocusManagerContainer)){ return (IFocusManagerContainer(_local5)); }; _local4++; }; return (null); } private function addPlaceholderPopupRequestHandler(_arg1:Event):void{ var _local3:RemotePopUp; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (((!((_arg1.target == this))) && ((_arg1 is SWFBridgeRequest)))){ return; }; if (!forwardPlaceholderRequest(_local2, true)){ _local3 = new RemotePopUp(_local2.data.placeHolderId, _local2.requestor); forms.push(_local3); }; } override public function contains(_arg1:DisplayObject):Boolean{ var _local2:int; var _local3:int; var _local4:DisplayObject; if (super.contains(_arg1)){ if (_arg1.parent == this){ _local2 = super.getChildIndex(_arg1); if (_local2 < noTopMostIndex){ return (true); }; } else { _local3 = 0; while (_local3 < noTopMostIndex) { _local4 = super.getChildAt(_local3); if ((_local4 is IRawChildrenContainer)){ if (IRawChildrenContainer(_local4).rawChildren.contains(_arg1)){ return (true); }; }; if ((_local4 is DisplayObjectContainer)){ if (DisplayObjectContainer(_local4).contains(_arg1)){ return (true); }; }; _local3++; }; }; }; return (false); } private function modalWindowRequestHandler(_arg1:Event):void{ if ((_arg1 is SWFBridgeRequest)){ return; }; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (!preProcessModalWindowRequest(_local2, getSandboxRoot())){ return; }; Singleton.getInstance("mx.managers::IPopUpManager"); dispatchEvent(_local2); } private function activateApplicationSandboxEventHandler(_arg1:Event):void{ if (!isTopLevelRoot()){ swfBridgeGroup.parentBridge.dispatchEvent(_arg1); return; }; activateForm(document); } public function getDefinitionByName(_arg1:String):Object{ var _local3:Object; var _local2:ApplicationDomain = (((!(topLevel)) && ((parent is Loader)))) ? Loader(parent).contentLoaderInfo.applicationDomain : (info()["currentDomain"] as ApplicationDomain); if (_local2.hasDefinition(_arg1)){ _local3 = _local2.getDefinition(_arg1); }; return (_local3); } public function removeChildFromSandboxRoot(_arg1:String, _arg2:DisplayObject):void{ var _local3:InterManagerRequest; if (getSandboxRoot() == this){ this[_arg1].removeChild(_arg2); } else { removingChild(_arg2); _local3 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST); _local3.name = (_arg1 + ".removeChild"); _local3.value = _arg2; getSandboxRoot().dispatchEvent(_local3); childRemoved(_arg2); }; } private function removeEventListenerFromOtherSystemManagers(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ var _local4:Array = SystemManagerGlobals.topLevelSystemManagers; if (_local4.length < 2){ return; }; SystemManagerGlobals.changingListenersInOtherSystemManagers = true; var _local5:int = _local4.length; var _local6:int; while (_local6 < _local5) { if (_local4[_local6] != this){ _local4[_local6].removeEventListener(_arg1, _arg2, _arg3); }; _local6++; }; SystemManagerGlobals.changingListenersInOtherSystemManagers = false; } private function addEventListenerToOtherSystemManagers(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ var _local6:Array = SystemManagerGlobals.topLevelSystemManagers; if (_local6.length < 2){ return; }; SystemManagerGlobals.changingListenersInOtherSystemManagers = true; var _local7:int = _local6.length; var _local8:int; while (_local8 < _local7) { if (_local6[_local8] != this){ _local6[_local8].addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); }; _local8++; }; SystemManagerGlobals.changingListenersInOtherSystemManagers = false; } public function get embeddedFontList():Object{ var _local1:Object; var _local2:String; var _local3:Object; if (_fontList == null){ _fontList = {}; _local1 = info()["fonts"]; for (_local2 in _local1) { _fontList[_local2] = _local1[_local2]; }; if (((!(topLevel)) && (_topLevelSystemManager))){ _local3 = _topLevelSystemManager.embeddedFontList; for (_local2 in _local3) { _fontList[_local2] = _local3[_local2]; }; }; }; return (_fontList); } mx_internal function set cursorIndex(_arg1:int):void{ var _local2:int = (_arg1 - _cursorIndex); _cursorIndex = _arg1; } mx_internal function addChildBridgeListeners(_arg1:IEventDispatcher):void{ if (((!(topLevel)) && (topLevelSystemManager))){ SystemManager(topLevelSystemManager).addChildBridgeListeners(_arg1); return; }; _arg1.addEventListener(SWFBridgeRequest.ADD_POP_UP_REQUEST, addPopupRequestHandler); _arg1.addEventListener(SWFBridgeRequest.REMOVE_POP_UP_REQUEST, removePopupRequestHandler); _arg1.addEventListener(SWFBridgeRequest.ADD_POP_UP_PLACE_HOLDER_REQUEST, addPlaceholderPopupRequestHandler); _arg1.addEventListener(SWFBridgeRequest.REMOVE_POP_UP_PLACE_HOLDER_REQUEST, removePlaceholderPopupRequestHandler); _arg1.addEventListener(SWFBridgeEvent.BRIDGE_WINDOW_ACTIVATE, activateFormSandboxEventHandler); _arg1.addEventListener(SWFBridgeEvent.BRIDGE_WINDOW_DEACTIVATE, deactivateFormSandboxEventHandler); _arg1.addEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_ACTIVATE, activateApplicationSandboxEventHandler); _arg1.addEventListener(EventListenerRequest.ADD_EVENT_LISTENER_REQUEST, eventListenerRequestHandler, false, 0, true); _arg1.addEventListener(EventListenerRequest.REMOVE_EVENT_LISTENER_REQUEST, eventListenerRequestHandler, false, 0, true); _arg1.addEventListener(SWFBridgeRequest.CREATE_MODAL_WINDOW_REQUEST, modalWindowRequestHandler); _arg1.addEventListener(SWFBridgeRequest.SHOW_MODAL_WINDOW_REQUEST, modalWindowRequestHandler); _arg1.addEventListener(SWFBridgeRequest.HIDE_MODAL_WINDOW_REQUEST, modalWindowRequestHandler); _arg1.addEventListener(SWFBridgeRequest.GET_VISIBLE_RECT_REQUEST, getVisibleRectRequestHandler); _arg1.addEventListener(SWFBridgeRequest.HIDE_MOUSE_CURSOR_REQUEST, hideMouseCursorRequestHandler); _arg1.addEventListener(SWFBridgeRequest.SHOW_MOUSE_CURSOR_REQUEST, showMouseCursorRequestHandler); _arg1.addEventListener(SWFBridgeRequest.RESET_MOUSE_CURSOR_REQUEST, resetMouseCursorRequestHandler); } public function set document(_arg1:Object):void{ _document = _arg1; } override public function getChildAt(_arg1:int):DisplayObject{ return (super.getChildAt((applicationIndex + _arg1))); } public function get rawChildren():IChildList{ if (!_rawChildren){ _rawChildren = new SystemRawChildrenList(this); }; return (_rawChildren); } private function findLastActiveForm(_arg1:Object):Object{ var _local2:int = forms.length; var _local3:int = (forms.length - 1); while (_local3 >= 0) { if (((!((forms[_local3] == _arg1))) && (canActivatePopUp(forms[_local3])))){ return (forms[_local3]); }; _local3--; }; return (null); } private function multiWindowRedispatcher(_arg1:Event):void{ if (!dispatchingToSystemManagers){ dispatchEventToOtherSystemManagers(_arg1); }; } public function deployMouseShields(_arg1:Boolean):void{ var _local2:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST, false, false, "mouseShield", _arg1); getSandboxRoot().dispatchEvent(_local2); } override public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ var newListener:StageEventProxy; var actualType:String; var type = _arg1; var listener = _arg2; var useCapture = _arg3; var priority = _arg4; var useWeakReference = _arg5; if ((((type == FlexEvent.RENDER)) || ((type == FlexEvent.ENTER_FRAME)))){ if (type == FlexEvent.RENDER){ type = Event.RENDER; } else { type = Event.ENTER_FRAME; }; try { if (stage){ stage.addEventListener(type, listener, useCapture, priority, useWeakReference); } else { super.addEventListener(type, listener, useCapture, priority, useWeakReference); }; } catch(error:SecurityError) { super.addEventListener(type, listener, useCapture, priority, useWeakReference); }; if (((stage) && ((type == Event.RENDER)))){ stage.invalidate(); }; return; }; if ((((((((((type == MouseEvent.MOUSE_MOVE)) || ((type == MouseEvent.MOUSE_UP)))) || ((type == MouseEvent.MOUSE_DOWN)))) || ((type == Event.ACTIVATE)))) || ((type == Event.DEACTIVATE)))){ try { if (stage){ newListener = new StageEventProxy(listener); stage.addEventListener(type, newListener.stageListener, false, priority, useWeakReference); if (useWeakReference){ weakReferenceProxies[listener] = newListener; } else { strongReferenceProxies[listener] = newListener; }; }; } catch(error:SecurityError) { }; }; if (((hasSWFBridges()) || ((SystemManagerGlobals.topLevelSystemManagers.length > 1)))){ if (!eventProxy){ eventProxy = new EventProxy(this); }; actualType = EventUtil.sandboxMouseEventMap[type]; if (actualType){ if (isTopLevelRoot()){ stage.addEventListener(MouseEvent.MOUSE_MOVE, resetMouseCursorTracking, true, (EventPriority.CURSOR_MANAGEMENT + 1), true); addEventListenerToSandboxes(SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE, resetMouseCursorTracking, true, (EventPriority.CURSOR_MANAGEMENT + 1), true); } else { super.addEventListener(MouseEvent.MOUSE_MOVE, resetMouseCursorTracking, true, (EventPriority.CURSOR_MANAGEMENT + 1), true); }; addEventListenerToSandboxes(type, sandboxMouseListener, useCapture, priority, useWeakReference); if (!SystemManagerGlobals.changingListenersInOtherSystemManagers){ addEventListenerToOtherSystemManagers(type, otherSystemManagerMouseListener, useCapture, priority, useWeakReference); }; if (getSandboxRoot() == this){ super.addEventListener(actualType, eventProxy.marshalListener, useCapture, priority, useWeakReference); }; super.addEventListener(type, listener, false, priority, useWeakReference); return; }; }; if ((((type == FlexEvent.IDLE)) && (!(idleTimer)))){ idleTimer = new Timer(IDLE_INTERVAL); idleTimer.addEventListener(TimerEvent.TIMER, idleTimer_timerHandler); idleTimer.start(); addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler, true); addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true); }; super.addEventListener(type, listener, useCapture, priority, useWeakReference); } private function activateForm(_arg1:Object):void{ var _local2:IFocusManagerContainer; if (form){ if (((!((form == _arg1))) && ((forms.length > 1)))){ if (isRemotePopUp(form)){ if (!areRemotePopUpsEqual(form, _arg1)){ deactivateRemotePopUp(form); }; } else { _local2 = IFocusManagerContainer(form); _local2.focusManager.deactivate(); }; }; }; form = _arg1; if (isRemotePopUp(_arg1)){ activateRemotePopUp(_arg1); } else { if (_arg1.focusManager){ _arg1.focusManager.activate(); }; }; updateLastActiveForm(); } public function removeFocusManager(_arg1:IFocusManagerContainer):void{ var _local2:int = forms.length; var _local3:int; while (_local3 < _local2) { if (forms[_local3] == _arg1){ if (form == _arg1){ deactivate(_arg1); }; dispatchDeactivatedWindowEvent(DisplayObject(_arg1)); forms.splice(_local3, 1); return; }; _local3++; }; } private function mouseMoveHandler(_arg1:MouseEvent):void{ idleCounter = 0; } private function getSandboxScreen():Rectangle{ var _local2:Rectangle; var _local3:DisplayObject; var _local4:InterManagerRequest; var _local1:DisplayObject = getSandboxRoot(); if (_local1 == this){ _local2 = new Rectangle(0, 0, width, height); } else { if (_local1 == topLevelSystemManager){ _local3 = DisplayObject(topLevelSystemManager); _local2 = new Rectangle(0, 0, _local3.width, _local3.height); } else { _local4 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST, false, false, "screen"); _local1.dispatchEvent(_local4); _local2 = Rectangle(_local4.value); }; }; return (_local2); } public function get focusPane():Sprite{ return (_focusPane); } override public function get mouseX():Number{ if (_mouseX === undefined){ return (super.mouseX); }; return (_mouseX); } private function mouseDownHandler(_arg1:MouseEvent):void{ var _local3:int; var _local4:DisplayObject; var _local5:Boolean; var _local6:int; var _local7:Object; var _local8:int; var _local9:int; var _local10:int; var _local11:IChildList; var _local12:DisplayObject; var _local13:Boolean; var _local14:int; idleCounter = 0; var _local2:IEventDispatcher = getSWFBridgeOfDisplayObject((_arg1.target as DisplayObject)); if (((_local2) && ((bridgeToFocusManager[_local2] == document.focusManager)))){ if (isTopLevelRoot()){ activateForm(document); } else { dispatchActivatedApplicationEvent(); }; return; }; if (numModalWindows == 0){ if (((!(isTopLevelRoot())) || ((forms.length > 1)))){ _local3 = forms.length; _local4 = DisplayObject(_arg1.target); _local5 = document.rawChildren.contains(_local4); while (_local4) { _local6 = 0; while (_local6 < _local3) { _local7 = (isRemotePopUp(forms[_local6])) ? forms[_local6].window : forms[_local6]; if (_local7 == _local4){ _local8 = 0; if (((((!((_local4 == form))) && ((_local4 is IFocusManagerContainer)))) || (((!(isTopLevelRoot())) && ((_local4 == form)))))){ if (isTopLevelRoot()){ activate(IFocusManagerContainer(_local4)); }; if (_local4 == document){ dispatchActivatedApplicationEvent(); } else { if ((_local4 is DisplayObject)){ dispatchActivatedWindowEvent(DisplayObject(_local4)); }; }; }; if (popUpChildren.contains(_local4)){ _local11 = popUpChildren; } else { _local11 = this; }; _local9 = _local11.getChildIndex(_local4); _local10 = _local9; _local3 = forms.length; _local8 = 0; for (;_local8 < _local3;_local8++) { _local13 = isRemotePopUp(forms[_local8]); if (_local13){ if ((forms[_local8].window is String)){ continue; }; _local12 = forms[_local8].window; } else { _local12 = forms[_local8]; }; if (_local13){ _local14 = getChildListIndex(_local11, _local12); if (_local14 > _local9){ _local10 = Math.max(_local14, _local10); }; } else { if (_local11.contains(_local12)){ if (_local11.getChildIndex(_local12) > _local9){ _local10 = Math.max(_local11.getChildIndex(_local12), _local10); }; }; }; }; if ((((_local10 > _local9)) && (!(_local5)))){ _local11.setChildIndex(_local4, _local10); }; return; }; _local6++; }; _local4 = _local4.parent; }; } else { dispatchActivatedApplicationEvent(); }; }; } private function removePopupRequestHandler(_arg1:Event):void{ var _local3:SWFBridgeRequest; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (((swfBridgeGroup.parentBridge) && (SecurityUtil.hasMutualTrustBetweenParentAndChild(this)))){ _local2.requestor = swfBridgeGroup.parentBridge; getSandboxRoot().dispatchEvent(_local2); return; }; if (popUpChildren.contains(_local2.data.window)){ popUpChildren.removeChild(_local2.data.window); } else { removeChild(DisplayObject(_local2.data.window)); }; if (_local2.data.modal){ numModalWindows--; }; removeRemotePopUp(new RemotePopUp(_local2.data.window, _local2.requestor)); if (((!(isTopLevelRoot())) && (swfBridgeGroup))){ _local3 = new SWFBridgeRequest(SWFBridgeRequest.REMOVE_POP_UP_PLACE_HOLDER_REQUEST, false, false, _local2.requestor, {placeHolderId:NameUtil.displayObjectToString(_local2.data.window)}); dispatchEvent(_local3); }; } public function addChildBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void{ var _local3:IFocusManager; var _local4:DisplayObject = _arg2; while (_local4) { if ((_local4 is IFocusManagerContainer)){ _local3 = IFocusManagerContainer(_local4).focusManager; break; }; _local4 = _local4.parent; }; if (!_local3){ return; }; if (!swfBridgeGroup){ swfBridgeGroup = new SWFBridgeGroup(this); }; swfBridgeGroup.addChildBridge(_arg1, ISWFBridgeProvider(_arg2)); _local3.addSWFBridge(_arg1, _arg2); if (!bridgeToFocusManager){ bridgeToFocusManager = new Dictionary(); }; bridgeToFocusManager[_arg1] = _local3; addChildBridgeListeners(_arg1); } public function get screen():Rectangle{ if (!_screen){ Stage_resizeHandler(); }; if (!isStageRoot){ Stage_resizeHandler(); }; return (_screen); } private function resetMouseCursorRequestHandler(_arg1:Event):void{ var _local3:IEventDispatcher; if (((!(isTopLevelRoot())) && ((_arg1 is SWFBridgeRequest)))){ return; }; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (!isTopLevelRoot()){ _local3 = swfBridgeGroup.parentBridge; _local2.requestor = _local3; _local3.dispatchEvent(_local2); } else { if (eventProxy){ SystemManagerGlobals.showMouseCursor = true; }; }; } mx_internal function set topMostIndex(_arg1:int):void{ var _local2:int = (_arg1 - _topMostIndex); _topMostIndex = _arg1; toolTipIndex = (toolTipIndex + _local2); } mx_internal function docFrameHandler(_arg1:Event=null):void{ var _local2:TextFieldFactory; var _local4:int; var _local5:int; var _local6:Class; Singleton.registerClass("mx.managers::IBrowserManager", Class(getDefinitionByName("mx.managers::BrowserManagerImpl"))); Singleton.registerClass("mx.managers::ICursorManager", Class(getDefinitionByName("mx.managers::CursorManagerImpl"))); Singleton.registerClass("mx.managers::IHistoryManager", Class(getDefinitionByName("mx.managers::HistoryManagerImpl"))); Singleton.registerClass("mx.managers::ILayoutManager", Class(getDefinitionByName("mx.managers::LayoutManager"))); Singleton.registerClass("mx.managers::IPopUpManager", Class(getDefinitionByName("mx.managers::PopUpManagerImpl"))); Singleton.registerClass("mx.managers::IToolTipManager2", Class(getDefinitionByName("mx.managers::ToolTipManagerImpl"))); if (Capabilities.playerType == "Desktop"){ Singleton.registerClass("mx.managers::IDragManager", Class(getDefinitionByName("mx.managers::NativeDragManagerImpl"))); if (Singleton.getClass("mx.managers::IDragManager") == null){ Singleton.registerClass("mx.managers::IDragManager", Class(getDefinitionByName("mx.managers::DragManagerImpl"))); }; } else { Singleton.registerClass("mx.managers::IDragManager", Class(getDefinitionByName("mx.managers::DragManagerImpl"))); }; Singleton.registerClass("mx.core::ITextFieldFactory", Class(getDefinitionByName("mx.core::TextFieldFactory"))); executeCallbacks(); doneExecutingInitCallbacks = true; var _local3:Array = info()["mixins"]; if (((_local3) && ((_local3.length > 0)))){ _local4 = _local3.length; _local5 = 0; while (_local5 < _local4) { _local6 = Class(getDefinitionByName(_local3[_local5])); var _local7 = _local6; _local7["init"](this); _local5++; }; }; installCompiledResourceBundles(); initializeTopLevelWindow(null); deferredNextFrame(); } public function get explicitHeight():Number{ return (_explicitHeight); } public function get preloaderBackgroundSize():String{ return (info()["backgroundSize"]); } public function isTopLevel():Boolean{ return (topLevel); } override public function get mouseY():Number{ if (_mouseY === undefined){ return (super.mouseY); }; return (_mouseY); } public function getExplicitOrMeasuredWidth():Number{ return ((isNaN(explicitWidth)) ? measuredWidth : explicitWidth); } public function deactivate(_arg1:IFocusManagerContainer):void{ deactivateForm(Object(_arg1)); } private function preProcessModalWindowRequest(_arg1:SWFBridgeRequest, _arg2:DisplayObject):Boolean{ var _local3:IEventDispatcher; var _local4:ISWFLoader; var _local5:Rectangle; if (_arg1.data.skip){ _arg1.data.skip = false; if (useSWFBridge()){ _local3 = swfBridgeGroup.parentBridge; _arg1.requestor = _local3; _local3.dispatchEvent(_arg1); }; return (false); }; if (this != _arg2){ if ((((_arg1.type == SWFBridgeRequest.CREATE_MODAL_WINDOW_REQUEST)) || ((_arg1.type == SWFBridgeRequest.SHOW_MODAL_WINDOW_REQUEST)))){ _local4 = (swfBridgeGroup.getChildBridgeProvider(_arg1.requestor) as ISWFLoader); if (_local4){ _local5 = ISWFLoader(_local4).getVisibleApplicationRect(); _arg1.data.excludeRect = _local5; if (!DisplayObjectContainer(document).contains(DisplayObject(_local4))){ _arg1.data.useExclude = false; }; }; }; _local3 = swfBridgeGroup.parentBridge; _arg1.requestor = _local3; if (_arg1.type == SWFBridgeRequest.HIDE_MODAL_WINDOW_REQUEST){ _arg2.dispatchEvent(_arg1); } else { _local3.dispatchEvent(_arg1); }; return (false); }; _arg1.data.skip = false; return (true); } private function resetMouseCursorTracking(_arg1:Event):void{ var _local2:SWFBridgeRequest; var _local3:IEventDispatcher; if (isTopLevelRoot()){ SystemManagerGlobals.showMouseCursor = true; } else { if (swfBridgeGroup.parentBridge){ _local2 = new SWFBridgeRequest(SWFBridgeRequest.RESET_MOUSE_CURSOR_REQUEST); _local3 = swfBridgeGroup.parentBridge; _local2.requestor = _local3; _local3.dispatchEvent(_local2); }; }; } mx_internal function addParentBridgeListeners():void{ if (((!(topLevel)) && (topLevelSystemManager))){ SystemManager(topLevelSystemManager).addParentBridgeListeners(); return; }; var _local1:IEventDispatcher = swfBridgeGroup.parentBridge; _local1.addEventListener(SWFBridgeRequest.SET_ACTUAL_SIZE_REQUEST, setActualSizeRequestHandler); _local1.addEventListener(SWFBridgeRequest.GET_SIZE_REQUEST, getSizeRequestHandler); _local1.addEventListener(SWFBridgeRequest.ACTIVATE_POP_UP_REQUEST, activateRequestHandler); _local1.addEventListener(SWFBridgeRequest.DEACTIVATE_POP_UP_REQUEST, deactivateRequestHandler); _local1.addEventListener(SWFBridgeRequest.IS_BRIDGE_CHILD_REQUEST, isBridgeChildHandler); _local1.addEventListener(EventListenerRequest.ADD_EVENT_LISTENER_REQUEST, eventListenerRequestHandler); _local1.addEventListener(EventListenerRequest.REMOVE_EVENT_LISTENER_REQUEST, eventListenerRequestHandler); _local1.addEventListener(SWFBridgeRequest.CAN_ACTIVATE_POP_UP_REQUEST, canActivateHandler); _local1.addEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_UNLOADING, beforeUnloadHandler); } public function get swfBridgeGroup():ISWFBridgeGroup{ if (topLevel){ return (_swfBridgeGroup); }; if (topLevelSystemManager){ return (topLevelSystemManager.swfBridgeGroup); }; return (null); } override public function getChildByName(_arg1:String):DisplayObject{ return (super.getChildByName(_arg1)); } public function get measuredWidth():Number{ return ((topLevelWindow) ? topLevelWindow.getExplicitOrMeasuredWidth() : loaderInfo.width); } public function removeChildBridge(_arg1:IEventDispatcher):void{ var _local2:IFocusManager = IFocusManager(bridgeToFocusManager[_arg1]); _local2.removeSWFBridge(_arg1); swfBridgeGroup.removeChildBridge(_arg1); delete bridgeToFocusManager[_arg1]; removeChildBridgeListeners(_arg1); } mx_internal function removeChildBridgeListeners(_arg1:IEventDispatcher):void{ if (((!(topLevel)) && (topLevelSystemManager))){ SystemManager(topLevelSystemManager).removeChildBridgeListeners(_arg1); return; }; _arg1.removeEventListener(SWFBridgeRequest.ADD_POP_UP_REQUEST, addPopupRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.REMOVE_POP_UP_REQUEST, removePopupRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.ADD_POP_UP_PLACE_HOLDER_REQUEST, addPlaceholderPopupRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.REMOVE_POP_UP_PLACE_HOLDER_REQUEST, removePlaceholderPopupRequestHandler); _arg1.removeEventListener(SWFBridgeEvent.BRIDGE_WINDOW_ACTIVATE, activateFormSandboxEventHandler); _arg1.removeEventListener(SWFBridgeEvent.BRIDGE_WINDOW_DEACTIVATE, deactivateFormSandboxEventHandler); _arg1.removeEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_ACTIVATE, activateApplicationSandboxEventHandler); _arg1.removeEventListener(EventListenerRequest.ADD_EVENT_LISTENER_REQUEST, eventListenerRequestHandler); _arg1.removeEventListener(EventListenerRequest.REMOVE_EVENT_LISTENER_REQUEST, eventListenerRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.CREATE_MODAL_WINDOW_REQUEST, modalWindowRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.SHOW_MODAL_WINDOW_REQUEST, modalWindowRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.HIDE_MODAL_WINDOW_REQUEST, modalWindowRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.GET_VISIBLE_RECT_REQUEST, getVisibleRectRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.HIDE_MOUSE_CURSOR_REQUEST, hideMouseCursorRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.SHOW_MOUSE_CURSOR_REQUEST, showMouseCursorRequestHandler); _arg1.removeEventListener(SWFBridgeRequest.RESET_MOUSE_CURSOR_REQUEST, resetMouseCursorRequestHandler); } override public function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ noTopMostIndex++; return (rawChildren_addChildAt(_arg1, (applicationIndex + _arg2))); } private function Stage_resizeHandler(_arg1:Event=null):void{ var m:Number; var n:Number; var sandboxScreen:Rectangle; var event = _arg1; if (isDispatchingResizeEvent){ return; }; var w:Number = 0; var h:Number = 0; try { m = loaderInfo.width; n = loaderInfo.height; } catch(error:Error) { return; }; var align:String = StageAlign.TOP_LEFT; try { if (stage){ w = stage.stageWidth; h = stage.stageHeight; align = stage.align; }; } catch(error:SecurityError) { sandboxScreen = getSandboxScreen(); w = sandboxScreen.width; h = sandboxScreen.height; }; var x:Number = ((m - w) / 2); var y:Number = ((n - h) / 2); if (align == StageAlign.TOP){ y = 0; } else { if (align == StageAlign.BOTTOM){ y = (n - h); } else { if (align == StageAlign.LEFT){ x = 0; } else { if (align == StageAlign.RIGHT){ x = (m - w); } else { if ((((align == StageAlign.TOP_LEFT)) || ((align == "LT")))){ y = 0; x = 0; } else { if (align == StageAlign.TOP_RIGHT){ y = 0; x = (m - w); } else { if (align == StageAlign.BOTTOM_LEFT){ y = (n - h); x = 0; } else { if (align == StageAlign.BOTTOM_RIGHT){ y = (n - h); x = (m - w); }; }; }; }; }; }; }; }; if (!_screen){ _screen = new Rectangle(); }; _screen.x = x; _screen.y = y; _screen.width = w; _screen.height = h; if (isStageRoot){ _width = stage.stageWidth; _height = stage.stageHeight; }; if (event){ resizeMouseCatcher(); isDispatchingResizeEvent = true; dispatchEvent(event); isDispatchingResizeEvent = false; }; } public function get swfBridge():IEventDispatcher{ if (swfBridgeGroup){ return (swfBridgeGroup.parentBridge); }; return (null); } private function findRemotePopUp(_arg1:Object, _arg2:IEventDispatcher):RemotePopUp{ var _local5:RemotePopUp; var _local3:int = forms.length; var _local4:int; while (_local4 < _local3) { if (isRemotePopUp(forms[_local4])){ _local5 = RemotePopUp(forms[_local4]); if ((((_local5.window == _arg1)) && ((_local5.bridge == _arg2)))){ return (_local5); }; }; _local4++; }; return (null); } public function info():Object{ return ({}); } mx_internal function get toolTipIndex():int{ return (_toolTipIndex); } public function setActualSize(_arg1:Number, _arg2:Number):void{ if (isStageRoot){ return; }; _width = _arg1; _height = _arg2; if (mouseCatcher){ mouseCatcher.width = _arg1; mouseCatcher.height = _arg2; }; dispatchEvent(new Event(Event.RESIZE)); } private function removePlaceholderPopupRequestHandler(_arg1:Event):void{ var _local3:int; var _local4:int; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (!forwardPlaceholderRequest(_local2, false)){ _local3 = forms.length; _local4 = 0; while (_local4 < _local3) { if (isRemotePopUp(forms[_local4])){ if ((((forms[_local4].window == _local2.data.placeHolderId)) && ((forms[_local4].bridge == _local2.requestor)))){ forms.splice(_local4, 1); break; }; }; _local4++; }; }; } public function set focusPane(_arg1:Sprite):void{ if (_arg1){ addChild(_arg1); _arg1.x = 0; _arg1.y = 0; _arg1.scrollRect = null; _focusPane = _arg1; } else { removeChild(_focusPane); _focusPane = null; }; } mx_internal function removeParentBridgeListeners():void{ if (((!(topLevel)) && (topLevelSystemManager))){ SystemManager(topLevelSystemManager).removeParentBridgeListeners(); return; }; var _local1:IEventDispatcher = swfBridgeGroup.parentBridge; _local1.removeEventListener(SWFBridgeRequest.SET_ACTUAL_SIZE_REQUEST, setActualSizeRequestHandler); _local1.removeEventListener(SWFBridgeRequest.GET_SIZE_REQUEST, getSizeRequestHandler); _local1.removeEventListener(SWFBridgeRequest.ACTIVATE_POP_UP_REQUEST, activateRequestHandler); _local1.removeEventListener(SWFBridgeRequest.DEACTIVATE_POP_UP_REQUEST, deactivateRequestHandler); _local1.removeEventListener(SWFBridgeRequest.IS_BRIDGE_CHILD_REQUEST, isBridgeChildHandler); _local1.removeEventListener(EventListenerRequest.ADD_EVENT_LISTENER_REQUEST, eventListenerRequestHandler); _local1.removeEventListener(EventListenerRequest.REMOVE_EVENT_LISTENER_REQUEST, eventListenerRequestHandler); _local1.removeEventListener(SWFBridgeRequest.CAN_ACTIVATE_POP_UP_REQUEST, canActivateHandler); _local1.removeEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_UNLOADING, beforeUnloadHandler); } override public function get parent():DisplayObjectContainer{ try { return (super.parent); } catch(e:SecurityError) { }; return (null); } private function eventListenerRequestHandler(_arg1:Event):void{ var _local2:String; if ((_arg1 is EventListenerRequest)){ return; }; var _local3:EventListenerRequest = EventListenerRequest.marshal(_arg1); if (_arg1.type == EventListenerRequest.ADD_EVENT_LISTENER_REQUEST){ if (!eventProxy){ eventProxy = new EventProxy(this); }; _local2 = EventUtil.sandboxMouseEventMap[_local3.eventType]; if (_local2){ if (isTopLevelRoot()){ stage.addEventListener(MouseEvent.MOUSE_MOVE, resetMouseCursorTracking, true, (EventPriority.CURSOR_MANAGEMENT + 1), true); } else { super.addEventListener(MouseEvent.MOUSE_MOVE, resetMouseCursorTracking, true, (EventPriority.CURSOR_MANAGEMENT + 1), true); }; addEventListenerToSandboxes(_local3.eventType, sandboxMouseListener, true, _local3.priority, _local3.useWeakReference, (_arg1.target as IEventDispatcher)); addEventListenerToOtherSystemManagers(_local3.eventType, otherSystemManagerMouseListener, true, _local3.priority, _local3.useWeakReference); if (getSandboxRoot() == this){ if (((isTopLevelRoot()) && ((((_local2 == MouseEvent.MOUSE_UP)) || ((_local2 == MouseEvent.MOUSE_MOVE)))))){ stage.addEventListener(_local2, eventProxy.marshalListener, false, _local3.priority, _local3.useWeakReference); }; super.addEventListener(_local2, eventProxy.marshalListener, true, _local3.priority, _local3.useWeakReference); }; }; } else { if (_arg1.type == EventListenerRequest.REMOVE_EVENT_LISTENER_REQUEST){ _local2 = EventUtil.sandboxMouseEventMap[_local3.eventType]; if (_local2){ removeEventListenerFromOtherSystemManagers(_local3.eventType, otherSystemManagerMouseListener, true); removeEventListenerFromSandboxes(_local3.eventType, sandboxMouseListener, true, (_arg1.target as IEventDispatcher)); if (getSandboxRoot() == this){ if (((isTopLevelRoot()) && ((((_local2 == MouseEvent.MOUSE_UP)) || ((_local2 == MouseEvent.MOUSE_MOVE)))))){ stage.removeEventListener(_local2, eventProxy.marshalListener); }; super.removeEventListener(_local2, eventProxy.marshalListener, true); }; }; }; }; } mx_internal function set applicationIndex(_arg1:int):void{ _applicationIndex = _arg1; } private function showMouseCursorRequestHandler(_arg1:Event):void{ var _local3:IEventDispatcher; if (((!(isTopLevelRoot())) && ((_arg1 is SWFBridgeRequest)))){ return; }; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (!isTopLevelRoot()){ _local3 = swfBridgeGroup.parentBridge; _local2.requestor = _local3; _local3.dispatchEvent(_local2); Object(_arg1).data = _local2.data; } else { if (eventProxy){ Object(_arg1).data = SystemManagerGlobals.showMouseCursor; }; }; } public function get childAllowsParent():Boolean{ try { return (loaderInfo.childAllowsParent); } catch(error:Error) { }; return (false); } public function dispatchEventFromSWFBridges(_arg1:Event, _arg2:IEventDispatcher=null, _arg3:Boolean=false, _arg4:Boolean=false):void{ var _local5:Event; if (_arg4){ dispatchEventToOtherSystemManagers(_arg1); }; if (!swfBridgeGroup){ return; }; _local5 = _arg1.clone(); if (_arg3){ currentSandboxEvent = _local5; }; var _local6:IEventDispatcher = swfBridgeGroup.parentBridge; if (((_local6) && (!((_local6 == _arg2))))){ if ((_local5 is SWFBridgeRequest)){ SWFBridgeRequest(_local5).requestor = _local6; }; _local6.dispatchEvent(_local5); }; var _local7:Array = swfBridgeGroup.getChildBridges(); var _local8:int; while (_local8 < _local7.length) { if (_local7[_local8] != _arg2){ _local5 = _arg1.clone(); if (_arg3){ currentSandboxEvent = _local5; }; if ((_local5 is SWFBridgeRequest)){ SWFBridgeRequest(_local5).requestor = IEventDispatcher(_local7[_local8]); }; IEventDispatcher(_local7[_local8]).dispatchEvent(_local5); }; _local8++; }; currentSandboxEvent = null; } private function setActualSizeRequestHandler(_arg1:Event):void{ var _local2:Object = Object(_arg1); setActualSize(_local2.data.width, _local2.data.height); } private function executeCallbacks():void{ var _local1:Function; if (((!(parent)) && (parentAllowsChild))){ return; }; while (initCallbackFunctions.length > 0) { _local1 = initCallbackFunctions.shift(); _local1(this); }; } private function addPlaceholderId(_arg1:String, _arg2:String, _arg3:IEventDispatcher, _arg4:Object):void{ if (!_arg3){ throw (new Error()); }; if (!idToPlaceholder){ idToPlaceholder = []; }; idToPlaceholder[_arg1] = new PlaceholderData(_arg2, _arg3, _arg4); } private function canActivateHandler(_arg1:Event):void{ var _local3:SWFBridgeRequest; var _local6:PlaceholderData; var _local7:RemotePopUp; var _local8:SystemManagerProxy; var _local9:IFocusManagerContainer; var _local10:IEventDispatcher; var _local2:Object = Object(_arg1); var _local4:Object = _local2.data; var _local5:String; if ((_local2.data is String)){ _local6 = idToPlaceholder[_local2.data]; _local4 = _local6.data; _local5 = _local6.id; if (_local5 == null){ _local7 = findRemotePopUp(_local4, _local6.bridge); if (_local7){ _local3 = new SWFBridgeRequest(SWFBridgeRequest.CAN_ACTIVATE_POP_UP_REQUEST, false, false, IEventDispatcher(_local7.bridge), _local7.window); if (_local7.bridge){ _local7.bridge.dispatchEvent(_local3); _local2.data = _local3.data; }; return; }; }; }; if ((_local4 is SystemManagerProxy)){ _local8 = SystemManagerProxy(_local4); _local9 = findFocusManagerContainer(_local8); _local2.data = ((((_local8) && (_local9))) && (canActivateLocalComponent(_local9))); } else { if ((_local4 is IFocusManagerContainer)){ _local2.data = canActivateLocalComponent(_local4); } else { if ((_local4 is IEventDispatcher)){ _local10 = IEventDispatcher(_local4); _local3 = new SWFBridgeRequest(SWFBridgeRequest.CAN_ACTIVATE_POP_UP_REQUEST, false, false, _local10, _local5); if (_local10){ _local10.dispatchEvent(_local3); _local2.data = _local3.data; }; } else { throw (new Error()); }; }; }; } private function docFrameListener(_arg1:Event):void{ if (currentFrame == 2){ removeEventListener(Event.ENTER_FRAME, docFrameListener); if (totalFrames > 2){ addEventListener(Event.ENTER_FRAME, extraFrameListener); }; docFrameHandler(); }; } public function get popUpChildren():IChildList{ if (!topLevel){ return (_topLevelSystemManager.popUpChildren); }; if (!_popUpChildren){ _popUpChildren = new SystemChildrenList(this, new QName(mx_internal, "noTopMostIndex"), new QName(mx_internal, "topMostIndex")); }; return (_popUpChildren); } private function addEventListenerToSandboxes(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false, _arg6:IEventDispatcher=null):void{ var _local10:int; var _local11:IEventDispatcher; if (!swfBridgeGroup){ return; }; var _local7:EventListenerRequest = new EventListenerRequest(EventListenerRequest.ADD_EVENT_LISTENER_REQUEST, false, false, _arg1, _arg3, _arg4, _arg5); var _local8:IEventDispatcher = swfBridgeGroup.parentBridge; if (((_local8) && (!((_local8 == _arg6))))){ _local8.addEventListener(_arg1, _arg2, false, _arg4, _arg5); }; var _local9:Array = swfBridgeGroup.getChildBridges(); while (_local10 < _local9.length) { _local11 = IEventDispatcher(_local9[_local10]); if (_local11 != _arg6){ _local11.addEventListener(_arg1, _arg2, false, _arg4, _arg5); }; _local10++; }; dispatchEventFromSWFBridges(_local7, _arg6); } private function forwardFormEvent(_arg1:SWFBridgeEvent):Boolean{ var _local3:DisplayObject; if (isTopLevelRoot()){ return (false); }; var _local2:IEventDispatcher = swfBridgeGroup.parentBridge; if (_local2){ _local3 = getSandboxRoot(); _arg1.data.notifier = _local2; if (_local3 == this){ if (!(_arg1.data.window is String)){ _arg1.data.window = NameUtil.displayObjectToString(DisplayObject(_arg1.data.window)); } else { _arg1.data.window = ((NameUtil.displayObjectToString(DisplayObject(this)) + ".") + _arg1.data.window); }; _local2.dispatchEvent(_arg1); } else { if ((_arg1.data.window is String)){ _arg1.data.window = ((NameUtil.displayObjectToString(DisplayObject(this)) + ".") + _arg1.data.window); }; _local3.dispatchEvent(_arg1); }; }; return (true); } public function set explicitHeight(_arg1:Number):void{ _explicitHeight = _arg1; } override public function removeChild(_arg1:DisplayObject):DisplayObject{ noTopMostIndex--; return (rawChildren_removeChild(_arg1)); } mx_internal function rawChildren_removeChild(_arg1:DisplayObject):DisplayObject{ removingChild(_arg1); super.removeChild(_arg1); childRemoved(_arg1); return (_arg1); } final mx_internal function get $numChildren():int{ return (super.numChildren); } public function get toolTipChildren():IChildList{ if (!topLevel){ return (_topLevelSystemManager.toolTipChildren); }; if (!_toolTipChildren){ _toolTipChildren = new SystemChildrenList(this, new QName(mx_internal, "topMostIndex"), new QName(mx_internal, "toolTipIndex")); }; return (_toolTipChildren); } public function create(... _args):Object{ var _local4:String; var _local5:int; var _local6:int; var _local2:String = info()["mainClassName"]; if (_local2 == null){ _local4 = loaderInfo.loaderURL; _local5 = _local4.lastIndexOf("."); _local6 = _local4.lastIndexOf("/"); _local2 = _local4.substring((_local6 + 1), _local5); }; var _local3:Class = Class(getDefinitionByName(_local2)); return ((_local3) ? new (_local3) : null); } override public function get stage():Stage{ var _local2:DisplayObject; if (_stage){ return (_stage); }; var _local1:Stage = super.stage; if (_local1){ _stage = _local1; return (_local1); }; if (((!(topLevel)) && (_topLevelSystemManager))){ _stage = _topLevelSystemManager.stage; return (_stage); }; if (((!(isStageRoot)) && (topLevel))){ _local2 = getTopLevelRoot(); if (_local2){ _stage = _local2.stage; return (_stage); }; }; return (null); } override public function addChild(_arg1:DisplayObject):DisplayObject{ noTopMostIndex++; return (rawChildren_addChildAt(_arg1, (noTopMostIndex - 1))); } private function removeRemotePopUp(_arg1:RemotePopUp):void{ var _local2:int = forms.length; var _local3:int; while (_local3 < _local2) { if (isRemotePopUp(forms[_local3])){ if ((((forms[_local3].window == _arg1.window)) && ((forms[_local3].bridge == _arg1.bridge)))){ if (forms[_local3] == _arg1){ deactivateForm(_arg1); }; forms.splice(_local3, 1); break; }; }; _local3++; }; } private function deactivateRemotePopUp(_arg1:Object):void{ var _local2:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.DEACTIVATE_POP_UP_REQUEST, false, false, _arg1.bridge, _arg1.window); var _local3:Object = _arg1.bridge; if (_local3){ _local3.dispatchEvent(_local2); }; } override public function getChildIndex(_arg1:DisplayObject):int{ return ((super.getChildIndex(_arg1) - applicationIndex)); } mx_internal function rawChildren_getChildIndex(_arg1:DisplayObject):int{ return (super.getChildIndex(_arg1)); } public function activate(_arg1:IFocusManagerContainer):void{ activateForm(_arg1); } public function getSandboxRoot():DisplayObject{ var parent:DisplayObject; var lastParent:DisplayObject; var loader:Loader; var loaderInfo:LoaderInfo; var sm:ISystemManager = this; try { if (sm.topLevelSystemManager){ sm = sm.topLevelSystemManager; }; parent = DisplayObject(sm).parent; if ((parent is Stage)){ return (DisplayObject(sm)); }; if (((parent) && (!(parent.dispatchEvent(new Event("mx.managers.SystemManager.isBootstrapRoot", false, true)))))){ return (this); }; lastParent = parent; while (parent) { if ((parent is Stage)){ return (lastParent); }; if (!parent.dispatchEvent(new Event("mx.managers.SystemManager.isBootstrapRoot", false, true))){ return (lastParent); }; if ((parent is Loader)){ loader = Loader(parent); loaderInfo = loader.contentLoaderInfo; if (!loaderInfo.childAllowsParent){ return (loaderInfo.content); }; }; lastParent = parent; parent = parent.parent; }; } catch(error:SecurityError) { }; return (((lastParent)!=null) ? lastParent : DisplayObject(sm)); } private function deferredNextFrame():void{ if ((currentFrame + 1) > totalFrames){ return; }; if ((currentFrame + 1) <= framesLoaded){ nextFrame(); } else { nextFrameTimer = new Timer(100); nextFrameTimer.addEventListener(TimerEvent.TIMER, nextFrameTimerHandler); nextFrameTimer.start(); }; } mx_internal function get cursorIndex():int{ return (_cursorIndex); } mx_internal function rawChildren_contains(_arg1:DisplayObject):Boolean{ return (super.contains(_arg1)); } override public function setChildIndex(_arg1:DisplayObject, _arg2:int):void{ super.setChildIndex(_arg1, (applicationIndex + _arg2)); } public function get document():Object{ return (_document); } private function resizeMouseCatcher():void{ var g:Graphics; var s:Rectangle; if (mouseCatcher){ try { g = mouseCatcher.graphics; s = screen; g.clear(); g.beginFill(0, 0); g.drawRect(0, 0, s.width, s.height); g.endFill(); } catch(e:SecurityError) { }; }; } private function extraFrameListener(_arg1:Event):void{ if (lastFrame == currentFrame){ return; }; lastFrame = currentFrame; if ((currentFrame + 1) > totalFrames){ removeEventListener(Event.ENTER_FRAME, extraFrameListener); }; extraFrameHandler(); } private function addPopupRequestHandler(_arg1:Event):void{ var _local3:Boolean; var _local4:IChildList; var _local6:ISWFBridgeProvider; var _local7:SWFBridgeRequest; if (((!((_arg1.target == this))) && ((_arg1 is SWFBridgeRequest)))){ return; }; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (_arg1.target != this){ _local6 = swfBridgeGroup.getChildBridgeProvider(IEventDispatcher(_arg1.target)); if (!SecurityUtil.hasMutualTrustBetweenParentAndChild(_local6)){ return; }; }; if (((swfBridgeGroup.parentBridge) && (SecurityUtil.hasMutualTrustBetweenParentAndChild(this)))){ _local2.requestor = swfBridgeGroup.parentBridge; getSandboxRoot().dispatchEvent(_local2); return; }; if (((!(_local2.data.childList)) || ((_local2.data.childList == PopUpManagerChildList.PARENT)))){ _local3 = ((_local2.data.parent) && (popUpChildren.contains(_local2.data.parent))); } else { _local3 = (_local2.data.childList == PopUpManagerChildList.POPUP); }; _local4 = (_local3) ? popUpChildren : this; _local4.addChild(DisplayObject(_local2.data.window)); if (_local2.data.modal){ numModalWindows++; }; var _local5:RemotePopUp = new RemotePopUp(_local2.data.window, _local2.requestor); forms.push(_local5); if (((!(isTopLevelRoot())) && (swfBridgeGroup))){ _local7 = new SWFBridgeRequest(SWFBridgeRequest.ADD_POP_UP_PLACE_HOLDER_REQUEST, false, false, _local2.requestor, {window:_local2.data.window}); _local7.data.placeHolderId = NameUtil.displayObjectToString(DisplayObject(_local2.data.window)); dispatchEvent(_local7); }; } override public function get height():Number{ return (_height); } mx_internal function rawChildren_getChildAt(_arg1:int):DisplayObject{ return (super.getChildAt(_arg1)); } private function systemManagerHandler(_arg1:Event):void{ if (_arg1["name"] == "sameSandbox"){ _arg1["value"] = (currentSandboxEvent == _arg1["value"]); return; }; if (_arg1["name"] == "hasSWFBridges"){ _arg1["value"] = hasSWFBridges(); return; }; if ((_arg1 is InterManagerRequest)){ return; }; var _local2:String = _arg1["name"]; switch (_local2){ case "popUpChildren.addChild": popUpChildren.addChild(_arg1["value"]); break; case "popUpChildren.removeChild": popUpChildren.removeChild(_arg1["value"]); break; case "cursorChildren.addChild": cursorChildren.addChild(_arg1["value"]); break; case "cursorChildren.removeChild": cursorChildren.removeChild(_arg1["value"]); break; case "toolTipChildren.addChild": toolTipChildren.addChild(_arg1["value"]); break; case "toolTipChildren.removeChild": toolTipChildren.removeChild(_arg1["value"]); break; case "screen": _arg1["value"] = screen; break; case "application": _arg1["value"] = application; break; case "isTopLevelRoot": _arg1["value"] = isTopLevelRoot(); break; case "getVisibleApplicationRect": _arg1["value"] = getVisibleApplicationRect(); break; case "bringToFront": if (_arg1["value"].topMost){ popUpChildren.setChildIndex(DisplayObject(_arg1["value"].popUp), (popUpChildren.numChildren - 1)); } else { setChildIndex(DisplayObject(_arg1["value"].popUp), (numChildren - 1)); }; break; }; } private function activateRemotePopUp(_arg1:Object):void{ var _local2:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.ACTIVATE_POP_UP_REQUEST, false, false, _arg1.bridge, _arg1.window); var _local3:Object = _arg1.bridge; if (_local3){ _local3.dispatchEvent(_local2); }; } mx_internal function set noTopMostIndex(_arg1:int):void{ var _local2:int = (_arg1 - _noTopMostIndex); _noTopMostIndex = _arg1; topMostIndex = (topMostIndex + _local2); } override public function getObjectsUnderPoint(_arg1:Point):Array{ var _local5:DisplayObject; var _local6:Array; var _local2:Array = []; var _local3:int = topMostIndex; var _local4:int; while (_local4 < _local3) { _local5 = super.getChildAt(_local4); if ((_local5 is DisplayObjectContainer)){ _local6 = DisplayObjectContainer(_local5).getObjectsUnderPoint(_arg1); if (_local6){ _local2 = _local2.concat(_local6); }; }; _local4++; }; return (_local2); } mx_internal function get topMostIndex():int{ return (_topMostIndex); } mx_internal function regenerateStyleCache(_arg1:Boolean):void{ var _local5:IStyleClient; var _local2:Boolean; var _local3:int = rawChildren.numChildren; var _local4:int; while (_local4 < _local3) { _local5 = (rawChildren.getChildAt(_local4) as IStyleClient); if (_local5){ _local5.regenerateStyleCache(_arg1); }; if (isTopLevelWindow(DisplayObject(_local5))){ _local2 = true; }; _local3 = rawChildren.numChildren; _local4++; }; if (((!(_local2)) && ((topLevelWindow is IStyleClient)))){ IStyleClient(topLevelWindow).regenerateStyleCache(_arg1); }; } public function addFocusManager(_arg1:IFocusManagerContainer):void{ forms.push(_arg1); } private function deactivateFormSandboxEventHandler(_arg1:Event):void{ if ((_arg1 is SWFBridgeRequest)){ return; }; var _local2:SWFBridgeEvent = SWFBridgeEvent.marshal(_arg1); if (!forwardFormEvent(_local2)){ if (((((isRemotePopUp(form)) && ((RemotePopUp(form).window == _local2.data.window)))) && ((RemotePopUp(form).bridge == _local2.data.notifier)))){ deactivateForm(form); }; }; } public function set swfBridgeGroup(_arg1:ISWFBridgeGroup):void{ if (topLevel){ _swfBridgeGroup = _arg1; } else { if (topLevelSystemManager){ SystemManager(topLevelSystemManager).swfBridgeGroup = _arg1; }; }; } mx_internal function rawChildren_setChildIndex(_arg1:DisplayObject, _arg2:int):void{ super.setChildIndex(_arg1, _arg2); } private function mouseUpHandler(_arg1:MouseEvent):void{ idleCounter = 0; } mx_internal function childAdded(_arg1:DisplayObject):void{ _arg1.dispatchEvent(new FlexEvent(FlexEvent.ADD)); if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).initialize(); }; } public function isFontFaceEmbedded(_arg1:TextFormat):Boolean{ var _local6:Font; var _local7:String; var _local2:String = _arg1.font; var _local3:Array = Font.enumerateFonts(); var _local4:int; while (_local4 < _local3.length) { _local6 = Font(_local3[_local4]); if (_local6.fontName == _local2){ _local7 = "regular"; if (((_arg1.bold) && (_arg1.italic))){ _local7 = "boldItalic"; } else { if (_arg1.bold){ _local7 = "bold"; } else { if (_arg1.italic){ _local7 = "italic"; }; }; }; if (_local6.fontStyle == _local7){ return (true); }; }; _local4++; }; if (((((!(_local2)) || (!(embeddedFontList)))) || (!(embeddedFontList[_local2])))){ return (false); }; var _local5:Object = embeddedFontList[_local2]; return (!(((((((_arg1.bold) && (!(_local5.bold)))) || (((_arg1.italic) && (!(_local5.italic)))))) || (((((!(_arg1.bold)) && (!(_arg1.italic)))) && (!(_local5.regular))))))); } private function forwardPlaceholderRequest(_arg1:SWFBridgeRequest, _arg2:Boolean):Boolean{ if (isTopLevelRoot()){ return (false); }; var _local3:Object; var _local4:String; if (_arg1.data.window){ _local3 = _arg1.data.window; _arg1.data.window = null; } else { _local3 = _arg1.requestor; _local4 = _arg1.data.placeHolderId; _arg1.data.placeHolderId = ((NameUtil.displayObjectToString(this) + ".") + _arg1.data.placeHolderId); }; if (_arg2){ addPlaceholderId(_arg1.data.placeHolderId, _local4, _arg1.requestor, _local3); } else { removePlaceholderId(_arg1.data.placeHolderId); }; var _local5:DisplayObject = getSandboxRoot(); var _local6:IEventDispatcher = swfBridgeGroup.parentBridge; _arg1.requestor = _local6; if (_local5 == this){ _local6.dispatchEvent(_arg1); } else { _local5.dispatchEvent(_arg1); }; return (true); } public function getTopLevelRoot():DisplayObject{ var sm:ISystemManager; var parent:DisplayObject; var lastParent:DisplayObject; try { sm = this; if (sm.topLevelSystemManager){ sm = sm.topLevelSystemManager; }; parent = DisplayObject(sm).parent; lastParent = parent; while (parent) { if ((parent is Stage)){ return (lastParent); }; lastParent = parent; parent = parent.parent; }; } catch(error:SecurityError) { }; return (null); } override public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ var newListener:StageEventProxy; var actualType:String; var type = _arg1; var listener = _arg2; var useCapture = _arg3; if ((((type == FlexEvent.RENDER)) || ((type == FlexEvent.ENTER_FRAME)))){ if (type == FlexEvent.RENDER){ type = Event.RENDER; } else { type = Event.ENTER_FRAME; }; try { if (stage){ stage.removeEventListener(type, listener, useCapture); }; super.removeEventListener(type, listener, useCapture); } catch(error:SecurityError) { super.removeEventListener(type, listener, useCapture); }; return; }; if ((((((((((type == MouseEvent.MOUSE_MOVE)) || ((type == MouseEvent.MOUSE_UP)))) || ((type == MouseEvent.MOUSE_DOWN)))) || ((type == Event.ACTIVATE)))) || ((type == Event.DEACTIVATE)))){ try { if (stage){ newListener = weakReferenceProxies[listener]; if (!newListener){ newListener = strongReferenceProxies[listener]; if (newListener){ delete strongReferenceProxies[listener]; }; }; if (newListener){ stage.removeEventListener(type, newListener.stageListener, false); }; }; } catch(error:SecurityError) { }; }; if (((hasSWFBridges()) || ((SystemManagerGlobals.topLevelSystemManagers.length > 1)))){ actualType = EventUtil.sandboxMouseEventMap[type]; if (actualType){ if ((((getSandboxRoot() == this)) && (eventProxy))){ super.removeEventListener(actualType, eventProxy.marshalListener, useCapture); }; if (!SystemManagerGlobals.changingListenersInOtherSystemManagers){ removeEventListenerFromOtherSystemManagers(type, otherSystemManagerMouseListener, useCapture); }; removeEventListenerFromSandboxes(type, sandboxMouseListener, useCapture); super.removeEventListener(type, listener, false); return; }; }; if (type == FlexEvent.IDLE){ super.removeEventListener(type, listener, useCapture); if (((!(hasEventListener(FlexEvent.IDLE))) && (idleTimer))){ idleTimer.stop(); idleTimer = null; removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); }; } else { super.removeEventListener(type, listener, useCapture); }; } private function extraFrameHandler(_arg1:Event=null):void{ var _local3:Class; var _local2:Object = info()["frames"]; if (((_local2) && (_local2[currentLabel]))){ _local3 = Class(getDefinitionByName(_local2[currentLabel])); var _local4 = _local3; _local4["frame"](this); }; deferredNextFrame(); } public function isTopLevelRoot():Boolean{ return (((isStageRoot) || (isBootstrapRoot))); } public function get application():IUIComponent{ return (IUIComponent(_document)); } override public function removeChildAt(_arg1:int):DisplayObject{ noTopMostIndex--; return (rawChildren_removeChildAt((applicationIndex + _arg1))); } mx_internal function rawChildren_removeChildAt(_arg1:int):DisplayObject{ var _local2:DisplayObject = super.getChildAt(_arg1); removingChild(_local2); super.removeChildAt(_arg1); childRemoved(_local2); return (_local2); } private function getSWFBridgeOfDisplayObject(_arg1:DisplayObject):IEventDispatcher{ var _local2:SWFBridgeRequest; var _local3:Array; var _local4:int; var _local5:int; var _local6:IEventDispatcher; var _local7:ISWFBridgeProvider; if (swfBridgeGroup){ _local2 = new SWFBridgeRequest(SWFBridgeRequest.IS_BRIDGE_CHILD_REQUEST, false, false, null, _arg1); _local3 = swfBridgeGroup.getChildBridges(); _local4 = _local3.length; _local5 = 0; while (_local5 < _local4) { _local6 = IEventDispatcher(_local3[_local5]); _local7 = swfBridgeGroup.getChildBridgeProvider(_local6); if (SecurityUtil.hasMutualTrustBetweenParentAndChild(_local7)){ _local6.dispatchEvent(_local2); if (_local2.data == true){ return (_local6); }; _local2.data = _arg1; }; _local5++; }; }; return (null); } private function deactivateRequestHandler(_arg1:Event):void{ var _local5:PlaceholderData; var _local6:RemotePopUp; var _local7:SystemManagerProxy; var _local8:IFocusManagerContainer; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); var _local3:Object = _local2.data; var _local4:String; if ((_local2.data is String)){ _local5 = idToPlaceholder[_local2.data]; _local3 = _local5.data; _local4 = _local5.id; if (_local4 == null){ _local6 = findRemotePopUp(_local3, _local5.bridge); if (_local6){ deactivateRemotePopUp(_local6); return; }; }; }; if ((_local3 is SystemManagerProxy)){ _local7 = SystemManagerProxy(_local3); _local8 = findFocusManagerContainer(_local7); if (((_local7) && (_local8))){ _local7.deactivateByProxy(_local8); }; } else { if ((_local3 is IFocusManagerContainer)){ IFocusManagerContainer(_local3).focusManager.deactivate(); } else { if ((_local3 is IEventDispatcher)){ _local2.data = _local4; _local2.requestor = IEventDispatcher(_local3); IEventDispatcher(_local3).dispatchEvent(_local2); return; }; throw (new Error()); }; }; } private function installCompiledResourceBundles():void{ var _local1:Object = this.info(); var _local2:ApplicationDomain = (((!(topLevel)) && ((parent is Loader)))) ? Loader(parent).contentLoaderInfo.applicationDomain : _local1["currentDomain"]; var _local3:Array = _local1["compiledLocales"]; var _local4:Array = _local1["compiledResourceBundleNames"]; var _local5:IResourceManager = ResourceManager.getInstance(); _local5.installCompiledResourceBundles(_local2, _local3, _local4); if (!_local5.localeChain){ _local5.initializeLocaleChain(_local3); }; } private function deactivateForm(_arg1:Object):void{ if (form){ if ((((form == _arg1)) && ((forms.length > 1)))){ if (isRemotePopUp(form)){ deactivateRemotePopUp(form); } else { form.focusManager.deactivate(); }; form = findLastActiveForm(_arg1); if (form){ if (isRemotePopUp(form)){ activateRemotePopUp(form); } else { form.focusManager.activate(); }; }; }; }; } private function unloadHandler(_arg1:Event):void{ dispatchEvent(_arg1); } mx_internal function removingChild(_arg1:DisplayObject):void{ _arg1.dispatchEvent(new FlexEvent(FlexEvent.REMOVE)); } mx_internal function get applicationIndex():int{ return (_applicationIndex); } mx_internal function set toolTipIndex(_arg1:int):void{ var _local2:int = (_arg1 - _toolTipIndex); _toolTipIndex = _arg1; cursorIndex = (cursorIndex + _local2); } private function hasSWFBridges():Boolean{ if (swfBridgeGroup){ return (true); }; return (false); } private function updateLastActiveForm():void{ var _local1:int = forms.length; if (_local1 < 2){ return; }; var _local2 = -1; var _local3:int; while (_local3 < _local1) { if (areFormsEqual(form, forms[_local3])){ _local2 = _local3; break; }; _local3++; }; if (_local2 >= 0){ forms.splice(_local2, 1); forms.push(form); } else { throw (new Error()); }; } public function get cursorChildren():IChildList{ if (!topLevel){ return (_topLevelSystemManager.cursorChildren); }; if (!_cursorChildren){ _cursorChildren = new SystemChildrenList(this, new QName(mx_internal, "toolTipIndex"), new QName(mx_internal, "cursorIndex")); }; return (_cursorChildren); } private function sandboxMouseListener(_arg1:Event):void{ if ((_arg1 is SandboxMouseEvent)){ return; }; var _local2:Event = SandboxMouseEvent.marshal(_arg1); dispatchEventFromSWFBridges(_local2, (_arg1.target as IEventDispatcher)); var _local3:InterManagerRequest = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST); _local3.name = "sameSandbox"; _local3.value = _arg1; getSandboxRoot().dispatchEvent(_local3); if (!_local3.value){ dispatchEvent(_local2); }; } public function get preloaderBackgroundImage():Object{ return (info()["backgroundImage"]); } public function set numModalWindows(_arg1:int):void{ _numModalWindows = _arg1; } public function get preloaderBackgroundAlpha():Number{ return (info()["backgroundAlpha"]); } mx_internal function rawChildren_getChildByName(_arg1:String):DisplayObject{ return (super.getChildByName(_arg1)); } private function dispatchInvalidateRequest():void{ var _local1:IEventDispatcher = swfBridgeGroup.parentBridge; var _local2:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.INVALIDATE_REQUEST, false, false, _local1, (InvalidateRequestData.SIZE | InvalidateRequestData.DISPLAY_LIST)); _local1.dispatchEvent(_local2); } public function get preloaderBackgroundColor():uint{ var _local1:* = info()["backgroundColor"]; if (_local1 == undefined){ return (StyleManager.NOT_A_COLOR); }; return (StyleManager.getColorName(_local1)); } public function getVisibleApplicationRect(_arg1:Rectangle=null):Rectangle{ var _local2:Rectangle; var _local3:Point; var _local4:IEventDispatcher; var _local5:SWFBridgeRequest; if (!_arg1){ _arg1 = getBounds(DisplayObject(this)); _local2 = screen; _local3 = new Point(Math.max(0, _arg1.x), Math.max(0, _arg1.y)); _local3 = localToGlobal(_local3); _arg1.x = _local3.x; _arg1.y = _local3.y; _arg1.width = _local2.width; _arg1.height = _local2.height; }; if (useSWFBridge()){ _local4 = swfBridgeGroup.parentBridge; _local5 = new SWFBridgeRequest(SWFBridgeRequest.GET_VISIBLE_RECT_REQUEST, false, false, _local4, _arg1); _local4.dispatchEvent(_local5); _arg1 = Rectangle(_local5.data); }; return (_arg1); } public function get topLevelSystemManager():ISystemManager{ if (topLevel){ return (this); }; return (_topLevelSystemManager); } private function appCreationCompleteHandler(_arg1:FlexEvent):void{ var _local2:DisplayObjectContainer; if (((!(topLevel)) && (parent))){ _local2 = parent.parent; while (_local2) { if ((_local2 is IInvalidating)){ IInvalidating(_local2).invalidateSize(); IInvalidating(_local2).invalidateDisplayList(); return; }; _local2 = _local2.parent; }; }; if (((topLevel) && (useSWFBridge()))){ dispatchInvalidateRequest(); }; } public function addChildToSandboxRoot(_arg1:String, _arg2:DisplayObject):void{ var _local3:InterManagerRequest; if (getSandboxRoot() == this){ this[_arg1].addChild(_arg2); } else { addingChild(_arg2); _local3 = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST); _local3.name = (_arg1 + ".addChild"); _local3.value = _arg2; getSandboxRoot().dispatchEvent(_local3); childAdded(_arg2); }; } private function dispatchDeactivatedWindowEvent(_arg1:DisplayObject):void{ var _local3:DisplayObject; var _local4:Boolean; var _local5:SWFBridgeEvent; var _local2:IEventDispatcher = (swfBridgeGroup) ? swfBridgeGroup.parentBridge : null; if (_local2){ _local3 = getSandboxRoot(); _local4 = !((_local3 == this)); _local5 = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_WINDOW_DEACTIVATE, false, false, {notifier:_local2, window:(_local4) ? _arg1 : NameUtil.displayObjectToString(_arg1)}); if (_local4){ _local3.dispatchEvent(_local5); } else { _local2.dispatchEvent(_local5); }; }; } private function isBridgeChildHandler(_arg1:Event):void{ if ((_arg1 is SWFBridgeRequest)){ return; }; var _local2:Object = Object(_arg1); _local2.data = ((_local2.data) && (rawChildren.contains((_local2.data as DisplayObject)))); } public function get measuredHeight():Number{ return ((topLevelWindow) ? topLevelWindow.getExplicitOrMeasuredHeight() : loaderInfo.height); } private function activateRequestHandler(_arg1:Event):void{ var _local5:PlaceholderData; var _local6:RemotePopUp; var _local7:SystemManagerProxy; var _local8:IFocusManagerContainer; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); var _local3:Object = _local2.data; var _local4:String; if ((_local2.data is String)){ _local5 = idToPlaceholder[_local2.data]; _local3 = _local5.data; _local4 = _local5.id; if (_local4 == null){ _local6 = findRemotePopUp(_local3, _local5.bridge); if (_local6){ activateRemotePopUp(_local6); return; }; }; }; if ((_local3 is SystemManagerProxy)){ _local7 = SystemManagerProxy(_local3); _local8 = findFocusManagerContainer(_local7); if (((_local7) && (_local8))){ _local7.activateByProxy(_local8); }; } else { if ((_local3 is IFocusManagerContainer)){ IFocusManagerContainer(_local3).focusManager.activate(); } else { if ((_local3 is IEventDispatcher)){ _local2.data = _local4; _local2.requestor = IEventDispatcher(_local3); IEventDispatcher(_local3).dispatchEvent(_local2); } else { throw (new Error()); }; }; }; } mx_internal function rawChildren_addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ addingChild(_arg1); super.addChildAt(_arg1, _arg2); childAdded(_arg1); return (_arg1); } mx_internal function initialize():void{ var _local6:int; var _local7:int; var _local9:EmbeddedFontRegistry; var _local13:Class; var _local14:Object; var _local15:RSLItem; if (isStageRoot){ _width = stage.stageWidth; _height = stage.stageHeight; } else { _width = loaderInfo.width; _height = loaderInfo.height; }; preloader = new Preloader(); preloader.addEventListener(FlexEvent.INIT_PROGRESS, preloader_initProgressHandler); preloader.addEventListener(FlexEvent.PRELOADER_DONE, preloader_preloaderDoneHandler); if (!_popUpChildren){ _popUpChildren = new SystemChildrenList(this, new QName(mx_internal, "noTopMostIndex"), new QName(mx_internal, "topMostIndex")); }; _popUpChildren.addChild(preloader); var _local1:Array = info()["rsls"]; var _local2:Array = info()["cdRsls"]; var _local3:Boolean; if (info()["usePreloader"] != undefined){ _local3 = info()["usePreloader"]; }; var _local4:Class = (info()["preloader"] as Class); if (((_local3) && (!(_local4)))){ _local4 = DownloadProgressBar; }; var _local5:Array = []; if (((_local2) && ((_local2.length > 0)))){ _local13 = Class(getDefinitionByName("mx.core::CrossDomainRSLItem")); _local6 = _local2.length; _local7 = 0; while (_local7 < _local6) { _local14 = new _local13(_local2[_local7]["rsls"], _local2[_local7]["policyFiles"], _local2[_local7]["digests"], _local2[_local7]["types"], _local2[_local7]["isSigned"], this.loaderInfo.url); _local5.push(_local14); _local7++; }; }; if (((!((_local1 == null))) && ((_local1.length > 0)))){ _local6 = _local1.length; _local7 = 0; while (_local7 < _local6) { _local15 = new RSLItem(_local1[_local7].url, this.loaderInfo.url); _local5.push(_local15); _local7++; }; }; Singleton.registerClass("mx.resources::IResourceManager", Class(getDefinitionByName("mx.resources::ResourceManagerImpl"))); var _local8:IResourceManager = ResourceManager.getInstance(); Singleton.registerClass("mx.core::IEmbeddedFontRegistry", Class(getDefinitionByName("mx.core::EmbeddedFontRegistry"))); Singleton.registerClass("mx.styles::IStyleManager", Class(getDefinitionByName("mx.styles::StyleManagerImpl"))); Singleton.registerClass("mx.styles::IStyleManager2", Class(getDefinitionByName("mx.styles::StyleManagerImpl"))); var _local10:String = loaderInfo.parameters["localeChain"]; if (((!((_local10 == null))) && (!((_local10 == ""))))){ _local8.localeChain = _local10.split(","); }; var _local11:String = loaderInfo.parameters["resourceModuleURLs"]; var _local12:Array = (_local11) ? _local11.split(",") : null; preloader.initialize(_local3, _local4, preloaderBackgroundColor, preloaderBackgroundAlpha, preloaderBackgroundImage, preloaderBackgroundSize, (isStageRoot) ? stage.stageWidth : loaderInfo.width, (isStageRoot) ? stage.stageHeight : loaderInfo.height, null, null, _local5, _local12); } public function useSWFBridge():Boolean{ if (isStageRoot){ return (false); }; if (((!(topLevel)) && (topLevelSystemManager))){ return (topLevelSystemManager.useSWFBridge()); }; if (((topLevel) && (!((getSandboxRoot() == this))))){ return (true); }; if (getSandboxRoot() == this){ try { root.loaderInfo.parentAllowsChild; if (((parentAllowsChild) && (childAllowsParent))){ try { if (!parent.dispatchEvent(new Event("mx.managers.SystemManager.isStageRoot", false, true))){ return (true); }; } catch(e:Error) { }; } else { return (true); }; } catch(e1:Error) { return (false); }; }; return (false); } mx_internal function childRemoved(_arg1:DisplayObject):void{ if ((_arg1 is IUIComponent)){ IUIComponent(_arg1).parentChanged(null); }; } final mx_internal function $removeChildAt(_arg1:int):DisplayObject{ return (super.removeChildAt(_arg1)); } private function canActivatePopUp(_arg1:Object):Boolean{ var _local2:RemotePopUp; var _local3:SWFBridgeRequest; if (isRemotePopUp(_arg1)){ _local2 = RemotePopUp(_arg1); _local3 = new SWFBridgeRequest(SWFBridgeRequest.CAN_ACTIVATE_POP_UP_REQUEST, false, false, null, _local2.window); IEventDispatcher(_local2.bridge).dispatchEvent(_local3); return (_local3.data); }; if (canActivateLocalComponent(_arg1)){ return (true); }; return (false); } mx_internal function get noTopMostIndex():int{ return (_noTopMostIndex); } override public function get numChildren():int{ return ((noTopMostIndex - applicationIndex)); } private function canActivateLocalComponent(_arg1:Object):Boolean{ if ((((((((_arg1 is Sprite)) && ((_arg1 is IUIComponent)))) && (Sprite(_arg1).visible))) && (IUIComponent(_arg1).enabled))){ return (true); }; return (false); } private function preloader_preloaderDoneHandler(_arg1:Event):void{ var _local2:IUIComponent = topLevelWindow; preloader.removeEventListener(FlexEvent.PRELOADER_DONE, preloader_preloaderDoneHandler); _popUpChildren.removeChild(preloader); preloader = null; mouseCatcher = new FlexSprite(); mouseCatcher.name = "mouseCatcher"; noTopMostIndex++; super.addChildAt(mouseCatcher, 0); resizeMouseCatcher(); if (!topLevel){ mouseCatcher.visible = false; mask = mouseCatcher; }; noTopMostIndex++; super.addChildAt(DisplayObject(_local2), 1); _local2.dispatchEvent(new FlexEvent(FlexEvent.APPLICATION_COMPLETE)); dispatchEvent(new FlexEvent(FlexEvent.APPLICATION_COMPLETE)); } private function initializeTopLevelWindow(_arg1:Event):void{ var _local2:IUIComponent; var _local3:DisplayObjectContainer; var _local4:ISystemManager; var _local5:DisplayObject; initialized = true; if (((!(parent)) && (parentAllowsChild))){ return; }; if (!topLevel){ _local3 = parent.parent; if (!_local3){ return; }; while (_local3) { if ((_local3 is IUIComponent)){ _local4 = IUIComponent(_local3).systemManager; if (((_local4) && (!(_local4.isTopLevel())))){ _local4 = _local4.topLevelSystemManager; }; _topLevelSystemManager = _local4; break; }; _local3 = _local3.parent; }; }; if (((isTopLevelRoot()) || ((getSandboxRoot() == this)))){ addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler, true); }; if (((isTopLevelRoot()) && (stage))){ stage.addEventListener(Event.RESIZE, Stage_resizeHandler, false, 0, true); } else { if (((topLevel) && (stage))){ _local5 = getSandboxRoot(); if (_local5 != this){ _local5.addEventListener(Event.RESIZE, Stage_resizeHandler, false, 0, true); }; }; }; _local2 = (topLevelWindow = IUIComponent(create())); document = _local2; if (document){ IEventDispatcher(_local2).addEventListener(FlexEvent.CREATION_COMPLETE, appCreationCompleteHandler); if (!LoaderConfig._url){ LoaderConfig._url = loaderInfo.url; LoaderConfig._parameters = loaderInfo.parameters; }; if (((isStageRoot) && (stage))){ _width = stage.stageWidth; _height = stage.stageHeight; IFlexDisplayObject(_local2).setActualSize(_width, _height); } else { IFlexDisplayObject(_local2).setActualSize(loaderInfo.width, loaderInfo.height); }; if (preloader){ preloader.registerApplication(_local2); }; addingChild(DisplayObject(_local2)); childAdded(DisplayObject(_local2)); } else { document = this; }; } final mx_internal function $addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ return (super.addChildAt(_arg1, _arg2)); } mx_internal function dispatchActivatedWindowEvent(_arg1:DisplayObject):void{ var _local3:DisplayObject; var _local4:Boolean; var _local5:SWFBridgeEvent; var _local2:IEventDispatcher = (swfBridgeGroup) ? swfBridgeGroup.parentBridge : null; if (_local2){ _local3 = getSandboxRoot(); _local4 = !((_local3 == this)); _local5 = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_WINDOW_ACTIVATE, false, false, {notifier:_local2, window:(_local4) ? _arg1 : NameUtil.displayObjectToString(_arg1)}); if (_local4){ _local3.dispatchEvent(_local5); } else { _local2.dispatchEvent(_local5); }; }; } private function nextFrameTimerHandler(_arg1:TimerEvent):void{ if ((currentFrame + 1) <= framesLoaded){ nextFrame(); nextFrameTimer.removeEventListener(TimerEvent.TIMER, nextFrameTimerHandler); nextFrameTimer.reset(); }; } public function get numModalWindows():int{ return (_numModalWindows); } private function areFormsEqual(_arg1:Object, _arg2:Object):Boolean{ if (_arg1 == _arg2){ return (true); }; if ((((_arg1 is RemotePopUp)) && ((_arg2 is RemotePopUp)))){ return (areRemotePopUpsEqual(_arg1, _arg2)); }; return (false); } public function isTopLevelWindow(_arg1:DisplayObject):Boolean{ return ((((_arg1 is IUIComponent)) && ((IUIComponent(_arg1) == topLevelWindow)))); } private function removePlaceholderId(_arg1:String):void{ delete idToPlaceholder[_arg1]; } override public function get width():Number{ return (_width); } private function dispatchActivatedApplicationEvent():void{ var _local2:SWFBridgeEvent; var _local1:IEventDispatcher = (swfBridgeGroup) ? swfBridgeGroup.parentBridge : null; if (_local1){ _local2 = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_APPLICATION_ACTIVATE, false, false); _local1.dispatchEvent(_local2); }; } private function otherSystemManagerMouseListener(_arg1:SandboxMouseEvent):void{ if (dispatchingToSystemManagers){ return; }; dispatchEventFromSWFBridges(_arg1); var _local2:InterManagerRequest = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST); _local2.name = "sameSandbox"; _local2.value = _arg1; getSandboxRoot().dispatchEvent(_local2); if (!_local2.value){ dispatchEvent(_arg1); }; } private function hideMouseCursorRequestHandler(_arg1:Event):void{ var _local3:IEventDispatcher; if (((!(isTopLevelRoot())) && ((_arg1 is SWFBridgeRequest)))){ return; }; var _local2:SWFBridgeRequest = SWFBridgeRequest.marshal(_arg1); if (!isTopLevelRoot()){ _local3 = swfBridgeGroup.parentBridge; _local2.requestor = _local3; _local3.dispatchEvent(_local2); } else { if (eventProxy){ SystemManagerGlobals.showMouseCursor = false; }; }; } private function getTopLevelSystemManager(_arg1:DisplayObject):ISystemManager{ var _local3:ISystemManager; var _local2:DisplayObjectContainer = DisplayObjectContainer(_arg1.root); if (((((!(_local2)) || ((_local2 is Stage)))) && ((_arg1 is IUIComponent)))){ _local2 = DisplayObjectContainer(IUIComponent(_arg1).systemManager); }; if ((_local2 is ISystemManager)){ _local3 = ISystemManager(_local2); if (!_local3.isTopLevel()){ _local3 = _local3.topLevelSystemManager; }; }; return (_local3); } public function isDisplayObjectInABridgedApplication(_arg1:DisplayObject):Boolean{ return (!((getSWFBridgeOfDisplayObject(_arg1) == null))); } public function move(_arg1:Number, _arg2:Number):void{ } public function set explicitWidth(_arg1:Number):void{ _explicitWidth = _arg1; } public function get parentAllowsChild():Boolean{ try { return (loaderInfo.parentAllowsChild); } catch(error:Error) { }; return (false); } private function preloader_initProgressHandler(_arg1:Event):void{ preloader.removeEventListener(FlexEvent.INIT_PROGRESS, preloader_initProgressHandler); deferredNextFrame(); } public function get explicitWidth():Number{ return (_explicitWidth); } private function activateFormSandboxEventHandler(_arg1:Event):void{ var _local2:SWFBridgeEvent = SWFBridgeEvent.marshal(_arg1); if (!forwardFormEvent(_local2)){ activateForm(new RemotePopUp(_local2.data.window, _local2.data.notifier)); }; } mx_internal function rawChildren_addChild(_arg1:DisplayObject):DisplayObject{ addingChild(_arg1); super.addChild(_arg1); childAdded(_arg1); return (_arg1); } public static function getSWFRoot(_arg1:Object):DisplayObject{ var p:*; var sm:ISystemManager; var domain:ApplicationDomain; var cls:Class; var object = _arg1; var className:String = getQualifiedClassName(object); for (p in allSystemManagers) { sm = (p as ISystemManager); domain = sm.loaderInfo.applicationDomain; try { cls = Class(domain.getDefinition(className)); if ((object is cls)){ return ((sm as DisplayObject)); }; } catch(e:Error) { }; }; return (null); } private static function areRemotePopUpsEqual(_arg1:Object, _arg2:Object):Boolean{ if (!(_arg1 is RemotePopUp)){ return (false); }; if (!(_arg2 is RemotePopUp)){ return (false); }; var _local3:RemotePopUp = RemotePopUp(_arg1); var _local4:RemotePopUp = RemotePopUp(_arg2); if ((((((_local3.window == _local4.window)) && (_local3.bridge))) && (_local4.bridge))){ return (true); }; return (false); } private static function getChildListIndex(_arg1:IChildList, _arg2:Object):int{ var childList = _arg1; var f = _arg2; var index = -1; try { index = childList.getChildIndex(DisplayObject(f)); } catch(e:ArgumentError) { }; return (index); } mx_internal static function registerInitCallback(_arg1:Function):void{ if (((!(allSystemManagers)) || (!(lastSystemManager)))){ return; }; var _local2:SystemManager = lastSystemManager; if (_local2.doneExecutingInitCallbacks){ _arg1(_local2); } else { _local2.initCallbackFunctions.push(_arg1); }; } private static function isRemotePopUp(_arg1:Object):Boolean{ return (!((_arg1 is IFocusManagerContainer))); } } }//package mx.managers
Section 310
//SystemManagerGlobals (mx.managers.SystemManagerGlobals) package mx.managers { public class SystemManagerGlobals { public static var topLevelSystemManagers:Array = []; public static var changingListenersInOtherSystemManagers:Boolean; public static var bootstrapLoaderInfoURL:String; public static var showMouseCursor:Boolean; } }//package mx.managers
Section 311
//SystemManagerProxy (mx.managers.SystemManagerProxy) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.utils.*; public class SystemManagerProxy extends SystemManager { private var _systemManager:ISystemManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function SystemManagerProxy(_arg1:ISystemManager){ _systemManager = _arg1; topLevel = true; super.addEventListener(MouseEvent.MOUSE_DOWN, proxyMouseDownHandler, true); } override public function create(... _args):Object{ return (IFlexModuleFactory(_systemManager).create.apply(this, _args)); } public function get systemManager():ISystemManager{ return (_systemManager); } override public function activate(_arg1:IFocusManagerContainer):void{ var _local3:Boolean; var _local4:SWFBridgeEvent; var _local2:IEventDispatcher = (_systemManager.swfBridgeGroup) ? _systemManager.swfBridgeGroup.parentBridge : null; if (_local2){ _local3 = SecurityUtil.hasMutualTrustBetweenParentAndChild(ISWFBridgeProvider(_systemManager)); _local4 = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_WINDOW_ACTIVATE, false, false, {notifier:_local2, window:(_local3) ? this : NameUtil.displayObjectToString(this)}); _systemManager.getSandboxRoot().dispatchEvent(_local4); }; } override public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ super.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); _systemManager.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function deactivateByProxy(_arg1:IFocusManagerContainer):void{ if (_arg1){ _arg1.focusManager.deactivate(); }; } override public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ super.removeEventListener(_arg1, _arg2, _arg3); _systemManager.removeEventListener(_arg1, _arg2, _arg3); } override public function get document():Object{ return (findFocusManagerContainer(this)); } public function activateByProxy(_arg1:IFocusManagerContainer):void{ super.activate(_arg1); } override public function removeChildBridge(_arg1:IEventDispatcher):void{ _systemManager.removeChildBridge(_arg1); } override public function get swfBridgeGroup():ISWFBridgeGroup{ return (_systemManager.swfBridgeGroup); } override public function addChildBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void{ _systemManager.addChildBridge(_arg1, _arg2); } override public function useSWFBridge():Boolean{ return (_systemManager.useSWFBridge()); } override public function get screen():Rectangle{ return (_systemManager.screen); } override public function set swfBridgeGroup(_arg1:ISWFBridgeGroup):void{ } private function proxyMouseDownHandler(_arg1:MouseEvent):void{ if (findFocusManagerContainer(this)){ SystemManager(_systemManager).dispatchActivatedWindowEvent(this); }; } override public function deactivate(_arg1:IFocusManagerContainer):void{ var _local4:Boolean; var _local5:SWFBridgeEvent; var _local2:ISystemManager = _systemManager; var _local3:IEventDispatcher = (_local2.swfBridgeGroup) ? _local2.swfBridgeGroup.parentBridge : null; if (_local3){ _local4 = SecurityUtil.hasMutualTrustBetweenParentAndChild(ISWFBridgeProvider(_systemManager)); _local5 = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_WINDOW_DEACTIVATE, false, false, {notifier:_local3, window:(_local4) ? this : NameUtil.displayObjectToString(this)}); _systemManager.getSandboxRoot().dispatchEvent(_local5); }; } override public function set document(_arg1:Object):void{ } override public function getVisibleApplicationRect(_arg1:Rectangle=null):Rectangle{ return (_systemManager.getVisibleApplicationRect(_arg1)); } override public function getDefinitionByName(_arg1:String):Object{ return (_systemManager.getDefinitionByName(_arg1)); } } }//package mx.managers
Section 312
//SystemRawChildrenList (mx.managers.SystemRawChildrenList) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; public class SystemRawChildrenList implements IChildList { private var owner:SystemManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function SystemRawChildrenList(_arg1:SystemManager){ this.owner = _arg1; } public function getChildAt(_arg1:int):DisplayObject{ return (owner.mx_internal::rawChildren_getChildAt(_arg1)); } public function addChild(_arg1:DisplayObject):DisplayObject{ return (owner.mx_internal::rawChildren_addChild(_arg1)); } public function getChildIndex(_arg1:DisplayObject):int{ return (owner.mx_internal::rawChildren_getChildIndex(_arg1)); } public function setChildIndex(_arg1:DisplayObject, _arg2:int):void{ var _local3 = owner; _local3.mx_internal::rawChildren_setChildIndex(_arg1, _arg2); } public function getChildByName(_arg1:String):DisplayObject{ return (owner.mx_internal::rawChildren_getChildByName(_arg1)); } public function removeChildAt(_arg1:int):DisplayObject{ return (owner.mx_internal::rawChildren_removeChildAt(_arg1)); } public function get numChildren():int{ return (owner.mx_internal::$numChildren); } public function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject{ return (owner.mx_internal::rawChildren_addChildAt(_arg1, _arg2)); } public function getObjectsUnderPoint(_arg1:Point):Array{ return (owner.mx_internal::rawChildren_getObjectsUnderPoint(_arg1)); } public function contains(_arg1:DisplayObject):Boolean{ return (owner.mx_internal::rawChildren_contains(_arg1)); } public function removeChild(_arg1:DisplayObject):DisplayObject{ return (owner.mx_internal::rawChildren_removeChild(_arg1)); } } }//package mx.managers
Section 313
//ToolTipManager (mx.managers.ToolTipManager) package mx.managers { import flash.display.*; import mx.core.*; import flash.events.*; import mx.effects.*; public class ToolTipManager extends EventDispatcher { mx_internal static const VERSION:String = "3.2.0.3794"; private static var implClassDependency:ToolTipManagerImpl; private static var _impl:IToolTipManager2; mx_internal static function registerToolTip(_arg1:DisplayObject, _arg2:String, _arg3:String):void{ impl.registerToolTip(_arg1, _arg2, _arg3); } public static function get enabled():Boolean{ return (impl.enabled); } public static function set enabled(_arg1:Boolean):void{ impl.enabled = _arg1; } public static function createToolTip(_arg1:String, _arg2:Number, _arg3:Number, _arg4:String=null, _arg5:IUIComponent=null):IToolTip{ return (impl.createToolTip(_arg1, _arg2, _arg3, _arg4, _arg5)); } public static function set hideDelay(_arg1:Number):void{ impl.hideDelay = _arg1; } public static function set showDelay(_arg1:Number):void{ impl.showDelay = _arg1; } public static function get showDelay():Number{ return (impl.showDelay); } public static function destroyToolTip(_arg1:IToolTip):void{ return (impl.destroyToolTip(_arg1)); } public static function get scrubDelay():Number{ return (impl.scrubDelay); } public static function get toolTipClass():Class{ return (impl.toolTipClass); } mx_internal static function registerErrorString(_arg1:DisplayObject, _arg2:String, _arg3:String):void{ impl.registerErrorString(_arg1, _arg2, _arg3); } mx_internal static function sizeTip(_arg1:IToolTip):void{ impl.sizeTip(_arg1); } public static function set currentTarget(_arg1:DisplayObject):void{ impl.currentTarget = _arg1; } public static function set showEffect(_arg1:IAbstractEffect):void{ impl.showEffect = _arg1; } private static function get impl():IToolTipManager2{ if (!_impl){ _impl = IToolTipManager2(Singleton.getInstance("mx.managers::IToolTipManager2")); }; return (_impl); } public static function get hideDelay():Number{ return (impl.hideDelay); } public static function set hideEffect(_arg1:IAbstractEffect):void{ impl.hideEffect = _arg1; } public static function set scrubDelay(_arg1:Number):void{ impl.scrubDelay = _arg1; } public static function get currentToolTip():IToolTip{ return (impl.currentToolTip); } public static function set currentToolTip(_arg1:IToolTip):void{ impl.currentToolTip = _arg1; } public static function get showEffect():IAbstractEffect{ return (impl.showEffect); } public static function get currentTarget():DisplayObject{ return (impl.currentTarget); } public static function get hideEffect():IAbstractEffect{ return (impl.hideEffect); } public static function set toolTipClass(_arg1:Class):void{ impl.toolTipClass = _arg1; } } }//package mx.managers
Section 314
//ToolTipManagerImpl (mx.managers.ToolTipManagerImpl) package mx.managers { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import mx.effects.*; import flash.utils.*; import mx.validators.*; public class ToolTipManagerImpl extends EventDispatcher implements IToolTipManager2 { private var _enabled:Boolean;// = true private var _showDelay:Number;// = 500 private var _hideEffect:IAbstractEffect; mx_internal var hideTimer:Timer; private var _scrubDelay:Number;// = 100 private var _toolTipClass:Class; mx_internal var showTimer:Timer; private var sandboxRoot:IEventDispatcher;// = null mx_internal var currentText:String; private var _currentToolTip:DisplayObject; mx_internal var scrubTimer:Timer; mx_internal var previousTarget:DisplayObject; private var _currentTarget:DisplayObject; private var systemManager:ISystemManager;// = null private var _showEffect:IAbstractEffect; private var _hideDelay:Number;// = 10000 mx_internal var initialized:Boolean;// = false mx_internal var isError:Boolean; mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:IToolTipManager2; public function ToolTipManagerImpl(){ _toolTipClass = ToolTip; super(); if (instance){ throw (new Error("Instance already exists.")); }; this.systemManager = (SystemManagerGlobals.topLevelSystemManagers[0] as ISystemManager); sandboxRoot = this.systemManager.getSandboxRoot(); sandboxRoot.addEventListener(InterManagerRequest.TOOLTIP_MANAGER_REQUEST, marshalToolTipManagerHandler, false, 0, true); var _local1:InterManagerRequest = new InterManagerRequest(InterManagerRequest.TOOLTIP_MANAGER_REQUEST); _local1.name = "update"; sandboxRoot.dispatchEvent(_local1); } mx_internal function systemManager_mouseDownHandler(_arg1:MouseEvent):void{ reset(); } public function set showDelay(_arg1:Number):void{ _showDelay = _arg1; } mx_internal function showTimer_timerHandler(_arg1:TimerEvent):void{ if (currentTarget){ createTip(); initializeTip(); positionTip(); showTip(); }; } mx_internal function hideEffectEnded():void{ var _local1:ToolTipEvent; reset(); if (previousTarget){ _local1 = new ToolTipEvent(ToolTipEvent.TOOL_TIP_END); _local1.toolTip = currentToolTip; previousTarget.dispatchEvent(_local1); }; } public function set scrubDelay(_arg1:Number):void{ _scrubDelay = _arg1; } public function get currentToolTip():IToolTip{ return ((_currentToolTip as IToolTip)); } private function mouseIsOver(_arg1:DisplayObject):Boolean{ if (((!(_arg1)) || (!(_arg1.stage)))){ return (false); }; if ((((_arg1.stage.mouseX == 0)) && ((_arg1.stage.mouseY == 0)))){ return (false); }; return (_arg1.hitTestPoint(_arg1.stage.mouseX, _arg1.stage.mouseY, true)); } mx_internal function toolTipMouseOutHandler(_arg1:MouseEvent):void{ checkIfTargetChanged(_arg1.relatedObject); } public function get enabled():Boolean{ return (_enabled); } public function createToolTip(_arg1:String, _arg2:Number, _arg3:Number, _arg4:String=null, _arg5:IUIComponent=null):IToolTip{ var _local6:ToolTip = new ToolTip(); var _local7:ISystemManager = (_arg5) ? (_arg5.systemManager as ISystemManager) : (ApplicationGlobals.application.systemManager as ISystemManager); _local7.topLevelSystemManager.addChildToSandboxRoot("toolTipChildren", (_local6 as DisplayObject)); if (_arg4){ _local6.setStyle("styleName", "errorTip"); _local6.setStyle("borderStyle", _arg4); }; _local6.text = _arg1; sizeTip(_local6); _local6.move(_arg2, _arg3); return ((_local6 as IToolTip)); } mx_internal function reset():void{ var _local1:ISystemManager; showTimer.reset(); hideTimer.reset(); if (currentToolTip){ if (((showEffect) || (hideEffect))){ currentToolTip.removeEventListener(EffectEvent.EFFECT_END, effectEndHandler); }; EffectManager.endEffectsForTarget(currentToolTip); _local1 = (currentToolTip.systemManager as ISystemManager); _local1.topLevelSystemManager.removeChildFromSandboxRoot("toolTipChildren", (currentToolTip as DisplayObject)); currentToolTip = null; scrubTimer.delay = scrubDelay; scrubTimer.reset(); if (scrubDelay > 0){ scrubTimer.delay = scrubDelay; scrubTimer.start(); }; }; } public function set currentToolTip(_arg1:IToolTip):void{ _currentToolTip = (_arg1 as DisplayObject); var _local2:InterManagerRequest = new InterManagerRequest(InterManagerRequest.TOOLTIP_MANAGER_REQUEST); _local2.name = "currentToolTip"; _local2.value = _arg1; sandboxRoot.dispatchEvent(_local2); } public function get toolTipClass():Class{ return (_toolTipClass); } private function hideImmediately(_arg1:DisplayObject):void{ checkIfTargetChanged(null); } mx_internal function showTip():void{ var _local2:ISystemManager; var _local1:ToolTipEvent = new ToolTipEvent(ToolTipEvent.TOOL_TIP_SHOW); _local1.toolTip = currentToolTip; currentTarget.dispatchEvent(_local1); if (isError){ currentTarget.addEventListener("change", changeHandler); } else { _local2 = getSystemManager(currentTarget); _local2.addEventListener(MouseEvent.MOUSE_DOWN, systemManager_mouseDownHandler); }; currentToolTip.visible = true; if (!showEffect){ showEffectEnded(); }; } mx_internal function effectEndHandler(_arg1:EffectEvent):void{ if (_arg1.effectInstance.effect == showEffect){ showEffectEnded(); } else { if (_arg1.effectInstance.effect == hideEffect){ hideEffectEnded(); }; }; } public function get hideDelay():Number{ return (_hideDelay); } public function get currentTarget():DisplayObject{ return (_currentTarget); } mx_internal function showEffectEnded():void{ var _local1:ToolTipEvent; if (hideDelay == 0){ hideTip(); } else { if (hideDelay < Infinity){ hideTimer.delay = hideDelay; hideTimer.start(); }; }; if (currentTarget){ _local1 = new ToolTipEvent(ToolTipEvent.TOOL_TIP_SHOWN); _local1.toolTip = currentToolTip; currentTarget.dispatchEvent(_local1); }; } public function get hideEffect():IAbstractEffect{ return (_hideEffect); } mx_internal function changeHandler(_arg1:Event):void{ reset(); } public function set enabled(_arg1:Boolean):void{ _enabled = _arg1; } mx_internal function errorTipMouseOverHandler(_arg1:MouseEvent):void{ checkIfTargetChanged(DisplayObject(_arg1.target)); } public function get showDelay():Number{ return (_showDelay); } public function get scrubDelay():Number{ return (_scrubDelay); } public function registerErrorString(_arg1:DisplayObject, _arg2:String, _arg3:String):void{ if (((!(_arg2)) && (_arg3))){ _arg1.addEventListener(MouseEvent.MOUSE_OVER, errorTipMouseOverHandler); _arg1.addEventListener(MouseEvent.MOUSE_OUT, errorTipMouseOutHandler); if (mouseIsOver(_arg1)){ showImmediately(_arg1); }; } else { if (((_arg2) && (!(_arg3)))){ _arg1.removeEventListener(MouseEvent.MOUSE_OVER, errorTipMouseOverHandler); _arg1.removeEventListener(MouseEvent.MOUSE_OUT, errorTipMouseOutHandler); if (mouseIsOver(_arg1)){ hideImmediately(_arg1); }; }; }; } mx_internal function initialize():void{ if (!showTimer){ showTimer = new Timer(0, 1); showTimer.addEventListener(TimerEvent.TIMER, showTimer_timerHandler); }; if (!hideTimer){ hideTimer = new Timer(0, 1); hideTimer.addEventListener(TimerEvent.TIMER, hideTimer_timerHandler); }; if (!scrubTimer){ scrubTimer = new Timer(0, 1); }; initialized = true; } public function destroyToolTip(_arg1:IToolTip):void{ var _local2:ISystemManager = (_arg1.systemManager as ISystemManager); _local2.topLevelSystemManager.removeChildFromSandboxRoot("toolTipChildren", DisplayObject(_arg1)); } mx_internal function checkIfTargetChanged(_arg1:DisplayObject):void{ if (!enabled){ return; }; findTarget(_arg1); if (currentTarget != previousTarget){ targetChanged(); previousTarget = currentTarget; }; } private function marshalToolTipManagerHandler(_arg1:Event):void{ var _local2:InterManagerRequest; if ((_arg1 is InterManagerRequest)){ return; }; var _local3:Object = _arg1; switch (_local3.name){ case "currentToolTip": _currentToolTip = _local3.value; break; case ToolTipEvent.TOOL_TIP_HIDE: if ((_currentToolTip is IToolTip)){ hideTip(); }; break; case "update": _arg1.stopImmediatePropagation(); _local2 = new InterManagerRequest(InterManagerRequest.TOOLTIP_MANAGER_REQUEST); _local2.name = "currentToolTip"; _local2.value = _currentToolTip; sandboxRoot.dispatchEvent(_local2); }; } public function set toolTipClass(_arg1:Class):void{ _toolTipClass = _arg1; } private function getGlobalBounds(_arg1:DisplayObject, _arg2:DisplayObject):Rectangle{ var _local3:Point = new Point(0, 0); _local3 = _arg1.localToGlobal(_local3); _local3 = _arg2.globalToLocal(_local3); return (new Rectangle(_local3.x, _local3.y, _arg1.width, _arg1.height)); } mx_internal function positionTip():void{ var _local1:Number; var _local2:Number; var _local5:Rectangle; var _local6:Point; var _local7:IToolTip; var _local8:Number; var _local9:Number; var _local10:ISystemManager; var _local11:Number; var _local12:Number; var _local3:Number = currentToolTip.screen.width; var _local4:Number = currentToolTip.screen.height; if (isError){ _local5 = getGlobalBounds(currentTarget, currentToolTip.root); _local1 = (_local5.right + 4); _local2 = (_local5.top - 1); if ((_local1 + currentToolTip.width) > _local3){ _local8 = NaN; _local9 = NaN; _local1 = (_local5.left - 2); if (((_local1 + currentToolTip.width) + 4) > _local3){ _local8 = ((_local3 - _local1) - 4); _local9 = Object(toolTipClass).maxWidth; Object(toolTipClass).maxWidth = _local8; if ((currentToolTip is IStyleClient)){ IStyleClient(currentToolTip).setStyle("borderStyle", "errorTipAbove"); }; currentToolTip["text"] = currentToolTip["text"]; Object(toolTipClass).maxWidth = _local9; } else { if ((currentToolTip is IStyleClient)){ IStyleClient(currentToolTip).setStyle("borderStyle", "errorTipAbove"); }; currentToolTip["text"] = currentToolTip["text"]; }; if ((currentToolTip.height + 2) < _local5.top){ _local2 = (_local5.top - (currentToolTip.height + 2)); } else { _local2 = (_local5.bottom + 2); if (!isNaN(_local8)){ Object(toolTipClass).maxWidth = _local8; }; if ((currentToolTip is IStyleClient)){ IStyleClient(currentToolTip).setStyle("borderStyle", "errorTipBelow"); }; currentToolTip["text"] = currentToolTip["text"]; if (!isNaN(_local9)){ Object(toolTipClass).maxWidth = _local9; }; }; }; sizeTip(currentToolTip); _local6 = new Point(_local1, _local2); _local7 = currentToolTip; _local1 = _local6.x; _local2 = _local6.y; } else { _local10 = getSystemManager(currentTarget); _local1 = (DisplayObject(_local10).mouseX + 11); _local2 = (DisplayObject(_local10).mouseY + 22); _local11 = currentToolTip.width; if ((_local1 + _local11) > _local3){ _local1 = (_local3 - _local11); }; _local12 = currentToolTip.height; if ((_local2 + _local12) > _local4){ _local2 = (_local4 - _local12); }; _local6 = new Point(_local1, _local2); _local6 = DisplayObject(_local10).localToGlobal(_local6); _local6 = DisplayObject(sandboxRoot).globalToLocal(_local6); _local1 = _local6.x; _local2 = _local6.y; }; currentToolTip.move(_local1, _local2); } mx_internal function errorTipMouseOutHandler(_arg1:MouseEvent):void{ checkIfTargetChanged(_arg1.relatedObject); } mx_internal function findTarget(_arg1:DisplayObject):void{ while (_arg1) { if ((_arg1 is IValidatorListener)){ currentText = IValidatorListener(_arg1).errorString; if (((!((currentText == null))) && (!((currentText == ""))))){ currentTarget = _arg1; isError = true; return; }; }; if ((_arg1 is IToolTipManagerClient)){ currentText = IToolTipManagerClient(_arg1).toolTip; if (currentText != null){ currentTarget = _arg1; isError = false; return; }; }; _arg1 = _arg1.parent; }; currentText = null; currentTarget = null; } public function registerToolTip(_arg1:DisplayObject, _arg2:String, _arg3:String):void{ if (((!(_arg2)) && (_arg3))){ _arg1.addEventListener(MouseEvent.MOUSE_OVER, toolTipMouseOverHandler); _arg1.addEventListener(MouseEvent.MOUSE_OUT, toolTipMouseOutHandler); if (mouseIsOver(_arg1)){ showImmediately(_arg1); }; } else { if (((_arg2) && (!(_arg3)))){ _arg1.removeEventListener(MouseEvent.MOUSE_OVER, toolTipMouseOverHandler); _arg1.removeEventListener(MouseEvent.MOUSE_OUT, toolTipMouseOutHandler); if (mouseIsOver(_arg1)){ hideImmediately(_arg1); }; }; }; } private function showImmediately(_arg1:DisplayObject):void{ var _local2:Number = ToolTipManager.showDelay; ToolTipManager.showDelay = 0; checkIfTargetChanged(_arg1); ToolTipManager.showDelay = _local2; } public function set hideDelay(_arg1:Number):void{ _hideDelay = _arg1; } private function getSystemManager(_arg1:DisplayObject):ISystemManager{ return (((_arg1 is IUIComponent)) ? IUIComponent(_arg1).systemManager : null); } public function set currentTarget(_arg1:DisplayObject):void{ _currentTarget = _arg1; } public function sizeTip(_arg1:IToolTip):void{ if ((_arg1 is IInvalidating)){ IInvalidating(_arg1).validateNow(); }; _arg1.setActualSize(_arg1.getExplicitOrMeasuredWidth(), _arg1.getExplicitOrMeasuredHeight()); } public function set showEffect(_arg1:IAbstractEffect):void{ _showEffect = (_arg1 as IAbstractEffect); } mx_internal function targetChanged():void{ var _local1:ToolTipEvent; var _local2:InterManagerRequest; if (!initialized){ initialize(); }; if (((previousTarget) && (currentToolTip))){ if ((currentToolTip is IToolTip)){ _local1 = new ToolTipEvent(ToolTipEvent.TOOL_TIP_HIDE); _local1.toolTip = currentToolTip; previousTarget.dispatchEvent(_local1); } else { _local2 = new InterManagerRequest(InterManagerRequest.TOOLTIP_MANAGER_REQUEST); _local2.name = ToolTipEvent.TOOL_TIP_HIDE; sandboxRoot.dispatchEvent(_local2); }; }; reset(); if (currentTarget){ if (currentText == ""){ return; }; _local1 = new ToolTipEvent(ToolTipEvent.TOOL_TIP_START); currentTarget.dispatchEvent(_local1); if ((((showDelay == 0)) || (scrubTimer.running))){ createTip(); initializeTip(); positionTip(); showTip(); } else { showTimer.delay = showDelay; showTimer.start(); }; }; } public function set hideEffect(_arg1:IAbstractEffect):void{ _hideEffect = (_arg1 as IAbstractEffect); } mx_internal function hideTimer_timerHandler(_arg1:TimerEvent):void{ hideTip(); } mx_internal function initializeTip():void{ if ((currentToolTip is IToolTip)){ IToolTip(currentToolTip).text = currentText; }; if (((isError) && ((currentToolTip is IStyleClient)))){ IStyleClient(currentToolTip).setStyle("styleName", "errorTip"); }; sizeTip(currentToolTip); if ((currentToolTip is IStyleClient)){ if (showEffect){ IStyleClient(currentToolTip).setStyle("showEffect", showEffect); }; if (hideEffect){ IStyleClient(currentToolTip).setStyle("hideEffect", hideEffect); }; }; if (((showEffect) || (hideEffect))){ currentToolTip.addEventListener(EffectEvent.EFFECT_END, effectEndHandler); }; } public function get showEffect():IAbstractEffect{ return (_showEffect); } mx_internal function toolTipMouseOverHandler(_arg1:MouseEvent):void{ checkIfTargetChanged(DisplayObject(_arg1.target)); } mx_internal function hideTip():void{ var _local1:ToolTipEvent; var _local2:ISystemManager; if (previousTarget){ _local1 = new ToolTipEvent(ToolTipEvent.TOOL_TIP_HIDE); _local1.toolTip = currentToolTip; previousTarget.dispatchEvent(_local1); }; if (currentToolTip){ currentToolTip.visible = false; }; if (isError){ if (currentTarget){ currentTarget.removeEventListener("change", changeHandler); }; } else { if (previousTarget){ _local2 = getSystemManager(previousTarget); _local2.removeEventListener(MouseEvent.MOUSE_DOWN, systemManager_mouseDownHandler); }; }; if (!hideEffect){ hideEffectEnded(); }; } mx_internal function createTip():void{ var _local1:ToolTipEvent = new ToolTipEvent(ToolTipEvent.TOOL_TIP_CREATE); currentTarget.dispatchEvent(_local1); if (_local1.toolTip){ currentToolTip = _local1.toolTip; } else { currentToolTip = new toolTipClass(); }; currentToolTip.visible = false; var _local2:ISystemManager = (getSystemManager(currentTarget) as ISystemManager); _local2.topLevelSystemManager.addChildToSandboxRoot("toolTipChildren", (currentToolTip as DisplayObject)); } public static function getInstance():IToolTipManager2{ if (!instance){ instance = new (ToolTipManagerImpl); }; return (instance); } } }//package mx.managers
Section 315
//LoaderConfig (mx.messaging.config.LoaderConfig) package mx.messaging.config { import mx.core.*; public class LoaderConfig { mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var _url:String = null; mx_internal static var _parameters:Object; public static function get url():String{ return (_url); } public static function get parameters():Object{ return (_parameters); } } }//package mx.messaging.config
Section 316
//IModuleInfo (mx.modules.IModuleInfo) package mx.modules { import mx.core.*; import flash.events.*; import flash.system.*; import flash.utils.*; public interface IModuleInfo extends IEventDispatcher { function get ready():Boolean; function get loaded():Boolean; function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void; function release():void; function get error():Boolean; function get data():Object; function publish(_arg1:IFlexModuleFactory):void; function get factory():IFlexModuleFactory; function set data(_arg1:Object):void; function get url():String; function get setup():Boolean; function unload():void; } }//package mx.modules
Section 317
//ModuleManager (mx.modules.ModuleManager) package mx.modules { import mx.core.*; public class ModuleManager { mx_internal static const VERSION:String = "3.2.0.3794"; public static function getModule(_arg1:String):IModuleInfo{ return (getSingleton().getModule(_arg1)); } private static function getSingleton():Object{ if (!ModuleManagerGlobals.managerSingleton){ ModuleManagerGlobals.managerSingleton = new ModuleManagerImpl(); }; return (ModuleManagerGlobals.managerSingleton); } public static function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ return (getSingleton().getAssociatedFactory(_arg1)); } } }//package mx.modules import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import flash.system.*; import flash.net.*; import flash.utils.*; class ModuleInfoProxy extends EventDispatcher implements IModuleInfo { private var _data:Object; private var info:ModuleInfo; private var referenced:Boolean;// = false private function ModuleInfoProxy(_arg1:ModuleInfo){ this.info = _arg1; _arg1.addEventListener(ModuleEvent.SETUP, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.ERROR, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.UNLOAD, moduleEventHandler, false, 0, true); } public function get loaded():Boolean{ return (info.loaded); } public function release():void{ if (referenced){ info.removeReference(); referenced = false; }; } public function get error():Boolean{ return (info.error); } public function get factory():IFlexModuleFactory{ return (info.factory); } public function publish(_arg1:IFlexModuleFactory):void{ info.publish(_arg1); } public function set data(_arg1:Object):void{ _data = _arg1; } public function get ready():Boolean{ return (info.ready); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ var _local4:ModuleEvent; info.resurrect(); if (!referenced){ info.addReference(); referenced = true; }; if (info.error){ dispatchEvent(new ModuleEvent(ModuleEvent.ERROR)); } else { if (info.loaded){ if (info.setup){ dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); if (info.ready){ _local4 = new ModuleEvent(ModuleEvent.PROGRESS); _local4.bytesLoaded = info.size; _local4.bytesTotal = info.size; dispatchEvent(_local4); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); }; }; } else { info.load(_arg1, _arg2, _arg3); }; }; } private function moduleEventHandler(_arg1:ModuleEvent):void{ dispatchEvent(_arg1); } public function get url():String{ return (info.url); } public function get data():Object{ return (_data); } public function get setup():Boolean{ return (info.setup); } public function unload():void{ info.unload(); info.removeEventListener(ModuleEvent.SETUP, moduleEventHandler); info.removeEventListener(ModuleEvent.PROGRESS, moduleEventHandler); info.removeEventListener(ModuleEvent.READY, moduleEventHandler); info.removeEventListener(ModuleEvent.ERROR, moduleEventHandler); info.removeEventListener(ModuleEvent.UNLOAD, moduleEventHandler); } } class ModuleManagerImpl extends EventDispatcher { private var moduleList:Object; private function ModuleManagerImpl(){ moduleList = {}; super(); } public function getModule(_arg1:String):IModuleInfo{ var _local2:ModuleInfo = (moduleList[_arg1] as ModuleInfo); if (!_local2){ _local2 = new ModuleInfo(_arg1); moduleList[_arg1] = _local2; }; return (new ModuleInfoProxy(_local2)); } public function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ var m:Object; var info:ModuleInfo; var domain:ApplicationDomain; var cls:Class; var object = _arg1; var className:String = getQualifiedClassName(object); for each (m in moduleList) { info = (m as ModuleInfo); if (!info.ready){ } else { domain = info.applicationDomain; try { cls = Class(domain.getDefinition(className)); if ((object is cls)){ return (info.factory); }; } catch(error:Error) { }; }; }; return (null); } } class ModuleInfo extends EventDispatcher { private var _error:Boolean;// = false private var loader:Loader; private var factoryInfo:FactoryInfo; private var limbo:Dictionary; private var _loaded:Boolean;// = false private var _ready:Boolean;// = false private var numReferences:int;// = 0 private var _url:String; private var _setup:Boolean;// = false private function ModuleInfo(_arg1:String){ _url = _arg1; } private function clearLoader():void{ if (loader){ if (loader.contentLoaderInfo){ loader.contentLoaderInfo.removeEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); }; try { if (loader.content){ loader.content.removeEventListener("ready", readyHandler); loader.content.removeEventListener("error", moduleErrorHandler); }; } catch(error:Error) { }; if (_loaded){ try { loader.close(); } catch(error:Error) { }; }; try { loader.unload(); } catch(error:Error) { }; loader = null; }; } public function get size():int{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.bytesTotal : 0); } public function get loaded():Boolean{ return ((limbo) ? false : _loaded); } public function release():void{ if (((_ready) && (!(limbo)))){ limbo = new Dictionary(true); limbo[factoryInfo] = 1; factoryInfo = null; } else { unload(); }; } public function get error():Boolean{ return ((limbo) ? false : _error); } public function get factory():IFlexModuleFactory{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.factory : null); } public function completeHandler(_arg1:Event):void{ var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = loader.contentLoaderInfo.bytesLoaded; _local2.bytesTotal = loader.contentLoaderInfo.bytesTotal; dispatchEvent(_local2); } public function publish(_arg1:IFlexModuleFactory):void{ if (factoryInfo){ return; }; if (_url.indexOf("published://") != 0){ return; }; factoryInfo = new FactoryInfo(); factoryInfo.factory = _arg1; _loaded = true; _setup = true; _ready = true; _error = false; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); dispatchEvent(new ModuleEvent(ModuleEvent.PROGRESS)); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); } public function initHandler(_arg1:Event):void{ var moduleEvent:ModuleEvent; var event = _arg1; factoryInfo = new FactoryInfo(); try { factoryInfo.factory = (loader.content as IFlexModuleFactory); } catch(error:Error) { }; if (!factoryInfo.factory){ moduleEvent = new ModuleEvent(ModuleEvent.ERROR, event.bubbles, event.cancelable); moduleEvent.bytesLoaded = 0; moduleEvent.bytesTotal = 0; moduleEvent.errorText = "SWF is not a loadable module"; dispatchEvent(moduleEvent); return; }; loader.content.addEventListener("ready", readyHandler); loader.content.addEventListener("error", moduleErrorHandler); try { factoryInfo.applicationDomain = loader.contentLoaderInfo.applicationDomain; } catch(error:Error) { }; _setup = true; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); } public function resurrect():void{ var _local1:Object; if (((!(factoryInfo)) && (limbo))){ for (_local1 in limbo) { factoryInfo = (_local1 as FactoryInfo); break; }; limbo = null; }; if (!factoryInfo){ if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; loader = null; _loaded = false; _setup = false; _ready = false; _error = false; }; } public function errorHandler(_arg1:ErrorEvent):void{ _error = true; var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = 0; _local2.bytesTotal = 0; _local2.errorText = _arg1.text; dispatchEvent(_local2); } public function get ready():Boolean{ return ((limbo) ? false : _ready); } private function loadBytes(_arg1:ApplicationDomain, _arg2:ByteArray):void{ var _local3:LoaderContext = new LoaderContext(); _local3.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); if (("allowLoadBytesCodeExecution" in _local3)){ _local3["allowLoadBytesCodeExecution"] = true; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.loadBytes(_arg2, _local3); } public function removeReference():void{ numReferences--; if (numReferences == 0){ release(); }; } public function addReference():void{ numReferences++; } public function progressHandler(_arg1:ProgressEvent):void{ var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ if (_loaded){ return; }; _loaded = true; limbo = null; if (_arg3){ loadBytes(_arg1, _arg3); return; }; if (_url.indexOf("published://") == 0){ return; }; var _local4:URLRequest = new URLRequest(_url); var _local5:LoaderContext = new LoaderContext(); _local5.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); _local5.securityDomain = _arg2; if ((((_arg2 == null)) && ((Security.sandboxType == Security.REMOTE)))){ _local5.securityDomain = SecurityDomain.currentDomain; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.load(_local4, _local5); } public function get url():String{ return (_url); } public function get applicationDomain():ApplicationDomain{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.applicationDomain : null); } public function moduleErrorHandler(_arg1:Event):void{ var _local2:ModuleEvent; _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); if ((_arg1 is ModuleEvent)){ _local2 = ModuleEvent(_arg1); } else { _local2 = new ModuleEvent(ModuleEvent.ERROR); }; dispatchEvent(_local2); } public function readyHandler(_arg1:Event):void{ _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); } public function get setup():Boolean{ return ((limbo) ? false : _setup); } public function unload():void{ clearLoader(); if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; limbo = null; factoryInfo = null; _loaded = false; _setup = false; _ready = false; _error = false; } } class FactoryInfo { public var bytesTotal:int;// = 0 public var factory:IFlexModuleFactory; public var applicationDomain:ApplicationDomain; private function FactoryInfo(){ } }
Section 318
//ModuleManagerGlobals (mx.modules.ModuleManagerGlobals) package mx.modules { public class ModuleManagerGlobals { public static var managerSingleton:Object = null; } }//package mx.modules
Section 319
//DownloadProgressBar (mx.preloaders.DownloadProgressBar) package mx.preloaders { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.text.*; import flash.events.*; import mx.events.*; import flash.system.*; import mx.graphics.*; import flash.net.*; import flash.utils.*; public class DownloadProgressBar extends Sprite implements IPreloaderDisplay { protected var MINIMUM_DISPLAY_TIME:uint;// = 0 private var _barFrameRect:RoundedRectangle; private var _stageHeight:Number;// = 375 private var _stageWidth:Number;// = 500 private var _percentRect:Rectangle; private var _percentObj:TextField; private var _downloadingLabel:String;// = "Loading" private var _showProgressBar:Boolean;// = true private var _yOffset:Number;// = 20 private var _initProgressCount:uint;// = 0 private var _barSprite:Sprite; private var _visible:Boolean;// = false private var _barRect:RoundedRectangle; private var _showingDisplay:Boolean;// = false private var _backgroundSize:String;// = "" private var _initProgressTotal:uint;// = 12 private var _startedInit:Boolean;// = false private var _showLabel:Boolean;// = true private var _value:Number;// = 0 private var _labelRect:Rectangle; private var _backgroundImage:Object; private var _backgroundAlpha:Number;// = 1 private var _backgroundColor:uint; private var _startedLoading:Boolean;// = false private var _showPercentage:Boolean;// = false private var _barFrameSprite:Sprite; protected var DOWNLOAD_PERCENTAGE:uint;// = 60 private var _displayStartCount:uint;// = 0 private var _labelObj:TextField; private var _borderRect:RoundedRectangle; private var _maximum:Number;// = 0 private var _displayTime:int; private var _label:String;// = "" private var _preloader:Sprite; private var _xOffset:Number;// = 20 private var _startTime:int; mx_internal static const VERSION:String = "3.2.0.3794"; private static var _initializingLabel:String = "Initializing"; public function DownloadProgressBar(){ _labelRect = labelRect; _percentRect = percentRect; _borderRect = borderRect; _barFrameRect = barFrameRect; _barRect = barRect; super(); } protected function getPercentLoaded(_arg1:Number, _arg2:Number):Number{ var _local3:Number; if ((((((((_arg1 == 0)) || ((_arg2 == 0)))) || (isNaN(_arg2)))) || (isNaN(_arg1)))){ return (0); }; _local3 = ((100 * _arg1) / _arg2); if (((isNaN(_local3)) || ((_local3 <= 0)))){ return (0); }; if (_local3 > 99){ return (99); }; return (Math.round(_local3)); } protected function get labelFormat():TextFormat{ var _local1:TextFormat = new TextFormat(); _local1.color = 0x333333; _local1.font = "Verdana"; _local1.size = 10; return (_local1); } private function calcScale():void{ var _local1:Number; if ((((stageWidth < 160)) || ((stageHeight < 120)))){ scaleX = 1; scaleY = 1; } else { if ((((stageWidth < 240)) || ((stageHeight < 150)))){ createChildren(); _local1 = Math.min((stageWidth / 240), (stageHeight / 150)); scaleX = _local1; scaleY = _local1; } else { createChildren(); }; }; } protected function get percentRect():Rectangle{ return (new Rectangle(108, 4, 34, 16)); } protected function set showLabel(_arg1:Boolean):void{ _showLabel = _arg1; draw(); } private function calcBackgroundSize():Number{ var _local2:int; var _local1:Number = NaN; if (backgroundSize){ _local2 = backgroundSize.indexOf("%"); if (_local2 != -1){ _local1 = Number(backgroundSize.substr(0, _local2)); }; }; return (_local1); } private function show():void{ _showingDisplay = true; calcScale(); draw(); _displayTime = getTimer(); } private function loadBackgroundImage(_arg1:Object):void{ var cls:Class; var newStyleObj:DisplayObject; var loader:Loader; var loaderContext:LoaderContext; var classOrString = _arg1; if (((classOrString) && ((classOrString as Class)))){ cls = Class(classOrString); initBackgroundImage(new (cls)); } else { if (((classOrString) && ((classOrString is String)))){ try { cls = Class(getDefinitionByName(String(classOrString))); } catch(e:Error) { }; if (cls){ newStyleObj = new (cls); initBackgroundImage(newStyleObj); } else { loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loader_completeHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loader_ioErrorHandler); loaderContext = new LoaderContext(); loaderContext.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain); loader.load(new URLRequest(String(classOrString)), loaderContext); }; }; }; } protected function set showPercentage(_arg1:Boolean):void{ _showPercentage = _arg1; draw(); } protected function get barFrameRect():RoundedRectangle{ return (new RoundedRectangle(14, 40, 154, 4)); } private function loader_ioErrorHandler(_arg1:IOErrorEvent):void{ } protected function rslErrorHandler(_arg1:RSLEvent):void{ _preloader.removeEventListener(ProgressEvent.PROGRESS, progressHandler); _preloader.removeEventListener(Event.COMPLETE, completeHandler); _preloader.removeEventListener(RSLEvent.RSL_PROGRESS, rslProgressHandler); _preloader.removeEventListener(RSLEvent.RSL_COMPLETE, rslCompleteHandler); _preloader.removeEventListener(RSLEvent.RSL_ERROR, rslErrorHandler); _preloader.removeEventListener(FlexEvent.INIT_PROGRESS, initProgressHandler); _preloader.removeEventListener(FlexEvent.INIT_COMPLETE, initCompleteHandler); if (!_showingDisplay){ show(); _showingDisplay = true; }; label = ((("RSL Error " + (_arg1.rslIndex + 1)) + " of ") + _arg1.rslTotal); var _local2:ErrorField = new ErrorField(this); _local2.show(_arg1.errorText); } protected function rslCompleteHandler(_arg1:RSLEvent):void{ label = ((("Loaded library " + _arg1.rslIndex) + " of ") + _arg1.rslTotal); } protected function get borderRect():RoundedRectangle{ return (new RoundedRectangle(0, 0, 182, 60, 4)); } protected function showDisplayForDownloading(_arg1:int, _arg2:ProgressEvent):Boolean{ return ((((_arg1 > 700)) && ((_arg2.bytesLoaded < (_arg2.bytesTotal / 2))))); } protected function createChildren():void{ var _local2:TextField; var _local3:TextField; var _local1:Graphics = graphics; if (backgroundColor != 4294967295){ _local1.beginFill(backgroundColor, backgroundAlpha); _local1.drawRect(0, 0, stageWidth, stageHeight); }; if (backgroundImage != null){ loadBackgroundImage(backgroundImage); }; _barFrameSprite = new Sprite(); _barSprite = new Sprite(); addChild(_barFrameSprite); addChild(_barSprite); _local1.beginFill(0xCCCCCC, 0.4); _local1.drawRoundRect(calcX(_borderRect.x), calcY(_borderRect.y), _borderRect.width, _borderRect.height, (_borderRect.cornerRadius * 2), (_borderRect.cornerRadius * 2)); _local1.drawRoundRect(calcX((_borderRect.x + 1)), calcY((_borderRect.y + 1)), (_borderRect.width - 2), (_borderRect.height - 2), (_borderRect.cornerRadius - (1 * 2)), (_borderRect.cornerRadius - (1 * 2))); _local1.endFill(); _local1.beginFill(0xCCCCCC, 0.4); _local1.drawRoundRect(calcX((_borderRect.x + 1)), calcY((_borderRect.y + 1)), (_borderRect.width - 2), (_borderRect.height - 2), (_borderRect.cornerRadius - (1 * 2)), (_borderRect.cornerRadius - (1 * 2))); _local1.endFill(); var _local4:Graphics = _barFrameSprite.graphics; var _local5:Matrix = new Matrix(); _local5.createGradientBox(_barFrameRect.width, _barFrameRect.height, (Math.PI / 2), calcX(_barFrameRect.x), calcY(_barFrameRect.y)); _local4.beginGradientFill(GradientType.LINEAR, [6054502, 11909306], [1, 1], [0, 0xFF], _local5); _local4.drawRoundRect(calcX(_barFrameRect.x), calcY(_barFrameRect.y), _barFrameRect.width, _barFrameRect.height, (_barFrameRect.cornerRadius * 2), (_barFrameRect.cornerRadius * 2)); _local4.drawRoundRect(calcX((_barFrameRect.x + 1)), calcY((_barFrameRect.y + 1)), (_barFrameRect.width - 2), (_barFrameRect.height - 2), (_barFrameRect.cornerRadius * 2), (_barFrameRect.cornerRadius * 2)); _local4.endFill(); _labelObj = new TextField(); _labelObj.x = calcX(_labelRect.x); _labelObj.y = calcY(_labelRect.y); _labelObj.width = _labelRect.width; _labelObj.height = _labelRect.height; _labelObj.selectable = false; _labelObj.defaultTextFormat = labelFormat; addChild(_labelObj); _percentObj = new TextField(); _percentObj.x = calcX(_percentRect.x); _percentObj.y = calcY(_percentRect.y); _percentObj.width = _percentRect.width; _percentObj.height = _percentRect.height; _percentObj.selectable = false; _percentObj.defaultTextFormat = percentFormat; addChild(_percentObj); var _local6:RectangularDropShadow = new RectangularDropShadow(); _local6.color = 0; _local6.angle = 90; _local6.alpha = 0.6; _local6.distance = 2; _local6.tlRadius = (_local6.trRadius = (_local6.blRadius = (_local6.brRadius = _borderRect.cornerRadius))); _local6.drawShadow(_local1, calcX(_borderRect.x), calcY(_borderRect.y), _borderRect.width, _borderRect.height); _local1.lineStyle(1, 0xFFFFFF, 0.3); _local1.moveTo((calcX(_borderRect.x) + _borderRect.cornerRadius), calcY(_borderRect.y)); _local1.lineTo(((calcX(_borderRect.x) - _borderRect.cornerRadius) + _borderRect.width), calcY(_borderRect.y)); } private function draw():void{ var _local1:Number; if (_startedLoading){ if (!_startedInit){ _local1 = Math.round(((getPercentLoaded(_value, _maximum) * DOWNLOAD_PERCENTAGE) / 100)); } else { _local1 = Math.round((((getPercentLoaded(_value, _maximum) * (100 - DOWNLOAD_PERCENTAGE)) / 100) + DOWNLOAD_PERCENTAGE)); }; } else { _local1 = getPercentLoaded(_value, _maximum); }; if (_labelObj){ _labelObj.text = _label; }; if (_percentObj){ if (!_showPercentage){ _percentObj.visible = false; _percentObj.text = ""; } else { _percentObj.text = (String(_local1) + "%"); }; }; if (((_barSprite) && (_barFrameSprite))){ if (!_showProgressBar){ _barSprite.visible = false; _barFrameSprite.visible = false; } else { drawProgressBar(_local1); }; }; } private function timerHandler(_arg1:Event=null):void{ dispatchEvent(new Event(Event.COMPLETE)); } private function hide():void{ } public function get backgroundSize():String{ return (_backgroundSize); } protected function center(_arg1:Number, _arg2:Number):void{ _xOffset = Math.floor(((_arg1 - _borderRect.width) / 2)); _yOffset = Math.floor(((_arg2 - _borderRect.height) / 2)); } protected function progressHandler(_arg1:ProgressEvent):void{ var _local2:uint = _arg1.bytesLoaded; var _local3:uint = _arg1.bytesTotal; var _local4:int = (getTimer() - _startTime); if (((_showingDisplay) || (showDisplayForDownloading(_local4, _arg1)))){ if (!_startedLoading){ show(); label = downloadingLabel; _startedLoading = true; }; setProgress(_arg1.bytesLoaded, _arg1.bytesTotal); }; } protected function initProgressHandler(_arg1:Event):void{ var _local3:Number; var _local2:int = (getTimer() - _startTime); _initProgressCount++; if (((!(_showingDisplay)) && (showDisplayForInit(_local2, _initProgressCount)))){ _displayStartCount = _initProgressCount; show(); } else { if (_showingDisplay){ if (!_startedInit){ _startedInit = true; label = initializingLabel; }; _local3 = ((100 * _initProgressCount) / (_initProgressTotal - _displayStartCount)); setProgress(_local3, 100); }; }; } protected function set downloadingLabel(_arg1:String):void{ _downloadingLabel = _arg1; } public function get stageWidth():Number{ return (_stageWidth); } protected function get showPercentage():Boolean{ return (_showPercentage); } override public function get visible():Boolean{ return (_visible); } public function set stageHeight(_arg1:Number):void{ _stageHeight = _arg1; } public function initialize():void{ _startTime = getTimer(); center(stageWidth, stageHeight); } protected function rslProgressHandler(_arg1:RSLEvent):void{ } protected function get barRect():RoundedRectangle{ return (new RoundedRectangle(14, 39, 154, 6, 0)); } protected function get percentFormat():TextFormat{ var _local1:TextFormat = new TextFormat(); _local1.align = "right"; _local1.color = 0; _local1.font = "Verdana"; _local1.size = 10; return (_local1); } public function set backgroundImage(_arg1:Object):void{ _backgroundImage = _arg1; } private function calcX(_arg1:Number):Number{ return ((_arg1 + _xOffset)); } private function calcY(_arg1:Number):Number{ return ((_arg1 + _yOffset)); } public function set backgroundAlpha(_arg1:Number):void{ _backgroundAlpha = _arg1; } private function initCompleteHandler(_arg1:Event):void{ var _local3:Timer; var _local2:int = (getTimer() - _displayTime); if (((_showingDisplay) && ((_local2 < MINIMUM_DISPLAY_TIME)))){ _local3 = new Timer((MINIMUM_DISPLAY_TIME - _local2), 1); _local3.addEventListener(TimerEvent.TIMER, timerHandler); _local3.start(); } else { timerHandler(); }; } public function set backgroundColor(_arg1:uint):void{ _backgroundColor = _arg1; } private function initBackgroundImage(_arg1:DisplayObject):void{ var _local7:Number; var _local8:Number; var _local9:Number; addChildAt(_arg1, 0); var _local2:Number = _arg1.width; var _local3:Number = _arg1.height; var _local4:Number = calcBackgroundSize(); if (isNaN(_local4)){ _local7 = 1; _local8 = 1; } else { _local9 = (_local4 * 0.01); _local7 = ((_local9 * stageWidth) / _local2); _local8 = ((_local9 * stageHeight) / _local3); }; _arg1.scaleX = _local7; _arg1.scaleY = _local8; var _local5:Number = Math.round((0.5 * (stageWidth - (_local2 * _local7)))); var _local6:Number = Math.round((0.5 * (stageHeight - (_local3 * _local8)))); _arg1.x = _local5; _arg1.y = _local6; if (!isNaN(backgroundAlpha)){ _arg1.alpha = backgroundAlpha; }; } public function set backgroundSize(_arg1:String):void{ _backgroundSize = _arg1; } protected function showDisplayForInit(_arg1:int, _arg2:int):Boolean{ return ((((_arg1 > 300)) && ((_arg2 == 2)))); } protected function get downloadingLabel():String{ return (_downloadingLabel); } private function loader_completeHandler(_arg1:Event):void{ var _local2:DisplayObject = DisplayObject(LoaderInfo(_arg1.target).loader); initBackgroundImage(_local2); } protected function setProgress(_arg1:Number, _arg2:Number):void{ if (((((((!(isNaN(_arg1))) && (!(isNaN(_arg2))))) && ((_arg1 >= 0)))) && ((_arg2 > 0)))){ _value = Number(_arg1); _maximum = Number(_arg2); draw(); }; } public function get stageHeight():Number{ return (_stageHeight); } public function get backgroundImage():Object{ return (_backgroundImage); } public function get backgroundAlpha():Number{ if (!isNaN(_backgroundAlpha)){ return (_backgroundAlpha); }; return (1); } private function drawProgressBar(_arg1:Number):void{ var _local11:Number; var _local2:Graphics = _barSprite.graphics; _local2.clear(); var _local3:Array = [0xFFFFFF, 0xFFFFFF]; var _local4:Array = [0, 0xFF]; var _local5:Matrix = new Matrix(); var _local6:Number = ((_barRect.width * _arg1) / 100); var _local7:Number = (_local6 / 2); var _local8:Number = (_barRect.height - 4); var _local9:Number = calcX(_barRect.x); var _local10:Number = (calcY(_barRect.y) + 2); _local5.createGradientBox(_local7, _local8, 0, _local9, _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.39, 0.85], _local4, _local5); _local2.drawRect(_local9, _local10, _local7, _local8); _local5.createGradientBox(_local7, _local8, 0, (_local9 + _local7), _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.85, 1], _local4, _local5); _local2.drawRect((_local9 + _local7), _local10, _local7, _local8); _local7 = (_local6 / 3); _local8 = _barRect.height; _local10 = calcY(_barRect.y); _local11 = ((_local10 + _local8) - 1); _local5.createGradientBox(_local7, _local8, 0, _local9, _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.05, 0.15], _local4, _local5); _local2.drawRect(_local9, _local10, _local7, 1); _local2.drawRect(_local9, _local11, _local7, 1); _local5.createGradientBox(_local7, _local8, 0, (_local9 + _local7), _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.15, 0.25], _local4, _local5); _local2.drawRect((_local9 + _local7), _local10, _local7, 1); _local2.drawRect((_local9 + _local7), _local11, _local7, 1); _local5.createGradientBox(_local7, _local8, 0, (_local9 + (_local7 * 2)), _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.25, 0.1], _local4, _local5); _local2.drawRect((_local9 + (_local7 * 2)), _local10, _local7, 1); _local2.drawRect((_local9 + (_local7 * 2)), _local11, _local7, 1); _local7 = (_local6 / 3); _local8 = _barRect.height; _local10 = (calcY(_barRect.y) + 1); _local11 = ((calcY(_barRect.y) + _local8) - 2); _local5.createGradientBox(_local7, _local8, 0, _local9, _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.15, 0.3], _local4, _local5); _local2.drawRect(_local9, _local10, _local7, 1); _local2.drawRect(_local9, _local11, _local7, 1); _local5.createGradientBox(_local7, _local8, 0, (_local9 + _local7), _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.3, 0.4], _local4, _local5); _local2.drawRect((_local9 + _local7), _local10, _local7, 1); _local2.drawRect((_local9 + _local7), _local11, _local7, 1); _local5.createGradientBox(_local7, _local8, 0, (_local9 + (_local7 * 2)), _local10); _local2.beginGradientFill(GradientType.LINEAR, _local3, [0.4, 0.25], _local4, _local5); _local2.drawRect((_local9 + (_local7 * 2)), _local10, _local7, 1); _local2.drawRect((_local9 + (_local7 * 2)), _local11, _local7, 1); } public function get backgroundColor():uint{ return (_backgroundColor); } public function set stageWidth(_arg1:Number):void{ _stageWidth = _arg1; } protected function completeHandler(_arg1:Event):void{ } protected function set label(_arg1:String):void{ if (!(_arg1 is Function)){ _label = _arg1; }; draw(); } public function set preloader(_arg1:Sprite):void{ _preloader = _arg1; _arg1.addEventListener(ProgressEvent.PROGRESS, progressHandler); _arg1.addEventListener(Event.COMPLETE, completeHandler); _arg1.addEventListener(RSLEvent.RSL_PROGRESS, rslProgressHandler); _arg1.addEventListener(RSLEvent.RSL_COMPLETE, rslCompleteHandler); _arg1.addEventListener(RSLEvent.RSL_ERROR, rslErrorHandler); _arg1.addEventListener(FlexEvent.INIT_PROGRESS, initProgressHandler); _arg1.addEventListener(FlexEvent.INIT_COMPLETE, initCompleteHandler); } protected function get label():String{ return (_label); } protected function get labelRect():Rectangle{ return (new Rectangle(14, 17, 100, 16)); } override public function set visible(_arg1:Boolean):void{ if (((!(_visible)) && (_arg1))){ show(); } else { if (((_visible) && (!(_arg1)))){ hide(); }; }; _visible = _arg1; } protected function get showLabel():Boolean{ return (_showLabel); } public static function get initializingLabel():String{ return (_initializingLabel); } public static function set initializingLabel(_arg1:String):void{ _initializingLabel = _arg1; } } }//package mx.preloaders import flash.display.*; import flash.text.*; import flash.system.*; class ErrorField extends Sprite { private const TEXT_MARGIN_PX:int = 10; private const MAX_WIDTH_INCHES:int = 6; private const MIN_WIDTH_INCHES:int = 2; private var downloadProgressBar:DownloadProgressBar; private function ErrorField(_arg1:DownloadProgressBar){ this.downloadProgressBar = _arg1; } protected function get labelFormat():TextFormat{ var _local1:TextFormat = new TextFormat(); _local1.color = 0; _local1.font = "Verdana"; _local1.size = 10; return (_local1); } public function show(_arg1:String):void{ if ((((_arg1 == null)) || ((_arg1.length == 0)))){ return; }; var _local2:Number = downloadProgressBar.stageWidth; var _local3:Number = downloadProgressBar.stageHeight; var _local4:TextField = new TextField(); _local4.autoSize = TextFieldAutoSize.LEFT; _local4.multiline = true; _local4.wordWrap = true; _local4.background = true; _local4.defaultTextFormat = labelFormat; _local4.text = _arg1; _local4.width = Math.max((MIN_WIDTH_INCHES * Capabilities.screenDPI), (_local2 - (TEXT_MARGIN_PX * 2))); _local4.width = Math.min((MAX_WIDTH_INCHES * Capabilities.screenDPI), _local4.width); _local4.y = Math.max(0, ((_local3 - TEXT_MARGIN_PX) - _local4.height)); _local4.x = ((_local2 - _local4.width) / 2); downloadProgressBar.parent.addChild(this); this.addChild(_local4); } }
Section 320
//IPreloaderDisplay (mx.preloaders.IPreloaderDisplay) package mx.preloaders { import flash.display.*; import flash.events.*; public interface IPreloaderDisplay extends IEventDispatcher { function set backgroundAlpha(_arg1:Number):void; function get stageHeight():Number; function get stageWidth():Number; function set backgroundColor(_arg1:uint):void; function set preloader(_arg1:Sprite):void; function get backgroundImage():Object; function get backgroundSize():String; function get backgroundAlpha():Number; function set stageHeight(_arg1:Number):void; function get backgroundColor():uint; function set stageWidth(_arg1:Number):void; function set backgroundImage(_arg1:Object):void; function set backgroundSize(_arg1:String):void; function initialize():void; } }//package mx.preloaders
Section 321
//Preloader (mx.preloaders.Preloader) package mx.preloaders { import flash.display.*; import mx.core.*; import flash.events.*; import mx.events.*; import flash.utils.*; public class Preloader extends Sprite { private var app:IEventDispatcher;// = null private var showDisplay:Boolean; private var timer:Timer; private var rslDone:Boolean;// = false private var displayClass:IPreloaderDisplay;// = null private var rslListLoader:RSLListLoader; mx_internal static const VERSION:String = "3.2.0.3794"; private function getByteValues():Object{ var _local1:LoaderInfo = root.loaderInfo; var _local2:int = _local1.bytesLoaded; var _local3:int = _local1.bytesTotal; var _local4:int = (rslListLoader) ? rslListLoader.getItemCount() : 0; var _local5:int; while (_local5 < _local4) { _local2 = (_local2 + rslListLoader.getItem(_local5).loaded); _local3 = (_local3 + rslListLoader.getItem(_local5).total); _local5++; }; return ({loaded:_local2, total:_local3}); } private function appProgressHandler(_arg1:Event):void{ dispatchEvent(new FlexEvent(FlexEvent.INIT_PROGRESS)); } private function dispatchAppEndEvent(_arg1:Object=null):void{ dispatchEvent(new FlexEvent(FlexEvent.INIT_COMPLETE)); if (!showDisplay){ displayClassCompleteHandler(null); }; } private function ioErrorHandler(_arg1:IOErrorEvent):void{ } private function appCreationCompleteHandler(_arg1:FlexEvent):void{ dispatchAppEndEvent(); } mx_internal function rslErrorHandler(_arg1:ErrorEvent):void{ var _local2:int = rslListLoader.getIndex(); var _local3:RSLItem = rslListLoader.getItem(_local2); var _local4:RSLEvent = new RSLEvent(RSLEvent.RSL_ERROR); _local4.bytesLoaded = 0; _local4.bytesTotal = 0; _local4.rslIndex = _local2; _local4.rslTotal = rslListLoader.getItemCount(); _local4.url = _local3.urlRequest; _local4.errorText = decodeURI(_arg1.text); dispatchEvent(_local4); } public function initialize(_arg1:Boolean, _arg2:Class, _arg3:uint, _arg4:Number, _arg5:Object, _arg6:String, _arg7:Number, _arg8:Number, _arg9:Array=null, _arg10:Array=null, _arg11:Array=null, _arg12:Array=null):void{ var _local13:int; var _local14:int; var _local15:RSLItem; var _local16:ResourceModuleRSLItem; if (((((!((_arg9 == null))) || (!((_arg10 == null))))) && (!((_arg11 == null))))){ throw (new Error("RSLs may only be specified by using libs and sizes or rslList, not both.")); }; root.loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); if (((_arg9) && ((_arg9.length > 0)))){ if (_arg11 == null){ _arg11 = []; }; _local13 = _arg9.length; _local14 = 0; while (_local14 < _local13) { _local15 = new RSLItem(_arg9[_local14]); _arg11.push(_local15); _local14++; }; }; if (((_arg12) && ((_arg12.length > 0)))){ _local13 = _arg12.length; _local14 = 0; while (_local14 < _local13) { _local16 = new ResourceModuleRSLItem(_arg12[_local14]); _arg11.push(_local16); _local14++; }; }; rslListLoader = new RSLListLoader(_arg11); this.showDisplay = _arg1; timer = new Timer(10); timer.addEventListener(TimerEvent.TIMER, timerHandler); timer.start(); if (_arg1){ displayClass = new (_arg2); displayClass.addEventListener(Event.COMPLETE, displayClassCompleteHandler); addChild(DisplayObject(displayClass)); displayClass.backgroundColor = _arg3; displayClass.backgroundAlpha = _arg4; displayClass.backgroundImage = _arg5; displayClass.backgroundSize = _arg6; displayClass.stageWidth = _arg7; displayClass.stageHeight = _arg8; displayClass.initialize(); displayClass.preloader = this; }; if (rslListLoader.getItemCount() > 0){ rslListLoader.load(mx_internal::rslProgressHandler, mx_internal::rslCompleteHandler, mx_internal::rslErrorHandler, mx_internal::rslErrorHandler, mx_internal::rslErrorHandler); } else { rslDone = true; }; } mx_internal function rslProgressHandler(_arg1:ProgressEvent):void{ var _local2:int = rslListLoader.getIndex(); var _local3:RSLItem = rslListLoader.getItem(_local2); var _local4:RSLEvent = new RSLEvent(RSLEvent.RSL_PROGRESS); _local4.bytesLoaded = _arg1.bytesLoaded; _local4.bytesTotal = _arg1.bytesTotal; _local4.rslIndex = _local2; _local4.rslTotal = rslListLoader.getItemCount(); _local4.url = _local3.urlRequest; dispatchEvent(_local4); } public function registerApplication(_arg1:IEventDispatcher):void{ _arg1.addEventListener("validatePropertiesComplete", appProgressHandler); _arg1.addEventListener("validateSizeComplete", appProgressHandler); _arg1.addEventListener("validateDisplayListComplete", appProgressHandler); _arg1.addEventListener(FlexEvent.CREATION_COMPLETE, appCreationCompleteHandler); this.app = _arg1; } mx_internal function rslCompleteHandler(_arg1:Event):void{ var _local2:int = rslListLoader.getIndex(); var _local3:RSLItem = rslListLoader.getItem(_local2); var _local4:RSLEvent = new RSLEvent(RSLEvent.RSL_COMPLETE); _local4.bytesLoaded = _local3.total; _local4.bytesTotal = _local3.total; _local4.rslIndex = _local2; _local4.rslTotal = rslListLoader.getItemCount(); _local4.url = _local3.urlRequest; dispatchEvent(_local4); rslDone = ((_local2 + 1) == _local4.rslTotal); } private function timerHandler(_arg1:TimerEvent):void{ if (!root){ return; }; var _local2:Object = getByteValues(); var _local3:int = _local2.loaded; var _local4:int = _local2.total; dispatchEvent(new ProgressEvent(ProgressEvent.PROGRESS, false, false, _local3, _local4)); if (((rslDone) && ((((((((_local3 >= _local4)) && ((_local4 > 0)))) || ((((_local4 == 0)) && ((_local3 > 0)))))) || ((((((root is MovieClip)) && ((MovieClip(root).totalFrames > 2)))) && ((MovieClip(root).framesLoaded >= 2)))))))){ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.reset(); dispatchEvent(new Event(Event.COMPLETE)); dispatchEvent(new FlexEvent(FlexEvent.INIT_PROGRESS)); }; } private function displayClassCompleteHandler(_arg1:Event):void{ if (displayClass){ displayClass.removeEventListener(Event.COMPLETE, displayClassCompleteHandler); }; if (root){ root.loaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); }; if (app){ app.removeEventListener("validatePropertiesComplete", appProgressHandler); app.removeEventListener("validateSizeComplete", appProgressHandler); app.removeEventListener("validateDisplayListComplete", appProgressHandler); app.removeEventListener(FlexEvent.CREATION_COMPLETE, appCreationCompleteHandler); app = null; }; dispatchEvent(new FlexEvent(FlexEvent.PRELOADER_DONE)); } } }//package mx.preloaders
Section 322
//IResourceBundle (mx.resources.IResourceBundle) package mx.resources { public interface IResourceBundle { function get content():Object; function get locale():String; function get bundleName():String; } }//package mx.resources
Section 323
//IResourceManager (mx.resources.IResourceManager) package mx.resources { import flash.events.*; import flash.system.*; public interface IResourceManager extends IEventDispatcher { function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher; function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean; function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class; function getLocales():Array; function removeResourceBundlesForLocale(_arg1:String):void; function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle; function get localeChain():Array; function getInt(_arg1:String, _arg2:String, _arg3:String=null):int; function update():void; function set localeChain(_arg1:Array):void; function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint; function addResourceBundle(_arg1:IResourceBundle):void; function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array; function getBundleNamesForLocale(_arg1:String):Array; function removeResourceBundle(_arg1:String, _arg2:String):void; function getObject(_arg1:String, _arg2:String, _arg3:String=null); function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String; function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void; function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void; function getPreferredLocaleChain():Array; function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle; function initializeLocaleChain(_arg1:Array):void; function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number; } }//package mx.resources
Section 324
//IResourceModule (mx.resources.IResourceModule) package mx.resources { public interface IResourceModule { function get resourceBundles():Array; } }//package mx.resources
Section 325
//LocaleSorter (mx.resources.LocaleSorter) package mx.resources { import mx.core.*; public class LocaleSorter { mx_internal static const VERSION:String = "3.2.0.3794"; private static function normalizeLocale(_arg1:String):String{ return (_arg1.toLowerCase().replace(/-/g, "_")); } public static function sortLocalesByPreference(_arg1:Array, _arg2:Array, _arg3:String=null, _arg4:Boolean=false):Array{ var result:Array; var hasLocale:Object; var i:int; var j:int; var k:int; var l:int; var locale:String; var plocale:LocaleID; var appLocales = _arg1; var systemPreferences = _arg2; var ultimateFallbackLocale = _arg3; var addAll = _arg4; var promote:Function = function (_arg1:String):void{ if (typeof(hasLocale[_arg1]) != "undefined"){ result.push(appLocales[hasLocale[_arg1]]); delete hasLocale[_arg1]; }; }; result = []; hasLocale = {}; var locales:Array = trimAndNormalize(appLocales); var preferenceLocales:Array = trimAndNormalize(systemPreferences); addUltimateFallbackLocale(preferenceLocales, ultimateFallbackLocale); j = 0; while (j < locales.length) { hasLocale[locales[j]] = j; j = (j + 1); }; i = 0; l = preferenceLocales.length; while (i < l) { plocale = LocaleID.fromString(preferenceLocales[i]); promote(preferenceLocales[i]); promote(plocale.toString()); while (plocale.transformToParent()) { promote(plocale.toString()); }; plocale = LocaleID.fromString(preferenceLocales[i]); j = 0; while (j < l) { locale = preferenceLocales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; j = 0; k = locales.length; while (j < k) { locale = locales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; i = (i + 1); }; if (addAll){ j = 0; k = locales.length; while (j < k) { promote(locales[j]); j = (j + 1); }; }; return (result); } private static function addUltimateFallbackLocale(_arg1:Array, _arg2:String):void{ var _local3:String; if (((!((_arg2 == null))) && (!((_arg2 == ""))))){ _local3 = normalizeLocale(_arg2); if (_arg1.indexOf(_local3) == -1){ _arg1.push(_local3); }; }; } private static function trimAndNormalize(_arg1:Array):Array{ var _local2:Array = []; var _local3:int; while (_local3 < _arg1.length) { _local2.push(normalizeLocale(_arg1[_local3])); _local3++; }; return (_local2); } } }//package mx.resources class LocaleID { private var privateLangs:Boolean;// = false private var script:String;// = "" private var variants:Array; private var privates:Array; private var extensions:Object; private var lang:String;// = "" private var region:String;// = "" private var extended_langs:Array; public static const STATE_PRIMARY_LANGUAGE:int = 0; public static const STATE_REGION:int = 3; public static const STATE_EXTENDED_LANGUAGES:int = 1; public static const STATE_EXTENSIONS:int = 5; public static const STATE_SCRIPT:int = 2; public static const STATE_VARIANTS:int = 4; public static const STATE_PRIVATES:int = 6; private function LocaleID(){ extended_langs = []; variants = []; extensions = {}; privates = []; super(); } public function equals(_arg1:LocaleID):Boolean{ return ((toString() == _arg1.toString())); } public function canonicalize():void{ var _local1:String; for (_local1 in extensions) { if (extensions.hasOwnProperty(_local1)){ if (extensions[_local1].length == 0){ delete extensions[_local1]; } else { extensions[_local1] = extensions[_local1].sort(); }; }; }; extended_langs = extended_langs.sort(); variants = variants.sort(); privates = privates.sort(); if (script == ""){ script = LocaleRegistry.getScriptByLang(lang); }; if ((((script == "")) && (!((region == ""))))){ script = LocaleRegistry.getScriptByLangAndRegion(lang, region); }; if ((((region == "")) && (!((script == ""))))){ region = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); }; } public function toString():String{ var _local2:String; var _local1:Array = [lang]; Array.prototype.push.apply(_local1, extended_langs); if (script != ""){ _local1.push(script); }; if (region != ""){ _local1.push(region); }; Array.prototype.push.apply(_local1, variants); for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1.push(_local2); Array.prototype.push.apply(_local1, extensions[_local2]); }; }; if (privates.length > 0){ _local1.push("x"); Array.prototype.push.apply(_local1, privates); }; return (_local1.join("_")); } public function isSiblingOf(_arg1:LocaleID):Boolean{ return ((((lang == _arg1.lang)) && ((script == _arg1.script)))); } public function transformToParent():Boolean{ var _local2:String; var _local3:Array; var _local4:String; if (privates.length > 0){ privates.splice((privates.length - 1), 1); return (true); }; var _local1:String; for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1 = _local2; }; }; if (_local1){ _local3 = extensions[_local1]; if (_local3.length == 1){ delete extensions[_local1]; return (true); }; _local3.splice((_local3.length - 1), 1); return (true); }; if (variants.length > 0){ variants.splice((variants.length - 1), 1); return (true); }; if (script != ""){ if (LocaleRegistry.getScriptByLang(lang) != ""){ script = ""; return (true); }; if (region == ""){ _local4 = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); if (_local4 != ""){ region = _local4; script = ""; return (true); }; }; }; if (region != ""){ if (!(((script == "")) && ((LocaleRegistry.getScriptByLang(lang) == "")))){ region = ""; return (true); }; }; if (extended_langs.length > 0){ extended_langs.splice((extended_langs.length - 1), 1); return (true); }; return (false); } public static function fromString(_arg1:String):LocaleID{ var _local5:Array; var _local8:String; var _local9:int; var _local10:String; var _local2:LocaleID = new (LocaleID); var _local3:int = STATE_PRIMARY_LANGUAGE; var _local4:Array = _arg1.replace(/-/g, "_").split("_"); var _local6:int; var _local7:int = _local4.length; while (_local6 < _local7) { _local8 = _local4[_local6].toLowerCase(); if (_local3 == STATE_PRIMARY_LANGUAGE){ if (_local8 == "x"){ _local2.privateLangs = true; } else { if (_local8 == "i"){ _local2.lang = (_local2.lang + "i-"); } else { _local2.lang = (_local2.lang + _local8); _local3 = STATE_EXTENDED_LANGUAGES; }; }; } else { _local9 = _local8.length; if (_local9 == 0){ } else { _local10 = _local8.charAt(0).toLowerCase(); if ((((_local3 <= STATE_EXTENDED_LANGUAGES)) && ((_local9 == 3)))){ _local2.extended_langs.push(_local8); if (_local2.extended_langs.length == 3){ _local3 = STATE_SCRIPT; }; } else { if ((((_local3 <= STATE_SCRIPT)) && ((_local9 == 4)))){ _local2.script = _local8; _local3 = STATE_REGION; } else { if ((((_local3 <= STATE_REGION)) && ((((_local9 == 2)) || ((_local9 == 3)))))){ _local2.region = _local8; _local3 = STATE_VARIANTS; } else { if ((((_local3 <= STATE_VARIANTS)) && ((((((((_local10 >= "a")) && ((_local10 <= "z")))) && ((_local9 >= 5)))) || ((((((_local10 >= "0")) && ((_local10 <= "9")))) && ((_local9 >= 4)))))))){ _local2.variants.push(_local8); _local3 = STATE_VARIANTS; } else { if ((((_local3 < STATE_PRIVATES)) && ((_local9 == 1)))){ if (_local8 == "x"){ _local3 = STATE_PRIVATES; _local5 = _local2.privates; } else { _local3 = STATE_EXTENSIONS; _local5 = ((_local2.extensions[_local8]) || ([])); _local2.extensions[_local8] = _local5; }; } else { if (_local3 >= STATE_EXTENSIONS){ _local5.push(_local8); }; }; }; }; }; }; }; }; _local6++; }; _local2.canonicalize(); return (_local2); } } class LocaleRegistry { private static const SCRIPT_ID_BY_LANG:Object = {ab:5, af:1, am:2, ar:3, as:4, ay:1, be:5, bg:5, bn:4, bs:1, ca:1, ch:1, cs:1, cy:1, da:1, de:1, dv:6, dz:7, el:8, en:1, eo:1, es:1, et:1, eu:1, fa:3, fi:1, fj:1, fo:1, fr:1, frr:1, fy:1, ga:1, gl:1, gn:1, gu:9, gv:1, he:10, hi:11, hr:1, ht:1, hu:1, hy:12, id:1, in:1, is:1, it:1, iw:10, ja:13, ka:14, kk:5, kl:1, km:15, kn:16, ko:17, la:1, lb:1, ln:1, lo:18, lt:1, lv:1, mg:1, mh:1, mk:5, ml:19, mo:1, mr:11, ms:1, mt:1, my:20, na:1, nb:1, nd:1, ne:11, nl:1, nn:1, no:1, nr:1, ny:1, om:1, or:21, pa:22, pl:1, ps:3, pt:1, qu:1, rn:1, ro:1, ru:5, rw:1, sg:1, si:23, sk:1, sl:1, sm:1, so:1, sq:1, ss:1, st:1, sv:1, sw:1, ta:24, te:25, th:26, ti:2, tl:1, tn:1, to:1, tr:1, ts:1, uk:5, ur:3, ve:1, vi:1, wo:1, xh:1, yi:10, zu:1, cpe:1, dsb:1, frs:1, gsw:1, hsb:1, kok:11, mai:11, men:1, nds:1, niu:1, nqo:27, nso:1, son:1, tem:1, tkl:1, tmh:1, tpi:1, tvl:1, zbl:28}; private static const SCRIPTS:Array = ["", "latn", "ethi", "arab", "beng", "cyrl", "thaa", "tibt", "grek", "gujr", "hebr", "deva", "armn", "jpan", "geor", "khmr", "knda", "kore", "laoo", "mlym", "mymr", "orya", "guru", "sinh", "taml", "telu", "thai", "nkoo", "blis", "hans", "hant", "mong", "syrc"]; private static const DEFAULT_REGION_BY_LANG_AND_SCRIPT:Object = {bg:{5:"bg"}, ca:{1:"es"}, zh:{30:"tw", 29:"cn"}, cs:{1:"cz"}, da:{1:"dk"}, de:{1:"de"}, el:{8:"gr"}, en:{1:"us"}, es:{1:"es"}, fi:{1:"fi"}, fr:{1:"fr"}, he:{10:"il"}, hu:{1:"hu"}, is:{1:"is"}, it:{1:"it"}, ja:{13:"jp"}, ko:{17:"kr"}, nl:{1:"nl"}, nb:{1:"no"}, pl:{1:"pl"}, pt:{1:"br"}, ro:{1:"ro"}, ru:{5:"ru"}, hr:{1:"hr"}, sk:{1:"sk"}, sq:{1:"al"}, sv:{1:"se"}, th:{26:"th"}, tr:{1:"tr"}, ur:{3:"pk"}, id:{1:"id"}, uk:{5:"ua"}, be:{5:"by"}, sl:{1:"si"}, et:{1:"ee"}, lv:{1:"lv"}, lt:{1:"lt"}, fa:{3:"ir"}, vi:{1:"vn"}, hy:{12:"am"}, az:{1:"az", 5:"az"}, eu:{1:"es"}, mk:{5:"mk"}, af:{1:"za"}, ka:{14:"ge"}, fo:{1:"fo"}, hi:{11:"in"}, ms:{1:"my"}, kk:{5:"kz"}, ky:{5:"kg"}, sw:{1:"ke"}, uz:{1:"uz", 5:"uz"}, tt:{5:"ru"}, pa:{22:"in"}, gu:{9:"in"}, ta:{24:"in"}, te:{25:"in"}, kn:{16:"in"}, mr:{11:"in"}, sa:{11:"in"}, mn:{5:"mn"}, gl:{1:"es"}, kok:{11:"in"}, syr:{32:"sy"}, dv:{6:"mv"}, nn:{1:"no"}, sr:{1:"cs", 5:"cs"}, cy:{1:"gb"}, mi:{1:"nz"}, mt:{1:"mt"}, quz:{1:"bo"}, tn:{1:"za"}, xh:{1:"za"}, zu:{1:"za"}, nso:{1:"za"}, se:{1:"no"}, smj:{1:"no"}, sma:{1:"no"}, sms:{1:"fi"}, smn:{1:"fi"}, bs:{1:"ba"}}; private static const SCRIPT_BY_ID:Object = {latn:1, ethi:2, arab:3, beng:4, cyrl:5, thaa:6, tibt:7, grek:8, gujr:9, hebr:10, deva:11, armn:12, jpan:13, geor:14, khmr:15, knda:16, kore:17, laoo:18, mlym:19, mymr:20, orya:21, guru:22, sinh:23, taml:24, telu:25, thai:26, nkoo:27, blis:28, hans:29, hant:30, mong:31, syrc:32}; private static const SCRIPT_ID_BY_LANG_AND_REGION:Object = {zh:{cn:29, sg:29, tw:30, hk:30, mo:30}, mn:{cn:31, sg:5}, pa:{pk:3, in:22}, ha:{gh:1, ne:1}}; private function LocaleRegistry(){ } public static function getScriptByLangAndRegion(_arg1:String, _arg2:String):String{ var _local3:Object = SCRIPT_ID_BY_LANG_AND_REGION[_arg1]; if (_local3 == null){ return (""); }; var _local4:Object = _local3[_arg2]; if (_local4 == null){ return (""); }; return (SCRIPTS[int(_local4)].toLowerCase()); } public static function getScriptByLang(_arg1:String):String{ var _local2:Object = SCRIPT_ID_BY_LANG[_arg1]; if (_local2 == null){ return (""); }; return (SCRIPTS[int(_local2)].toLowerCase()); } public static function getDefaultRegionForLangAndScript(_arg1:String, _arg2:String):String{ var _local3:Object = DEFAULT_REGION_BY_LANG_AND_SCRIPT[_arg1]; var _local4:Object = SCRIPT_BY_ID[_arg2]; if ((((_local3 == null)) || ((_local4 == null)))){ return (""); }; return (((_local3[int(_local4)]) || (""))); } }
Section 326
//ResourceBundle (mx.resources.ResourceBundle) package mx.resources { import mx.core.*; import flash.system.*; import mx.utils.*; public class ResourceBundle implements IResourceBundle { mx_internal var _locale:String; private var _content:Object; mx_internal var _bundleName:String; mx_internal static const VERSION:String = "3.2.0.3794"; mx_internal static var backupApplicationDomain:ApplicationDomain; mx_internal static var locale:String; public function ResourceBundle(_arg1:String=null, _arg2:String=null){ _content = {}; super(); mx_internal::_locale = _arg1; mx_internal::_bundleName = _arg2; _content = getContent(); } protected function getContent():Object{ return ({}); } public function getString(_arg1:String):String{ return (String(_getObject(_arg1))); } public function get content():Object{ return (_content); } public function getBoolean(_arg1:String, _arg2:Boolean=true):Boolean{ var _local3:String = _getObject(_arg1).toLowerCase(); if (_local3 == "false"){ return (false); }; if (_local3 == "true"){ return (true); }; return (_arg2); } public function getStringArray(_arg1:String):Array{ var _local2:Array = _getObject(_arg1).split(","); var _local3:int = _local2.length; var _local4:int; while (_local4 < _local3) { _local2[_local4] = StringUtil.trim(_local2[_local4]); _local4++; }; return (_local2); } public function getObject(_arg1:String):Object{ return (_getObject(_arg1)); } private function _getObject(_arg1:String):Object{ var _local2:Object = content[_arg1]; if (!_local2){ throw (new Error(((("Key " + _arg1) + " was not found in resource bundle ") + bundleName))); }; return (_local2); } public function get locale():String{ return (mx_internal::_locale); } public function get bundleName():String{ return (mx_internal::_bundleName); } public function getNumber(_arg1:String):Number{ return (Number(_getObject(_arg1))); } private static function getClassByName(_arg1:String, _arg2:ApplicationDomain):Class{ var _local3:Class; if (_arg2.hasDefinition(_arg1)){ _local3 = (_arg2.getDefinition(_arg1) as Class); }; return (_local3); } public static function getResourceBundle(_arg1:String, _arg2:ApplicationDomain=null):ResourceBundle{ var _local3:String; var _local4:Class; var _local5:Object; var _local6:ResourceBundle; if (!_arg2){ _arg2 = ApplicationDomain.currentDomain; }; _local3 = (((mx_internal::locale + "$") + _arg1) + "_properties"); _local4 = getClassByName(_local3, _arg2); if (!_local4){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, _arg2); }; if (!_local4){ _local3 = _arg1; _local4 = getClassByName(_local3, _arg2); }; if (((!(_local4)) && (mx_internal::backupApplicationDomain))){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); if (!_local4){ _local3 = _arg1; _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); }; }; if (_local4){ _local5 = new (_local4); if ((_local5 is ResourceBundle)){ _local6 = ResourceBundle(_local5); return (_local6); }; }; throw (new Error(("Could not find resource bundle " + _arg1))); } } }//package mx.resources
Section 327
//ResourceManager (mx.resources.ResourceManager) package mx.resources { import mx.core.*; public class ResourceManager { mx_internal static const VERSION:String = "3.2.0.3794"; private static var implClassDependency:ResourceManagerImpl; private static var instance:IResourceManager; public static function getInstance():IResourceManager{ if (!instance){ try { instance = IResourceManager(Singleton.getInstance("mx.resources::IResourceManager")); } catch(e:Error) { instance = new ResourceManagerImpl(); }; }; return (instance); } } }//package mx.resources
Section 328
//ResourceManagerImpl (mx.resources.ResourceManagerImpl) package mx.resources { import mx.core.*; import flash.events.*; import mx.events.*; import flash.system.*; import mx.modules.*; import flash.utils.*; import mx.utils.*; public class ResourceManagerImpl extends EventDispatcher implements IResourceManager { private var resourceModules:Object; private var initializedForNonFrameworkApp:Boolean;// = false private var localeMap:Object; private var _localeChain:Array; mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:IResourceManager; public function ResourceManagerImpl(){ localeMap = {}; resourceModules = {}; super(); } public function get localeChain():Array{ return (_localeChain); } public function set localeChain(_arg1:Array):void{ _localeChain = _arg1; update(); } public function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (null); }; var _local5:* = _local4.content[_arg2]; var _local6:Array = String(_local5).split(","); var _local7:int = _local6.length; var _local8:int; while (_local8 < _local7) { _local6[_local8] = StringUtil.trim(_local6[_local8]); _local8++; }; return (_local6); } mx_internal function installCompiledResourceBundle(_arg1:ApplicationDomain, _arg2:String, _arg3:String):void{ var _local4:String; var _local5:String = _arg3; var _local6:int = _arg3.indexOf(":"); if (_local6 != -1){ _local4 = _arg3.substring(0, _local6); _local5 = _arg3.substring((_local6 + 1)); }; if (getResourceBundle(_arg2, _arg3)){ return; }; var _local7 = (((_arg2 + "$") + _local5) + "_properties"); if (_local4 != null){ _local7 = ((_local4 + ".") + _local7); }; var _local8:Class; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; if (!_local8){ _local7 = _arg3; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!_local8){ _local7 = (_arg3 + "_properties"); if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!_local8){ throw (new Error((((("Could not find compiled resource bundle '" + _arg3) + "' for locale '") + _arg2) + "'."))); }; var _local9:ResourceBundle = ResourceBundle(new (_local8)); _local9.mx_internal::_locale = _arg2; _local9.mx_internal::_bundleName = _arg3; addResourceBundle(_local9); } public function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String{ var _local5:IResourceBundle = findBundle(_arg1, _arg2, _arg4); if (!_local5){ return (null); }; var _local6:String = String(_local5.content[_arg2]); if (_arg3){ _local6 = StringUtil.substitute(_local6, _arg3); }; return (_local6); } public function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{ var moduleInfo:IModuleInfo; var resourceEventDispatcher:ResourceEventDispatcher; var timer:Timer; var timerHandler:Function; var url = _arg1; var updateFlag = _arg2; var applicationDomain = _arg3; var securityDomain = _arg4; moduleInfo = ModuleManager.getModule(url); resourceEventDispatcher = new ResourceEventDispatcher(moduleInfo); var readyHandler:Function = function (_arg1:ModuleEvent):void{ var _local2:* = _arg1.module.factory.create(); resourceModules[_arg1.module.url].resourceModule = _local2; if (updateFlag){ update(); }; }; moduleInfo.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true); var errorHandler:Function = function (_arg1:ModuleEvent):void{ var _local3:ResourceEvent; var _local2:String = ("Unable to load resource module from " + url); if (resourceEventDispatcher.willTrigger(ResourceEvent.ERROR)){ _local3 = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local3.bytesLoaded = 0; _local3.bytesTotal = 0; _local3.errorText = _local2; resourceEventDispatcher.dispatchEvent(_local3); } else { throw (new Error(_local2)); }; }; moduleInfo.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true); resourceModules[url] = new ResourceModuleInfo(moduleInfo, readyHandler, errorHandler); timer = new Timer(0); timerHandler = function (_arg1:TimerEvent):void{ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.stop(); moduleInfo.load(applicationDomain, securityDomain); }; timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true); timer.start(); return (resourceEventDispatcher); } public function getLocales():Array{ var _local2:String; var _local1:Array = []; for (_local2 in localeMap) { _local1.push(_local2); }; return (_local1); } public function removeResourceBundlesForLocale(_arg1:String):void{ delete localeMap[_arg1]; } public function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle{ var _local3:Object = localeMap[_arg1]; if (!_local3){ return (null); }; return (_local3[_arg2]); } private function dumpResourceModule(_arg1):void{ var _local2:ResourceBundle; var _local3:String; for each (_local2 in _arg1.resourceBundles) { trace(_local2.locale, _local2.bundleName); for (_local3 in _local2.content) { }; }; } public function addResourceBundle(_arg1:IResourceBundle):void{ var _local2:String = _arg1.locale; var _local3:String = _arg1.bundleName; if (!localeMap[_local2]){ localeMap[_local2] = {}; }; localeMap[_local2][_local3] = _arg1; } public function getObject(_arg1:String, _arg2:String, _arg3:String=null){ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (undefined); }; return (_local4.content[_arg2]); } public function getInt(_arg1:String, _arg2:String, _arg3:String=null):int{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (0); }; var _local5:* = _local4.content[_arg2]; return (int(_local5)); } private function findBundle(_arg1:String, _arg2:String, _arg3:String):IResourceBundle{ supportNonFrameworkApps(); return (((_arg3)!=null) ? getResourceBundle(_arg3, _arg1) : findResourceBundleWithResource(_arg1, _arg2)); } private function supportNonFrameworkApps():void{ if (initializedForNonFrameworkApp){ return; }; initializedForNonFrameworkApp = true; if (getLocales().length > 0){ return; }; var _local1:ApplicationDomain = ApplicationDomain.currentDomain; if (!_local1.hasDefinition("_CompiledResourceBundleInfo")){ return; }; var _local2:Class = Class(_local1.getDefinition("_CompiledResourceBundleInfo")); var _local3:Array = _local2.compiledLocales; var _local4:Array = _local2.compiledResourceBundleNames; installCompiledResourceBundles(_local1, _local3, _local4); localeChain = _local3; } public function getBundleNamesForLocale(_arg1:String):Array{ var _local3:String; var _local2:Array = []; for (_local3 in localeMap[_arg1]) { _local2.push(_local3); }; return (_local2); } public function getPreferredLocaleChain():Array{ return (LocaleSorter.sortLocalesByPreference(getLocales(), getSystemPreferredLocales(), null, true)); } public function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (NaN); }; var _local5:* = _local4.content[_arg2]; return (Number(_local5)); } public function update():void{ dispatchEvent(new Event(Event.CHANGE)); } public function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (null); }; var _local5:* = _local4.content[_arg2]; return ((_local5 as Class)); } public function removeResourceBundle(_arg1:String, _arg2:String):void{ delete localeMap[_arg1][_arg2]; if (getBundleNamesForLocale(_arg1).length == 0){ delete localeMap[_arg1]; }; } public function initializeLocaleChain(_arg1:Array):void{ localeChain = LocaleSorter.sortLocalesByPreference(_arg1, getSystemPreferredLocales(), null, true); } public function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle{ var _local5:String; var _local6:Object; var _local7:ResourceBundle; if (!_localeChain){ return (null); }; var _local3:int = _localeChain.length; var _local4:int; while (_local4 < _local3) { _local5 = localeChain[_local4]; _local6 = localeMap[_local5]; if (!_local6){ } else { _local7 = _local6[_arg1]; if (!_local7){ } else { if ((_arg2 in _local7.content)){ return (_local7); }; }; }; _local4++; }; return (null); } public function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (0); }; var _local5:* = _local4.content[_arg2]; return (uint(_local5)); } private function getSystemPreferredLocales():Array{ var _local1:Array; if (Capabilities["languages"]){ _local1 = Capabilities["languages"]; } else { _local1 = [Capabilities.language]; }; return (_local1); } public function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void{ var _local7:String; var _local8:int; var _local9:String; var _local4:int = (_arg2) ? _arg2.length : 0; var _local5:int = (_arg3) ? _arg3.length : 0; var _local6:int; while (_local6 < _local4) { _local7 = _arg2[_local6]; _local8 = 0; while (_local8 < _local5) { _local9 = _arg3[_local8]; mx_internal::installCompiledResourceBundle(_arg1, _local7, _local9); _local8++; }; _local6++; }; } public function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (false); }; var _local5:* = _local4.content[_arg2]; return ((String(_local5).toLowerCase() == "true")); } public function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void{ throw (new Error("unloadResourceModule() is not yet implemented.")); } public static function getInstance():IResourceManager{ if (!instance){ instance = new (ResourceManagerImpl); }; return (instance); } } }//package mx.resources import flash.events.*; import mx.events.*; import mx.modules.*; class ResourceModuleInfo { public var resourceModule:IResourceModule; public var errorHandler:Function; public var readyHandler:Function; public var moduleInfo:IModuleInfo; private function ResourceModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){ this.moduleInfo = _arg1; this.readyHandler = _arg2; this.errorHandler = _arg3; } } class ResourceEventDispatcher extends EventDispatcher { private function ResourceEventDispatcher(_arg1:IModuleInfo){ _arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true); } private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.COMPLETE); dispatchEvent(_local2); } private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; _local2.errorText = _arg1.errorText; dispatchEvent(_local2); } }
Section 329
//IResponder (mx.rpc.IResponder) package mx.rpc { public interface IResponder { function fault(_arg1:Object):void; function result(_arg1:Object):void; } }//package mx.rpc
Section 330
//AccordionHeaderSkin (mx.skins.halo.AccordionHeaderSkin) package mx.skins.halo { import flash.display.*; import mx.core.*; import mx.styles.*; import mx.utils.*; import mx.skins.*; public class AccordionHeaderSkin extends Border { private var _borderMetrics:EdgeMetrics; mx_internal static const VERSION:String = "3.2.0.3794"; private static var cache:Object = {}; public function AccordionHeaderSkin(){ _borderMetrics = new EdgeMetrics(1, 1, 1, 1); super(); } override public function get measuredWidth():Number{ return (10); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local14:Array; var _local15:Array; var _local16:Array; var _local17:Array; var _local18:Array; super.updateDisplayList(_arg1, _arg2); var _local3:uint = getStyle("borderColor"); var _local4:Array = getStyle("fillAlphas"); var _local5:Array = getStyle("fillColors"); StyleManager.getColorNames(_local5); var _local6:Array = getStyle("highlightAlphas"); var _local7:Array = getStyle("selectedFillColors"); var _local8:uint = getStyle("themeColor"); var _local9:Array = []; _local9[0] = ColorUtil.adjustBrightness2(_local5[0], -8); _local9[1] = ColorUtil.adjustBrightness2(_local5[1], -10); var _local10:Number = ColorUtil.adjustBrightness2(_local3, -15); var _local11:Number = ColorUtil.adjustBrightness2(_local5[0], -4); var _local12:Number = ColorUtil.adjustBrightness2(_local5[1], -6); if (!_local7){ _local7 = []; _local7[0] = ColorUtil.adjustBrightness2(_local5[0], 5); _local7[1] = ColorUtil.adjustBrightness2(_local5[1], 15); }; var _local13:Object = calcDerivedStyles(_local8, _local3, _local9[0], _local9[1], _local5[0], _local5[1]); graphics.clear(); switch (name){ case "upSkin": case "disabledSkin": case "selectedDisabledSkin": _local14 = [_local9[0], _local9[1]]; _local15 = [_local4[0], _local4[1]]; drawRoundRect(0, 0, _arg1, _arg2, 0, [_local3, _local10], 1, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, _local14, _local15, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), 0, [0xFFFFFF, 0xFFFFFF], _local6, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); drawRoundRect(1, (_arg2 - 2), (_arg1 - 2), 1, 0, _local3, 0.1); break; case "overSkin": if (_local5.length > 2){ _local16 = [ColorUtil.adjustBrightness2(_local5[2], -4), ColorUtil.adjustBrightness2(_local5[3], -6)]; } else { _local16 = [_local11, _local12]; }; if (_local4.length > 2){ _local17 = [_local4[2], _local4[3]]; } else { _local17 = [_local4[0], _local4[1]]; }; drawRoundRect(0, 0, _arg1, _arg2, 0, [_local8, _local13.themeColDrk1], 1, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, _local16, _local17, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), 0, [0xFFFFFF, 0xFFFFFF], _local6, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); drawRoundRect(1, (_arg2 - 2), (_arg1 - 2), 1, 0, _local3, 0.1); break; case "downSkin": drawRoundRect(0, 0, _arg1, _arg2, 0, [_local8, _local13.themeColDrk1], 1, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, [_local13.fillColorPress1, _local13.fillColorPress2], 1, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), 0, [0xFFFFFF, 0xFFFFFF], _local6, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); break; case "selectedUpSkin": case "selectedOverSkin": case "selectedDownSkin": _local18 = [_local4[0], _local4[1]]; drawRoundRect(0, 0, _arg1, _arg2, 0, [_local3, _local10], 1, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, [_local7[0], _local7[1]], _local18, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), 0, [0xFFFFFF, 0xFFFFFF], _local6, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); drawRoundRect(1, (_arg2 - 2), (_arg1 - 2), 1, 0, _local3, 0.05); break; }; } override public function get measuredHeight():Number{ return (22); } override public function get borderMetrics():EdgeMetrics{ return (((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) ? _borderMetrics : super.borderMetrics); } private static function calcDerivedStyles(_arg1:uint, _arg2:uint, _arg3:uint, _arg4:uint, _arg5:uint, _arg6:uint):Object{ var _local8:Object; var _local7:String = HaloColors.getCacheKey(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6); if (!cache[_local7]){ _local8 = (cache[_local7] = {}); HaloColors.addHaloColors(_local8, _arg1, _arg5, _arg6); }; return (cache[_local7]); } } }//package mx.skins.halo
Section 331
//ApplicationBackground (mx.skins.halo.ApplicationBackground) package mx.skins.halo { import flash.display.*; import mx.utils.*; import mx.skins.*; public class ApplicationBackground extends ProgrammaticSkin { mx_internal static const VERSION:String = "3.2.0.3794"; override public function get measuredWidth():Number{ return (8); } override public function get measuredHeight():Number{ return (8); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local6:uint; super.updateDisplayList(_arg1, _arg2); var _local3:Graphics = graphics; var _local4:Array = getStyle("backgroundGradientColors"); var _local5:Array = getStyle("backgroundGradientAlphas"); if (!_local4){ _local6 = getStyle("backgroundColor"); if (isNaN(_local6)){ _local6 = 0xFFFFFF; }; _local4 = []; _local4[0] = ColorUtil.adjustBrightness(_local6, 15); _local4[1] = ColorUtil.adjustBrightness(_local6, -25); }; if (!_local5){ _local5 = [1, 1]; }; _local3.clear(); drawRoundRect(0, 0, _arg1, _arg2, 0, _local4, _local5, verticalGradientMatrix(0, 0, _arg1, _arg2)); } } }//package mx.skins.halo
Section 332
//BusyCursor (mx.skins.halo.BusyCursor) package mx.skins.halo { import flash.display.*; import mx.core.*; import flash.events.*; import mx.styles.*; public class BusyCursor extends FlexSprite { private var hourHand:Shape; private var minuteHand:Shape; mx_internal static const VERSION:String = "3.2.0.3794"; public function BusyCursor(){ var _local6:Graphics; super(); var _local1:CSSStyleDeclaration = StyleManager.getStyleDeclaration("CursorManager"); var _local2:Class = _local1.getStyle("busyCursorBackground"); var _local3:DisplayObject = new (_local2); if ((_local3 is InteractiveObject)){ InteractiveObject(_local3).mouseEnabled = false; }; addChild(_local3); var _local4:Number = -0.5; var _local5:Number = -0.5; minuteHand = new FlexShape(); minuteHand.name = "minuteHand"; _local6 = minuteHand.graphics; _local6.beginFill(0); _local6.moveTo(_local4, _local5); _local6.lineTo((1 + _local4), (0 + _local5)); _local6.lineTo((1 + _local4), (5 + _local5)); _local6.lineTo((0 + _local4), (5 + _local5)); _local6.lineTo((0 + _local4), (0 + _local5)); _local6.endFill(); addChild(minuteHand); hourHand = new FlexShape(); hourHand.name = "hourHand"; _local6 = hourHand.graphics; _local6.beginFill(0); _local6.moveTo(_local4, _local5); _local6.lineTo((4 + _local4), (0 + _local5)); _local6.lineTo((4 + _local4), (1 + _local5)); _local6.lineTo((0 + _local4), (1 + _local5)); _local6.lineTo((0 + _local4), (0 + _local5)); _local6.endFill(); addChild(hourHand); addEventListener(Event.ADDED, handleAdded); addEventListener(Event.REMOVED, handleRemoved); } private function enterFrameHandler(_arg1:Event):void{ minuteHand.rotation = (minuteHand.rotation + 12); hourHand.rotation = (hourHand.rotation + 1); } private function handleAdded(_arg1:Event):void{ addEventListener(Event.ENTER_FRAME, enterFrameHandler); } private function handleRemoved(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, enterFrameHandler); } } }//package mx.skins.halo
Section 333
//ButtonSkin (mx.skins.halo.ButtonSkin) package mx.skins.halo { import flash.display.*; import mx.core.*; import mx.styles.*; import mx.utils.*; import mx.skins.*; public class ButtonSkin extends Border { mx_internal static const VERSION:String = "3.2.0.3794"; private static var cache:Object = {}; override public function get measuredWidth():Number{ return (UIComponent.DEFAULT_MEASURED_MIN_WIDTH); } override public function get measuredHeight():Number{ return (UIComponent.DEFAULT_MEASURED_MIN_HEIGHT); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local16:Number; var _local17:Array; var _local18:Array; var _local19:Array; var _local20:Array; var _local21:Array; var _local22:Array; super.updateDisplayList(_arg1, _arg2); var _local3:uint = getStyle("borderColor"); var _local4:Number = getStyle("cornerRadius"); var _local5:Array = getStyle("fillAlphas"); var _local6:Array = getStyle("fillColors"); StyleManager.getColorNames(_local6); var _local7:Array = getStyle("highlightAlphas"); var _local8:uint = getStyle("themeColor"); var _local9:Object = calcDerivedStyles(_local8, _local6[0], _local6[1]); var _local10:Number = ColorUtil.adjustBrightness2(_local3, -50); var _local11:Number = ColorUtil.adjustBrightness2(_local8, -25); var _local12:Boolean; if ((parent is IButton)){ _local12 = IButton(parent).emphasized; }; var _local13:Number = Math.max(0, _local4); var _local14:Number = Math.max(0, (_local4 - 1)); var _local15:Number = Math.max(0, (_local4 - 2)); graphics.clear(); switch (name){ case "selectedUpSkin": case "selectedOverSkin": drawRoundRect(0, 0, _arg1, _arg2, _local13, [_local8, _local11], 1, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), _local14, [_local6[1], _local6[1]], 1, verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2))); break; case "upSkin": _local17 = [_local6[0], _local6[1]]; _local18 = [_local5[0], _local5[1]]; if (_local12){ drawRoundRect(0, 0, _arg1, _arg2, _local13, [_local8, _local11], 1, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:2, y:2, w:(_arg1 - 4), h:(_arg2 - 4), r:(_local4 - 2)}); drawRoundRect(2, 2, (_arg1 - 4), (_arg2 - 4), _local15, _local17, _local18, verticalGradientMatrix(2, 2, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(2, 2, (_arg1 - 4), ((_arg2 - 4) / 2), {tl:_local15, tr:_local15, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); } else { drawRoundRect(0, 0, _arg1, _arg2, _local13, [_local3, _local10], 1, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:(_local4 - 1)}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), _local14, _local17, _local18, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local14, tr:_local14, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); }; break; case "overSkin": if (_local6.length > 2){ _local19 = [_local6[2], _local6[3]]; } else { _local19 = [_local6[0], _local6[1]]; }; if (_local5.length > 2){ _local20 = [_local5[2], _local5[3]]; } else { _local20 = [_local5[0], _local5[1]]; }; drawRoundRect(0, 0, _arg1, _arg2, _local13, [_local8, _local11], 1, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:(_local4 - 1)}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), _local14, _local19, _local20, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2), {tl:_local14, tr:_local14, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); break; case "downSkin": case "selectedDownSkin": drawRoundRect(0, 0, _arg1, _arg2, _local13, [_local8, _local11], 1, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), _local14, [_local9.fillColorPress1, _local9.fillColorPress2], 1, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(2, 2, (_arg1 - 4), ((_arg2 - 4) / 2), {tl:_local15, tr:_local15, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local7, verticalGradientMatrix(1, 1, (_arg1 - 2), ((_arg2 - 2) / 2))); break; case "disabledSkin": case "selectedDisabledSkin": _local21 = [_local6[0], _local6[1]]; _local22 = [Math.max(0, (_local5[0] - 0.15)), Math.max(0, (_local5[1] - 0.15))]; drawRoundRect(0, 0, _arg1, _arg2, _local13, [_local3, _local10], 0.5, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:(_local4 - 1)}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), _local14, _local21, _local22, verticalGradientMatrix(1, 1, (_arg1 - 2), (_arg2 - 2))); break; }; } private static function calcDerivedStyles(_arg1:uint, _arg2:uint, _arg3:uint):Object{ var _local5:Object; var _local4:String = HaloColors.getCacheKey(_arg1, _arg2, _arg3); if (!cache[_local4]){ _local5 = (cache[_local4] = {}); HaloColors.addHaloColors(_local5, _arg1, _arg2, _arg3); }; return (cache[_local4]); } } }//package mx.skins.halo
Section 334
//DefaultDragImage (mx.skins.halo.DefaultDragImage) package mx.skins.halo { import flash.display.*; import mx.core.*; public class DefaultDragImage extends SpriteAsset implements IFlexDisplayObject { mx_internal static const VERSION:String = "3.2.0.3794"; public function DefaultDragImage(){ draw(10, 10); super(); } override public function get measuredWidth():Number{ return (10); } override public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } override public function get measuredHeight():Number{ return (10); } override public function setActualSize(_arg1:Number, _arg2:Number):void{ draw(_arg1, _arg2); } private function draw(_arg1:Number, _arg2:Number):void{ var _local3:Graphics = graphics; _local3.clear(); _local3.beginFill(0xEEEEEE); _local3.lineStyle(1, 8433818); _local3.drawRect(0, 0, _arg1, _arg2); _local3.endFill(); } } }//package mx.skins.halo
Section 335
//HaloBorder (mx.skins.halo.HaloBorder) package mx.skins.halo { import flash.display.*; import mx.core.*; import mx.styles.*; import mx.graphics.*; import mx.utils.*; import mx.skins.*; public class HaloBorder extends RectangularBorder { mx_internal var radiusObj:Object; mx_internal var backgroundHole:Object; mx_internal var radius:Number; mx_internal var bRoundedCorners:Boolean; mx_internal var backgroundColor:Object; private var dropShadow:RectangularDropShadow; protected var _borderMetrics:EdgeMetrics; mx_internal var backgroundAlphaName:String; mx_internal static const VERSION:String = "3.2.0.3794"; private static var BORDER_WIDTHS:Object = {none:0, solid:1, inset:2, outset:2, alert:3, dropdown:2, menuBorder:1, comboNonEdit:2}; public function HaloBorder(){ BORDER_WIDTHS["default"] = 3; } override public function styleChanged(_arg1:String):void{ if ((((((((((_arg1 == null)) || ((_arg1 == "styleName")))) || ((_arg1 == "borderStyle")))) || ((_arg1 == "borderThickness")))) || ((_arg1 == "borderSides")))){ _borderMetrics = null; }; invalidateDisplayList(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ if (((isNaN(_arg1)) || (isNaN(_arg2)))){ return; }; super.updateDisplayList(_arg1, _arg2); backgroundColor = getBackgroundColor(); bRoundedCorners = false; backgroundAlphaName = "backgroundAlpha"; backgroundHole = null; radius = 0; radiusObj = null; drawBorder(_arg1, _arg2); drawBackground(_arg1, _arg2); } mx_internal function drawBorder(_arg1:Number, _arg2:Number):void{ var _local5:Number; var _local6:uint; var _local7:uint; var _local8:String; var _local9:Number; var _local10:uint; var _local11:Boolean; var _local12:uint; var _local13:Array; var _local14:Array; var _local15:uint; var _local16:uint; var _local17:uint; var _local18:uint; var _local19:Boolean; var _local20:Object; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Object; var _local27:Number; var _local28:Number; var _local29:IContainer; var _local30:EdgeMetrics; var _local31:Boolean; var _local32:Number; var _local33:Array; var _local34:uint; var _local35:Boolean; var _local36:Number; var _local3:String = getStyle("borderStyle"); var _local4:Array = getStyle("highlightAlphas"); var _local21:Boolean; var _local26:Graphics = graphics; _local26.clear(); if (_local3){ switch (_local3){ case "none": break; case "inset": _local7 = getStyle("borderColor"); _local22 = ColorUtil.adjustBrightness2(_local7, -40); _local23 = ColorUtil.adjustBrightness2(_local7, 25); _local24 = ColorUtil.adjustBrightness2(_local7, 40); _local25 = backgroundColor; if ((((_local25 === null)) || ((_local25 === "")))){ _local25 = _local7; }; draw3dBorder(_local23, _local22, _local24, Number(_local25), Number(_local25), Number(_local25)); break; case "outset": _local7 = getStyle("borderColor"); _local22 = ColorUtil.adjustBrightness2(_local7, -40); _local23 = ColorUtil.adjustBrightness2(_local7, -25); _local24 = ColorUtil.adjustBrightness2(_local7, 40); _local25 = backgroundColor; if ((((_local25 === null)) || ((_local25 === "")))){ _local25 = _local7; }; draw3dBorder(_local23, _local24, _local22, Number(_local25), Number(_local25), Number(_local25)); break; case "alert": case "default": if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local27 = getStyle("backgroundAlpha"); _local5 = getStyle("borderAlpha"); backgroundAlphaName = "borderAlpha"; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local28 = (bRoundedCorners) ? radius : 0; drawDropShadow(0, 0, _arg1, _arg2, radius, radius, _local28, _local28); if (!bRoundedCorners){ radiusObj = {}; }; _local29 = (parent as IContainer); if (_local29){ _local30 = _local29.viewMetrics; backgroundHole = {x:_local30.left, y:_local30.top, w:Math.max(0, ((_arg1 - _local30.left) - _local30.right)), h:Math.max(0, ((_arg2 - _local30.top) - _local30.bottom)), r:0}; if ((((backgroundHole.w > 0)) && ((backgroundHole.h > 0)))){ if (_local27 != _local5){ drawDropShadow(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h, 0, 0, 0, 0); }; _local26.beginFill(Number(backgroundColor), _local27); _local26.drawRect(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h); _local26.endFill(); }; }; backgroundColor = getStyle("borderColor"); }; break; case "dropdown": _local12 = getStyle("dropdownBorderColor"); drawDropShadow(0, 0, _arg1, _arg2, 4, 0, 0, 4); drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, 5068126, 1); drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, [0xFFFFFF, 0xFFFFFF], [0.7, 0], verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1); drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3))); if (!isNaN(_local12)){ drawRoundRect(0, 0, (_arg1 + 1), _arg2, {tl:4, tr:0, br:0, bl:4}, _local12, 0.5); drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1); drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3))); }; backgroundColor = null; break; case "menuBorder": _local7 = getStyle("borderColor"); drawRoundRect(0, 0, _arg1, _arg2, 0, _local7, 1); drawDropShadow(1, 1, (_arg1 - 2), (_arg2 - 2), 0, 0, 0, 0); break; case "comboNonEdit": break; case "controlBar": if ((((_arg1 == 0)) || ((_arg2 == 0)))){ backgroundColor = null; break; }; _local14 = getStyle("footerColors"); _local31 = !((_local14 == null)); _local32 = getStyle("borderAlpha"); if (_local31){ _local26.lineStyle(0, ((_local14.length > 0)) ? _local14[1] : _local14[0], _local32); _local26.moveTo(0, 0); _local26.lineTo(_arg1, 0); _local26.lineStyle(0, 0, 0); if (((((parent) && (parent.parent))) && ((parent.parent is IStyleClient)))){ radius = IStyleClient(parent.parent).getStyle("cornerRadius"); _local32 = IStyleClient(parent.parent).getStyle("borderAlpha"); }; if (isNaN(radius)){ radius = 0; }; if (IStyleClient(parent.parent).getStyle("roundedBottomCorners").toString().toLowerCase() != "true"){ radius = 0; }; drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2)); if ((((_local14.length > 1)) && (!((_local14[0] == _local14[1]))))){ drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 2, (_arg1 - 2), (_arg2 - 3), {tl:0, tr:0, bl:(radius - 1), br:(radius - 1)}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2)); }; }; backgroundColor = null; break; case "applicationControlBar": _local13 = getStyle("fillColors"); _local5 = getStyle("backgroundAlpha"); _local4 = getStyle("highlightAlphas"); _local33 = getStyle("fillAlphas"); _local11 = getStyle("docked"); _local34 = uint(backgroundColor); radius = getStyle("cornerRadius"); if (!radius){ radius = 0; }; drawDropShadow(0, 1, _arg1, (_arg2 - 1), radius, radius, radius, radius); if (((!((backgroundColor === null))) && (StyleManager.isValidStyleValue(backgroundColor)))){ drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local34, _local5, verticalGradientMatrix(0, 0, _arg1, _arg2)); }; drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local13, _local33, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(0, 1, _arg1, ((_arg2 / 2) - 1), {tl:radius, tr:radius, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, ((_arg2 / 2) - 1))); drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, 0.3, null, GradientType.LINEAR, null, {x:0, y:2, w:_arg1, h:(_arg2 - 2), r:{tl:radius, tr:radius, bl:0, br:0}}); backgroundColor = null; break; default: _local7 = getStyle("borderColor"); _local9 = getStyle("borderThickness"); _local8 = getStyle("borderSides"); _local35 = true; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local36 = Math.max((radius - _local9), 0); _local20 = {x:_local9, y:_local9, w:(_arg1 - (_local9 * 2)), h:(_arg2 - (_local9 * 2)), r:_local36}; if (!bRoundedCorners){ radiusObj = {tl:radius, tr:radius, bl:0, br:0}; _local20.r = {tl:_local36, tr:_local36, bl:0, br:0}; }; if (_local8 != "left top right bottom"){ _local20.r = {tl:_local36, tr:_local36, bl:(bRoundedCorners) ? _local36 : 0, br:(bRoundedCorners) ? _local36 : 0}; radiusObj = {tl:radius, tr:radius, bl:(bRoundedCorners) ? radius : 0, br:(bRoundedCorners) ? radius : 0}; _local8 = _local8.toLowerCase(); if (_local8.indexOf("left") == -1){ _local20.x = 0; _local20.w = (_local20.w + _local9); _local20.r.tl = 0; _local20.r.bl = 0; radiusObj.tl = 0; radiusObj.bl = 0; _local35 = false; }; if (_local8.indexOf("top") == -1){ _local20.y = 0; _local20.h = (_local20.h + _local9); _local20.r.tl = 0; _local20.r.tr = 0; radiusObj.tl = 0; radiusObj.tr = 0; _local35 = false; }; if (_local8.indexOf("right") == -1){ _local20.w = (_local20.w + _local9); _local20.r.tr = 0; _local20.r.br = 0; radiusObj.tr = 0; radiusObj.br = 0; _local35 = false; }; if (_local8.indexOf("bottom") == -1){ _local20.h = (_local20.h + _local9); _local20.r.bl = 0; _local20.r.br = 0; radiusObj.bl = 0; radiusObj.br = 0; _local35 = false; }; }; if ((((radius == 0)) && (_local35))){ drawDropShadow(0, 0, _arg1, _arg2, 0, 0, 0, 0); _local26.beginFill(_local7); _local26.drawRect(0, 0, _arg1, _arg2); _local26.drawRect(_local9, _local9, (_arg1 - (2 * _local9)), (_arg2 - (2 * _local9))); _local26.endFill(); } else { if (radiusObj){ drawDropShadow(0, 0, _arg1, _arg2, radiusObj.tl, radiusObj.tr, radiusObj.br, radiusObj.bl); drawRoundRect(0, 0, _arg1, _arg2, radiusObj, _local7, 1, null, null, null, _local20); radiusObj.tl = Math.max((radius - _local9), 0); radiusObj.tr = Math.max((radius - _local9), 0); radiusObj.bl = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0; radiusObj.br = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0; } else { drawDropShadow(0, 0, _arg1, _arg2, radius, radius, radius, radius); drawRoundRect(0, 0, _arg1, _arg2, radius, _local7, 1, null, null, null, _local20); radius = Math.max((getStyle("cornerRadius") - _local9), 0); }; }; }; }; } mx_internal function drawBackground(_arg1:Number, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local6:EdgeMetrics; var _local7:Graphics; var _local8:Number; var _local9:Number; var _local10:Array; var _local11:Number; if (((((((!((backgroundColor === null))) && (!((backgroundColor === ""))))) || (getStyle("mouseShield")))) || (getStyle("mouseShieldChildren")))){ _local4 = Number(backgroundColor); _local5 = 1; _local6 = getBackgroundColorMetrics(); _local7 = graphics; if (((((isNaN(_local4)) || ((backgroundColor === "")))) || ((backgroundColor === null)))){ _local5 = 0; _local4 = 0xFFFFFF; } else { _local5 = getStyle(backgroundAlphaName); }; if (((!((radius == 0))) || (backgroundHole))){ _local8 = _local6.bottom; if (radiusObj){ _local9 = (bRoundedCorners) ? radius : 0; radiusObj = {tl:radius, tr:radius, bl:_local9, br:_local9}; drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radiusObj, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole); } else { drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radius, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole); }; } else { _local7.beginFill(_local4, _local5); _local7.drawRect(_local6.left, _local6.top, ((_arg1 - _local6.right) - _local6.left), ((_arg2 - _local6.bottom) - _local6.top)); _local7.endFill(); }; }; var _local3:String = getStyle("borderStyle"); if ((((((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) && ((((_local3 == "alert")) || ((_local3 == "default")))))) && ((getStyle("headerColors") == null)))){ _local10 = getStyle("highlightAlphas"); _local11 = (_local10) ? _local10[0] : 0.3; drawRoundRect(0, 0, _arg1, _arg2, {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, _local11, null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:radius, tr:radius, bl:0, br:0}}); }; } mx_internal function drawDropShadow(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number):void{ var _local11:Number; var _local12:Boolean; if ((((((((getStyle("dropShadowEnabled") == false)) || ((getStyle("dropShadowEnabled") == "false")))) || ((_arg3 == 0)))) || ((_arg4 == 0)))){ return; }; var _local9:Number = getStyle("shadowDistance"); var _local10:String = getStyle("shadowDirection"); if (getStyle("borderStyle") == "applicationControlBar"){ _local12 = getStyle("docked"); _local11 = (_local12) ? 90 : getDropShadowAngle(_local9, _local10); _local9 = Math.abs(_local9); } else { _local11 = getDropShadowAngle(_local9, _local10); _local9 = (Math.abs(_local9) + 2); }; if (!dropShadow){ dropShadow = new RectangularDropShadow(); }; dropShadow.distance = _local9; dropShadow.angle = _local11; dropShadow.color = getStyle("dropShadowColor"); dropShadow.alpha = 0.4; dropShadow.tlRadius = _arg5; dropShadow.trRadius = _arg6; dropShadow.blRadius = _arg8; dropShadow.brRadius = _arg7; dropShadow.drawShadow(graphics, _arg1, _arg2, _arg3, _arg4); } mx_internal function getBackgroundColor():Object{ var _local2:Object; var _local1:IUIComponent = (parent as IUIComponent); if (((_local1) && (!(_local1.enabled)))){ _local2 = getStyle("backgroundDisabledColor"); if (((!((_local2 === null))) && (StyleManager.isValidStyleValue(_local2)))){ return (_local2); }; }; return (getStyle("backgroundColor")); } mx_internal function draw3dBorder(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ var _local7:Number = width; var _local8:Number = height; drawDropShadow(0, 0, width, height, 0, 0, 0, 0); var _local9:Graphics = graphics; _local9.beginFill(_arg1); _local9.drawRect(0, 0, _local7, _local8); _local9.drawRect(1, 0, (_local7 - 2), _local8); _local9.endFill(); _local9.beginFill(_arg2); _local9.drawRect(1, 0, (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg3); _local9.drawRect(1, (_local8 - 1), (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg4); _local9.drawRect(1, 1, (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg5); _local9.drawRect(1, (_local8 - 2), (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg6); _local9.drawRect(1, 2, (_local7 - 2), (_local8 - 4)); _local9.drawRect(2, 2, (_local7 - 4), (_local8 - 4)); _local9.endFill(); } mx_internal function getBackgroundColorMetrics():EdgeMetrics{ return (borderMetrics); } mx_internal function getDropShadowAngle(_arg1:Number, _arg2:String):Number{ if (_arg2 == "left"){ return (((_arg1 >= 0)) ? 135 : 225); //unresolved jump }; if (_arg2 == "right"){ return (((_arg1 >= 0)) ? 45 : 315); //unresolved jump }; return (((_arg1 >= 0)) ? 90 : 270); } override public function get borderMetrics():EdgeMetrics{ var _local1:Number; var _local3:String; if (_borderMetrics){ return (_borderMetrics); }; var _local2:String = getStyle("borderStyle"); if ((((_local2 == "default")) || ((_local2 == "alert")))){ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _borderMetrics = new EdgeMetrics(0, 0, 0, 0); } else { return (EdgeMetrics.EMPTY); }; } else { if ((((_local2 == "controlBar")) || ((_local2 == "applicationControlBar")))){ _borderMetrics = new EdgeMetrics(1, 1, 1, 1); } else { if (_local2 == "solid"){ _local1 = getStyle("borderThickness"); if (isNaN(_local1)){ _local1 = 0; }; _borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1); _local3 = getStyle("borderSides"); if (_local3 != "left top right bottom"){ if (_local3.indexOf("left") == -1){ _borderMetrics.left = 0; }; if (_local3.indexOf("top") == -1){ _borderMetrics.top = 0; }; if (_local3.indexOf("right") == -1){ _borderMetrics.right = 0; }; if (_local3.indexOf("bottom") == -1){ _borderMetrics.bottom = 0; }; }; } else { _local1 = BORDER_WIDTHS[_local2]; if (isNaN(_local1)){ _local1 = 0; }; _borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1); }; }; }; return (_borderMetrics); } } }//package mx.skins.halo
Section 336
//HaloColors (mx.skins.halo.HaloColors) package mx.skins.halo { import mx.utils.*; public class HaloColors { mx_internal static const VERSION:String = "3.2.0.3794"; private static var cache:Object = {}; public static function getCacheKey(... _args):String{ return (_args.join(",")); } public static function addHaloColors(_arg1:Object, _arg2:uint, _arg3:uint, _arg4:uint):void{ var _local5:String = getCacheKey(_arg2, _arg3, _arg4); var _local6:Object = cache[_local5]; if (!_local6){ _local6 = (cache[_local5] = {}); _local6.themeColLgt = ColorUtil.adjustBrightness(_arg2, 100); _local6.themeColDrk1 = ColorUtil.adjustBrightness(_arg2, -75); _local6.themeColDrk2 = ColorUtil.adjustBrightness(_arg2, -25); _local6.fillColorBright1 = ColorUtil.adjustBrightness2(_arg3, 15); _local6.fillColorBright2 = ColorUtil.adjustBrightness2(_arg4, 15); _local6.fillColorPress1 = ColorUtil.adjustBrightness2(_arg2, 85); _local6.fillColorPress2 = ColorUtil.adjustBrightness2(_arg2, 60); _local6.bevelHighlight1 = ColorUtil.adjustBrightness2(_arg3, 40); _local6.bevelHighlight2 = ColorUtil.adjustBrightness2(_arg4, 40); }; _arg1.themeColLgt = _local6.themeColLgt; _arg1.themeColDrk1 = _local6.themeColDrk1; _arg1.themeColDrk2 = _local6.themeColDrk2; _arg1.fillColorBright1 = _local6.fillColorBright1; _arg1.fillColorBright2 = _local6.fillColorBright2; _arg1.fillColorPress1 = _local6.fillColorPress1; _arg1.fillColorPress2 = _local6.fillColorPress2; _arg1.bevelHighlight1 = _local6.bevelHighlight1; _arg1.bevelHighlight2 = _local6.bevelHighlight2; } } }//package mx.skins.halo
Section 337
//HaloFocusRect (mx.skins.halo.HaloFocusRect) package mx.skins.halo { import flash.display.*; import mx.styles.*; import mx.utils.*; import mx.skins.*; public class HaloFocusRect extends ProgrammaticSkin implements IStyleClient { private var _focusColor:Number; mx_internal static const VERSION:String = "3.2.0.3794"; public function get inheritingStyles():Object{ return (styleName.inheritingStyles); } public function set inheritingStyles(_arg1:Object):void{ } public function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{ } public function registerEffects(_arg1:Array):void{ } public function regenerateStyleCache(_arg1:Boolean):void{ } public function get styleDeclaration():CSSStyleDeclaration{ return (CSSStyleDeclaration(styleName)); } public function getClassStyleDeclarations():Array{ return ([]); } public function get className():String{ return ("HaloFocusRect"); } public function clearStyle(_arg1:String):void{ if (_arg1 == "focusColor"){ _focusColor = NaN; }; } public function setStyle(_arg1:String, _arg2):void{ if (_arg1 == "focusColor"){ _focusColor = _arg2; }; } public function set nonInheritingStyles(_arg1:Object):void{ } public function get nonInheritingStyles():Object{ return (styleName.nonInheritingStyles); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; super.updateDisplayList(_arg1, _arg2); var _local3:String = getStyle("focusBlendMode"); var _local4:Number = getStyle("focusAlpha"); var _local5:Number = getStyle("focusColor"); var _local6:Number = getStyle("cornerRadius"); var _local7:Number = getStyle("focusThickness"); var _local8:String = getStyle("focusRoundedCorners"); var _local9:Number = getStyle("themeColor"); var _local10:Number = _local5; if (isNaN(_local10)){ _local10 = _local9; }; var _local11:Graphics = graphics; _local11.clear(); blendMode = _local3; if (((!((_local8 == "tl tr bl br"))) && ((_local6 > 0)))){ _local12 = 0; _local13 = 0; _local14 = 0; _local15 = 0; _local16 = (_local6 + _local7); if (_local8.indexOf("tl") >= 0){ _local12 = _local16; }; if (_local8.indexOf("tr") >= 0){ _local14 = _local16; }; if (_local8.indexOf("bl") >= 0){ _local13 = _local16; }; if (_local8.indexOf("br") >= 0){ _local15 = _local16; }; _local11.beginFill(_local10, _local4); GraphicsUtil.drawRoundRectComplex(_local11, 0, 0, _arg1, _arg2, _local12, _local14, _local13, _local15); _local12 = (_local12) ? _local6 : 0; _local14 = (_local14) ? _local6 : 0; _local13 = (_local13) ? _local6 : 0; _local15 = (_local15) ? _local6 : 0; GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15); _local11.endFill(); _local16 = (_local6 + (_local7 / 2)); _local12 = (_local12) ? _local16 : 0; _local14 = (_local14) ? _local16 : 0; _local13 = (_local13) ? _local16 : 0; _local15 = (_local15) ? _local16 : 0; _local11.beginFill(_local10, _local4); GraphicsUtil.drawRoundRectComplex(_local11, (_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local12, _local14, _local13, _local15); _local12 = (_local12) ? _local6 : 0; _local14 = (_local14) ? _local6 : 0; _local13 = (_local13) ? _local6 : 0; _local15 = (_local15) ? _local6 : 0; GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15); _local11.endFill(); } else { _local11.beginFill(_local10, _local4); _local17 = (((_local6 > 0)) ? (_local6 + _local7) : 0 * 2); _local11.drawRoundRect(0, 0, _arg1, _arg2, _local17, _local17); _local17 = (_local6 * 2); _local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17); _local11.endFill(); _local11.beginFill(_local10, _local4); _local17 = (((_local6 > 0)) ? (_local6 + (_local7 / 2)) : 0 * 2); _local11.drawRoundRect((_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local17, _local17); _local17 = (_local6 * 2); _local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17); _local11.endFill(); }; } override public function getStyle(_arg1:String){ return (((_arg1 == "focusColor")) ? _focusColor : super.getStyle(_arg1)); } public function set styleDeclaration(_arg1:CSSStyleDeclaration):void{ } } }//package mx.skins.halo
Section 338
//LinkButtonSkin (mx.skins.halo.LinkButtonSkin) package mx.skins.halo { import mx.core.*; import mx.skins.*; public class LinkButtonSkin extends Border { mx_internal static const VERSION:String = "3.2.0.3794"; override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = getStyle("cornerRadius"); var _local4:uint = getStyle("rollOverColor"); var _local5:uint = getStyle("selectionColor"); graphics.clear(); switch (name){ case "upSkin": drawRoundRect(0, 0, _arg1, _arg2, _local3, 0, 0); break; case "overSkin": drawRoundRect(0, 0, _arg1, _arg2, _local3, _local4, 1); break; case "downSkin": drawRoundRect(0, 0, _arg1, _arg2, _local3, _local5, 1); break; case "disabledSkin": drawRoundRect(0, 0, _arg1, _arg2, _local3, 0, 0); break; }; } override public function get borderMetrics():EdgeMetrics{ return (EdgeMetrics.EMPTY); } } }//package mx.skins.halo
Section 339
//ListDropIndicator (mx.skins.halo.ListDropIndicator) package mx.skins.halo { import flash.display.*; import mx.skins.*; public class ListDropIndicator extends ProgrammaticSkin { public var direction:String;// = "horizontal" mx_internal static const VERSION:String = "3.2.0.3794"; override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Graphics = graphics; _local3.clear(); _local3.lineStyle(2, 2831164); if (direction == "horizontal"){ _local3.moveTo(0, 0); _local3.lineTo(_arg1, 0); } else { _local3.moveTo(0, 0); _local3.lineTo(0, _arg2); }; } } }//package mx.skins.halo
Section 340
//PanelSkin (mx.skins.halo.PanelSkin) package mx.skins.halo { import flash.display.*; import mx.core.*; import flash.utils.*; public class PanelSkin extends HaloBorder { private var oldControlBarHeight:Number; protected var _panelBorderMetrics:EdgeMetrics; private var oldHeaderHeight:Number; mx_internal static const VERSION:String = "3.2.0.3794"; private static var panels:Object = {}; override public function styleChanged(_arg1:String):void{ super.styleChanged(_arg1); if ((((((((((((((((((_arg1 == null)) || ((_arg1 == "styleName")))) || ((_arg1 == "borderStyle")))) || ((_arg1 == "borderThickness")))) || ((_arg1 == "borderThicknessTop")))) || ((_arg1 == "borderThicknessBottom")))) || ((_arg1 == "borderThicknessLeft")))) || ((_arg1 == "borderThicknessRight")))) || ((_arg1 == "borderSides")))){ _panelBorderMetrics = null; }; invalidateDisplayList(); } override mx_internal function drawBorder(_arg1:Number, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Graphics; var _local8:IContainer; var _local9:EdgeMetrics; super.drawBorder(_arg1, _arg2); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return; }; var _local3:String = getStyle("borderStyle"); if (_local3 == "default"){ _local4 = getStyle("backgroundAlpha"); _local5 = getStyle("borderAlpha"); backgroundAlphaName = "borderAlpha"; radiusObj = null; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local6 = (bRoundedCorners) ? radius : 0; _local7 = graphics; drawDropShadow(0, 0, _arg1, _arg2, radius, radius, _local6, _local6); if (!bRoundedCorners){ radiusObj = {}; }; _local8 = (parent as IContainer); if (_local8){ _local9 = _local8.viewMetrics; backgroundHole = {x:_local9.left, y:_local9.top, w:Math.max(0, ((_arg1 - _local9.left) - _local9.right)), h:Math.max(0, ((_arg2 - _local9.top) - _local9.bottom)), r:0}; if ((((backgroundHole.w > 0)) && ((backgroundHole.h > 0)))){ if (_local4 != _local5){ drawDropShadow(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h, 0, 0, 0, 0); }; _local7.beginFill(Number(backgroundColor), _local4); _local7.drawRect(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h); _local7.endFill(); }; }; backgroundColor = getStyle("borderColor"); }; } override public function get borderMetrics():EdgeMetrics{ var _local4:Number; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return (super.borderMetrics); }; var _local1:Boolean = isPanel(parent); var _local2:IUIComponent = (_local1) ? Object(parent)._controlBar : null; var _local3:Number = (_local1) ? Object(parent).getHeaderHeightProxy() : NaN; if (((_local2) && (_local2.includeInLayout))){ _local4 = _local2.getExplicitOrMeasuredHeight(); }; if (((!((_local4 == oldControlBarHeight))) && (!(((isNaN(oldControlBarHeight)) && (isNaN(_local4))))))){ _panelBorderMetrics = null; }; if (((!((_local3 == oldHeaderHeight))) && (!(((isNaN(_local3)) && (isNaN(oldHeaderHeight))))))){ _panelBorderMetrics = null; }; if (_panelBorderMetrics){ return (_panelBorderMetrics); }; var _local5:EdgeMetrics = super.borderMetrics; var _local6:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0); var _local7:Number = getStyle("borderThickness"); var _local8:Number = getStyle("borderThicknessLeft"); var _local9:Number = getStyle("borderThicknessTop"); var _local10:Number = getStyle("borderThicknessRight"); var _local11:Number = getStyle("borderThicknessBottom"); _local6.left = (_local5.left + (isNaN(_local8)) ? _local7 : _local8); _local6.top = (_local5.top + (isNaN(_local9)) ? _local7 : _local9); _local6.right = (_local5.bottom + (isNaN(_local10)) ? _local7 : _local10); _local6.bottom = (_local5.bottom + (isNaN(_local11)) ? (((_local2) && (!(isNaN(_local9))))) ? _local9 : (isNaN(_local8)) ? _local7 : _local8 : _local11); oldHeaderHeight = _local3; if (!isNaN(_local3)){ _local6.top = (_local6.top + _local3); }; oldControlBarHeight = _local4; if (!isNaN(_local4)){ _local6.bottom = (_local6.bottom + _local4); }; _panelBorderMetrics = _local6; return (_panelBorderMetrics); } override mx_internal function drawBackground(_arg1:Number, _arg2:Number):void{ var _local3:Array; var _local4:Number; super.drawBackground(_arg1, _arg2); if ((((getStyle("headerColors") == null)) && ((getStyle("borderStyle") == "default")))){ _local3 = getStyle("highlightAlphas"); _local4 = (_local3) ? _local3[0] : 0.3; drawRoundRect(0, 0, _arg1, _arg2, {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, _local4, null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:radius, tr:radius, bl:0, br:0}}); }; } override mx_internal function getBackgroundColorMetrics():EdgeMetrics{ if (getStyle("borderStyle") == "default"){ return (EdgeMetrics.EMPTY); }; return (super.borderMetrics); } private static function isPanel(_arg1:Object):Boolean{ var s:String; var x:XML; var parent = _arg1; s = getQualifiedClassName(parent); if (panels[s] == 1){ return (true); }; if (panels[s] == 0){ return (false); }; if (s == "mx.containers::Panel"){ (panels[s] == 1); return (true); }; x = describeType(parent); var xmllist:XMLList = x.extendsClass.(@type == "mx.containers::Panel"); if (xmllist.length() == 0){ panels[s] = 0; return (false); }; panels[s] = 1; return (true); } } }//package mx.skins.halo
Section 341
//ScrollArrowSkin (mx.skins.halo.ScrollArrowSkin) package mx.skins.halo { import flash.display.*; import mx.core.*; import mx.styles.*; import mx.controls.scrollClasses.*; import mx.utils.*; import mx.skins.*; public class ScrollArrowSkin extends Border { mx_internal static const VERSION:String = "3.2.0.3794"; private static var cache:Object = {}; override public function get measuredWidth():Number{ return (ScrollBar.THICKNESS); } override public function get measuredHeight():Number{ return (ScrollBar.THICKNESS); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local13:Array; var _local15:Array; var _local16:Array; var _local17:Array; var _local18:Array; var _local19:Array; var _local20:Array; super.updateDisplayList(_arg1, _arg2); var _local3:Number = getStyle("backgroundColor"); var _local4:uint = getStyle("borderColor"); var _local5:Array = getStyle("fillAlphas"); var _local6:Array = getStyle("fillColors"); StyleManager.getColorNames(_local6); var _local7:Array = getStyle("highlightAlphas"); var _local8:uint = getStyle("themeColor"); var _local9 = (name.charAt(0) == "u"); var _local10:uint = getStyle("iconColor"); var _local11:Object = calcDerivedStyles(_local8, _local4, _local6[0], _local6[1]); var _local12:Boolean = ((((parent) && (parent.parent))) && (!((parent.parent.rotation == 0)))); if (((_local9) && (!(_local12)))){ _local13 = [_local4, _local11.borderColorDrk1]; } else { _local13 = [_local11.borderColorDrk1, _local11.borderColorDrk2]; }; var _local14:Graphics = graphics; _local14.clear(); if (isNaN(_local3)){ _local3 = 0xFFFFFF; }; if ((((FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0)) || ((name.indexOf("Disabled") == -1)))){ drawRoundRect(0, 0, _arg1, _arg2, 0, _local3, 1); }; switch (name){ case "upArrowUpSkin": if (!_local12){ drawRoundRect(1, (_arg2 - 4), (_arg1 - 2), 8, 0, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], verticalGradientMatrix(1, (_arg2 - 4), (_arg1 - 2), 8), GradientType.LINEAR, null, {x:1, y:(_arg2 - 4), w:(_arg1 - 2), h:4, r:0}); }; case "downArrowUpSkin": _local15 = [_local6[0], _local6[1]]; _local16 = [_local5[0], _local5[1]]; drawRoundRect(0, 0, _arg1, _arg2, 0, _local13, 1, (_local12) ? horizontalGradientMatrix(0, 0, _arg1, _arg2) : verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, _local15, _local16, (_local12) ? horizontalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - (2 / 2)))); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - (2 / 2)), 0, [0xFFFFFF, 0xFFFFFF], _local7, (_local12) ? horizontalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - (2 / 2)))); break; case "upArrowOverSkin": if (!_local12){ drawRoundRect(1, (_arg2 - 4), (_arg1 - 2), 8, 0, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], verticalGradientMatrix(1, (_arg2 - 4), (_arg1 - 2), 8), GradientType.LINEAR, null, {x:1, y:(_arg2 - 4), w:(_arg1 - 2), h:4, r:0}); }; case "downArrowOverSkin": if (_local6.length > 2){ _local17 = [_local6[2], _local6[3]]; } else { _local17 = [_local6[0], _local6[1]]; }; if (_local5.length > 2){ _local18 = [_local5[2], _local5[3]]; } else { _local18 = [_local5[0], _local5[1]]; }; drawRoundRect(0, 0, _arg1, _arg2, 0, 0xFFFFFF, 1); drawRoundRect(0, 0, _arg1, _arg2, 0, [_local8, _local11.themeColDrk1], 1, (_local12) ? horizontalGradientMatrix(0, 0, _arg1, _arg2) : verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, _local17, _local18, (_local12) ? horizontalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - (2 / 2)), 0, [0xFFFFFF, 0xFFFFFF], _local7, (_local12) ? horizontalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - (2 / 2)))); break; case "upArrowDownSkin": if (!_local12){ drawRoundRect(1, (_arg2 - 4), (_arg1 - 2), 8, 0, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], (_local12) ? horizontalGradientMatrix(1, (_arg2 - 4), (_arg1 - 2), 8) : verticalGradientMatrix(1, (_arg2 - 4), (_arg1 - 2), 8), GradientType.LINEAR, null, {x:1, y:(_arg2 - 4), w:(_arg1 - 2), h:4, r:0}); }; case "downArrowDownSkin": drawRoundRect(0, 0, _arg1, _arg2, 0, [_local8, _local11.themeColDrk1], 1, (_local12) ? horizontalGradientMatrix(0, 0, _arg1, _arg2) : verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, [_local11.fillColorPress1, _local11.fillColorPress2], 1, (_local12) ? horizontalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2))); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - (2 / 2)), 0, [0xFFFFFF, 0xFFFFFF], _local7, (_local12) ? horizontalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - (2 / 2)))); break; case "upArrowDisabledSkin": if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ if (!_local12){ drawRoundRect(1, (_arg2 - 4), (_arg1 - 2), 8, 0, [_local11.borderColorDrk1, _local11.borderColorDrk1], [0.5, 0], verticalGradientMatrix(1, (_arg2 - 4), (_arg1 - 2), 8), GradientType.LINEAR, null, {x:1, y:(_arg2 - 4), w:(_arg1 - 2), h:4, r:0}); }; }; case "downArrowDisabledSkin": if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0){ _local19 = [_local6[0], _local6[1]]; _local20 = [(_local5[0] - 0.15), (_local5[1] - 0.15)]; drawRoundRect(0, 0, _arg1, _arg2, 0, _local13, 0.5, (_local12) ? horizontalGradientMatrix(0, 0, _arg1, _arg2) : verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, _local19, _local20, (_local12) ? horizontalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(0, 0, (_arg1 - 2), (_arg2 - (2 / 2)))); _local10 = getStyle("disabledIconColor"); } else { drawRoundRect(0, 0, _arg1, _arg2, 0, 0xFFFFFF, 0); return; }; break; default: drawRoundRect(0, 0, _arg1, _arg2, 0, 0xFFFFFF, 0); return; }; _local14.beginFill(_local10); if (_local9){ _local14.moveTo((_arg1 / 2), 6); _local14.lineTo((_arg1 - 5), (_arg2 - 6)); _local14.lineTo(5, (_arg2 - 6)); _local14.lineTo((_arg1 / 2), 6); } else { _local14.moveTo((_arg1 / 2), (_arg2 - 6)); _local14.lineTo((_arg1 - 5), 6); _local14.lineTo(5, 6); _local14.lineTo((_arg1 / 2), (_arg2 - 6)); }; _local14.endFill(); } private static function calcDerivedStyles(_arg1:uint, _arg2:uint, _arg3:uint, _arg4:uint):Object{ var _local6:Object; var _local5:String = HaloColors.getCacheKey(_arg1, _arg2, _arg3, _arg4); if (!cache[_local5]){ _local6 = (cache[_local5] = {}); HaloColors.addHaloColors(_local6, _arg1, _arg3, _arg4); _local6.borderColorDrk1 = ColorUtil.adjustBrightness2(_arg2, -25); _local6.borderColorDrk2 = ColorUtil.adjustBrightness2(_arg2, -50); }; return (cache[_local5]); } } }//package mx.skins.halo
Section 342
//ScrollThumbSkin (mx.skins.halo.ScrollThumbSkin) package mx.skins.halo { import flash.display.*; import mx.styles.*; import mx.utils.*; import mx.skins.*; public class ScrollThumbSkin extends Border { mx_internal static const VERSION:String = "3.2.0.3794"; private static var cache:Object = {}; override public function get measuredWidth():Number{ return (16); } override public function get measuredHeight():Number{ return (10); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local17:Array; var _local18:Array; var _local19:Array; var _local20:Array; super.updateDisplayList(_arg1, _arg2); var _local3:Number = getStyle("backgroundColor"); var _local4:uint = getStyle("borderColor"); var _local5:Number = getStyle("cornerRadius"); var _local6:Array = getStyle("fillAlphas"); var _local7:Array = getStyle("fillColors"); StyleManager.getColorNames(_local7); var _local8:Array = getStyle("highlightAlphas"); var _local9:uint = getStyle("themeColor"); var _local10:uint = 7305079; var _local11:Object = calcDerivedStyles(_local9, _local4, _local7[0], _local7[1]); var _local12:Number = Math.max((_local5 - 1), 0); var _local13:Object = {tl:0, tr:_local12, bl:0, br:_local12}; _local12 = Math.max((_local12 - 1), 0); var _local14:Object = {tl:0, tr:_local12, bl:0, br:_local12}; var _local15:Boolean = ((((parent) && (parent.parent))) && (!((parent.parent.rotation == 0)))); if (isNaN(_local3)){ _local3 = 0xFFFFFF; }; graphics.clear(); drawRoundRect(1, 0, (_arg1 - 3), _arg2, _local13, _local3, 1); switch (name){ case "thumbUpSkin": default: _local17 = [_local7[0], _local7[1]]; _local18 = [_local6[0], _local6[1]]; drawRoundRect(0, 0, _arg1, _arg2, 0, 0xFFFFFF, 0); if (_local15){ drawRoundRect(1, 0, (_arg1 - 2), _arg2, _local5, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], horizontalGradientMatrix(2, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 4), h:(_arg2 - 2), r:_local14}); } else { drawRoundRect(1, (_arg2 - _local12), (_arg1 - 3), (_local12 + 4), {tl:0, tr:0, bl:0, br:_local12}, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], (_local15) ? horizontalGradientMatrix(0, (_arg2 - 4), (_arg1 - 3), 8) : verticalGradientMatrix(0, (_arg2 - 4), (_arg1 - 3), 8), GradientType.LINEAR, null, {x:1, y:(_arg2 - _local12), w:(_arg1 - 4), h:_local12, r:{tl:0, tr:0, bl:0, br:(_local12 - 1)}}); }; drawRoundRect(1, 0, (_arg1 - 3), _arg2, _local13, [_local4, _local11.borderColorDrk1], 1, (_local15) ? horizontalGradientMatrix(0, 0, _arg1, _arg2) : verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 4), h:(_arg2 - 2), r:_local14}); drawRoundRect(1, 1, (_arg1 - 4), (_arg2 - 2), _local14, _local17, _local18, (_local15) ? horizontalGradientMatrix(1, 0, (_arg1 - 2), (_arg2 - 2)) : verticalGradientMatrix(1, 0, (_arg1 - 2), (_arg2 - 2))); if (_local15){ drawRoundRect(1, 0, ((_arg1 - 4) / 2), (_arg2 - 2), 0, [0xFFFFFF, 0xFFFFFF], _local8, horizontalGradientMatrix(1, 1, (_arg1 - 4), ((_arg2 - 2) / 2))); } else { drawRoundRect(1, 1, (_arg1 - 4), ((_arg2 - 2) / 2), _local14, [0xFFFFFF, 0xFFFFFF], _local8, (_local15) ? horizontalGradientMatrix(1, 0, ((_arg1 - 4) / 2), (_arg2 - 2)) : verticalGradientMatrix(1, 1, (_arg1 - 4), ((_arg2 - 2) / 2))); }; break; case "thumbOverSkin": if (_local7.length > 2){ _local19 = [_local7[2], _local7[3]]; } else { _local19 = [_local7[0], _local7[1]]; }; if (_local6.length > 2){ _local20 = [_local6[2], _local6[3]]; } else { _local20 = [_local6[0], _local6[1]]; }; drawRoundRect(0, 0, _arg1, _arg2, 0, 0xFFFFFF, 0); if (_local15){ drawRoundRect(1, 0, (_arg1 - 2), _arg2, _local5, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], horizontalGradientMatrix(2, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 4), h:(_arg2 - 2), r:_local14}); } else { drawRoundRect(1, (_arg2 - _local12), (_arg1 - 3), (_local12 + 4), {tl:0, tr:0, bl:0, br:_local12}, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], (_local15) ? horizontalGradientMatrix(0, (_arg2 - 4), (_arg1 - 3), 8) : verticalGradientMatrix(0, (_arg2 - 4), (_arg1 - 3), 8), GradientType.LINEAR, null, {x:1, y:(_arg2 - _local12), w:(_arg1 - 4), h:_local12, r:{tl:0, tr:0, bl:0, br:(_local12 - 1)}}); }; drawRoundRect(1, 0, (_arg1 - 3), _arg2, _local13, [_local9, _local11.themeColDrk1], 1, (_local15) ? horizontalGradientMatrix(1, 0, _arg1, _arg2) : verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 4), h:(_arg2 - 2), r:_local14}); drawRoundRect(1, 1, (_arg1 - 4), (_arg2 - 2), _local14, _local19, _local20, (_local15) ? horizontalGradientMatrix(1, 0, _arg1, _arg2) : verticalGradientMatrix(1, 0, _arg1, _arg2)); break; case "thumbDownSkin": if (_local15){ drawRoundRect(1, 0, (_arg1 - 2), _arg2, _local13, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], horizontalGradientMatrix(2, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 4), h:(_arg2 - 2), r:_local14}); } else { drawRoundRect(1, (_arg2 - _local12), (_arg1 - 3), (_local12 + 4), {tl:0, tr:0, bl:0, br:_local12}, [_local11.borderColorDrk1, _local11.borderColorDrk1], [1, 0], (_local15) ? horizontalGradientMatrix(0, (_arg2 - 4), (_arg1 - 3), 8) : verticalGradientMatrix(0, (_arg2 - 4), (_arg1 - 3), 8), GradientType.LINEAR, null, {x:1, y:(_arg2 - _local12), w:(_arg1 - 4), h:_local12, r:{tl:0, tr:0, bl:0, br:(_local12 - 1)}}); }; drawRoundRect(1, 0, (_arg1 - 3), _arg2, _local13, [_local9, _local11.themeColDrk2], 1, (_local15) ? horizontalGradientMatrix(1, 0, _arg1, _arg2) : verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 4), h:(_arg2 - 2), r:_local14}); drawRoundRect(1, 1, (_arg1 - 4), (_arg2 - 2), _local14, [_local11.fillColorPress1, _local11.fillColorPress2], 1, (_local15) ? horizontalGradientMatrix(1, 0, _arg1, _arg2) : verticalGradientMatrix(1, 0, _arg1, _arg2)); break; case "thumbDisabledSkin": drawRoundRect(0, 0, _arg1, _arg2, 0, 0xFFFFFF, 0); drawRoundRect(1, 0, (_arg1 - 3), _arg2, _local13, 0x999999, 0.5); drawRoundRect(1, 1, (_arg1 - 4), (_arg2 - 2), _local14, 0xFFFFFF, 0.5); break; }; var _local16:Number = Math.floor(((_arg1 / 2) - 4)); drawRoundRect(_local16, Math.floor(((_arg2 / 2) - 4)), 5, 1, 0, 0, 0.4); drawRoundRect(_local16, Math.floor(((_arg2 / 2) - 2)), 5, 1, 0, 0, 0.4); drawRoundRect(_local16, Math.floor((_arg2 / 2)), 5, 1, 0, 0, 0.4); drawRoundRect(_local16, Math.floor(((_arg2 / 2) + 2)), 5, 1, 0, 0, 0.4); drawRoundRect(_local16, Math.floor(((_arg2 / 2) + 4)), 5, 1, 0, 0, 0.4); } private static function calcDerivedStyles(_arg1:uint, _arg2:uint, _arg3:uint, _arg4:uint):Object{ var _local6:Object; var _local5:String = HaloColors.getCacheKey(_arg1, _arg2, _arg3, _arg4); if (!cache[_local5]){ _local6 = (cache[_local5] = {}); HaloColors.addHaloColors(_local6, _arg1, _arg3, _arg4); _local6.borderColorDrk1 = ColorUtil.adjustBrightness2(_arg2, -50); }; return (cache[_local5]); } } }//package mx.skins.halo
Section 343
//ScrollTrackSkin (mx.skins.halo.ScrollTrackSkin) package mx.skins.halo { import flash.display.*; import mx.core.*; import mx.styles.*; import mx.utils.*; import mx.skins.*; public class ScrollTrackSkin extends Border { mx_internal static const VERSION:String = "3.2.0.3794"; override public function get measuredWidth():Number{ return (16); } override public function get measuredHeight():Number{ return (1); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Array = getStyle("trackColors"); StyleManager.getColorNames(_local3); var _local4:uint = ColorUtil.adjustBrightness2(getStyle("borderColor"), -20); var _local5:uint = ColorUtil.adjustBrightness2(_local4, -30); graphics.clear(); var _local6:Number = 1; if ((((name == "trackDisabledSkin")) && ((FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0)))){ _local6 = 0.2; }; drawRoundRect(0, 0, _arg1, _arg2, 0, [_local4, _local5], _local6, verticalGradientMatrix(0, 0, _arg1, _arg2), GradientType.LINEAR, null, {x:1, y:1, w:(_arg1 - 2), h:(_arg2 - 2), r:0}); drawRoundRect(1, 1, (_arg1 - 2), (_arg2 - 2), 0, _local3, _local6, horizontalGradientMatrix(1, 1, ((_arg1 / 3) * 2), (_arg2 - 2))); } } }//package mx.skins.halo
Section 344
//TitleBackground (mx.skins.halo.TitleBackground) package mx.skins.halo { import flash.display.*; import mx.styles.*; import mx.utils.*; import mx.skins.*; public class TitleBackground extends ProgrammaticSkin { mx_internal static const VERSION:String = "3.2.0.3794"; override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = getStyle("borderAlpha"); var _local4:Number = getStyle("cornerRadius"); var _local5:Array = getStyle("highlightAlphas"); var _local6:Array = getStyle("headerColors"); var _local7 = !((_local6 == null)); StyleManager.getColorNames(_local6); var _local8:Number = ColorUtil.adjustBrightness2((_local6) ? _local6[1] : 0xFFFFFF, -20); var _local9:Graphics = graphics; _local9.clear(); if (_arg2 < 3){ return; }; if (_local7){ _local9.lineStyle(0, _local8, _local3); _local9.moveTo(0, _arg2); _local9.lineTo(_arg1, _arg2); _local9.lineStyle(0, 0, 0); drawRoundRect(0, 0, _arg1, _arg2, {tl:_local4, tr:_local4, bl:0, br:0}, _local6, _local3, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(0, 0, _arg1, (_arg2 / 2), {tl:_local4, tr:_local4, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local5, verticalGradientMatrix(0, 0, _arg1, (_arg2 / 2))); drawRoundRect(0, 0, _arg1, _arg2, {tl:_local4, tr:_local4, bl:0, br:0}, 0xFFFFFF, _local5[0], null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:_local4, tr:_local4, bl:0, br:0}}); }; } } }//package mx.skins.halo
Section 345
//ToolTipBorder (mx.skins.halo.ToolTipBorder) package mx.skins.halo { import flash.display.*; import mx.core.*; import mx.graphics.*; import mx.skins.*; import flash.filters.*; public class ToolTipBorder extends RectangularBorder { private var _borderMetrics:EdgeMetrics; private var dropShadow:RectangularDropShadow; mx_internal static const VERSION:String = "3.2.0.3794"; override public function get borderMetrics():EdgeMetrics{ if (_borderMetrics){ return (_borderMetrics); }; var _local1:String = getStyle("borderStyle"); switch (_local1){ case "errorTipRight": _borderMetrics = new EdgeMetrics(15, 1, 3, 3); break; case "errorTipAbove": _borderMetrics = new EdgeMetrics(3, 1, 3, 15); break; case "errorTipBelow": _borderMetrics = new EdgeMetrics(3, 13, 3, 3); break; default: _borderMetrics = new EdgeMetrics(3, 1, 3, 3); break; }; return (_borderMetrics); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:String = getStyle("borderStyle"); var _local4:uint = getStyle("backgroundColor"); var _local5:Number = getStyle("backgroundAlpha"); var _local6:uint = getStyle("borderColor"); var _local7:Number = getStyle("cornerRadius"); var _local8:uint = getStyle("shadowColor"); var _local9:Number = 0.1; var _local10:Graphics = graphics; _local10.clear(); filters = []; switch (_local3){ case "toolTip": drawRoundRect(3, 1, (_arg1 - 6), (_arg2 - 4), _local7, _local4, _local5); if (!dropShadow){ dropShadow = new RectangularDropShadow(); }; dropShadow.distance = 3; dropShadow.angle = 90; dropShadow.color = 0; dropShadow.alpha = 0.4; dropShadow.tlRadius = (_local7 + 2); dropShadow.trRadius = (_local7 + 2); dropShadow.blRadius = (_local7 + 2); dropShadow.brRadius = (_local7 + 2); dropShadow.drawShadow(graphics, 3, 0, (_arg1 - 6), (_arg2 - 4)); break; case "errorTipRight": drawRoundRect(11, 0, (_arg1 - 11), (_arg2 - 2), 3, _local6, _local5); _local10.beginFill(_local6, _local5); _local10.moveTo(11, 7); _local10.lineTo(0, 13); _local10.lineTo(11, 19); _local10.moveTo(11, 7); _local10.endFill(); filters = [new DropShadowFilter(2, 90, 0, 0.4)]; break; case "errorTipAbove": drawRoundRect(0, 0, _arg1, (_arg2 - 13), 3, _local6, _local5); _local10.beginFill(_local6, _local5); _local10.moveTo(9, (_arg2 - 13)); _local10.lineTo(15, (_arg2 - 2)); _local10.lineTo(21, (_arg2 - 13)); _local10.moveTo(9, (_arg2 - 13)); _local10.endFill(); filters = [new DropShadowFilter(2, 90, 0, 0.4)]; break; case "errorTipBelow": drawRoundRect(0, 11, _arg1, (_arg2 - 13), 3, _local6, _local5); _local10.beginFill(_local6, _local5); _local10.moveTo(9, 11); _local10.lineTo(15, 0); _local10.lineTo(21, 11); _local10.moveTo(10, 11); _local10.endFill(); filters = [new DropShadowFilter(2, 90, 0, 0.4)]; break; }; } override public function styleChanged(_arg1:String):void{ if ((((((_arg1 == "borderStyle")) || ((_arg1 == "styleName")))) || ((_arg1 == null)))){ _borderMetrics = null; }; invalidateDisplayList(); } } }//package mx.skins.halo
Section 346
//Border (mx.skins.Border) package mx.skins { import mx.core.*; public class Border extends ProgrammaticSkin implements IBorder { mx_internal static const VERSION:String = "3.2.0.3794"; public function get borderMetrics():EdgeMetrics{ return (EdgeMetrics.EMPTY); } } }//package mx.skins
Section 347
//ProgrammaticSkin (mx.skins.ProgrammaticSkin) package mx.skins { import flash.display.*; import flash.geom.*; import mx.core.*; import mx.managers.*; import mx.styles.*; import mx.utils.*; public class ProgrammaticSkin extends FlexShape implements IFlexDisplayObject, IInvalidating, ILayoutManagerClient, ISimpleStyleClient, IProgrammaticSkin { private var _initialized:Boolean;// = false private var _height:Number; private var invalidateDisplayListFlag:Boolean;// = false private var _styleName:IStyleClient; private var _nestLevel:int;// = 0 private var _processedDescriptors:Boolean;// = false private var _updateCompletePendingFlag:Boolean;// = true private var _width:Number; mx_internal static const VERSION:String = "3.2.0.3794"; private static var tempMatrix:Matrix = new Matrix(); public function ProgrammaticSkin(){ _width = measuredWidth; _height = measuredHeight; } public function getStyle(_arg1:String){ return ((_styleName) ? _styleName.getStyle(_arg1) : null); } protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ } public function get nestLevel():int{ return (_nestLevel); } public function set nestLevel(_arg1:int):void{ _nestLevel = _arg1; invalidateDisplayList(); } override public function get height():Number{ return (_height); } public function get updateCompletePendingFlag():Boolean{ return (_updateCompletePendingFlag); } protected function verticalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 90)); } public function validateSize(_arg1:Boolean=false):void{ } public function invalidateDisplayList():void{ if (((!(invalidateDisplayListFlag)) && ((nestLevel > 0)))){ invalidateDisplayListFlag = true; UIComponentGlobals.layoutManager.invalidateDisplayList(this); }; } public function set updateCompletePendingFlag(_arg1:Boolean):void{ _updateCompletePendingFlag = _arg1; } protected function horizontalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 0)); } override public function set height(_arg1:Number):void{ _height = _arg1; invalidateDisplayList(); } public function set processedDescriptors(_arg1:Boolean):void{ _processedDescriptors = _arg1; } public function validateDisplayList():void{ invalidateDisplayListFlag = false; updateDisplayList(width, height); } public function get measuredWidth():Number{ return (0); } override public function set width(_arg1:Number):void{ _width = _arg1; invalidateDisplayList(); } public function get measuredHeight():Number{ return (0); } public function set initialized(_arg1:Boolean):void{ _initialized = _arg1; } protected function drawRoundRect(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:Matrix=null, _arg9:String="linear", _arg10:Array=null, _arg11:Object=null):void{ var _local13:Number; var _local14:Array; var _local15:Object; var _local12:Graphics = graphics; if ((((_arg3 == 0)) || ((_arg4 == 0)))){ return; }; if (_arg6 !== null){ if ((_arg6 is uint)){ _local12.beginFill(uint(_arg6), Number(_arg7)); } else { if ((_arg6 is Array)){ _local14 = ((_arg7 is Array)) ? (_arg7 as Array) : [_arg7, _arg7]; if (!_arg10){ _arg10 = [0, 0xFF]; }; _local12.beginGradientFill(_arg9, (_arg6 as Array), _local14, _arg10, _arg8); }; }; }; if (!_arg5){ _local12.drawRect(_arg1, _arg2, _arg3, _arg4); } else { if ((_arg5 is Number)){ _local13 = (Number(_arg5) * 2); _local12.drawRoundRect(_arg1, _arg2, _arg3, _arg4, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg1, _arg2, _arg3, _arg4, _arg5.tl, _arg5.tr, _arg5.bl, _arg5.br); }; }; if (_arg11){ _local15 = _arg11.r; if ((_local15 is Number)){ _local13 = (Number(_local15) * 2); _local12.drawRoundRect(_arg11.x, _arg11.y, _arg11.w, _arg11.h, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg11.x, _arg11.y, _arg11.w, _arg11.h, _local15.tl, _local15.tr, _local15.bl, _local15.br); }; }; if (_arg6 !== null){ _local12.endFill(); }; } public function get processedDescriptors():Boolean{ return (_processedDescriptors); } public function set styleName(_arg1:Object):void{ if (_styleName != _arg1){ _styleName = (_arg1 as IStyleClient); invalidateDisplayList(); }; } public function setActualSize(_arg1:Number, _arg2:Number):void{ var _local3:Boolean; if (_width != _arg1){ _width = _arg1; _local3 = true; }; if (_height != _arg2){ _height = _arg2; _local3 = true; }; if (_local3){ invalidateDisplayList(); }; } public function styleChanged(_arg1:String):void{ invalidateDisplayList(); } override public function get width():Number{ return (_width); } public function invalidateProperties():void{ } public function get initialized():Boolean{ return (_initialized); } protected function rotatedGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Matrix{ tempMatrix.createGradientBox(_arg3, _arg4, ((_arg5 * Math.PI) / 180), _arg1, _arg2); return (tempMatrix); } public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } public function get styleName():Object{ return (_styleName); } public function validateNow():void{ if (invalidateDisplayListFlag){ validateDisplayList(); }; } public function invalidateSize():void{ } public function validateProperties():void{ } } }//package mx.skins
Section 348
//RectangularBorder (mx.skins.RectangularBorder) package mx.skins { import flash.display.*; import flash.geom.*; import mx.core.*; import flash.events.*; import mx.resources.*; import mx.styles.*; import flash.utils.*; import flash.system.*; import flash.net.*; public class RectangularBorder extends Border implements IRectangularBorder { private var backgroundImage:DisplayObject; private var backgroundImageHeight:Number; private var _backgroundImageBounds:Rectangle; private var backgroundImageStyle:Object; private var backgroundImageWidth:Number; private var resourceManager:IResourceManager; mx_internal static const VERSION:String = "3.2.0.3794"; public function RectangularBorder(){ resourceManager = ResourceManager.getInstance(); super(); addEventListener(Event.REMOVED, removedHandler); } public function layoutBackgroundImage():void{ var _local4:Number; var _local5:Number; var _local7:Number; var _local8:Number; var _local14:Number; var _local15:Graphics; var _local1:DisplayObject = parent; var _local2:EdgeMetrics = ((_local1 is IContainer)) ? IContainer(_local1).viewMetrics : borderMetrics; var _local3 = !((getStyle("backgroundAttachment") == "fixed")); if (_backgroundImageBounds){ _local4 = _backgroundImageBounds.width; _local5 = _backgroundImageBounds.height; } else { _local4 = ((width - _local2.left) - _local2.right); _local5 = ((height - _local2.top) - _local2.bottom); }; var _local6:Number = getBackgroundSize(); if (isNaN(_local6)){ _local7 = 1; _local8 = 1; } else { _local14 = (_local6 * 0.01); _local7 = ((_local14 * _local4) / backgroundImageWidth); _local8 = ((_local14 * _local5) / backgroundImageHeight); }; backgroundImage.scaleX = _local7; backgroundImage.scaleY = _local8; var _local9:Number = Math.round((0.5 * (_local4 - (backgroundImageWidth * _local7)))); var _local10:Number = Math.round((0.5 * (_local5 - (backgroundImageHeight * _local8)))); backgroundImage.x = _local2.left; backgroundImage.y = _local2.top; var _local11:Shape = Shape(backgroundImage.mask); _local11.x = _local2.left; _local11.y = _local2.top; if (((_local3) && ((_local1 is IContainer)))){ _local9 = (_local9 - IContainer(_local1).horizontalScrollPosition); _local10 = (_local10 - IContainer(_local1).verticalScrollPosition); }; backgroundImage.alpha = getStyle("backgroundAlpha"); backgroundImage.x = (backgroundImage.x + _local9); backgroundImage.y = (backgroundImage.y + _local10); var _local12:Number = ((width - _local2.left) - _local2.right); var _local13:Number = ((height - _local2.top) - _local2.bottom); if (((!((_local11.width == _local12))) || (!((_local11.height == _local13))))){ _local15 = _local11.graphics; _local15.clear(); _local15.beginFill(0xFFFFFF); _local15.drawRect(0, 0, _local12, _local13); _local15.endFill(); }; } public function set backgroundImageBounds(_arg1:Rectangle):void{ _backgroundImageBounds = _arg1; invalidateDisplayList(); } private function getBackgroundSize():Number{ var _local3:int; var _local1:Number = NaN; var _local2:Object = getStyle("backgroundSize"); if (((_local2) && ((_local2 is String)))){ _local3 = _local2.indexOf("%"); if (_local3 != -1){ _local1 = Number(_local2.substr(0, _local3)); }; }; return (_local1); } private function removedHandler(_arg1:Event):void{ var _local2:IChildList; if (backgroundImage){ _local2 = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent); _local2.removeChild(backgroundImage.mask); _local2.removeChild(backgroundImage); backgroundImage = null; }; } private function initBackgroundImage(_arg1:DisplayObject):void{ backgroundImage = _arg1; if ((_arg1 is Loader)){ backgroundImageWidth = Loader(_arg1).contentLoaderInfo.width; backgroundImageHeight = Loader(_arg1).contentLoaderInfo.height; } else { backgroundImageWidth = backgroundImage.width; backgroundImageHeight = backgroundImage.height; if ((_arg1 is ISimpleStyleClient)){ ISimpleStyleClient(_arg1).styleName = styleName; }; }; var _local2:IChildList = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent); var _local3:Shape = new FlexShape(); _local3.name = "backgroundMask"; _local3.x = 0; _local3.y = 0; _local2.addChild(_local3); var _local4:int = _local2.getChildIndex(this); _local2.addChildAt(backgroundImage, (_local4 + 1)); backgroundImage.mask = _local3; } public function get backgroundImageBounds():Rectangle{ return (_backgroundImageBounds); } public function get hasBackgroundImage():Boolean{ return (!((backgroundImage == null))); } private function completeEventHandler(_arg1:Event):void{ if (!parent){ return; }; var _local2:DisplayObject = DisplayObject(LoaderInfo(_arg1.target).loader); initBackgroundImage(_local2); layoutBackgroundImage(); dispatchEvent(_arg1.clone()); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var cls:Class; var newStyleObj:DisplayObject; var loader:Loader; var loaderContext:LoaderContext; var message:String; var unscaledWidth = _arg1; var unscaledHeight = _arg2; if (!parent){ return; }; var newStyle:Object = getStyle("backgroundImage"); if (newStyle != backgroundImageStyle){ removedHandler(null); backgroundImageStyle = newStyle; if (((newStyle) && ((newStyle as Class)))){ cls = Class(newStyle); initBackgroundImage(new (cls)); } else { if (((newStyle) && ((newStyle is String)))){ try { cls = Class(getDefinitionByName(String(newStyle))); } catch(e:Error) { }; if (cls){ newStyleObj = new (cls); initBackgroundImage(newStyleObj); } else { loader = new FlexLoader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeEventHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorEventHandler); loader.contentLoaderInfo.addEventListener(ErrorEvent.ERROR, errorEventHandler); loaderContext = new LoaderContext(); loaderContext.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain); loader.load(new URLRequest(String(newStyle)), loaderContext); }; } else { if (newStyle){ message = resourceManager.getString("skins", "notLoaded", [newStyle]); throw (new Error(message)); }; }; }; }; if (backgroundImage){ layoutBackgroundImage(); }; } private function errorEventHandler(_arg1:Event):void{ } } }//package mx.skins
Section 349
//IOverride (mx.states.IOverride) package mx.states { import mx.core.*; public interface IOverride { function initialize():void; function remove(_arg1:UIComponent):void; function apply(_arg1:UIComponent):void; } }//package mx.states
Section 350
//SetProperty (mx.states.SetProperty) package mx.states { import mx.core.*; public class SetProperty implements IOverride { private var oldRelatedValues:Array; private var oldValue:Object; public var name:String; public var target:Object; public var value; private static const RELATED_PROPERTIES:Object = {explicitWidth:["percentWidth"], explicitHeight:["percentHeight"]}; mx_internal static const VERSION:String = "3.2.0.3794"; private static const PSEUDONYMS:Object = {width:"explicitWidth", height:"explicitHeight"}; public function SetProperty(_arg1:Object=null, _arg2:String=null, _arg3=undefined){ this.target = _arg1; this.name = _arg2; this.value = _arg3; } public function remove(_arg1:UIComponent):void{ var _local5:int; var _local2:Object = (target) ? target : _arg1; var _local3:String = (PSEUDONYMS[name]) ? PSEUDONYMS[name] : name; var _local4:Array = (RELATED_PROPERTIES[_local3]) ? RELATED_PROPERTIES[_local3] : null; if ((((((name == "width")) || ((name == "height")))) && (!(isNaN(Number(oldValue)))))){ _local3 = name; }; setPropertyValue(_local2, _local3, oldValue, oldValue); if (_local4){ _local5 = 0; while (_local5 < _local4.length) { setPropertyValue(_local2, _local4[_local5], oldRelatedValues[_local5], oldRelatedValues[_local5]); _local5++; }; }; } private function toBoolean(_arg1:Object):Boolean{ if ((_arg1 is String)){ return ((_arg1.toLowerCase() == "true")); }; return (!((_arg1 == false))); } public function apply(_arg1:UIComponent):void{ var _local6:int; var _local2:Object = (target) ? target : _arg1; var _local3:String = (PSEUDONYMS[name]) ? PSEUDONYMS[name] : name; var _local4:Array = (RELATED_PROPERTIES[_local3]) ? RELATED_PROPERTIES[_local3] : null; var _local5:* = value; oldValue = _local2[_local3]; if (_local4){ oldRelatedValues = []; _local6 = 0; while (_local6 < _local4.length) { oldRelatedValues[_local6] = _local2[_local4[_local6]]; _local6++; }; }; if ((((name == "width")) || ((name == "height")))){ if ((((_local5 is String)) && ((_local5.indexOf("%") >= 0)))){ _local3 = ((name == "width")) ? "percentWidth" : "percentHeight"; _local5 = _local5.slice(0, _local5.indexOf("%")); } else { _local3 = name; }; }; setPropertyValue(_local2, _local3, _local5, oldValue); } public function initialize():void{ } private function setPropertyValue(_arg1:Object, _arg2:String, _arg3, _arg4:Object):void{ if ((_arg4 is Number)){ _arg1[_arg2] = Number(_arg3); } else { if ((_arg4 is Boolean)){ _arg1[_arg2] = toBoolean(_arg3); } else { _arg1[_arg2] = _arg3; }; }; } } }//package mx.states
Section 351
//State (mx.states.State) package mx.states { import flash.events.*; import mx.events.*; public class State extends EventDispatcher { public var basedOn:String; private var initialized:Boolean;// = false public var overrides:Array; public var name:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function State(){ overrides = []; super(); } mx_internal function initialize():void{ var _local1:int; if (!initialized){ initialized = true; _local1 = 0; while (_local1 < overrides.length) { IOverride(overrides[_local1]).initialize(); _local1++; }; }; } mx_internal function dispatchExitState():void{ dispatchEvent(new FlexEvent(FlexEvent.EXIT_STATE)); } mx_internal function dispatchEnterState():void{ dispatchEvent(new FlexEvent(FlexEvent.ENTER_STATE)); } } }//package mx.states
Section 352
//Transition (mx.states.Transition) package mx.states { import mx.effects.*; public class Transition { public var effect:IEffect; public var toState:String;// = "*" public var fromState:String;// = "*" mx_internal static const VERSION:String = "3.2.0.3794"; } }//package mx.states
Section 353
//CSSStyleDeclaration (mx.styles.CSSStyleDeclaration) package mx.styles { import flash.display.*; import mx.core.*; import mx.managers.*; import flash.events.*; import flash.utils.*; public class CSSStyleDeclaration extends EventDispatcher { mx_internal var effects:Array; protected var overrides:Object; public var defaultFactory:Function; public var factory:Function; mx_internal var selectorRefCount:int;// = 0 private var styleManager:IStyleManager2; private var clones:Dictionary; mx_internal static const VERSION:String = "3.2.0.3794"; private static const NOT_A_COLOR:uint = 4294967295; private static const FILTERMAP_PROP:String = "__reserved__filterMap"; public function CSSStyleDeclaration(_arg1:String=null){ clones = new Dictionary(true); super(); if (_arg1){ styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2); styleManager.setStyleDeclaration(_arg1, this, false); }; } mx_internal function addStyleToProtoChain(_arg1:Object, _arg2:DisplayObject, _arg3:Object=null):Object{ var p:String; var emptyObjectFactory:Function; var filteredChain:Object; var filterObjectFactory:Function; var i:String; var chain = _arg1; var target = _arg2; var filterMap = _arg3; var nodeAddedToChain:Boolean; var originalChain:Object = chain; if (filterMap){ chain = {}; }; if (defaultFactory != null){ defaultFactory.prototype = chain; chain = new defaultFactory(); nodeAddedToChain = true; }; if (factory != null){ factory.prototype = chain; chain = new factory(); nodeAddedToChain = true; }; if (overrides){ if ((((defaultFactory == null)) && ((factory == null)))){ emptyObjectFactory = function ():void{ }; emptyObjectFactory.prototype = chain; chain = new (emptyObjectFactory); nodeAddedToChain = true; }; for (p in overrides) { if (overrides[p] === undefined){ delete chain[p]; } else { chain[p] = overrides[p]; }; }; }; if (filterMap){ if (nodeAddedToChain){ filteredChain = {}; filterObjectFactory = function ():void{ }; filterObjectFactory.prototype = originalChain; filteredChain = new (filterObjectFactory); for (i in chain) { if (filterMap[i] != null){ filteredChain[filterMap[i]] = chain[i]; }; }; chain = filteredChain; chain[FILTERMAP_PROP] = filterMap; } else { chain = originalChain; }; }; if (nodeAddedToChain){ clones[chain] = 1; }; return (chain); } public function getStyle(_arg1:String){ var _local2:*; var _local3:*; if (overrides){ if ((((_arg1 in overrides)) && ((overrides[_arg1] === undefined)))){ return (undefined); }; _local3 = overrides[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; if (factory != null){ factory.prototype = {}; _local2 = new factory(); _local3 = _local2[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; if (defaultFactory != null){ defaultFactory.prototype = {}; _local2 = new defaultFactory(); _local3 = _local2[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; return (undefined); } public function clearStyle(_arg1:String):void{ setStyle(_arg1, undefined); } public function setStyle(_arg1:String, _arg2):void{ var _local7:int; var _local8:Object; var _local3:Object = getStyle(_arg1); var _local4:Boolean; if ((((((((((selectorRefCount > 0)) && ((factory == null)))) && ((defaultFactory == null)))) && (!(overrides)))) && (!((_local3 === _arg2))))){ _local4 = true; }; if (_arg2 !== undefined){ setStyle(_arg1, _arg2); } else { if (_arg2 == _local3){ return; }; setStyle(_arg1, _arg2); }; var _local5:Array = SystemManagerGlobals.topLevelSystemManagers; var _local6:int = _local5.length; if (_local4){ _local7 = 0; while (_local7 < _local6) { _local8 = _local5[_local7]; _local8.regenerateStyleCache(true); _local7++; }; }; _local7 = 0; while (_local7 < _local6) { _local8 = _local5[_local7]; _local8.notifyStyleChangeInChildren(_arg1, true); _local7++; }; } private function clearStyleAttr(_arg1:String):void{ var _local2:*; if (!overrides){ overrides = {}; }; overrides[_arg1] = undefined; for (_local2 in clones) { delete _local2[_arg1]; }; } mx_internal function createProtoChainRoot():Object{ var _local1:Object = {}; if (defaultFactory != null){ defaultFactory.prototype = _local1; _local1 = new defaultFactory(); }; if (factory != null){ factory.prototype = _local1; _local1 = new factory(); }; clones[_local1] = 1; return (_local1); } mx_internal function clearOverride(_arg1:String):void{ if (((overrides) && (overrides[_arg1]))){ delete overrides[_arg1]; }; } mx_internal function setStyle(_arg1:String, _arg2):void{ var _local3:Object; var _local4:*; var _local5:Number; var _local6:Object; if (_arg2 === undefined){ clearStyleAttr(_arg1); return; }; if ((_arg2 is String)){ if (!styleManager){ styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2); }; _local5 = styleManager.getColorName(_arg2); if (_local5 != NOT_A_COLOR){ _arg2 = _local5; }; }; if (defaultFactory != null){ _local3 = new defaultFactory(); if (_local3[_arg1] !== _arg2){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; } else { if (overrides){ delete overrides[_arg1]; }; }; }; if (factory != null){ _local3 = new factory(); if (_local3[_arg1] !== _arg2){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; } else { if (overrides){ delete overrides[_arg1]; }; }; }; if ((((defaultFactory == null)) && ((factory == null)))){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; }; for (_local4 in clones) { _local6 = _local4[FILTERMAP_PROP]; if (_local6){ if (_local6[_arg1] != null){ _local4[_local6[_arg1]] = _arg2; }; } else { _local4[_arg1] = _arg2; }; }; } } }//package mx.styles
Section 354
//ISimpleStyleClient (mx.styles.ISimpleStyleClient) package mx.styles { public interface ISimpleStyleClient { function set styleName(_arg1:Object):void; function styleChanged(_arg1:String):void; function get styleName():Object; } }//package mx.styles
Section 355
//IStyleClient (mx.styles.IStyleClient) package mx.styles { public interface IStyleClient extends ISimpleStyleClient { function regenerateStyleCache(_arg1:Boolean):void; function get className():String; function clearStyle(_arg1:String):void; function getClassStyleDeclarations():Array; function get inheritingStyles():Object; function set nonInheritingStyles(_arg1:Object):void; function setStyle(_arg1:String, _arg2):void; function get styleDeclaration():CSSStyleDeclaration; function set styleDeclaration(_arg1:CSSStyleDeclaration):void; function get nonInheritingStyles():Object; function set inheritingStyles(_arg1:Object):void; function getStyle(_arg1:String); function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void; function registerEffects(_arg1:Array):void; } }//package mx.styles
Section 356
//IStyleManager (mx.styles.IStyleManager) package mx.styles { import flash.events.*; public interface IStyleManager { function isColorName(_arg1:String):Boolean; function registerParentDisplayListInvalidatingStyle(_arg1:String):void; function registerInheritingStyle(_arg1:String):void; function set stylesRoot(_arg1:Object):void; function get typeSelectorCache():Object; function styleDeclarationsChanged():void; function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void; function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean; function isSizeInvalidatingStyle(_arg1:String):Boolean; function get inheritingStyles():Object; function isValidStyleValue(_arg1):Boolean; function isParentSizeInvalidatingStyle(_arg1:String):Boolean; function getColorName(_arg1:Object):uint; function set typeSelectorCache(_arg1:Object):void; function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void; function getColorNames(_arg1:Array):void; function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher; function isInheritingStyle(_arg1:String):Boolean; function set inheritingStyles(_arg1:Object):void; function get stylesRoot():Object; function initProtoChainRoots():void; function registerColorName(_arg1:String, _arg2:uint):void; function registerParentSizeInvalidatingStyle(_arg1:String):void; function registerSizeInvalidatingStyle(_arg1:String):void; function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void; function isInheritingTextFormatStyle(_arg1:String):Boolean; function getStyleDeclaration(_arg1:String):CSSStyleDeclaration; } }//package mx.styles
Section 357
//IStyleManager2 (mx.styles.IStyleManager2) package mx.styles { import flash.events.*; import flash.system.*; public interface IStyleManager2 extends IStyleManager { function get selectors():Array; function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher; } }//package mx.styles
Section 358
//IStyleModule (mx.styles.IStyleModule) package mx.styles { public interface IStyleModule { function unload():void; } }//package mx.styles
Section 359
//StyleManager (mx.styles.StyleManager) package mx.styles { import mx.core.*; import flash.events.*; import flash.system.*; public class StyleManager { mx_internal static const VERSION:String = "3.2.0.3794"; public static const NOT_A_COLOR:uint = 4294967295; private static var _impl:IStyleManager2; private static var implClassDependency:StyleManagerImpl; public static function isParentSizeInvalidatingStyle(_arg1:String):Boolean{ return (impl.isParentSizeInvalidatingStyle(_arg1)); } public static function registerInheritingStyle(_arg1:String):void{ impl.registerInheritingStyle(_arg1); } mx_internal static function set stylesRoot(_arg1:Object):void{ impl.stylesRoot = _arg1; } mx_internal static function get inheritingStyles():Object{ return (impl.inheritingStyles); } mx_internal static function styleDeclarationsChanged():void{ impl.styleDeclarationsChanged(); } public static function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{ impl.setStyleDeclaration(_arg1, _arg2, _arg3); } public static function registerParentDisplayListInvalidatingStyle(_arg1:String):void{ impl.registerParentDisplayListInvalidatingStyle(_arg1); } mx_internal static function get typeSelectorCache():Object{ return (impl.typeSelectorCache); } mx_internal static function set inheritingStyles(_arg1:Object):void{ impl.inheritingStyles = _arg1; } public static function isColorName(_arg1:String):Boolean{ return (impl.isColorName(_arg1)); } public static function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{ return (impl.isParentDisplayListInvalidatingStyle(_arg1)); } public static function isSizeInvalidatingStyle(_arg1:String):Boolean{ return (impl.isSizeInvalidatingStyle(_arg1)); } public static function getColorName(_arg1:Object):uint{ return (impl.getColorName(_arg1)); } mx_internal static function set typeSelectorCache(_arg1:Object):void{ impl.typeSelectorCache = _arg1; } public static function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{ impl.unloadStyleDeclarations(_arg1, _arg2); } public static function getColorNames(_arg1:Array):void{ impl.getColorNames(_arg1); } public static function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false, _arg4:ApplicationDomain=null, _arg5:SecurityDomain=null):IEventDispatcher{ return (impl.loadStyleDeclarations2(_arg1, _arg2, _arg4, _arg5)); } private static function get impl():IStyleManager2{ if (!_impl){ _impl = IStyleManager2(Singleton.getInstance("mx.styles::IStyleManager2")); }; return (_impl); } public static function isValidStyleValue(_arg1):Boolean{ return (impl.isValidStyleValue(_arg1)); } mx_internal static function get stylesRoot():Object{ return (impl.stylesRoot); } public static function isInheritingStyle(_arg1:String):Boolean{ return (impl.isInheritingStyle(_arg1)); } mx_internal static function initProtoChainRoots():void{ impl.initProtoChainRoots(); } public static function registerParentSizeInvalidatingStyle(_arg1:String):void{ impl.registerParentSizeInvalidatingStyle(_arg1); } public static function get selectors():Array{ return (impl.selectors); } public static function registerSizeInvalidatingStyle(_arg1:String):void{ impl.registerSizeInvalidatingStyle(_arg1); } public static function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{ impl.clearStyleDeclaration(_arg1, _arg2); } public static function registerColorName(_arg1:String, _arg2:uint):void{ impl.registerColorName(_arg1, _arg2); } public static function isInheritingTextFormatStyle(_arg1:String):Boolean{ return (impl.isInheritingTextFormatStyle(_arg1)); } public static function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{ return (impl.getStyleDeclaration(_arg1)); } } }//package mx.styles
Section 360
//StyleManagerImpl (mx.styles.StyleManagerImpl) package mx.styles { import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.resources.*; import flash.system.*; import mx.modules.*; import flash.utils.*; public class StyleManagerImpl implements IStyleManager2 { private var _stylesRoot:Object; private var _selectors:Object; private var styleModules:Object; private var _inheritingStyles:Object; private var resourceManager:IResourceManager; private var _typeSelectorCache:Object; mx_internal static const VERSION:String = "3.2.0.3794"; private static var parentSizeInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true}; private static var colorNames:Object = {transparent:"transparent", black:0, blue:0xFF, green:0x8000, gray:0x808080, silver:0xC0C0C0, lime:0xFF00, olive:0x808000, white:0xFFFFFF, yellow:0xFFFF00, maroon:0x800000, navy:128, red:0xFF0000, purple:0x800080, teal:0x8080, fuchsia:0xFF00FF, aqua:0xFFFF, magenta:0xFF00FF, cyan:0xFFFF, halogreen:8453965, haloblue:40447, haloorange:0xFFB600, halosilver:11455193}; private static var inheritingTextFormatStyles:Object = {align:true, bold:true, color:true, font:true, indent:true, italic:true, size:true}; private static var instance:IStyleManager2; private static var parentDisplayListInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true}; private static var sizeInvalidatingStyles:Object = {borderStyle:true, borderThickness:true, fontAntiAliasType:true, fontFamily:true, fontGridFitType:true, fontSharpness:true, fontSize:true, fontStyle:true, fontThickness:true, fontWeight:true, headerHeight:true, horizontalAlign:true, horizontalGap:true, kerning:true, leading:true, letterSpacing:true, paddingBottom:true, paddingLeft:true, paddingRight:true, paddingTop:true, strokeWidth:true, tabHeight:true, tabWidth:true, verticalAlign:true, verticalGap:true}; public function StyleManagerImpl(){ _selectors = {}; styleModules = {}; resourceManager = ResourceManager.getInstance(); _inheritingStyles = {}; _typeSelectorCache = {}; super(); } public function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{ _arg2.selectorRefCount++; _selectors[_arg1] = _arg2; typeSelectorCache = {}; if (_arg3){ styleDeclarationsChanged(); }; } public function registerParentDisplayListInvalidatingStyle(_arg1:String):void{ parentDisplayListInvalidatingStyles[_arg1] = true; } public function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{ var _local2:int; if (_arg1.charAt(0) != "."){ _local2 = _arg1.lastIndexOf("."); if (_local2 != -1){ _arg1 = _arg1.substr((_local2 + 1)); }; }; return (_selectors[_arg1]); } public function set typeSelectorCache(_arg1:Object):void{ _typeSelectorCache = _arg1; } public function isColorName(_arg1:String):Boolean{ return (!((colorNames[_arg1.toLowerCase()] === undefined))); } public function set inheritingStyles(_arg1:Object):void{ _inheritingStyles = _arg1; } public function getColorNames(_arg1:Array):void{ var _local4:uint; if (!_arg1){ return; }; var _local2:int = _arg1.length; var _local3:int; while (_local3 < _local2) { if (((!((_arg1[_local3] == null))) && (isNaN(_arg1[_local3])))){ _local4 = getColorName(_arg1[_local3]); if (_local4 != StyleManager.NOT_A_COLOR){ _arg1[_local3] = _local4; }; }; _local3++; }; } public function isInheritingTextFormatStyle(_arg1:String):Boolean{ return ((inheritingTextFormatStyles[_arg1] == true)); } public function registerParentSizeInvalidatingStyle(_arg1:String):void{ parentSizeInvalidatingStyles[_arg1] = true; } public function registerColorName(_arg1:String, _arg2:uint):void{ colorNames[_arg1.toLowerCase()] = _arg2; } public function isParentSizeInvalidatingStyle(_arg1:String):Boolean{ return ((parentSizeInvalidatingStyles[_arg1] == true)); } public function registerInheritingStyle(_arg1:String):void{ inheritingStyles[_arg1] = true; } public function set stylesRoot(_arg1:Object):void{ _stylesRoot = _arg1; } public function get typeSelectorCache():Object{ return (_typeSelectorCache); } public function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{ return ((parentDisplayListInvalidatingStyles[_arg1] == true)); } public function isSizeInvalidatingStyle(_arg1:String):Boolean{ return ((sizeInvalidatingStyles[_arg1] == true)); } public function styleDeclarationsChanged():void{ var _local4:Object; var _local1:Array = SystemManagerGlobals.topLevelSystemManagers; var _local2:int = _local1.length; var _local3:int; while (_local3 < _local2) { _local4 = _local1[_local3]; _local4.regenerateStyleCache(true); _local4.notifyStyleChangeInChildren(null, true); _local3++; }; } public function isValidStyleValue(_arg1):Boolean{ return (!((_arg1 === undefined))); } public function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher{ return (loadStyleDeclarations2(_arg1, _arg2)); } public function get inheritingStyles():Object{ return (_inheritingStyles); } public function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{ var _local4:IModuleInfo; var _local3:StyleModuleInfo = styleModules[_arg1]; if (_local3){ _local3.styleModule.unload(); _local4 = _local3.module; _local4.unload(); _local4.removeEventListener(ModuleEvent.READY, _local3.readyHandler); _local4.removeEventListener(ModuleEvent.ERROR, _local3.errorHandler); styleModules[_arg1] = null; }; if (_arg2){ styleDeclarationsChanged(); }; } public function getColorName(_arg1:Object):uint{ var _local2:Number; var _local3:*; if ((_arg1 is String)){ if (_arg1.charAt(0) == "#"){ _local2 = Number(("0x" + _arg1.slice(1))); return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2)); }; if ((((_arg1.charAt(1) == "x")) && ((_arg1.charAt(0) == "0")))){ _local2 = Number(_arg1); return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2)); }; _local3 = colorNames[_arg1.toLowerCase()]; if (_local3 === undefined){ return (StyleManager.NOT_A_COLOR); }; return (uint(_local3)); }; return (uint(_arg1)); } public function isInheritingStyle(_arg1:String):Boolean{ return ((inheritingStyles[_arg1] == true)); } public function get stylesRoot():Object{ return (_stylesRoot); } public function initProtoChainRoots():void{ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ delete _inheritingStyles["textDecoration"]; delete _inheritingStyles["leading"]; }; if (!stylesRoot){ stylesRoot = _selectors["global"].addStyleToProtoChain({}, null); }; } public function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{ var module:IModuleInfo; var styleEventDispatcher:StyleEventDispatcher; var timer:Timer; var timerHandler:Function; var url = _arg1; var update = _arg2; var applicationDomain = _arg3; var securityDomain = _arg4; module = ModuleManager.getModule(url); var readyHandler:Function = function (_arg1:ModuleEvent):void{ var _local2:IStyleModule = IStyleModule(_arg1.module.factory.create()); styleModules[_arg1.module.url].styleModule = _local2; if (update){ styleDeclarationsChanged(); }; }; module.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true); styleEventDispatcher = new StyleEventDispatcher(module); var errorHandler:Function = function (_arg1:ModuleEvent):void{ var _local3:StyleEvent; var _local2:String = resourceManager.getString("styles", "unableToLoad", [_arg1.errorText, url]); if (styleEventDispatcher.willTrigger(StyleEvent.ERROR)){ _local3 = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local3.bytesLoaded = 0; _local3.bytesTotal = 0; _local3.errorText = _local2; styleEventDispatcher.dispatchEvent(_local3); } else { throw (new Error(_local2)); }; }; module.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true); styleModules[url] = new StyleModuleInfo(module, readyHandler, errorHandler); timer = new Timer(0); timerHandler = function (_arg1:TimerEvent):void{ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.stop(); module.load(applicationDomain, securityDomain); }; timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true); timer.start(); return (styleEventDispatcher); } public function registerSizeInvalidatingStyle(_arg1:String):void{ sizeInvalidatingStyles[_arg1] = true; } public function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{ var _local3:CSSStyleDeclaration = getStyleDeclaration(_arg1); if (((_local3) && ((_local3.selectorRefCount > 0)))){ _local3.selectorRefCount--; }; delete _selectors[_arg1]; if (_arg2){ styleDeclarationsChanged(); }; } public function get selectors():Array{ var _local2:String; var _local1:Array = []; for (_local2 in _selectors) { _local1.push(_local2); }; return (_local1); } public static function getInstance():IStyleManager2{ if (!instance){ instance = new (StyleManagerImpl); }; return (instance); } } }//package mx.styles import flash.events.*; import mx.events.*; import mx.modules.*; class StyleEventDispatcher extends EventDispatcher { private function StyleEventDispatcher(_arg1:IModuleInfo){ _arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true); } private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.COMPLETE); dispatchEvent(_local2); } private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; _local2.errorText = _arg1.errorText; dispatchEvent(_local2); } } class StyleModuleInfo { public var errorHandler:Function; public var readyHandler:Function; public var module:IModuleInfo; public var styleModule:IStyleModule; private function StyleModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){ this.module = _arg1; this.readyHandler = _arg2; this.errorHandler = _arg3; } }
Section 361
//StyleProtoChain (mx.styles.StyleProtoChain) package mx.styles { import flash.display.*; import mx.core.*; public class StyleProtoChain { mx_internal static const VERSION:String = "3.2.0.3794"; public static function initProtoChainForUIComponentStyleName(_arg1:IStyleClient):void{ var _local9:CSSStyleDeclaration; var _local2:IStyleClient = IStyleClient(_arg1.styleName); var _local3:DisplayObject = (_arg1 as DisplayObject); var _local4:Object = _local2.nonInheritingStyles; if (((!(_local4)) || ((_local4 == UIComponent.STYLE_UNINITIALIZED)))){ _local4 = StyleManager.stylesRoot; if (_local4.effects){ _arg1.registerEffects(_local4.effects); }; }; var _local5:Object = _local2.inheritingStyles; if (((!(_local5)) || ((_local5 == UIComponent.STYLE_UNINITIALIZED)))){ _local5 = StyleManager.stylesRoot; }; var _local6:Array = _arg1.getClassStyleDeclarations(); var _local7:int = _local6.length; if ((_local2 is StyleProxy)){ if (_local7 == 0){ _local4 = addProperties(_local4, _local2, false); }; _local3 = (StyleProxy(_local2).source as DisplayObject); }; var _local8:int; while (_local8 < _local7) { _local9 = _local6[_local8]; _local5 = _local9.addStyleToProtoChain(_local5, _local3); _local5 = addProperties(_local5, _local2, true); _local4 = _local9.addStyleToProtoChain(_local4, _local3); _local4 = addProperties(_local4, _local2, false); if (_local9.effects){ _arg1.registerEffects(_local9.effects); }; _local8++; }; _arg1.inheritingStyles = (_arg1.styleDeclaration) ? _arg1.styleDeclaration.addStyleToProtoChain(_local5, _local3) : _local5; _arg1.nonInheritingStyles = (_arg1.styleDeclaration) ? _arg1.styleDeclaration.addStyleToProtoChain(_local4, _local3) : _local4; } private static function addProperties(_arg1:Object, _arg2:IStyleClient, _arg3:Boolean):Object{ var _local11:CSSStyleDeclaration; var _local12:CSSStyleDeclaration; var _local4:Object = ((((_arg2 is StyleProxy)) && (!(_arg3)))) ? StyleProxy(_arg2).filterMap : null; var _local5:IStyleClient = _arg2; while ((_local5 is StyleProxy)) { _local5 = StyleProxy(_local5).source; }; var _local6:DisplayObject = (_local5 as DisplayObject); var _local7:Array = _arg2.getClassStyleDeclarations(); var _local8:int = _local7.length; var _local9:int; while (_local9 < _local8) { _local11 = _local7[_local9]; _arg1 = _local11.addStyleToProtoChain(_arg1, _local6, _local4); if (_local11.effects){ _arg2.registerEffects(_local11.effects); }; _local9++; }; var _local10:Object = _arg2.styleName; if (_local10){ if (typeof(_local10) == "object"){ if ((_local10 is CSSStyleDeclaration)){ _local12 = CSSStyleDeclaration(_local10); } else { _arg1 = addProperties(_arg1, IStyleClient(_local10), _arg3); }; } else { _local12 = StyleManager.getStyleDeclaration(("." + _local10)); }; if (_local12){ _arg1 = _local12.addStyleToProtoChain(_arg1, _local6, _local4); if (_local12.effects){ _arg2.registerEffects(_local12.effects); }; }; }; if (_arg2.styleDeclaration){ _arg1 = _arg2.styleDeclaration.addStyleToProtoChain(_arg1, _local6, _local4); }; return (_arg1); } public static function initTextField(_arg1:IUITextField):void{ var _local3:CSSStyleDeclaration; var _local2:Object = _arg1.styleName; if (_local2){ if (typeof(_local2) == "object"){ if ((_local2 is CSSStyleDeclaration)){ _local3 = CSSStyleDeclaration(_local2); } else { if ((_local2 is StyleProxy)){ _arg1.inheritingStyles = IStyleClient(_local2).inheritingStyles; _arg1.nonInheritingStyles = addProperties(StyleManager.stylesRoot, IStyleClient(_local2), false); return; }; _arg1.inheritingStyles = IStyleClient(_local2).inheritingStyles; _arg1.nonInheritingStyles = IStyleClient(_local2).nonInheritingStyles; return; }; } else { _local3 = StyleManager.getStyleDeclaration(("." + _local2)); }; }; var _local4:Object = IStyleClient(_arg1.parent).inheritingStyles; var _local5:Object = StyleManager.stylesRoot; if (!_local4){ _local4 = StyleManager.stylesRoot; }; if (_local3){ _local4 = _local3.addStyleToProtoChain(_local4, DisplayObject(_arg1)); _local5 = _local3.addStyleToProtoChain(_local5, DisplayObject(_arg1)); }; _arg1.inheritingStyles = _local4; _arg1.nonInheritingStyles = _local5; } } }//package mx.styles
Section 362
//StyleProxy (mx.styles.StyleProxy) package mx.styles { import mx.core.*; public class StyleProxy implements IStyleClient { private var _source:IStyleClient; private var _filterMap:Object; mx_internal static const VERSION:String = "3.2.0.3794"; public function StyleProxy(_arg1:IStyleClient, _arg2:Object){ this.filterMap = _arg2; this.source = _arg1; } public function styleChanged(_arg1:String):void{ return (_source.styleChanged(_arg1)); } public function get filterMap():Object{ return (((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) ? null : _filterMap); } public function set filterMap(_arg1:Object):void{ _filterMap = _arg1; } public function get styleDeclaration():CSSStyleDeclaration{ return (_source.styleDeclaration); } public function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{ return (_source.notifyStyleChangeInChildren(_arg1, _arg2)); } public function set inheritingStyles(_arg1:Object):void{ } public function get source():IStyleClient{ return (_source); } public function get styleName():Object{ if ((_source.styleName is IStyleClient)){ return (new StyleProxy(IStyleClient(_source.styleName), filterMap)); }; return (_source.styleName); } public function registerEffects(_arg1:Array):void{ return (_source.registerEffects(_arg1)); } public function regenerateStyleCache(_arg1:Boolean):void{ _source.regenerateStyleCache(_arg1); } public function get inheritingStyles():Object{ return (_source.inheritingStyles); } public function get className():String{ return (_source.className); } public function clearStyle(_arg1:String):void{ _source.clearStyle(_arg1); } public function getClassStyleDeclarations():Array{ return (_source.getClassStyleDeclarations()); } public function set nonInheritingStyles(_arg1:Object):void{ } public function setStyle(_arg1:String, _arg2):void{ _source.setStyle(_arg1, _arg2); } public function get nonInheritingStyles():Object{ return (((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) ? _source.nonInheritingStyles : null); } public function set styleName(_arg1:Object):void{ _source.styleName = _arg1; } public function getStyle(_arg1:String){ return (_source.getStyle(_arg1)); } public function set source(_arg1:IStyleClient):void{ _source = _arg1; } public function set styleDeclaration(_arg1:CSSStyleDeclaration):void{ _source.styleDeclaration = styleDeclaration; } } }//package mx.styles
Section 363
//ArrayUtil (mx.utils.ArrayUtil) package mx.utils { public class ArrayUtil { mx_internal static const VERSION:String = "3.2.0.3794"; public static function getItemIndex(_arg1:Object, _arg2:Array):int{ var _local3:int = _arg2.length; var _local4:int; while (_local4 < _local3) { if (_arg2[_local4] === _arg1){ return (_local4); }; _local4++; }; return (-1); } public static function toArray(_arg1:Object):Array{ if (!_arg1){ return ([]); }; if ((_arg1 is Array)){ return ((_arg1 as Array)); }; return ([_arg1]); } } }//package mx.utils
Section 364
//ColorUtil (mx.utils.ColorUtil) package mx.utils { public class ColorUtil { mx_internal static const VERSION:String = "3.2.0.3794"; public static function adjustBrightness2(_arg1:uint, _arg2:Number):uint{ var _local3:Number; var _local4:Number; var _local5:Number; if (_arg2 == 0){ return (_arg1); }; if (_arg2 < 0){ _arg2 = ((100 + _arg2) / 100); _local3 = (((_arg1 >> 16) & 0xFF) * _arg2); _local4 = (((_arg1 >> 8) & 0xFF) * _arg2); _local5 = ((_arg1 & 0xFF) * _arg2); } else { _arg2 = (_arg2 / 100); _local3 = ((_arg1 >> 16) & 0xFF); _local4 = ((_arg1 >> 8) & 0xFF); _local5 = (_arg1 & 0xFF); _local3 = (_local3 + ((0xFF - _local3) * _arg2)); _local4 = (_local4 + ((0xFF - _local4) * _arg2)); _local5 = (_local5 + ((0xFF - _local5) * _arg2)); _local3 = Math.min(_local3, 0xFF); _local4 = Math.min(_local4, 0xFF); _local5 = Math.min(_local5, 0xFF); }; return ((((_local3 << 16) | (_local4 << 8)) | _local5)); } public static function rgbMultiply(_arg1:uint, _arg2:uint):uint{ var _local3:Number = ((_arg1 >> 16) & 0xFF); var _local4:Number = ((_arg1 >> 8) & 0xFF); var _local5:Number = (_arg1 & 0xFF); var _local6:Number = ((_arg2 >> 16) & 0xFF); var _local7:Number = ((_arg2 >> 8) & 0xFF); var _local8:Number = (_arg2 & 0xFF); return ((((((_local3 * _local6) / 0xFF) << 16) | (((_local4 * _local7) / 0xFF) << 8)) | ((_local5 * _local8) / 0xFF))); } public static function adjustBrightness(_arg1:uint, _arg2:Number):uint{ var _local3:Number = Math.max(Math.min((((_arg1 >> 16) & 0xFF) + _arg2), 0xFF), 0); var _local4:Number = Math.max(Math.min((((_arg1 >> 8) & 0xFF) + _arg2), 0xFF), 0); var _local5:Number = Math.max(Math.min(((_arg1 & 0xFF) + _arg2), 0xFF), 0); return ((((_local3 << 16) | (_local4 << 8)) | _local5)); } } }//package mx.utils
Section 365
//DescribeTypeCache (mx.utils.DescribeTypeCache) package mx.utils { import mx.binding.*; import flash.utils.*; public class DescribeTypeCache { mx_internal static const VERSION:String = "3.2.0.3794"; private static var cacheHandlers:Object = {}; private static var typeCache:Object = {}; public static function describeType(_arg1):DescribeTypeCacheRecord{ var _local2:String; var _local3:XML; var _local4:DescribeTypeCacheRecord; if ((_arg1 is String)){ _local2 = _arg1; } else { _local2 = getQualifiedClassName(_arg1); }; if ((_local2 in typeCache)){ return (typeCache[_local2]); }; if ((_arg1 is String)){ _arg1 = getDefinitionByName(_arg1); }; _local3 = describeType(_arg1); _local4 = new DescribeTypeCacheRecord(); _local4.typeDescription = _local3; _local4.typeName = _local2; typeCache[_local2] = _local4; return (_local4); } public static function registerCacheHandler(_arg1:String, _arg2:Function):void{ cacheHandlers[_arg1] = _arg2; } static function extractValue(_arg1:String, _arg2:DescribeTypeCacheRecord){ if ((_arg1 in cacheHandlers)){ return (cacheHandlers[_arg1](_arg2)); }; return (undefined); } private static function bindabilityInfoHandler(_arg1:DescribeTypeCacheRecord){ return (new BindabilityInfo(_arg1.typeDescription)); } registerCacheHandler("bindabilityInfo", bindabilityInfoHandler); } }//package mx.utils
Section 366
//DescribeTypeCacheRecord (mx.utils.DescribeTypeCacheRecord) package mx.utils { import flash.utils.*; public dynamic class DescribeTypeCacheRecord extends Proxy { public var typeDescription:XML; public var typeName:String; private var cache:Object; public function DescribeTypeCacheRecord(){ cache = {}; super(); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ var _local2:* = cache[_arg1]; if (_local2 === undefined){ _local2 = DescribeTypeCache.extractValue(_arg1, this); cache[_arg1] = _local2; }; return (_local2); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function hasProperty(_arg1):Boolean{ if ((_arg1 in cache)){ return (true); }; var _local2:* = DescribeTypeCache.extractValue(_arg1, this); if (_local2 === undefined){ return (false); }; cache[_arg1] = _local2; return (true); } } }//package mx.utils
Section 367
//EventUtil (mx.utils.EventUtil) package mx.utils { import mx.core.*; import flash.events.*; import mx.events.*; public class EventUtil { mx_internal static const VERSION:String = "3.2.0.3794"; private static var _sandboxEventMap:Object; private static var _mouseEventMap:Object; public static function get sandboxMouseEventMap():Object{ if (!_sandboxEventMap){ _sandboxEventMap = {}; _sandboxEventMap[SandboxMouseEvent.CLICK_SOMEWHERE] = MouseEvent.CLICK; _sandboxEventMap[SandboxMouseEvent.DOUBLE_CLICK_SOMEWHERE] = MouseEvent.DOUBLE_CLICK; _sandboxEventMap[SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE] = MouseEvent.MOUSE_DOWN; _sandboxEventMap[SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE] = MouseEvent.MOUSE_MOVE; _sandboxEventMap[SandboxMouseEvent.MOUSE_UP_SOMEWHERE] = MouseEvent.MOUSE_UP; _sandboxEventMap[SandboxMouseEvent.MOUSE_WHEEL_SOMEWHERE] = MouseEvent.MOUSE_WHEEL; }; return (_sandboxEventMap); } public static function get mouseEventMap():Object{ if (!_mouseEventMap){ _mouseEventMap = {}; _mouseEventMap[MouseEvent.CLICK] = SandboxMouseEvent.CLICK_SOMEWHERE; _mouseEventMap[MouseEvent.DOUBLE_CLICK] = SandboxMouseEvent.DOUBLE_CLICK_SOMEWHERE; _mouseEventMap[MouseEvent.MOUSE_DOWN] = SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE; _mouseEventMap[MouseEvent.MOUSE_MOVE] = SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE; _mouseEventMap[MouseEvent.MOUSE_UP] = SandboxMouseEvent.MOUSE_UP_SOMEWHERE; _mouseEventMap[MouseEvent.MOUSE_WHEEL] = SandboxMouseEvent.MOUSE_WHEEL_SOMEWHERE; }; return (_mouseEventMap); } } }//package mx.utils
Section 368
//GraphicsUtil (mx.utils.GraphicsUtil) package mx.utils { import flash.display.*; import mx.core.*; public class GraphicsUtil { mx_internal static const VERSION:String = "3.2.0.3794"; public static function drawRoundRectComplex(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number):void{ var _local10:Number = (_arg2 + _arg4); var _local11:Number = (_arg3 + _arg5); var _local12:Number = ((_arg4 < _arg5)) ? (_arg4 * 2) : (_arg5 * 2); _arg6 = ((_arg6 < _local12)) ? _arg6 : _local12; _arg7 = ((_arg7 < _local12)) ? _arg7 : _local12; _arg8 = ((_arg8 < _local12)) ? _arg8 : _local12; _arg9 = ((_arg9 < _local12)) ? _arg9 : _local12; var _local13:Number = (_arg9 * 0.292893218813453); var _local14:Number = (_arg9 * 0.585786437626905); _arg1.moveTo(_local10, (_local11 - _arg9)); _arg1.curveTo(_local10, (_local11 - _local14), (_local10 - _local13), (_local11 - _local13)); _arg1.curveTo((_local10 - _local14), _local11, (_local10 - _arg9), _local11); _local13 = (_arg8 * 0.292893218813453); _local14 = (_arg8 * 0.585786437626905); _arg1.lineTo((_arg2 + _arg8), _local11); _arg1.curveTo((_arg2 + _local14), _local11, (_arg2 + _local13), (_local11 - _local13)); _arg1.curveTo(_arg2, (_local11 - _local14), _arg2, (_local11 - _arg8)); _local13 = (_arg6 * 0.292893218813453); _local14 = (_arg6 * 0.585786437626905); _arg1.lineTo(_arg2, (_arg3 + _arg6)); _arg1.curveTo(_arg2, (_arg3 + _local14), (_arg2 + _local13), (_arg3 + _local13)); _arg1.curveTo((_arg2 + _local14), _arg3, (_arg2 + _arg6), _arg3); _local13 = (_arg7 * 0.292893218813453); _local14 = (_arg7 * 0.585786437626905); _arg1.lineTo((_local10 - _arg7), _arg3); _arg1.curveTo((_local10 - _local14), _arg3, (_local10 - _local13), (_arg3 + _local13)); _arg1.curveTo(_local10, (_arg3 + _local14), _local10, (_arg3 + _arg7)); _arg1.lineTo(_local10, (_local11 - _arg9)); } } }//package mx.utils
Section 369
//IXMLNotifiable (mx.utils.IXMLNotifiable) package mx.utils { public interface IXMLNotifiable { function xmlNotification(_arg1:Object, _arg2:String, _arg3:Object, _arg4:Object, _arg5:Object):void; } }//package mx.utils
Section 370
//LoaderUtil (mx.utils.LoaderUtil) package mx.utils { import flash.display.*; public class LoaderUtil { public static function normalizeURL(_arg1:LoaderInfo):String{ var _local2:String = _arg1.url; var _local3:Array = _local2.split("/[[DYNAMIC]]/"); return (_local3[0]); } public static function createAbsoluteURL(_arg1:String, _arg2:String):String{ var _local4:int; var _local5:int; var _local3:String = _arg2; if (!(((((_arg2.indexOf(":") > -1)) || ((_arg2.indexOf("/") == 0)))) || ((_arg2.indexOf("\\") == 0)))){ if (_arg1){ _local4 = Math.max(_arg1.lastIndexOf("\\"), _arg1.lastIndexOf("/")); if (_local4 <= 8){ _arg1 = (_arg1 + "/"); _local4 = (_arg1.length - 1); }; if (_arg2.indexOf("./") == 0){ _arg2 = _arg2.substring(2); } else { while (_arg2.indexOf("../") == 0) { _arg2 = _arg2.substring(3); _local5 = Math.max(_arg1.lastIndexOf("\\", (_local4 - 1)), _arg1.lastIndexOf("/", (_local4 - 1))); if (_local5 <= 8){ _local5 = _local4; }; _local4 = _local5; }; }; if (_local4 != -1){ _local3 = (_arg1.substr(0, (_local4 + 1)) + _arg2); }; }; }; return (_local3); } } }//package mx.utils
Section 371
//NameUtil (mx.utils.NameUtil) package mx.utils { import flash.display.*; import mx.core.*; import flash.utils.*; public class NameUtil { mx_internal static const VERSION:String = "3.2.0.3794"; private static var counter:int = 0; public static function displayObjectToString(_arg1:DisplayObject):String{ var result:String; var o:DisplayObject; var s:String; var indices:Array; var displayObject = _arg1; try { o = displayObject; while (o != null) { if (((((o.parent) && (o.stage))) && ((o.parent == o.stage)))){ break; }; s = o.name; if ((o is IRepeaterClient)){ indices = IRepeaterClient(o).instanceIndices; if (indices){ s = (s + (("[" + indices.join("][")) + "]")); }; }; result = ((result == null)) ? s : ((s + ".") + result); o = o.parent; }; } catch(e:SecurityError) { }; return (result); } public static function createUniqueName(_arg1:Object):String{ if (!_arg1){ return (null); }; var _local2:String = getQualifiedClassName(_arg1); var _local3:int = _local2.indexOf("::"); if (_local3 != -1){ _local2 = _local2.substr((_local3 + 2)); }; var _local4:int = _local2.charCodeAt((_local2.length - 1)); if ((((_local4 >= 48)) && ((_local4 <= 57)))){ _local2 = (_local2 + "_"); }; return ((_local2 + counter++)); } } }//package mx.utils
Section 372
//object_proxy (mx.utils.object_proxy) package mx.utils { public namespace object_proxy = "http://www.adobe.com/2006/actionscript/flash/objectproxy"; }//package mx.utils
Section 373
//ObjectProxy (mx.utils.ObjectProxy) package mx.utils { import mx.core.*; import flash.events.*; import mx.events.*; import flash.utils.*; public dynamic class ObjectProxy extends Proxy implements IExternalizable, IPropertyChangeNotifier { private var _id:String; protected var notifiers:Object; protected var propertyList:Array; private var _proxyLevel:int; private var _type:QName; protected var dispatcher:EventDispatcher; protected var proxyClass:Class; private var _item:Object; public function ObjectProxy(_arg1:Object=null, _arg2:String=null, _arg3:int=-1){ proxyClass = ObjectProxy; super(); if (!_arg1){ _arg1 = {}; }; _item = _arg1; _proxyLevel = _arg3; notifiers = {}; dispatcher = new EventDispatcher(this); if (_arg2){ _id = _arg2; }; } public function dispatchEvent(_arg1:Event):Boolean{ return (dispatcher.dispatchEvent(_arg1)); } public function hasEventListener(_arg1:String):Boolean{ return (dispatcher.hasEventListener(_arg1)); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var _local4:IPropertyChangeNotifier; var _local5:PropertyChangeEvent; var _local3:* = _item[_arg1]; if (_local3 !== _arg2){ _item[_arg1] = _arg2; _local4 = IPropertyChangeNotifier(notifiers[_arg1]); if (_local4){ _local4.removeEventListener(PropertyChangeEvent.PROPERTY_CHANGE, propertyChangeHandler); delete notifiers[_arg1]; }; if (dispatcher.hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE)){ if ((_arg1 is QName)){ _arg1 = QName(_arg1).localName; }; _local5 = PropertyChangeEvent.createUpdateEvent(this, _arg1.toString(), _local3, _arg2); dispatcher.dispatchEvent(_local5); }; }; } public function willTrigger(_arg1:String):Boolean{ return (dispatcher.willTrigger(_arg1)); } public function readExternal(_arg1:IDataInput):void{ var _local2:Object = _arg1.readObject(); _item = _local2; } public function writeExternal(_arg1:IDataOutput):void{ _arg1.writeObject(_item); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ var _local2:*; if (notifiers[_arg1.toString()]){ return (notifiers[_arg1]); }; _local2 = _item[_arg1]; if (_local2){ if ((((_proxyLevel == 0)) || (ObjectUtil.isSimple(_local2)))){ return (_local2); }; _local2 = getComplexProperty(_arg1, _local2); }; return (_local2); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function hasProperty(_arg1):Boolean{ return ((_arg1 in _item)); } public function get uid():String{ if (_id === null){ _id = UIDUtil.createUID(); }; return (_id); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{ if (_arg1 == 0){ setupPropertyList(); }; if (_arg1 < propertyList.length){ return ((_arg1 + 1)); }; return (0); } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ dispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{ return (propertyList[(_arg1 - 1)]); } public function set uid(_arg1:String):void{ _id = _arg1; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function callProperty(_arg1, ... _args){ return (_item[_arg1].apply(_item, _args)); } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ dispatcher.removeEventListener(_arg1, _arg2, _arg3); } protected function setupPropertyList():void{ var _local1:String; if (getQualifiedClassName(_item) == "Object"){ propertyList = []; for (_local1 in _item) { propertyList.push(_local1); }; } else { propertyList = ObjectUtil.getClassInfo(_item, null, {includeReadOnly:true, uris:["*"]}).properties; }; } object_proxy function getComplexProperty(_arg1, _arg2){ if ((_arg2 is IPropertyChangeNotifier)){ _arg2.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, propertyChangeHandler); notifiers[_arg1] = _arg2; return (_arg2); }; if (getQualifiedClassName(_arg2) == "Object"){ _arg2 = new proxyClass(_item[_arg1], null, ((_proxyLevel > 0)) ? (_proxyLevel - 1) : _proxyLevel); _arg2.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, propertyChangeHandler); notifiers[_arg1] = _arg2; return (_arg2); }; return (_arg2); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function deleteProperty(_arg1):Boolean{ var _local5:PropertyChangeEvent; var _local2:IPropertyChangeNotifier = IPropertyChangeNotifier(notifiers[_arg1]); if (_local2){ _local2.removeEventListener(PropertyChangeEvent.PROPERTY_CHANGE, propertyChangeHandler); delete notifiers[_arg1]; }; var _local3:* = _item[_arg1]; var _local4 = delete _item[_arg1]; if (dispatcher.hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE)){ _local5 = new PropertyChangeEvent(PropertyChangeEvent.PROPERTY_CHANGE); _local5.kind = PropertyChangeEventKind.DELETE; _local5.property = _arg1; _local5.oldValue = _local3; _local5.source = this; dispatcher.dispatchEvent(_local5); }; return (_local4); } object_proxy function get type():QName{ return (_type); } object_proxy function set type(_arg1:QName):void{ _type = _arg1; } public function propertyChangeHandler(_arg1:PropertyChangeEvent):void{ dispatcher.dispatchEvent(_arg1); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextValue(_arg1:int){ return (_item[propertyList[(_arg1 - 1)]]); } object_proxy function get object():Object{ return (_item); } } }//package mx.utils
Section 374
//ObjectUtil (mx.utils.ObjectUtil) package mx.utils { import flash.utils.*; import mx.collections.*; import flash.xml.*; public class ObjectUtil { mx_internal static const VERSION:String = "3.2.0.3794"; private static var defaultToStringExcludes:Array = ["password", "credentials"]; private static var CLASS_INFO_CACHE:Object = {}; private static var refCount:int = 0; public static function isSimple(_arg1:Object):Boolean{ var _local2 = typeof(_arg1); switch (_local2){ case "number": case "string": case "boolean": return (true); case "object": return ((((_arg1 is Date)) || ((_arg1 is Array)))); }; return (false); } private static function internalToString(_arg1:Object, _arg2:int=0, _arg3:Dictionary=null, _arg4:Array=null, _arg5:Array=null):String{ var str:String; var classInfo:Object; var properties:Array; var id:Object; var isArray:Boolean; var isDict:Boolean; var prop:*; var j:int; var value = _arg1; var indent = _arg2; var refs = _arg3; var namespaceURIs = _arg4; var exclude = _arg5; var type:String = ((value == null)) ? "null" : typeof(value); switch (type){ case "boolean": case "number": return (value.toString()); case "string": return ((("\"" + value.toString()) + "\"")); case "object": if ((value is Date)){ return (value.toString()); }; if ((value is XMLNode)){ return (value.toString()); }; if ((value is Class)){ return ((("(" + getQualifiedClassName(value)) + ")")); }; classInfo = getClassInfo(value, exclude, {includeReadOnly:true, uris:namespaceURIs}); properties = classInfo.properties; str = (("(" + classInfo.name) + ")"); if (refs == null){ refs = new Dictionary(true); }; id = refs[value]; if (id != null){ str = (str + ("#" + int(id))); return (str); }; if (value != null){ str = (str + ("#" + refCount.toString())); refs[value] = refCount; refCount++; }; isArray = (value is Array); isDict = (value is Dictionary); indent = (indent + 2); j = 0; while (j < properties.length) { str = newline(str, indent); prop = properties[j]; if (isArray){ str = (str + "["); } else { if (isDict){ str = (str + "{"); }; }; if (isDict){ str = (str + internalToString(prop, indent, refs, namespaceURIs, exclude)); } else { str = (str + prop.toString()); }; if (isArray){ str = (str + "] "); } else { if (isDict){ str = (str + "} = "); } else { str = (str + " = "); }; }; try { str = (str + internalToString(value[prop], indent, refs, namespaceURIs, exclude)); } catch(e:Error) { str = (str + "?"); }; j = (j + 1); }; indent = (indent - 2); return (str); case "xml": return (value.toString()); default: return ((("(" + type) + ")")); }; } public static function getClassInfo(_arg1:Object, _arg2:Array=null, _arg3:Object=null):Object{ var n:int; var i:int; var result:Object; var cacheKey:String; var className:String; var classAlias:String; var properties:XMLList; var prop:XML; var metadataInfo:Object; var classInfo:XML; var numericIndex:Boolean; var key:*; var p:String; var pi:Number; var uris:Array; var uri:String; var qName:QName; var j:int; var obj = _arg1; var excludes = _arg2; var options = _arg3; if ((obj is ObjectProxy)){ obj = ObjectProxy(obj).object_proxy::object; }; if (options == null){ options = {includeReadOnly:true, uris:null, includeTransient:true}; }; var propertyNames:Array = []; var dynamic:Boolean; if (typeof(obj) == "xml"){ className = "XML"; properties = obj.text(); if (properties.length()){ propertyNames.push("*"); }; properties = obj.attributes(); } else { classInfo = DescribeTypeCache.describeType(obj).typeDescription; className = classInfo.@name.toString(); classAlias = classInfo.@alias.toString(); dynamic = (classInfo.@isDynamic.toString() == "true"); if (options.includeReadOnly){ properties = (classInfo..accessor.(@access != "writeonly") + classInfo..variable); } else { properties = (classInfo..accessor.(@access == "readwrite") + classInfo..variable); }; numericIndex = false; }; if (!dynamic){ cacheKey = getCacheKey(obj, excludes, options); result = CLASS_INFO_CACHE[cacheKey]; if (result != null){ return (result); }; }; result = {}; result["name"] = className; result["alias"] = classAlias; result["properties"] = propertyNames; result["dynamic"] = dynamic; var _local5 = recordMetadata(properties); metadataInfo = _local5; result["metadata"] = _local5; var excludeObject:Object = {}; if (excludes){ n = excludes.length; i = 0; while (i < n) { excludeObject[excludes[i]] = 1; i = (i + 1); }; }; var isArray = (className == "Array"); var isDict = (className == "flash.utils::Dictionary"); if (isDict){ for (key in obj) { propertyNames.push(key); }; } else { if (dynamic){ for (p in obj) { if (excludeObject[p] != 1){ if (isArray){ pi = parseInt(p); if (isNaN(pi)){ propertyNames.push(new QName("", p)); } else { propertyNames.push(pi); }; } else { propertyNames.push(new QName("", p)); }; }; }; numericIndex = ((isArray) && (!(isNaN(Number(p))))); }; }; if (((((isArray) || (isDict))) || ((className == "Object")))){ } else { if (className == "XML"){ n = properties.length(); i = 0; while (i < n) { p = properties[i].name(); if (excludeObject[p] != 1){ propertyNames.push(new QName("", ("@" + p))); }; i = (i + 1); }; } else { n = properties.length(); uris = options.uris; i = 0; while (i < n) { prop = properties[i]; p = prop.@name.toString(); uri = prop.@uri.toString(); if (excludeObject[p] == 1){ } else { if (((!(options.includeTransient)) && (internalHasMetadata(metadataInfo, p, "Transient")))){ } else { if (uris != null){ if ((((uris.length == 1)) && ((uris[0] == "*")))){ qName = new QName(uri, p); try { obj[qName]; propertyNames.push(); } catch(e:Error) { }; } else { j = 0; while (j < uris.length) { uri = uris[j]; if (prop.@uri.toString() == uri){ qName = new QName(uri, p); try { obj[qName]; propertyNames.push(qName); } catch(e:Error) { }; }; j = (j + 1); }; }; } else { if (uri.length == 0){ qName = new QName(uri, p); try { obj[qName]; propertyNames.push(qName); } catch(e:Error) { }; }; }; }; }; i = (i + 1); }; }; }; propertyNames.sort((Array.CASEINSENSITIVE | (numericIndex) ? Array.NUMERIC : 0)); if (!isDict){ i = 0; while (i < (propertyNames.length - 1)) { if (propertyNames[i].toString() == propertyNames[(i + 1)].toString()){ propertyNames.splice(i, 1); i = (i - 1); }; i = (i + 1); }; }; if (!dynamic){ cacheKey = getCacheKey(obj, excludes, options); CLASS_INFO_CACHE[cacheKey] = result; }; return (result); } private static function arrayCompare(_arg1:Array, _arg2:Array, _arg3:int, _arg4:int, _arg5:Dictionary):int{ var _local7:Object; var _local6:int; if (_arg1.length != _arg2.length){ if (_arg1.length < _arg2.length){ _local6 = -1; } else { _local6 = 1; }; } else { for (_local7 in _arg1) { if (_arg2.hasOwnProperty(_local7)){ _local6 = internalCompare(_arg1[_local7], _arg2[_local7], _arg3, _arg4, _arg5); if (_local6 != 0){ return (_local6); }; } else { return (-1); }; }; for (_local7 in _arg2) { if (!_arg1.hasOwnProperty(_local7)){ return (1); }; }; }; return (_local6); } public static function stringCompare(_arg1:String, _arg2:String, _arg3:Boolean=false):int{ if ((((_arg1 == null)) && ((_arg2 == null)))){ return (0); }; if (_arg1 == null){ return (1); }; if (_arg2 == null){ return (-1); }; if (_arg3){ _arg1 = _arg1.toLocaleLowerCase(); _arg2 = _arg2.toLocaleLowerCase(); }; var _local4:int = _arg1.localeCompare(_arg2); if (_local4 < -1){ _local4 = -1; } else { if (_local4 > 1){ _local4 = 1; }; }; return (_local4); } public static function dateCompare(_arg1:Date, _arg2:Date):int{ if ((((_arg1 == null)) && ((_arg2 == null)))){ return (0); }; if (_arg1 == null){ return (1); }; if (_arg2 == null){ return (-1); }; var _local3:Number = _arg1.getTime(); var _local4:Number = _arg2.getTime(); if (_local3 < _local4){ return (-1); }; if (_local3 > _local4){ return (1); }; return (0); } public static function numericCompare(_arg1:Number, _arg2:Number):int{ if (((isNaN(_arg1)) && (isNaN(_arg2)))){ return (0); }; if (isNaN(_arg1)){ return (1); }; if (isNaN(_arg2)){ return (-1); }; if (_arg1 < _arg2){ return (-1); }; if (_arg1 > _arg2){ return (1); }; return (0); } private static function newline(_arg1:String, _arg2:int=0):String{ var _local3:String = _arg1; _local3 = (_local3 + "\n"); var _local4:int; while (_local4 < _arg2) { _local3 = (_local3 + " "); _local4++; }; return (_local3); } private static function recordMetadata(_arg1:XMLList):Object{ var prop:XML; var propName:String; var metadataList:XMLList; var metadata:Object; var md:XML; var mdName:String; var argsList:XMLList; var value:Object; var arg:XML; var existing:Object; var argKey:String; var argValue:String; var existingArray:Array; var properties = _arg1; var result:Object; try { for each (prop in properties) { propName = prop.attribute("name").toString(); metadataList = prop.metadata; if (metadataList.length() > 0){ if (result == null){ result = {}; }; metadata = {}; result[propName] = metadata; for each (md in metadataList) { mdName = md.attribute("name").toString(); argsList = md.arg; value = {}; for each (arg in argsList) { argKey = arg.attribute("key").toString(); if (argKey != null){ argValue = arg.attribute("value").toString(); value[argKey] = argValue; }; }; existing = metadata[mdName]; if (existing != null){ if ((existing is Array)){ existingArray = (existing as Array); } else { existingArray = []; }; existingArray.push(value); existing = existingArray; } else { existing = value; }; metadata[mdName] = existing; }; }; }; } catch(e:Error) { }; return (result); } public static function compare(_arg1:Object, _arg2:Object, _arg3:int=-1):int{ return (internalCompare(_arg1, _arg2, 0, _arg3, new Dictionary(true))); } private static function listCompare(_arg1:IList, _arg2:IList, _arg3:int, _arg4:int, _arg5:Dictionary):int{ var _local7:int; var _local6:int; if (_arg1.length != _arg2.length){ if (_arg1.length < _arg2.length){ _local6 = -1; } else { _local6 = 1; }; } else { _local7 = 0; while (_local7 < _arg1.length) { _local6 = internalCompare(_arg1.getItemAt(_local7), _arg2.getItemAt(_local7), (_arg3 + 1), _arg4, _arg5); if (_local6 != 0){ _local7 = _arg1.length; }; _local7++; }; }; return (_local6); } private static function internalCompare(_arg1:Object, _arg2:Object, _arg3:int, _arg4:int, _arg5:Dictionary):int{ var _local9:int; var _local10:Boolean; var _local11:Boolean; var _local12:Array; var _local13:Array; var _local14:QName; var _local15:Object; var _local16:Object; var _local17:int; if ((((_arg1 == null)) && ((_arg2 == null)))){ return (0); }; if (_arg1 == null){ return (1); }; if (_arg2 == null){ return (-1); }; if ((_arg1 is ObjectProxy)){ _arg1 = ObjectProxy(_arg1).object_proxy::object; }; if ((_arg2 is ObjectProxy)){ _arg2 = ObjectProxy(_arg2).object_proxy::object; }; var _local6 = typeof(_arg1); var _local7 = typeof(_arg2); var _local8:int; if (_local6 == _local7){ switch (_local6){ case "boolean": _local8 = numericCompare(Number(_arg1), Number(_arg2)); break; case "number": _local8 = numericCompare((_arg1 as Number), (_arg2 as Number)); break; case "string": _local8 = stringCompare((_arg1 as String), (_arg2 as String)); break; case "object": _local9 = ((_arg4 > 0)) ? (_arg4 - 1) : _arg4; _local10 = _arg5[_arg1]; _local11 = _arg5[_arg2]; if (((_local10) && (!(_local11)))){ return (1); }; if (((_local11) && (!(_local10)))){ return (-1); }; if (((_local11) && (_local10))){ return (0); }; _arg5[_arg1] = true; _arg5[_arg2] = true; if (((!((_arg4 == -1))) && ((_arg3 > _arg4)))){ _local8 = stringCompare(_arg1.toString(), _arg2.toString()); } else { if ((((_arg1 is Array)) && ((_arg2 is Array)))){ _local8 = arrayCompare((_arg1 as Array), (_arg2 as Array), _arg3, _arg4, _arg5); } else { if ((((_arg1 is Date)) && ((_arg2 is Date)))){ _local8 = dateCompare((_arg1 as Date), (_arg2 as Date)); } else { if ((((_arg1 is IList)) && ((_arg2 is IList)))){ _local8 = listCompare((_arg1 as IList), (_arg2 as IList), _arg3, _arg4, _arg5); } else { if ((((_arg1 is ByteArray)) && ((_arg2 is ByteArray)))){ _local8 = byteArrayCompare((_arg1 as ByteArray), (_arg2 as ByteArray)); } else { if (getQualifiedClassName(_arg1) == getQualifiedClassName(_arg2)){ _local12 = getClassInfo(_arg1).properties; if (getQualifiedClassName(_arg1) == "Object"){ _local13 = getClassInfo(_arg2).properties; _local8 = arrayCompare(_local12, _local13, _arg3, _local9, _arg5); }; if (_local8 != 0){ return (_local8); }; _local17 = 0; while (_local17 < _local12.length) { _local14 = _local12[_local17]; _local15 = _arg1[_local14]; _local16 = _arg2[_local14]; _local8 = internalCompare(_local15, _local16, (_arg3 + 1), _local9, _arg5); if (_local8 != 0){ _local17 = _local12.length; }; _local17++; }; } else { return (1); }; }; }; }; }; }; break; }; } else { return (stringCompare(_local6, _local7)); }; return (_local8); } public static function hasMetadata(_arg1:Object, _arg2:String, _arg3:String, _arg4:Array=null, _arg5:Object=null):Boolean{ var _local6:Object = getClassInfo(_arg1, _arg4, _arg5); var _local7:Object = _local6["metadata"]; return (internalHasMetadata(_local7, _arg2, _arg3)); } private static function internalHasMetadata(_arg1:Object, _arg2:String, _arg3:String):Boolean{ var _local4:Object; if (_arg1 != null){ _local4 = _arg1[_arg2]; if (_local4 != null){ if (_local4[_arg3] != null){ return (true); }; }; }; return (false); } public static function toString(_arg1:Object, _arg2:Array=null, _arg3:Array=null):String{ if (_arg3 == null){ _arg3 = defaultToStringExcludes; }; refCount = 0; return (internalToString(_arg1, 0, null, _arg2, _arg3)); } private static function byteArrayCompare(_arg1:ByteArray, _arg2:ByteArray):int{ var _local4:int; var _local3:int; if (_arg1.length != _arg2.length){ if (_arg1.length < _arg2.length){ _local3 = -1; } else { _local3 = 1; }; } else { _arg1.position = 0; _arg2.position = 0; _local4 = 0; while (_local4 < _arg1.length) { _local3 = numericCompare(_arg1.readByte(), _arg2.readByte()); if (_local3 != 0){ _local4 = _arg1.length; }; _local4++; }; }; return (_local3); } public static function copy(_arg1:Object):Object{ var _local2:ByteArray = new ByteArray(); _local2.writeObject(_arg1); _local2.position = 0; var _local3:Object = _local2.readObject(); return (_local3); } private static function getCacheKey(_arg1:Object, _arg2:Array=null, _arg3:Object=null):String{ var _local5:uint; var _local6:String; var _local7:String; var _local8:String; var _local4:String = getQualifiedClassName(_arg1); if (_arg2 != null){ _local5 = 0; while (_local5 < _arg2.length) { _local6 = (_arg2[_local5] as String); if (_local6 != null){ _local4 = (_local4 + _local6); }; _local5++; }; }; if (_arg3 != null){ for (_local7 in _arg3) { _local4 = (_local4 + _local7); _local8 = (_arg3[_local7] as String); if (_local8 != null){ _local4 = (_local4 + _local8); }; }; }; return (_local4); } } }//package mx.utils
Section 375
//SecurityUtil (mx.utils.SecurityUtil) package mx.utils { import mx.core.*; public class SecurityUtil { mx_internal static const VERSION:String = "3.2.0.3794"; public static function hasMutualTrustBetweenParentAndChild(_arg1:ISWFBridgeProvider):Boolean{ if (((((_arg1) && (_arg1.childAllowsParent))) && (_arg1.parentAllowsChild))){ return (true); }; return (false); } } }//package mx.utils
Section 376
//StringUtil (mx.utils.StringUtil) package mx.utils { import mx.core.*; public class StringUtil { mx_internal static const VERSION:String = "3.2.0.3794"; public static function trim(_arg1:String):String{ if (_arg1 == null){ return (""); }; var _local2:int; while (isWhitespace(_arg1.charAt(_local2))) { _local2++; }; var _local3:int = (_arg1.length - 1); while (isWhitespace(_arg1.charAt(_local3))) { _local3--; }; if (_local3 >= _local2){ return (_arg1.slice(_local2, (_local3 + 1))); }; return (""); } public static function isWhitespace(_arg1:String):Boolean{ switch (_arg1){ case " ": case "\t": case "\r": case "\n": case "\f": return (true); default: return (false); }; } public static function substitute(_arg1:String, ... _args):String{ var _local4:Array; if (_arg1 == null){ return (""); }; var _local3:uint = _args.length; if ((((_local3 == 1)) && ((_args[0] is Array)))){ _local4 = (_args[0] as Array); _local3 = _local4.length; } else { _local4 = _args; }; var _local5:int; while (_local5 < _local3) { _arg1 = _arg1.replace(new RegExp((("\\{" + _local5) + "\\}"), "g"), _local4[_local5]); _local5++; }; return (_arg1); } public static function trimArrayElements(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:int; var _local5:int; if (((!((_arg1 == ""))) && (!((_arg1 == null))))){ _local3 = _arg1.split(_arg2); _local4 = _local3.length; _local5 = 0; while (_local5 < _local4) { _local3[_local5] = StringUtil.trim(_local3[_local5]); _local5++; }; if (_local4 > 0){ _arg1 = _local3.join(_arg2); }; }; return (_arg1); } } }//package mx.utils
Section 377
//UIDUtil (mx.utils.UIDUtil) package mx.utils { import mx.core.*; import flash.utils.*; public class UIDUtil { mx_internal static const VERSION:String = "3.2.0.3794"; private static const ALPHA_CHAR_CODES:Array = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70]; private static var uidDictionary:Dictionary = new Dictionary(true); public static function fromByteArray(_arg1:ByteArray):String{ var _local2:Array; var _local3:uint; var _local4:uint; var _local5:int; if (((((!((_arg1 == null))) && ((_arg1.length >= 16)))) && ((_arg1.bytesAvailable >= 16)))){ _local2 = new Array(36); _local3 = 0; _local4 = 0; while (_local4 < 16) { if ((((((((_local4 == 4)) || ((_local4 == 6)))) || ((_local4 == 8)))) || ((_local4 == 10)))){ var _temp1 = _local3; _local3 = (_local3 + 1); var _local6 = _temp1; _local2[_local6] = 45; }; _local5 = _arg1.readByte(); var _temp2 = _local3; _local3 = (_local3 + 1); _local6 = _temp2; _local2[_local6] = ALPHA_CHAR_CODES[((_local5 & 240) >>> 4)]; var _temp3 = _local3; _local3 = (_local3 + 1); var _local7 = _temp3; _local2[_local7] = ALPHA_CHAR_CODES[(_local5 & 15)]; _local4++; }; return (String.fromCharCode.apply(null, _local2)); }; return (null); } public static function isUID(_arg1:String):Boolean{ var _local2:uint; var _local3:Number; if (((!((_arg1 == null))) && ((_arg1.length == 36)))){ _local2 = 0; while (_local2 < 36) { _local3 = _arg1.charCodeAt(_local2); if ((((((((_local2 == 8)) || ((_local2 == 13)))) || ((_local2 == 18)))) || ((_local2 == 23)))){ if (_local3 != 45){ return (false); }; } else { if ((((((_local3 < 48)) || ((_local3 > 70)))) || ((((_local3 > 57)) && ((_local3 < 65)))))){ return (false); }; }; _local2++; }; return (true); }; return (false); } public static function createUID():String{ var _local3:int; var _local4:int; var _local1:Array = new Array(36); var _local2:int; _local3 = 0; while (_local3 < 8) { var _temp1 = _local2; _local2 = (_local2 + 1); var _local7 = _temp1; _local1[_local7] = ALPHA_CHAR_CODES[Math.floor((Math.random() * 16))]; _local3++; }; _local3 = 0; while (_local3 < 3) { var _temp2 = _local2; _local2 = (_local2 + 1); _local7 = _temp2; _local1[_local7] = 45; _local4 = 0; while (_local4 < 4) { var _temp3 = _local2; _local2 = (_local2 + 1); var _local8 = _temp3; _local1[_local8] = ALPHA_CHAR_CODES[Math.floor((Math.random() * 16))]; _local4++; }; _local3++; }; var _temp4 = _local2; _local2 = (_local2 + 1); _local7 = _temp4; _local1[_local7] = 45; var _local5:Number = new Date().getTime(); var _local6:String = ("0000000" + _local5.toString(16).toUpperCase()).substr(-8); _local3 = 0; while (_local3 < 8) { var _temp5 = _local2; _local2 = (_local2 + 1); _local8 = _temp5; _local1[_local8] = _local6.charCodeAt(_local3); _local3++; }; _local3 = 0; while (_local3 < 4) { var _temp6 = _local2; _local2 = (_local2 + 1); _local8 = _temp6; _local1[_local8] = ALPHA_CHAR_CODES[Math.floor((Math.random() * 16))]; _local3++; }; return (String.fromCharCode.apply(null, _local1)); } public static function toByteArray(_arg1:String):ByteArray{ var _local2:ByteArray; var _local3:uint; var _local4:String; var _local5:uint; var _local6:uint; if (isUID(_arg1)){ _local2 = new ByteArray(); _local3 = 0; while (_local3 < _arg1.length) { _local4 = _arg1.charAt(_local3); if (_local4 == "-"){ } else { _local5 = getDigit(_local4); _local3++; _local6 = getDigit(_arg1.charAt(_local3)); _local2.writeByte((((_local5 << 4) | _local6) & 0xFF)); }; _local3++; }; _local2.position = 0; return (_local2); }; return (null); } private static function getDigit(_arg1:String):uint{ switch (_arg1){ case "A": case "a": return (10); case "B": case "b": return (11); case "C": case "c": return (12); case "D": case "d": return (13); case "E": case "e": return (14); case "F": case "f": return (15); default: return (new uint(_arg1)); }; } public static function getUID(_arg1:Object):String{ var result:String; var xitem:XML; var nodeKind:String; var notificationFunction:Function; var item = _arg1; result = null; if (item == null){ return (result); }; if ((item is IUID)){ result = IUID(item).uid; if ((((result == null)) || ((result.length == 0)))){ result = createUID(); IUID(item).uid = result; }; } else { if ((((item is IPropertyChangeNotifier)) && (!((item is IUIComponent))))){ result = IPropertyChangeNotifier(item).uid; if ((((result == null)) || ((result.length == 0)))){ result = createUID(); IPropertyChangeNotifier(item).uid = result; }; } else { if ((item is String)){ return ((item as String)); }; try { if ((((item is XMLList)) && ((item.length == 1)))){ item = item[0]; }; if ((item is XML)){ xitem = XML(item); nodeKind = xitem.nodeKind(); if ((((nodeKind == "text")) || ((nodeKind == "attribute")))){ return (xitem.toString()); }; notificationFunction = xitem.notification(); if (!(notificationFunction is Function)){ notificationFunction = XMLNotifier.initializeXMLForNotification(); xitem.setNotification(notificationFunction); }; if (notificationFunction["uid"] == undefined){ result = (notificationFunction["uid"] = createUID()); }; result = notificationFunction["uid"]; } else { if (("mx_internal_uid" in item)){ return (item.mx_internal_uid); }; if (("uid" in item)){ return (item.uid); }; result = uidDictionary[item]; if (!result){ result = createUID(); try { item.mx_internal_uid = result; } catch(e:Error) { uidDictionary[item] = result; }; }; }; } catch(e:Error) { result = item.toString(); }; }; }; return (result); } } }//package mx.utils
Section 378
//XMLNotifier (mx.utils.XMLNotifier) package mx.utils { import flash.utils.*; public class XMLNotifier { mx_internal static const VERSION:String = "3.2.0.3794"; private static var instance:XMLNotifier; public function XMLNotifier(_arg1:XMLNotifierSingleton){ } public function watchXML(_arg1:Object, _arg2:IXMLNotifiable, _arg3:String=null):void{ var _local6:Dictionary; var _local4:XML = XML(_arg1); var _local5:Object = _local4.notification(); if (!(_local5 is Function)){ _local5 = initializeXMLForNotification(); _local4.setNotification((_local5 as Function)); if (((_arg3) && ((_local5["uid"] == null)))){ _local5["uid"] = _arg3; }; }; if (_local5["watched"] == undefined){ _local6 = new Dictionary(true); _local5["watched"] = _local6; } else { _local6 = _local5["watched"]; }; _local6[_arg2] = true; } public function unwatchXML(_arg1:Object, _arg2:IXMLNotifiable):void{ var _local5:Dictionary; var _local3:XML = XML(_arg1); var _local4:Object = _local3.notification(); if (!(_local4 is Function)){ return; }; if (_local4["watched"] != undefined){ _local5 = _local4["watched"]; delete _local5[_arg2]; }; } public static function getInstance():XMLNotifier{ if (!instance){ instance = new XMLNotifier(new XMLNotifierSingleton()); }; return (instance); } mx_internal static function initializeXMLForNotification():Function{ var notificationFunction:Function = function (_arg1:Object, _arg2:String, _arg3:Object, _arg4:Object, _arg5:Object):void{ var _local8:Object; var _local7:Dictionary = arguments.callee.watched; if (_local7 != null){ for (_local8 in _local7) { IXMLNotifiable(_local8).xmlNotification(_arg1, _arg2, _arg3, _arg4, _arg5); }; }; }; return (notificationFunction); } } }//package mx.utils class XMLNotifierSingleton { private function XMLNotifierSingleton(){ } }
Section 379
//IValidatorListener (mx.validators.IValidatorListener) package mx.validators { import mx.events.*; public interface IValidatorListener { function set errorString(_arg1:String):void; function get validationSubField():String; function validationResultHandler(_arg1:ValidationResultEvent):void; function set validationSubField(_arg1:String):void; function get errorString():String; } }//package mx.validators
Section 380
//ValidationResult (mx.validators.ValidationResult) package mx.validators { public class ValidationResult { public var subField:String; public var errorCode:String; public var isError:Boolean; public var errorMessage:String; mx_internal static const VERSION:String = "3.2.0.3794"; public function ValidationResult(_arg1:Boolean, _arg2:String="", _arg3:String="", _arg4:String=""){ this.isError = _arg1; this.subField = _arg2; this.errorMessage = _arg4; this.errorCode = _arg3; } } }//package mx.validators
Section 381
//_AccordionHeaderStyle (_AccordionHeaderStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _AccordionHeaderStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("AccordionHeader"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("AccordionHeader", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.skin = AccordionHeaderSkin; this.paddingLeft = 5; this.fontWeight = "bold"; this.upSkin = null; this.fontSize = "10"; this.overSkin = null; this.paddingBottom = 0; this.selectedDisabledSkin = null; this.paddingTop = 0; this.textAlign = "left"; this.selectedDownSkin = null; this.selectedUpSkin = null; this.paddingRight = 5; this.selectedOverSkin = null; this.downSkin = null; this.horizontalGap = 2; this.disabledSkin = null; }; }; } } }//package
Section 382
//_AccordionStyle (_AccordionStyle) package { import mx.core.*; import mx.styles.*; public class _AccordionStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Accordion"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Accordion", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = -1; this.paddingLeft = -1; this.paddingRight = -1; this.verticalGap = -1; this.paddingBottom = -1; this.borderStyle = "solid"; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 383
//_activeButtonStyleStyle (_activeButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _activeButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".activeButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 384
//_activeTabStyleStyle (_activeTabStyleStyle) package { import mx.core.*; import mx.styles.*; public class _activeTabStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeTabStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".activeTabStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 385
//_alertButtonStyleStyle (_alertButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _alertButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".alertButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".alertButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 734012; }; }; } } }//package
Section 386
//_ApplicationControlBarStyle (_ApplicationControlBarStyle) package { import mx.core.*; import mx.styles.*; public class _ApplicationControlBarStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ApplicationControlBar"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("ApplicationControlBar", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 5; this.paddingLeft = 8; this.fillAlphas = [0, 0]; this.cornerRadius = 5; this.paddingRight = 8; this.fillColors = [0xFFFFFF, 0xFFFFFF]; this.dropShadowEnabled = true; this.docked = false; this.paddingBottom = 4; this.borderStyle = "applicationControlBar"; this.shadowDistance = 5; }; }; } } }//package
Section 387
//_ApplicationStyle (_ApplicationStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _ApplicationStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Application"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Application", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 24; this.paddingLeft = 24; this.backgroundGradientAlphas = [1, 1]; this.horizontalAlign = "center"; this.paddingRight = 24; this.backgroundImage = ApplicationBackground; this.paddingBottom = 24; this.backgroundSize = "100%"; this.backgroundColor = 8821927; }; }; } } }//package
Section 388
//_ButtonStyle (_ButtonStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _ButtonStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Button"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Button", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 2; this.textAlign = "center"; this.skin = ButtonSkin; this.paddingLeft = 10; this.fontWeight = "bold"; this.cornerRadius = 4; this.paddingRight = 10; this.verticalGap = 2; this.horizontalGap = 2; this.paddingBottom = 2; }; }; } } }//package
Section 389
//_com_flextoolbox_logicly_view_ToolboxWatcherSetupUtil (_com_flextoolbox_logicly_view_ToolboxWatcherSetupUtil) package { import flash.display.*; import mx.core.*; import mx.binding.*; import com.flextoolbox.logicly.view.*; public class _com_flextoolbox_logicly_view_ToolboxWatcherSetupUtil extends Sprite implements IWatcherSetupUtil { public function setup(_arg1:Object, _arg2:Function, _arg3:Array, _arg4:Array):void{ _arg4[1] = new PropertyWatcher("categoryRepeater", {propertyChange:true}, [_arg3[2], _arg3[1], _arg3[3]], _arg2); _arg4[2] = new PropertyWatcher("dataProvider", {collectionChange:true}, [_arg3[2], _arg3[1], _arg3[3]], null); _arg4[3] = new RepeaterItemWatcher(_arg4[2]); _arg4[6] = new PropertyWatcher("content", null, [_arg3[2], _arg3[3]], null); _arg4[7] = new PropertyWatcher("length", null, [_arg3[2]], null); _arg4[4] = new PropertyWatcher("name", null, [_arg3[1]], null); _arg4[0] = new PropertyWatcher("categories", {propertyChange:true}, [_arg3[0]], _arg2); _arg4[1].updateParent(_arg1); _arg4[1].addChild(_arg4[2]); _arg4[2].addChild(_arg4[3]); _arg4[3].addChild(_arg4[6]); _arg4[6].addChild(_arg4[7]); _arg4[3].addChild(_arg4[4]); _arg4[0].updateParent(_arg1); } public static function init(_arg1:IFlexModuleFactory):void{ Toolbox.watcherSetupUtil = new (_com_flextoolbox_logicly_view_ToolboxWatcherSetupUtil); } } }//package
Section 390
//_comboDropdownStyle (_comboDropdownStyle) package { import mx.core.*; import mx.styles.*; public class _comboDropdownStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".comboDropdown"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".comboDropdown", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingLeft = 5; this.fontWeight = "normal"; this.cornerRadius = 0; this.paddingRight = 5; this.dropShadowEnabled = true; this.shadowDirection = "center"; this.leading = 0; this.borderThickness = 0; this.shadowDistance = 1; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 391
//_ContainerStyle (_ContainerStyle) package { import mx.core.*; import mx.styles.*; public class _ContainerStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Container"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Container", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.borderStyle = "none"; }; }; } } }//package
Section 392
//_ControlBarStyle (_ControlBarStyle) package { import mx.core.*; import mx.styles.*; public class _ControlBarStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ControlBar"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("ControlBar", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 10; this.disabledOverlayAlpha = 0; this.paddingLeft = 10; this.paddingRight = 10; this.verticalAlign = "middle"; this.paddingBottom = 10; this.borderStyle = "controlBar"; }; }; } } }//package
Section 393
//_CursorManagerStyle (_CursorManagerStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _CursorManagerStyle { private static var _embed_css_Assets_swf_mx_skins_cursor_BusyCursor_308452298:Class = _CursorManagerStyle__embed_css_Assets_swf_mx_skins_cursor_BusyCursor_308452298; public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("CursorManager"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("CursorManager", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.busyCursor = BusyCursor; this.busyCursorBackground = _embed_css_Assets_swf_mx_skins_cursor_BusyCursor_308452298; }; }; } } }//package
Section 394
//_CursorManagerStyle__embed_css_Assets_swf_mx_skins_cursor_BusyCursor_308452298 (_CursorManagerStyle__embed_css_Assets_swf_mx_skins_cursor_BusyCursor_308452298) package { import mx.core.*; public class _CursorManagerStyle__embed_css_Assets_swf_mx_skins_cursor_BusyCursor_308452298 extends SpriteAsset { } }//package
Section 395
//_dataGridStylesStyle (_dataGridStylesStyle) package { import mx.core.*; import mx.styles.*; public class _dataGridStylesStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dataGridStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".dataGridStyles", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 396
//_dateFieldPopupStyle (_dateFieldPopupStyle) package { import mx.core.*; import mx.styles.*; public class _dateFieldPopupStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dateFieldPopup"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".dateFieldPopup", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.dropShadowEnabled = true; this.borderThickness = 0; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 397
//_DragManagerStyle (_DragManagerStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _DragManagerStyle { private static var _embed_css_Assets_swf_mx_skins_cursor_DragMove_1734674308:Class = _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragMove_1734674308; private static var _embed_css_Assets_swf_mx_skins_cursor_DragLink_1734697897:Class = _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragLink_1734697897; private static var _embed_css_Assets_swf_mx_skins_cursor_DragCopy_1734959936:Class = _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragCopy_1734959936; private static var _embed_css_Assets_swf_mx_skins_cursor_DragReject_659343370:Class = _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragReject_659343370; public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("DragManager"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("DragManager", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.rejectCursor = _embed_css_Assets_swf_mx_skins_cursor_DragReject_659343370; this.defaultDragImageSkin = DefaultDragImage; this.moveCursor = _embed_css_Assets_swf_mx_skins_cursor_DragMove_1734674308; this.copyCursor = _embed_css_Assets_swf_mx_skins_cursor_DragCopy_1734959936; this.linkCursor = _embed_css_Assets_swf_mx_skins_cursor_DragLink_1734697897; }; }; } } }//package
Section 398
//_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragCopy_1734959936 (_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragCopy_1734959936) package { import mx.core.*; public class _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragCopy_1734959936 extends SpriteAsset { } }//package
Section 399
//_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragLink_1734697897 (_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragLink_1734697897) package { import mx.core.*; public class _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragLink_1734697897 extends SpriteAsset { } }//package
Section 400
//_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragMove_1734674308 (_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragMove_1734674308) package { import mx.core.*; public class _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragMove_1734674308 extends SpriteAsset { } }//package
Section 401
//_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragReject_659343370 (_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragReject_659343370) package { import mx.core.*; public class _DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragReject_659343370 extends SpriteAsset { } }//package
Section 402
//_errorTipStyle (_errorTipStyle) package { import mx.core.*; import mx.styles.*; public class _errorTipStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".errorTip"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".errorTip", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 4; this.borderColor = 13510953; this.paddingLeft = 4; this.color = 0xFFFFFF; this.fontWeight = "bold"; this.paddingRight = 4; this.shadowColor = 0; this.fontSize = 9; this.paddingBottom = 4; this.borderStyle = "errorTipRight"; }; }; } } }//package
Section 403
//_globalStyle (_globalStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _globalStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("global"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("global", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "normal"; this.modalTransparencyBlur = 3; this.verticalGridLineColor = 14015965; this.borderStyle = "inset"; this.buttonColor = 7305079; this.borderCapColor = 9542041; this.textAlign = "left"; this.disabledIconColor = 0x999999; this.stroked = false; this.fillColors = [0xFFFFFF, 0xCCCCCC, 0xFFFFFF, 0xEEEEEE]; this.fontStyle = "normal"; this.borderSides = "left top right bottom"; this.borderThickness = 1; this.modalTransparencyDuration = 100; this.useRollOver = true; this.strokeWidth = 1; this.filled = true; this.borderColor = 12040892; this.horizontalGridLines = false; this.horizontalGridLineColor = 0xF7F7F7; this.shadowCapColor = 14015965; this.fontGridFitType = "pixel"; this.horizontalAlign = "left"; this.modalTransparencyColor = 0xDDDDDD; this.disabledColor = 11187123; this.borderSkin = HaloBorder; this.dropShadowColor = 0; this.paddingBottom = 0; this.indentation = 17; this.version = "3.0.0"; this.fontThickness = 0; this.verticalGridLines = true; this.embedFonts = false; this.fontSharpness = 0; this.shadowDirection = "center"; this.textDecoration = "none"; this.selectionDuration = 250; this.bevel = true; this.fillColor = 0xFFFFFF; this.focusBlendMode = "normal"; this.dropShadowEnabled = false; this.textRollOverColor = 2831164; this.textIndent = 0; this.fontSize = 10; this.openDuration = 250; this.closeDuration = 250; this.kerning = false; this.paddingTop = 0; this.highlightAlphas = [0.3, 0]; this.cornerRadius = 0; this.horizontalGap = 8; this.textSelectedColor = 2831164; this.paddingLeft = 0; this.modalTransparency = 0.5; this.roundedBottomCorners = true; this.repeatDelay = 500; this.selectionDisabledColor = 0xDDDDDD; this.fontAntiAliasType = "advanced"; this.focusSkin = HaloFocusRect; this.verticalGap = 6; this.leading = 2; this.shadowColor = 0xEEEEEE; this.backgroundAlpha = 1; this.iconColor = 0x111111; this.focusAlpha = 0.4; this.borderAlpha = 1; this.focusThickness = 2; this.themeColor = 40447; this.backgroundSize = "auto"; this.indicatorGap = 14; this.letterSpacing = 0; this.fontFamily = "Verdana"; this.fillAlphas = [0.6, 0.4, 0.75, 0.65]; this.color = 734012; this.paddingRight = 0; this.errorColor = 0xFF0000; this.verticalAlign = "top"; this.focusRoundedCorners = "tl tr bl br"; this.shadowDistance = 2; this.repeatInterval = 35; }; }; } } }//package
Section 404
//_headerDateTextStyle (_headerDateTextStyle) package { import mx.core.*; import mx.styles.*; public class _headerDateTextStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDateText"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".headerDateText", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.textAlign = "center"; this.fontWeight = "bold"; }; }; } } }//package
Section 405
//_headerDragProxyStyleStyle (_headerDragProxyStyleStyle) package { import mx.core.*; import mx.styles.*; public class _headerDragProxyStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDragProxyStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".headerDragProxyStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 406
//_LinkButtonStyle (_LinkButtonStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _LinkButtonStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("LinkButton"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("LinkButton", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.skin = LinkButtonSkin; this.paddingLeft = 7; this.selectedDownSkin = null; this.selectedUpSkin = null; this.paddingRight = 7; this.selectedOverSkin = null; this.upSkin = null; this.overSkin = null; this.downSkin = null; this.selectedDisabledSkin = null; this.disabledSkin = null; }; }; } } }//package
Section 407
//_linkButtonStyleStyle (_linkButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _linkButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".linkButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".linkButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 2; this.paddingLeft = 2; this.paddingRight = 2; this.paddingBottom = 2; }; }; } } }//package
Section 408
//_ListBaseStyle (_ListBaseStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _ListBaseStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ListBase"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("ListBase", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 2; this.dropIndicatorSkin = ListDropIndicator; this.paddingLeft = 2; this.paddingRight = 0; this.backgroundDisabledColor = 0xDDDDDD; this.paddingBottom = 2; this.borderStyle = "solid"; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 409
//_Logicly_FlexInit (_Logicly_FlexInit) package { import mx.core.*; import mx.styles.*; import mx.effects.*; import flash.utils.*; import mx.collections.*; import mx.utils.*; import flash.system.*; import flash.net.*; public class _Logicly_FlexInit { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("addedEffect", "added"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("creationCompleteEffect", "creationComplete"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("focusInEffect", "focusIn"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("focusOutEffect", "focusOut"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("hideEffect", "hide"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("itemsChangeEffect", "itemsChange"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("mouseDownEffect", "mouseDown"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("mouseUpEffect", "mouseUp"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("moveEffect", "move"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("removedEffect", "removed"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("resizeEffect", "resize"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("resizeEndEffect", "resizeEnd"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("resizeStartEffect", "resizeStart"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("rollOutEffect", "rollOut"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("rollOverEffect", "rollOver"); _local3 = EffectManager; _local3.mx_internal::registerEffectTrigger("showEffect", "show"); try { if (getClassByAlias("flex.messaging.io.ArrayCollection") == null){ registerClassAlias("flex.messaging.io.ArrayCollection", ArrayCollection); }; } catch(e:Error) { registerClassAlias("flex.messaging.io.ArrayCollection", ArrayCollection); }; try { if (getClassByAlias("flex.messaging.io.ArrayList") == null){ registerClassAlias("flex.messaging.io.ArrayList", ArrayList); }; } catch(e:Error) { registerClassAlias("flex.messaging.io.ArrayList", ArrayList); }; try { if (getClassByAlias("flex.messaging.io.ObjectProxy") == null){ registerClassAlias("flex.messaging.io.ObjectProxy", ObjectProxy); }; } catch(e:Error) { registerClassAlias("flex.messaging.io.ObjectProxy", ObjectProxy); }; var styleNames:Array = ["fontWeight", "modalTransparencyBlur", "rollOverColor", "textRollOverColor", "backgroundDisabledColor", "textIndent", "barColor", "fontSize", "kerning", "footerColors", "textAlign", "fontStyle", "modalTransparencyDuration", "textSelectedColor", "selectionColor", "modalTransparency", "fontGridFitType", "selectionDisabledColor", "disabledColor", "fontAntiAliasType", "modalTransparencyColor", "alternatingItemColors", "leading", "dropShadowColor", "themeColor", "letterSpacing", "fontFamily", "color", "fontThickness", "errorColor", "headerColors", "fontSharpness", "textDecoration"]; var i:int; while (i < styleNames.length) { StyleManager.registerInheritingStyle(styleNames[i]); i = (i + 1); }; } } }//package
Section 410
//_Logicly_mx_managers_SystemManager (_Logicly_mx_managers_SystemManager) package { import mx.core.*; import mx.managers.*; import flash.system.*; import com.flextoolbox.logicly.view.*; public class _Logicly_mx_managers_SystemManager extends SystemManager implements IFlexModuleFactory { override public function create(... _args):Object{ if ((((_args.length > 0)) && (!((_args[0] is String))))){ return (super.create.apply(this, _args)); }; var _local2:String = ((_args.length == 0)) ? "Logicly" : String(_args[0]); var _local3:Class = Class(getDefinitionByName(_local2)); if (!_local3){ return (null); }; var _local4:Object = new (_local3); if ((_local4 is IFlexModule)){ IFlexModule(_local4).moduleFactory = this; }; return (_local4); } override public function info():Object{ return ({applicationComplete:"init()", compiledLocales:["en_US"], compiledResourceBundleNames:["collections", "containers", "core", "effects", "skins", "styles"], currentDomain:ApplicationDomain.currentDomain, layout:"absolute", mainClassName:"Logicly", mixins:["_Logicly_FlexInit", "_alertButtonStyleStyle", "_ControlBarStyle", "_ScrollBarStyle", "_activeTabStyleStyle", "_textAreaHScrollBarStyleStyle", "_ToolTipStyle", "_DragManagerStyle", "_comboDropdownStyle", "_ListBaseStyle", "_textAreaVScrollBarStyleStyle", "_ContainerStyle", "_linkButtonStyleStyle", "_globalStyle", "_windowStatusStyle", "_PanelStyle", "_windowStylesStyle", "_activeButtonStyleStyle", "_AccordionHeaderStyle", "_ApplicationControlBarStyle", "_errorTipStyle", "_richTextEditorTextAreaStyleStyle", "_CursorManagerStyle", "_todayStyleStyle", "_dateFieldPopupStyle", "_plainStyle", "_dataGridStylesStyle", "_AccordionStyle", "_LinkButtonStyle", "_TitleWindowStyle", "_ApplicationStyle", "_headerDateTextStyle", "_ButtonStyle", "_popUpMenuStyle", "_swatchPanelTextFieldStyle", "_opaquePanelStyle", "_weekDayStyleStyle", "_headerDragProxyStyleStyle", "_TileListStyle", "_LogiclyWatcherSetupUtil", "_com_flextoolbox_logicly_view_ToolboxWatcherSetupUtil"], preloader:CustomPreloader}); } } }//package
Section 411
//_LogiclyWatcherSetupUtil (_LogiclyWatcherSetupUtil) package { import flash.display.*; import mx.core.*; import mx.binding.*; public class _LogiclyWatcherSetupUtil extends Sprite implements IWatcherSetupUtil { public function setup(_arg1:Object, _arg2:Function, _arg3:Array, _arg4:Array):void{ _arg4[0] = new PropertyWatcher("simulationController", {propertyChange:true}, [_arg3[0]], _arg2); _arg4[0].updateParent(_arg1); } public static function init(_arg1:IFlexModuleFactory):void{ Logicly.watcherSetupUtil = new (_LogiclyWatcherSetupUtil); } } }//package
Section 412
//_opaquePanelStyle (_opaquePanelStyle) package { import mx.core.*; import mx.styles.*; public class _opaquePanelStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".opaquePanel"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".opaquePanel", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.footerColors = [0xE7E7E7, 0xC7C7C7]; this.borderColor = 0xFFFFFF; this.headerColors = [0xE7E7E7, 0xD9D9D9]; this.borderAlpha = 1; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 413
//_PanelStyle (_PanelStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _PanelStyle { public static function init(_arg1:IFlexModuleFactory):void{ var effects:Array; var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Panel"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Panel", style, false); effects = style.mx_internal::effects; if (!effects){ effects = (style.mx_internal::effects = new Array()); }; effects.push("resizeEndEffect"); effects.push("resizeStartEffect"); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.borderColor = 0xE2E2E2; this.paddingLeft = 0; this.roundedBottomCorners = false; this.dropShadowEnabled = true; this.resizeStartEffect = "Dissolve"; this.borderSkin = PanelSkin; this.statusStyleName = "windowStatus"; this.borderAlpha = 0.4; this.borderStyle = "default"; this.paddingBottom = 0; this.resizeEndEffect = "Dissolve"; this.paddingTop = 0; this.borderThicknessRight = 10; this.titleStyleName = "windowStyles"; this.cornerRadius = 4; this.paddingRight = 0; this.borderThicknessLeft = 10; this.titleBackgroundSkin = TitleBackground; this.borderThickness = 0; this.borderThicknessTop = 2; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 414
//_plainStyle (_plainStyle) package { import mx.core.*; import mx.styles.*; public class _plainStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".plain"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".plain", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 0; this.paddingLeft = 0; this.horizontalAlign = "left"; this.paddingRight = 0; this.backgroundImage = ""; this.paddingBottom = 0; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 415
//_popUpMenuStyle (_popUpMenuStyle) package { import mx.core.*; import mx.styles.*; public class _popUpMenuStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".popUpMenu"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".popUpMenu", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.textAlign = "left"; this.fontWeight = "normal"; }; }; } } }//package
Section 416
//_richTextEditorTextAreaStyleStyle (_richTextEditorTextAreaStyleStyle) package { import mx.core.*; import mx.styles.*; public class _richTextEditorTextAreaStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".richTextEditorTextAreaStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".richTextEditorTextAreaStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 417
//_ScrollBarStyle (_ScrollBarStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _ScrollBarStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ScrollBar"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("ScrollBar", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.trackColors = [9738651, 0xE7E7E7]; this.thumbOffset = 0; this.paddingTop = 0; this.downArrowSkin = ScrollArrowSkin; this.borderColor = 12040892; this.paddingLeft = 0; this.cornerRadius = 4; this.paddingRight = 0; this.trackSkin = ScrollTrackSkin; this.thumbSkin = ScrollThumbSkin; this.paddingBottom = 0; this.upArrowSkin = ScrollArrowSkin; }; }; } } }//package
Section 418
//_swatchPanelTextFieldStyle (_swatchPanelTextFieldStyle) package { import mx.core.*; import mx.styles.*; public class _swatchPanelTextFieldStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".swatchPanelTextField"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".swatchPanelTextField", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.highlightColor = 12897484; this.borderColor = 14015965; this.paddingLeft = 5; this.shadowCapColor = 14015965; this.paddingRight = 5; this.shadowColor = 14015965; this.borderStyle = "inset"; this.buttonColor = 7305079; this.backgroundColor = 0xFFFFFF; this.borderCapColor = 9542041; }; }; } } }//package
Section 419
//_textAreaHScrollBarStyleStyle (_textAreaHScrollBarStyleStyle) package { import mx.core.*; import mx.styles.*; public class _textAreaHScrollBarStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaHScrollBarStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".textAreaHScrollBarStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 420
//_textAreaVScrollBarStyleStyle (_textAreaVScrollBarStyleStyle) package { import mx.core.*; import mx.styles.*; public class _textAreaVScrollBarStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaVScrollBarStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".textAreaVScrollBarStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 421
//_TileListStyle (_TileListStyle) package { import mx.core.*; import mx.styles.*; public class _TileListStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("TileList"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("TileList", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.textAlign = "center"; this.paddingLeft = 2; this.paddingRight = 2; this.verticalAlign = "middle"; }; }; } } }//package
Section 422
//_TitleWindowStyle (_TitleWindowStyle) package { import mx.core.*; import mx.styles.*; public class _TitleWindowStyle { private static var _embed_css_Assets_swf_CloseButtonDisabled_836473888:Class = _TitleWindowStyle__embed_css_Assets_swf_CloseButtonDisabled_836473888; private static var _embed_css_Assets_swf_CloseButtonUp_487298943:Class = _TitleWindowStyle__embed_css_Assets_swf_CloseButtonUp_487298943; private static var _embed_css_Assets_swf_CloseButtonDown_1422887146:Class = _TitleWindowStyle__embed_css_Assets_swf_CloseButtonDown_1422887146; private static var _embed_css_Assets_swf_CloseButtonOver_1593213944:Class = _TitleWindowStyle__embed_css_Assets_swf_CloseButtonOver_1593213944; public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("TitleWindow"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("TitleWindow", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 4; this.paddingLeft = 4; this.cornerRadius = 8; this.paddingRight = 4; this.dropShadowEnabled = true; this.closeButtonDownSkin = _embed_css_Assets_swf_CloseButtonDown_1422887146; this.closeButtonOverSkin = _embed_css_Assets_swf_CloseButtonOver_1593213944; this.closeButtonUpSkin = _embed_css_Assets_swf_CloseButtonUp_487298943; this.closeButtonDisabledSkin = _embed_css_Assets_swf_CloseButtonDisabled_836473888; this.paddingBottom = 4; this.backgroundColor = 0xFFFFFF; }; }; } } }//package
Section 423
//_TitleWindowStyle__embed_css_Assets_swf_CloseButtonDisabled_836473888 (_TitleWindowStyle__embed_css_Assets_swf_CloseButtonDisabled_836473888) package { import mx.core.*; public class _TitleWindowStyle__embed_css_Assets_swf_CloseButtonDisabled_836473888 extends SpriteAsset { } }//package
Section 424
//_TitleWindowStyle__embed_css_Assets_swf_CloseButtonDown_1422887146 (_TitleWindowStyle__embed_css_Assets_swf_CloseButtonDown_1422887146) package { import mx.core.*; public class _TitleWindowStyle__embed_css_Assets_swf_CloseButtonDown_1422887146 extends SpriteAsset { } }//package
Section 425
//_TitleWindowStyle__embed_css_Assets_swf_CloseButtonOver_1593213944 (_TitleWindowStyle__embed_css_Assets_swf_CloseButtonOver_1593213944) package { import mx.core.*; public class _TitleWindowStyle__embed_css_Assets_swf_CloseButtonOver_1593213944 extends SpriteAsset { } }//package
Section 426
//_TitleWindowStyle__embed_css_Assets_swf_CloseButtonUp_487298943 (_TitleWindowStyle__embed_css_Assets_swf_CloseButtonUp_487298943) package { import mx.core.*; public class _TitleWindowStyle__embed_css_Assets_swf_CloseButtonUp_487298943 extends SpriteAsset { } }//package
Section 427
//_todayStyleStyle (_todayStyleStyle) package { import mx.core.*; import mx.styles.*; public class _todayStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".todayStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".todayStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.textAlign = "center"; this.color = 0xFFFFFF; }; }; } } }//package
Section 428
//_ToolTipStyle (_ToolTipStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _ToolTipStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("ToolTip"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("ToolTip", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 2; this.borderColor = 9542041; this.paddingLeft = 4; this.cornerRadius = 2; this.paddingRight = 4; this.shadowColor = 0; this.fontSize = 9; this.borderSkin = ToolTipBorder; this.backgroundAlpha = 0.95; this.paddingBottom = 2; this.borderStyle = "toolTip"; this.backgroundColor = 16777164; }; }; } } }//package
Section 429
//_weekDayStyleStyle (_weekDayStyleStyle) package { import mx.core.*; import mx.styles.*; public class _weekDayStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".weekDayStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".weekDayStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.textAlign = "center"; this.fontWeight = "bold"; }; }; } } }//package
Section 430
//_windowStatusStyle (_windowStatusStyle) package { import mx.core.*; import mx.styles.*; public class _windowStatusStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStatus"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".windowStatus", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 0x666666; }; }; } } }//package
Section 431
//_windowStylesStyle (_windowStylesStyle) package { import mx.core.*; import mx.styles.*; public class _windowStylesStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".windowStyles", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 432
//en_US$collections_properties (en_US$collections_properties) package { import mx.resources.*; public class en_US$collections_properties extends ResourceBundle { public function en_US$collections_properties(){ super("en_US", "collections"); } override protected function getContent():Object{ var _local1:Object = {findCondition:"Find criteria must contain all sort fields leading up to '{0}'.", noComparatorSortField:"Cannot determine comparator for SortField with name '{0}'.", outOfBounds:"Index '{0}' specified is out of bounds.", nonUnique:"Non-unique values in items.", incorrectAddition:"Attempt to add an item already in the view.", findRestriction:"Find criteria must contain at least one sort field value.", invalidType:"Incorrect type. Must be of type XML or a XMLList that contains one XML object. ", unknownMode:"Unknown find mode.", invalidIndex:"Invalid index: '{0}'.", invalidRemove:"Cannot remove when current is beforeFirst or afterLast.", unknownProperty:"Unknown Property: '{0}'.", invalidInsert:"Cannot insert when current is beforeFirst.", itemNotFound:"Cannot find when view is not sorted.", bookmarkInvalid:"Bookmark no longer valid.", noComparator:"Cannot determine comparator for '{0}'.", invalidCursor:"Cursor no longer valid.", noItems:"No items to search.", bookmarkNotFound:"Bookmark is not from this view."}; return (_local1); } } }//package
Section 433
//en_US$containers_properties (en_US$containers_properties) package { import mx.resources.*; public class en_US$containers_properties extends ResourceBundle { public function en_US$containers_properties(){ super("en_US", "containers"); } override protected function getContent():Object{ var _local1:Object = {noColumnsFound:"No ConstraintColumns found.", noRowsFound:"No ConstraintRows found.", rowNotFound:"ConstraintRow '{0}' not found.", columnNotFound:"ConstraintColumn '{0}' not found."}; return (_local1); } } }//package
Section 434
//en_US$core_properties (en_US$core_properties) package { import mx.resources.*; public class en_US$core_properties extends ResourceBundle { public function en_US$core_properties(){ super("en_US", "core"); } override protected function getContent():Object{ var _local1:Object = {multipleChildSets_ClassAndInstance:"Multiple sets of visual children have been specified for this component (component definition and component instance).", truncationIndicator:"...", notExecuting:"Repeater is not executing.", versionAlreadyRead:"Compatibility version has already been read.", multipleChildSets_ClassAndSubclass:"Multiple sets of visual children have been specified for this component (base component definition and derived component definition).", viewSource:"View Source", badFile:"File does not exist.", stateUndefined:"Undefined state '{0}'.", versionAlreadySet:"Compatibility version has already been set."}; return (_local1); } } }//package
Section 435
//en_US$effects_properties (en_US$effects_properties) package { import mx.resources.*; public class en_US$effects_properties extends ResourceBundle { public function en_US$effects_properties(){ super("en_US", "effects"); } override protected function getContent():Object{ var _local1:Object = {incorrectTrigger:"The Zoom effect can not be triggered by a moveEffect trigger.", incorrectSource:"Source property must be a Class or String."}; return (_local1); } } }//package
Section 436
//en_US$skins_properties (en_US$skins_properties) package { import mx.resources.*; public class en_US$skins_properties extends ResourceBundle { public function en_US$skins_properties(){ super("en_US", "skins"); } override protected function getContent():Object{ var _local1:Object = {notLoaded:"Unable to load '{0}'."}; return (_local1); } } }//package
Section 437
//en_US$styles_properties (en_US$styles_properties) package { import mx.resources.*; public class en_US$styles_properties extends ResourceBundle { public function en_US$styles_properties(){ super("en_US", "styles"); } override protected function getContent():Object{ var _local1:Object = {unableToLoad:"Unable to load style({0}): {1}."}; return (_local1); } } }//package
Section 438
//Logicly (Logicly) package { import flash.display.*; import flash.geom.*; import flash.media.*; import flash.text.*; import mx.core.*; import mx.managers.*; import flash.events.*; import mx.events.*; import mx.styles.*; import mx.controls.*; import mx.states.*; import mx.binding.*; import com.flextoolbox.logicly.view.*; import mx.containers.*; import com.flextoolbox.controls.logic.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.net.*; import flash.accessibility.*; import flash.debugger.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.xml.*; public class Logicly extends Application implements IBindingClient { private var _1140093645toolbox:Toolbox; mx_internal var _bindingsByDestination:Object; mx_internal var _bindingsBeginWithWord:Object; private var _embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361:Class; mx_internal var _watchers:Array; private var _1197132035simulationController:LinkButton; private var _1894804491editingSurface:EditingSurface; public var _Logicly_SetProperty1:SetProperty; private var _1923312360primaryControlBar:ApplicationControlBar; mx_internal var _bindings:Array; public var _Logicly_SetProperty2:SetProperty; private var _documentDescriptor_:UIComponentDescriptor; private static var _watcherSetupUtil:IWatcherSetupUtil; mx_internal static var _Logicly_StylesInit_done:Boolean = false; public function Logicly(){ _documentDescriptor_ = new UIComponentDescriptor({type:Application, propertiesFactory:function ():Object{ return ({childDescriptors:[new UIComponentDescriptor({type:ApplicationControlBar, id:"primaryControlBar", propertiesFactory:function ():Object{ return ({dock:true, childDescriptors:[new UIComponentDescriptor({type:Label, stylesFactory:function ():void{ this.fontWeight = "bold"; this.fontSize = 16; }, propertiesFactory:function ():Object{ return ({text:"Logicly"}); }}), new UIComponentDescriptor({type:Spacer, propertiesFactory:function ():Object{ return ({percentWidth:100}); }}), new UIComponentDescriptor({type:LinkButton, events:{click:"___Logicly_LinkButton1_click"}, propertiesFactory:function ():Object{ return ({label:"Help"}); }}), new UIComponentDescriptor({type:LinkButton, events:{click:"___Logicly_LinkButton2_click"}, propertiesFactory:function ():Object{ return ({label:"About"}); }})]}); }}), new UIComponentDescriptor({type:HBox, stylesFactory:function ():void{ this.horizontalGap = 0; }, propertiesFactory:function ():Object{ return ({percentWidth:100, percentHeight:100, childDescriptors:[new UIComponentDescriptor({type:Toolbox, id:"toolbox", propertiesFactory:function ():Object{ return ({percentHeight:100}); }}), new UIComponentDescriptor({type:EditingSurface, id:"editingSurface", propertiesFactory:function ():Object{ return ({percentWidth:100, percentHeight:100}); }})]}); }}), new UIComponentDescriptor({type:LinkButton, id:"simulationController", events:{click:"__simulationController_click"}, stylesFactory:function ():void{ this.bottom = "10"; this.right = "10"; }, propertiesFactory:function ():Object{ return ({label:"Simulation is STOPPED"}); }})]}); }}); _embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361 = Logicly__embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361; _bindings = []; _watchers = []; _bindingsByDestination = {}; _bindingsBeginWithWord = {}; super(); mx_internal::_document = this; mx_internal::_Logicly_StylesInit(); this.layout = "absolute"; this.states = [_Logicly_State1_c()]; this.addEventListener("applicationComplete", ___Logicly_Application1_applicationComplete); } protected function toggleSimulation():void{ if (!this.currentState){ this.currentState = "SimulationActive"; } else { this.currentState = null; }; } public function get simulationController():LinkButton{ return (this._1197132035simulationController); } mx_internal function _Logicly_StylesInit():void{ var style:CSSStyleDeclaration; var effects:Array; if (mx_internal::_Logicly_StylesInit_done){ return; }; mx_internal::_Logicly_StylesInit_done = true; style = StyleManager.getStyleDeclaration(".popUpTitleStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".popUpTitleStyle", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.color = 0xFFFFFF; this.fontWeight = "bold"; }; }; style = StyleManager.getStyleDeclaration("LogicGate"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("LogicGate", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.inputJackStyleName = "logicJackStyles"; this.outputJackStyleName = "logicJackStyles"; }; }; style = StyleManager.getStyleDeclaration("ApplicationControlBar"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("ApplicationControlBar", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.color = 0xFFFFFF; this.cornerRadius = 0; this.shadowDistance = 2; this.backgroundColor = 1712682; }; }; style = StyleManager.getStyleDeclaration(".popUpWindow"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".popUpWindow", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.paddingTop = 10; this.borderThicknessRight = 6; this.borderColor = 0xFFFFFF; this.titleStyleName = "popUpTitleStyle"; this.roundedBottomCorners = false; this.borderThicknessLeft = 6; this.headerColors = [1712682, 1712682]; this.fontSize = 13; this.borderAlpha = 1; this.backgroundColor = 0xFFFFFF; }; }; style = StyleManager.getStyleDeclaration("WireSurface"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("WireSurface", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.wireSkin = LogicWireRenderer; }; }; style = StyleManager.getStyleDeclaration(".toolboxTitleStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".toolboxTitleStyles", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.color = 0xFFFFFF; this.fontWeight = "bold"; this.fontSize = 11; }; }; style = StyleManager.getStyleDeclaration("Toolbox"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Toolbox", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.borderColor = 0x999999; this.headerAlphas = [1, 1]; this.dropShadowEnabled = false; this.borderStyle = "solid"; this.borderAlpha = 1; this.borderThicknessRight = 1; this.titleStyleName = "toolboxTitleStyles"; this.highlightAlphas = [0.3, 0]; this.cornerRadius = 0; this.borderThicknessLeft = 0; this.headerColors = [1712682, 1712682]; this.headerHeight = 17; this.borderThicknessBottom = 0; this.borderThicknessTop = 0; this.backgroundColor = 0xFFFFFF; }; }; style = StyleManager.getStyleDeclaration(".helpModule"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".helpModule", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.paddingTop = 10; this.paddingLeft = 10; this.paddingRight = 10; this.paddingBottom = 10; }; }; style = StyleManager.getStyleDeclaration("Application"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Application", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.paddingLeft = 0; this.modalTransparency = 0.7; this.modalTransparencyBlur = 4; this.modalTransparencyColor = 0x8A8A8A; this.verticalGap = 0; this.paddingBottom = 0; this.themeColor = 689898; this.fontFamily = "HelveticaNeue,Helvetica,Arial"; this.paddingTop = 0; this.color = 0; this.paddingRight = 0; this.backgroundImage = "none"; this.horizontalGap = 0; this.backgroundColor = 0xCCCCCC; this.modalTransparencyDuration = 150; }; }; style = StyleManager.getStyleDeclaration("PowerToggle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("PowerToggle", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.inputJackStyleName = "logicJackStyles"; this.outputJackStyleName = "logicJackStyles"; }; }; style = StyleManager.getStyleDeclaration("AccordionHeader"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("AccordionHeader", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.fontSize = 13; }; }; style = StyleManager.getStyleDeclaration(".thumbnailPowerSwitch"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".thumbnailPowerSwitch", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.paddingTop = 6; this.paddingLeft = 6; this.paddingRight = 6; this.paddingBottom = 6; }; }; style = StyleManager.getStyleDeclaration("EditingSurface"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("EditingSurface", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.moveCursorSkin = _embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361; }; }; style = StyleManager.getStyleDeclaration("Clock"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Clock", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.inputJackStyleName = "logicJackStyles"; this.outputJackStyleName = "logicJackStyles"; }; }; style = StyleManager.getStyleDeclaration(".logicJackStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".logicJackStyles", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.borderColor = 0; this.highlightAlphas = [0, 0]; this.fillAlphas = [1, 1]; this.fillColors = [0xFFFFFF, 0xFFFFFF]; this.iconColor = 0xFFFFFF; }; }; style = StyleManager.getStyleDeclaration(".toolCategory"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".toolCategory", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.borderThicknessRight = 2; this.borderColor = 0xFFFFFF; this.cornerRadius = 0; this.borderThicknessLeft = 2; this.headerColors = [0xEEEEEE, 0xCCCCCC]; this.headerHeight = 16; this.borderStyle = "none"; this.borderAlpha = 1; }; }; style = StyleManager.getStyleDeclaration("PowerIndicator"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("PowerIndicator", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.inputJackStyleName = "logicJackStyles"; this.outputJackStyleName = "logicJackStyles"; }; }; style = StyleManager.getStyleDeclaration("TileList"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("TileList", style, false); }; if (style.factory == null){ style.factory = function ():void{ this.borderStyle = "none"; }; }; var _local2 = StyleManager; _local2.mx_internal::initProtoChainRoots(); } public function set simulationController(_arg1:LinkButton):void{ var _local2:Object = this._1197132035simulationController; if (_local2 !== _arg1){ this._1197132035simulationController = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "simulationController", _local2, _arg1)); }; } public function get editingSurface():EditingSurface{ return (this._1894804491editingSurface); } public function __simulationController_click(_arg1:MouseEvent):void{ toggleSimulation(); } override public function initialize():void{ var target:Logicly; var watcherSetupUtilClass:Object; mx_internal::setDocumentDescriptor(_documentDescriptor_); var bindings:Array = _Logicly_bindingsSetup(); var watchers:Array = []; target = this; if (_watcherSetupUtil == null){ watcherSetupUtilClass = getDefinitionByName("_LogiclyWatcherSetupUtil"); var _local2 = watcherSetupUtilClass; _local2["init"](null); }; _watcherSetupUtil.setup(this, function (_arg1:String){ return (target[_arg1]); }, bindings, watchers); var i:uint; while (i < bindings.length) { Binding(bindings[i]).execute(); i = (i + 1); }; mx_internal::_bindings = mx_internal::_bindings.concat(bindings); mx_internal::_watchers = mx_internal::_watchers.concat(watchers); super.initialize(); } protected function helpButtonClickHandler(_arg1:MouseEvent):void{ var _local2:HelpWindow = (PopUpManager.createPopUp(this, HelpWindow, true) as HelpWindow); PopUpManager.centerPopUp(_local2); } private function _Logicly_SetProperty1_i():SetProperty{ var _local1:SetProperty = new SetProperty(); _Logicly_SetProperty1 = _local1; _local1.name = "label"; _local1.value = "Simulation is ACTIVE"; BindingManager.executeBindings(this, "_Logicly_SetProperty1", _Logicly_SetProperty1); return (_local1); } private function _Logicly_SetProperty2_i():SetProperty{ var _local1:SetProperty = new SetProperty(); _Logicly_SetProperty2 = _local1; _local1.name = "active"; _local1.value = true; BindingManager.executeBindings(this, "_Logicly_SetProperty2", _Logicly_SetProperty2); return (_local1); } private function _Logicly_bindingExprs():void{ var _local1:*; _local1 = simulationController; _local1 = Clock; } public function ___Logicly_Application1_applicationComplete(_arg1:FlexEvent):void{ init(); } protected function aboutButtonClickHandler(_arg1:MouseEvent):void{ var _local2:AboutWindow = (PopUpManager.createPopUp(this, AboutWindow, true) as AboutWindow); PopUpManager.centerPopUp(_local2); } private function _Logicly_bindingsSetup():Array{ var binding:Binding; var result:Array = []; binding = new Binding(this, function ():Object{ return (simulationController); }, function (_arg1:Object):void{ _Logicly_SetProperty1.target = _arg1; }, "_Logicly_SetProperty1.target"); result[0] = binding; binding = new Binding(this, function ():Object{ return (Clock); }, function (_arg1:Object):void{ _Logicly_SetProperty2.target = _arg1; }, "_Logicly_SetProperty2.target"); result[1] = binding; return (result); } public function set editingSurface(_arg1:EditingSurface):void{ var _local2:Object = this._1894804491editingSurface; if (_local2 !== _arg1){ this._1894804491editingSurface = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "editingSurface", _local2, _arg1)); }; } public function get primaryControlBar():ApplicationControlBar{ return (this._1923312360primaryControlBar); } public function set primaryControlBar(_arg1:ApplicationControlBar):void{ var _local2:Object = this._1923312360primaryControlBar; if (_local2 !== _arg1){ this._1923312360primaryControlBar = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "primaryControlBar", _local2, _arg1)); }; } private function _Logicly_State1_c():State{ var _local1:State = new State(); _local1.name = "SimulationActive"; _local1.overrides = [_Logicly_SetProperty1_i(), _Logicly_SetProperty2_i()]; return (_local1); } public function get toolbox():Toolbox{ return (this._1140093645toolbox); } public function ___Logicly_LinkButton1_click(_arg1:MouseEvent):void{ helpButtonClickHandler(_arg1); } public function ___Logicly_LinkButton2_click(_arg1:MouseEvent):void{ aboutButtonClickHandler(_arg1); } public function set toolbox(_arg1:Toolbox):void{ var _local2:Object = this._1140093645toolbox; if (_local2 !== _arg1){ this._1140093645toolbox = _arg1; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "toolbox", _local2, _arg1)); }; } public static function set watcherSetupUtil(_arg1:IWatcherSetupUtil):void{ _slot1._watcherSetupUtil = _arg1; } } }//package
Section 439
//Logicly__embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361 (Logicly__embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361) package { import mx.core.*; public class Logicly__embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361 extends SpriteAsset { } }//package

Library Items

Symbol 1 GraphicUsed by:2
Symbol 2 MovieClip {Logicly__embed_css_assets_ViewAssets_swf_moveCursorSkin_162499361} [moveCursorSkin]Uses:1
Symbol 3 GraphicUsed by:6
Symbol 4 GraphicUsed by:5
Symbol 5 MovieClipUses:4Used by:6 7 10 12
Symbol 6 MovieClip {_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragCopy_1734959936} [mx.skins.cursor.DragCopy]Uses:3 5
Symbol 7 MovieClip {_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragMove_1734674308} [mx.skins.cursor.DragMove]Uses:5
Symbol 8 GraphicUsed by:10
Symbol 9 GraphicUsed by:10
Symbol 10 MovieClip {_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragReject_659343370} [mx.skins.cursor.DragReject]Uses:8 5 9
Symbol 11 GraphicUsed by:12
Symbol 12 MovieClip {_DragManagerStyle__embed_css_Assets_swf_mx_skins_cursor_DragLink_1734697897} [mx.skins.cursor.DragLink]Uses:11 5
Symbol 13 GraphicUsed by:14
Symbol 14 MovieClip {_CursorManagerStyle__embed_css_Assets_swf_mx_skins_cursor_BusyCursor_308452298} [mx.skins.cursor.BusyCursor]Uses:13
Symbol 15 GraphicUsed by:16
Symbol 16 MovieClipUses:15Used by:19 24 37
Symbol 17 GraphicUsed by:18
Symbol 18 MovieClipUses:17Used by:19 23 24
Symbol 19 MovieClip {_TitleWindowStyle__embed_css_Assets_swf_CloseButtonUp_487298943} [CloseButtonUp]Uses:16 18
Symbol 20 MovieClip {_TitleWindowStyle__embed_css_Assets_swf_CloseButtonDisabled_836473888} [CloseButtonDisabled]
Symbol 21 GraphicUsed by:22
Symbol 22 MovieClipUses:21Used by:23 38
Symbol 23 MovieClip {_TitleWindowStyle__embed_css_Assets_swf_CloseButtonOver_1593213944} [CloseButtonOver]Uses:22 18
Symbol 24 MovieClip {_TitleWindowStyle__embed_css_Assets_swf_CloseButtonDown_1422887146} [CloseButtonDown]Uses:16 18
Symbol 25 GraphicUsed by:26
Symbol 26 MovieClipUses:25Used by:29
Symbol 27 BitmapUsed by:28
Symbol 28 GraphicUses:27Used by:29
Symbol 29 MovieClip {com.flextoolbox.skins.cursor.DisconnectCursor} [com.flextoolbox.skins.cursor.CutCursor]Uses:26 28
Symbol 30 GraphicUsed by:33 36
Symbol 31 GraphicUsed by:32
Symbol 32 MovieClipUses:31Used by:33
Symbol 33 MovieClip {com.flextoolbox.containers.CollapsiblePanel_collapseButtonDisabledSkin} [CollapseButtonDisabled]Uses:30 32
Symbol 34 GraphicUsed by:35
Symbol 35 MovieClipUses:34Used by:36 37 38
Symbol 36 MovieClip {com.flextoolbox.containers.CollapsiblePanel_collapseButtonUpSkin} [CollapseButtonUp]Uses:30 35
Symbol 37 MovieClip {com.flextoolbox.containers.CollapsiblePanel_collapseButtonDownSkin} [CollapseButtonDown]Uses:16 35
Symbol 38 MovieClip {com.flextoolbox.containers.CollapsiblePanel_collapseButtonOverSkin} [CollapseButtonOver]Uses:22 35

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1459 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 2Symbol 2 as "moveCursorSkin"
ExportAssets (56)Timeline Frame 2Symbol 6 as "mx.skins.cursor.DragCopy"
ExportAssets (56)Timeline Frame 2Symbol 7 as "mx.skins.cursor.DragMove"
ExportAssets (56)Timeline Frame 2Symbol 10 as "mx.skins.cursor.DragReject"
ExportAssets (56)Timeline Frame 2Symbol 12 as "mx.skins.cursor.DragLink"
ExportAssets (56)Timeline Frame 2Symbol 14 as "mx.skins.cursor.BusyCursor"
ExportAssets (56)Timeline Frame 2Symbol 19 as "CloseButtonUp"
ExportAssets (56)Timeline Frame 2Symbol 20 as "CloseButtonDisabled"
ExportAssets (56)Timeline Frame 2Symbol 23 as "CloseButtonOver"
ExportAssets (56)Timeline Frame 2Symbol 24 as "CloseButtonDown"
ExportAssets (56)Timeline Frame 2Symbol 29 as "com.flextoolbox.skins.cursor.CutCursor"
ExportAssets (56)Timeline Frame 2Symbol 33 as "CollapseButtonDisabled"
ExportAssets (56)Timeline Frame 2Symbol 36 as "CollapseButtonUp"
ExportAssets (56)Timeline Frame 2Symbol 37 as "CollapseButtonDown"
ExportAssets (56)Timeline Frame 2Symbol 38 as "CollapseButtonOver"
SerialNumber (41)Timeline Frame 1

Labels

"_Logicly_mx_managers_SystemManager"Frame 1
"Logicly"Frame 2




http://swfchan.com/11/51088/info.shtml
Created: 25/4 -2019 11:06:28 Last modified: 25/4 -2019 11:06:28 Server time: 05/05 -2024 12:51:09