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

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

Volly-Bounce.swf

This is the info page for
Flash #56260

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


Text
Finished Loading.
Click to play.

<p align="left"><font face="Copperplate Gothic Light" size="12" color="#666666" letterSpacing="0.000000" kerning="1"><b>Message to User Name</b></font></p>

Message from

<p align="left"><font face="Copperplate Gothic Light" size="14" color="#04999b" letterSpacing="0.000000" kerning="1"><b>User Name</b></font></p>

<p align="center"><font face="Copperplate Gothic Light" size="14" color="#000000" letterSpacing="0.000000" kerning="1"><b>Some Name</b></font></p>

<p align="center"><font face="Copperplate Gothic Light" size="14" color="#000000" letterSpacing="0.000000" kerning="1"><b>rank: 57 (Master)</b></font></p>

send message

send message

flag as abusive

flag as abusive

cancel

cancel

ignore

ignore

un -

promote

promote

ban

ban

- Challenge! -

- Challenge! -

Dude, you
FOUND
yourself!!

And the winner is...

<p align="center"><font face="Copperplate Gothic Light" size="18" color="#04999b" letterSpacing="0.000000" kerning="1"><b>- Player name! -</b></font></p>

This is you.

<p align="left"><font face="Copperplate Gothic Light" size="10" color="#000000" letterSpacing="0.000000" kerning="1"><b>text</b></font></p>

<p align="left"><font face="Copperplate Gothic Light" size="10" color="#666666" letterSpacing="0.000000" kerning="1"><b>999</b></font></p>

<p align="left"><font face="Copperplate Gothic Light" size="10" color="#687d35" letterSpacing="0.000000" kerning="1"><b>-</b></font></p>

Connecting

.

..

...

Volly-Bounce

<p align="left"><font face="Argos MF" size="12" color="#009999" letterSpacing="0.000000" kerning="1">v 0.2 </font></p>

<p align="left"></p>

<p align="left"></p>

<p align="right"></p>

<p align="right"></p>

Accept Challenges?

Accept Messages?

<p align="left"></p>

Show Chat?

Yes

Yes

No

No

<p align="center"><font face="Copperplate Gothic Light" size="12" color="#000000" letterSpacing="0.000000" kerning="1"><b>Players Online: 999</b></font></p>

Chat:

Chat is
disabled

logout

logout

log in

create account

name:

pass:

pass:

server:

Play as a Guest

music by Flashgigant

music by Flashgigant

game by Jiggmin

game by Jiggmin

3

2

1

GO!

mute

mute

ActionScript [AS3]

Section 1
//BaseScrollPane (fl.containers.BaseScrollPane) package fl.containers { import fl.core.*; import fl.controls.*; import flash.display.*; import flash.events.*; import fl.events.*; import flash.geom.*; public class BaseScrollPane extends UIComponent { protected var defaultLineScrollSize:Number;// = 4 protected var _maxHorizontalScrollPosition:Number;// = 0 protected var vScrollBar:Boolean; protected var disabledOverlay:Shape; protected var hScrollBar:Boolean; protected var availableWidth:Number; protected var _verticalPageScrollSize:Number;// = 0 protected var vOffset:Number;// = 0 protected var _verticalScrollBar:ScrollBar; protected var useFixedHorizontalScrolling:Boolean;// = false protected var contentWidth:Number;// = 0 protected var contentHeight:Number;// = 0 protected var _horizontalPageScrollSize:Number;// = 0 protected var background:DisplayObject; protected var _useBitmpScrolling:Boolean;// = false protected var contentPadding:Number;// = 0 protected var availableHeight:Number; protected var _horizontalScrollBar:ScrollBar; protected var contentScrollRect:Rectangle; protected var _horizontalScrollPolicy:String; protected var _verticalScrollPolicy:String; protected static const SCROLL_BAR_STYLES:Object = {upArrowDisabledSkin:"upArrowDisabledSkin", upArrowDownSkin:"upArrowDownSkin", upArrowOverSkin:"upArrowOverSkin", upArrowUpSkin:"upArrowUpSkin", downArrowDisabledSkin:"downArrowDisabledSkin", downArrowDownSkin:"downArrowDownSkin", downArrowOverSkin:"downArrowOverSkin", downArrowUpSkin:"downArrowUpSkin", thumbDisabledSkin:"thumbDisabledSkin", thumbDownSkin:"thumbDownSkin", thumbOverSkin:"thumbOverSkin", thumbUpSkin:"thumbUpSkin", thumbIcon:"thumbIcon", trackDisabledSkin:"trackDisabledSkin", trackDownSkin:"trackDownSkin", trackOverSkin:"trackOverSkin", trackUpSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {repeatDelay:500, repeatInterval:35, skin:"ScrollPane_upSkin", contentPadding:0, disabledAlpha:0.5}; public function BaseScrollPane(){ contentWidth = 0; contentHeight = 0; contentPadding = 0; vOffset = 0; _maxHorizontalScrollPosition = 0; _horizontalPageScrollSize = 0; _verticalPageScrollSize = 0; defaultLineScrollSize = 4; useFixedHorizontalScrolling = false; _useBitmpScrolling = false; super(); } protected function handleWheel(_arg1:MouseEvent):void{ if (((((!(enabled)) || (!(_verticalScrollBar.visible)))) || ((contentHeight <= availableHeight)))){ return; }; _verticalScrollBar.scrollPosition = (_verticalScrollBar.scrollPosition - (_arg1.delta * verticalLineScrollSize)); setVerticalScrollPosition(_verticalScrollBar.scrollPosition); dispatchEvent(new ScrollEvent(ScrollBarDirection.VERTICAL, _arg1.delta, horizontalScrollPosition)); } public function get verticalScrollPosition():Number{ return (_verticalScrollBar.scrollPosition); } protected function drawDisabledOverlay():void{ if (enabled){ if (contains(disabledOverlay)){ removeChild(disabledOverlay); }; } else { disabledOverlay.x = (disabledOverlay.y = contentPadding); disabledOverlay.width = availableWidth; disabledOverlay.height = availableHeight; disabledOverlay.alpha = (getStyleValue("disabledAlpha") as Number); addChild(disabledOverlay); }; } public function set verticalScrollPosition(_arg1:Number):void{ drawNow(); _verticalScrollBar.scrollPosition = _arg1; setVerticalScrollPosition(_verticalScrollBar.scrollPosition, false); } protected function setContentSize(_arg1:Number, _arg2:Number):void{ if ((((((contentWidth == _arg1)) || (useFixedHorizontalScrolling))) && ((contentHeight == _arg2)))){ return; }; contentWidth = _arg1; contentHeight = _arg2; invalidate(InvalidationType.SIZE); } public function get horizontalScrollPosition():Number{ return (_horizontalScrollBar.scrollPosition); } public function get horizontalScrollBar():ScrollBar{ return (_horizontalScrollBar); } override public function set enabled(_arg1:Boolean):void{ if (enabled == _arg1){ return; }; _verticalScrollBar.enabled = _arg1; _horizontalScrollBar.enabled = _arg1; super.enabled = _arg1; } public function get verticalLineScrollSize():Number{ return (_verticalScrollBar.lineScrollSize); } public function get horizontalScrollPolicy():String{ return (_horizontalScrollPolicy); } protected function calculateAvailableSize():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = ScrollBar.WIDTH; _local2 = (contentPadding = Number(getStyleValue("contentPadding"))); _local3 = ((height - (2 * _local2)) - vOffset); vScrollBar = (((_verticalScrollPolicy == ScrollPolicy.ON)) || ((((_verticalScrollPolicy == ScrollPolicy.AUTO)) && ((contentHeight > _local3))))); _local4 = ((width - (vScrollBar) ? _local1 : 0) - (2 * _local2)); _local5 = (useFixedHorizontalScrolling) ? _maxHorizontalScrollPosition : (contentWidth - _local4); hScrollBar = (((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_local5 > 0))))); if (hScrollBar){ _local3 = (_local3 - _local1); }; if (((((((hScrollBar) && (!(vScrollBar)))) && ((_verticalScrollPolicy == ScrollPolicy.AUTO)))) && ((contentHeight > _local3)))){ vScrollBar = true; _local4 = (_local4 - _local1); }; availableHeight = (_local3 + vOffset); availableWidth = _local4; } public function get maxVerticalScrollPosition():Number{ drawNow(); return (Math.max(0, (contentHeight - availableHeight))); } public function set horizontalScrollPosition(_arg1:Number):void{ drawNow(); _horizontalScrollBar.scrollPosition = _arg1; setHorizontalScrollPosition(_horizontalScrollBar.scrollPosition, false); } public function get horizontalLineScrollSize():Number{ return (_horizontalScrollBar.lineScrollSize); } public function set verticalPageScrollSize(_arg1:Number):void{ _verticalPageScrollSize = _arg1; invalidate(InvalidationType.SIZE); } public function get verticalScrollPolicy():String{ return (_verticalScrollPolicy); } protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ } public function get useBitmapScrolling():Boolean{ return (_useBitmpScrolling); } protected function handleScroll(_arg1:ScrollEvent):void{ if (_arg1.target == _verticalScrollBar){ setVerticalScrollPosition(_arg1.position); } else { setHorizontalScrollPosition(_arg1.position); }; } public function set verticalLineScrollSize(_arg1:Number):void{ _verticalScrollBar.lineScrollSize = _arg1; } public function get verticalScrollBar():ScrollBar{ return (_verticalScrollBar); } protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ } public function set horizontalPageScrollSize(_arg1:Number):void{ _horizontalPageScrollSize = _arg1; invalidate(InvalidationType.SIZE); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES)){ setStyles(); drawBackground(); if (contentPadding != getStyleValue("contentPadding")){ invalidate(InvalidationType.SIZE, false); }; }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STATE)){ drawLayout(); }; updateChildren(); super.draw(); } public function set horizontalScrollPolicy(_arg1:String):void{ _horizontalScrollPolicy = _arg1; invalidate(InvalidationType.SIZE); } override protected function configUI():void{ var _local1:Graphics; super.configUI(); contentScrollRect = new Rectangle(0, 0, 85, 85); _verticalScrollBar = new ScrollBar(); _verticalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true); _verticalScrollBar.visible = false; _verticalScrollBar.lineScrollSize = defaultLineScrollSize; addChild(_verticalScrollBar); copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES); _horizontalScrollBar = new ScrollBar(); _horizontalScrollBar.direction = ScrollBarDirection.HORIZONTAL; _horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true); _horizontalScrollBar.visible = false; _horizontalScrollBar.lineScrollSize = defaultLineScrollSize; addChild(_horizontalScrollBar); copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES); disabledOverlay = new Shape(); _local1 = disabledOverlay.graphics; _local1.beginFill(0xFFFFFF); _local1.drawRect(0, 0, width, height); _local1.endFill(); addEventListener(MouseEvent.MOUSE_WHEEL, handleWheel, false, 0, true); } protected function calculateContentWidth():void{ } public function get verticalPageScrollSize():Number{ if (isNaN(availableHeight)){ drawNow(); }; return (((((_verticalPageScrollSize == 0)) && (!(isNaN(availableHeight))))) ? availableHeight : _verticalPageScrollSize); } protected function drawLayout():void{ calculateAvailableSize(); calculateContentWidth(); background.width = width; background.height = height; if (vScrollBar){ _verticalScrollBar.visible = true; _verticalScrollBar.x = ((width - ScrollBar.WIDTH) - contentPadding); _verticalScrollBar.y = contentPadding; _verticalScrollBar.height = availableHeight; } else { _verticalScrollBar.visible = false; }; _verticalScrollBar.setScrollProperties(availableHeight, 0, (contentHeight - availableHeight), verticalPageScrollSize); setVerticalScrollPosition(_verticalScrollBar.scrollPosition, false); if (hScrollBar){ _horizontalScrollBar.visible = true; _horizontalScrollBar.x = contentPadding; _horizontalScrollBar.y = ((height - ScrollBar.WIDTH) - contentPadding); _horizontalScrollBar.width = availableWidth; } else { _horizontalScrollBar.visible = false; }; _horizontalScrollBar.setScrollProperties(availableWidth, 0, (useFixedHorizontalScrolling) ? _maxHorizontalScrollPosition : (contentWidth - availableWidth), horizontalPageScrollSize); setHorizontalScrollPosition(_horizontalScrollBar.scrollPosition, false); drawDisabledOverlay(); } protected function drawBackground():void{ var _local1:DisplayObject; _local1 = background; background = getDisplayObjectInstance(getStyleValue("skin")); background.width = width; background.height = height; addChildAt(background, 0); if (((!((_local1 == null))) && (!((_local1 == background))))){ removeChild(_local1); }; } public function set horizontalLineScrollSize(_arg1:Number):void{ _horizontalScrollBar.lineScrollSize = _arg1; } public function get horizontalPageScrollSize():Number{ if (isNaN(availableWidth)){ drawNow(); }; return (((((_horizontalPageScrollSize == 0)) && (!(isNaN(availableWidth))))) ? availableWidth : _horizontalPageScrollSize); } public function get maxHorizontalScrollPosition():Number{ drawNow(); return (Math.max(0, (contentWidth - availableWidth))); } protected function setStyles():void{ copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES); copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES); } protected function updateChildren():void{ _verticalScrollBar.enabled = (_horizontalScrollBar.enabled = enabled); _verticalScrollBar.drawNow(); _horizontalScrollBar.drawNow(); } public function set verticalScrollPolicy(_arg1:String):void{ _verticalScrollPolicy = _arg1; invalidate(InvalidationType.SIZE); } public function set useBitmapScrolling(_arg1:Boolean):void{ _useBitmpScrolling = _arg1; invalidate(InvalidationType.STATE); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, ScrollBar.getStyleDefinition())); } } }//package fl.containers
Section 2
//DataGridCellEditor (fl.controls.dataGridClasses.DataGridCellEditor) package fl.controls.dataGridClasses { import fl.controls.listClasses.*; import fl.controls.*; public class DataGridCellEditor extends TextInput implements ICellRenderer { protected var _data:Object; protected var _listData:ListData; private static var defaultStyles:Object = {textPadding:1, textFormat:null, upSkin:"DataGridCellEditor_skin"}; public function DataGridCellEditor():void{ } public function get selected():Boolean{ return (false); } public function set listData(_arg1:ListData):void{ _listData = _arg1; text = _listData.label; } public function setMouseState(_arg1:String):void{ } public function set selected(_arg1:Boolean):void{ } public function set data(_arg1:Object):void{ _data = _arg1; } public function get listData():ListData{ return (_listData); } public function get data():Object{ return (_data); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls.dataGridClasses
Section 3
//DataGridColumn (fl.controls.dataGridClasses.DataGridColumn) package fl.controls.dataGridClasses { import fl.core.*; import fl.controls.*; public class DataGridColumn { private var _headerText:String; public var editorDataField:String;// = "text" private var forceImport:DataGridCellEditor; private var _headerRenderer:Object; public var sortOptions:uint;// = 0 private var _cellRenderer:Object; private var _columnName:String; public var resizable:Boolean;// = true private var _sortCompareFunction:Function; private var _visible:Boolean;// = true public var sortDescending:Boolean;// = false public var owner:DataGrid; private var _imeMode:String; private var _width:Number;// = 100 public var editable:Boolean;// = true public var itemEditor:Object;// = "fl.controls.dataGridClasses.DataGridCellEditor" public var explicitWidth:Number; private var _minWidth:Number;// = 20 private var _labelFunction:Function; public var sortable:Boolean;// = true public var colNum:Number; public var dataField:String; public function DataGridColumn(_arg1:String=null){ _minWidth = 20; _width = 100; _visible = true; sortable = true; resizable = true; editable = true; itemEditor = "fl.controls.dataGridClasses.DataGridCellEditor"; editorDataField = "text"; sortDescending = false; sortOptions = 0; super(); if (_arg1){ dataField = _arg1; headerText = _arg1; }; } public function set headerRenderer(_arg1:Object):void{ _headerRenderer = _arg1; if (owner){ owner.invalidate(InvalidationType.DATA); }; } public function get imeMode():String{ return (_imeMode); } public function setWidth(_arg1:Number):void{ _width = _arg1; } public function set width(_arg1:Number):void{ var _local2:Boolean; explicitWidth = _arg1; if (owner != null){ _local2 = resizable; resizable = false; owner.resizeColumn(colNum, _arg1); resizable = _local2; } else { _width = _arg1; }; } public function set cellRenderer(_arg1:Object):void{ _cellRenderer = _arg1; if (owner){ owner.invalidate(InvalidationType.DATA); }; } public function get minWidth():Number{ return (_minWidth); } public function set imeMode(_arg1:String):void{ _imeMode = _arg1; } public function toString():String{ return ("[object DataGridColumn]"); } public function get visible():Boolean{ return (_visible); } public function itemToLabel(_arg1:Object):String{ var data = _arg1; if (!data){ return (" "); }; if (labelFunction != null){ return (labelFunction(data)); }; if (owner.labelFunction != null){ return (owner.labelFunction(data, this)); }; if ((((typeof(data) == "object")) || ((typeof(data) == "xml")))){ try { data = data[dataField]; } catch(e:Error) { data = null; }; }; if ((data is String)){ return (String(data)); }; try { return (data.toString()); } catch(e:Error) { }; return (" "); } public function set minWidth(_arg1:Number):void{ _minWidth = _arg1; if (_width < _arg1){ _width = _arg1; }; if (owner){ owner.invalidate(InvalidationType.SIZE); }; } public function set headerText(_arg1:String):void{ _headerText = _arg1; if (owner){ owner.invalidate(InvalidationType.DATA); }; } public function set sortCompareFunction(_arg1:Function):void{ _sortCompareFunction = _arg1; } public function get width():Number{ return (_width); } public function get cellRenderer():Object{ return (_cellRenderer); } public function set labelFunction(_arg1:Function):void{ if (_labelFunction == _arg1){ return; }; _labelFunction = _arg1; if (owner){ owner.invalidate(InvalidationType.DATA); }; } public function get headerText():String{ return (((_headerText)!=null) ? _headerText : dataField); } public function get sortCompareFunction():Function{ return (_sortCompareFunction); } public function get headerRenderer():Object{ return (_headerRenderer); } public function get labelFunction():Function{ return (_labelFunction); } public function set visible(_arg1:Boolean):void{ if (_visible != _arg1){ _visible = _arg1; if (owner){ owner.invalidate(InvalidationType.SIZE); }; }; } } }//package fl.controls.dataGridClasses
Section 4
//HeaderRenderer (fl.controls.dataGridClasses.HeaderRenderer) package fl.controls.dataGridClasses { import fl.controls.*; public class HeaderRenderer extends LabelButton { public var _column:uint; private static var defaultStyles:Object = {upSkin:"HeaderRenderer_upSkin", downSkin:"HeaderRenderer_downSkin", overSkin:"HeaderRenderer_overSkin", disabledSkin:"HeaderRenderer_disabledSkin", selectedDisabledSkin:"HeaderRenderer_selectedDisabledSkin", selectedUpSkin:"HeaderRenderer_selectedUpSkin", selectedDownSkin:"HeaderRenderer_selectedDownSkin", selectedOverSkin:"HeaderRenderer_selectedOverSkin", textFormat:null, disabledTextFormat:null, textPadding:5}; public function HeaderRenderer():void{ focusEnabled = false; } public function set column(_arg1:uint):void{ _column = _arg1; } public function get column():uint{ return (_column); } override protected function drawLayout():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = Number(getStyleValue("textPadding")); textField.height = (textField.textHeight + 4); textField.visible = (label.length > 0); _local2 = (textField.textWidth + 4); _local3 = (textField.textHeight + 4); _local4 = ((icon)==null) ? 0 : (icon.width + 4); _local5 = Math.max(0, Math.min(_local2, ((width - (2 * _local1)) - _local4))); if (icon != null){ icon.x = (((width - _local1) - icon.width) - 2); icon.y = Math.round(((height - icon.height) / 2)); }; textField.width = _local5; textField.x = _local1; textField.y = Math.round(((height - textField.height) / 2)); background.width = width; background.height = height; } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls.dataGridClasses
Section 5
//CellRenderer (fl.controls.listClasses.CellRenderer) package fl.controls.listClasses { import fl.controls.*; import flash.events.*; public class CellRenderer extends LabelButton implements ICellRenderer { protected var _data:Object; protected var _listData:ListData; private static var defaultStyles:Object = {upSkin:"CellRenderer_upSkin", downSkin:"CellRenderer_downSkin", overSkin:"CellRenderer_overSkin", disabledSkin:"CellRenderer_disabledSkin", selectedDisabledSkin:"CellRenderer_selectedDisabledSkin", selectedUpSkin:"CellRenderer_selectedUpSkin", selectedDownSkin:"CellRenderer_selectedDownSkin", selectedOverSkin:"CellRenderer_selectedOverSkin", textFormat:null, disabledTextFormat:null, embedFonts:null, textPadding:5}; public function CellRenderer():void{ toggle = true; focusEnabled = false; } override protected function toggleSelected(_arg1:MouseEvent):void{ } override public function get selected():Boolean{ return (super.selected); } public function set listData(_arg1:ListData):void{ _listData = _arg1; label = _listData.label; setStyle("icon", _listData.icon); } override public function set selected(_arg1:Boolean):void{ super.selected = _arg1; } public function set data(_arg1:Object):void{ _data = _arg1; } public function get listData():ListData{ return (_listData); } override public function setSize(_arg1:Number, _arg2:Number):void{ super.setSize(_arg1, _arg2); } override protected function drawLayout():void{ var _local1:Number; var _local2:Number; var _local3:Number; _local1 = Number(getStyleValue("textPadding")); _local2 = 0; if (icon != null){ icon.x = _local1; icon.y = Math.round(((height - icon.height) >> 1)); _local2 = (icon.width + _local1); }; if (label.length > 0){ textField.visible = true; _local3 = Math.max(0, ((width - _local2) - (_local1 * 2))); textField.width = _local3; textField.height = (textField.textHeight + 4); textField.x = (_local2 + _local1); textField.y = Math.round(((height - textField.height) >> 1)); } else { textField.visible = false; }; background.width = width; background.height = height; } public function get data():Object{ return (_data); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls.listClasses
Section 6
//ICellRenderer (fl.controls.listClasses.ICellRenderer) package fl.controls.listClasses { public interface ICellRenderer { function setSize(_arg1:Number, _arg2:Number):void; function get listData():ListData; function get data():Object; function setMouseState(_arg1:String):void; function set x(_arg1:Number):void; function set y(_arg1:Number):void; function set data(_arg1:Object):void; function set selected(_arg1:Boolean):void; function set listData(_arg1:ListData):void; function get selected():Boolean; } }//package fl.controls.listClasses
Section 7
//ListData (fl.controls.listClasses.ListData) package fl.controls.listClasses { import fl.core.*; public class ListData { protected var _index:uint; protected var _owner:UIComponent; protected var _label:String; protected var _icon:Object;// = null protected var _row:uint; protected var _column:uint; public function ListData(_arg1:String, _arg2:Object, _arg3:UIComponent, _arg4:uint, _arg5:uint, _arg6:uint=0){ _icon = null; super(); _label = _arg1; _icon = _arg2; _owner = _arg3; _index = _arg4; _row = _arg5; _column = _arg6; } public function get owner():UIComponent{ return (_owner); } public function get label():String{ return (_label); } public function get row():uint{ return (_row); } public function get index():uint{ return (_index); } public function get icon():Object{ return (_icon); } public function get column():uint{ return (_column); } } }//package fl.controls.listClasses
Section 8
//BaseButton (fl.controls.BaseButton) package fl.controls { import fl.core.*; import flash.display.*; import flash.events.*; import fl.events.*; import flash.utils.*; public class BaseButton extends UIComponent { protected var _selected:Boolean;// = false private var unlockedMouseState:String; protected var pressTimer:Timer; protected var mouseState:String; protected var background:DisplayObject; private var _mouseStateLocked:Boolean;// = false protected var _autoRepeat:Boolean;// = false private static var defaultStyles:Object = {upSkin:"Button_upSkin", downSkin:"Button_downSkin", overSkin:"Button_overSkin", disabledSkin:"Button_disabledSkin", selectedDisabledSkin:"Button_selectedDisabledSkin", selectedUpSkin:"Button_selectedUpSkin", selectedDownSkin:"Button_selectedDownSkin", selectedOverSkin:"Button_selectedOverSkin", focusRectSkin:null, focusRectPadding:null, repeatDelay:500, repeatInterval:35}; public function BaseButton(){ _selected = false; _autoRepeat = false; _mouseStateLocked = false; super(); buttonMode = true; mouseChildren = false; useHandCursor = false; setupMouseEvents(); setMouseState("up"); pressTimer = new Timer(1, 0); pressTimer.addEventListener(TimerEvent.TIMER, buttonDown, false, 0, true); } protected function endPress():void{ pressTimer.reset(); } public function set mouseStateLocked(_arg1:Boolean):void{ _mouseStateLocked = _arg1; if (_arg1 == false){ setMouseState(unlockedMouseState); } else { unlockedMouseState = mouseState; }; } public function get autoRepeat():Boolean{ return (_autoRepeat); } public function set autoRepeat(_arg1:Boolean):void{ _autoRepeat = _arg1; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; mouseEnabled = _arg1; } public function get selected():Boolean{ return (_selected); } protected function mouseEventHandler(_arg1:MouseEvent):void{ if (_arg1.type == MouseEvent.MOUSE_DOWN){ setMouseState("down"); startPress(); } else { if ((((_arg1.type == MouseEvent.ROLL_OVER)) || ((_arg1.type == MouseEvent.MOUSE_UP)))){ setMouseState("over"); endPress(); } else { if (_arg1.type == MouseEvent.ROLL_OUT){ setMouseState("up"); endPress(); }; }; }; } public function setMouseState(_arg1:String):void{ if (_mouseStateLocked){ unlockedMouseState = _arg1; return; }; if (mouseState == _arg1){ return; }; mouseState = _arg1; invalidate(InvalidationType.STATE); } protected function startPress():void{ if (_autoRepeat){ pressTimer.delay = Number(getStyleValue("repeatDelay")); pressTimer.start(); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } protected function buttonDown(_arg1:TimerEvent):void{ if (!_autoRepeat){ endPress(); return; }; if (pressTimer.currentCount == 1){ pressTimer.delay = Number(getStyleValue("repeatInterval")); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } public function set selected(_arg1:Boolean):void{ if (_selected == _arg1){ return; }; _selected = _arg1; invalidate(InvalidationType.STATE); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function setupMouseEvents():void{ addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false, 0, true); } protected function drawLayout():void{ background.width = width; background.height = height; } protected function drawBackground():void{ var _local1:String; var _local2:DisplayObject; _local1 = (enabled) ? mouseState : "disabled"; if (selected){ _local1 = (("selected" + _local1.substr(0, 1).toUpperCase()) + _local1.substr(1)); }; _local1 = (_local1 + "Skin"); _local2 = background; background = getDisplayObjectInstance(getStyleValue(_local1)); addChildAt(background, 0); if (((!((_local2 == null))) && (!((_local2 == background))))){ removeChild(_local2); }; } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 9
//Button (fl.controls.Button) package fl.controls { import fl.core.*; import flash.display.*; import fl.managers.*; public class Button extends LabelButton implements IFocusManagerComponent { protected var emphasizedBorder:DisplayObject; protected var _emphasized:Boolean;// = false private static var defaultStyles:Object = {emphasizedSkin:"Button_emphasizedSkin", emphasizedPadding:2}; public static var createAccessibilityImplementation:Function; public function Button(){ _emphasized = false; super(); } override public function drawFocus(_arg1:Boolean):void{ var _local2:Number; var _local3:*; super.drawFocus(_arg1); if (_arg1){ _local2 = Number(getStyleValue("emphasizedPadding")); if ((((_local2 < 0)) || (!(_emphasized)))){ _local2 = 0; }; _local3 = getStyleValue("focusRectPadding"); _local3 = ((_local3)==null) ? 2 : _local3; _local3 = (_local3 + _local2); uiFocusRect.x = -(_local3); uiFocusRect.y = -(_local3); uiFocusRect.width = (width + (_local3 * 2)); uiFocusRect.height = (height + (_local3 * 2)); }; } public function set emphasized(_arg1:Boolean):void{ _emphasized = _arg1; invalidate(InvalidationType.STYLES); } override protected function draw():void{ if (((isInvalid(InvalidationType.STYLES)) || (isInvalid(InvalidationType.SIZE)))){ drawEmphasized(); }; super.draw(); if (emphasizedBorder != null){ setChildIndex(emphasizedBorder, (numChildren - 1)); }; } public function get emphasized():Boolean{ return (_emphasized); } override protected function initializeAccessibility():void{ if (Button.createAccessibilityImplementation != null){ Button.createAccessibilityImplementation(this); }; } protected function drawEmphasized():void{ var _local1:Object; var _local2:Number; if (emphasizedBorder != null){ removeChild(emphasizedBorder); }; emphasizedBorder = null; if (!_emphasized){ return; }; _local1 = getStyleValue("emphasizedSkin"); if (_local1 != null){ emphasizedBorder = getDisplayObjectInstance(_local1); }; if (emphasizedBorder != null){ addChildAt(emphasizedBorder, 0); _local2 = Number(getStyleValue("emphasizedPadding")); emphasizedBorder.x = (emphasizedBorder.y = -(_local2)); emphasizedBorder.width = (width + (_local2 * 2)); emphasizedBorder.height = (height + (_local2 * 2)); }; } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(LabelButton.getStyleDefinition(), defaultStyles)); } } }//package fl.controls
Section 10
//ButtonLabelPlacement (fl.controls.ButtonLabelPlacement) package fl.controls { public class ButtonLabelPlacement { public static const TOP:String = "top"; public static const LEFT:String = "left"; public static const BOTTOM:String = "bottom"; public static const RIGHT:String = "right"; } }//package fl.controls
Section 11
//ComboBox (fl.controls.ComboBox) package fl.controls { import fl.controls.listClasses.*; import fl.core.*; import flash.display.*; import flash.events.*; import fl.data.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.geom.*; import flash.ui.*; public class ComboBox extends UIComponent implements IFocusManagerComponent { protected var _dropdownWidth:Number; protected var highlightedCell:int;// = -1 protected var _prompt:String; protected var isOpen:Boolean;// = false protected var list:List; protected var _rowCount:uint;// = 5 protected var currentIndex:int; protected var isKeyDown:Boolean;// = false protected var _labels:Array; protected var background:BaseButton; protected var inputField:TextInput; protected var listOverIndex:uint; protected var editableValue:String; protected var _editable:Boolean;// = false private var collectionItemImport:SimpleCollectionItem; protected static const BACKGROUND_STYLES:Object = {overSkin:"overSkin", downSkin:"downSkin", upSkin:"upSkin", disabledSkin:"disabledSkin", repeatInterval:"repeatInterval"}; protected static const LIST_STYLES:Object = {upSkin:"comboListUpSkin", overSkin:"comboListOverSkin", downSkin:"comobListDownSkin", disabledSkin:"comboListDisabledSkin", downArrowDisabledSkin:"downArrowDisabledSkin", downArrowDownSkin:"downArrowDownSkin", downArrowOverSkin:"downArrowOverSkin", downArrowUpSkin:"downArrowUpSkin", upArrowDisabledSkin:"upArrowDisabledSkin", upArrowDownSkin:"upArrowDownSkin", upArrowOverSkin:"upArrowOverSkin", upArrowUpSkin:"upArrowUpSkin", thumbDisabledSkin:"thumbDisabledSkin", thumbDownSkin:"thumbDownSkin", thumbOverSkin:"thumbOverSkin", thumbUpSkin:"thumbUpSkin", thumbIcon:"thumbIcon", trackDisabledSkin:"trackDisabledSkin", trackDownSkin:"trackDownSkin", trackOverSkin:"trackOverSkin", trackUpSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval", textFormat:"textFormat", disabledAlpha:"disabledAlpha", skin:"listSkin"}; private static var defaultStyles:Object = {upSkin:"ComboBox_upSkin", downSkin:"ComboBox_downSkin", overSkin:"ComboBox_overSkin", disabledSkin:"ComboBox_disabledSkin", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, textPadding:3, buttonWidth:24, disabledAlpha:null, listSkin:null}; public static var createAccessibilityImplementation:Function; public function ComboBox(){ _rowCount = 5; _editable = false; isOpen = false; highlightedCell = -1; isKeyDown = false; super(); } protected function drawList():void{ list.rowCount = Math.max(0, Math.min(_rowCount, list.dataProvider.length)); } public function set imeMode(_arg1:String):void{ inputField.imeMode = _arg1; } public function get dropdown():List{ return (list); } public function get dropdownWidth():Number{ return (list.width); } public function sortItemsOn(_arg1:String, _arg2:Object=null){ return (list.sortItemsOn(_arg1, _arg2)); } protected function onEnter(_arg1:ComponentEvent):void{ _arg1.stopPropagation(); } public function removeItemAt(_arg1:uint):void{ list.removeItemAt(_arg1); invalidate(InvalidationType.DATA); } public function open():void{ currentIndex = selectedIndex; if (((isOpen) || ((length == 0)))){ return; }; dispatchEvent(new Event(Event.OPEN)); isOpen = true; addEventListener(Event.ENTER_FRAME, addCloseListener, false, 0, true); positionList(); list.scrollToSelected(); stage.addChild(list); } public function get selectedItem():Object{ return (list.selectedItem); } public function set text(_arg1:String):void{ if (!editable){ return; }; inputField.text = _arg1; } public function get labelField():String{ return (list.labelField); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:int; var _local3:uint; var _local4:Number; var _local5:int; isKeyDown = true; if (_arg1.ctrlKey){ switch (_arg1.keyCode){ case Keyboard.UP: if (highlightedCell > -1){ selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; close(); break; case Keyboard.DOWN: open(); break; }; return; }; _arg1.stopPropagation(); _local2 = Math.max(((calculateAvailableHeight() / list.rowHeight) << 0), 1); _local3 = selectedIndex; _local4 = ((highlightedCell)==-1) ? selectedIndex : highlightedCell; _local5 = -1; switch (_arg1.keyCode){ case Keyboard.SPACE: if (isOpen){ close(); } else { open(); }; return; case Keyboard.ESCAPE: if (isOpen){ if (highlightedCell > -1){ selectedIndex = selectedIndex; }; close(); }; return; case Keyboard.UP: _local5 = Math.max(0, (_local4 - 1)); break; case Keyboard.DOWN: _local5 = Math.min((length - 1), (_local4 + 1)); break; case Keyboard.PAGE_UP: _local5 = Math.max((_local4 - _local2), 0); break; case Keyboard.PAGE_DOWN: _local5 = Math.min((_local4 + _local2), (length - 1)); break; case Keyboard.HOME: _local5 = 0; break; case Keyboard.END: _local5 = (length - 1); break; case Keyboard.ENTER: if (((_editable) && ((highlightedCell == -1)))){ editableValue = inputField.text; selectedIndex = -1; } else { if (((isOpen) && ((highlightedCell > -1)))){ editableValue = null; selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; }; dispatchEvent(new ComponentEvent(ComponentEvent.ENTER)); close(); return; default: if (editable){ break; }; _local5 = list.getNextIndexAtLetter(String.fromCharCode(_arg1.keyCode), _local4); break; }; if (_local5 > -1){ if (isOpen){ highlightCell(_local5); inputField.text = list.itemToLabel(getItemAt(_local5)); } else { highlightCell(); selectedIndex = _local5; dispatchEvent(new Event(Event.CHANGE)); }; }; } public function set dropdownWidth(_arg1:Number):void{ _dropdownWidth = _arg1; invalidate(InvalidationType.SIZE); } public function get editable():Boolean{ return (_editable); } override protected function focusInHandler(_arg1:FocusEvent):void{ super.focusInHandler(_arg1); if (editable){ stage.focus = inputField.textField; }; } protected function onStageClick(_arg1:MouseEvent):void{ if (!isOpen){ return; }; if (((!(contains((_arg1.target as DisplayObject)))) && (!(list.contains((_arg1.target as DisplayObject)))))){ if (highlightedCell != -1){ selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; close(); }; } protected function handleDataChange(_arg1:DataChangeEvent):void{ invalidate(InvalidationType.DATA); } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ isKeyDown = false; } protected function onListItemUp(_arg1:MouseEvent):void{ var _local2:*; stage.removeEventListener(MouseEvent.MOUSE_UP, onListItemUp); if (((!((_arg1.target is ICellRenderer))) || (!(list.contains((_arg1.target as DisplayObject)))))){ return; }; editableValue = null; _local2 = selectedIndex; selectedIndex = _arg1.target.listData.index; if (_local2 != selectedIndex){ dispatchEvent(new Event(Event.CHANGE)); }; close(); } public function removeAll():void{ list.removeAll(); inputField.text = ""; invalidate(InvalidationType.DATA); } public function set selectedItem(_arg1:Object):void{ list.selectedItem = _arg1; invalidate(InvalidationType.SELECTED); } protected function highlightCell(_arg1:int=-1):void{ var _local2:ICellRenderer; if (highlightedCell > -1){ _local2 = list.itemToCellRenderer(getItemAt(highlightedCell)); if (_local2 != null){ _local2.setMouseState("up"); }; }; if (_arg1 == -1){ return; }; list.scrollToIndex(_arg1); list.drawNow(); _local2 = list.itemToCellRenderer(getItemAt(_arg1)); if (_local2 != null){ _local2.setMouseState("over"); highlightedCell = _arg1; }; } public function itemToLabel(_arg1:Object):String{ if (_arg1 == null){ return (""); }; return (list.itemToLabel(_arg1)); } public function addItemAt(_arg1:Object, _arg2:uint):void{ list.addItemAt(_arg1, _arg2); invalidate(InvalidationType.DATA); } public function replaceItemAt(_arg1:Object, _arg2:uint):Object{ return (list.replaceItemAt(_arg1, _arg2)); } protected function showPrompt():void{ inputField.text = _prompt; } public function set rowCount(_arg1:uint):void{ _rowCount = _arg1; invalidate(InvalidationType.SIZE); } public function get restrict():String{ return (inputField.restrict); } protected function setEmbedFonts():void{ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ inputField.textField.embedFonts = _local1; }; } public function sortItems(... _args){ return (list.sortItems.apply(list, _args)); } public function set labelField(_arg1:String):void{ list.labelField = _arg1; invalidate(InvalidationType.DATA); } public function set editable(_arg1:Boolean):void{ _editable = _arg1; drawTextField(); } public function set prompt(_arg1:String):void{ if (_arg1 == ""){ _prompt = null; } else { _prompt = _arg1; }; invalidate(InvalidationType.STATE); } public function get length():int{ return (list.length); } protected function drawTextField():void{ inputField.setStyle("upSkin", ""); inputField.setStyle("disabledSkin", ""); inputField.enabled = enabled; inputField.editable = _editable; inputField.textField.selectable = ((enabled) && (_editable)); inputField.mouseEnabled = (inputField.mouseChildren = ((enabled) && (_editable))); inputField.focusEnabled = false; if (_editable){ inputField.addEventListener(FocusEvent.FOCUS_IN, onInputFieldFocus, false, 0, true); inputField.addEventListener(FocusEvent.FOCUS_OUT, onInputFieldFocusOut, false, 0, true); } else { inputField.removeEventListener(FocusEvent.FOCUS_IN, onInputFieldFocus); inputField.removeEventListener(FocusEvent.FOCUS_OUT, onInputFieldFocusOut); }; } protected function onInputFieldFocusOut(_arg1:FocusEvent):void{ inputField.removeEventListener(ComponentEvent.ENTER, onEnter); selectedIndex = selectedIndex; } protected function passEvent(_arg1:Event):void{ dispatchEvent(_arg1); } public function get imeMode():String{ return (inputField.imeMode); } public function get labelFunction():Function{ return (list.labelFunction); } protected function calculateAvailableHeight():Number{ var _local1:Number; _local1 = Number(getStyleValue("contentPadding")); return ((list.height - (_local1 * 2))); } public function get selectedIndex():int{ return (list.selectedIndex); } override protected function focusOutHandler(_arg1:FocusEvent):void{ isKeyDown = false; if (isOpen){ if (((!(_arg1.relatedObject)) || (!(list.contains(_arg1.relatedObject))))){ if (((!((highlightedCell == -1))) && (!((highlightedCell == selectedIndex))))){ selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; close(); }; }; super.focusOutHandler(_arg1); } public function get selectedLabel():String{ if (editableValue != null){ return (editableValue); }; if (selectedIndex == -1){ return (null); }; return (itemToLabel(selectedItem)); } public function get text():String{ return (inputField.text); } protected function onListChange(_arg1:Event):void{ editableValue = null; dispatchEvent(_arg1); invalidate(InvalidationType.SELECTED); if (isKeyDown){ return; }; close(); } protected function onToggleListVisibility(_arg1:MouseEvent):void{ _arg1.stopPropagation(); dispatchEvent(_arg1); if (isOpen){ close(); } else { open(); stage.addEventListener(MouseEvent.MOUSE_UP, onListItemUp, false, 0, true); }; } override protected function draw():void{ var _local1:*; _local1 = selectedIndex; if ((((_local1 == -1)) && (((((!((prompt == null))) || (editable))) || ((length == 0)))))){ _local1 = Math.max(-1, Math.min(_local1, (length - 1))); } else { editableValue = null; _local1 = Math.max(0, Math.min(_local1, (length - 1))); }; if (list.selectedIndex != _local1){ list.selectedIndex = _local1; invalidate(InvalidationType.SELECTED, false); }; if (isInvalid(InvalidationType.STYLES)){ setStyles(); setEmbedFonts(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.DATA, InvalidationType.STATE)){ drawTextFormat(); drawLayout(); invalidate(InvalidationType.DATA); }; if (isInvalid(InvalidationType.DATA)){ drawList(); invalidate(InvalidationType.SELECTED, true); }; if (isInvalid(InvalidationType.SELECTED)){ if ((((_local1 == -1)) && (!((editableValue == null))))){ inputField.text = editableValue; } else { if (_local1 > -1){ if (length > 0){ inputField.horizontalScrollPosition = 0; inputField.text = itemToLabel(list.selectedItem); }; } else { if ((((_local1 == -1)) && (!((_prompt == null))))){ showPrompt(); } else { inputField.text = ""; }; }; }; if (((((editable) && ((selectedIndex > -1)))) && ((stage.focus == inputField.textField)))){ inputField.setSelection(0, inputField.length); }; }; drawTextField(); super.draw(); } public function addItem(_arg1:Object):void{ list.addItem(_arg1); invalidate(InvalidationType.DATA); } public function get rowCount():uint{ return (_rowCount); } override protected function configUI():void{ super.configUI(); background = new BaseButton(); background.focusEnabled = false; copyStylesToChild(background, BACKGROUND_STYLES); background.addEventListener(MouseEvent.MOUSE_DOWN, onToggleListVisibility, false, 0, true); addChild(background); inputField = new TextInput(); inputField.focusTarget = (this as IFocusManagerComponent); inputField.focusEnabled = false; inputField.addEventListener(Event.CHANGE, onTextInput, false, 0, true); addChild(inputField); list = new List(); list.focusEnabled = false; copyStylesToChild(list, LIST_STYLES); list.addEventListener(Event.CHANGE, onListChange, false, 0, true); list.addEventListener(ListEvent.ITEM_CLICK, onListChange, false, 0, true); list.addEventListener(ListEvent.ITEM_ROLL_OUT, passEvent, false, 0, true); list.addEventListener(ListEvent.ITEM_ROLL_OVER, passEvent, false, 0, true); list.verticalScrollBar.addEventListener(Event.SCROLL, passEvent, false, 0, true); } protected function positionList():void{ var _local1:Point; _local1 = localToGlobal(new Point(0, 0)); list.x = _local1.x; if (((_local1.y + height) + list.height) > stage.stageHeight){ list.y = (_local1.y - list.height); } else { list.y = (_local1.y + height); }; } public function get value():String{ var _local1:Object; if (editableValue != null){ return (editableValue); }; _local1 = selectedItem; if (((!(_editable)) && (!((_local1.data == null))))){ return (_local1.data); }; return (itemToLabel(_local1)); } public function get prompt():String{ return (_prompt); } public function set dataProvider(_arg1:DataProvider):void{ _arg1.addEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange, false, 0, true); list.dataProvider = _arg1; invalidate(InvalidationType.DATA); } public function set restrict(_arg1:String):void{ if (((componentInspectorSetting) && ((_arg1 == "")))){ _arg1 = null; }; if (!_editable){ return; }; inputField.restrict = _arg1; } protected function onTextInput(_arg1:Event):void{ _arg1.stopPropagation(); if (!_editable){ return; }; editableValue = inputField.text; selectedIndex = -1; dispatchEvent(new Event(Event.CHANGE)); } protected function onInputFieldFocus(_arg1:FocusEvent):void{ inputField.addEventListener(ComponentEvent.ENTER, onEnter, false, 0, true); close(); } public function getItemAt(_arg1:uint):Object{ return (list.getItemAt(_arg1)); } override protected function initializeAccessibility():void{ if (ComboBox.createAccessibilityImplementation != null){ ComboBox.createAccessibilityImplementation(this); }; } protected function drawLayout():void{ var _local1:Number; var _local2:Number; _local1 = (getStyleValue("buttonWidth") as Number); _local2 = (getStyleValue("textPadding") as Number); background.setSize(width, height); inputField.x = (inputField.y = _local2); inputField.setSize(((width - _local1) - _local2), (height - _local2)); list.width = (isNaN(_dropdownWidth)) ? width : _dropdownWidth; background.enabled = enabled; background.drawNow(); } public function removeItem(_arg1:Object):Object{ return (list.removeItem(_arg1)); } private function addCloseListener(_arg1:Event){ removeEventListener(Event.ENTER_FRAME, addCloseListener); if (!isOpen){ return; }; stage.addEventListener(MouseEvent.MOUSE_DOWN, onStageClick, false, 0, true); } public function get dataProvider():DataProvider{ return (list.dataProvider); } public function get textField():TextInput{ return (inputField); } protected function setStyles():void{ copyStylesToChild(background, BACKGROUND_STYLES); copyStylesToChild(list, LIST_STYLES); } public function set labelFunction(_arg1:Function):void{ list.labelFunction = _arg1; invalidate(InvalidationType.DATA); } protected function drawTextFormat():void{ var _local1:TextFormat; _local1 = (getStyleValue((_enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local1 == null){ _local1 = new TextFormat(); }; inputField.textField.defaultTextFormat = _local1; inputField.textField.setTextFormat(_local1); setEmbedFonts(); } public function set selectedIndex(_arg1:int):void{ list.selectedIndex = _arg1; highlightCell(); invalidate(InvalidationType.SELECTED); } public function close():void{ highlightCell(); highlightedCell = -1; if (!isOpen){ return; }; dispatchEvent(new Event(Event.CLOSE)); stage.removeEventListener(MouseEvent.MOUSE_DOWN, onStageClick); isOpen = false; stage.removeChild(list); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, List.getStyleDefinition())); } } }//package fl.controls
Section 12
//DataGrid (fl.controls.DataGrid) package fl.controls { import fl.controls.listClasses.*; import fl.core.*; import flash.display.*; import flash.events.*; import fl.data.*; import fl.managers.*; import fl.events.*; import fl.controls.dataGridClasses.*; import flash.utils.*; import flash.geom.*; import flash.ui.*; public class DataGrid extends SelectableList implements IFocusManagerComponent { protected var _showHeaders:Boolean;// = true protected var _sortIndex:int;// = -1 protected var _minColumnWidth:Number; protected var _headerRenderer:Object; public var sortableColumns:Boolean;// = true protected var activeCellRenderersMap:Dictionary; protected var _labelFunction:Function; protected var headerSortArrow:Sprite; protected var _sortDescending:Boolean;// = false protected var losingFocus:Boolean;// = false protected var maxHeaderHeight:Number;// = 25 protected var minColumnWidthInvalid:Boolean;// = false protected var _rowHeight:Number;// = 20 protected var _cellRenderer:Object; protected var proposedEditedItemPosition; public var editable:Boolean;// = false protected var dragHandlesMap:Dictionary; protected var header:Sprite; protected var availableCellRenderersMap:Dictionary; protected var _columns:Array; public var resizableColumns:Boolean;// = true protected var columnStretchStartWidth:Number; protected var actualRowIndex:int; protected var _editedItemPosition:Object; protected var editedItemPositionChanged:Boolean;// = false protected var actualColIndex:int; protected var columnStretchCursor:Sprite; protected var visibleColumns:Array; protected var headerMask:Sprite; public var itemEditorInstance:Object; protected var displayableColumns:Array; protected var columnStretchIndex:Number;// = -1 protected var columnsInvalid:Boolean;// = true protected var currentHoveredRow:int;// = -1 protected var isPressed:Boolean;// = false protected var lastSortIndex:int;// = -1 protected var columnStretchStartX:Number; protected var _headerHeight:Number;// = 25 protected static const HEADER_STYLES:Object = {disabledSkin:"headerDisabledSkin", downSkin:"headerDownSkin", overSkin:"headerOverSkin", upSkin:"headerUpSkin", textFormat:"headerTextFormat", disabledTextFormat:"headerDisabledTextFormat", textPadding:"headerTextPadding"}; private static var defaultStyles:Object = {headerUpSkin:"HeaderRenderer_upSkin", headerDownSkin:"HeaderRenderer_downSkin", headerOverSkin:"HeaderRenderer_overSkin", headerDisabledSkin:"HeaderRenderer_disabledSkin", headerSortArrowDescSkin:"HeaderSortArrow_descIcon", headerSortArrowAscSkin:"HeaderSortArrow_ascIcon", columnStretchCursorSkin:"ColumnStretch_cursor", columnDividerSkin:null, headerTextFormat:null, headerDisabledTextFormat:null, headerTextPadding:5, headerRenderer:HeaderRenderer, focusRectSkin:null, focusRectPadding:null, skin:"DataGrid_skin"}; public static var createAccessibilityImplementation:Function; public function DataGrid(){ _rowHeight = 20; _headerHeight = 25; _showHeaders = true; columnsInvalid = true; minColumnWidthInvalid = false; columnStretchIndex = -1; _sortIndex = -1; lastSortIndex = -1; _sortDescending = false; editedItemPositionChanged = false; isPressed = false; losingFocus = false; maxHeaderHeight = 25; currentHoveredRow = -1; editable = false; resizableColumns = true; sortableColumns = true; super(); if (_columns == null){ _columns = []; }; _horizontalScrollPolicy = ScrollPolicy.OFF; activeCellRenderersMap = new Dictionary(true); availableCellRenderersMap = new Dictionary(true); addEventListener(DataGridEvent.ITEM_EDIT_BEGINNING, itemEditorItemEditBeginningHandler, false, -50); addEventListener(DataGridEvent.ITEM_EDIT_BEGIN, itemEditorItemEditBeginHandler, false, -50); addEventListener(DataGridEvent.ITEM_EDIT_END, itemEditorItemEditEndHandler, false, -50); addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); } override protected function drawList():void{ var _local1:uint; var _local2:uint; var _local3:Number; var _local4:Number; var _local5:uint; var _local6:Object; var _local7:ICellRenderer; var _local8:Array; var _local9:DataGridColumn; var _local10:Boolean; var _local11:Dictionary; var _local12:DataGridColumn; var _local13:Sprite; var _local14:UIComponent; var _local15:Array; var _local16:uint; var _local17:uint; var _local18:Number; var _local19:DataGridColumn; var _local20:Object; var _local21:Array; var _local22:Dictionary; var _local23:Object; var _local24:HeaderRenderer; var _local25:Sprite; var _local26:Graphics; var _local27:Boolean; var _local28:String; if (showHeaders){ header.visible = true; header.x = (contentPadding - _horizontalScrollPosition); header.y = contentPadding; listHolder.y = (contentPadding + headerHeight); _local18 = Math.floor((availableHeight - headerHeight)); _verticalScrollBar.setScrollProperties(_local18, 0, (contentHeight - _local18), _verticalScrollBar.pageScrollSize); } else { header.visible = false; listHolder.y = contentPadding; }; listHolder.x = contentPadding; contentScrollRect = listHolder.scrollRect; contentScrollRect.x = _horizontalScrollPosition; contentScrollRect.y = (vOffset + (Math.floor(_verticalScrollPosition) % rowHeight)); listHolder.scrollRect = contentScrollRect; listHolder.cacheAsBitmap = useBitmapScrolling; _local1 = Math.min(Math.max((length - 1), 0), Math.floor((_verticalScrollPosition / rowHeight))); _local2 = Math.min(Math.max((length - 1), 0), ((_local1 + rowCount) + 1)); _local10 = list.hitTestPoint(stage.mouseX, stage.mouseY); calculateColumnSizes(); _local11 = (renderedItems = new Dictionary(true)); if (length > 0){ _local5 = _local1; while (_local5 <= _local2) { _local11[_dataProvider.getItemAt(_local5)] = true; _local5++; }; }; _local3 = 0; _local12 = (visibleColumns[0] as DataGridColumn); _local5 = 0; while (_local5 < displayableColumns.length) { _local19 = (displayableColumns[_local5] as DataGridColumn); if (_local19 != _local12){ _local3 = (_local3 + _local19.width); } else { break; }; _local5++; }; while (header.numChildren > 0) { header.removeChildAt(0); }; dragHandlesMap = new Dictionary(true); _local15 = []; _local16 = visibleColumns.length; _local17 = 0; while (_local17 < _local16) { _local9 = (visibleColumns[_local17] as DataGridColumn); _local15.push(_local9.colNum); if (showHeaders){ _local23 = ((_local9.headerRenderer)!=null) ? _local9.headerRenderer : _headerRenderer; _local24 = (getDisplayObjectInstance(_local23) as HeaderRenderer); if (_local24 != null){ _local24.addEventListener(MouseEvent.CLICK, handleHeaderRendererClick, false, 0, true); _local24.x = _local3; _local24.y = 0; _local24.setSize(_local9.width, headerHeight); _local24.column = _local9.colNum; _local24.label = _local9.headerText; header.addChildAt(_local24, _local17); copyStylesToChild(_local24, HEADER_STYLES); if ((((((sortIndex == -1)) && ((lastSortIndex == -1)))) || (!((_local9.colNum == sortIndex))))){ _local24.setStyle("icon", null); } else { _local24.setStyle("icon", (sortDescending) ? getStyleValue("headerSortArrowAscSkin") : getStyleValue("headerSortArrowDescSkin")); }; if ((((((_local17 < (_local16 - 1))) && (resizableColumns))) && (_local9.resizable))){ _local25 = new Sprite(); _local26 = _local25.graphics; _local26.beginFill(0, 0); _local26.drawRect(0, 0, 3, headerHeight); _local26.endFill(); _local25.x = ((_local3 + _local9.width) - 2); _local25.y = 0; _local25.alpha = 0; _local25.addEventListener(MouseEvent.MOUSE_OVER, handleHeaderResizeOver, false, 0, true); _local25.addEventListener(MouseEvent.MOUSE_OUT, handleHeaderResizeOut, false, 0, true); _local25.addEventListener(MouseEvent.MOUSE_DOWN, handleHeaderResizeDown, false, 0, true); header.addChild(_local25); dragHandlesMap[_local25] = _local9.colNum; }; if ((((((_local17 == (_local16 - 1))) && ((_horizontalScrollPosition == 0)))) && ((availableWidth > (_local3 + _local9.width))))){ _local4 = Math.floor((availableWidth - _local3)); _local24.setSize(_local4, headerHeight); } else { _local4 = _local9.width; }; _local24.drawNow(); }; }; _local20 = ((_local9.cellRenderer)!=null) ? _local9.cellRenderer : _cellRenderer; _local21 = availableCellRenderersMap[_local9]; _local8 = activeCellRenderersMap[_local9]; if (_local8 == null){ _local8 = []; activeCellRenderersMap[_local9] = _local8; }; if (_local21 == null){ _local21 = []; availableCellRenderersMap[_local9] = _local21; }; _local22 = new Dictionary(true); while (_local8.length > 0) { _local7 = _local8.pop(); _local6 = _local7.data; if ((((_local11[_local6] == null)) || ((invalidItems[_local6] == true)))){ _local21.push(_local7); } else { _local22[_local6] = _local7; invalidItems[_local6] = true; }; list.removeChild((_local7 as DisplayObject)); }; if (length > 0){ _local5 = _local1; while (_local5 <= _local2) { _local27 = false; _local6 = _dataProvider.getItemAt(_local5); if (_local22[_local6] != null){ _local27 = true; _local7 = _local22[_local6]; delete _local22[_local6]; } else { if (_local21.length > 0){ _local7 = (_local21.pop() as ICellRenderer); } else { _local7 = (getDisplayObjectInstance(_local20) as ICellRenderer); _local13 = (_local7 as Sprite); if (_local13 != null){ _local13.addEventListener(MouseEvent.CLICK, handleCellRendererClick, false, 0, true); _local13.addEventListener(MouseEvent.ROLL_OVER, handleCellRendererMouseEvent, false, 0, true); _local13.addEventListener(MouseEvent.ROLL_OUT, handleCellRendererMouseEvent, false, 0, true); _local13.addEventListener(Event.CHANGE, handleCellRendererChange, false, 0, true); _local13.doubleClickEnabled = true; _local13.addEventListener(MouseEvent.DOUBLE_CLICK, handleCellRendererDoubleClick, false, 0, true); if (_local13["setStyle"] != null){ for (_local28 in rendererStyles) { var _local31 = _local13; _local31["setStyle"](_local28, rendererStyles[_local28]); }; }; }; }; }; list.addChild((_local7 as Sprite)); _local8.push(_local7); _local7.x = _local3; _local7.y = (rowHeight * (_local5 - _local1)); _local7.setSize(((_local17)==(_local16 - 1)) ? _local4 : _local9.width, rowHeight); if (!_local27){ _local7.data = _local6; }; _local7.listData = new ListData(columnItemToLabel(_local9.colNum, _local6), null, this, _local5, _local5, _local17); if (((_local10) && (isHovered(_local7)))){ _local7.setMouseState("over"); currentHoveredRow = _local5; } else { _local7.setMouseState("up"); }; _local7.selected = !((_selectedIndices.indexOf(_local5) == -1)); if ((_local7 is UIComponent)){ _local14 = (_local7 as UIComponent); _local14.drawNow(); }; _local5++; }; }; _local3 = (_local3 + _local9.width); _local17++; }; _local5 = 0; while (_local5 < _columns.length) { if (_local15.indexOf(_local5) == -1){ removeCellRenderersByColumn((_columns[_local5] as DataGridColumn)); }; _local5++; }; if (editedItemPositionChanged){ editedItemPositionChanged = false; commitEditedItemPosition(proposedEditedItemPosition); proposedEditedItemPosition = undefined; }; invalidItems = new Dictionary(true); } protected function itemEditorItemEditBeginningHandler(_arg1:DataGridEvent):void{ if (!_arg1.isDefaultPrevented()){ setEditedItemPosition({columnIndex:_arg1.columnIndex, rowIndex:uint(_arg1.rowIndex)}); } else { if (!itemEditorInstance){ _editedItemPosition = null; editable = false; setFocus(); editable = true; }; }; } protected function itemEditorItemEditEndHandler(_arg1:DataGridEvent):void{ var _local2:Boolean; var _local3:Object; var _local4:String; var _local5:Object; var _local6:String; var _local7:XML; var _local8:IFocusManager; if (!_arg1.isDefaultPrevented()){ _local2 = false; if (((itemEditorInstance) && (!((_arg1.reason == DataGridEventReason.CANCELLED))))){ _local3 = itemEditorInstance[_columns[_arg1.columnIndex].editorDataField]; _local4 = _columns[_arg1.columnIndex].dataField; _local5 = _arg1.itemRenderer.data; _local6 = ""; for each (_local7 in describeType(_local5).variable) { if (_local4 == _local7.@name.toString()){ _local6 = _local7.@type.toString(); break; }; }; switch (_local6){ case "String": if (!(_local3 is String)){ _local3 = _local3.toString(); }; break; case "uint": if (!(_local3 is uint)){ _local3 = uint(_local3); }; break; case "int": if (!(_local3 is int)){ _local3 = int(_local3); }; break; case "Number": if (!(_local3 is Number)){ _local3 = Number(_local3); }; break; }; if (_local5[_local4] != _local3){ _local2 = true; _local5[_local4] = _local3; }; _arg1.itemRenderer.data = _local5; }; } else { if (_arg1.reason != DataGridEventReason.OTHER){ if (((itemEditorInstance) && (_editedItemPosition))){ if (selectedIndex != _editedItemPosition.rowIndex){ selectedIndex = _editedItemPosition.rowIndex; }; _local8 = focusManager; if ((itemEditorInstance is IFocusManagerComponent)){ _local8.setFocus(InteractiveObject(itemEditorInstance)); }; }; }; }; if ((((_arg1.reason == DataGridEventReason.OTHER)) || (!(_arg1.isDefaultPrevented())))){ destroyItemEditor(); }; } public function get editedItemPosition():Object{ if (_editedItemPosition){ return ({rowIndex:_editedItemPosition.rowIndex, columnIndex:_editedItemPosition.columnIndex}); }; return (_editedItemPosition); } protected function setEditedItemPosition(_arg1:Object):void{ editedItemPositionChanged = true; proposedEditedItemPosition = _arg1; if (((_arg1) && (!((_arg1.rowIndex == selectedIndex))))){ selectedIndex = _arg1.rowIndex; }; invalidate(InvalidationType.DATA); } public function set headerHeight(_arg1:Number):void{ maxHeaderHeight = _arg1; _headerHeight = Math.max(0, _arg1); invalidate(InvalidationType.SIZE); } protected function handleHeaderResizeDown(_arg1:MouseEvent):void{ var _local2:Sprite; var _local3:Number; var _local4:DataGridColumn; _local2 = (_arg1.currentTarget as Sprite); _local3 = dragHandlesMap[_local2]; _local4 = getColumnAt(_local3); columnStretchIndex = _local3; columnStretchStartX = _arg1.stageX; columnStretchStartWidth = _local4.width; stage.addEventListener(MouseEvent.MOUSE_MOVE, handleHeaderResizeMove, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, handleHeaderResizeUp, false, 0, true); } protected function deactivateHandler(_arg1:Event):void{ if (itemEditorInstance){ endEdit(DataGridEventReason.OTHER); losingFocus = true; setFocus(); }; } protected function keyFocusChangeHandler(_arg1:FocusEvent):void{ if ((((((_arg1.keyCode == Keyboard.TAB)) && (!(_arg1.isDefaultPrevented())))) && (findNextItemRenderer(_arg1.shiftKey)))){ _arg1.preventDefault(); }; } override protected function handleDataChange(_arg1:DataChangeEvent):void{ super.handleDataChange(_arg1); if (_columns == null){ _columns = []; }; if (_columns.length == 0){ createColumnsFromDataProvider(); }; } public function set editedItemPosition(_arg1:Object):void{ var _local2:Object; _local2 = {rowIndex:_arg1.rowIndex, columnIndex:_arg1.columnIndex}; setEditedItemPosition(_local2); } override public function itemToCellRenderer(_arg1:Object):ICellRenderer{ return (null); } public function getCellRendererAt(_arg1:uint, _arg2:uint):ICellRenderer{ var _local3:DataGridColumn; var _local4:Array; var _local5:uint; var _local6:ICellRenderer; _local3 = (_columns[_arg2] as DataGridColumn); if (_local3 != null){ _local4 = (activeCellRenderersMap[_local3] as Array); if (_local4 != null){ _local5 = 0; while (_local5 < _local4.length) { _local6 = (_local4[_local5] as ICellRenderer); if (_local6.listData.row == _arg1){ return (_local6); }; _local5++; }; }; }; return (null); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (((!(selectable)) || (itemEditorInstance))){ return; }; switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: case Keyboard.END: case Keyboard.HOME: case Keyboard.PAGE_UP: case Keyboard.PAGE_DOWN: moveSelectionVertically(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); break; case Keyboard.LEFT: case Keyboard.RIGHT: moveSelectionHorizontally(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); break; case Keyboard.SPACE: if (caretIndex == -1){ caretIndex = 0; }; scrollToIndex(caretIndex); doKeySelection(caretIndex, _arg1.shiftKey, _arg1.ctrlKey); break; default: break; }; _arg1.stopPropagation(); } protected function handleHeaderResizeUp(_arg1:MouseEvent):void{ var _local2:Sprite; var _local3:DataGridColumn; var _local4:HeaderRenderer; var _local5:uint; var _local6:DataGridEvent; _local2 = (_arg1.currentTarget as Sprite); _local3 = (_columns[columnStretchIndex] as DataGridColumn); _local5 = 0; while (_local5 < header.numChildren) { _local4 = (header.getChildAt(_local5) as HeaderRenderer); if (((_local4) && ((_local4.column == columnStretchIndex)))){ break; }; _local5++; }; _local6 = new DataGridEvent(DataGridEvent.COLUMN_STRETCH, false, true, columnStretchIndex, -1, _local4, (_local3) ? _local3.dataField : null); dispatchEvent(_local6); columnStretchIndex = -1; showColumnStretchCursor(false); stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleHeaderResizeMove, false); stage.removeEventListener(MouseEvent.MOUSE_UP, handleHeaderResizeUp, false); } protected function handleHeaderResizeOver(_arg1:MouseEvent):void{ if (columnStretchIndex == -1){ showColumnStretchCursor(); }; } override protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:Boolean; var _local3:DataGridColumn; if (_arg1.target != this){ return; }; if (losingFocus){ losingFocus = false; return; }; setIMEMode(true); super.focusInHandler(_arg1); if (((editable) && (!(isPressed)))){ _local2 = !((editedItemPosition == null)); if (!_editedItemPosition){ _editedItemPosition = {rowIndex:0, columnIndex:0}; while (_editedItemPosition.columnIndex < _columns.length) { _local3 = (_columns[_editedItemPosition.columnIndex] as DataGridColumn); if (((_local3.editable) && (_local3.visible))){ _local2 = true; break; }; _editedItemPosition.columnIndex++; }; }; if (_local2){ setEditedItemPosition(_editedItemPosition); }; }; if (editable){ addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); addEventListener(MouseEvent.MOUSE_DOWN, mouseFocusChangeHandler); }; } public function createItemEditor(_arg1:uint, _arg2:uint):void{ var _local3:DataGridColumn; var _local4:ICellRenderer; var _local5:Sprite; var _local6:int; if (displayableColumns.length != _columns.length){ _local6 = 0; while (_local6 < displayableColumns.length) { if (displayableColumns[_local6].colNum >= _arg1){ _arg1 = displayableColumns[_local6].colNum; break; }; _local6++; }; if (_local6 == displayableColumns.length){ _arg1 = 0; }; }; _local3 = (_columns[_arg1] as DataGridColumn); _local4 = getCellRendererAt(_arg2, _arg1); if (!itemEditorInstance){ itemEditorInstance = getDisplayObjectInstance(_local3.itemEditor); itemEditorInstance.tabEnabled = false; list.addChild(DisplayObject(itemEditorInstance)); }; list.setChildIndex(DisplayObject(itemEditorInstance), (list.numChildren - 1)); _local5 = (_local4 as Sprite); itemEditorInstance.visible = true; itemEditorInstance.move(_local5.x, _local5.y); itemEditorInstance.setSize(_local3.width, rowHeight); itemEditorInstance.drawNow(); DisplayObject(itemEditorInstance).addEventListener(FocusEvent.FOCUS_OUT, itemEditorFocusOutHandler); _local5.visible = false; DisplayObject(itemEditorInstance).addEventListener(KeyboardEvent.KEY_DOWN, editorKeyDownHandler); stage.addEventListener(MouseEvent.MOUSE_DOWN, editorMouseDownHandler, true, 0, true); } private function itemEditorFocusOutHandler(_arg1:FocusEvent):void{ if (((_arg1.relatedObject) && (contains(_arg1.relatedObject)))){ return; }; if (!_arg1.relatedObject){ return; }; if (itemEditorInstance){ endEdit(DataGridEventReason.OTHER); }; } override public function get horizontalScrollPolicy():String{ return (_horizontalScrollPolicy); } override protected function updateRendererStyles():void{ var _local1:Array; var _local2:Object; var _local3:uint; var _local4:uint; var _local5:String; _local1 = []; for (_local2 in availableCellRenderersMap) { _local1 = _local1.concat(availableCellRenderersMap[_local2]); }; for (_local2 in activeCellRenderersMap) { _local1 = _local1.concat(activeCellRenderersMap[_local2]); }; _local3 = _local1.length; _local4 = 0; while (_local4 < _local3) { if (_local1[_local4]["setStyle"] == null){ } else { for (_local5 in updatedRendererStyles) { _local1[_local4].setStyle(_local5, updatedRendererStyles[_local5]); }; _local1[_local4].drawNow(); }; _local4++; }; updatedRendererStyles = {}; } public function set minColumnWidth(_arg1:Number):void{ _minColumnWidth = _arg1; columnsInvalid = true; minColumnWidthInvalid = true; invalidate(InvalidationType.SIZE); } protected function showColumnStretchCursor(_arg1:Boolean=true):void{ if (columnStretchCursor == null){ columnStretchCursor = (getDisplayObjectInstance(getStyleValue("columnStretchCursorSkin")) as Sprite); columnStretchCursor.mouseEnabled = false; }; if (_arg1){ Mouse.hide(); stage.addChild(columnStretchCursor); stage.addEventListener(MouseEvent.MOUSE_MOVE, positionColumnStretchCursor, false, 0, true); columnStretchCursor.x = stage.mouseX; columnStretchCursor.y = stage.mouseY; } else { stage.removeEventListener(MouseEvent.MOUSE_MOVE, positionColumnStretchCursor, false); if (stage.contains(columnStretchCursor)){ stage.removeChild(columnStretchCursor); }; Mouse.show(); }; } protected function findNextEnterItemRenderer(_arg1:KeyboardEvent):void{ var _local2:int; var _local3:int; var _local4:int; var _local5:DataGridEvent; if (proposedEditedItemPosition !== undefined){ return; }; _local2 = _editedItemPosition.rowIndex; _local3 = _editedItemPosition.columnIndex; _local4 = (_editedItemPosition.rowIndex + (_arg1.shiftKey) ? -1 : 1); if ((((_local4 >= 0)) && ((_local4 < length)))){ _local2 = _local4; }; _local5 = new DataGridEvent(DataGridEvent.ITEM_EDIT_BEGINNING, false, true, _local3, _local2); _local5.dataField = _columns[_local3].dataField; dispatchEvent(_local5); } protected function mouseFocusChangeHandler(_arg1:MouseEvent):void{ if (((((itemEditorInstance) && (!(_arg1.isDefaultPrevented())))) && (itemRendererContains(itemEditorInstance, DisplayObject(_arg1.target))))){ _arg1.preventDefault(); }; } public function get imeMode():String{ return (_imeMode); } public function editField(_arg1:uint, _arg2:String, _arg3:Object):void{ var _local4:Object; _local4 = getItemAt(_arg1); _local4[_arg2] = _arg3; replaceItemAt(_local4, _arg1); } protected function calculateAvailableHeight():Number{ var _local1:Number; var _local2:Number; _local1 = Number(getStyleValue("contentPadding")); _local2 = ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0; return ((((height - (_local1 * 2)) - _local2) - (showHeaders) ? headerHeight : 0)); } protected function mouseUpHandler(_arg1:MouseEvent):void{ if (((!(enabled)) || (!(selectable)))){ return; }; isPressed = false; } override protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } public function resizeColumn(_arg1:int, _arg2:Number):void{ var _local3:DataGridColumn; var _local4:int; var _local5:Number; var _local6:int; var _local7:DataGridColumn; var _local8:DataGridColumn; var _local9:int; var _local10:Number; var _local11:Number; var _local12:Number; if (_columns.length == 0){ return; }; _local3 = (_columns[_arg1] as DataGridColumn); if (!_local3){ return; }; if (((!(visibleColumns)) || ((visibleColumns.length == 0)))){ _local3.setWidth(_arg2); return; }; if (_arg2 < _local3.minWidth){ _arg2 = _local3.minWidth; }; if ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((_horizontalScrollPolicy == ScrollPolicy.AUTO)))){ _local3.setWidth(_arg2); _local3.explicitWidth = _arg2; } else { _local4 = getVisibleColumnIndex(_local3); if (_local4 != -1){ _local5 = 0; _local6 = visibleColumns.length; _local9 = (_local4 + 1); while (_local9 < _local6) { _local7 = (visibleColumns[_local9] as DataGridColumn); if (((_local7) && (_local7.resizable))){ _local5 = (_local5 + _local7.width); }; _local9++; }; _local11 = ((_local3.width - _arg2) + _local5); if (_local5){ _local3.setWidth(_arg2); _local3.explicitWidth = _arg2; }; _local12 = 0; _local9 = (_local4 + 1); while (_local9 < _local6) { _local7 = (visibleColumns[_local9] as DataGridColumn); if (_local7.resizable){ _local10 = ((_local7.width * _local11) / _local5); if (_local10 < _local7.minWidth){ _local10 = _local7.minWidth; }; _local7.setWidth(_local10); _local12 = (_local12 + _local7.width); _local8 = _local7; }; _local9++; }; if (_local12 > _local11){ _local10 = ((_local3.width - _local12) + _local11); if (_local10 < _local3.minWidth){ _local10 = _local3.minWidth; }; _local3.setWidth(_local10); } else { if (_local8){ _local8.setWidth(((_local8.width - _local12) + _local11)); }; }; } else { _local3.setWidth(_arg2); _local3.explicitWidth = _arg2; }; }; columnsInvalid = true; invalidate(InvalidationType.SIZE); } protected function itemEditorItemEditBeginHandler(_arg1:DataGridEvent):void{ var _local2:IFocusManager; if (stage){ stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); }; if (!_arg1.isDefaultPrevented()){ createItemEditor(_arg1.columnIndex, uint(_arg1.rowIndex)); ICellRenderer(itemEditorInstance).listData = ICellRenderer(editedItemRenderer).listData; ICellRenderer(itemEditorInstance).data = editedItemRenderer.data; itemEditorInstance.imeMode = ((columns[_arg1.columnIndex].imeMode)==null) ? _imeMode : columns[_arg1.columnIndex].imeMode; _local2 = focusManager; if ((itemEditorInstance is IFocusManagerComponent)){ _local2.setFocus(InteractiveObject(itemEditorInstance)); }; _local2.defaultButtonEnabled = false; _arg1 = new DataGridEvent(DataGridEvent.ITEM_FOCUS_IN, false, false, _editedItemPosition.columnIndex, _editedItemPosition.rowIndex, itemEditorInstance); dispatchEvent(_arg1); }; } override protected function draw():void{ var _local1:Boolean; _local1 = !((contentHeight == (rowHeight * length))); contentHeight = (rowHeight * length); if (isInvalid(InvalidationType.STYLES)){ setStyles(); drawBackground(); if (contentPadding != getStyleValue("contentPadding")){ invalidate(InvalidationType.SIZE, false); }; if (((!((_cellRenderer == getStyleValue("cellRenderer")))) || (!((_headerRenderer == getStyleValue("headerRenderer")))))){ _invalidateList(); _cellRenderer = getStyleValue("cellRenderer"); _headerRenderer = getStyleValue("headerRenderer"); }; }; if (isInvalid(InvalidationType.SIZE)){ columnsInvalid = true; }; if (((isInvalid(InvalidationType.SIZE, InvalidationType.STATE)) || (_local1))){ drawLayout(); drawDisabledOverlay(); }; if (isInvalid(InvalidationType.RENDERER_STYLES)){ updateRendererStyles(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.SIZE, InvalidationType.DATA, InvalidationType.SCROLL, InvalidationType.SELECTED)){ drawList(); }; updateChildren(); validate(); } override public function set horizontalScrollPolicy(_arg1:String):void{ super.horizontalScrollPolicy = _arg1; columnsInvalid = true; } protected function getVisibleColumnIndex(_arg1:DataGridColumn):int{ var _local2:uint; _local2 = 0; while (_local2 < visibleColumns.length) { if (_arg1 == visibleColumns[_local2]){ return (_local2); }; _local2++; }; return (-1); } protected function itemRendererContains(_arg1:Object, _arg2:DisplayObject):Boolean{ if (((((!(_arg2)) || (!(_arg1)))) || (!((_arg1 is DisplayObjectContainer))))){ return (false); }; return (DisplayObjectContainer(_arg1).contains(_arg2)); } override protected function configUI():void{ var _local1:Graphics; useFixedHorizontalScrolling = false; super.configUI(); headerMask = new Sprite(); _local1 = headerMask.graphics; _local1.beginFill(0, 0.3); _local1.drawRect(0, 0, 100, 100); _local1.endFill(); headerMask.visible = false; addChild(headerMask); header = new Sprite(); addChild(header); header.mask = headerMask; _horizontalScrollPolicy = ScrollPolicy.OFF; _verticalScrollPolicy = ScrollPolicy.AUTO; } public function columnItemToLabel(_arg1:uint, _arg2:Object):String{ var _local3:DataGridColumn; _local3 = (_columns[_arg1] as DataGridColumn); if (_local3 != null){ return (_local3.itemToLabel(_arg2)); }; return (" "); } protected function endEdit(_arg1:String):Boolean{ var _local2:DataGridEvent; if (!editedItemRenderer){ return (true); }; _local2 = new DataGridEvent(DataGridEvent.ITEM_EDIT_END, false, true, editedItemPosition.columnIndex, editedItemPosition.rowIndex, editedItemRenderer, _columns[editedItemPosition.columnIndex].dataField, _arg1); dispatchEvent(_local2); return (!(_local2.isDefaultPrevented())); } override protected function drawLayout():void{ vOffset = (showHeaders) ? headerHeight : 0; super.drawLayout(); contentScrollRect = listHolder.scrollRect; if (showHeaders){ headerHeight = maxHeaderHeight; if (Math.floor((availableHeight - headerHeight)) <= 0){ _headerHeight = availableHeight; }; list.y = headerHeight; contentScrollRect = listHolder.scrollRect; contentScrollRect.y = (contentPadding + headerHeight); contentScrollRect.height = (availableHeight - headerHeight); listHolder.y = (contentPadding + headerHeight); headerMask.x = contentPadding; headerMask.y = contentPadding; headerMask.width = availableWidth; headerMask.height = headerHeight; } else { contentScrollRect.y = contentPadding; listHolder.y = 0; }; listHolder.scrollRect = contentScrollRect; } protected function commitEditedItemPosition(_arg1:Object):void{ var _local2:ICellRenderer; var _local3:DataGridEvent; var _local4:String; var _local5:int; if (((!(enabled)) || (!(editable)))){ return; }; if (((((((((itemEditorInstance) && (_arg1))) && ((itemEditorInstance is IFocusManagerComponent)))) && ((_editedItemPosition.rowIndex == _arg1.rowIndex)))) && ((_editedItemPosition.columnIndex == _arg1.columnIndex)))){ IFocusManagerComponent(itemEditorInstance).setFocus(); return; }; if (itemEditorInstance){ if (!_arg1){ _local4 = DataGridEventReason.OTHER; } else { if (((!(editedItemPosition)) || ((_arg1.rowIndex == editedItemPosition.rowIndex)))){ _local4 = DataGridEventReason.NEW_COLUMN; } else { _local4 = DataGridEventReason.NEW_ROW; }; }; if (((!(endEdit(_local4))) && (!((_local4 == DataGridEventReason.OTHER))))){ return; }; }; _editedItemPosition = _arg1; if (!_arg1){ return; }; actualRowIndex = _arg1.rowIndex; actualColIndex = _arg1.columnIndex; if (displayableColumns.length != _columns.length){ _local5 = 0; while (_local5 < displayableColumns.length) { if (displayableColumns[_local5].colNum >= actualColIndex){ actualColIndex = displayableColumns[_local5].colNum; break; }; _local5++; }; if (_local5 == displayableColumns.length){ actualColIndex = 0; }; }; scrollToPosition(actualRowIndex, actualColIndex); _local2 = getCellRendererAt(actualRowIndex, actualColIndex); _local3 = new DataGridEvent(DataGridEvent.ITEM_EDIT_BEGIN, false, true, actualColIndex, actualRowIndex, _local2); dispatchEvent(_local3); if (editedItemPositionChanged){ editedItemPositionChanged = false; commitEditedItemPosition(proposedEditedItemPosition); proposedEditedItemPosition = undefined; }; if (!itemEditorInstance){ commitEditedItemPosition(null); }; } protected function handleHeaderRendererClick(_arg1:MouseEvent):void{ var _local2:HeaderRenderer; var _local3:uint; var _local4:DataGridColumn; var _local5:uint; var _local6:DataGridEvent; if (!_enabled){ return; }; _local2 = (_arg1.currentTarget as HeaderRenderer); _local3 = _local2.column; _local4 = (_columns[_local3] as DataGridColumn); if (((sortableColumns) && (_local4.sortable))){ _local5 = _sortIndex; _sortIndex = _local3; _local6 = new DataGridEvent(DataGridEvent.HEADER_RELEASE, false, true, _local3, -1, _local2, (_local4) ? _local4.dataField : null); if (((!(dispatchEvent(_local6))) || (!(_selectable)))){ _sortIndex = lastSortIndex; return; }; lastSortIndex = _local5; sortByColumn(_local3); invalidate(InvalidationType.DATA); }; } public function get showHeaders():Boolean{ return (_showHeaders); } public function get sortIndex():int{ return (_sortIndex); } public function set labelFunction(_arg1:Function):void{ if (_labelFunction == _arg1){ return; }; _labelFunction = _arg1; invalidate(InvalidationType.DATA); } public function getColumnIndex(_arg1:String):int{ var _local2:uint; var _local3:DataGridColumn; _local2 = 0; while (_local2 < _columns.length) { _local3 = (_columns[_local2] as DataGridColumn); if (_local3.dataField == _arg1){ return (_local2); }; _local2++; }; return (-1); } protected function createColumnsFromDataProvider():void{ var _local1:Object; var _local2:String; _columns = []; if (length > 0){ _local1 = _dataProvider.getItemAt(0); for (_local2 in _local1) { addColumn(_local2); }; }; } protected function editorMouseDownHandler(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:uint; if (!itemRendererContains(itemEditorInstance, DisplayObject(_arg1.target))){ if ((((_arg1.target is ICellRenderer)) && (contains(DisplayObject(_arg1.target))))){ _local2 = (_arg1.target as ICellRenderer); _local3 = _local2.listData.row; if (_editedItemPosition.rowIndex == _local3){ endEdit(DataGridEventReason.NEW_COLUMN); } else { endEdit(DataGridEventReason.NEW_ROW); }; } else { endEdit(DataGridEventReason.OTHER); }; }; } public function addColumnAt(_arg1, _arg2:uint):DataGridColumn{ var _local3:DataGridColumn; var _local4:*; var _local5:uint; if (_arg2 < _columns.length){ _columns.splice(_arg2, 0, ""); _local5 = (_arg2 + 1); while (_local5 < _columns.length) { _local3 = (_columns[_local5] as DataGridColumn); _local3.colNum = _local5; _local5++; }; }; _local4 = _arg1; if (!(_local4 is DataGridColumn)){ if ((_local4 is String)){ _local4 = new DataGridColumn(_local4); } else { _local4 = new DataGridColumn(); }; }; _local3 = (_local4 as DataGridColumn); _local3.owner = this; _local3.colNum = _arg2; _columns[_arg2] = _local3; invalidate(InvalidationType.SIZE); columnsInvalid = true; return (_local3); } public function destroyItemEditor():void{ var _local1:DataGridEvent; if (itemEditorInstance){ DisplayObject(itemEditorInstance).removeEventListener(KeyboardEvent.KEY_DOWN, editorKeyDownHandler); stage.removeEventListener(MouseEvent.MOUSE_DOWN, editorMouseDownHandler, true); _local1 = new DataGridEvent(DataGridEvent.ITEM_FOCUS_OUT, false, false, _editedItemPosition.columnIndex, _editedItemPosition.rowIndex, itemEditorInstance); dispatchEvent(_local1); if (((itemEditorInstance) && ((itemEditorInstance is UIComponent)))){ UIComponent(itemEditorInstance).drawFocus(false); }; list.removeChild(DisplayObject(itemEditorInstance)); DisplayObject(editedItemRenderer).visible = true; itemEditorInstance = null; }; } public function set imeMode(_arg1:String):void{ _imeMode = _arg1; } protected function doKeySelection(_arg1:int, _arg2:Boolean, _arg3:Boolean):void{ var _local4:Boolean; var _local5:int; var _local6:Array; var _local7:int; var _local8:int; _local4 = false; if (_arg2){ _local6 = []; _local7 = lastCaretIndex; _local8 = _arg1; if (_local7 == -1){ _local7 = ((caretIndex)!=-1) ? caretIndex : _arg1; }; if (_local7 > _local8){ _local8 = _local7; _local7 = _arg1; }; _local5 = _local7; while (_local5 <= _local8) { _local6.push(_local5); _local5++; }; selectedIndices = _local6; caretIndex = _arg1; _local4 = true; } else { if (_arg3){ caretIndex = _arg1; } else { selectedIndex = _arg1; caretIndex = (lastCaretIndex = _arg1); _local4 = true; }; }; if (_local4){ dispatchEvent(new Event(Event.CHANGE)); }; invalidate(InvalidationType.DATA); } public function get headerHeight():Number{ return (_headerHeight); } public function getColumnCount():uint{ return (_columns.length); } protected function sortByColumn(_arg1:int):void{ var _local2:DataGridColumn; var _local3:Boolean; var _local4:uint; _local2 = (columns[_arg1] as DataGridColumn); if (((((!(enabled)) || (!(_local2)))) || (!(_local2.sortable)))){ return; }; _local3 = _local2.sortDescending; _local4 = _local2.sortOptions; if (_local3){ _local4 = (_local4 | Array.DESCENDING); } else { _local4 = (_local4 & ~(Array.DESCENDING)); }; if (_local2.sortCompareFunction != null){ sortItems(_local2.sortCompareFunction, _local4); } else { sortItemsOn(_local2.dataField, _local4); }; _sortDescending = (_local2.sortDescending = !(_local3)); if ((((lastSortIndex >= 0)) && (!((lastSortIndex == sortIndex))))){ _local2 = (columns[lastSortIndex] as DataGridColumn); if (_local2 != null){ _local2.sortDescending = false; }; }; } public function get minColumnWidth():Number{ return (_minColumnWidth); } protected function isHovered(_arg1:ICellRenderer):Boolean{ var _local2:uint; var _local3:Number; var _local4:Point; _local2 = Math.min(Math.max((length - 1), 0), Math.floor((_verticalScrollPosition / rowHeight))); _local3 = ((_arg1.listData.row - _local2) * rowHeight); _local4 = list.globalToLocal(new Point(0, stage.mouseY)); return ((((_local4.y > _local3)) && ((_local4.y < (_local3 + rowHeight))))); } protected function mouseDownHandler(_arg1:MouseEvent):void{ if (((!(enabled)) || (!(selectable)))){ return; }; isPressed = true; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; header.mouseChildren = _enabled; } override protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ var _local4:int; var _local5:int; var _local6:int; _local4 = Math.max(Math.floor((calculateAvailableHeight() / rowHeight)), 1); _local5 = -1; _local6 = 0; switch (_arg1){ case Keyboard.UP: if (caretIndex > 0){ _local5 = (caretIndex - 1); }; break; case Keyboard.DOWN: if (caretIndex < (length - 1)){ _local5 = (caretIndex + 1); }; break; case Keyboard.PAGE_UP: if (caretIndex > 0){ _local5 = Math.max((caretIndex - _local4), 0); }; break; case Keyboard.PAGE_DOWN: if (caretIndex < (length - 1)){ _local5 = Math.min((caretIndex + _local4), (length - 1)); }; break; case Keyboard.HOME: if (caretIndex > 0){ _local5 = 0; }; break; case Keyboard.END: if (caretIndex < (length - 1)){ _local5 = (length - 1); }; break; }; if (_local5 >= 0){ doKeySelection(_local5, _arg2, _arg3); scrollToSelected(); }; } protected function handleHeaderResizeOut(_arg1:MouseEvent):void{ if (columnStretchIndex == -1){ showColumnStretchCursor(false); }; } public function removeAllColumns():void{ if (_columns.length > 0){ removeCellRenderers(); _columns = []; invalidate(InvalidationType.SIZE); columnsInvalid = true; }; } public function set rowCount(_arg1:uint):void{ var _local2:Number; var _local3:Number; _local2 = Number(getStyleValue("contentPadding")); _local3 = ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && (hScrollBar))))) ? 15 : 0; height = ((((rowHeight * _arg1) + (2 * _local2)) + _local3) + (showHeaders) ? headerHeight : 0); } protected function removeCellRenderers():void{ var _local1:uint; _local1 = 0; while (_local1 < _columns.length) { removeCellRenderersByColumn((_columns[_local1] as DataGridColumn)); _local1++; }; } public function removeColumnAt(_arg1:uint):DataGridColumn{ var _local2:DataGridColumn; var _local3:uint; _local2 = (_columns[_arg1] as DataGridColumn); if (_local2 != null){ removeCellRenderersByColumn(_local2); _columns.splice(_arg1, 1); _local3 = _arg1; while (_local3 < _columns.length) { _local2 = (_columns[_local3] as DataGridColumn); if (_local2){ _local2.colNum = _local3; }; _local3++; }; invalidate(InvalidationType.SIZE); columnsInvalid = true; }; return (_local2); } override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ if (_arg1 == _horizontalScrollPosition){ return; }; contentScrollRect = listHolder.scrollRect; contentScrollRect.x = _arg1; listHolder.scrollRect = contentScrollRect; list.x = 0; header.x = -(_arg1); super.setHorizontalScrollPosition(_arg1, true); invalidate(InvalidationType.SCROLL); columnsInvalid = true; } public function get labelFunction():Function{ return (_labelFunction); } override protected function handleCellRendererClick(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:DataGridColumn; var _local4:DataGridEvent; super.handleCellRendererClick(_arg1); _local2 = (_arg1.currentTarget as ICellRenderer); if (((((_local2) && (_local2.data))) && (!((_local2 == itemEditorInstance))))){ _local3 = (_columns[_local2.listData.column] as DataGridColumn); if (((((editable) && (_local3))) && (_local3.editable))){ _local4 = new DataGridEvent(DataGridEvent.ITEM_EDIT_BEGINNING, false, true, _local2.listData.column, _local2.listData.row, _local2, _local3.dataField); dispatchEvent(_local4); }; }; } override protected function focusOutHandler(_arg1:FocusEvent):void{ setIMEMode(false); if (_arg1.target == this){ super.focusOutHandler(_arg1); }; if ((((_arg1.relatedObject == this)) && (itemRendererContains(itemEditorInstance, DisplayObject(_arg1.target))))){ return; }; if ((((_arg1.relatedObject == null)) && (itemRendererContains(editedItemRenderer, DisplayObject(_arg1.target))))){ return; }; if ((((_arg1.relatedObject == null)) && (itemRendererContains(itemEditorInstance, DisplayObject(_arg1.target))))){ return; }; if (((itemEditorInstance) && (((!(_arg1.relatedObject)) || (!(itemRendererContains(itemEditorInstance, _arg1.relatedObject))))))){ endEdit(DataGridEventReason.OTHER); removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); removeEventListener(MouseEvent.MOUSE_DOWN, mouseFocusChangeHandler); }; } protected function positionColumnStretchCursor(_arg1:MouseEvent):void{ columnStretchCursor.x = _arg1.stageX; columnStretchCursor.y = _arg1.stageY; } override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ if (itemEditorInstance){ endEdit(DataGridEventReason.OTHER); }; invalidate(InvalidationType.SCROLL); super.setVerticalScrollPosition(_arg1, true); } public function get sortDescending():Boolean{ return (_sortDescending); } protected function editorKeyDownHandler(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.ESCAPE){ endEdit(DataGridEventReason.CANCELLED); } else { if (((_arg1.ctrlKey) && ((_arg1.charCode == 46)))){ endEdit(DataGridEventReason.CANCELLED); } else { if ((((_arg1.charCode == Keyboard.ENTER)) && (!((_arg1.keyCode == 229))))){ if (endEdit(DataGridEventReason.NEW_ROW)){ findNextEnterItemRenderer(_arg1); }; }; }; }; } override protected function calculateContentWidth():void{ var _local1:int; var _local2:int; var _local3:DataGridColumn; if (_columns.length == 0){ contentWidth = 0; return; }; if (minColumnWidthInvalid){ _local1 = _columns.length; _local2 = 0; while (_local2 < _local1) { _local3 = (_columns[_local2] as DataGridColumn); _local3.minWidth = minColumnWidth; _local2++; }; minColumnWidthInvalid = false; }; if (horizontalScrollPolicy == ScrollPolicy.OFF){ contentWidth = availableWidth; } else { contentWidth = 0; _local1 = _columns.length; _local2 = 0; while (_local2 < _local1) { _local3 = (_columns[_local2] as DataGridColumn); if (_local3.visible){ contentWidth = (contentWidth + _local3.width); }; _local2++; }; if (((!(isNaN(_horizontalScrollPosition))) && (((_horizontalScrollPosition + availableWidth) > contentWidth)))){ setHorizontalScrollPosition((contentWidth - availableWidth)); }; }; } override public function get rowCount():uint{ return (Math.ceil((calculateAvailableHeight() / rowHeight))); } public function addColumn(_arg1):DataGridColumn{ return (addColumnAt(_arg1, _columns.length)); } protected function removeCellRenderersByColumn(_arg1:DataGridColumn):void{ var _local2:Array; if (_arg1 == null){ return; }; _local2 = activeCellRenderersMap[_arg1]; if (_local2 != null){ while (_local2.length > 0) { list.removeChild((_local2.pop() as DisplayObject)); }; }; } override protected function handleCellRendererMouseEvent(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:int; var _local4:String; var _local5:uint; var _local6:DataGridColumn; var _local7:ICellRenderer; _local2 = (_arg1.target as ICellRenderer); if (_local2){ _local3 = _local2.listData.row; if (_arg1.type == MouseEvent.ROLL_OVER){ _local4 = "over"; } else { if (_arg1.type == MouseEvent.ROLL_OUT){ _local4 = "up"; }; }; if (_local4){ _local5 = 0; while (_local5 < visibleColumns.length) { _local6 = (visibleColumns[_local5] as DataGridColumn); _local7 = getCellRendererAt(_local3, _local6.colNum); if (_local7){ _local7.setMouseState(_local4); }; if (_local3 != currentHoveredRow){ _local7 = getCellRendererAt(currentHoveredRow, _local6.colNum); if (_local7){ _local7.setMouseState("up"); }; }; _local5++; }; }; }; super.handleCellRendererMouseEvent(_arg1); } protected function handleHeaderResizeMove(_arg1:MouseEvent):void{ var _local2:Number; var _local3:Number; _local2 = (_arg1.stageX - columnStretchStartX); _local3 = (columnStretchStartWidth + _local2); resizeColumn(columnStretchIndex, _local3); } public function set rowHeight(_arg1:Number):void{ _rowHeight = Math.max(0, _arg1); invalidate(InvalidationType.SIZE); } protected function scrollToPosition(_arg1:int, _arg2:int):void{ var _local3:Number; var _local4:Number; var _local5:uint; var _local6:Number; var _local7:DataGridColumn; var _local8:DataGridColumn; _local3 = verticalScrollPosition; _local4 = horizontalScrollPosition; scrollToIndex(_arg1); _local6 = 0; _local7 = (_columns[_arg2] as DataGridColumn); _local5 = 0; while (_local5 < displayableColumns.length) { _local8 = (displayableColumns[_local5] as DataGridColumn); if (_local8 != _local7){ _local6 = (_local6 + _local8.width); } else { break; }; _local5++; }; if (horizontalScrollPosition > _local6){ horizontalScrollPosition = _local6; } else { if ((horizontalScrollPosition + availableWidth) < (_local6 + _local7.width)){ horizontalScrollPosition = -((availableWidth - (_local6 + _local7.width))); }; }; if (((!((_local3 == verticalScrollPosition))) || (!((_local4 == horizontalScrollPosition))))){ drawNow(); }; } protected function findNextItemRenderer(_arg1:Boolean):Boolean{ var _local2:int; var _local3:int; var _local4:Boolean; var _local5:int; var _local6:int; var _local7:String; var _local8:DataGridEvent; if (!_editedItemPosition){ return (false); }; if (proposedEditedItemPosition !== undefined){ return (false); }; _local2 = _editedItemPosition.rowIndex; _local3 = _editedItemPosition.columnIndex; _local4 = false; _local5 = (_arg1) ? -1 : 1; _local6 = (length - 1); while (!(_local4)) { _local3 = (_local3 + _local5); if ((((_local3 < 0)) || ((_local3 >= _columns.length)))){ _local3 = ((_local3)<0) ? (_columns.length - 1) : 0; _local2 = (_local2 + _local5); if ((((_local2 < 0)) || ((_local2 > _local6)))){ setEditedItemPosition(null); losingFocus = true; setFocus(); return (false); }; }; if (((_columns[_local3].editable) && (_columns[_local3].visible))){ _local4 = true; if (_local2 == _editedItemPosition.rowIndex){ _local7 = DataGridEventReason.NEW_COLUMN; } else { _local7 = DataGridEventReason.NEW_ROW; }; if (((!(itemEditorInstance)) || (endEdit(_local7)))){ _local8 = new DataGridEvent(DataGridEvent.ITEM_EDIT_BEGINNING, false, true, _local3, _local2); _local8.dataField = _columns[_local3].dataField; dispatchEvent(_local8); }; }; }; return (_local4); } override public function set dataProvider(_arg1:DataProvider):void{ super.dataProvider = _arg1; if (_columns == null){ _columns = []; }; if (_columns.length == 0){ createColumnsFromDataProvider(); }; removeCellRenderers(); } override public function setSize(_arg1:Number, _arg2:Number):void{ super.setSize(_arg1, _arg2); columnsInvalid = true; } override public function scrollToIndex(_arg1:int):void{ var _local2:int; var _local3:int; var _local4:Number; drawNow(); _local2 = (Math.floor(((_verticalScrollPosition + availableHeight) / rowHeight)) - 1); _local3 = Math.ceil((_verticalScrollPosition / rowHeight)); if (_arg1 < _local3){ verticalScrollPosition = (_arg1 * rowHeight); } else { if (_arg1 >= _local2){ _local4 = ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && (hScrollBar))))) ? 15 : 0; verticalScrollPosition = (((((_arg1 + 1) * rowHeight) - availableHeight) + _local4) + (showHeaders) ? headerHeight : 0); }; }; } protected function calculateColumnSizes():void{ var _local1:Number; var _local2:int; var _local3:int; var _local4:Number; var _local5:DataGridColumn; var _local6:DataGridColumn; var _local7:Number; var _local8:int; var _local9:Number; var _local10:int; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; _local4 = 0; if (_columns.length == 0){ visibleColumns = []; displayableColumns = []; return; }; if (columnsInvalid){ columnsInvalid = false; visibleColumns = []; if (minColumnWidthInvalid){ _local2 = _columns.length; _local3 = 0; while (_local3 < _local2) { _columns[_local3].minWidth = minColumnWidth; _local3++; }; minColumnWidthInvalid = false; }; displayableColumns = null; _local2 = _columns.length; _local3 = 0; while (_local3 < _local2) { if (((displayableColumns) && (_columns[_local3].visible))){ displayableColumns.push(_columns[_local3]); } else { if (((!(displayableColumns)) && (!(_columns[_local3].visible)))){ displayableColumns = new Array(_local3); _local8 = 0; while (_local8 < _local3) { displayableColumns[_local8] = _columns[_local8]; _local8++; }; }; }; _local3++; }; if (!displayableColumns){ displayableColumns = _columns; }; if (horizontalScrollPolicy == ScrollPolicy.OFF){ _local2 = displayableColumns.length; _local3 = 0; while (_local3 < _local2) { visibleColumns.push(displayableColumns[_local3]); _local3++; }; } else { _local2 = displayableColumns.length; _local9 = 0; _local3 = 0; while (_local3 < _local2) { _local5 = (displayableColumns[_local3] as DataGridColumn); if (((((_local9 + _local5.width) > _horizontalScrollPosition)) && ((_local9 < (_horizontalScrollPosition + availableWidth))))){ visibleColumns.push(_local5); }; _local9 = (_local9 + _local5.width); _local3++; }; }; }; if (horizontalScrollPolicy == ScrollPolicy.OFF){ _local10 = 0; _local11 = 0; _local2 = visibleColumns.length; _local3 = 0; while (_local3 < _local2) { _local5 = (visibleColumns[_local3] as DataGridColumn); if (_local5.resizable){ if (!isNaN(_local5.explicitWidth)){ _local11 = (_local11 + _local5.width); } else { _local10++; _local11 = (_local11 + _local5.minWidth); }; } else { _local11 = (_local11 + _local5.width); }; _local4 = (_local4 + _local5.width); _local3++; }; _local13 = availableWidth; if ((((availableWidth > _local11)) && (_local10))){ _local2 = visibleColumns.length; _local3 = 0; while (_local3 < _local2) { _local5 = (visibleColumns[_local3] as DataGridColumn); if (((_local5.resizable) && (isNaN(_local5.explicitWidth)))){ _local6 = _local5; if (_local4 > availableWidth){ _local12 = ((_local6.width - _local6.minWidth) / (_local4 - _local11)); } else { _local12 = (_local6.width / _local4); }; _local7 = (_local6.width - ((_local4 - availableWidth) * _local12)); _local14 = _local5.minWidth; _local5.setWidth(Math.max(_local7, _local14)); }; _local13 = (_local13 - _local5.width); _local3++; }; if (((_local13) && (_local6))){ _local6.setWidth((_local6.width + _local13)); }; } else { _local2 = visibleColumns.length; _local3 = 0; while (_local3 < _local2) { _local6 = (visibleColumns[_local3] as DataGridColumn); _local12 = (_local6.width / _local4); _local7 = (availableWidth * _local12); _local6.setWidth(_local7); _local6.explicitWidth = NaN; _local13 = (_local13 - _local7); _local3++; }; if (((_local13) && (_local6))){ _local6.setWidth((_local6.width + _local13)); }; }; }; } public function set showHeaders(_arg1:Boolean):void{ _showHeaders = _arg1; invalidate(InvalidationType.SIZE); } override protected function initializeAccessibility():void{ if (DataGrid.createAccessibilityImplementation != null){ DataGrid.createAccessibilityImplementation(this); }; } public function getColumnAt(_arg1:uint):DataGridColumn{ return ((_columns[_arg1] as DataGridColumn)); } public function get rowHeight():Number{ return (_rowHeight); } public function set columns(_arg1:Array):void{ var _local2:uint; removeCellRenderers(); _columns = []; _local2 = 0; while (_local2 < _arg1.length) { addColumn(_arg1[_local2]); _local2++; }; } public function get editedItemRenderer():ICellRenderer{ if (!itemEditorInstance){ return (null); }; return (getCellRendererAt(actualRowIndex, actualColIndex)); } public function get columns():Array{ return (_columns.slice(0)); } public function spaceColumnsEqually():void{ var _local1:Number; var _local2:int; var _local3:DataGridColumn; drawNow(); if (displayableColumns.length > 0){ _local1 = (availableWidth / displayableColumns.length); _local2 = 0; while (_local2 < displayableColumns.length) { _local3 = (displayableColumns[_local2] as DataGridColumn); _local3.width = _local1; _local2++; }; invalidate(InvalidationType.SIZE); columnsInvalid = true; }; } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, SelectableList.getStyleDefinition(), ScrollBar.getStyleDefinition())); } } }//package fl.controls
Section 13
//LabelButton (fl.controls.LabelButton) package fl.controls { import fl.core.*; import flash.display.*; import flash.events.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.ui.*; public class LabelButton extends BaseButton implements IFocusManagerComponent { protected var _labelPlacement:String;// = "right" protected var _toggle:Boolean;// = false protected var icon:DisplayObject; protected var oldMouseState:String; protected var mode:String;// = "center" public var textField:TextField; protected var _label:String;// = "Label" private static var defaultStyles:Object = {icon:null, upIcon:null, downIcon:null, overIcon:null, disabledIcon:null, selectedDisabledIcon:null, selectedUpIcon:null, selectedDownIcon:null, selectedOverIcon:null, textFormat:null, disabledTextFormat:null, textPadding:5, embedFonts:false}; public static var createAccessibilityImplementation:Function; public function LabelButton(){ _labelPlacement = ButtonLabelPlacement.RIGHT; _toggle = false; _label = "Label"; mode = "center"; super(); } protected function toggleSelected(_arg1:MouseEvent):void{ selected = !(selected); dispatchEvent(new Event(Event.CHANGE, true)); } public function get labelPlacement():String{ return (_labelPlacement); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ if (oldMouseState == null){ oldMouseState = mouseState; }; setMouseState("down"); startPress(); }; } protected function setEmbedFont(){ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ setMouseState(oldMouseState); oldMouseState = null; endPress(); dispatchEvent(new MouseEvent(MouseEvent.CLICK)); }; } override public function get selected():Boolean{ return ((_toggle) ? _selected : false); } public function set labelPlacement(_arg1:String):void{ _labelPlacement = _arg1; invalidate(InvalidationType.SIZE); } public function set toggle(_arg1:Boolean):void{ if (((!(_arg1)) && (super.selected))){ selected = false; }; _toggle = _arg1; if (_toggle){ addEventListener(MouseEvent.CLICK, toggleSelected, false, 0, true); } else { removeEventListener(MouseEvent.CLICK, toggleSelected); }; invalidate(InvalidationType.STATE); } public function get label():String{ return (_label); } override public function set selected(_arg1:Boolean):void{ _selected = _arg1; if (_toggle){ invalidate(InvalidationType.STATE); }; } override protected function draw():void{ if (textField.text != _label){ label = _label; }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); drawIcon(); drawTextFormat(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } public function get toggle():Boolean{ return (_toggle); } override protected function configUI():void{ super.configUI(); textField = new TextField(); textField.type = TextFieldType.DYNAMIC; textField.selectable = false; addChild(textField); } override protected function drawLayout():void{ var _local1:Number; var _local2:String; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local1 = Number(getStyleValue("textPadding")); _local2 = ((((icon == null)) && ((mode == "center")))) ? ButtonLabelPlacement.TOP : _labelPlacement; textField.height = (textField.textHeight + 4); _local3 = (textField.textWidth + 4); _local4 = (textField.textHeight + 4); _local5 = ((icon)==null) ? 0 : (icon.width + _local1); _local6 = ((icon)==null) ? 0 : (icon.height + _local1); textField.visible = (label.length > 0); if (icon != null){ icon.x = Math.round(((width - icon.width) / 2)); icon.y = Math.round(((height - icon.height) / 2)); }; if (textField.visible == false){ textField.width = 0; textField.height = 0; } else { if ((((_local2 == ButtonLabelPlacement.BOTTOM)) || ((_local2 == ButtonLabelPlacement.TOP)))){ _local7 = Math.max(0, Math.min(_local3, (width - (2 * _local1)))); if ((height - 2) > _local4){ _local8 = _local4; } else { _local8 = (height - 2); }; _local3 = _local7; textField.width = _local3; _local4 = _local8; textField.height = _local4; textField.x = Math.round(((width - _local3) / 2)); textField.y = Math.round(((((height - textField.height) - _local6) / 2) + ((_local2)==ButtonLabelPlacement.BOTTOM) ? _local6 : 0)); if (icon != null){ icon.y = Math.round(((_local2)==ButtonLabelPlacement.BOTTOM) ? (textField.y - _local6) : ((textField.y + textField.height) + _local1)); }; } else { _local7 = Math.max(0, Math.min(_local3, ((width - _local5) - (2 * _local1)))); _local3 = _local7; textField.width = _local3; textField.x = Math.round(((((width - _local3) - _local5) / 2) + ((_local2)!=ButtonLabelPlacement.LEFT) ? _local5 : 0)); textField.y = Math.round(((height - textField.height) / 2)); if (icon != null){ icon.x = Math.round(((_local2)!=ButtonLabelPlacement.LEFT) ? (textField.x - _local5) : ((textField.x + _local3) + _local1)); }; }; }; super.drawLayout(); } override protected function initializeAccessibility():void{ if (LabelButton.createAccessibilityImplementation != null){ LabelButton.createAccessibilityImplementation(this); }; } protected function drawIcon():void{ var _local1:DisplayObject; var _local2:String; var _local3:Object; _local1 = icon; _local2 = (enabled) ? mouseState : "disabled"; if (selected){ _local2 = (("selected" + _local2.substr(0, 1).toUpperCase()) + _local2.substr(1)); }; _local2 = (_local2 + "Icon"); _local3 = getStyleValue(_local2); if (_local3 == null){ _local3 = getStyleValue("icon"); }; if (_local3 != null){ icon = getDisplayObjectInstance(_local3); }; if (icon != null){ addChildAt(icon, 1); }; if (((!((_local1 == null))) && (!((_local1 == icon))))){ removeChild(_local1); }; } public function set label(_arg1:String):void{ _label = _arg1; if (textField.text != _label){ textField.text = _label; dispatchEvent(new ComponentEvent(ComponentEvent.LABEL_CHANGE)); }; invalidate(InvalidationType.SIZE); invalidate(InvalidationType.STYLES); } protected function drawTextFormat():void{ var _local1:Object; var _local2:TextFormat; var _local3:TextFormat; _local1 = UIComponent.getStyleDefinition(); _local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); _local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseButton.getStyleDefinition())); } } }//package fl.controls
Section 14
//List (fl.controls.List) package fl.controls { import fl.controls.listClasses.*; import fl.core.*; import flash.display.*; import flash.events.*; import fl.managers.*; import flash.utils.*; import flash.geom.*; import flash.ui.*; public class List extends SelectableList implements IFocusManagerComponent { protected var _labelField:String;// = "label" protected var _rowHeight:Number;// = 20 protected var _cellRenderer:Object; protected var _iconField:String;// = "icon" protected var _labelFunction:Function; protected var _iconFunction:Function; private static var defaultStyles:Object = {focusRectSkin:null, focusRectPadding:null}; public static var createAccessibilityImplementation:Function; public function List(){ _rowHeight = 20; _labelField = "label"; _iconField = "icon"; super(); } public function get iconField():String{ return (_iconField); } protected function doKeySelection(_arg1:int, _arg2:Boolean, _arg3:Boolean):void{ var _local4:Boolean; var _local5:int; var _local6:Array; var _local7:int; var _local8:int; _local4 = false; if (_arg2){ _local6 = []; _local7 = lastCaretIndex; _local8 = _arg1; if (_local7 == -1){ _local7 = ((caretIndex)!=-1) ? caretIndex : _arg1; }; if (_local7 > _local8){ _local8 = _local7; _local7 = _arg1; }; _local5 = _local7; while (_local5 <= _local8) { _local6.push(_local5); _local5++; }; selectedIndices = _local6; caretIndex = _arg1; _local4 = true; } else { selectedIndex = _arg1; caretIndex = (lastCaretIndex = _arg1); _local4 = true; }; if (_local4){ dispatchEvent(new Event(Event.CHANGE)); }; invalidate(InvalidationType.DATA); } override protected function drawList():void{ var _local1:Rectangle; var _local2:uint; var _local3:uint; var _local4:uint; var _local5:Object; var _local6:ICellRenderer; var _local7:Dictionary; var _local8:Dictionary; var _local9:Boolean; var _local10:String; var _local11:Object; var _local12:Sprite; var _local13:String; listHolder.x = (listHolder.y = contentPadding); _local1 = listHolder.scrollRect; _local1.x = _horizontalScrollPosition; _local1.y = (Math.floor(_verticalScrollPosition) % rowHeight); listHolder.scrollRect = _local1; listHolder.cacheAsBitmap = useBitmapScrolling; _local2 = Math.floor((_verticalScrollPosition / rowHeight)); _local3 = Math.min(length, ((_local2 + rowCount) + 1)); _local7 = (renderedItems = new Dictionary(true)); _local4 = _local2; while (_local4 < _local3) { _local7[_dataProvider.getItemAt(_local4)] = true; _local4++; }; _local8 = new Dictionary(true); while (activeCellRenderers.length > 0) { _local6 = (activeCellRenderers.pop() as ICellRenderer); _local5 = _local6.data; if ((((_local7[_local5] == null)) || ((invalidItems[_local5] == true)))){ availableCellRenderers.push(_local6); } else { _local8[_local5] = _local6; invalidItems[_local5] = true; }; list.removeChild((_local6 as DisplayObject)); }; invalidItems = new Dictionary(true); _local4 = _local2; while (_local4 < _local3) { _local9 = false; _local5 = _dataProvider.getItemAt(_local4); if (_local8[_local5] != null){ _local9 = true; _local6 = _local8[_local5]; delete _local8[_local5]; } else { if (availableCellRenderers.length > 0){ _local6 = (availableCellRenderers.pop() as ICellRenderer); } else { _local6 = (getDisplayObjectInstance(getStyleValue("cellRenderer")) as ICellRenderer); _local12 = (_local6 as Sprite); if (_local12 != null){ _local12.addEventListener(MouseEvent.CLICK, handleCellRendererClick, false, 0, true); _local12.addEventListener(MouseEvent.ROLL_OVER, handleCellRendererMouseEvent, false, 0, true); _local12.addEventListener(MouseEvent.ROLL_OUT, handleCellRendererMouseEvent, false, 0, true); _local12.addEventListener(Event.CHANGE, handleCellRendererChange, false, 0, true); _local12.doubleClickEnabled = true; _local12.addEventListener(MouseEvent.DOUBLE_CLICK, handleCellRendererDoubleClick, false, 0, true); if (_local12["setStyle"] != null){ for (_local13 in rendererStyles) { var _local16 = _local12; _local16["setStyle"](_local13, rendererStyles[_local13]); }; }; }; }; }; list.addChild((_local6 as Sprite)); activeCellRenderers.push(_local6); _local6.y = (rowHeight * (_local4 - _local2)); _local6.setSize((availableWidth + _maxHorizontalScrollPosition), rowHeight); _local10 = itemToLabel(_local5); _local11 = null; if (_iconFunction != null){ _local11 = _iconFunction(_local5); } else { if (_iconField != null){ _local11 = _local5[_iconField]; }; }; if (!_local9){ _local6.data = _local5; }; _local6.listData = new ListData(_local10, _local11, this, _local4, _local4, 0); _local6.selected = !((_selectedIndices.indexOf(_local4) == -1)); if ((_local6 is UIComponent)){ (_local6 as UIComponent).drawNow(); }; _local4++; }; } public function get iconFunction():Function{ return (_iconFunction); } public function set iconField(_arg1:String):void{ if (_arg1 == _iconField){ return; }; _iconField = _arg1; invalidate(InvalidationType.DATA); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:int; if (!selectable){ return; }; switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: case Keyboard.END: case Keyboard.HOME: case Keyboard.PAGE_UP: case Keyboard.PAGE_DOWN: moveSelectionVertically(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); break; case Keyboard.LEFT: case Keyboard.RIGHT: moveSelectionHorizontally(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); break; case Keyboard.SPACE: if (caretIndex == -1){ caretIndex = 0; }; doKeySelection(caretIndex, _arg1.shiftKey, _arg1.ctrlKey); scrollToSelected(); break; default: _local2 = getNextIndexAtLetter(String.fromCharCode(_arg1.keyCode), selectedIndex); if (_local2 > -1){ selectedIndex = _local2; scrollToSelected(); }; break; }; _arg1.stopPropagation(); } override public function itemToLabel(_arg1:Object):String{ if (_labelFunction != null){ return (String(_labelFunction(_arg1))); }; return (((_arg1[_labelField])!=null) ? String(_arg1[_labelField]) : ""); } public function get labelField():String{ return (_labelField); } override protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ var _local4:int; var _local5:int; var _local6:int; _local4 = Math.max(Math.floor((calculateAvailableHeight() / rowHeight)), 1); _local5 = -1; _local6 = 0; switch (_arg1){ case Keyboard.UP: if (caretIndex > 0){ _local5 = (caretIndex - 1); }; break; case Keyboard.DOWN: if (caretIndex < (length - 1)){ _local5 = (caretIndex + 1); }; break; case Keyboard.PAGE_UP: if (caretIndex > 0){ _local5 = Math.max((caretIndex - _local4), 0); }; break; case Keyboard.PAGE_DOWN: if (caretIndex < (length - 1)){ _local5 = Math.min((caretIndex + _local4), (length - 1)); }; break; case Keyboard.HOME: if (caretIndex > 0){ _local5 = 0; }; break; case Keyboard.END: if (caretIndex < (length - 1)){ _local5 = (length - 1); }; break; }; if (_local5 >= 0){ doKeySelection(_local5, _arg2, _arg3); scrollToSelected(); }; } public function set labelField(_arg1:String):void{ if (_arg1 == _labelField){ return; }; _labelField = _arg1; invalidate(InvalidationType.DATA); } public function set rowCount(_arg1:uint):void{ var _local2:Number; var _local3:Number; _local2 = Number(getStyleValue("contentPadding")); _local3 = ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0; height = (((rowHeight * _arg1) + (2 * _local2)) + _local3); } override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ list.x = -(_arg1); super.setHorizontalScrollPosition(_arg1, true); } public function set iconFunction(_arg1:Function):void{ if (_iconFunction == _arg1){ return; }; _iconFunction = _arg1; invalidate(InvalidationType.DATA); } public function get labelFunction():Function{ return (_labelFunction); } override protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ invalidate(InvalidationType.SCROLL); super.setVerticalScrollPosition(_arg1, true); } protected function calculateAvailableHeight():Number{ var _local1:Number; _local1 = Number(getStyleValue("contentPadding")); return (((height - (_local1 * 2)) - ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0)); } override protected function draw():void{ var _local1:Boolean; _local1 = !((contentHeight == (rowHeight * length))); contentHeight = (rowHeight * length); if (isInvalid(InvalidationType.STYLES)){ setStyles(); drawBackground(); if (contentPadding != getStyleValue("contentPadding")){ invalidate(InvalidationType.SIZE, false); }; if (_cellRenderer != getStyleValue("cellRenderer")){ _invalidateList(); _cellRenderer = getStyleValue("cellRenderer"); }; }; if (((isInvalid(InvalidationType.SIZE, InvalidationType.STATE)) || (_local1))){ drawLayout(); }; if (isInvalid(InvalidationType.RENDERER_STYLES)){ updateRendererStyles(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.SIZE, InvalidationType.DATA, InvalidationType.SCROLL, InvalidationType.SELECTED)){ drawList(); }; updateChildren(); validate(); } override protected function configUI():void{ useFixedHorizontalScrolling = true; _horizontalScrollPolicy = ScrollPolicy.AUTO; _verticalScrollPolicy = ScrollPolicy.AUTO; super.configUI(); } override public function get rowCount():uint{ return (Math.ceil((calculateAvailableHeight() / rowHeight))); } override protected function initializeAccessibility():void{ if (List.createAccessibilityImplementation != null){ List.createAccessibilityImplementation(this); }; } override public function scrollToIndex(_arg1:int):void{ var _local2:uint; var _local3:uint; drawNow(); _local2 = (Math.floor(((_verticalScrollPosition + availableHeight) / rowHeight)) - 1); _local3 = Math.ceil((_verticalScrollPosition / rowHeight)); if (_arg1 < _local3){ verticalScrollPosition = (_arg1 * rowHeight); } else { if (_arg1 > _local2){ verticalScrollPosition = (((_arg1 + 1) * rowHeight) - availableHeight); }; }; } public function get rowHeight():Number{ return (_rowHeight); } public function set labelFunction(_arg1:Function):void{ if (_labelFunction == _arg1){ return; }; _labelFunction = _arg1; invalidate(InvalidationType.DATA); } public function set rowHeight(_arg1:Number):void{ _rowHeight = _arg1; invalidate(InvalidationType.SIZE); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, SelectableList.getStyleDefinition())); } } }//package fl.controls
Section 15
//ScrollBar (fl.controls.ScrollBar) package fl.controls { import fl.core.*; import flash.events.*; import fl.events.*; public class ScrollBar extends UIComponent { private var _direction:String;// = "vertical" protected var inDrag:Boolean;// = false protected var upArrow:BaseButton; private var _pageScrollSize:Number;// = 0 protected var downArrow:BaseButton; private var _pageSize:Number;// = 10 private var thumbScrollOffset:Number; private var _maxScrollPosition:Number;// = 0 private var _scrollPosition:Number;// = 0 protected var track:BaseButton; private var _minScrollPosition:Number;// = 0 private var _lineScrollSize:Number;// = 1 protected var thumb:LabelButton; protected static const THUMB_STYLES:Object = {disabledSkin:"thumbDisabledSkin", downSkin:"thumbDownSkin", overSkin:"thumbOverSkin", upSkin:"thumbUpSkin", icon:"thumbIcon", textPadding:0}; public static const WIDTH:Number = 15; protected static const DOWN_ARROW_STYLES:Object = {disabledSkin:"downArrowDisabledSkin", downSkin:"downArrowDownSkin", overSkin:"downArrowOverSkin", upSkin:"downArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const UP_ARROW_STYLES:Object = {disabledSkin:"upArrowDisabledSkin", downSkin:"upArrowDownSkin", overSkin:"upArrowOverSkin", upSkin:"upArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const TRACK_STYLES:Object = {disabledSkin:"trackDisabledSkin", downSkin:"trackDownSkin", overSkin:"trackOverSkin", upSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {downArrowDisabledSkin:"ScrollArrowDown_disabledSkin", downArrowDownSkin:"ScrollArrowDown_downSkin", downArrowOverSkin:"ScrollArrowDown_overSkin", downArrowUpSkin:"ScrollArrowDown_upSkin", thumbDisabledSkin:"ScrollThumb_upSkin", thumbDownSkin:"ScrollThumb_downSkin", thumbOverSkin:"ScrollThumb_overSkin", thumbUpSkin:"ScrollThumb_upSkin", trackDisabledSkin:"ScrollTrack_skin", trackDownSkin:"ScrollTrack_skin", trackOverSkin:"ScrollTrack_skin", trackUpSkin:"ScrollTrack_skin", upArrowDisabledSkin:"ScrollArrowUp_disabledSkin", upArrowDownSkin:"ScrollArrowUp_downSkin", upArrowOverSkin:"ScrollArrowUp_overSkin", upArrowUpSkin:"ScrollArrowUp_upSkin", thumbIcon:"ScrollBar_thumbIcon", repeatDelay:500, repeatInterval:35}; public function ScrollBar(){ _pageSize = 10; _pageScrollSize = 0; _lineScrollSize = 1; _minScrollPosition = 0; _maxScrollPosition = 0; _scrollPosition = 0; _direction = ScrollBarDirection.VERTICAL; inDrag = false; super(); setStyles(); focusEnabled = false; } public function get minScrollPosition():Number{ return (_minScrollPosition); } public function set minScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _arg1, _maxScrollPosition); } public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ var _local3:Number; _local3 = scrollPosition; _scrollPosition = Math.max(_minScrollPosition, Math.min(_maxScrollPosition, _arg1)); if (_local3 == _scrollPosition){ return; }; if (_arg2){ dispatchEvent(new ScrollEvent(_direction, (scrollPosition - _local3), scrollPosition)); }; updateThumb(); } public function set scrollPosition(_arg1:Number):void{ setScrollPosition(_arg1, true); } public function get pageScrollSize():Number{ return (((_pageScrollSize)==0) ? _pageSize : _pageScrollSize); } public function set pageSize(_arg1:Number):void{ if (_arg1 > 0){ _pageSize = _arg1; }; } public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ this.pageSize = _arg1; _minScrollPosition = _arg2; _maxScrollPosition = _arg3; if (_arg4 >= 0){ _pageScrollSize = _arg4; }; enabled = (_maxScrollPosition > _minScrollPosition); setScrollPosition(_scrollPosition, false); updateThumb(); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; downArrow.enabled = (track.enabled = (thumb.enabled = (upArrow.enabled = ((enabled) && ((_maxScrollPosition > _minScrollPosition)))))); updateThumb(); } protected function updateThumb():void{ var _local1:Number; _local1 = ((_maxScrollPosition - _minScrollPosition) + _pageSize); if ((((((track.height <= 12)) || ((_maxScrollPosition <= _minScrollPosition)))) || ((((_local1 == 0)) || (isNaN(_local1)))))){ thumb.height = 12; thumb.visible = false; } else { thumb.height = Math.max(13, ((_pageSize / _local1) * track.height)); thumb.y = (track.y + ((track.height - thumb.height) * ((_scrollPosition - _minScrollPosition) / (_maxScrollPosition - _minScrollPosition)))); thumb.visible = enabled; }; } protected function thumbPressHandler(_arg1:MouseEvent):void{ inDrag = true; thumbScrollOffset = (mouseY - thumb.y); thumb.mouseStateLocked = true; mouseChildren = false; stage.addEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler, false, 0, true); } protected function thumbReleaseHandler(_arg1:MouseEvent):void{ inDrag = false; mouseChildren = true; thumb.mouseStateLocked = false; stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler); } public function set pageScrollSize(_arg1:Number):void{ if (_arg1 >= 0){ _pageScrollSize = _arg1; }; } protected function handleThumbDrag(_arg1:MouseEvent):void{ var _local2:Number; _local2 = Math.max(0, Math.min((track.height - thumb.height), ((mouseY - track.y) - thumbScrollOffset))); setScrollPosition((((_local2 / (track.height - thumb.height)) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition)); } public function set direction(_arg1:String):void{ var _local2:Boolean; if (_direction == _arg1){ return; }; _direction = _arg1; if (isLivePreview){ return; }; setScaleY(1); _local2 = (_direction == ScrollBarDirection.HORIZONTAL); if (((_local2) && (componentInspectorSetting))){ if (rotation == 90){ return; }; setScaleX(-1); rotation = -90; }; if (!componentInspectorSetting){ if (((_local2) && ((rotation == 0)))){ rotation = -90; setScaleX(-1); } else { if (((!(_local2)) && ((rotation == -90)))){ rotation = 0; setScaleX(1); }; }; }; invalidate(InvalidationType.SIZE); } public function set lineScrollSize(_arg1:Number):void{ if (_arg1 > 0){ _lineScrollSize = _arg1; }; } override public function get height():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.width : super.height); } protected function scrollPressHandler(_arg1:ComponentEvent):void{ var _local2:Number; var _local3:Number; _arg1.stopImmediatePropagation(); if (_arg1.currentTarget == upArrow){ setScrollPosition((_scrollPosition - _lineScrollSize)); } else { if (_arg1.currentTarget == downArrow){ setScrollPosition((_scrollPosition + _lineScrollSize)); } else { _local2 = (((track.mouseY / track.height) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition); _local3 = ((pageScrollSize)==0) ? pageSize : pageScrollSize; if (_scrollPosition < _local2){ setScrollPosition(Math.min(_local2, (_scrollPosition + _local3))); } else { if (_scrollPosition > _local2){ setScrollPosition(Math.max(_local2, (_scrollPosition - _local3))); }; }; }; }; } public function get pageSize():Number{ return (_pageSize); } public function set maxScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _minScrollPosition, _arg1); } public function get scrollPosition():Number{ return (_scrollPosition); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ var _local1:Number; if (isInvalid(InvalidationType.SIZE)){ _local1 = super.height; downArrow.move(0, Math.max(upArrow.height, (_local1 - downArrow.height))); track.setSize(WIDTH, Math.max(0, (_local1 - (downArrow.height + upArrow.height)))); updateThumb(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ setStyles(); }; downArrow.drawNow(); upArrow.drawNow(); track.drawNow(); thumb.drawNow(); validate(); } override protected function configUI():void{ super.configUI(); track = new BaseButton(); track.move(0, 14); track.useHandCursor = false; track.autoRepeat = true; track.focusEnabled = false; addChild(track); thumb = new LabelButton(); thumb.label = ""; thumb.setSize(WIDTH, 15); thumb.move(0, 15); thumb.focusEnabled = false; addChild(thumb); downArrow = new BaseButton(); downArrow.setSize(WIDTH, 14); downArrow.autoRepeat = true; downArrow.focusEnabled = false; addChild(downArrow); upArrow = new BaseButton(); upArrow.setSize(WIDTH, 14); upArrow.move(0, 0); upArrow.autoRepeat = true; upArrow.focusEnabled = false; addChild(upArrow); upArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); downArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); track.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbPressHandler, false, 0, true); enabled = false; } public function get direction():String{ return (_direction); } public function get lineScrollSize():Number{ return (_lineScrollSize); } override public function setSize(_arg1:Number, _arg2:Number):void{ if (_direction == ScrollBarDirection.HORIZONTAL){ super.setSize(_arg2, _arg1); } else { super.setSize(_arg1, _arg2); }; } public function get maxScrollPosition():Number{ return (_maxScrollPosition); } override public function get width():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.height : super.width); } protected function setStyles():void{ copyStylesToChild(downArrow, DOWN_ARROW_STYLES); copyStylesToChild(thumb, THUMB_STYLES); copyStylesToChild(track, TRACK_STYLES); copyStylesToChild(upArrow, UP_ARROW_STYLES); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 16
//ScrollBarDirection (fl.controls.ScrollBarDirection) package fl.controls { public class ScrollBarDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; } }//package fl.controls
Section 17
//ScrollPolicy (fl.controls.ScrollPolicy) package fl.controls { public class ScrollPolicy { public static const OFF:String = "off"; public static const ON:String = "on"; public static const AUTO:String = "auto"; } }//package fl.controls
Section 18
//SelectableList (fl.controls.SelectableList) package fl.controls { import fl.controls.listClasses.*; import fl.core.*; import flash.display.*; import flash.events.*; import fl.data.*; import fl.managers.*; import fl.events.*; import flash.utils.*; import fl.containers.*; import flash.ui.*; public class SelectableList extends BaseScrollPane implements IFocusManagerComponent { protected var invalidItems:Dictionary; protected var renderedItems:Dictionary; protected var listHolder:Sprite; protected var _allowMultipleSelection:Boolean;// = false protected var lastCaretIndex:int;// = -1 protected var _selectedIndices:Array; protected var availableCellRenderers:Array; protected var list:Sprite; protected var caretIndex:int;// = -1 protected var updatedRendererStyles:Object; protected var preChangeItems:Array; protected var activeCellRenderers:Array; protected var rendererStyles:Object; protected var _verticalScrollPosition:Number; protected var _dataProvider:DataProvider; protected var _horizontalScrollPosition:Number; private var collectionItemImport:SimpleCollectionItem; protected var _selectable:Boolean;// = true private static var defaultStyles:Object = {skin:"List_skin", cellRenderer:CellRenderer, contentPadding:null, disabledAlpha:null}; public static var createAccessibilityImplementation:Function; public function SelectableList(){ _allowMultipleSelection = false; _selectable = true; caretIndex = -1; lastCaretIndex = -1; super(); activeCellRenderers = []; availableCellRenderers = []; invalidItems = new Dictionary(true); renderedItems = new Dictionary(true); _selectedIndices = []; if (dataProvider == null){ dataProvider = new DataProvider(); }; verticalScrollPolicy = ScrollPolicy.AUTO; rendererStyles = {}; updatedRendererStyles = {}; } protected function drawList():void{ } public function set allowMultipleSelection(_arg1:Boolean):void{ if (_arg1 == _allowMultipleSelection){ return; }; _allowMultipleSelection = _arg1; if (((!(_arg1)) && ((_selectedIndices.length > 1)))){ _selectedIndices = [_selectedIndices.pop()]; invalidate(InvalidationType.DATA); }; } public function sortItemsOn(_arg1:String, _arg2:Object=null){ return (_dataProvider.sortOn(_arg1, _arg2)); } public function removeItemAt(_arg1:uint):Object{ return (_dataProvider.removeItemAt(_arg1)); } public function get selectedItem():Object{ return (((_selectedIndices.length)==0) ? null : _dataProvider.getItemAt(selectedIndex)); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!selectable){ return; }; switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: case Keyboard.END: case Keyboard.HOME: case Keyboard.PAGE_UP: case Keyboard.PAGE_DOWN: moveSelectionVertically(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); _arg1.stopPropagation(); break; case Keyboard.LEFT: case Keyboard.RIGHT: moveSelectionHorizontally(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); _arg1.stopPropagation(); break; }; } public function get selectable():Boolean{ return (_selectable); } public function itemToCellRenderer(_arg1:Object):ICellRenderer{ var _local2:*; var _local3:ICellRenderer; if (_arg1 != null){ for (_local2 in activeCellRenderers) { _local3 = (activeCellRenderers[_local2] as ICellRenderer); if (_local3.data == _arg1){ return (_local3); }; }; }; return (null); } public function getNextIndexAtLetter(_arg1:String, _arg2:int=-1):int{ var _local3:int; var _local4:Number; var _local5:Number; var _local6:Object; var _local7:String; if (length == 0){ return (-1); }; _arg1 = _arg1.toUpperCase(); _local3 = (length - 1); _local4 = 0; while (_local4 < _local3) { _local5 = ((_arg2 + 1) + _local4); if (_local5 > (length - 1)){ _local5 = (_local5 - length); }; _local6 = getItemAt(_local5); if (_local6 == null){ break; }; _local7 = itemToLabel(_local6); if (_local7 == null){ } else { if (_local7.charAt(0).toUpperCase() == _arg1){ return (_local5); }; }; _local4++; }; return (-1); } public function invalidateList():void{ _invalidateList(); invalidate(InvalidationType.DATA); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; list.mouseChildren = _enabled; } public function get selectedIndices():Array{ return (_selectedIndices.concat()); } public function set selectable(_arg1:Boolean):void{ if (_arg1 == _selectable){ return; }; if (!_arg1){ selectedIndices = []; }; _selectable = _arg1; } public function itemToLabel(_arg1:Object):String{ return (_arg1["label"]); } public function addItemAt(_arg1:Object, _arg2:uint):void{ _dataProvider.addItemAt(_arg1, _arg2); invalidateList(); } public function replaceItemAt(_arg1:Object, _arg2:uint):Object{ return (_dataProvider.replaceItemAt(_arg1, _arg2)); } protected function handleDataChange(_arg1:DataChangeEvent):void{ var _local2:int; var _local3:int; var _local4:String; var _local5:uint; _local2 = _arg1.startIndex; _local3 = _arg1.endIndex; _local4 = _arg1.changeType; if (_local4 == DataChangeType.INVALIDATE_ALL){ clearSelection(); invalidateList(); } else { if (_local4 == DataChangeType.INVALIDATE){ _local5 = 0; while (_local5 < _arg1.items.length) { invalidateItem(_arg1.items[_local5]); _local5++; }; } else { if (_local4 == DataChangeType.ADD){ _local5 = 0; while (_local5 < _selectedIndices.length) { if (_selectedIndices[_local5] >= _local2){ _selectedIndices[_local5] = (_selectedIndices[_local5] + (_local2 - _local3)); }; _local5++; }; } else { if (_local4 == DataChangeType.REMOVE){ _local5 = 0; while (_local5 < _selectedIndices.length) { if (_selectedIndices[_local5] >= _local2){ if (_selectedIndices[_local5] <= _local3){ delete _selectedIndices[_local5]; } else { _selectedIndices[_local5] = (_selectedIndices[_local5] - ((_local2 - _local3) + 1)); }; }; _local5++; }; } else { if (_local4 == DataChangeType.REMOVE_ALL){ clearSelection(); } else { if (_local4 == DataChangeType.REPLACE){ } else { selectedItems = preChangeItems; preChangeItems = null; }; }; }; }; }; }; invalidate(InvalidationType.DATA); } protected function _invalidateList():void{ availableCellRenderers = []; while (activeCellRenderers.length > 0) { list.removeChild((activeCellRenderers.pop() as DisplayObject)); }; } protected function updateRendererStyles():void{ var _local1:Array; var _local2:uint; var _local3:uint; var _local4:String; _local1 = availableCellRenderers.concat(activeCellRenderers); _local2 = _local1.length; _local3 = 0; while (_local3 < _local2) { if (_local1[_local3].setStyle == null){ } else { for (_local4 in updatedRendererStyles) { _local1[_local3].setStyle(_local4, updatedRendererStyles[_local4]); }; _local1[_local3].drawNow(); }; _local3++; }; updatedRendererStyles = {}; } public function set selectedItem(_arg1:Object):void{ var _local2:int; _local2 = _dataProvider.getItemIndex(_arg1); selectedIndex = _local2; } public function sortItems(... _args){ return (_dataProvider.sort.apply(_dataProvider, _args)); } public function removeAll():void{ _dataProvider.removeAll(); } protected function handleCellRendererChange(_arg1:Event):void{ var _local2:ICellRenderer; var _local3:uint; _local2 = (_arg1.currentTarget as ICellRenderer); _local3 = _local2.listData.index; _dataProvider.invalidateItemAt(_local3); } protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; if (_arg1 == _horizontalScrollPosition){ return; }; _local3 = (_arg1 - _horizontalScrollPosition); _horizontalScrollPosition = _arg1; if (_arg2){ dispatchEvent(new ScrollEvent(ScrollBarDirection.HORIZONTAL, _local3, _arg1)); }; } public function scrollToSelected():void{ scrollToIndex(selectedIndex); } public function invalidateItem(_arg1:Object):void{ if (renderedItems[_arg1] == null){ return; }; invalidItems[_arg1] = true; invalidate(InvalidationType.DATA); } protected function handleCellRendererClick(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:uint; var _local4:int; var _local5:int; var _local6:uint; if (!_enabled){ return; }; _local2 = (_arg1.currentTarget as ICellRenderer); _local3 = _local2.listData.index; if (((!(dispatchEvent(new ListEvent(ListEvent.ITEM_CLICK, false, true, _local2.listData.column, _local2.listData.row, _local3, _local2.data)))) || (!(_selectable)))){ return; }; _local4 = selectedIndices.indexOf(_local3); if (!_allowMultipleSelection){ if (_local4 != -1){ return; }; _local2.selected = true; _selectedIndices = [_local3]; lastCaretIndex = (caretIndex = _local3); } else { if (_arg1.shiftKey){ _local6 = ((_selectedIndices.length)>0) ? _selectedIndices[0] : _local3; _selectedIndices = []; if (_local6 > _local3){ _local5 = _local6; while (_local5 >= _local3) { _selectedIndices.push(_local5); _local5--; }; } else { _local5 = _local6; while (_local5 <= _local3) { _selectedIndices.push(_local5); _local5++; }; }; caretIndex = _local3; } else { if (_arg1.ctrlKey){ if (_local4 != -1){ _local2.selected = false; _selectedIndices.splice(_local4, 1); } else { _local2.selected = true; _selectedIndices.push(_local3); }; caretIndex = _local3; } else { _selectedIndices = [_local3]; lastCaretIndex = (caretIndex = _local3); }; }; }; dispatchEvent(new Event(Event.CHANGE)); invalidate(InvalidationType.DATA); } public function get length():uint{ return (_dataProvider.length); } public function get allowMultipleSelection():Boolean{ return (_allowMultipleSelection); } protected function onPreChange(_arg1:DataChangeEvent):void{ switch (_arg1.changeType){ case DataChangeType.REMOVE: case DataChangeType.ADD: case DataChangeType.INVALIDATE: case DataChangeType.REMOVE_ALL: case DataChangeType.REPLACE: case DataChangeType.INVALIDATE_ALL: break; default: preChangeItems = selectedItems; break; }; } public function getRendererStyle(_arg1:String, _arg2:int=-1):Object{ return (rendererStyles[_arg1]); } override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; if (_arg1 == _verticalScrollPosition){ return; }; _local3 = (_arg1 - _verticalScrollPosition); _verticalScrollPosition = _arg1; if (_arg2){ dispatchEvent(new ScrollEvent(ScrollBarDirection.VERTICAL, _local3, _arg1)); }; } protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } public function set selectedIndices(_arg1:Array):void{ if (!_selectable){ return; }; _selectedIndices = ((_arg1)==null) ? [] : _arg1.concat(); invalidate(InvalidationType.SELECTED); } public function get selectedIndex():int{ return (((_selectedIndices.length)==0) ? -1 : _selectedIndices[(_selectedIndices.length - 1)]); } override protected function draw():void{ super.draw(); } override protected function configUI():void{ super.configUI(); listHolder = new Sprite(); addChild(listHolder); listHolder.scrollRect = contentScrollRect; list = new Sprite(); listHolder.addChild(list); } public function addItem(_arg1:Object):void{ _dataProvider.addItem(_arg1); invalidateList(); } protected function handleCellRendererMouseEvent(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:String; _local2 = (_arg1.target as ICellRenderer); _local3 = ((_arg1.type)==MouseEvent.ROLL_OVER) ? ListEvent.ITEM_ROLL_OVER : ListEvent.ITEM_ROLL_OUT; dispatchEvent(new ListEvent(_local3, false, false, _local2.listData.column, _local2.listData.row, _local2.listData.index, _local2.data)); } public function clearRendererStyle(_arg1:String, _arg2:int=-1):void{ delete rendererStyles[_arg1]; updatedRendererStyles[_arg1] = null; invalidate(InvalidationType.RENDERER_STYLES); } protected function handleCellRendererDoubleClick(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:uint; if (!_enabled){ return; }; _local2 = (_arg1.currentTarget as ICellRenderer); _local3 = _local2.listData.index; dispatchEvent(new ListEvent(ListEvent.ITEM_DOUBLE_CLICK, false, true, _local2.listData.column, _local2.listData.row, _local3, _local2.data)); } public function get rowCount():uint{ return (0); } public function isItemSelected(_arg1:Object):Boolean{ return ((selectedItems.indexOf(_arg1) > -1)); } public function set dataProvider(_arg1:DataProvider):void{ if (_dataProvider != null){ _dataProvider.removeEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange); _dataProvider.removeEventListener(DataChangeEvent.PRE_DATA_CHANGE, onPreChange); }; _dataProvider = _arg1; _dataProvider.addEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange, false, 0, true); _dataProvider.addEventListener(DataChangeEvent.PRE_DATA_CHANGE, onPreChange, false, 0, true); clearSelection(); invalidateList(); } override protected function drawLayout():void{ super.drawLayout(); contentScrollRect = listHolder.scrollRect; contentScrollRect.width = availableWidth; contentScrollRect.height = availableHeight; listHolder.scrollRect = contentScrollRect; } public function getItemAt(_arg1:uint):Object{ return (_dataProvider.getItemAt(_arg1)); } override protected function initializeAccessibility():void{ if (SelectableList.createAccessibilityImplementation != null){ SelectableList.createAccessibilityImplementation(this); }; } public function scrollToIndex(_arg1:int):void{ } public function removeItem(_arg1:Object):Object{ return (_dataProvider.removeItem(_arg1)); } public function get dataProvider():DataProvider{ return (_dataProvider); } public function set maxHorizontalScrollPosition(_arg1:Number):void{ _maxHorizontalScrollPosition = _arg1; invalidate(InvalidationType.SIZE); } public function setRendererStyle(_arg1:String, _arg2:Object, _arg3:uint=0):void{ if (rendererStyles[_arg1] == _arg2){ return; }; updatedRendererStyles[_arg1] = _arg2; rendererStyles[_arg1] = _arg2; invalidate(InvalidationType.RENDERER_STYLES); } public function invalidateItemAt(_arg1:uint):void{ var _local2:Object; _local2 = _dataProvider.getItemAt(_arg1); if (_local2 != null){ invalidateItem(_local2); }; } public function set selectedItems(_arg1:Array):void{ var _local2:Array; var _local3:uint; var _local4:int; if (_arg1 == null){ selectedIndices = null; return; }; _local2 = []; _local3 = 0; while (_local3 < _arg1.length) { _local4 = _dataProvider.getItemIndex(_arg1[_local3]); if (_local4 != -1){ _local2.push(_local4); }; _local3++; }; selectedIndices = _local2; } public function clearSelection():void{ selectedIndex = -1; } override public function get maxHorizontalScrollPosition():Number{ return (_maxHorizontalScrollPosition); } public function get selectedItems():Array{ var _local1:Array; var _local2:uint; _local1 = []; _local2 = 0; while (_local2 < _selectedIndices.length) { _local1.push(_dataProvider.getItemAt(_selectedIndices[_local2])); _local2++; }; return (_local1); } public function set selectedIndex(_arg1:int):void{ selectedIndices = ((_arg1)==-1) ? null : [_arg1]; } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseScrollPane.getStyleDefinition())); } } }//package fl.controls
Section 19
//TextArea (fl.controls.TextArea) package fl.controls { import fl.core.*; import flash.display.*; import flash.events.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.system.*; import flash.ui.*; public class TextArea extends UIComponent implements IFocusManagerComponent { protected var _html:Boolean;// = false protected var _verticalScrollBar:UIScrollBar; protected var _savedHTML:String; protected var background:DisplayObject; protected var _horizontalScrollBar:UIScrollBar; protected var _horizontalScrollPolicy:String;// = "auto" protected var _editable:Boolean;// = true protected var textHasChanged:Boolean;// = false public var textField:TextField; protected var _wordWrap:Boolean;// = true protected var _verticalScrollPolicy:String;// = "auto" protected static const SCROLL_BAR_STYLES:Object = {downArrowDisabledSkin:"downArrowDisabledSkin", downArrowDownSkin:"downArrowDownSkin", downArrowOverSkin:"downArrowOverSkin", downArrowUpSkin:"downArrowUpSkin", upArrowDisabledSkin:"upArrowDisabledSkin", upArrowDownSkin:"upArrowDownSkin", upArrowOverSkin:"upArrowOverSkin", upArrowUpSkin:"upArrowUpSkin", thumbDisabledSkin:"thumbDisabledSkin", thumbDownSkin:"thumbDownSkin", thumbOverSkin:"thumbOverSkin", thumbUpSkin:"thumbUpSkin", thumbIcon:"thumbIcon", trackDisabledSkin:"trackDisabledSkin", trackDownSkin:"trackDownSkin", trackOverSkin:"trackOverSkin", trackUpSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {upSkin:"TextArea_upSkin", disabledSkin:"TextArea_disabledSkin", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, textPadding:3, embedFonts:false}; public static var createAccessibilityImplementation:Function; public function TextArea(){ _editable = true; _wordWrap = true; _horizontalScrollPolicy = ScrollPolicy.AUTO; _verticalScrollPolicy = ScrollPolicy.AUTO; _html = false; textHasChanged = false; super(); } override public function drawFocus(_arg1:Boolean):void{ if (focusTarget != null){ focusTarget.drawFocus(_arg1); return; }; super.drawFocus(_arg1); } public function set imeMode(_arg1:String):void{ _imeMode = _arg1; } protected function handleWheel(_arg1:MouseEvent):void{ if (((!(enabled)) || (!(_verticalScrollBar.visible)))){ return; }; _verticalScrollBar.scrollPosition = (_verticalScrollBar.scrollPosition - (_arg1.delta * _verticalScrollBar.lineScrollSize)); dispatchEvent(new ScrollEvent(ScrollBarDirection.VERTICAL, (_arg1.delta * _verticalScrollBar.lineScrollSize), _verticalScrollBar.scrollPosition)); } public function get verticalScrollPosition():Number{ return (textField.scrollV); } override protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((((_arg1 == textField)) || (super.isOurFocus(_arg1)))); } public function set verticalScrollPosition(_arg1:Number):void{ drawNow(); textField.scrollV = _arg1; } protected function handleKeyDown(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.ENTER){ dispatchEvent(new ComponentEvent(ComponentEvent.ENTER, true)); }; } public function set text(_arg1:String):void{ if (((componentInspectorSetting) && ((_arg1 == "")))){ return; }; textField.text = _arg1; _html = false; invalidate(InvalidationType.DATA); invalidate(InvalidationType.STYLES); textHasChanged = true; } protected function updateTextFieldType():void{ textField.type = (((enabled) && (_editable))) ? TextFieldType.INPUT : TextFieldType.DYNAMIC; textField.selectable = enabled; textField.wordWrap = _wordWrap; textField.multiline = true; } public function get selectionEndIndex():int{ return (textField.selectionEndIndex); } public function get editable():Boolean{ return (_editable); } override protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; setIMEMode(true); if (_arg1.target == this){ stage.focus = textField; }; _local2 = focusManager; if (_local2){ if (editable){ _local2.showFocusIndicator = true; }; _local2.defaultButtonEnabled = false; }; super.focusInHandler(_arg1); if (editable){ setIMEMode(true); }; } public function get wordWrap():Boolean{ return (_wordWrap); } public function get selectionBeginIndex():int{ return (textField.selectionBeginIndex); } public function get horizontalScrollBar():UIScrollBar{ return (_horizontalScrollBar); } public function set alwaysShowSelection(_arg1:Boolean):void{ textField.alwaysShowSelection = _arg1; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; mouseChildren = enabled; invalidate(InvalidationType.STATE); } protected function setEmbedFont(){ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } public function get horizontalScrollPosition():Number{ return (textField.scrollH); } public function set condenseWhite(_arg1:Boolean):void{ textField.condenseWhite = _arg1; invalidate(InvalidationType.DATA); } public function get horizontalScrollPolicy():String{ return (_horizontalScrollPolicy); } public function set displayAsPassword(_arg1:Boolean):void{ textField.displayAsPassword = _arg1; } public function get maxVerticalScrollPosition():int{ return (textField.maxScrollV); } public function set horizontalScrollPosition(_arg1:Number):void{ drawNow(); textField.scrollH = _arg1; } public function get textHeight():Number{ drawNow(); return (textField.textHeight); } public function get textWidth():Number{ drawNow(); return (textField.textWidth); } public function get restrict():String{ return (textField.restrict); } public function set editable(_arg1:Boolean):void{ _editable = _arg1; invalidate(InvalidationType.STATE); } protected function updateScrollBars(){ _horizontalScrollBar.update(); _verticalScrollBar.update(); _verticalScrollBar.enabled = enabled; _horizontalScrollBar.enabled = enabled; _horizontalScrollBar.drawNow(); _verticalScrollBar.drawNow(); } public function get maxChars():int{ return (textField.maxChars); } public function get length():Number{ return (textField.text.length); } public function set wordWrap(_arg1:Boolean):void{ _wordWrap = _arg1; invalidate(InvalidationType.STATE); } public function get verticalScrollPolicy():String{ return (_verticalScrollPolicy); } public function getLineMetrics(_arg1:int):TextLineMetrics{ return (textField.getLineMetrics(_arg1)); } public function get imeMode():String{ return (IME.conversionMode); } protected function handleScroll(_arg1:ScrollEvent):void{ dispatchEvent(_arg1); } override protected function focusOutHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; _local2 = focusManager; if (_local2){ _local2.defaultButtonEnabled = true; }; setSelection(0, 0); super.focusOutHandler(_arg1); if (editable){ setIMEMode(false); }; } protected function delayedLayoutUpdate(_arg1:Event):void{ if (textHasChanged){ textHasChanged = false; drawLayout(); return; }; removeEventListener(Event.ENTER_FRAME, delayedLayoutUpdate); } public function set htmlText(_arg1:String):void{ if (((componentInspectorSetting) && ((_arg1 == "")))){ return; }; if (_arg1 == ""){ text = ""; return; }; _html = true; _savedHTML = _arg1; textField.htmlText = _arg1; invalidate(InvalidationType.DATA); invalidate(InvalidationType.STYLES); textHasChanged = true; } public function get text():String{ return (textField.text); } public function get verticalScrollBar():UIScrollBar{ return (_verticalScrollBar); } override public function get enabled():Boolean{ return (super.enabled); } public function get condenseWhite():Boolean{ return (textField.condenseWhite); } public function set horizontalScrollPolicy(_arg1:String):void{ _horizontalScrollPolicy = _arg1; invalidate(InvalidationType.SIZE); } public function get displayAsPassword():Boolean{ return (textField.displayAsPassword); } override protected function draw():void{ if (isInvalid(InvalidationType.STATE)){ updateTextFieldType(); }; if (isInvalid(InvalidationType.STYLES)){ setStyles(); setEmbedFont(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawTextFormat(); drawBackground(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.DATA)){ drawLayout(); }; super.draw(); } protected function handleTextInput(_arg1:TextEvent):void{ _arg1.stopPropagation(); dispatchEvent(new TextEvent(TextEvent.TEXT_INPUT, true, false, _arg1.text)); } override protected function configUI():void{ super.configUI(); tabChildren = true; textField = new TextField(); addChild(textField); updateTextFieldType(); _verticalScrollBar = new UIScrollBar(); _verticalScrollBar.name = "V"; _verticalScrollBar.visible = false; _verticalScrollBar.focusEnabled = false; copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES); _verticalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true); addChild(_verticalScrollBar); _horizontalScrollBar = new UIScrollBar(); _horizontalScrollBar.name = "H"; _horizontalScrollBar.visible = false; _horizontalScrollBar.focusEnabled = false; _horizontalScrollBar.direction = ScrollBarDirection.HORIZONTAL; copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES); _horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true); addChild(_horizontalScrollBar); textField.addEventListener(TextEvent.TEXT_INPUT, handleTextInput, false, 0, true); textField.addEventListener(Event.CHANGE, handleChange, false, 0, true); textField.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown, false, 0, true); _horizontalScrollBar.scrollTarget = textField; _verticalScrollBar.scrollTarget = textField; addEventListener(MouseEvent.MOUSE_WHEEL, handleWheel, false, 0, true); } protected function setTextSize(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Number; var _local5:Number; _local4 = (_arg1 - (_arg3 * 2)); _local5 = (_arg2 - (_arg3 * 2)); if (_local4 != textField.width){ textField.width = _local4; }; if (_local5 != textField.height){ textField.height = _local5; }; } public function appendText(_arg1:String):void{ textField.appendText(_arg1); invalidate(InvalidationType.DATA); } protected function needVScroll():Boolean{ if (_verticalScrollPolicy == ScrollPolicy.OFF){ return (false); }; if (_verticalScrollPolicy == ScrollPolicy.ON){ return (true); }; return ((textField.maxScrollV > 1)); } public function setSelection(_arg1:int, _arg2:int):void{ textField.setSelection(_arg1, _arg2); } public function get alwaysShowSelection():Boolean{ return (textField.alwaysShowSelection); } public function get htmlText():String{ return (textField.htmlText); } public function set restrict(_arg1:String):void{ if (((componentInspectorSetting) && ((_arg1 == "")))){ _arg1 = null; }; textField.restrict = _arg1; } protected function drawBackground():void{ var _local1:DisplayObject; var _local2:String; _local1 = background; _local2 = (enabled) ? "upSkin" : "disabledSkin"; background = getDisplayObjectInstance(getStyleValue(_local2)); if (background != null){ addChildAt(background, 0); }; if (((((!((_local1 == null))) && (!((_local1 == background))))) && (contains(_local1)))){ removeChild(_local1); }; } public function set maxChars(_arg1:int):void{ textField.maxChars = _arg1; } public function get maxHorizontalScrollPosition():int{ return (textField.maxScrollH); } protected function drawLayout():void{ var _local1:Number; var _local2:Number; var _local3:Boolean; var _local4:Number; var _local5:Boolean; _local1 = Number(getStyleValue("textPadding")); textField.x = (textField.y = _local1); background.width = width; background.height = height; _local2 = height; _local3 = needVScroll(); _local4 = (width - (_local3) ? _verticalScrollBar.width : 0); _local5 = needHScroll(); if (_local5){ _local2 = (_local2 - _horizontalScrollBar.height); }; setTextSize(_local4, _local2, _local1); if (((((_local5) && (!(_local3)))) && (needVScroll()))){ _local3 = true; _local4 = (_local4 - _verticalScrollBar.width); setTextSize(_local4, _local2, _local1); }; if (_local3){ _verticalScrollBar.visible = true; _verticalScrollBar.x = (width - _verticalScrollBar.width); _verticalScrollBar.height = _local2; _verticalScrollBar.visible = true; _verticalScrollBar.enabled = enabled; } else { _verticalScrollBar.visible = false; }; if (_local5){ _horizontalScrollBar.visible = true; _horizontalScrollBar.y = (height - _horizontalScrollBar.height); _horizontalScrollBar.width = _local4; _horizontalScrollBar.visible = true; _horizontalScrollBar.enabled = enabled; } else { _horizontalScrollBar.visible = false; }; updateScrollBars(); addEventListener(Event.ENTER_FRAME, delayedLayoutUpdate, false, 0, true); } protected function setStyles():void{ copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES); copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES); } protected function needHScroll():Boolean{ if (_horizontalScrollPolicy == ScrollPolicy.OFF){ return (false); }; if (_horizontalScrollPolicy == ScrollPolicy.ON){ return (true); }; return ((textField.maxScrollH > 0)); } protected function drawTextFormat():void{ var _local1:Object; var _local2:TextFormat; var _local3:TextFormat; _local1 = UIComponent.getStyleDefinition(); _local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); _local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); if (_html){ textField.htmlText = _savedHTML; }; } public function set verticalScrollPolicy(_arg1:String):void{ _verticalScrollPolicy = _arg1; invalidate(InvalidationType.SIZE); } protected function handleChange(_arg1:Event):void{ _arg1.stopPropagation(); dispatchEvent(new Event(Event.CHANGE, true)); invalidate(InvalidationType.DATA); } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(defaultStyles, ScrollBar.getStyleDefinition())); } } }//package fl.controls
Section 20
//TextInput (fl.controls.TextInput) package fl.controls { import fl.core.*; import flash.display.*; import flash.events.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.ui.*; public class TextInput extends UIComponent implements IFocusManagerComponent { protected var _html:Boolean;// = false protected var _savedHTML:String; protected var background:DisplayObject; protected var _editable:Boolean;// = true public var textField:TextField; private static var defaultStyles:Object = {upSkin:"TextInput_upSkin", disabledSkin:"TextInput_disabledSkin", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, textPadding:0, embedFonts:false}; public static var createAccessibilityImplementation:Function; public function TextInput(){ _editable = true; _html = false; super(); } override public function drawFocus(_arg1:Boolean):void{ if (focusTarget != null){ focusTarget.drawFocus(_arg1); return; }; super.drawFocus(_arg1); } public function set imeMode(_arg1:String):void{ _imeMode = _arg1; } override protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((((_arg1 == textField)) || (super.isOurFocus(_arg1)))); } protected function handleKeyDown(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.ENTER){ dispatchEvent(new ComponentEvent(ComponentEvent.ENTER, true)); }; } public function set text(_arg1:String):void{ textField.text = _arg1; _html = false; invalidate(InvalidationType.DATA); invalidate(InvalidationType.STYLES); } protected function updateTextFieldType():void{ textField.type = (((enabled) && (editable))) ? TextFieldType.INPUT : TextFieldType.DYNAMIC; textField.selectable = enabled; } public function get selectionEndIndex():int{ return (textField.selectionEndIndex); } public function get editable():Boolean{ return (_editable); } override protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (_arg1.target == this){ stage.focus = textField; }; _local2 = focusManager; if (((editable) && (_local2))){ _local2.showFocusIndicator = true; if (((textField.selectable) && ((textField.selectionBeginIndex == textField.selectionBeginIndex)))){ setSelection(0, textField.length); }; }; super.focusInHandler(_arg1); if (editable){ setIMEMode(true); }; } public function get selectionBeginIndex():int{ return (textField.selectionBeginIndex); } public function set alwaysShowSelection(_arg1:Boolean):void{ textField.alwaysShowSelection = _arg1; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; updateTextFieldType(); } protected function setEmbedFont(){ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } public function get horizontalScrollPosition():int{ return (textField.scrollH); } public function set condenseWhite(_arg1:Boolean):void{ textField.condenseWhite = _arg1; } public function set displayAsPassword(_arg1:Boolean):void{ textField.displayAsPassword = _arg1; } public function set horizontalScrollPosition(_arg1:int):void{ textField.scrollH = _arg1; } public function get restrict():String{ return (textField.restrict); } public function get textWidth():Number{ return (textField.textWidth); } public function get textHeight():Number{ return (textField.textHeight); } public function set editable(_arg1:Boolean):void{ _editable = _arg1; updateTextFieldType(); } public function get maxChars():int{ return (textField.maxChars); } public function get length():int{ return (textField.length); } public function getLineMetrics(_arg1:int):TextLineMetrics{ return (textField.getLineMetrics(_arg1)); } public function get imeMode():String{ return (_imeMode); } override protected function focusOutHandler(_arg1:FocusEvent):void{ super.focusOutHandler(_arg1); if (editable){ setIMEMode(false); }; } public function set htmlText(_arg1:String):void{ if (_arg1 == ""){ text = ""; return; }; _html = true; _savedHTML = _arg1; textField.htmlText = _arg1; invalidate(InvalidationType.DATA); invalidate(InvalidationType.STYLES); } public function get text():String{ return (textField.text); } override public function get enabled():Boolean{ return (super.enabled); } public function get condenseWhite():Boolean{ return (textField.condenseWhite); } public function get alwaysShowSelection():Boolean{ return (textField.alwaysShowSelection); } override protected function draw():void{ var _local1:Object; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawTextFormat(); drawBackground(); _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function handleTextInput(_arg1:TextEvent):void{ _arg1.stopPropagation(); dispatchEvent(new TextEvent(TextEvent.TEXT_INPUT, true, false, _arg1.text)); } override protected function configUI():void{ super.configUI(); tabChildren = true; textField = new TextField(); addChild(textField); updateTextFieldType(); textField.addEventListener(TextEvent.TEXT_INPUT, handleTextInput, false, 0, true); textField.addEventListener(Event.CHANGE, handleChange, false, 0, true); textField.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown, false, 0, true); } public function setSelection(_arg1:int, _arg2:int):void{ textField.setSelection(_arg1, _arg2); } public function get displayAsPassword():Boolean{ return (textField.displayAsPassword); } public function appendText(_arg1:String):void{ textField.appendText(_arg1); } public function set restrict(_arg1:String):void{ if (((componentInspectorSetting) && ((_arg1 == "")))){ _arg1 = null; }; textField.restrict = _arg1; } public function get htmlText():String{ return (textField.htmlText); } protected function drawBackground():void{ var _local1:DisplayObject; var _local2:String; _local1 = background; _local2 = (enabled) ? "upSkin" : "disabledSkin"; background = getDisplayObjectInstance(getStyleValue(_local2)); if (background == null){ return; }; addChildAt(background, 0); if (((((!((_local1 == null))) && (!((_local1 == background))))) && (contains(_local1)))){ removeChild(_local1); }; } override public function setFocus():void{ stage.focus = textField; } protected function drawLayout():void{ var _local1:Number; _local1 = Number(getStyleValue("textPadding")); if (background != null){ background.width = width; background.height = height; }; textField.width = (width - (2 * _local1)); textField.height = (height - (2 * _local1)); textField.x = (textField.y = _local1); } public function set maxChars(_arg1:int):void{ textField.maxChars = _arg1; } public function get maxHorizontalScrollPosition():int{ return (textField.maxScrollH); } protected function drawTextFormat():void{ var _local1:Object; var _local2:TextFormat; var _local3:TextFormat; _local1 = UIComponent.getStyleDefinition(); _local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); _local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); if (_html){ textField.htmlText = _savedHTML; }; } protected function handleChange(_arg1:Event):void{ _arg1.stopPropagation(); dispatchEvent(new Event(Event.CHANGE, true)); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 21
//UIScrollBar (fl.controls.UIScrollBar) package fl.controls { import fl.core.*; import flash.events.*; import fl.events.*; import flash.text.*; public class UIScrollBar extends ScrollBar { protected var inScroll:Boolean;// = false protected var _scrollTarget:TextField; protected var inEdit:Boolean;// = false private static var defaultStyles:Object = {}; public function UIScrollBar(){ inEdit = false; inScroll = false; super(); } protected function handleTargetScroll(_arg1:Event):void{ if (inDrag){ return; }; if (!enabled){ return; }; inEdit = true; updateScrollTargetProperties(); scrollPosition = ((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV; inEdit = false; } override public function set minScrollPosition(_arg1:Number):void{ super.minScrollPosition = ((_arg1)<0) ? 0 : _arg1; } override public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ super.setScrollPosition(_arg1, _arg2); if (!_scrollTarget){ inScroll = false; return; }; updateTargetScroll(); } override public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ var _local5:Number; var _local6:Number; _local5 = _arg3; _local6 = ((_arg2)<0) ? 0 : _arg2; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local5 = ((_arg3)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local5; } else { _local5 = ((_arg3)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local5; }; }; super.setScrollProperties(_arg1, _local6, _local5, _arg4); } public function get scrollTargetName():String{ return (_scrollTarget.name); } public function get scrollTarget():TextField{ return (_scrollTarget); } protected function updateScrollTargetProperties():void{ var _local1:Boolean; var _local2:Number; if (_scrollTarget == null){ setScrollProperties(pageSize, minScrollPosition, maxScrollPosition, pageScrollSize); scrollPosition = 0; } else { _local1 = (direction == ScrollBarDirection.HORIZONTAL); _local2 = (_local1) ? _scrollTarget.width : 10; setScrollProperties(_local2, (_local1) ? 0 : 1, (_local1) ? _scrollTarget.maxScrollH : _scrollTarget.maxScrollV, pageScrollSize); scrollPosition = (_local1) ? _scrollTarget.scrollH : _scrollTarget.scrollV; }; } public function update():void{ inEdit = true; updateScrollTargetProperties(); inEdit = false; } public function set scrollTargetName(_arg1:String):void{ var target = _arg1; try { scrollTarget = (parent.getChildByName(target) as TextField); } catch(error:Error) { throw (new Error("ScrollTarget not found, or is not a TextField")); }; } override public function set direction(_arg1:String):void{ if (isLivePreview){ return; }; super.direction = _arg1; updateScrollTargetProperties(); } protected function handleTargetChange(_arg1:Event):void{ inEdit = true; setScrollPosition(((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV, true); updateScrollTargetProperties(); inEdit = false; } override public function set maxScrollPosition(_arg1:Number):void{ var _local2:Number; _local2 = _arg1; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local2 = ((_local2)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local2; } else { _local2 = ((_local2)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local2; }; }; super.maxScrollPosition = _local2; } protected function updateTargetScroll(_arg1:ScrollEvent=null):void{ if (inEdit){ return; }; if (direction == ScrollBarDirection.HORIZONTAL){ _scrollTarget.scrollH = scrollPosition; } else { _scrollTarget.scrollV = scrollPosition; }; } override protected function draw():void{ if (isInvalid(InvalidationType.DATA)){ updateScrollTargetProperties(); }; super.draw(); } public function set scrollTarget(_arg1:TextField):void{ if (_scrollTarget != null){ _scrollTarget.removeEventListener(Event.CHANGE, handleTargetChange, false); _scrollTarget.removeEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false); _scrollTarget.removeEventListener(Event.SCROLL, handleTargetScroll, false); removeEventListener(ScrollEvent.SCROLL, updateTargetScroll, false); }; _scrollTarget = _arg1; if (_scrollTarget != null){ _scrollTarget.addEventListener(Event.CHANGE, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(Event.SCROLL, handleTargetScroll, false, 0, true); addEventListener(ScrollEvent.SCROLL, updateTargetScroll, false, 0, true); }; invalidate(InvalidationType.DATA); } override public function get direction():String{ return (super.direction); } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(defaultStyles, ScrollBar.getStyleDefinition())); } } }//package fl.controls
Section 22
//ComponentShim (fl.core.ComponentShim) package fl.core { import flash.display.*; public dynamic class ComponentShim extends MovieClip { } }//package fl.core
Section 23
//InvalidationType (fl.core.InvalidationType) package fl.core { public class InvalidationType { public static const SIZE:String = "size"; public static const ALL:String = "all"; public static const DATA:String = "data"; public static const SCROLL:String = "scroll"; public static const STATE:String = "state"; public static const STYLES:String = "styles"; public static const SELECTED:String = "selected"; public static const RENDERER_STYLES:String = "rendererStyles"; } }//package fl.core
Section 24
//UIComponent (fl.core.UIComponent) package fl.core { import flash.display.*; import flash.events.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.utils.*; import flash.system.*; public class UIComponent extends Sprite { protected var _enabled:Boolean;// = true private var _mouseFocusEnabled:Boolean;// = true protected var startHeight:Number; protected var _height:Number; protected var _oldIMEMode:String;// = null protected var startWidth:Number; public var focusTarget:IFocusManagerComponent; protected var errorCaught:Boolean;// = false protected var uiFocusRect:DisplayObject; protected var _width:Number; public var version:String;// = "3.0.0.15" protected var isFocused:Boolean;// = false protected var callLaterMethods:Dictionary; private var _focusEnabled:Boolean;// = true private var tempText:TextField; protected var invalidateFlag:Boolean;// = false protected var _inspector:Boolean;// = false protected var sharedStyles:Object; protected var invalidHash:Object; protected var isLivePreview:Boolean;// = false protected var _imeMode:String;// = null protected var instanceStyles:Object; protected var _x:Number; protected var _y:Number; public static var inCallLaterPhase:Boolean = false; private static var defaultStyles:Object = {focusRectSkin:"focusRectSkin", focusRectPadding:2, textFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), disabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultTextFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultDisabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0)}; public static var createAccessibilityImplementation:Function; private static var focusManagers:Dictionary = new Dictionary(false); public function UIComponent(){ version = "3.0.0.15"; isLivePreview = false; invalidateFlag = false; _enabled = true; isFocused = false; _focusEnabled = true; _mouseFocusEnabled = true; _imeMode = null; _oldIMEMode = null; errorCaught = false; _inspector = false; super(); instanceStyles = {}; sharedStyles = {}; invalidHash = {}; callLaterMethods = new Dictionary(); StyleManager.registerInstance(this); configUI(); invalidate(InvalidationType.ALL); tabEnabled = (this is IFocusManagerComponent); focusRect = false; if (tabEnabled){ addEventListener(FocusEvent.FOCUS_IN, focusInHandler); addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler); addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); }; initializeFocusManager(); addEventListener(Event.ENTER_FRAME, hookAccessibility, false, 0, true); } public function drawFocus(_arg1:Boolean):void{ var _local2:Number; isFocused = _arg1; if (((!((uiFocusRect == null))) && (contains(uiFocusRect)))){ removeChild(uiFocusRect); uiFocusRect = null; }; if (_arg1){ uiFocusRect = (getDisplayObjectInstance(getStyleValue("focusRectSkin")) as Sprite); if (uiFocusRect == null){ return; }; _local2 = Number(getStyleValue("focusRectPadding")); uiFocusRect.x = -(_local2); uiFocusRect.y = -(_local2); uiFocusRect.width = (width + (_local2 * 2)); uiFocusRect.height = (height + (_local2 * 2)); addChildAt(uiFocusRect, 0); }; } private function callLaterDispatcher(_arg1:Event):void{ var _local2:Dictionary; var _local3:Object; if (_arg1.type == Event.ADDED_TO_STAGE){ removeEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher); stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); return; }; _arg1.target.removeEventListener(Event.RENDER, callLaterDispatcher); if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); return; }; inCallLaterPhase = true; _local2 = callLaterMethods; for (_local3 in _local2) { _local3(); delete _local2[_local3]; }; inCallLaterPhase = false; } private function addedHandler(_arg1:Event):void{ removeEventListener("addedToStage", addedHandler); initializeFocusManager(); } protected function getStyleValue(_arg1:String):Object{ return (((instanceStyles[_arg1])==null) ? sharedStyles[_arg1] : instanceStyles[_arg1]); } protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((_arg1 == this)); } override public function get scaleX():Number{ return ((width / startWidth)); } override public function get scaleY():Number{ return ((height / startHeight)); } override public function set height(_arg1:Number):void{ if (_height == _arg1){ return; }; setSize(width, _arg1); } protected function keyDownHandler(_arg1:KeyboardEvent):void{ } protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (isOurFocus((_arg1.target as DisplayObject))){ _local2 = focusManager; if (((_local2) && (_local2.showFocusIndicator))){ drawFocus(true); isFocused = true; }; }; } public function setStyle(_arg1:String, _arg2:Object):void{ if ((((instanceStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; instanceStyles[_arg1] = _arg2; invalidate(InvalidationType.STYLES); } override public function get visible():Boolean{ return (super.visible); } public function get componentInspectorSetting():Boolean{ return (_inspector); } override public function get x():Number{ return ((isNaN(_x)) ? super.x : _x); } override public function get y():Number{ return ((isNaN(_y)) ? super.y : _y); } protected function setIMEMode(_arg1:Boolean){ var enabled = _arg1; if (_imeMode != null){ if (enabled){ IME.enabled = true; _oldIMEMode = IME.conversionMode; try { if (((!(errorCaught)) && (!((IME.conversionMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _imeMode; }; errorCaught = false; } catch(e:Error) { errorCaught = true; throw (new Error(("IME mode not supported: " + _imeMode))); }; } else { if (((!((IME.conversionMode == IMEConversionMode.UNKNOWN))) && (!((_oldIMEMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _oldIMEMode; }; IME.enabled = false; }; }; } public function set enabled(_arg1:Boolean):void{ if (_arg1 == _enabled){ return; }; _enabled = _arg1; invalidate(InvalidationType.STATE); } public function setSharedStyle(_arg1:String, _arg2:Object):void{ if ((((sharedStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; sharedStyles[_arg1] = _arg2; if (instanceStyles[_arg1] == null){ invalidate(InvalidationType.STYLES); }; } protected function keyUpHandler(_arg1:KeyboardEvent):void{ } public function set focusEnabled(_arg1:Boolean):void{ _focusEnabled = _arg1; } override public function set scaleX(_arg1:Number):void{ setSize((startWidth * _arg1), height); } public function get mouseFocusEnabled():Boolean{ return (_mouseFocusEnabled); } override public function set scaleY(_arg1:Number):void{ setSize(width, (startHeight * _arg1)); } protected function getDisplayObjectInstance(_arg1:Object):DisplayObject{ var classDef:Object; var skin = _arg1; classDef = null; if ((skin is Class)){ return ((new (skin) as DisplayObject)); }; if ((skin is DisplayObject)){ (skin as DisplayObject).x = 0; (skin as DisplayObject).y = 0; return ((skin as DisplayObject)); }; try { classDef = getDefinitionByName(skin.toString()); } catch(e:Error) { try { classDef = (loaderInfo.applicationDomain.getDefinition(skin.toString()) as Object); } catch(e:Error) { }; }; if (classDef == null){ return (null); }; return ((new (classDef) as DisplayObject)); } protected function copyStylesToChild(_arg1:UIComponent, _arg2:Object):void{ var _local3:String; for (_local3 in _arg2) { _arg1.setStyle(_local3, getStyleValue(_arg2[_local3])); }; } protected function beforeComponentParameters():void{ } protected function callLater(_arg1:Function):void{ if (inCallLaterPhase){ return; }; callLaterMethods[_arg1] = true; if (stage != null){ stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); } else { addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); }; } protected function createFocusManager():void{ if (focusManagers[stage] == null){ focusManagers[stage] = new FocusManager(stage); }; } override public function set visible(_arg1:Boolean):void{ var _local2:String; if (super.visible == _arg1){ return; }; super.visible = _arg1; _local2 = (_arg1) ? ComponentEvent.SHOW : ComponentEvent.HIDE; dispatchEvent(new ComponentEvent(_local2, true)); } protected function hookAccessibility(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, hookAccessibility); initializeAccessibility(); } public function set componentInspectorSetting(_arg1:Boolean):void{ _inspector = _arg1; if (_inspector){ beforeComponentParameters(); } else { afterComponentParameters(); }; } override public function set x(_arg1:Number):void{ move(_arg1, _y); } public function drawNow():void{ draw(); } override public function set y(_arg1:Number):void{ move(_x, _arg1); } protected function checkLivePreview():Boolean{ var className:String; if (parent == null){ return (false); }; try { className = getQualifiedClassName(parent); } catch(e:Error) { }; return ((className == "fl.livepreview::LivePreviewParent")); } protected function focusOutHandler(_arg1:FocusEvent):void{ if (isOurFocus((_arg1.target as DisplayObject))){ drawFocus(false); isFocused = false; }; } public function set mouseFocusEnabled(_arg1:Boolean):void{ _mouseFocusEnabled = _arg1; } public function getFocus():InteractiveObject{ if (stage){ return (stage.focus); }; return (null); } protected function validate():void{ invalidHash = {}; } override public function get height():Number{ return (_height); } public function invalidate(_arg1:String="all", _arg2:Boolean=true):void{ invalidHash[_arg1] = true; if (_arg2){ this.callLater(draw); }; } public function get enabled():Boolean{ return (_enabled); } protected function getScaleX():Number{ return (super.scaleX); } protected function getScaleY():Number{ return (super.scaleY); } public function get focusEnabled():Boolean{ return (_focusEnabled); } protected function afterComponentParameters():void{ } protected function draw():void{ if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } protected function configUI():void{ var _local1:Number; var _local2:Number; var _local3:Number; isLivePreview = checkLivePreview(); _local1 = rotation; rotation = 0; _local2 = super.width; _local3 = super.height; var _local4 = 1; super.scaleY = _local4; super.scaleX = _local4; setSize(_local2, _local3); move(super.x, super.y); rotation = _local1; startWidth = _local2; startHeight = _local3; if (numChildren > 0){ removeChildAt(0); }; } protected function setScaleX(_arg1:Number):void{ super.scaleX = _arg1; } protected function setScaleY(_arg1:Number):void{ super.scaleY = _arg1; } private function initializeFocusManager():void{ if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, addedHandler, false, 0, true); } else { createFocusManager(); }; } public function set focusManager(_arg1:IFocusManager):void{ UIComponent.focusManagers[this] = _arg1; } public function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } protected function isInvalid(_arg1:String, ... _args):Boolean{ if (((invalidHash[_arg1]) || (invalidHash[InvalidationType.ALL]))){ return (true); }; while (_args.length > 0) { if (invalidHash[_args.pop()]){ return (true); }; }; return (false); } public function setSize(_arg1:Number, _arg2:Number):void{ _width = _arg1; _height = _arg2; invalidate(InvalidationType.SIZE); dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, false)); } override public function set width(_arg1:Number):void{ if (_width == _arg1){ return; }; setSize(_arg1, height); } public function setFocus():void{ if (stage){ stage.focus = this; }; } protected function initializeAccessibility():void{ if (UIComponent.createAccessibilityImplementation != null){ UIComponent.createAccessibilityImplementation(this); }; } public function get focusManager():IFocusManager{ var _local1:DisplayObject; _local1 = this; while (_local1) { if (UIComponent.focusManagers[_local1] != null){ return (IFocusManager(UIComponent.focusManagers[_local1])); }; _local1 = _local1.parent; }; return (null); } override public function get width():Number{ return (_width); } public function move(_arg1:Number, _arg2:Number):void{ _x = _arg1; _y = _arg2; super.x = Math.round(_arg1); super.y = Math.round(_arg2); dispatchEvent(new ComponentEvent(ComponentEvent.MOVE)); } public function validateNow():void{ invalidate(InvalidationType.ALL, false); draw(); } public function getStyle(_arg1:String):Object{ return (instanceStyles[_arg1]); } public static function getStyleDefinition():Object{ return (defaultStyles); } public static function mergeStyles(... _args):Object{ var _local2:Object; var _local3:uint; var _local4:uint; var _local5:Object; var _local6:String; _local2 = {}; _local3 = _args.length; _local4 = 0; while (_local4 < _local3) { _local5 = _args[_local4]; for (_local6 in _local5) { if (_local2[_local6] != null){ } else { _local2[_local6] = _args[_local4][_local6]; }; }; _local4++; }; return (_local2); } } }//package fl.core
Section 25
//DataProvider (fl.data.DataProvider) package fl.data { import flash.events.*; import fl.events.*; public class DataProvider extends EventDispatcher { protected var data:Array; public function DataProvider(_arg1:Object=null){ if (_arg1 == null){ data = []; } else { data = getDataFromObject(_arg1); }; } protected function dispatchPreChangeEvent(_arg1:String, _arg2:Array, _arg3:int, _arg4:int):void{ dispatchEvent(new DataChangeEvent(DataChangeEvent.PRE_DATA_CHANGE, _arg1, _arg2, _arg3, _arg4)); } public function invalidateItemAt(_arg1:int):void{ checkIndex(_arg1, (data.length - 1)); dispatchChangeEvent(DataChangeType.INVALIDATE, [data[_arg1]], _arg1, _arg1); } public function getItemIndex(_arg1:Object):int{ return (data.indexOf(_arg1)); } protected function getDataFromObject(_arg1:Object):Array{ var _local2:Array; var _local3:Array; var _local4:uint; var _local5:Object; var _local6:XML; var _local7:XMLList; var _local8:XML; var _local9:XMLList; var _local10:XML; var _local11:XMLList; var _local12:XML; if ((_arg1 is Array)){ _local3 = (_arg1 as Array); if (_local3.length > 0){ if ((((_local3[0] is String)) || ((_local3[0] is Number)))){ _local2 = []; _local4 = 0; while (_local4 < _local3.length) { _local5 = {label:String(_local3[_local4]), data:_local3[_local4]}; _local2.push(_local5); _local4++; }; return (_local2); }; }; return (_arg1.concat()); //unresolved jump }; if ((_arg1 is DataProvider)){ return (_arg1.toArray()); }; if ((_arg1 is XML)){ _local6 = (_arg1 as XML); _local2 = []; _local7 = _local6.*; for each (_local8 in _local7) { _arg1 = {}; _local9 = _local8.attributes(); for each (_local10 in _local9) { _arg1[_local10.localName()] = _local10.toString(); }; _local11 = _local8.*; for each (_local12 in _local11) { if (_local12.hasSimpleContent()){ _arg1[_local12.localName()] = _local12.toString(); }; }; _local2.push(_arg1); }; return (_local2); //unresolved jump }; throw (new TypeError((("Error: Type Coercion failed: cannot convert " + _arg1) + " to Array or DataProvider."))); } public function removeItemAt(_arg1:uint):Object{ var _local2:Array; checkIndex(_arg1, (data.length - 1)); dispatchPreChangeEvent(DataChangeType.REMOVE, data.slice(_arg1, (_arg1 + 1)), _arg1, _arg1); _local2 = data.splice(_arg1, 1); dispatchChangeEvent(DataChangeType.REMOVE, _local2, _arg1, _arg1); return (_local2[0]); } public function addItem(_arg1:Object):void{ dispatchPreChangeEvent(DataChangeType.ADD, [_arg1], (data.length - 1), (data.length - 1)); data.push(_arg1); dispatchChangeEvent(DataChangeType.ADD, [_arg1], (data.length - 1), (data.length - 1)); } public function sortOn(_arg1:Object, _arg2:Object=null){ var _local3:Array; dispatchPreChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); _local3 = data.sortOn(_arg1, _arg2); dispatchChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); return (_local3); } public function sort(... _args){ var _local2:Array; dispatchPreChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); _local2 = data.sort.apply(data, _args); dispatchChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); return (_local2); } public function addItems(_arg1:Object):void{ addItemsAt(_arg1, data.length); } public function concat(_arg1:Object):void{ addItems(_arg1); } public function clone():DataProvider{ return (new DataProvider(data)); } public function toArray():Array{ return (data.concat()); } public function get length():uint{ return (data.length); } public function addItemAt(_arg1:Object, _arg2:uint):void{ checkIndex(_arg2, data.length); dispatchPreChangeEvent(DataChangeType.ADD, [_arg1], _arg2, _arg2); data.splice(_arg2, 0, _arg1); dispatchChangeEvent(DataChangeType.ADD, [_arg1], _arg2, _arg2); } public function getItemAt(_arg1:uint):Object{ checkIndex(_arg1, (data.length - 1)); return (data[_arg1]); } override public function toString():String{ return ((("DataProvider [" + data.join(" , ")) + "]")); } public function invalidateItem(_arg1:Object):void{ var _local2:uint; _local2 = getItemIndex(_arg1); if (_local2 == -1){ return; }; invalidateItemAt(_local2); } protected function dispatchChangeEvent(_arg1:String, _arg2:Array, _arg3:int, _arg4:int):void{ dispatchEvent(new DataChangeEvent(DataChangeEvent.DATA_CHANGE, _arg1, _arg2, _arg3, _arg4)); } protected function checkIndex(_arg1:int, _arg2:int):void{ if ((((_arg1 > _arg2)) || ((_arg1 < 0)))){ throw (new RangeError((((("DataProvider index (" + _arg1) + ") is not in acceptable range (0 - ") + _arg2) + ")"))); }; } public function addItemsAt(_arg1:Object, _arg2:uint):void{ var _local3:Array; checkIndex(_arg2, data.length); _local3 = getDataFromObject(_arg1); dispatchPreChangeEvent(DataChangeType.ADD, _local3, _arg2, ((_arg2 + _local3.length) - 1)); data.splice.apply(data, [_arg2, 0].concat(_local3)); dispatchChangeEvent(DataChangeType.ADD, _local3, _arg2, ((_arg2 + _local3.length) - 1)); } public function replaceItem(_arg1:Object, _arg2:Object):Object{ var _local3:int; _local3 = getItemIndex(_arg2); if (_local3 != -1){ return (replaceItemAt(_arg1, _local3)); }; return (null); } public function removeItem(_arg1:Object):Object{ var _local2:int; _local2 = getItemIndex(_arg1); if (_local2 != -1){ return (removeItemAt(_local2)); }; return (null); } public function merge(_arg1:Object):void{ var _local2:Array; var _local3:uint; var _local4:uint; var _local5:uint; var _local6:Object; _local2 = getDataFromObject(_arg1); _local3 = _local2.length; _local4 = data.length; dispatchPreChangeEvent(DataChangeType.ADD, data.slice(_local4, data.length), _local4, (this.data.length - 1)); _local5 = 0; while (_local5 < _local3) { _local6 = _local2[_local5]; if (getItemIndex(_local6) == -1){ data.push(_local6); }; _local5++; }; if (data.length > _local4){ dispatchChangeEvent(DataChangeType.ADD, data.slice(_local4, data.length), _local4, (this.data.length - 1)); } else { dispatchChangeEvent(DataChangeType.ADD, [], -1, -1); }; } public function replaceItemAt(_arg1:Object, _arg2:uint):Object{ var _local3:Array; checkIndex(_arg2, (data.length - 1)); _local3 = [data[_arg2]]; dispatchPreChangeEvent(DataChangeType.REPLACE, _local3, _arg2, _arg2); data[_arg2] = _arg1; dispatchChangeEvent(DataChangeType.REPLACE, _local3, _arg2, _arg2); return (_local3[0]); } public function invalidate():void{ dispatchEvent(new DataChangeEvent(DataChangeEvent.DATA_CHANGE, DataChangeType.INVALIDATE_ALL, data.concat(), 0, data.length)); } public function removeAll():void{ var _local1:Array; _local1 = data.concat(); dispatchPreChangeEvent(DataChangeType.REMOVE_ALL, _local1, 0, _local1.length); data = []; dispatchChangeEvent(DataChangeType.REMOVE_ALL, _local1, 0, _local1.length); } } }//package fl.data
Section 26
//SimpleCollectionItem (fl.data.SimpleCollectionItem) package fl.data { public dynamic class SimpleCollectionItem { public var label:String; public var data:String; public function toString():String{ return ((((("[SimpleCollectionItem: " + label) + ",") + data) + "]")); } } }//package fl.data
Section 27
//ComponentEvent (fl.events.ComponentEvent) package fl.events { import flash.events.*; public class ComponentEvent extends Event { public static const HIDE:String = "hide"; public static const BUTTON_DOWN:String = "buttonDown"; public static const MOVE:String = "move"; public static const RESIZE:String = "resize"; public static const ENTER:String = "enter"; public static const LABEL_CHANGE:String = "labelChange"; public static const SHOW:String = "show"; public function ComponentEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function toString():String{ return (formatToString("ComponentEvent", "type", "bubbles", "cancelable")); } override public function clone():Event{ return (new ComponentEvent(type, bubbles, cancelable)); } } }//package fl.events
Section 28
//DataChangeEvent (fl.events.DataChangeEvent) package fl.events { import flash.events.*; public class DataChangeEvent extends Event { protected var _items:Array; protected var _endIndex:uint; protected var _changeType:String; protected var _startIndex:uint; public static const PRE_DATA_CHANGE:String = "preDataChange"; public static const DATA_CHANGE:String = "dataChange"; public function DataChangeEvent(_arg1:String, _arg2:String, _arg3:Array, _arg4:int=-1, _arg5:int=-1):void{ super(_arg1); _changeType = _arg2; _startIndex = _arg4; _items = _arg3; _endIndex = ((_arg5)==-1) ? _startIndex : _arg5; } public function get changeType():String{ return (_changeType); } public function get startIndex():uint{ return (_startIndex); } public function get items():Array{ return (_items); } override public function clone():Event{ return (new DataChangeEvent(type, _changeType, _items, _startIndex, _endIndex)); } override public function toString():String{ return (formatToString("DataChangeEvent", "type", "changeType", "startIndex", "endIndex", "bubbles", "cancelable")); } public function get endIndex():uint{ return (_endIndex); } } }//package fl.events
Section 29
//DataChangeType (fl.events.DataChangeType) package fl.events { public class DataChangeType { public static const ADD:String = "add"; public static const REMOVE:String = "remove"; public static const REMOVE_ALL:String = "removeAll"; public static const CHANGE:String = "change"; public static const REPLACE:String = "replace"; public static const INVALIDATE:String = "invalidate"; public static const INVALIDATE_ALL:String = "invalidateAll"; public static const SORT:String = "sort"; } }//package fl.events
Section 30
//DataGridEvent (fl.events.DataGridEvent) package fl.events { import flash.events.*; public class DataGridEvent extends ListEvent { protected var _itemRenderer:Object; protected var _reason:String; protected var _dataField:String; public static const ITEM_EDIT_BEGIN:String = "itemEditBegin"; public static const ITEM_EDIT_END:String = "itemEditEnd"; public static const ITEM_EDIT_BEGINNING:String = "itemEditBeginning"; public static const HEADER_RELEASE:String = "headerRelease"; public static const ITEM_FOCUS_IN:String = "itemFocusIn"; public static const ITEM_FOCUS_OUT:String = "itemFocusOut"; public static const COLUMN_STRETCH:String = "columnStretch"; public function DataGridEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:int=-1, _arg5:int=-1, _arg6:Object=null, _arg7:String=null, _arg8:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); _itemRenderer = _arg6; _dataField = _arg7; _reason = _arg8; } public function get reason():String{ return (_reason); } public function set dataField(_arg1:String):void{ _dataField = _arg1; } override public function toString():String{ return (formatToString("DataGridEvent", "type", "bubbles", "cancelable", "columnIndex", "rowIndex", "itemRenderer", "dataField", "reason")); } public function get dataField():String{ return (_dataField); } override public function clone():Event{ return (new DataGridEvent(type, bubbles, cancelable, columnIndex, int(rowIndex), _itemRenderer, _dataField, _reason)); } public function get itemRenderer():Object{ return (_itemRenderer); } } }//package fl.events
Section 31
//DataGridEventReason (fl.events.DataGridEventReason) package fl.events { public final class DataGridEventReason { public static const OTHER:String = "other"; public static const CANCELLED:String = "cancelled"; public static const NEW_COLUMN:String = "newColumn"; public static const NEW_ROW:String = "newRow"; } }//package fl.events
Section 32
//ListEvent (fl.events.ListEvent) package fl.events { import flash.events.*; public class ListEvent extends Event { protected var _index:int; protected var _item:Object; protected var _columnIndex:int; protected var _rowIndex:int; public static const ITEM_DOUBLE_CLICK:String = "itemDoubleClick"; public static const ITEM_ROLL_OUT:String = "itemRollOut"; public static const ITEM_ROLL_OVER:String = "itemRollOver"; public static const ITEM_CLICK:String = "itemClick"; public function ListEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:int=-1, _arg5:int=-1, _arg6:int=-1, _arg7:Object=null){ super(_arg1, _arg2, _arg3); _rowIndex = _arg5; _columnIndex = _arg4; _index = _arg6; _item = _arg7; } public function get rowIndex():Object{ return (_rowIndex); } public function get index():int{ return (_index); } public function get item():Object{ return (_item); } public function get columnIndex():int{ return (_columnIndex); } override public function clone():Event{ return (new ListEvent(type, bubbles, cancelable, _columnIndex, _rowIndex)); } override public function toString():String{ return (formatToString("ListEvent", "type", "bubbles", "cancelable", "columnIndex", "rowIndex", "index", "item")); } } }//package fl.events
Section 33
//ScrollEvent (fl.events.ScrollEvent) package fl.events { import flash.events.*; public class ScrollEvent extends Event { private var _position:Number; private var _direction:String; private var _delta:Number; public static const SCROLL:String = "scroll"; public function ScrollEvent(_arg1:String, _arg2:Number, _arg3:Number){ super(ScrollEvent.SCROLL, false, false); _direction = _arg1; _delta = _arg2; _position = _arg3; } override public function clone():Event{ return (new ScrollEvent(_direction, _delta, _position)); } public function get position():Number{ return (_position); } override public function toString():String{ return (formatToString("ScrollEvent", "type", "bubbles", "cancelable", "direction", "delta", "position")); } public function get delta():Number{ return (_delta); } public function get direction():String{ return (_direction); } } }//package fl.events
Section 34
//FocusManager (fl.managers.FocusManager) package fl.managers { import fl.core.*; import fl.controls.*; import flash.display.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.ui.*; public class FocusManager implements IFocusManager { private var focusableObjects:Dictionary; private var _showFocusIndicator:Boolean;// = true private var defButton:Button; private var focusableCandidates:Array; private var _form:DisplayObjectContainer; private var _defaultButtonEnabled:Boolean;// = true private var activated:Boolean;// = false private var _defaultButton:Button; private var calculateCandidates:Boolean;// = true private var lastFocus:InteractiveObject; private var lastAction:String; public function FocusManager(_arg1:DisplayObjectContainer){ activated = false; calculateCandidates = true; _showFocusIndicator = true; _defaultButtonEnabled = true; super(); focusableObjects = new Dictionary(true); if (_arg1 != null){ _form = _arg1; addFocusables(DisplayObject(_arg1)); _arg1.addEventListener(Event.ADDED, addedHandler); _arg1.addEventListener(Event.REMOVED, removedHandler); activate(); }; } public function get showFocusIndicator():Boolean{ return (_showFocusIndicator); } private function getIndexOfNextObject(_arg1:int, _arg2:Boolean, _arg3:Boolean, _arg4:String):int{ var _local5:int; var _local6:int; var _local7:DisplayObject; var _local8:IFocusManagerGroup; var _local9:int; var _local10:DisplayObject; var _local11:IFocusManagerGroup; _local5 = focusableCandidates.length; _local6 = _arg1; while (true) { if (_arg2){ _arg1--; } else { _arg1++; }; if (_arg3){ if (((_arg2) && ((_arg1 < 0)))){ break; }; if (((!(_arg2)) && ((_arg1 == _local5)))){ break; }; } else { _arg1 = ((_arg1 + _local5) % _local5); if (_local6 == _arg1){ break; }; }; if (isValidFocusCandidate(focusableCandidates[_arg1], _arg4)){ _local7 = DisplayObject(findFocusManagerComponent(focusableCandidates[_arg1])); if ((_local7 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local7); _local9 = 0; while (_local9 < focusableCandidates.length) { _local10 = focusableCandidates[_local9]; if ((_local10 is IFocusManagerGroup)){ _local11 = IFocusManagerGroup(_local10); if ((((_local11.groupName == _local8.groupName)) && (_local11.selected))){ _arg1 = _local9; break; }; }; _local9++; }; }; return (_arg1); }; }; return (_arg1); } public function set form(_arg1:DisplayObjectContainer):void{ _form = _arg1; } private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{ var focusable:IFocusManagerComponent; var io:InteractiveObject; var doc:DisplayObjectContainer; var i:int; var child:DisplayObject; var o = _arg1; var skipTopLevel = _arg2; if (!skipTopLevel){ if ((o is IFocusManagerComponent)){ focusable = IFocusManagerComponent(o); if (focusable.focusEnabled){ if (((focusable.tabEnabled) && (isTabVisible(o)))){ focusableObjects[o] = true; calculateCandidates = true; }; o.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); o.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; } else { if ((o is InteractiveObject)){ io = (o as InteractiveObject); if (((((io) && (io.tabEnabled))) && ((findFocusManagerComponent(io) == io)))){ focusableObjects[io] = true; calculateCandidates = true; }; io.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); io.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; }; }; if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); o.addEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); if ((((((doc is Stage)) || ((doc.parent is Stage)))) || (doc.tabChildren))){ i = 0; while (i < doc.numChildren) { try { child = doc.getChildAt(i); if (child != null){ addFocusables(doc.getChildAt(i)); }; } catch(error:SecurityError) { }; i = (i + 1); }; }; }; } private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{ return (_arg1.getChildIndex(_arg2)); } private function mouseFocusChangeHandler(_arg1:FocusEvent):void{ if ((_arg1.relatedObject is TextField)){ return; }; _arg1.preventDefault(); } private function focusOutHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject; _local2 = (_arg1.target as InteractiveObject); } private function isValidFocusCandidate(_arg1:DisplayObject, _arg2:String):Boolean{ var _local3:IFocusManagerGroup; if (!isEnabledAndVisible(_arg1)){ return (false); }; if ((_arg1 is IFocusManagerGroup)){ _local3 = IFocusManagerGroup(_arg1); if (_arg2 == _local3.groupName){ return (false); }; }; return (true); } public function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject{ var _local2:InteractiveObject; _local2 = _arg1; while (_arg1) { if ((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))){ return (_arg1); }; _arg1 = _arg1.parent; }; return (_local2); } private function sortFocusableObjectsTabIndex():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))){ focusableCandidates.push(_local2); }; }; focusableCandidates.sort(sortByTabIndex); } private function removeFocusables(_arg1:DisplayObject):void{ var _local2:Object; var _local3:DisplayObject; if ((_arg1 is DisplayObjectContainer)){ _arg1.removeEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); _arg1.removeEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); for (_local2 in focusableObjects) { _local3 = DisplayObject(_local2); if (DisplayObjectContainer(_arg1).contains(_local3)){ if (_local3 == lastFocus){ lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local2]; calculateCandidates = true; }; }; }; } private function addedHandler(_arg1:Event):void{ var _local2:DisplayObject; _local2 = DisplayObject(_arg1.target); if (_local2.stage){ addFocusables(DisplayObject(_arg1.target)); }; } private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{ while (_arg1 != InteractiveObject(form)) { if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (UIComponent(_arg1).enabled))){ return (_arg1); }; _arg1 = _arg1.parent; if (_arg1 == null){ break; }; }; return (null); } private function tabChildrenChangeHandler(_arg1:Event):void{ var _local2:DisplayObjectContainer; if (_arg1.target != _arg1.currentTarget){ return; }; calculateCandidates = true; _local2 = DisplayObjectContainer(_arg1.target); if (_local2.tabChildren){ addFocusables(_local2, true); } else { removeFocusables(_local2); }; } public function sendDefaultButtonEvent():void{ defButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); } public function getFocus():InteractiveObject{ var _local1:InteractiveObject; _local1 = form.stage.focus; return (findFocusManagerComponent(_local1)); } private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer; var _local3:TextField; var _local4:SimpleButton; _local2 = DisplayObject(form).parent; while (_arg1 != _local2) { if ((_arg1 is UIComponent)){ if (!UIComponent(_arg1).enabled){ return (false); }; } else { if ((_arg1 is TextField)){ _local3 = TextField(_arg1); if ((((_local3.type == TextFieldType.DYNAMIC)) || (!(_local3.selectable)))){ return (false); }; } else { if ((_arg1 is SimpleButton)){ _local4 = SimpleButton(_arg1); if (!_local4.enabled){ return (false); }; }; }; }; if (!_arg1.visible){ return (false); }; _arg1 = _arg1.parent; }; return (true); } public function set defaultButton(_arg1:Button):void{ var _local2:Button; _local2 = (_arg1) ? Button(_arg1) : null; if (_local2 != _defaultButton){ if (_defaultButton){ _defaultButton.emphasized = false; }; if (defButton){ defButton.emphasized = false; }; _defaultButton = _local2; defButton = _local2; if (_local2){ _local2.emphasized = true; }; }; } private function deactivateHandler(_arg1:Event):void{ var _local2:InteractiveObject; _local2 = InteractiveObject(_arg1.target); } public function setFocus(_arg1:InteractiveObject):void{ if ((_arg1 is IFocusManagerComponent)){ IFocusManagerComponent(_arg1).setFocus(); } else { form.stage.focus = _arg1; }; } private function setFocusToNextObject(_arg1:FocusEvent):void{ var _local2:InteractiveObject; if (!hasFocusableObjects()){ return; }; _local2 = getNextFocusManagerComponent(_arg1.shiftKey); if (_local2){ setFocus(_local2); }; } private function hasFocusableObjects():Boolean{ var _local1:Object; for (_local1 in focusableObjects) { return (true); }; return (false); } private function tabIndexChangeHandler(_arg1:Event):void{ calculateCandidates = true; } private function sortFocusableObjects():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))) && ((_local2.tabIndex > 0)))){ sortFocusableObjectsTabIndex(); return; }; focusableCandidates.push(_local2); }; focusableCandidates.sort(sortByDepth); } private function keyFocusChangeHandler(_arg1:FocusEvent):void{ showFocusIndicator = true; if ((((((_arg1.keyCode == Keyboard.TAB)) || ((_arg1.keyCode == 0)))) && (!(_arg1.isDefaultPrevented())))){ setFocusToNextObject(_arg1); _arg1.preventDefault(); }; } private function getIndexOfFocusedObject(_arg1:DisplayObject):int{ var _local2:int; var _local3:int; _local2 = focusableCandidates.length; _local3 = 0; _local3 = 0; while (_local3 < _local2) { if (focusableCandidates[_local3] == _arg1){ return (_local3); }; _local3++; }; return (-1); } public function hideFocus():void{ } private function removedHandler(_arg1:Event):void{ var _local2:int; var _local3:DisplayObject; var _local4:InteractiveObject; _local3 = DisplayObject(_arg1.target); if ((((_local3 is IFocusManagerComponent)) && ((focusableObjects[_local3] == true)))){ if (_local3 == lastFocus){ IFocusManagerComponent(lastFocus).drawFocus(false); lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local3]; calculateCandidates = true; } else { if ((((_local3 is InteractiveObject)) && ((focusableObjects[_local3] == true)))){ _local4 = (_local3 as InteractiveObject); if (_local4){ if (_local4 == lastFocus){ lastFocus = null; }; delete focusableObjects[_local4]; calculateCandidates = true; }; _local3.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); }; }; removeFocusables(_local3); } private function sortByDepth(_arg1:InteractiveObject, _arg2:InteractiveObject):Number{ var _local3:String; var _local4:String; var _local5:int; var _local6:String; var _local7:String; var _local8:String; var _local9:DisplayObject; var _local10:DisplayObject; _local3 = ""; _local4 = ""; _local8 = "0000"; _local9 = DisplayObject(_arg1); _local10 = DisplayObject(_arg2); while (((!((_local9 == DisplayObject(form)))) && (_local9.parent))) { _local5 = getChildIndex(_local9.parent, _local9); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local3 = (_local7 + _local3); _local9 = _local9.parent; }; while (((!((_local10 == DisplayObject(form)))) && (_local10.parent))) { _local5 = getChildIndex(_local10.parent, _local10); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local4 = (_local7 + _local4); _local10 = _local10.parent; }; return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : 0); } public function get defaultButton():Button{ return (_defaultButton); } private function activateHandler(_arg1:Event):void{ var _local2:InteractiveObject; _local2 = InteractiveObject(_arg1.target); if (lastFocus){ if ((lastFocus is IFocusManagerComponent)){ IFocusManagerComponent(lastFocus).setFocus(); } else { form.stage.focus = lastFocus; }; }; lastAction = "ACTIVATE"; } public function showFocus():void{ } public function set defaultButtonEnabled(_arg1:Boolean):void{ _defaultButtonEnabled = _arg1; } public function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject{ var _local2:DisplayObject; var _local3:String; var _local4:int; var _local5:Boolean; var _local6:int; var _local7:int; var _local8:IFocusManagerGroup; if (!hasFocusableObjects()){ return (null); }; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; _local2 = form.stage.focus; _local2 = DisplayObject(findFocusManagerComponent(InteractiveObject(_local2))); _local3 = ""; if ((_local2 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local2); _local3 = _local8.groupName; }; _local4 = getIndexOfFocusedObject(_local2); _local5 = false; _local6 = _local4; if (_local4 == -1){ if (_arg1){ _local4 = focusableCandidates.length; }; _local5 = true; }; _local7 = getIndexOfNextObject(_local4, _arg1, _local5, _local3); return (findFocusManagerComponent(focusableCandidates[_local7])); } private function mouseDownHandler(_arg1:MouseEvent):void{ var _local2:InteractiveObject; if (_arg1.isDefaultPrevented()){ return; }; _local2 = getTopLevelFocusTarget(InteractiveObject(_arg1.target)); if (!_local2){ return; }; showFocusIndicator = false; if (((((!((_local2 == lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local2 is TextField))))){ setFocus(_local2); }; lastAction = "MOUSEDOWN"; } private function isTabVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer; _local2 = _arg1.parent; while (((((_local2) && (!((_local2 is Stage))))) && (!(((_local2.parent) && ((_local2.parent is Stage))))))) { if (!_local2.tabChildren){ return (false); }; _local2 = _local2.parent; }; return (true); } public function get nextTabIndex():int{ return (0); } private function keyDownHandler(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.TAB){ lastAction = "KEY"; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; }; if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){ sendDefaultButtonEvent(); }; } private function focusInHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject; var _local3:Button; _local2 = InteractiveObject(_arg1.target); if (form.contains(_local2)){ lastFocus = findFocusManagerComponent(InteractiveObject(_local2)); if ((lastFocus is Button)){ _local3 = Button(lastFocus); if (defButton){ defButton.emphasized = false; defButton = _local3; _local3.emphasized = true; }; } else { if (((defButton) && (!((defButton == _defaultButton))))){ defButton.emphasized = false; defButton = _defaultButton; _defaultButton.emphasized = true; }; }; }; } private function tabEnabledChangeHandler(_arg1:Event):void{ var _local2:InteractiveObject; var _local3:Boolean; calculateCandidates = true; _local2 = InteractiveObject(_arg1.target); _local3 = (focusableObjects[_local2] == true); if (_local2.tabEnabled){ if (((!(_local3)) && (isTabVisible(_local2)))){ if (!(_local2 is IFocusManagerComponent)){ _local2.focusRect = false; }; focusableObjects[_local2] = true; }; } else { if (_local3){ delete focusableObjects[_local2]; }; }; } public function set showFocusIndicator(_arg1:Boolean):void{ _showFocusIndicator = _arg1; } public function get form():DisplayObjectContainer{ return (_form); } private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{ return (((_arg1.tabIndex > _arg2.tabIndex)) ? 1 : ((_arg1.tabIndex < _arg2.tabIndex)) ? -1 : sortByDepth(_arg1, _arg2)); } public function activate():void{ if (activated){ return; }; form.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true); form.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true); form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true); form.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = true; if (lastFocus){ setFocus(lastFocus); }; } public function deactivate():void{ form.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); form.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.removeEventListener(Event.ACTIVATE, activateHandler); form.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler); form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = false; } public function get defaultButtonEnabled():Boolean{ return (_defaultButtonEnabled); } } }//package fl.managers
Section 35
//IFocusManager (fl.managers.IFocusManager) package fl.managers { import fl.controls.*; import flash.display.*; public interface IFocusManager { function getFocus():InteractiveObject; function deactivate():void; function set defaultButton(_arg1:Button):void; function set showFocusIndicator(_arg1:Boolean):void; function get defaultButtonEnabled():Boolean; function get nextTabIndex():int; function get defaultButton():Button; function get showFocusIndicator():Boolean; function setFocus(_arg1:InteractiveObject):void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function hideFocus():void; function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject; function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject; } }//package fl.managers
Section 36
//IFocusManagerComponent (fl.managers.IFocusManagerComponent) package fl.managers { public interface IFocusManagerComponent { function set focusEnabled(_arg1:Boolean):void; function drawFocus(_arg1:Boolean):void; function setFocus():void; function get focusEnabled():Boolean; function get tabEnabled():Boolean; function get tabIndex():int; function get mouseFocusEnabled():Boolean; } }//package fl.managers
Section 37
//IFocusManagerGroup (fl.managers.IFocusManagerGroup) package fl.managers { public interface IFocusManagerGroup { function set groupName(_arg1:String):void; function set selected(_arg1:Boolean):void; function get groupName():String; function get selected():Boolean; } }//package fl.managers
Section 38
//StyleManager (fl.managers.StyleManager) package fl.managers { import fl.core.*; import flash.text.*; import flash.utils.*; public class StyleManager { private var globalStyles:Object; private var classToDefaultStylesDict:Dictionary; private var styleToClassesHash:Object; private var classToStylesDict:Dictionary; private var classToInstancesDict:Dictionary; private static var _instance:StyleManager; public function StyleManager(){ styleToClassesHash = {}; classToInstancesDict = new Dictionary(true); classToStylesDict = new Dictionary(true); classToDefaultStylesDict = new Dictionary(true); globalStyles = UIComponent.getStyleDefinition(); } public static function clearComponentStyle(_arg1:Object, _arg2:String):void{ var _local3:Class; var _local4:Object; _local3 = getClassDef(_arg1); _local4 = getInstance().classToStylesDict[_local3]; if (((!((_local4 == null))) && (!((_local4[_arg2] == null))))){ delete _local4[_arg2]; invalidateComponentStyle(_local3, _arg2); }; } private static function getClassDef(_arg1:Object):Class{ var component = _arg1; if ((component is Class)){ return ((component as Class)); }; try { return ((getDefinitionByName(getQualifiedClassName(component)) as Class)); } catch(e:Error) { if ((component is UIComponent)){ try { return ((component.loaderInfo.applicationDomain.getDefinition(getQualifiedClassName(component)) as Class)); } catch(e:Error) { }; }; }; return (null); } public static function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } public static function setComponentStyle(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Class; var _local5:Object; _local4 = getClassDef(_arg1); _local5 = getInstance().classToStylesDict[_local4]; if (_local5 == null){ _local5 = (getInstance().classToStylesDict[_local4] = {}); }; if (_local5 == _arg3){ return; }; _local5[_arg2] = _arg3; invalidateComponentStyle(_local4, _arg2); } private static function setSharedStyles(_arg1:UIComponent):void{ var _local2:StyleManager; var _local3:Class; var _local4:Object; var _local5:String; _local2 = getInstance(); _local3 = getClassDef(_arg1); _local4 = _local2.classToDefaultStylesDict[_local3]; for (_local5 in _local4) { _arg1.setSharedStyle(_local5, getSharedStyle(_arg1, _local5)); }; } public static function getComponentStyle(_arg1:Object, _arg2:String):Object{ var _local3:Class; var _local4:Object; _local3 = getClassDef(_arg1); _local4 = getInstance().classToStylesDict[_local3]; return (((_local4)==null) ? null : _local4[_arg2]); } private static function getInstance(){ if (_instance == null){ _instance = new (StyleManager); }; return (_instance); } private static function invalidateComponentStyle(_arg1:Class, _arg2:String):void{ var _local3:Dictionary; var _local4:Object; var _local5:UIComponent; _local3 = getInstance().classToInstancesDict[_arg1]; if (_local3 == null){ return; }; for (_local4 in _local3) { _local5 = (_local4 as UIComponent); if (_local5 == null){ } else { _local5.setSharedStyle(_arg2, getSharedStyle(_local5, _arg2)); }; }; } private static function invalidateStyle(_arg1:String):void{ var _local2:Dictionary; var _local3:Object; _local2 = getInstance().styleToClassesHash[_arg1]; if (_local2 == null){ return; }; for (_local3 in _local2) { invalidateComponentStyle(Class(_local3), _arg1); }; } public static function registerInstance(_arg1:UIComponent):void{ var inst:StyleManager; var classDef:Class; var target:Class; var defaultStyles:Object; var styleToClasses:Object; var n:String; var instance = _arg1; inst = getInstance(); classDef = getClassDef(instance); if (classDef == null){ return; }; if (inst.classToInstancesDict[classDef] == null){ inst.classToInstancesDict[classDef] = new Dictionary(true); target = classDef; while (defaultStyles == null) { if (target["getStyleDefinition"] != null){ defaultStyles = target["getStyleDefinition"](); break; }; try { target = (instance.loaderInfo.applicationDomain.getDefinition(getQualifiedSuperclassName(target)) as Class); } catch(err:Error) { try { target = (getDefinitionByName(getQualifiedSuperclassName(target)) as Class); } catch(e:Error) { defaultStyles = UIComponent.getStyleDefinition(); break; }; }; }; styleToClasses = inst.styleToClassesHash; for (n in defaultStyles) { if (styleToClasses[n] == null){ styleToClasses[n] = new Dictionary(true); }; styleToClasses[n][classDef] = true; }; inst.classToDefaultStylesDict[classDef] = defaultStyles; inst.classToStylesDict[classDef] = {}; }; inst.classToInstancesDict[classDef][instance] = true; setSharedStyles(instance); } public static function getStyle(_arg1:String):Object{ return (getInstance().globalStyles[_arg1]); } private static function getSharedStyle(_arg1:UIComponent, _arg2:String):Object{ var _local3:Class; var _local4:StyleManager; var _local5:Object; _local3 = getClassDef(_arg1); _local4 = getInstance(); _local5 = _local4.classToStylesDict[_local3][_arg2]; if (_local5 != null){ return (_local5); }; _local5 = _local4.globalStyles[_arg2]; if (_local5 != null){ return (_local5); }; return (_local4.classToDefaultStylesDict[_local3][_arg2]); } public static function setStyle(_arg1:String, _arg2:Object):void{ var _local3:Object; _local3 = getInstance().globalStyles; if ((((_local3[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; _local3[_arg1] = _arg2; invalidateStyle(_arg1); } } }//package fl.managers
Section 39
//SegPixel (pixelEffects.pixels.SegPixel) package pixelEffects.pixels { import flash.display.*; import flash.events.*; import flash.geom.*; public class SegPixel extends Sprite { private var bitmap:Bitmap; private var glintFrames;// = 20 private var pull:Number; private var finalX:Number; private var glintCounter:Number; private var finalY:Number; private var src:BitmapData; private var product:BitmapData; public function SegPixel(_arg1:BitmapData, _arg2:BitmapData, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number):void{ glintFrames = 20; glintCounter = glintFrames; super(); this.finalX = _arg7; this.finalY = _arg8; this.pull = _arg9; this.src = _arg1; this.product = _arg2; alpha = 0; bitmap = new Bitmap(_arg1); addChild(bitmap); x = _arg3; y = _arg4; scaleX = _arg5; scaleY = _arg6; addEventListener(Event.ENTER_FRAME, go); } private function settle():void{ var _local1:Point; x = finalX; y = finalY; scaleX = (scaleY = 1); alpha = 1; removeEventListener(Event.ENTER_FRAME, go); addEventListener(Event.ENTER_FRAME, glint); _local1 = new Point(finalX, finalY); product.copyPixels(src, src.rect, _local1); src.fillRect(src.rect, 0xFFFFFF); alpha = 0.25; } private function remove():void{ removeEventListener(Event.ENTER_FRAME, glint); removeEventListener(Event.ENTER_FRAME, go); src.dispose(); removeChild(bitmap); parent.removeChild(this); } private function go(_arg1:Event):void{ if ((((Math.abs((x - finalX)) < 1)) && ((Math.abs((y - finalY)) < 1)))){ settle(); } else { x = (x - ((x - finalX) * pull)); y = (y - ((y - finalY) * pull)); scaleX = (scaleX - ((scaleX - 1) * pull)); scaleY = (scaleY - ((scaleY - 1) * pull)); alpha = (alpha - ((alpha - 1) * pull)); }; } private function glint(_arg1:Event):void{ glintCounter--; if (glintCounter > 0){ alpha = ((glintCounter / glintFrames) / 2); } else { remove(); }; } } }//package pixelEffects.pixels
Section 40
//PixelEffect1 (pixelEffects.PixelEffect1) package pixelEffects { import flash.display.*; import flash.utils.*; import pixelEffects.pixels.*; import flash.geom.*; public class PixelEffect1 extends Sprite { private var segArray:Array; private var productBitmap:Bitmap; private var scaleRange:Number; private var bgColor:Number; private var drawInterval:uint; private var pull:Number; private var spread:Number; private var pixels:Number; private var interval:Number; private var src:BitmapData; private var product:BitmapData; public function PixelEffect1(_arg1:BitmapData, _arg2:Number=0, _arg3:Number=500, _arg4:Number=0.15, _arg5:Number=9, _arg6:Number=15, _arg7:Number=50):void{ this.src = _arg1; this.spread = _arg3; this.pull = _arg4; this.pixels = _arg5; this.scaleRange = _arg6; this.interval = _arg7; product = new BitmapData(_arg1.width, _arg1.height, false, _arg2); productBitmap = new Bitmap(product); addChild(productBitmap); segArray = createSegArray(); drawInterval = setInterval(drawPixels, _arg7); } private function finishDrawing():void{ clearInterval(drawInterval); } private function createSegArray():Array{ var _local1:Array; var _local2:*; var _local3:*; _local1 = new Array(); _local2 = 0; while ((_local2 * pixels) < src.width) { _local1[_local2] = new Array(); _local3 = 0; while ((_local3 * pixels) < src.height) { _local1[_local2][_local3] = new Point((_local2 * pixels), (_local3 * pixels)); _local3++; }; _local2++; }; return (_local1); } private function drawPixels(){ drawPixel(); drawPixel(); drawPixel(); } private function remove():void{ src.dispose(); product.dispose(); removeChild(productBitmap); } private function drawPixel(){ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:BitmapData; var _local6:Rectangle; var _local7:Point; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:SegPixel; if (segArray.length > 0){ _local1 = Math.floor((Math.random() * segArray.length)); _local2 = Math.floor((Math.random() * segArray[_local1].length)); _local3 = segArray[_local1][_local2].x; _local4 = segArray[_local1][_local2].y; segArray[_local1].splice(_local2, 1); if (segArray[_local1].length <= 0){ segArray.splice(_local1, 1); }; _local5 = new BitmapData(pixels, pixels, false, bgColor); _local6 = new Rectangle(_local3, _local4, pixels, pixels); _local7 = new Point(0, 0); _local5.copyPixels(src, _local6, _local7); _local8 = (((_local3 + (Math.random() * spread)) - (spread / 2)) - ((pixels * scaleRange) / 2)); _local9 = (((_local4 + (Math.random() * spread)) - (spread / 2)) - ((pixels * scaleRange) / 2)); _local10 = (Math.random() * scaleRange); _local11 = (Math.random() * scaleRange); _local12 = new SegPixel(_local5, product, _local8, _local9, _local10, _local11, _local3, _local4, pull); addChild(_local12); } else { finishDrawing(); }; } } }//package pixelEffects
Section 41
//chatCover_89 (volly_fla.chatCover_89) package volly_fla { import flash.display.*; public dynamic class chatCover_89 extends MovieClip { public function chatCover_89(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package volly_fla
Section 42
//export_2 (volly_fla.export_2) package volly_fla { import flash.display.*; public dynamic class export_2 extends MovieClip { public function export_2(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package volly_fla
Section 43
//logo_mc_61 (volly_fla.logo_mc_61) package volly_fla { import flash.display.*; import pixelEffects.*; public dynamic class logo_mc_61 extends MovieClip { public var logoAnim:PixelEffect1; public function logo_mc_61(){ addFrameScript(0, frame1); } function frame1(){ logoAnim = new PixelEffect1(new JiggminLogo(300, 87)); addChild(logoAnim); } } }//package volly_fla
Section 44
//logoAnim_59 (volly_fla.logoAnim_59) package volly_fla { import flash.display.*; import flash.media.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.geom.*; import flash.filters.*; import flash.system.*; import flash.ui.*; import flash.errors.*; import adobe.utils.*; import flash.accessibility.*; import flash.external.*; import flash.printing.*; import flash.xml.*; public dynamic class logoAnim_59 extends MovieClip { public var logo_mc:MovieClip; public function logoAnim_59(){ addFrameScript(356, frame357); } function frame357(){ GetMain.main.changePage(new LoginPage()); stop(); } } }//package volly_fla
Section 45
//MainTimeline (volly_fla.MainTimeline) package volly_fla { import flash.display.*; import flash.media.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.geom.*; import flash.filters.*; import flash.system.*; import flash.ui.*; import flash.errors.*; import adobe.utils.*; import flash.accessibility.*; import flash.external.*; import flash.printing.*; import flash.xml.*; public dynamic class MainTimeline extends MovieClip { public var pageHolder:MovieClip; public var doubleSlash:Number; public var gameURL:String; public var server:String; public var playerList:PlayerList; public var goodVersion:Boolean; public var i; public var chat:Chat; public var alertHolder:MovieClip; public var deleteableScreen:MovieClip; public var allowedArray:Array; public var protocol:String; public var testURL:String; public var me:MePlayer; public var socket:BounceSocket; public var serverID:Number; public var swfURL:String; public var gameVersion:String; public var muteButton:SimpleButton; public var preloaderHolder:MovieClip; public var foundAllowedURL:Boolean; public var curPage:MovieClip; public function MainTimeline(){ addFrameScript(0, frame1, 4, frame5, 10, frame11); } public function preload(){ var _local1:Preloader; _local1 = new Preloader(500, 350); preloaderHolder.addChild(_local1); } public function pressMute(_arg1:MouseEvent):void{ Sounds.pressMute(); } public function changePage(_arg1):void{ curPage.remove(); pageHolder.removeChild(curPage); curPage = _arg1; pageHolder.addChild(curPage); } function frame1(){ stop(); GetMain.main = this; stage.showDefaultContextMenu = false; goodVersion = testVersion(); if (goodVersion){ allowedArray = new Array("kongregate.com", "uploads.ungrounded.net"); swfURL = stage.loaderInfo.url; protocol = swfURL.substr(0, swfURL.indexOf(":")); if (protocol == "file"){ preload(); } else { if (protocol == "http"){ doubleSlash = swfURL.indexOf("//"); server = swfURL.substr((doubleSlash + 2), ((swfURL.indexOf("/", (doubleSlash + 2)) - doubleSlash) - 2)); server = server.toLowerCase(); if (server.indexOf("www.") != -1){ server = server.substr((server.indexOf("www.") + 4), server.length); }; foundAllowedURL = false; i = 0; while (i < allowedArray.length) { testURL = allowedArray[i]; if (server.indexOf(testURL) != -1){ foundAllowedURL = true; break; }; i++; }; if (foundAllowedURL){ preload(); } else { showMochiad(); }; }; }; }; gameURL = server; gameVersion = "1.0"; } function frame5(){ gotoAndStop("pages"); } function frame11(){ stop(); Security.loadPolicyFile("http://jiggmin2.com/crossdomain.xml"); curPage = new InitializePage(); pageHolder.addChild(curPage); playerList = new PlayerList(); chat = new Chat(); serverID = Math.floor((Math.random() * 3)); muteButton.addEventListener(MouseEvent.CLICK, pressMute); } public function showMochiad(){ MochiAd.showPreGameAd({clip:root, id:"dd26032b0251f68a", res:"500x350"}); } public function testVersion(){ var _local1:Boolean; var _local2:Array; var _local3:String; var _local4:Array; var _local5:Number; var _local6:Number; _local1 = true; _local2 = Capabilities.version.split(" "); _local3 = _local2[1]; _local4 = _local2[1].split(","); _local5 = _local4[0]; _local6 = _local4[2]; if (_local5 <= 9){ if ((((_local5 == 9)) && ((_local6 < 45)))){ _local1 = false; new AlertScreen(new VersionMessage()); }; } else { _local1 = false; }; return (_local1); } } }//package volly_fla
Section 46
//paddleStuff_42 (volly_fla.paddleStuff_42) package volly_fla { import flash.display.*; public dynamic class paddleStuff_42 extends MovieClip { public var spin:MovieClip; } }//package volly_fla
Section 47
//scoreFlashAnim_56 (volly_fla.scoreFlashAnim_56) package volly_fla { import flash.display.*; public dynamic class scoreFlashAnim_56 extends MovieClip { public function scoreFlashAnim_56(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package volly_fla
Section 48
//scrollBar_66 (volly_fla.scrollBar_66) package volly_fla { import flash.display.*; import flash.media.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.geom.*; import flash.filters.*; import flash.system.*; import flash.ui.*; import flash.errors.*; import adobe.utils.*; import flash.accessibility.*; import flash.external.*; import flash.printing.*; import flash.xml.*; public dynamic class scrollBar_66 extends MovieClip { public var yListStart:Number; public var yMax:Number; public var yMin:Number; public var yTot:Number; public var showHeight:Number; public var stageRef:Stage; public var main:MovieClip; public var thumb:SimpleButton; public var listHolder; public function scrollBar_66(){ addFrameScript(0, frame1); } public function scrollThumb(_arg1:MouseEvent){ var _local2:Number; var _local3:Point; var _local4:Number; var _local5:*; _local2 = _arg1.stageY; _local3 = new Point(0, _local2); _local3 = globalToLocal(_local3); thumb.y = (_local3.y - (thumb.height / 2)); if (thumb.y > yMax){ thumb.y = yMax; }; if (thumb.y < yMin){ thumb.y = yMin; }; _local4 = ((thumb.y - yMin) / yTot); _local5 = (listHolder.height - showHeight); if (_local5 < 0){ _local5 = 0; }; listHolder.y = (yListStart - (_local4 * _local5)); listHolder.y = Math.round(listHolder.y); } public function stopScrolling(_arg1:MouseEvent){ stageRef.removeEventListener(MouseEvent.MOUSE_UP, stopScrolling); stageRef.removeEventListener(MouseEvent.MOUSE_MOVE, scrollThumb); } function frame1(){ stop(); main = GetMain.main; stageRef = stage; listHolder = MovieClip(parent).listHolder; yMin = 14; yMax = 138; yTot = (yMax - yMin); showHeight = 204; yListStart = listHolder.y; thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbDown); } public function thumbDown(_arg1:MouseEvent){ stageRef.addEventListener(MouseEvent.MOUSE_UP, stopScrolling); stageRef.addEventListener(MouseEvent.MOUSE_MOVE, scrollThumb); } } }//package volly_fla
Section 49
//spin_43 (volly_fla.spin_43) package volly_fla { import flash.display.*; public dynamic class spin_43 extends MovieClip { public function spin_43(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package volly_fla
Section 50
//title_mc_54 (volly_fla.title_mc_54) package volly_fla { import flash.display.*; import flash.media.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.geom.*; import flash.filters.*; import flash.system.*; import flash.ui.*; import flash.errors.*; import adobe.utils.*; import flash.accessibility.*; import flash.external.*; import flash.printing.*; import flash.xml.*; public dynamic class title_mc_54 extends MovieClip { public var versionBox:TextField; public function title_mc_54(){ addFrameScript(0, frame1); } function frame1(){ versionBox.text = ("v " + GetMain.main.gameVersion); } } }//package volly_fla
Section 51
//yesNoButton_82 (volly_fla.yesNoButton_82) package volly_fla { import flash.display.*; import flash.events.*; public dynamic class yesNoButton_82 extends MovieClip { public var noButton:SimpleButton; public var outline_mc:MovieClip; public var yesButton:SimpleButton; public function yesNoButton_82(){ addFrameScript(0, frame1); } public function noButtonClick(_arg1:MouseEvent){ outline_mc.x = 61; } public function yesButtonClick(_arg1:MouseEvent){ outline_mc.x = -1; } function frame1(){ yesButton.addEventListener(MouseEvent.CLICK, yesButtonClick); noButton.addEventListener(MouseEvent.CLICK, noButtonClick); } } }//package volly_fla
Section 52
//AlertScreen (AlertScreen) package { import flash.display.*; public class AlertScreen extends MovieClip { public var contentHolder:MovieClip; private var main:MovieClip; public function AlertScreen(_arg1:MovieClip):void{ main = GetMain.main; super(); addFrameScript(7, frame8, 15, frame16); main.alertHolder.addChild(this); contentHolder.addChild(_arg1); } function frame16(){ if (parent != null){ parent.removeChild(this); }; } function frame8(){ stop(); } } }//package
Section 53
//BadScore (BadScore) package { import flash.media.*; public dynamic class BadScore extends Sound { } }//package
Section 54
//Ball (Ball) package { import flash.display.*; import flash.events.*; import flash.utils.*; public class Ball extends MovieClip { private var xVel:Number; private var paddle2:Paddle; private var paddle1:Paddle; private var id:Number; private var confirmSide:String;// = "" private var side:String;// = "" private var gravity:Number;// = 0.3 private var minY:Number;// = 0 private var maxStartVel:Number;// = 15 private var yVel:Number; private var maxY:Number;// = 350 private var scoreTimeout:uint; private var maxX:Number;// = 500 private var wait:Boolean;// = false private var minX:Number;// = 0 private var bounceFric:Number;// = 0.98 private var radius:Number;// = 20 private var rotSpeed:Number; private var correctionFrames:Number;// = 0 private var alphaFlicker:Number;// = 0.25 private var correctionY:Number;// = 0 private var correctionX:Number;// = 0 private var lastBounce:Number;// = 0 private var main:MovieClip; private var hitDist:Number; private var game:Game; public function Ball(_arg1:Number, _arg2:Game, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Paddle, _arg8:Paddle):void{ minX = 0; maxX = 500; minY = 0; maxY = 350; alphaFlicker = 0.25; rotSpeed = ((Math.random() * 6) - 3); radius = 20; gravity = 0.3; maxStartVel = 15; bounceFric = 0.98; hitDist = ((65 / 2) + (40 / 2)); correctionFrames = 0; correctionX = 0; correctionY = 0; main = GetMain.main; side = ""; confirmSide = ""; wait = false; lastBounce = 0; super(); if (Math.random() > 0.5){ gotoAndStop("blue"); } else { gotoAndStop("pink"); }; alpha = ((Math.random() * 0.5) + 0.5); this.id = _arg1; x = _arg3; y = _arg4; this.xVel = _arg5; this.yVel = _arg6; this.game = _arg2; this.paddle1 = _arg7; this.paddle2 = _arg8; addEventListener(Event.ENTER_FRAME, go); main.curPage.ballHolder.addChild(this); } public function getID():Number{ return (id); } public function testScore(){ if (((!((side == ""))) && (!((confirmSide == ""))))){ if (confirmSide == side){ game.score(this.side); game.removeBall(this); } else { game.removeBall(this); }; }; } private function correct():void{ if (correctionFrames > 0){ correctionFrames--; x = (x + correctionX); y = (y + correctionY); }; } public function remove():void{ side = ""; confirmSide = ""; clearTimeout(scoreTimeout); removeEventListener(Event.ENTER_FRAME, go); if (parent != null){ parent.removeChild(this); }; } public function setBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number){ var _local7:Number; var _local8:Number; var _local9:*; var _local10:Number; var _local11:Number; cancelEase(); _local7 = this.x; _local8 = this.y; this.x = _arg3; this.y = _arg4; this.xVel = _arg5; this.yVel = _arg6; _local9 = (_arg2 - _arg1); if (_local9 < 25){ while (_local9 > 0) { step(); _local9--; }; wait = false; side = ""; clearTimeout(scoreTimeout); _local10 = (x - _local7); _local11 = (y - _local8); this.x = _local7; this.y = _local8; correctionFrames = 4; correctionX = (_local10 / correctionFrames); correctionY = (_local11 / correctionFrames); correct(); }; } private function cancelEase():void{ if (correctionFrames > 0){ x = (x + (correctionX * correctionFrames)); y = (y + (correctionY * correctionFrames)); }; correctionFrames = 0; } private function testHit(_arg1:Paddle){ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local2 = (x - _arg1.x); _local3 = (y - _arg1.y); _local4 = Maths.pythag(_local2, _local3); if (_local4 < hitDist){ cancelEase(); bounce(); _local5 = (Maths.pythag(xVel, yVel) * 1.1); _local6 = Math.atan2(_local3, _local2); xVel = (Math.cos(_local6) * _local5); yVel = (Math.sin(_local6) * _local5); x = ((Math.cos(_local6) * hitDist) + _arg1.x); y = ((Math.sin(_local6) * hitDist) + _arg1.y); xVel = Math.round(xVel); yVel = Math.round(yVel); x = Math.round(x); y = Math.round(y); _arg1.bounce(this); confirmSide = ""; _local7 = ((0.004 * x) - 1); trace(("pan: " + _local7)); Sounds.startSound(new BounceSound(), 0.5, _local7); }; } public function sendPos():void{ main.socket.write(((((((((((("bounce`" + id) + "`") + game.getCurFrame()) + "`") + x) + "`") + y) + "`") + xVel) + "`") + yVel)); } public function confirmScore(_arg1:String):void{ confirmSide = _arg1; testScore(); } private function step():void{ x = (x + xVel); y = (y + yVel); yVel = (yVel + gravity); if ((x - radius) < minX){ cancelEase(); x = (minX + radius); xVel = (xVel * -(bounceFric)); }; if ((x + radius) > maxX){ cancelEase(); x = (maxX - radius); xVel = (xVel * -(bounceFric)); }; if ((y - radius) < minY){ cancelEase(); y = (minY + radius); yVel = (yVel * -(bounceFric)); }; } private function bounce(){ alpha = 1.25; } public function giveUp(){ game.removeBall(this); } public function score(_arg1:String):void{ this.side = _arg1; main.socket.write(((("score`" + id) + "`") + _arg1)); scoreTimeout = setTimeout(giveUp, 5000); testScore(); } private function go(_arg1:Event):void{ var _local2:String; if (!wait){ step(); correct(); testHit(paddle1); testHit(paddle2); if ((y - radius) > maxY){ wait = true; _local2 = "left"; if (x < 250){ _local2 = "right"; }; score(_local2); }; alpha = (alpha + ((Math.random() * alphaFlicker) - (alphaFlicker / 2))); if (alpha > 1){ alpha = 1; }; if (alpha < 0.5){ alpha = 0.5; }; }; } } }//package
Section 55
//BallBitmap (BallBitmap) package { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.filters.*; public class BallBitmap extends MovieClip { var rect:Rectangle; var bitmap:Bitmap; var point:Point; var bitmapData:BitmapData; var target:MovieClip; var blurFilter:BlurFilter; public function BallBitmap(_arg1:MovieClip):void{ bitmapData = new BitmapData(500, 350, true, 0); bitmap = new Bitmap(bitmapData); blurFilter = new BlurFilter(4, 4, 1); rect = bitmapData.rect; point = new Point(0, 0); super(); alpha = 0.3; this.target = _arg1; addChild(bitmap); addEventListener(Event.ENTER_FRAME, go); } public function remove(){ removeEventListener(Event.ENTER_FRAME, go); bitmapData.dispose(); parent.removeChild(this); } private function go(_arg1:Event){ bitmapData.draw(target); bitmapData.applyFilter(bitmapData, rect, point, blurFilter); bitmapData.scroll(0, -1); } } }//package
Section 56
//BounceSocket (BounceSocket) package { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.net.*; import flash.errors.*; public class BounceSocket extends Socket { private var pass:String; private var dead:Boolean;// = false private var commandHandler:CommandHandler; private var name:String; private var main:MovieClip; private var guest:Boolean; private var startPingTime:Number; private var EOL:String; private var sendPingInterval:uint; public function BounceSocket(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:Number){ dead = false; sendPingInterval = setInterval(sendPing, 29000); EOL = String.fromCharCode(4); commandHandler = new CommandHandler(); main = GetMain.main; super(); this.name = _arg1; this.pass = _arg2; this.guest = _arg3; addEventListener(Event.CLOSE, closeHandler); addEventListener(Event.CONNECT, connectHandler); addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler); connect("jiggmin2.com", _arg4); } private function connectHandler(_arg1:Event):void{ write(("set_version`" + main.gameVersion)); write(("set_url`" + main.gameURL)); if (guest == true){ write("guest_login`"); } else { write(((("login`" + name) + "`") + pass)); }; } public function sendPing(){ write("ping`"); startPingTime = new Date().time; } private function closeHandler(_arg1:Event):void{ new AlertScreen(new Message("Disconnected.")); remove(); } private function ioErrorHandler(_arg1:IOErrorEvent):void{ new AlertScreen(new Message("Could not connect. This could be because: \n A: My server is broken. \n B: The internet is broken. \n C: Evil aliens.")); remove(); } public function recievePing(){ var _local1:Number; _local1 = (new Date().time - startPingTime); write(("set_ping`" + _local1)); } private function securityErrorHandler(_arg1:SecurityErrorEvent):void{ new AlertScreen(new Message(("securityErrorHandler: " + _arg1))); } public function remove():void{ if (dead == false){ dead = true; GetMain.main.changePage(new LoginPage()); clearInterval(sendPingInterval); removeEventListener(Event.CLOSE, closeHandler); removeEventListener(Event.CONNECT, connectHandler); removeEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); removeEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler); close(); commandHandler.remove(); }; } private function socketDataHandler(_arg1:ProgressEvent):void{ readResponse(); } public function write(_arg1:String):void{ var str = _arg1; if (!dead){ str = (str + EOL); try { writeUTFBytes(str); } catch(e:IOError) { trace(e); }; flush(); }; } private function readResponse():void{ var _local1:String; _local1 = readUTFBytes(bytesAvailable); commandHandler.addText(_local1); } } }//package
Section 57
//BounceSound (BounceSound) package { import flash.media.*; public dynamic class BounceSound extends Sound { } }//package
Section 58
//Button_disabledSkin (Button_disabledSkin) package { import flash.display.*; public dynamic class Button_disabledSkin extends MovieClip { } }//package
Section 59
//Button_downSkin (Button_downSkin) package { import flash.display.*; public dynamic class Button_downSkin extends MovieClip { } }//package
Section 60
//Button_emphasizedSkin (Button_emphasizedSkin) package { import flash.display.*; public dynamic class Button_emphasizedSkin extends MovieClip { } }//package
Section 61
//Button_overSkin (Button_overSkin) package { import flash.display.*; public dynamic class Button_overSkin extends MovieClip { } }//package
Section 62
//Button_selectedDisabledSkin (Button_selectedDisabledSkin) package { import flash.display.*; public dynamic class Button_selectedDisabledSkin extends MovieClip { } }//package
Section 63
//Button_selectedDownSkin (Button_selectedDownSkin) package { import flash.display.*; public dynamic class Button_selectedDownSkin extends MovieClip { } }//package
Section 64
//Button_selectedOverSkin (Button_selectedOverSkin) package { import flash.display.*; public dynamic class Button_selectedOverSkin extends MovieClip { } }//package
Section 65
//Button_selectedUpSkin (Button_selectedUpSkin) package { import flash.display.*; public dynamic class Button_selectedUpSkin extends MovieClip { } }//package
Section 66
//Button_upSkin (Button_upSkin) package { import flash.display.*; public dynamic class Button_upSkin extends MovieClip { } }//package
Section 67
//CellRenderer_disabledSkin (CellRenderer_disabledSkin) package { import flash.display.*; public dynamic class CellRenderer_disabledSkin extends MovieClip { } }//package
Section 68
//CellRenderer_downSkin (CellRenderer_downSkin) package { import flash.display.*; public dynamic class CellRenderer_downSkin extends MovieClip { } }//package
Section 69
//CellRenderer_overSkin (CellRenderer_overSkin) package { import flash.display.*; public dynamic class CellRenderer_overSkin extends MovieClip { } }//package
Section 70
//CellRenderer_selectedDisabledSkin (CellRenderer_selectedDisabledSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedDisabledSkin extends MovieClip { } }//package
Section 71
//CellRenderer_selectedDownSkin (CellRenderer_selectedDownSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedDownSkin extends MovieClip { } }//package
Section 72
//CellRenderer_selectedOverSkin (CellRenderer_selectedOverSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedOverSkin extends MovieClip { } }//package
Section 73
//CellRenderer_selectedUpSkin (CellRenderer_selectedUpSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedUpSkin extends MovieClip { } }//package
Section 74
//CellRenderer_upSkin (CellRenderer_upSkin) package { import flash.display.*; public dynamic class CellRenderer_upSkin extends MovieClip { } }//package
Section 75
//Chat (Chat) package { import flash.display.*; public class Chat { private var niggerArray:Array; public var showing:Boolean;// = true private var main:MovieClip; private var bitchArray:Array; private var messageArray:Array; private var page:LobbyPage; private var damnArray:Array; private var fuckArray:Array; private var inLobby:Boolean;// = false private var shitArray:Array; private var spicArray:Array; public function Chat():void{ messageArray = new Array(); main = GetMain.main; showing = true; damnArray = new Array("dang", "dingy-goo", "condemnation"); fuckArray = new Array("fooey", "fingilly", "funk-master", "freak monster", "jiminy cricket"); shitArray = new Array("shoot", "shewet"); niggerArray = new Array("someone cooler than me", "ladies magnet", "cooler race"); spicArray = niggerArray; bitchArray = new Array("cooler gender", "female dog"); inLobby = false; super(); } public function hide(){ showing = false; main.curPage.chatCover.gotoAndStop("on"); } public function setLobbyPage(_arg1:LobbyPage){ page = _arg1; } public function show(){ showing = true; main.curPage.chatCover.gotoAndStop("off"); } public function clearMessages():void{ messageArray = new Array(); } public function addMessage(_arg1:Player, _arg2:String):void{ var _local3:String; var _local4:String; var _local5:String; var _local6:String; _arg2 = sanitize(_arg2); if (_arg1 == null){ _local3 = "<i>offline</i>"; _local4 = "#666666"; } else { _local3 = (((("<a href=\"event:" + _arg1.getID()) + "\">") + sanitize(_arg1.getName())) + "</a>"); _local4 = _arg1.getHTMLNameColor(); }; _local6 = (((((("<u><font color=\"" + _local4) + "\">") + _local3) + "</font></u> <font color=\"#666666\">") + _arg2) + "</font>"); messageArray.push(_local6); if (messageArray.length > 20){ messageArray.splice(0, 1); }; showMessages(); } private function randIndex(_arg1:Array){ var _local2:int; _local2 = Math.floor((Math.random() * _arg1.length)); return (_arg1[_local2]); } public function setInLobby(_arg1:Boolean):void{ inLobby = _arg1; if (_arg1 == true){ showMessages(); }; } private function showMessages():void{ if (inLobby == true){ page.setChat(messageArray.join("<br/>")); }; } public function sanitize(_arg1:String):String{ _arg1 = _arg1.replace(/>/gi, ""); _arg1 = _arg1.replace(/</gi, ""); _arg1 = _arg1.replace(/damn/gi, randIndex(damnArray)); _arg1 = _arg1.replace(/fuck/gi, randIndex(fuckArray)); _arg1 = _arg1.replace(/nigg(a|er)/gi, randIndex(niggerArray)); _arg1 = _arg1.replace(/spic /gi, randIndex(spicArray)); _arg1 = _arg1.replace(/shit/gi, randIndex(shitArray)); _arg1 = _arg1.replace(/bitch/gi, randIndex(bitchArray)); return (_arg1); } } }//package
Section 76
//ColorBG (ColorBG) package { import flash.display.*; import flash.events.*; import flash.geom.*; public class ColorBG extends MovieClip { private var blue:Number;// = 0 private var greenTarget:Number;// = 0 private var red:Number;// = 0 private var blueTarget:Number;// = 0 private var tint:Number;// = 0.2 private var green:Number;// = 0 private var redTarget:Number;// = 0 private var num:Number;// = 0 private var ease:Number;// = 0.25 public function ColorBG():void{ tint = 0.2; ease = 0.25; red = 0; green = 0; blue = 0; redTarget = 0; greenTarget = 0; blueTarget = 0; num = 0; super(); addFrameScript(120, frame121, 131, frame132, 143, frame144, 155, frame156, 166, frame167, 177, frame178, 188, frame189, 199, frame200, 210, frame211, 222, frame223, 233, frame234, 244, frame245, 0xFF, frame256, 266, frame267, 277, frame278, 288, frame289, 299, frame300, 310, frame311, 321, frame322, 332, frame333, 343, frame344, 354, frame355, 366, frame367, 377, frame378, 388, frame389, 399, frame400, 410, frame411, 420, frame421, 430, frame431, 442, frame443, 454, frame455, 465, frame466, 476, frame477, 487, frame488, 498, frame499, 509, frame510, 521, frame522, 532, frame533, 543, frame544, 554, frame555, 565, frame566, 576, frame577, 587, frame588, 598, frame599, 609, frame610, 620, frame621, 631, frame632, 642, frame643, 653, frame654, 665, frame666, 676, frame677, 687, frame688, 698, frame699, 709, frame710, 719, frame720, 728, frame729, 739, frame740, 751, frame752, 762, frame763, 773, frame774, 784, frame785, 795, frame796, 806, frame807, 818, frame819, 829, frame830, 840, frame841, 851, frame852, 862, frame863, 873, frame874, 884, frame885, 895, frame896, 906, frame907, 917, frame918, 928, frame929, 939, frame940, 950, frame951, 962, frame963, 973, frame974, 984, frame985, 995, frame996, 1007, frame1008, 1017, frame1018, 1027, frame1028, 1039, frame1040, 1051, frame1052, 1062, frame1063, 1073, frame1074, 1084, frame1085, 1095, frame1096, 1106, frame1107, 1118, frame1119, 1129, frame1130, 1140, frame1141, 1151, frame1152, 1162, frame1163, 1173, frame1174, 1184, frame1185, 1195, frame1196, 1206, frame1207, 1217, frame1218, 1228, frame1229, 1239, frame1240, 1250, frame1251, 1262, frame1263, 1273, frame1274, 1284, frame1285, 1295, frame1296, 1306, frame1307, 1388, frame1389); addEventListener(Event.ENTER_FRAME, go); } function frame156(){ changeColor(); } function frame830(){ changeColor(); } function frame710(){ changeColor(); } function frame1185(){ changeColor(); } function frame278(){ changeColor(); } function frame951(){ changeColor(); } function frame1063(){ changeColor(); } function frame167(){ changeColor(); } function frame289(){ changeColor(); } function frame720(){ changeColor(); } function frame963(){ changeColor(); } function frame1074(){ changeColor(); } function frame729(){ changeColor(); } function frame841(){ changeColor(); } function frame178(){ changeColor(); } function frame610(){ changeColor(); } function frame974(){ changeColor(); } function frame1196(){ changeColor(); } function frame1085(){ changeColor(); } function frame852(){ changeColor(); } function frame189(){ changeColor(); } function frame740(){ changeColor(); } function frame621(){ changeColor(); } function frame985(){ changeColor(); } function frame863(){ changeColor(); } function frame1096(){ changeColor(); } public function remove():void{ removeEventListener(Event.ENTER_FRAME, go); parent.removeChild(this); stop(); } function frame510(){ changeColor(); } function frame632(){ changeColor(); } function frame996(){ changeColor(); } function frame752(){ changeColor(); } function frame874(){ changeColor(); } function frame1307(){ changeColor(); } function frame400(){ changeColor(); } function frame522(){ changeColor(); } function frame763(){ changeColor(); } function frame643(){ changeColor(); } function frame885(){ changeColor(); } function frame411(){ changeColor(); } function frame774(){ changeColor(); } function frame533(){ changeColor(); } function frame1207(){ changeColor(); } function frame654(){ changeColor(); } function frame896(){ changeColor(); } function frame421(){ changeColor(); } function frame785(){ changeColor(); } function frame544(){ changeColor(); } function frame666(){ changeColor(); } function frame300(){ changeColor(); } function frame1218(){ changeColor(); } private function go(_arg1:Event):void{ var _local2:ColorTransform; if (parent == null){ stop(); removeEventListener(Event.ENTER_FRAME, go); } else { red = (red + ((redTarget - red) * ease)); green = (green + ((greenTarget - green) * ease)); blue = (blue + ((blueTarget - blue) * ease)); _local2 = new ColorTransform((1 - tint), (1 - tint), (1 - tint), 1, (red * tint), (green * tint), (blue * tint), 0); this.transform.colorTransform = _local2; }; } function frame431(){ changeColor(); } function frame311(){ changeColor(); } function frame555(){ changeColor(); } function frame677(){ changeColor(); } function frame796(){ changeColor(); } function frame1107(){ changeColor(); } function frame1229(){ changeColor(); } function frame322(){ changeColor(); } function frame688(){ changeColor(); } function frame200(){ changeColor(); } function frame443(){ changeColor(); } function frame566(){ changeColor(); } function frame1119(){ changeColor(); } function frame211(){ changeColor(); } function frame455(){ changeColor(); } function frame577(){ changeColor(); } function frame699(){ changeColor(); } function frame333(){ changeColor(); } function frame1008(){ changeColor(); } function frame1240(){ changeColor(); } function frame223(){ changeColor(); } function frame1130(){ changeColor(); } function frame344(){ changeColor(); } function frame466(){ changeColor(); } function frame588(){ changeColor(); } function frame1251(){ changeColor(); } function frame907(){ changeColor(); } function frame1018(){ changeColor(); } function frame477(){ changeColor(); } function frame1141(){ changeColor(); } function frame1263(){ changeColor(); } function frame599(){ changeColor(); } function frame1389(){ stop(); } function frame1028(){ changeColor(); } public function changeColor():void{ redTarget = (Math.random() * 155); greenTarget = (Math.random() * 155); blueTarget = (Math.random() * 155); num++; if (num > 2){ num = 0; }; if (num == 0){ redTarget = 0xFF; }; if (num == 1){ greenTarget = 0xFF; }; if (num == 2){ blueTarget = 0xFF; }; } function frame234(){ changeColor(); } function frame918(){ changeColor(); } function frame245(){ changeColor(); } function frame367(){ changeColor(); } function frame355(){ changeColor(); } function frame121(){ changeColor(); } function frame1152(){ changeColor(); } function frame807(){ changeColor(); } function frame929(){ changeColor(); } function frame488(){ changeColor(); } function frame1274(){ changeColor(); } function frame132(){ changeColor(); } function frame1040(){ changeColor(); } function frame1163(){ changeColor(); } function frame256(){ changeColor(); } function frame378(){ changeColor(); } function frame1285(){ changeColor(); } function frame819(){ changeColor(); } function frame499(){ changeColor(); } function frame144(){ changeColor(); } function frame267(){ changeColor(); } function frame389(){ changeColor(); } function frame940(){ changeColor(); } function frame1052(){ changeColor(); } function frame1296(){ changeColor(); } function frame1174(){ changeColor(); } } }//package
Section 77
//ColumnStretch_cursor (ColumnStretch_cursor) package { import flash.display.*; public dynamic class ColumnStretch_cursor extends MovieClip { } }//package
Section 78
//ComboBox_disabledSkin (ComboBox_disabledSkin) package { import flash.display.*; public dynamic class ComboBox_disabledSkin extends MovieClip { } }//package
Section 79
//ComboBox_downSkin (ComboBox_downSkin) package { import flash.display.*; public dynamic class ComboBox_downSkin extends MovieClip { } }//package
Section 80
//ComboBox_overSkin (ComboBox_overSkin) package { import flash.display.*; public dynamic class ComboBox_overSkin extends MovieClip { } }//package
Section 81
//ComboBox_upSkin (ComboBox_upSkin) package { import flash.display.*; public dynamic class ComboBox_upSkin extends MovieClip { } }//package
Section 82
//CommandHandler (CommandHandler) package { import flash.display.*; public class CommandHandler { private var main:MovieClip; private var inBuffer:String;// = "" private var id:String; private var EOL:String; private var game:Game; public static var ignoreArray:Array = new Array(); public function CommandHandler():void{ EOL = String.fromCharCode(4); inBuffer = ""; main = GetMain.main; super(); } private function abortGame(_arg1:String):void{ game.abortGame(); } private function recieveChallenge(_arg1:String):void{ var _local2:Player; _local2 = main.playerList.idToPlayer(_arg1); new AlertScreen(new RecieveChallenge(_local2)); } private function handleResponse(_arg1:String):void{ var _local2:Number; var _local3:String; var _local4:String; trace(("command: " + _arg1)); _local2 = _arg1.indexOf("`"); _local3 = _arg1.substring(0, _local2); _local4 = _arg1.substr((_local2 + 1)); var _local5 = this; _local5[_local3](_local4); } public function remove():void{ if (game != null){ main.killGame(); game.remove(); }; } private function setGroup(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:Number; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); _local5.setGroup(_local4); } private function message(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); if (CommandHandler.ignoreArray.indexOf(_local5) == -1){ new AlertScreen(new PlayerMessage(_local5, _local4)); }; } private function setScore(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:Number; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); _local5.setScore(_local4); } private function score(_arg1:String):void{ var _local2:Array; var _local3:Number; var _local4:String; var _local5:Number; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = _local2[2]; game.confirmScore(_local3, _local4); } private function removePlayer(_arg1:String):void{ var _local2:Player; _local2 = main.playerList.idToPlayer(_arg1); _local2.remove(); } private function setID(_arg1:String){ id = _arg1; } private function setAvailable(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); _local5.setAvailable(_local4); } private function bounce(_arg1:String):void{ var _local2:Array; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = _local2[2]; _local6 = _local2[3]; _local7 = _local2[4]; _local8 = _local2[5]; game.setBounce(_local3, _local4, _local5, _local6, _local7, _local8); } private function chat(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); if (CommandHandler.ignoreArray.indexOf(_local5) == -1){ main.chat.addMessage(_local5, _local4); }; } private function setPos(_arg1:String):void{ var _local2:Array; var _local3:Number; var _local4:String; var _local5:String; var _local6:Number; var _local7:Number; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = _local2[2]; _local6 = _local2[3]; _local7 = _local2[4]; game.setPos(_local3, _local4, _local5, _local6, _local7); } private function setAcceptChallenges(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); _local5.setAcceptChallenges(_local4); } private function systemMessage(_arg1:String):void{ new AlertScreen(new Message(_arg1)); } private function cancelChallenge(_arg1:String):void{ main.deleteableScreen.remove(); } private function setAcceptMessages(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); _local5.setAcceptMessages(_local4); } private function setLag(_arg1:Number):void{ game.setLag(_arg1); } private function failLogin(_arg1:String){ new AlertScreen(new Message(("Login failed: " + _arg1))); main.socket.remove(); } private function endGame(_arg1:String):void{ setScore(_arg1); game.recieveEndGame(); } public function addText(_arg1:String):void{ var _local2:Number; var _local3:String; inBuffer = (inBuffer + _arg1); _local2 = inBuffer.indexOf(EOL); while (_local2 != -1) { _local3 = inBuffer.substring(0, _local2); inBuffer = inBuffer.substr((_local2 + 1)); handleResponse(_local3); _local2 = inBuffer.indexOf(EOL); }; } private function startGame(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:String; var _local6:Player; var _local7:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = _local2[2]; _local6 = main.playerList.idToPlayer(_local3); _local7 = main.playerList.idToPlayer(_local4); main.changePage(new GamePage()); game = new Game(_local6, _local7, _local5); } private function setRank(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:Number; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); _local5.setRank(_local4); } private function ping(_arg1:String):void{ main.socket.recievePing(); } private function setPing(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:Number; var _local5:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = main.playerList.idToPlayer(_local3); _local5.setPingTime(_local4); } private function createPlayer(_arg1:String){ var _local2:Array; var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; var _local8:*; var _local9:*; var _local10:Player; _local2 = _arg1.split("`"); _local3 = _local2[0]; _local4 = _local2[1]; _local5 = _local2[2]; _local6 = _local2[3]; _local7 = _local2[4]; _local8 = _local2[5]; _local9 = _local2[6]; if (_local3 == this.id){ _local10 = new MePlayer(_local3); } else { _local10 = new Player(_local3); }; _local10.setName(_local4); _local10.setRank(_local5); _local10.setGroup(_local6); _local10.setAvailable(_local7); _local10.setAcceptMessages(_local8); _local10.setAcceptChallenges(_local9); if (_local3 == this.id){ main.changePage(new LobbyPage()); }; } } }//package
Section 83
//ComposeMessage (ComposeMessage) package { import fl.controls.*; import flash.display.*; import flash.events.*; import flash.text.*; public class ComposeMessage extends MovieClip { public var cancelButton:Button; public var toBox:TextField; public var textBox:TextArea; private var main:MovieClip; public var sendButton:Button; private var player:Player; public function ComposeMessage(_arg1:Player):void{ main = GetMain.main; super(); this.player = _arg1; toBox.text = ("Message to " + _arg1.getName()); sendButton.addEventListener(MouseEvent.CLICK, sendClick); cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); __setProp_sendButton_ComposeMessage_Layer1_1(); __setProp_cancelButton_ComposeMessage_Layer1_1(); } private function cancelClick(_arg1:MouseEvent):void{ remove(); } private function remove():void{ sendButton.removeEventListener(MouseEvent.CLICK, sendClick); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); } function __setProp_sendButton_ComposeMessage_Layer1_1(){ try { sendButton["componentInspectorSetting"] = true; } catch(e:Error) { }; sendButton.emphasized = false; sendButton.enabled = true; sendButton.label = "Send"; sendButton.labelPlacement = "right"; sendButton.selected = false; sendButton.toggle = false; sendButton.visible = true; try { sendButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_cancelButton_ComposeMessage_Layer1_1(){ try { cancelButton["componentInspectorSetting"] = true; } catch(e:Error) { }; cancelButton.emphasized = false; cancelButton.enabled = true; cancelButton.label = "Cancel"; cancelButton.labelPlacement = "right"; cancelButton.selected = false; cancelButton.toggle = false; cancelButton.visible = true; try { cancelButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function sendClick(_arg1:MouseEvent):void{ main.socket.write(((("message`" + player.getID()) + "`") + textBox.text)); remove(); } } }//package
Section 84
//Confirm (Confirm) package { import fl.controls.*; import flash.display.*; public dynamic class Confirm extends MovieClip { public var okButton:Button; public var cancelButton:Button; public var textBox:TextArea; public function Confirm(){ __setProp_cancelButton_Confirm_Layer1_1(); __setProp_textBox_Confirm_Layer1_1(); __setProp_okButton_Confirm_Layer1_1(); } function __setProp_textBox_Confirm_Layer1_1(){ try { textBox["componentInspectorSetting"] = true; } catch(e:Error) { }; textBox.condenseWhite = false; textBox.editable = false; textBox.enabled = true; textBox.horizontalScrollPolicy = "auto"; textBox.htmlText = ""; textBox.maxChars = 0; textBox.restrict = ""; textBox.text = ""; textBox.verticalScrollPolicy = "auto"; textBox.visible = true; textBox.wordWrap = true; try { textBox["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_cancelButton_Confirm_Layer1_1(){ try { cancelButton["componentInspectorSetting"] = true; } catch(e:Error) { }; cancelButton.emphasized = false; cancelButton.enabled = true; cancelButton.label = "Cancel"; cancelButton.labelPlacement = "right"; cancelButton.selected = false; cancelButton.toggle = false; cancelButton.visible = true; try { cancelButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_okButton_Confirm_Layer1_1(){ try { okButton["componentInspectorSetting"] = true; } catch(e:Error) { }; okButton.emphasized = false; okButton.enabled = true; okButton.label = "OK"; okButton.labelPlacement = "right"; okButton.selected = false; okButton.toggle = false; okButton.visible = true; try { okButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 85
//ConfirmBan (ConfirmBan) package { import flash.display.*; import flash.events.*; public class ConfirmBan extends Confirm { private var main:MovieClip; private var player:Player; public function ConfirmBan(_arg1:Player):void{ main = GetMain.main; super(); this.player = _arg1; textBox.text = (("Are you sure you want to BAN " + _arg1.getName()) + "?"); okButton.addEventListener(MouseEvent.CLICK, okClick); cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); } private function okClick(_arg1:MouseEvent):void{ main.socket.write(("ban`" + player.getID())); remove(); } private function cancelClick(_arg1:MouseEvent):void{ remove(); } private function remove():void{ okButton.removeEventListener(MouseEvent.CLICK, okClick); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); } } }//package
Section 86
//ConfirmFlag (ConfirmFlag) package { import flash.display.*; import flash.events.*; public class ConfirmFlag extends Confirm { private var main:MovieClip; private var player:Player; public function ConfirmFlag(_arg1:Player):void{ main = GetMain.main; super(); this.player = _arg1; textBox.text = (("Are you sure you want to flag " + _arg1.getName()) + " as abusive?"); okButton.addEventListener(MouseEvent.CLICK, okClick); cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); } private function okClick(_arg1:MouseEvent):void{ main.socket.write(("flag`" + player.getID())); remove(); } private function cancelClick(_arg1:MouseEvent):void{ remove(); } private function remove():void{ okButton.removeEventListener(MouseEvent.CLICK, okClick); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); } } }//package
Section 87
//ConfirmIgnore (ConfirmIgnore) package { import flash.events.*; public class ConfirmIgnore extends Confirm { private var player:Player; public function ConfirmIgnore(_arg1:Player):void{ this.player = _arg1; if (CommandHandler.ignoreArray.indexOf(_arg1) == -1){ textBox.text = (("Are you sure you want to ignore " + _arg1.getName()) + "?"); } else { textBox.text = (("Are you sure you want to un-ignore " + _arg1.getName()) + "?"); }; okButton.addEventListener(MouseEvent.CLICK, okClick); cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); } private function okClick(_arg1:MouseEvent):void{ var _local2:*; _local2 = CommandHandler.ignoreArray.indexOf(player); if (_local2 == -1){ CommandHandler.ignoreArray.push(player); } else { CommandHandler.ignoreArray.splice(_local2, 1); }; remove(); } private function cancelClick(_arg1:MouseEvent):void{ remove(); } private function remove():void{ okButton.removeEventListener(MouseEvent.CLICK, okClick); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); } } }//package
Section 88
//ConfirmPromote (ConfirmPromote) package { import flash.display.*; import flash.events.*; public class ConfirmPromote extends Confirm { private var main:MovieClip; private var player:Player; public function ConfirmPromote(_arg1:Player):void{ main = GetMain.main; super(); this.player = _arg1; textBox.text = (("Are you sure you want to PROMOTE " + _arg1.getName()) + "?"); okButton.addEventListener(MouseEvent.CLICK, okClick); cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); } private function okClick(_arg1:MouseEvent):void{ main.socket.write(("promote_to_moderator`" + player.getID())); remove(); } private function cancelClick(_arg1:MouseEvent):void{ remove(); } private function remove():void{ okButton.removeEventListener(MouseEvent.CLICK, okClick); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); } } }//package
Section 89
//ConnectingPage (ConnectingPage) package { import fl.controls.*; import flash.display.*; import flash.events.*; public class ConnectingPage extends MovieClip { public var cancelButton:Button; private var main:MovieClip; public function ConnectingPage(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:Number){ var userName = _arg1; var userPass = _arg2; var guest = _arg3; var port = _arg4; main = GetMain.main; super(); try { if (main.socket != null){ main.socket.remove(); main.socket = null; }; main.socket = new BounceSocket(userName, userPass, guest, port); } catch(e:Error) { new AlertScreen(new Message(("There was a problem connecting. \n " + e.message))); main.socket.remove(); }; cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); __setProp_cancelButton_ConnectingPage_Layer1_1(); } private function cancelClick(_arg1:MouseEvent){ main.socket.remove(); } public function remove():void{ cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); } function __setProp_cancelButton_ConnectingPage_Layer1_1(){ try { cancelButton["componentInspectorSetting"] = true; } catch(e:Error) { }; cancelButton.emphasized = false; cancelButton.enabled = true; cancelButton.label = "Cancel"; cancelButton.labelPlacement = "right"; cancelButton.selected = false; cancelButton.toggle = false; cancelButton.visible = true; try { cancelButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 90
//ControlPaddle (ControlPaddle) package { import flash.display.*; import flash.events.*; import flash.utils.*; public class ControlPaddle extends Paddle { private var note:MovieClip; private var sendUpdates:Boolean;// = true private var stageRef:Stage; private var main:MovieClip; public function ControlPaddle(_arg1:Number, _arg2:Number, _arg3:Game):void{ main = GetMain.main; sendUpdates = true; super(_arg1, _arg2, _arg3); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); note = new ThisIsYou(); addChild(note); setTimeout(removeNote, 3000); stageRef = stage; } private function setVariable(_arg1:String, _arg2:String){ if (this[_arg1] != _arg2){ this[_arg1] = _arg2; if (sendUpdates == true){ main.socket.write(((((((((("setPos`" + game.getCurFrame()) + "`") + left) + "`") + right) + "`") + x) + "`") + vel)); }; }; } private function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:Number; _local2 = _arg1.keyCode; if ((((_local2 == 39)) || ((_local2 == 68)))){ setVariable("right", "true"); }; if ((((_local2 == 37)) || ((_local2 == 65)))){ setVariable("left", "true"); }; } override public function remove():void{ stageRef.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); stageRef.removeEventListener(KeyboardEvent.KEY_UP, keyUpHandler); super.remove(); } private function keyUpHandler(_arg1:KeyboardEvent):void{ var _local2:Number; _local2 = _arg1.keyCode; if ((((_local2 == 39)) || ((_local2 == 68)))){ setVariable("right", "false"); }; if ((((_local2 == 37)) || ((_local2 == 65)))){ setVariable("left", "false"); }; } override public function bounce(_arg1:Ball):void{ _arg1.sendPos(); super.bounce(_arg1); } private function removeNote(){ removeChild(note); } override public function stopSending():void{ sendUpdates = false; } } }//package
Section 91
//DataGrid_skin (DataGrid_skin) package { import flash.display.*; public dynamic class DataGrid_skin extends MovieClip { } }//package
Section 92
//DataGridCellEditor_skin (DataGridCellEditor_skin) package { import flash.display.*; public dynamic class DataGridCellEditor_skin extends MovieClip { } }//package
Section 93
//Disc (Disc) package { import flash.display.*; public dynamic class Disc extends MovieClip { public var colorHolder:MovieClip; public function Disc(){ addFrameScript(0, frame1); } function frame1(){ colorHolder.addChild(new DiscColor("yellow")); colorHolder.addChild(new DiscColor("red")); colorHolder.addChild(new DiscColor("blue")); } } }//package
Section 94
//DiscColor (DiscColor) package { import flash.display.*; import flash.events.*; public class DiscColor extends MovieClip { private var xVel:Number;// = 0 private var maxDist:Number;// = 22 private var yVel:Number;// = 0 private var maxVel:Number;// = 2 private var accel:Number;// = 0.5 public function DiscColor(_arg1:String):void{ maxDist = 22; xVel = 0; yVel = 0; maxVel = 2; accel = 0.5; super(); gotoAndStop(_arg1); addEventListener(Event.ENTER_FRAME, go); x = (((Math.random() * maxDist) * 2) - maxDist); y = (((Math.random() * maxDist) * 2) - maxDist); } public function remove():void{ removeEventListener(Event.ENTER_FRAME, go); parent.removeChild(this); } private function go(_arg1:Event):void{ xVel = (xVel + ((Math.random() * accel) - (accel / 2))); yVel = (yVel + ((Math.random() * accel) - (accel / 2))); if (xVel > maxVel){ xVel = maxVel; }; if (xVel < -(maxVel)){ xVel = -(maxVel); }; if (yVel > maxVel){ yVel = maxVel; }; if (yVel < -(maxVel)){ yVel = -(maxVel); }; x = (x + xVel); y = (y + yVel); if (x > maxDist){ x = maxDist; xVel = (xVel * -1); }; if (x < -(maxDist)){ x = -(maxDist); xVel = (xVel * -1); }; if (y > maxDist){ y = maxDist; yVel = (yVel * -1); }; if (y < -(maxDist)){ y = -(maxDist); yVel = (yVel * -1); }; } } }//package
Section 95
//Dot (Dot) package { import flash.display.*; public dynamic class Dot extends MovieClip { public function Dot(){ addFrameScript(0, frame1, 45, frame46); } function frame1(){ stop(); } function frame46(){ stop(); } } }//package
Section 96
//focusRectSkin (focusRectSkin) package { import flash.display.*; public dynamic class focusRectSkin extends MovieClip { } }//package
Section 97
//Game (Game) package { import flash.display.*; import flash.events.*; import flash.utils.*; public class Game extends MovieClip { private var xVel:Number; private var rPlayer:Player; private var curFrame:Number;// = 0 private var waitFrame:Boolean;// = false private var doubleFrame:Boolean;// = false private var meFinished:Boolean;// = false private var averageLag:Number;// = 0 private var countdownFrames:Number;// = 0 private var lagRecords:Number;// = 0 private var mapArray:Array; private var curBall:Number;// = 0 private var yVel:Number; private var lPlayer:Player; private var recieveEndGameTimeout:uint; private var lagInterval:uint; private var rPaddle:Paddle; private var totLag:Number;// = 0 private var mePlayer:Player; private var frame:Number; private var ballArray:Array; private var oldMuteY:Number; private var main:MovieClip; private var remotePlayer:Player; private var lPaddle:Paddle; public function Game(_arg1:Player, _arg2:Player, _arg3:String):void{ countdownFrames = 0; curFrame = 0; curBall = 0; ballArray = new Array(); waitFrame = false; doubleFrame = false; lagRecords = 0; totLag = 0; averageLag = 0; lagInterval = setInterval(sendLag, 1000); meFinished = false; main = GetMain.main; oldMuteY = main.muteButton.y; super(); this.lPlayer = _arg1; this.rPlayer = _arg2; if (_arg1 == main.me){ mePlayer = _arg1; remotePlayer = _arg2; } else { mePlayer = _arg2; remotePlayer = _arg1; }; this.mapArray = _arg3.split(";"); setTimeout(init, 1000); addEventListener(Event.ENTER_FRAME, countdown); main.muteButton.y = 60; } private function init():void{ lPlayer.startGame("left", rPlayer); rPlayer.startGame("right", lPlayer); lPaddle = lPlayer.makePaddle(125, 360, this); rPaddle = rPlayer.makePaddle(375, 360, this); nextMapSeg(); } private function stopSending():void{ clearInterval(lagInterval); lPaddle.stopSending(); rPaddle.stopSending(); } private function nextMapSeg(){ var _local1:String; var _local2:Array; if (mapArray.length > 1){ _local1 = mapArray.shift(); _local2 = _local1.split(","); frame = _local2[0]; xVel = _local2[1]; yVel = _local2[2]; } else { removeEventListener(Event.ENTER_FRAME, go); addEventListener(Event.ENTER_FRAME, wait); }; } public function setPos(_arg1:Number, _arg2:String, _arg3:String, _arg4:Number, _arg5:Number):void{ var _local6:Number; lPaddle.setPos(_arg1, curFrame, _arg2, _arg3, _arg4, _arg5); rPaddle.setPos(_arg1, curFrame, _arg2, _arg3, _arg4, _arg5); _local6 = (curFrame - _arg1); recordLag(_local6); } public function abortGame():void{ meFinished = true; recieveEndGame(); } public function getCurFrame():Number{ return (curFrame); } private function wait(_arg1:Event){ curFrame++; if (main.curPage.ballHolder.numChildren <= 0){ endGame(); }; } private function recordLag(_arg1):void{ totLag = (totLag + _arg1); lagRecords++; } public function recieveEndGame():void{ var _local1:String; if ((meFinished = false)){ endGame(); }; if (lPlayer.getScore() > rPlayer.getScore()){ _local1 = lPlayer.getName(); } else { if (lPlayer.getScore() < rPlayer.getScore()){ _local1 = rPlayer.getName(); } else { _local1 = "It's a tie"; }; }; new AlertScreen(new VictoryMessage(_local1)); remove(); } public function setBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number){ var _local7:*; var _local8:Number; _local7 = ballArray[_arg1]; if (_local7 != null){ _local7.setBounce(_arg2, curFrame, _arg3, _arg4, _arg5, _arg6); }; _local8 = (curFrame - _arg2); recordLag(_local8); } private function scoreRight(){ rPlayer.scorePoint(); main.curPage.leftFlash.gotoAndPlay("on"); } private function endGame():void{ meFinished = true; main.socket.write(("end_game`" + mePlayer.getScore())); recieveEndGameTimeout = setTimeout(recieveEndGame, 5000); stopSending(); removeEventListener(Event.ENTER_FRAME, wait); } private function countdown(_arg1:Event){ countdownFrames++; if (countdownFrames >= 120){ addEventListener(Event.ENTER_FRAME, go); removeEventListener(Event.ENTER_FRAME, countdown); }; } public function removeBall(_arg1:Ball){ _arg1.remove(); ballArray[_arg1.getID] = null; } public function remove(){ var _local1:Ball; var _local2:int; var _local3:int; main.muteButton.y = oldMuteY; removeEventListener(Event.ENTER_FRAME, countdown); removeEventListener(Event.ENTER_FRAME, wait); removeEventListener(Event.ENTER_FRAME, go); clearInterval(lagInterval); clearTimeout(recieveEndGameTimeout); _local2 = ballArray.length; _local3 = 0; while (_local3 < _local2) { _local1 = ballArray[_local3]; if (_local1 != null){ _local1.remove(); }; ballArray[_local3] = null; _local3++; }; lPaddle.remove(); rPaddle.remove(); } public function confirmScore(_arg1:Number, _arg2:String){ var _local3:Ball; _local3 = ballArray[_arg1]; _local3.confirmScore(_arg2); } public function score(_arg1:String):void{ if (_arg1 == "right"){ scoreRight(); } else { scoreLeft(); }; main.socket.write(("set_score`" + mePlayer.getScore())); } private function step(){ curFrame++; if (curFrame > frame){ addBall(); nextMapSeg(); }; } public function setLag(_arg1:Number):void{ if (_arg1 < averageLag){ waitFrame = true; }; if (_arg1 > averageLag){ doubleFrame = true; }; } private function scoreLeft(){ lPlayer.scorePoint(); main.curPage.rightFlash.gotoAndPlay("on"); } private function addBall(){ var _local1:Ball; curBall++; _local1 = new Ball(curBall, this, 250, 65, xVel, yVel, lPaddle, rPaddle); ballArray[curBall] = _local1; } private function go(_arg1:Event){ if (waitFrame == false){ step(); if (doubleFrame == true){ step(); }; }; doubleFrame = false; waitFrame = false; } private function sendLag():void{ if (lagRecords > 1){ averageLag = Math.round((totLag / lagRecords)); main.socket.write(("setLag`" + averageLag)); totLag = 0; lagRecords = 0; }; } } }//package
Section 98
//GamePage (GamePage) package { import flash.display.*; import flash.media.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.geom.*; import flash.filters.*; import flash.system.*; import flash.ui.*; import flash.errors.*; import adobe.utils.*; import flash.accessibility.*; import flash.external.*; import flash.printing.*; import flash.xml.*; public dynamic class GamePage extends MovieClip { public var ballBitmap:BallBitmap; public var leftFlash:MovieClip; public var leftName:TextField; public var rightFlash:MovieClip; public var bgHolder:MovieClip; public var ballHolder:MovieClip; public var main:MovieClip; public var paddleHolder:MovieClip; public var rightName:TextField; public var leftScore:TextField; public var rightScore:TextField; public var colorBG:ColorBG; public function GamePage(){ addFrameScript(0, frame1); } function frame1(){ main = GetMain.main; leftFlash.stop(); rightFlash.stop(); ballBitmap = new BallBitmap(ballHolder); bgHolder.addChild(ballBitmap); colorBG = new ColorBG(); this.addChildAt(colorBG, 0); if (main.deleteableScreen != null){ main.deleteableScreen.remove(); }; } public function remove():void{ colorBG.remove(); ballBitmap.remove(); } } }//package
Section 99
//GetMain (GetMain) package { import flash.display.*; public class GetMain { public static var main:MovieClip; } }//package
Section 100
//GoodScore (GoodScore) package { import flash.media.*; public dynamic class GoodScore extends Sound { } }//package
Section 101
//HeaderRenderer_disabledSkin (HeaderRenderer_disabledSkin) package { import flash.display.*; public dynamic class HeaderRenderer_disabledSkin extends MovieClip { } }//package
Section 102
//HeaderRenderer_downSkin (HeaderRenderer_downSkin) package { import flash.display.*; public dynamic class HeaderRenderer_downSkin extends MovieClip { } }//package
Section 103
//HeaderRenderer_overSkin (HeaderRenderer_overSkin) package { import flash.display.*; public dynamic class HeaderRenderer_overSkin extends MovieClip { } }//package
Section 104
//HeaderRenderer_selectedDisabledSkin (HeaderRenderer_selectedDisabledSkin) package { import flash.display.*; public dynamic class HeaderRenderer_selectedDisabledSkin extends MovieClip { } }//package
Section 105
//HeaderRenderer_selectedDownSkin (HeaderRenderer_selectedDownSkin) package { import flash.display.*; public dynamic class HeaderRenderer_selectedDownSkin extends MovieClip { } }//package
Section 106
//HeaderRenderer_selectedOverSkin (HeaderRenderer_selectedOverSkin) package { import flash.display.*; public dynamic class HeaderRenderer_selectedOverSkin extends MovieClip { } }//package
Section 107
//HeaderRenderer_selectedUpSkin (HeaderRenderer_selectedUpSkin) package { import flash.display.*; public dynamic class HeaderRenderer_selectedUpSkin extends MovieClip { } }//package
Section 108
//HeaderRenderer_upSkin (HeaderRenderer_upSkin) package { import flash.display.*; public dynamic class HeaderRenderer_upSkin extends MovieClip { } }//package
Section 109
//HeaderSortArrow_ascIcon (HeaderSortArrow_ascIcon) package { import flash.display.*; public dynamic class HeaderSortArrow_ascIcon extends MovieClip { } }//package
Section 110
//HeaderSortArrow_descIcon (HeaderSortArrow_descIcon) package { import flash.display.*; public dynamic class HeaderSortArrow_descIcon extends MovieClip { } }//package
Section 111
//InitializePage (InitializePage) package { import flash.display.*; import flash.media.*; import flash.events.*; public class InitializePage extends MovieClip { private var introChannel:SoundChannel; public var anim:MovieClip; private var main:MovieClip; public function InitializePage():void{ main = GetMain.main; super(); main.addEventListener(MouseEvent.MOUSE_DOWN, skipIntro); introChannel = Sounds.startSound(new LogoIntroMusic()); } function skipIntro(_arg1:MouseEvent):void{ main.changePage(new LoginPage()); introChannel.stop(); } public function remove():void{ main.removeEventListener(MouseEvent.MOUSE_DOWN, skipIntro); anim.stop(); } } }//package
Section 112
//JiggminLogo (JiggminLogo) package { import flash.display.*; public dynamic class JiggminLogo extends BitmapData { public function JiggminLogo(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 113
//List_skin (List_skin) package { import flash.display.*; public dynamic class List_skin extends MovieClip { } }//package
Section 114
//ListName (ListName) package { import flash.display.*; import flash.events.*; import flash.text.*; public class ListName extends MovieClip { public var bg:MovieClip; public var nameBox:TextField; private var upColor:Number;// = 0x666666 private var player:Player; private var overColor:Number;// = 0 public var pingBox:TextField; public var rankBox:TextField; public function ListName(_arg1:Player):void{ upColor = 0x666666; overColor = 0; super(); this.player = _arg1; addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler); addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler); addEventListener(MouseEvent.CLICK, mouseClickHandler); bg.visible = false; buttonMode = true; mouseChildren = false; } private function becomeColor(_arg1:Number){ nameBox.textColor = _arg1; } public function setName(_arg1:String):void{ nameBox.text = _arg1; } public function setColor(_arg1:Number):void{ upColor = _arg1; becomeColor(upColor); } public function remove():void{ player = null; removeEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler); removeEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler); removeEventListener(MouseEvent.CLICK, mouseClickHandler); } private function mouseOutHandler(_arg1:MouseEvent):void{ becomeColor(upColor); bg.visible = false; } public function setRank(_arg1:Number):void{ rankBox.text = Math.round(_arg1).toString(); } public function setPingTime(_arg1:Number):void{ pingBox.text = _arg1.toString(); if (_arg1 < 100){ pingBox.textColor = 441643; } else { if (_arg1 < 250){ pingBox.textColor = 6847797; } else { pingBox.textColor = 16189705; }; }; } private function mouseClickHandler(_arg1:MouseEvent):void{ new AlertScreen(new PlayerOptions(player)); } private function mouseOverHandler(_arg1:MouseEvent):void{ becomeColor(overColor); bg.visible = true; } } }//package
Section 115
//LobbyPage (LobbyPage) package { import fl.controls.*; import flash.display.*; import flash.events.*; import flash.text.*; public class LobbyPage extends MovieClip { public var scrollBar:MovieClip; public var chatCover:MovieClip; private var chat:Chat; public var logoutButton:SimpleButton; public var chatInput:TextInput; public var chatBox:TextArea; public var nameBox:TextField; public var chatYN:MovieClip; public var InstanceName_0:MovieClip; public var messageYN:MovieClip; private var me:MePlayer; public var InstanceName_1:MovieClip; private var socket:BounceSocket; public var playersBox:TextField; private var main:MovieClip; public var randomButton:Button; public var challengeYN:MovieClip; public var listHolder:MovieClip; public function LobbyPage():void{ main = GetMain.main; socket = main.socket; chat = main.chat; me = main.me; super(); listHolder.addChild(main.playerList); main.playerList.resume(this); chat.setLobbyPage(this); chat.setInLobby(true); me.setLobbyPage(this); me.setInLobby(true); socket.write("set_available`true"); chatCover.stop(); messageYN.yesButton.addEventListener(MouseEvent.CLICK, messageY); messageYN.noButton.addEventListener(MouseEvent.CLICK, messageN); challengeYN.yesButton.addEventListener(MouseEvent.CLICK, challengeY); challengeYN.noButton.addEventListener(MouseEvent.CLICK, challengeN); chatYN.yesButton.addEventListener(MouseEvent.CLICK, chatY); chatYN.noButton.addEventListener(MouseEvent.CLICK, chatN); logoutButton.addEventListener(MouseEvent.CLICK, logoutClick); randomButton.addEventListener(MouseEvent.CLICK, randomClick); chatBox.addEventListener(TextEvent.LINK, nameClick); chatInput.addEventListener(KeyboardEvent.KEY_DOWN, chatPress); __setProp_chatBox_LobbyPage_stuff_1(); __setProp_chatInput_LobbyPage_stuff_1(); __setProp_randomButton_LobbyPage_stuff_1(); } private function chatY(_arg1:MouseEvent):void{ main.chat.show(); } function __setProp_chatInput_LobbyPage_stuff_1(){ try { chatInput["componentInspectorSetting"] = true; } catch(e:Error) { }; chatInput.displayAsPassword = false; chatInput.editable = true; chatInput.enabled = true; chatInput.maxChars = 75; chatInput.restrict = ""; chatInput.text = ""; chatInput.visible = true; try { chatInput["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function logoutClick(_arg1:MouseEvent):void{ socket.remove(); main.changePage(new LoginPage()); } function __setProp_chatBox_LobbyPage_stuff_1(){ try { chatBox["componentInspectorSetting"] = true; } catch(e:Error) { }; chatBox.condenseWhite = false; chatBox.editable = false; chatBox.enabled = true; chatBox.horizontalScrollPolicy = "auto"; chatBox.htmlText = ""; chatBox.maxChars = 0; chatBox.restrict = ""; chatBox.text = ""; chatBox.verticalScrollPolicy = "auto"; chatBox.visible = true; chatBox.wordWrap = true; try { chatBox["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function messageN(_arg1:MouseEvent):void{ socket.write("set_accept_messages`false"); } private function messageY(_arg1:MouseEvent):void{ socket.write("set_accept_messages`true"); } public function setNameBox(_arg1:String, _arg2:String, _arg3:String, _arg4:Boolean):void{ nameBox.htmlText = _arg1; if (_arg2 == "false"){ challengeYN.outline_mc.x = 61; }; if (_arg3 == "false"){ messageYN.outline_mc.x = 61; }; if (_arg4 == false){ chatYN.outline_mc.x = 61; }; } private function challengeY(_arg1:MouseEvent):void{ socket.write("set_accept_challenges`true"); } private function challengeN(_arg1:MouseEvent):void{ socket.write("set_accept_challenges`false"); } private function randomClick(_arg1:MouseEvent):void{ new AlertScreen(new RandomMatch()); } private function nameClick(_arg1:TextEvent):void{ var _local2:String; var _local3:Player; _local2 = _arg1.text; _local3 = main.playerList.idToPlayer(_local2); new AlertScreen(new PlayerOptions(_local3)); } public function remove():void{ messageYN.yesButton.removeEventListener(MouseEvent.CLICK, messageY); messageYN.noButton.removeEventListener(MouseEvent.CLICK, messageN); challengeYN.yesButton.removeEventListener(MouseEvent.CLICK, challengeY); challengeYN.noButton.removeEventListener(MouseEvent.CLICK, challengeN); chatYN.yesButton.removeEventListener(MouseEvent.CLICK, chatY); chatYN.noButton.removeEventListener(MouseEvent.CLICK, chatN); logoutButton.removeEventListener(MouseEvent.CLICK, logoutClick); randomButton.removeEventListener(MouseEvent.CLICK, randomClick); chatBox.removeEventListener(TextEvent.LINK, nameClick); chatInput.removeEventListener(KeyboardEvent.KEY_DOWN, chatPress); main.chat.setInLobby(false); main.me.setInLobby(false); main.playerList.pause(); } function __setProp_randomButton_LobbyPage_stuff_1(){ try { randomButton["componentInspectorSetting"] = true; } catch(e:Error) { }; randomButton.emphasized = false; randomButton.enabled = true; randomButton.label = "RandomMatch"; randomButton.labelPlacement = "right"; randomButton.selected = false; randomButton.toggle = false; randomButton.visible = true; try { randomButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function chatPress(_arg1:KeyboardEvent):void{ var _local2:String; if (_arg1.keyCode == 13){ _local2 = chatInput.text; if (_local2.length > 0){ main.socket.write(("chat`" + _local2)); chatInput.text = ""; }; }; } public function setChat(_arg1:String):void{ chatBox.htmlText = _arg1; chatBox.verticalScrollPosition = chatBox.maxVerticalScrollPosition; } private function chatN(_arg1:MouseEvent):void{ main.chat.hide(); } } }//package
Section 116
//LoginPage (LoginPage) package { import fl.controls.*; import flash.display.*; import flash.events.*; import fl.data.*; import flash.net.*; public class LoginPage extends MovieClip { public var go_bt:Button; public var j1; public var collObj1:DataProvider; public var passBox1:TextInput; public var passBox2:TextInput; private var port:Number;// = 9151 public var collProp1:Object; public var musicButton:SimpleButton; private var main:MovieClip; public var itemObj1:SimpleCollectionItem; public var createAccount_bt:Button; public var gameButton:SimpleButton; public var collProps1:Array; public var serverOptions:ComboBox; public var login_bt:Button; public var i1:int; public var nameBox1:TextInput; public var nameBox2:TextInput; public function LoginPage():void{ main = GetMain.main; port = 9151; super(); addFrameScript(0, frame1); main.playerList.clearList(); main.chat.clearMessages(); if (main.deleteableScreen != null){ main.deleteableScreen.remove(); }; login_bt.addEventListener(MouseEvent.MOUSE_DOWN, login); createAccount_bt.addEventListener(MouseEvent.MOUSE_DOWN, createAccount); go_bt.addEventListener(MouseEvent.MOUSE_DOWN, loginGuest); musicButton.addEventListener(MouseEvent.MOUSE_DOWN, musicPress); gameButton.addEventListener(MouseEvent.MOUSE_DOWN, gamePress); __setProp_go_bt_LoginPage_content_1(); __setProp_serverOptions_LoginPage_content_1(); __setProp_login_bt_LoginPage_content_1(); __setProp_passBox2_LoginPage_content_1(); __setProp_createAccount_bt_LoginPage_content_1(); __setProp_passBox1_LoginPage_content_1(); } private function loginGuest(_arg1:MouseEvent){ main.changePage(new ConnectingPage("", "", true, (port + serverOptions.selectedIndex))); } private function musicPress(_arg1:MouseEvent):void{ var _local2:URLRequest; _local2 = new URLRequest("http://flashgigant.newgrounds.com/"); navigateToURL(_local2); } function __setProp_passBox1_LoginPage_content_1(){ try { passBox1["componentInspectorSetting"] = true; } catch(e:Error) { }; passBox1.displayAsPassword = true; passBox1.editable = true; passBox1.enabled = true; passBox1.maxChars = 0; passBox1.restrict = ""; passBox1.text = ""; passBox1.visible = true; try { passBox1["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_login_bt_LoginPage_content_1(){ try { login_bt["componentInspectorSetting"] = true; } catch(e:Error) { }; login_bt.emphasized = false; login_bt.enabled = true; login_bt.label = "Log In"; login_bt.labelPlacement = "right"; login_bt.selected = false; login_bt.toggle = false; login_bt.visible = true; try { login_bt["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_go_bt_LoginPage_content_1(){ try { go_bt["componentInspectorSetting"] = true; } catch(e:Error) { }; go_bt.emphasized = false; go_bt.enabled = true; go_bt.label = "Go"; go_bt.labelPlacement = "right"; go_bt.selected = false; go_bt.toggle = false; go_bt.visible = true; try { go_bt["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function login(_arg1:MouseEvent){ var _local2:String; var _local3:String; _local2 = nameBox2.text; _local3 = passBox2.text; main.changePage(new ConnectingPage(_local2, _local3, false, (port + serverOptions.selectedIndex))); } function frame1(){ serverOptions.selectedIndex = GetMain.main.serverID; } private function gamePress(_arg1:MouseEvent):void{ var _local2:URLRequest; _local2 = new URLRequest("http://jiggmin.com"); navigateToURL(_local2); } public function remove():void{ main.serverID = serverOptions.selectedIndex; trace(("remove: " + main.serverID)); login_bt.removeEventListener(MouseEvent.MOUSE_DOWN, login); createAccount_bt.removeEventListener(MouseEvent.MOUSE_DOWN, createAccount); go_bt.removeEventListener(MouseEvent.MOUSE_DOWN, loginGuest); } private function createAccount(_arg1:MouseEvent){ var userName:String; var userPass:String; var loader:URLLoader; var request:URLRequest; var createAccountResult:Function; var e = _arg1; createAccountResult = function (_arg1:Event){ var _local2:URLLoader; _local2 = URLLoader(_arg1.target); if (_local2.data != "success"){ new AlertScreen(new Message(_local2.data)); } else { main.changePage(new ConnectingPage(userName, userPass, false, (port + serverOptions.selectedIndex))); }; }; userName = nameBox1.text; userPass = passBox1.text; loader = new URLLoader(); loader.addEventListener(Event.COMPLETE, createAccountResult); request = new URLRequest(("http://jiggmin2.com/register_user.php?" + Math.ceil((Math.random() * 999999)))); request.data = ((("name=" + userName) + "&password=") + userPass); request.method = "POST"; loader.load(request); } function __setProp_passBox2_LoginPage_content_1(){ try { passBox2["componentInspectorSetting"] = true; } catch(e:Error) { }; passBox2.displayAsPassword = true; passBox2.editable = true; passBox2.enabled = true; passBox2.maxChars = 0; passBox2.restrict = ""; passBox2.text = ""; passBox2.visible = true; try { passBox2["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_serverOptions_LoginPage_content_1(){ try { serverOptions["componentInspectorSetting"] = true; } catch(e:Error) { }; collObj1 = new DataProvider(); collProps1 = [{label:"Derron", data:9151}]; i1 = 0; while (i1 < collProps1.length) { itemObj1 = new SimpleCollectionItem(); collProp1 = collProps1[i1]; for (j1 in collProp1) { itemObj1[j1] = collProp1[j1]; }; collObj1.addItem(itemObj1); i1++; }; serverOptions.dataProvider = collObj1; serverOptions.editable = false; serverOptions.enabled = true; serverOptions.prompt = ""; serverOptions.restrict = ""; serverOptions.rowCount = 3; serverOptions.visible = true; try { serverOptions["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_createAccount_bt_LoginPage_content_1(){ try { createAccount_bt["componentInspectorSetting"] = true; } catch(e:Error) { }; createAccount_bt.emphasized = false; createAccount_bt.enabled = true; createAccount_bt.label = "Create Account"; createAccount_bt.labelPlacement = "right"; createAccount_bt.selected = false; createAccount_bt.toggle = false; createAccount_bt.visible = true; try { createAccount_bt["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 117
//LogoIntroMusic (LogoIntroMusic) package { import flash.media.*; public dynamic class LogoIntroMusic extends Sound { } }//package
Section 118
//Maths (Maths) package { public class Maths { public static function RAD_DEG():Number{ return ((180 / Math.PI)); } public static function formatNumberWithCommas(_arg1){ var _local2:String; _local2 = (_arg1 + ""); if (_local2.length < 4){ return (_local2); }; return (((formatNumberWithCommas(_local2.slice(0, -3)) + ",") + _local2.slice(-3))); } public static function applyLimits(_arg1:Number, _arg2:Number, _arg3:Number):Number{ if (_arg1 < _arg2){ _arg1 = _arg2; }; if (_arg1 > _arg3){ _arg1 = _arg3; }; return (_arg1); } public static function pythag(_arg1:Number, _arg2:Number):Number{ return (Math.sqrt(((_arg1 * _arg1) + (_arg2 * _arg2)))); } public static function DEG_RAD():Number{ return ((Math.PI / 180)); } public static function rotDist(_arg1, _arg2){ var _local3:Number; _local3 = (_arg1 - _arg2); if (_local3 > 180){ _local3 = (-360 + _local3); }; if (_local3 < -180){ _local3 = (360 + _local3); }; return (_local3); } } }//package
Section 119
//MePlayer (MePlayer) package { public class MePlayer extends Player { private var lobbyPage:LobbyPage; private var inLobby:Boolean;// = false public function MePlayer(_arg1:String):void{ inLobby = false; super(_arg1); main.me = this; } override public function setName(_arg1:String):void{ super.setName(_arg1); setNameBox(); } public function setInLobby(_arg1:Boolean):void{ inLobby = _arg1; if (_arg1 == true){ setNameBox(); }; } override public function scorePoint():void{ setScore((score + 1)); Sounds.startSound(new GoodScore(), 0.5); main.socket.write(("set_score`" + score)); } public function setNameBox():void{ var _local1:String; var _local2:Boolean; if (inLobby){ _local1 = (((((("Welcome, <font size='14' color='#000000'>" + name) + "</font>! <br/>Rank: ") + rank) + " (") + rankGroup) + ")"); _local2 = main.chat.showing; lobbyPage.setNameBox(_local1, acceptChallenges, acceptMessages, _local2); }; } override public function setRank(_arg1:Number):void{ super.setRank(_arg1); setNameBox(); } public function setLobbyPage(_arg1:LobbyPage):void{ lobbyPage = _arg1; } override public function makePaddle(_arg1:Number, _arg2:Number, _arg3:Game):Paddle{ var _local4:ControlPaddle; _local4 = new ControlPaddle(_arg1, _arg2, _arg3); return (_local4); } } }//package
Section 120
//Message (Message) package { import fl.controls.*; import flash.display.*; import flash.events.*; public class Message extends MovieClip { public var textBox:TextArea; public var ok_bt:Button; public function Message(_arg1:String):void{ textBox.text = _arg1; ok_bt.addEventListener(MouseEvent.MOUSE_DOWN, die); __setProp_ok_bt_Message_Layer2_1(); __setProp_textBox_Message_Layer2_1(); } private function die(_arg1:MouseEvent):void{ ok_bt.removeEventListener(MouseEvent.MOUSE_DOWN, die); AlertScreen(parent.parent).gotoAndPlay("die"); } function __setProp_textBox_Message_Layer2_1(){ try { textBox["componentInspectorSetting"] = true; } catch(e:Error) { }; textBox.condenseWhite = false; textBox.editable = false; textBox.enabled = true; textBox.horizontalScrollPolicy = "auto"; textBox.htmlText = ""; textBox.maxChars = 0; textBox.restrict = ""; textBox.text = ""; textBox.verticalScrollPolicy = "auto"; textBox.visible = true; textBox.wordWrap = true; try { textBox["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_ok_bt_Message_Layer2_1(){ try { ok_bt["componentInspectorSetting"] = true; } catch(e:Error) { }; ok_bt.emphasized = false; ok_bt.enabled = true; ok_bt.label = "OK"; ok_bt.labelPlacement = "right"; ok_bt.selected = false; ok_bt.toggle = false; ok_bt.visible = true; try { ok_bt["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 121
//MochiAd (MochiAd) package { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiAd { public static function getVersion():String{ return ("2.1"); } public static function showTimedAd(_arg1:Object):void{ MochiAd.showInterLevelAd(_arg1); } public static function _allowDomains(_arg1:String):String{ var _local2:String; _local2 = _arg1.split("/")[2].split(":")[0]; Security.allowDomain("*"); Security.allowDomain(_local2); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(_local2); return (_local2); } public static function load(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var depth:Number; var mc:MovieClip; var wh:Array; var lv:URLVariables; var k:String; var server:String; var hostname:String; var lc:LocalConnection; var name:String; var loader:Loader; var f:Function; var g:Function; var req:URLRequest; var v:Object; var options = _arg1; DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; if (!MochiAd._isNetworkAvailable()){ return (null); }; if (clip._mochiad_loaded){ return (null); }; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, "_mochiad", depth); wh = MochiAd._getRes(options, clip); options.res = ((wh[0] + "x") + wh[1]); options.server = (options.server + options.id); delete options.id; clip._mochiad_loaded = true; if (clip.loaderInfo.loaderURL.indexOf("http") == 0){ options.as3_swf = clip.loaderInfo.loaderURL; }; lv = new URLVariables(); for (k in options) { v = options[k]; if (!(v is Function)){ lv[k] = v; }; }; server = lv.server; delete lv.server; hostname = _allowDomains(server); lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.lc = lc; lv.lc = name; lv.st = getTimer(); loader = new Loader(); f = function (_arg1:Object):void{ mc._mochiad_ctr_failed = true; }; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f); g = function (_arg1:Object):void{ MochiAd.unload(clip); }; loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g); req = new URLRequest((server + ".swf")); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.load(req); mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function sendHighScore(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{ var _local4:MovieClip; _local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id}); if (!_local4){ return (false); }; _local4.doSend(["sendHighScore", _arg1], _arg2, _arg3); return (true); } public static function _parseOptions(_arg1:Object, _arg2:Object):Object{ var _local3:Object; var _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; if (_arg1){ for (_local4 in _arg1) { _local3[_local4] = _arg1[_local4]; }; }; _arg1 = _local3.clip.loaderInfo.parameters.mochiad_options; if (_arg1){ _local5 = _arg1.split("&"); _local6 = 0; while (_local6 < _local5.length) { _local7 = _local5[_local6].split("="); _local3[unescape(_local7[0])] = unescape(_local7[1]); _local6++; }; }; return (_local3); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function unload(_arg1:Object):Boolean{ if (((_arg1.clip) && (_arg1.clip._mochiad))){ _arg1 = _arg1.clip; }; if (!_arg1._mochiad){ return (false); }; if (_arg1._mochiad.onUnload){ _arg1._mochiad.onUnload(); }; _arg1.removeChild(_arg1._mochiad); delete _arg1._mochiad_loaded; delete _arg1._mochiad; return (true); } public static function showInterLevelAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{ this.clip.stop(); }, ad_finished:function ():void{ this.clip.play(); }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.started = getTimer(); _local2.ad_msec = (_arg1 - 250); }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = _local1.loaderInfo.bytesTotal; if ((((_local4 > 0)) || (("number" == "undefined")))){ chk.showing = true; chk.started = getTimer(); } else { if (_local2 > chk.ad_timeout){ _local3 = true; }; }; }; if ((((_local2 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){ _local3 = true; }; if (_local3){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _getRes(_arg1:Object, _arg2:Object):Array{ var _local3:Object; var _local4:Number; var _local5:Number; var _local6:Array; _local3 = _arg2.getBounds(_arg2.root); _local4 = 0; _local5 = 0; if (typeof(_arg1.res) != "undefined"){ _local6 = _arg1.res.split("x"); _local4 = parseFloat(_local6[0]); _local5 = parseFloat(_local6[1]); } else { _local4 = (_local3.xMax - _local3.xMin); _local5 = (_local3.yMax - _local3.yMin); }; if ((((_local4 == 0)) || ((_local5 == 0)))){ _local4 = _arg2.stage.stageWidth; _local5 = _arg2.stage.stageHeight; }; return ([_local4, _local5]); } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{ var _local4:MovieClip; _local4 = new MovieClip(); if (((false) && (_arg3))){ _arg1.addChildAt(_local4, _arg3); } else { _arg1.addChild(_local4); }; _arg1[_arg2] = _local4; _local4["_name"] = _arg2; return (_local4); } public static function _loadCommunicator(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var clipname:String; var server:String; var depth:Number; var mc:MovieClip; var lv:URLVariables; var k:String; var lc:LocalConnection; var name:String; var req:URLRequest; var loader:Loader; var options = _arg1; DEFAULTS = {com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; clipname = ("_mochiad_com_" + options.id); if (!MochiAd._isNetworkAvailable()){ return (null); }; if (clip[clipname]){ return (clip[clipname]); }; server = (options.com_server + options.id); MochiAd._allowDomains(server); delete options.id; delete options.com_server; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, clipname, depth); lv = new URLVariables(); for (k in options) { lv[k] = options[k]; }; lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.name = name; mc.lc = lc; lv.lc = name; mc._id = 0; mc._queue = []; mc.rpcResult = function (_arg1:Object):void{ var _local3:Array; var _local4:Array; var _local5:Number; var _local6:Object; var _local7:Object; _arg1 = parseInt(_arg1.toString()); _local3 = mc._callbacks[_arg1]; if (typeof(_local3) == "undefined"){ return; }; delete mc._callbacks[_arg1]; _local4 = []; _local5 = 2; while (_local5 < _local3.length) { _local4.push(_local3[_local5]); _local5++; }; _local5 = 1; while (_local5 < arguments.length) { _local4.push(arguments[_local5]); _local5++; }; _local6 = _local3[1]; _local7 = _local3[0]; if (((_local7) && ((typeof(_local6) == "string")))){ _local6 = _local7[_local6]; }; if (typeof(_local6) == "function"){ _local6.apply(_local7, _local4); }; }; mc._didConnect = function (_arg1:String):void{ var _local2:Array; var _local3:Function; var _local4:Number; var _local5:Array; mc._endpoint = _arg1; _local2 = mc._queue; delete mc._queue; _local3 = mc.doSend; _local4 = 0; while (_local4 < _local2.length) { _local5 = _local2[_local4]; _local3.apply(this, _local5); _local4++; }; }; mc.doSend = function (_arg1:Array, _arg2:Object, _arg3:Object):void{ var _local5:Number; var _local6:LocalConnection; var _local7:Array; var _local8:Number; if (mc._endpoint == null){ _local7 = []; _local8 = 0; while (_local8 < arguments.length) { _local7.push(arguments[_local8]); _local8++; }; mc._queue.push(_local7); return; }; mc._id = (mc._id + 1); _local5 = mc._id; mc._callbacks[_local5] = [_arg2, ((_arg3) || (_arg2))]; _local6 = new LocalConnection(); _local6.send(mc._endpoint, "rpc", _local5, _arg1); }; mc._callbacks = {}; mc._callbacks[0] = [mc, "_didConnect"]; lv.st = getTimer(); req = new URLRequest((server + ".swf")); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader = new Loader(); loader.load(req); mc.addChild(loader); mc._mochiad_com = loader; return (mc); } public static function showPreGameAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var bar:MovieClip; var bar_color:Number; var bar_background:Number; var bar_outline:Number; var backing_mc:MovieClip; var backing:Object; var inside_mc:MovieClip; var inside:Object; var outline_mc:MovieClip; var outline:Object; var complete:Boolean; var unloaded:Boolean; var f:Function; var r:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, ad_started:function ():void{ this.clip.stop(); }, ad_finished:function ():void{ this.clip.play(); }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ var fn:Function; fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.x = (w * -0.5); chk.y = (h * -0.5); bar = createEmptyMovieClip(chk, "_mochiad_bar", 4); bar.x = 10; bar.y = (h - 20); bar_color = options.color; delete options.color; bar_background = options.background; delete options.background; bar_outline = options.outline; delete options.outline; backing_mc = createEmptyMovieClip(bar, "_outline", 1); backing = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo((w - 20), 0); backing.lineTo((w - 20), 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); inside_mc = createEmptyMovieClip(bar, "_inside", 2); inside = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo((w - 20), 0); inside.lineTo((w - 20), 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; outline_mc = createEmptyMovieClip(bar, "_outline", 3); outline = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo((w - 20), 0); outline.lineTo((w - 20), 10); outline.lineTo(0, 10); outline.lineTo(0, 0); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; f = function (_arg1:Event):void{ complete = true; if (unloaded){ MochiAd.unload(clip); }; }; clip.loaderInfo.addEventListener(Event.COMPLETE, f); if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; }; }; mc.unloadAd = function ():void{ unloaded = true; if (complete){ MochiAd.unload(clip); }; }; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.started = getTimer(); _local2.ad_msec = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Object; var _local3:Number; var _local4:Boolean; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Object; var _local10:Number; var _local11:Number; if (!this.parent.parent){ delete this["onEnterFrame"]; return; }; _local1 = this.parent.parent.root; _local2 = this.parent._mochiad_ctr; _local3 = (getTimer() - this.started); _local4 = false; _local5 = _local1.loaderInfo.bytesTotal; _local6 = _local1.loaderInfo.bytesLoaded; _local7 = ((100 * _local6) / _local5); _local8 = ((100 * _local3) / chk.ad_msec); _local9 = this._mochiad_bar._inside; _local10 = Math.min(100, Math.min(((_local7) || (0)), _local8)); _local10 = Math.max(this.last_pcnt, _local10); this.last_pcnt = _local10; _local9.scaleX = (_local10 * 0.01); if (!chk.showing){ _local11 = _local2.loaderInfo.bytesTotal; if ((((_local11 > 0)) || (("number" == "undefined")))){ chk.showing = true; chk.started = getTimer(); } else { if (_local3 > chk.ad_timeout){ _local4 = true; }; }; }; if ((((_local3 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){ _local4 = true; }; if (((complete) && (_local4))){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(_arg1:Object):void{ MochiAd.showPreGameAd(_arg1); } public static function fetchHighScores(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{ var _local4:MovieClip; _local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id}); if (!_local4){ return (false); }; _local4.doSend(["fetchHighScores", _arg1], _arg2, _arg3); return (true); } public static function doOnEnterFrame(_arg1:MovieClip):void{ var f:Function; var mc = _arg1; f = function (_arg1:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { mc.removeEventListener(Event.ENTER_FRAME, f); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package
Section 122
//Paddle (Paddle) package { import flash.display.*; import flash.events.*; public class Paddle extends MovieClip { protected var left:String;// = "false" protected var right:String;// = "false" private var startX:Number;// = 0 protected var vel:Number;// = 0 private var dist:Number;// = 125 protected var correctionFrames:Number;// = 0 private var main:MovieClip; protected var correctionX:Number;// = 0 private var fric:Number;// = 0.85 public var graphic:MovieClip; private var accel:Number;// = 3 protected var game:Game; public function Paddle(_arg1:Number, _arg2:Number, _arg3:Game):void{ vel = 0; accel = 3; fric = 0.85; dist = 125; correctionFrames = 0; correctionX = 0; startX = 0; right = "false"; left = "false"; main = GetMain.main; super(); this.game = _arg3; this.startX = _arg1; x = _arg1; y = _arg2; addEventListener(Event.ENTER_FRAME, go); main.curPage.paddleHolder.addChild(this); } private function go(_arg1:Event){ step(); correct(); } protected function correct():void{ if (correctionFrames > 0){ correctionFrames--; x = (x + correctionX); }; } public function bounce(_arg1:Ball):void{ graphic.spin.gotoAndPlay("hit"); } public function setPos(_arg1:Number, _arg2:Number, _arg3:String, _arg4:String, _arg5:Number, _arg6:Number):void{ } public function remove():void{ removeEventListener(Event.ENTER_FRAME, go); if (parent != null){ parent.removeChild(this); }; } protected function step():void{ x = (x + vel); graphic.spin.rotation = (graphic.spin.rotation + (vel * 1.5)); if (right == "true"){ vel = (vel + accel); }; if (left == "true"){ vel = (vel - accel); }; vel = (vel * fric); if ((x - startX) > dist){ x = (startX + dist); }; if ((x - startX) < -(dist)){ x = (startX - dist); }; x = Math.round(x); vel = (Math.round((vel * 100)) / 100); } public function stopSending():void{ } } }//package
Section 123
//Player (Player) package { import flash.display.*; import flash.text.*; public class Player { protected var group:Number;// = 0 protected var lastPlayed:Number;// = 0 protected var name:String;// = "unknown" protected var acceptChallenges:String;// = "true" protected var id:String; protected var nameColor:Number;// = 0x666666 protected var score:Number;// = 0 protected var rank:Number;// = 0 protected var main:MovieClip; protected var rankGroup:String; protected var available:String;// = "false" protected var side:String; protected var scoreBox:TextField; protected var opponent:Player; protected var pingTime:Number;// = 0 protected var listName:ListName; protected var acceptMessages:String;// = "true" public function Player(_arg1:String):void{ main = GetMain.main; name = "unknown"; rank = 0; group = 0; available = "false"; acceptMessages = "true"; acceptChallenges = "true"; lastPlayed = 0; nameColor = 0x666666; pingTime = 0; score = 0; super(); this.id = _arg1; listName = main.playerList.addPlayer(this); } public function getGroup():Number{ return (group); } public function remove():void{ main.playerList.removePlayer(this); } public function getName():String{ return (name); } public function setName(_arg1:String):void{ this.name = _arg1; listName.setName(_arg1); } public function setAvailable(_arg1:String):void{ this.available = _arg1; if (_arg1 == "true"){ this.listName.alpha = 1; } else { this.listName.alpha = 0.4; }; } public function getAvailable():String{ return (available); } public function getAcceptChallenges():String{ return (acceptChallenges); } public function getHTMLNameColor():String{ var _local1:String; _local1 = ("#" + nameColor.toString(16)); return (_local1); } public function setAcceptChallenges(_arg1:String):void{ this.acceptChallenges = _arg1; } public function scorePoint():void{ setScore((score + 1)); Sounds.startSound(new BadScore(), 0.5); } public function getRank():Number{ return (rank); } public function setLastPlayed(_arg1:Number):void{ lastPlayed = _arg1; } public function setRank(_arg1:Number):void{ this.rank = _arg1; rankGroup = "Puppy"; if (_arg1 > 5){ rankGroup = "Beginner"; }; if (_arg1 > 10){ rankGroup = "Moderate"; }; if (_arg1 > 25){ rankGroup = "Shark"; }; if (_arg1 > 50){ rankGroup = "Master"; }; listName.setRank(_arg1); } public function setGroup(_arg1:Number):void{ this.group = _arg1; if (_arg1 == 0){ nameColor = 0x666666; }; if (_arg1 == 1){ nameColor = 301467; }; if (_arg1 == 2){ nameColor = 0xFF; }; if (_arg1 == 3){ nameColor = 12192425; }; listName.setColor(nameColor); } public function getListName():ListName{ return (listName); } public function setScore(_arg1:Number):void{ score = _arg1; scoreBox.text = score.toString(); } public function getScore():Number{ return (score); } public function setPingTime(_arg1:Number){ pingTime = _arg1; listName.setPingTime(pingTime); } public function getNameColor():Number{ return (nameColor); } public function getAcceptMessages():String{ return (acceptMessages); } public function getID():String{ return (id); } public function setAcceptMessages(_arg1:String):void{ this.acceptMessages = _arg1; } public function makePaddle(_arg1:Number, _arg2:Number, _arg3:Game):Paddle{ var _local4:RemotePaddle; _local4 = new RemotePaddle(_arg1, _arg2, _arg3); return (_local4); } public function startGame(_arg1:String, _arg2:Player):void{ this.scoreBox = main.curPage[(_arg1 + "Score")]; this.opponent = _arg2; main.curPage[(_arg1 + "Name")].text = name; lastPlayed = new Date().valueOf(); setScore(0); } public function getRankGroup():String{ return (rankGroup); } public function getLastPlayed():Number{ return (lastPlayed); } } }//package
Section 124
//PlayerList (PlayerList) package { import flash.display.*; import flash.utils.*; public class PlayerList extends MovieClip { private var paused:Boolean;// = true private var incY:Number;// = 14 private var listName:ListName; private var sortInterval:uint; private var posY:Number;// = 0 private var lobbyPage:LobbyPage; private var players:Object; public function PlayerList():void{ players = new Object(); posY = 0; incY = 14; paused = true; super(); } public function resume(_arg1):void{ this.lobbyPage = _arg1; if (paused == true){ paused = false; sortInterval = setInterval(sort, 1000); sort(); }; } public function idToPlayer(_arg1:String):Player{ var _local2:Player; _local2 = players[_arg1]; return (_local2); } public function clearList():void{ var _local1:Player; for each (_local1 in players) { _local1.remove(); }; while (numChildren > 0) { removeChildAt(0); }; } private function sort():void{ var _local1:Array; var _local2:Player; var _local3:int; var _local4:int; _local1 = new Array(); for each (_local2 in players) { _local1.push(_local2); }; _local1.sort(superSort); posY = 0; _local3 = 0; _local4 = _local1.length; lobbyPage.playersBox.text = ("Players Online: " + _local4); _local3 = 0; while (_local3 < _local4) { _local2 = _local1[_local3]; _local2.getListName().y = posY; posY = (posY + incY); _local3++; }; } public function removePlayer(_arg1:Player):void{ var _local2:*; _local2 = _arg1.getListName(); _local2.remove(); removeChild(_local2); delete players[_arg1.getID()]; } private function superSort(_arg1:Player, _arg2:Player):Number{ var _local3:Number; _local3 = 0; if (_arg1.getLastPlayed() > _arg2.getLastPlayed()){ _local3 = -1; } else { if (_arg1.getLastPlayed() < _arg2.getLastPlayed()){ _local3 = 1; } else { if (_arg1.getRank() > _arg2.getRank()){ _local3 = -1; }; if (_arg1.getRank() < _arg2.getRank()){ _local3 = 1; }; }; }; return (_local3); } public function addPlayer(_arg1:Player):ListName{ players[_arg1.getID()] = _arg1; listName = new ListName(_arg1); addChild(listName); listName.y = posY; posY = (posY + incY); return (listName); } public function pause():void{ if (paused == false){ paused = true; clearInterval(sortInterval); }; } } }//package
Section 125
//PlayerMessage (PlayerMessage) package { import fl.controls.*; import flash.display.*; import flash.events.*; import flash.text.*; public class PlayerMessage extends MovieClip { public var nameBox:TextField; public var textBox:TextArea; public var closeButton:Button; private var main:MovieClip; public var replyButton:Button; private var player:Player; public function PlayerMessage(_arg1:Player, _arg2:String):void{ main = GetMain.main; super(); this.player = _arg1; textBox.text = main.chat.sanitize(_arg2); nameBox.text = _arg1.getName(); closeButton.addEventListener(MouseEvent.CLICK, closeClick); replyButton.addEventListener(MouseEvent.CLICK, replyClick); nameBox.addEventListener(MouseEvent.MOUSE_OVER, nameOver); nameBox.addEventListener(MouseEvent.MOUSE_OUT, nameOut); nameBox.addEventListener(MouseEvent.CLICK, nameClick); __setProp_replyButton_PlayerMessage_Layer2_1(); __setProp_closeButton_PlayerMessage_Layer2_1(); __setProp_textBox_PlayerMessage_Layer2_1(); } function __setProp_replyButton_PlayerMessage_Layer2_1(){ try { replyButton["componentInspectorSetting"] = true; } catch(e:Error) { }; replyButton.emphasized = false; replyButton.enabled = true; replyButton.label = "Reply"; replyButton.labelPlacement = "right"; replyButton.selected = false; replyButton.toggle = false; replyButton.visible = true; try { replyButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function closeClick(_arg1:MouseEvent):void{ remove(); } private function remove(){ closeButton.removeEventListener(MouseEvent.CLICK, closeClick); replyButton.removeEventListener(MouseEvent.CLICK, replyClick); AlertScreen(parent.parent).gotoAndPlay("die"); } function __setProp_closeButton_PlayerMessage_Layer2_1(){ try { closeButton["componentInspectorSetting"] = true; } catch(e:Error) { }; closeButton.emphasized = false; closeButton.enabled = true; closeButton.label = "Close"; closeButton.labelPlacement = "right"; closeButton.selected = false; closeButton.toggle = false; closeButton.visible = true; try { closeButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_textBox_PlayerMessage_Layer2_1(){ try { textBox["componentInspectorSetting"] = true; } catch(e:Error) { }; textBox.condenseWhite = false; textBox.editable = false; textBox.enabled = true; textBox.horizontalScrollPolicy = "auto"; textBox.htmlText = ""; textBox.maxChars = 0; textBox.restrict = ""; textBox.text = ""; textBox.verticalScrollPolicy = "auto"; textBox.visible = true; textBox.wordWrap = true; try { textBox["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function nameClick(_arg1:MouseEvent):void{ new AlertScreen(new PlayerOptions(player)); } private function replyClick(_arg1:MouseEvent):void{ new AlertScreen(new ComposeMessage(player)); remove(); } private function nameOut(_arg1:MouseEvent):void{ nameBox.textColor = 301467; } private function nameOver(_arg1:MouseEvent):void{ nameBox.textColor = 0; } } }//package
Section 126
//PlayerOptions (PlayerOptions) package { import flash.display.*; import flash.events.*; import flash.text.*; public class PlayerOptions extends MovieClip { public var promoteButton:SimpleButton; public var meScreen:MovieClip; public var banButton:SimpleButton; public var messageButton:SimpleButton; public var cancelButton:SimpleButton; public var extraBG:MovieClip; public var challengeButton:SimpleButton; public var ignoreButton:SimpleButton; private var main:MovieClip; public var flagButton:SimpleButton; public var ignoreMod:MovieClip; public var nameBox:TextField; private var player:Player; public var rankBox:TextField; public function PlayerOptions(_arg1:Player){ main = GetMain.main; super(); this.player = _arg1; main.deleteableScreen = this; nameBox.text = _arg1.getName(); rankBox.text = (((("Rank: " + _arg1.getRank()) + " (") + _arg1.getRankGroup()) + ")"); if (_arg1 != main.me){ removeChild(meScreen); }; if (CommandHandler.ignoreArray.indexOf(_arg1) == -1){ removeChild(ignoreMod); }; ignoreButton.addEventListener(MouseEvent.CLICK, ignoreClick); if ((((_arg1.getAvailable() == "true")) && ((_arg1.getAcceptMessages() == "true")))){ messageButton.addEventListener(MouseEvent.CLICK, messageClick); } else { messageButton.alpha = 0.4; }; cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); if (main.me.getGroup() > 0){ flagButton.addEventListener(MouseEvent.CLICK, flagClick); } else { flagButton.alpha = 0.4; }; if (main.me.getGroup() > 1){ banButton.addEventListener(MouseEvent.CLICK, banClick); } else { removeChild(extraBG); banButton.visible = false; }; if (main.me.getGroup() > 2){ promoteButton.addEventListener(MouseEvent.CLICK, promoteClick); } else { promoteButton.visible = false; }; if ((((_arg1.getAvailable() == "true")) && ((_arg1.getAcceptChallenges() == "true")))){ challengeButton.addEventListener(MouseEvent.CLICK, challengeClick); } else { challengeButton.alpha = 0.25; }; } private function cancelClick(_arg1:MouseEvent):void{ remove(); } private function flagClick(_arg1:MouseEvent):void{ new AlertScreen(new ConfirmFlag(player)); remove(); } public function remove():void{ ignoreButton.removeEventListener(MouseEvent.CLICK, ignoreClick); messageButton.removeEventListener(MouseEvent.CLICK, messageClick); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); flagButton.removeEventListener(MouseEvent.CLICK, flagClick); banButton.removeEventListener(MouseEvent.CLICK, banClick); promoteButton.removeEventListener(MouseEvent.CLICK, promoteClick); challengeButton.removeEventListener(MouseEvent.CLICK, challengeClick); AlertScreen(parent.parent).gotoAndPlay("die"); } private function promoteClick(_arg1:MouseEvent):void{ new AlertScreen(new ConfirmPromote(player)); remove(); } private function messageClick(_arg1:MouseEvent):void{ new AlertScreen(new ComposeMessage(player)); remove(); } private function banClick(_arg1:MouseEvent):void{ new AlertScreen(new ConfirmBan(player)); remove(); } private function ignoreClick(_arg1:MouseEvent):void{ new AlertScreen(new ConfirmIgnore(player)); remove(); } private function challengeClick(_arg1:MouseEvent):void{ new AlertScreen(new SendChallenge(player)); remove(); } } }//package
Section 127
//Preloader (Preloader) package { import flash.display.*; import flash.events.*; public class Preloader extends Sprite { private var button; private var bitmap:Bitmap; private var xRot:Number; private var percent:Number;// = 0 private var stageWidth:Number; private var dotHolder:Sprite; private var dotArray:Array; private var bitmapData:BitmapData; private var dotArray2:Array; private var yRot:Number; private var lastPercentLoaded:Number;// = 0 private var stageHeight:Number; private var fov:Number;// = 600 private var bitmapWidth:Number;// = 200 private var finishedDots:Number;// = 0 private var zRot:Number;// = 0 public function Preloader(_arg1, _arg2){ var _local3:*; var _local4:Dot; xRot = (Math.random() * Math.PI); yRot = (Math.random() * Math.PI); zRot = 0; fov = 600; dotArray = new Array(); dotArray2 = new Array(); lastPercentLoaded = 0; percent = 0; finishedDots = 0; bitmapWidth = 200; dotHolder = new Sprite(); super(); stageWidth = _arg1; stageHeight = _arg2; bitmapData = new BitmapData(bitmapWidth, stageHeight, false, 0x222222); bitmap = new Bitmap(bitmapData); addChildAt(bitmap, 0); bitmap.x = ((stageWidth - bitmap.width) / 2); dotHolder.x = ((stageWidth - bitmapWidth) / 2); addChild(dotHolder); _local3 = 0; while (_local3 < 100) { _local4 = new Dot(); dotHolder.addChild(_local4); _local4.xPos = (((_local3 % 10) * 10) - 50); _local4.yPos = ((Math.floor((_local3 / 10)) * 10) - 50); _local4.zPos = -50; dotArray.push(_local4); dotArray2.push(_local4); _local3++; }; addEventListener(Event.ENTER_FRAME, loading); } private function loaded(_arg1:Event):void{ moveDots(); bitmapData.draw(dotHolder); bitmapData.scroll(0, -1); } private function loading(_arg1:Event):void{ var _local2:MovieClip; moveDots(); percent = ((root.loaderInfo.bytesLoaded / root.loaderInfo.bytesTotal) * 100); while (percent > lastPercentLoaded) { _local2 = dotArray2[lastPercentLoaded]; _local2.play(); _local2.addEventListener(Event.ENTER_FRAME, activateDot); lastPercentLoaded++; }; if (finishedDots >= 100){ removeEventListener(Event.ENTER_FRAME, loading); addEventListener(Event.ENTER_FRAME, loaded); button = addChild(new PreloaderButton()); button.x = (stageWidth / 2); button.y = (stageHeight / 3); stage.addEventListener(MouseEvent.CLICK, removeClick); }; } private function activateDot(_arg1:Event):void{ var _local2:MovieClip; _local2 = MovieClip(_arg1.target); _local2.zPos = (_local2.zPos + 2.5); if (_local2.zPos >= 50){ _local2.zPos = 50; finishedDots++; _local2.removeEventListener(Event.ENTER_FRAME, activateDot); }; } private function removeClick(_arg1:MouseEvent):void{ remove(); } private function remove():void{ var _local1:MovieClip; while (dotArray.length > 0) { _local1 = dotArray.pop(); dotHolder.removeChild(_local1); }; removeEventListener(Event.ENTER_FRAME, loaded); removeEventListener(Event.ENTER_FRAME, loading); stage.removeEventListener(MouseEvent.CLICK, removeClick); bitmapData.dispose(); removeChild(bitmap); removeChild(dotHolder); parent.removeChild(this); GetMain.main.gotoAndPlay("pages"); } private function arrange(_arg1):void{ var _local2:*; _arg1.sortOn("scaleX", Array.NUMERIC); _local2 = 0; while (_local2 < _arg1.length) { if (dotHolder.getChildAt(_local2) != _arg1[_local2]){ dotHolder.setChildIndex(_arg1[_local2], _local2); }; _local2++; }; } private function moveDots():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:MovieClip; var _local8:*; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:*; var _local13:*; var _local14:*; var _local15:*; var _local16:*; var _local17:*; var _local18:*; xRot = (xRot + 0.01502); yRot = (yRot + 0.0213); _local1 = Math.sin(xRot); _local2 = Math.cos(xRot); _local3 = Math.sin(yRot); _local4 = Math.cos(yRot); _local5 = Math.sin(zRot); _local6 = Math.cos(zRot); _local8 = 0; while (_local8 < dotArray.length) { _local7 = dotArray[_local8]; _local9 = _local7.xPos; _local10 = _local7.yPos; _local11 = _local7.zPos; _local12 = ((_local2 * _local10) - (_local1 * _local11)); _local13 = ((_local1 * _local10) + (_local2 * _local11)); _local14 = ((_local4 * _local13) - (_local3 * _local9)); _local15 = ((_local3 * _local13) + (_local4 * _local9)); _local16 = ((_local6 * _local15) - (_local5 * _local12)); _local17 = ((_local5 * _local15) + (_local6 * _local12)); _local18 = (fov / (fov - _local14)); _local7.x = ((_local16 * _local18) + 100); _local7.y = (((_local17 * _local18) + stageHeight) - 100); _local7.scaleX = (_local7.scaleY = _local18); _local8++; }; arrange(dotArray); } } }//package
Section 128
//PreloaderButton (PreloaderButton) package { import flash.display.*; public dynamic class PreloaderButton extends SimpleButton { } }//package
Section 129
//RandomMatch (RandomMatch) package { import fl.controls.*; import flash.display.*; import flash.events.*; public class RandomMatch extends MovieClip { public var cancelButton:Button; public var textBox:TextArea; private var main:MovieClip; public function RandomMatch():void{ main = GetMain.main; super(); main.socket.write("random_match`"); main.deleteableScreen = this; cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); __setProp_cancelButton_RandomMatch_Layer1_1(); __setProp_textBox_RandomMatch_Layer1_1(); } function __setProp_textBox_RandomMatch_Layer1_1(){ try { textBox["componentInspectorSetting"] = true; } catch(e:Error) { }; textBox.condenseWhite = false; textBox.editable = false; textBox.enabled = true; textBox.horizontalScrollPolicy = "auto"; textBox.htmlText = ""; textBox.maxChars = 0; textBox.restrict = ""; textBox.text = "Waiting for an opponent..."; textBox.verticalScrollPolicy = "auto"; textBox.visible = true; textBox.wordWrap = true; try { textBox["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function cancelClick(_arg1:MouseEvent):void{ remove(); main.socket.write("cancel_random_match`"); } function __setProp_cancelButton_RandomMatch_Layer1_1(){ try { cancelButton["componentInspectorSetting"] = true; } catch(e:Error) { }; cancelButton.emphasized = false; cancelButton.enabled = true; cancelButton.label = "Cancel"; cancelButton.labelPlacement = "right"; cancelButton.selected = false; cancelButton.toggle = false; cancelButton.visible = true; try { cancelButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } public function remove():void{ cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); } } }//package
Section 130
//RecieveChallenge (RecieveChallenge) package { import flash.display.*; import flash.events.*; public class RecieveChallenge extends Confirm { private var dead:Boolean;// = false private var main:MovieClip; private var player:Player; public function RecieveChallenge(_arg1:Player):void{ main = GetMain.main; dead = false; super(); this.player = _arg1; main.deleteableScreen = this; textBox.text = (_arg1.getName() + " has challenged you to a game of Volly-Bounce! Do you accept?"); okButton.addEventListener(MouseEvent.CLICK, okClick); cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); } private function okClick(_arg1:MouseEvent):void{ main.socket.write("accept_challenge`"); remove(); } private function cancelClick(_arg1:MouseEvent):void{ var me = _arg1; try { main.socket.write("cancel_challenge`"); } catch(exception) { }; remove(); } public function remove():void{ if (!dead){ dead = true; okButton.removeEventListener(MouseEvent.CLICK, okClick); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); }; } } }//package
Section 131
//RemotePaddle (RemotePaddle) package { public class RemotePaddle extends Paddle { public function RemotePaddle(_arg1:Number, _arg2:Number, _arg3:Game):void{ super(_arg1, _arg2, _arg3); } override public function setPos(_arg1:Number, _arg2:Number, _arg3:String, _arg4:String, _arg5:Number, _arg6:Number):void{ var _local7:Number; var _local8:Number; var _local9:Number; _local7 = this.x; this.left = _arg3; this.right = _arg4; x = _arg5; this.vel = _arg6; _local8 = (_arg2 - _arg1); if (_local8 < 25){ while (_local8 > 0) { step(); _local8--; }; if (correctionFrames > 0){ _local7 = (_local7 + (correctionX * correctionFrames)); }; _local9 = (x - _local7); this.x = _local7; correctionFrames = 4; correctionX = (_local9 / correctionFrames); correct(); }; } } }//package
Section 132
//ScrollArrowDown_disabledSkin (ScrollArrowDown_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_disabledSkin extends MovieClip { } }//package
Section 133
//ScrollArrowDown_downSkin (ScrollArrowDown_downSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_downSkin extends MovieClip { } }//package
Section 134
//ScrollArrowDown_overSkin (ScrollArrowDown_overSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_overSkin extends MovieClip { } }//package
Section 135
//ScrollArrowDown_upSkin (ScrollArrowDown_upSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_upSkin extends MovieClip { } }//package
Section 136
//ScrollArrowUp_disabledSkin (ScrollArrowUp_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_disabledSkin extends MovieClip { } }//package
Section 137
//ScrollArrowUp_downSkin (ScrollArrowUp_downSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_downSkin extends MovieClip { } }//package
Section 138
//ScrollArrowUp_overSkin (ScrollArrowUp_overSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_overSkin extends MovieClip { } }//package
Section 139
//ScrollArrowUp_upSkin (ScrollArrowUp_upSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_upSkin extends MovieClip { } }//package
Section 140
//ScrollBar_thumbIcon (ScrollBar_thumbIcon) package { import flash.display.*; public dynamic class ScrollBar_thumbIcon extends MovieClip { } }//package
Section 141
//ScrollThumb_downSkin (ScrollThumb_downSkin) package { import flash.display.*; public dynamic class ScrollThumb_downSkin extends MovieClip { } }//package
Section 142
//ScrollThumb_overSkin (ScrollThumb_overSkin) package { import flash.display.*; public dynamic class ScrollThumb_overSkin extends MovieClip { } }//package
Section 143
//ScrollThumb_upSkin (ScrollThumb_upSkin) package { import flash.display.*; public dynamic class ScrollThumb_upSkin extends MovieClip { } }//package
Section 144
//ScrollTrack_skin (ScrollTrack_skin) package { import flash.display.*; public dynamic class ScrollTrack_skin extends MovieClip { } }//package
Section 145
//SendChallenge (SendChallenge) package { import fl.controls.*; import flash.display.*; import flash.events.*; public class SendChallenge extends MovieClip { public var cancelButton:Button; private var dead:Boolean;// = false public var textBox:TextArea; private var main:MovieClip; private var player:Player; public function SendChallenge(_arg1:Player):void{ main = GetMain.main; dead = false; super(); this.player = _arg1; main.deleteableScreen = this; main.socket.write(("challenge`" + _arg1.getID())); textBox.text = (("Waiting for " + _arg1.getName()) + "..."); cancelButton.addEventListener(MouseEvent.CLICK, cancelClick); addEventListener("available", availableListener); __setProp_cancelButton_SendChallenge_Layer1_1(); __setProp_textBox_SendChallenge_Layer1_1(); } function __setProp_cancelButton_SendChallenge_Layer1_1(){ try { cancelButton["componentInspectorSetting"] = true; } catch(e:Error) { }; cancelButton.emphasized = false; cancelButton.enabled = true; cancelButton.label = "Cancel"; cancelButton.labelPlacement = "right"; cancelButton.selected = false; cancelButton.toggle = false; cancelButton.visible = true; try { cancelButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function cancelClick(_arg1:MouseEvent):void{ var me = _arg1; try { main.socket.write("cancel_challenge`"); } catch(exception) { }; remove(); } function __setProp_textBox_SendChallenge_Layer1_1(){ try { textBox["componentInspectorSetting"] = true; } catch(e:Error) { }; textBox.condenseWhite = false; textBox.editable = false; textBox.enabled = true; textBox.horizontalScrollPolicy = "auto"; textBox.htmlText = ""; textBox.maxChars = 0; textBox.restrict = ""; textBox.text = ""; textBox.verticalScrollPolicy = "auto"; textBox.visible = true; textBox.wordWrap = true; try { textBox["componentInspectorSetting"] = false; } catch(e:Error) { }; } public function remove():void{ if (!dead){ dead = true; removeEventListener("available", availableListener); cancelButton.removeEventListener(MouseEvent.CLICK, cancelClick); AlertScreen(parent.parent).gotoAndPlay("die"); }; } private function availableListener(_arg1:Event):void{ remove(); } } }//package
Section 146
//Sounds (Sounds) package { import flash.media.*; public class Sounds { private static var channels:Array = new Array(); private static var mute:Boolean = false; public function Sounds():void{ } public static function pressMute(){ var _local1:SoundTransform; _local1 = new SoundTransform(); mute = !(mute); if (mute){ _local1.volume = 0; } else { _local1.volume = 1; }; SoundMixer.soundTransform = _local1; } public static function startSound(_arg1:Sound, _arg2:Number=1, _arg3:Number=0, _arg4:Number=0){ var _local5:SoundChannel; var _local6:SoundTransform; if (_arg2 > 0.05){ _local5 = _arg1.play(0, _arg4); _local6 = new SoundTransform(); _local6.volume = _arg2; _local6.pan = _arg3; _local5.soundTransform = _local6; return (_local5); }; return (false); } } }//package
Section 147
//TextArea_disabledSkin (TextArea_disabledSkin) package { import flash.display.*; public dynamic class TextArea_disabledSkin extends MovieClip { } }//package
Section 148
//TextArea_upSkin (TextArea_upSkin) package { import flash.display.*; public dynamic class TextArea_upSkin extends MovieClip { } }//package
Section 149
//TextInput_disabledSkin (TextInput_disabledSkin) package { import flash.display.*; public dynamic class TextInput_disabledSkin extends MovieClip { } }//package
Section 150
//TextInput_upSkin (TextInput_upSkin) package { import flash.display.*; public dynamic class TextInput_upSkin extends MovieClip { } }//package
Section 151
//ThisIsYou (ThisIsYou) package { import flash.display.*; public dynamic class ThisIsYou extends MovieClip { } }//package
Section 152
//VersionMessage (VersionMessage) package { import fl.controls.*; import flash.display.*; import flash.events.*; import flash.net.*; import flash.system.*; public dynamic class VersionMessage extends MovieClip { public var version:String; public var textBox:TextArea; public var array:Array; public var getItButton:Button; public function VersionMessage(){ addFrameScript(0, frame1); __setProp_getItButton_VersionMessage_Layer1_1(); __setProp_textBox_VersionMessage_Layer1_1(); } function __setProp_getItButton_VersionMessage_Layer1_1(){ try { getItButton["componentInspectorSetting"] = true; } catch(e:Error) { }; getItButton.emphasized = false; getItButton.enabled = true; getItButton.label = "Get It"; getItButton.labelPlacement = "right"; getItButton.selected = false; getItButton.toggle = false; getItButton.visible = true; try { getItButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ array = Capabilities.version.split(" "); version = array[1]; textBox.text = (("You have flash version " + version) + ", and this game likes version 9,0,45,0. You can download it from adobe.com \n xoxo -Jiggmin"); getItButton.addEventListener(MouseEvent.CLICK, getClick); } function __setProp_textBox_VersionMessage_Layer1_1(){ try { textBox["componentInspectorSetting"] = true; } catch(e:Error) { }; textBox.condenseWhite = false; textBox.editable = false; textBox.enabled = true; textBox.horizontalScrollPolicy = "auto"; textBox.htmlText = ""; textBox.maxChars = 0; textBox.restrict = ""; textBox.text = ""; textBox.verticalScrollPolicy = "auto"; textBox.visible = true; textBox.wordWrap = true; try { textBox["componentInspectorSetting"] = false; } catch(e:Error) { }; } public function getClick(_arg1:MouseEvent):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash"); navigateToURL(_local2); } } }//package
Section 153
//VictoryMessage (VictoryMessage) package { import fl.controls.*; import flash.display.*; import flash.events.*; import flash.text.*; public class VictoryMessage extends MovieClip { public var okButton:Button; public var nameBox:TextField; private var player:Player; public function VictoryMessage(_arg1:String):void{ GetMain.main.deleteableScreen = this; this.player = player; nameBox.text = (("- " + _arg1) + "! -"); okButton.addEventListener(MouseEvent.CLICK, okClick); __setProp_okButton_VictoryMessage_Layer1_1(); } function __setProp_okButton_VictoryMessage_Layer1_1(){ try { okButton["componentInspectorSetting"] = true; } catch(e:Error) { }; okButton.emphasized = false; okButton.enabled = true; okButton.label = "OK"; okButton.labelPlacement = "right"; okButton.selected = false; okButton.toggle = false; okButton.visible = true; try { okButton["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function okClick(_arg1:MouseEvent):void{ remove(); GetMain.main.changePage(new LobbyPage()); } public function remove():void{ okButton.removeEventListener(MouseEvent.CLICK, okClick); AlertScreen(parent.parent).gotoAndPlay("die"); } } }//package

Library Items

Symbol 1 FontUsed by:2
Symbol 2 TextUses:1Used by:3 4
Symbol 3 MovieClipUses:2Used by:4
Symbol 4 Button {PreloaderButton}Uses:3 2
Symbol 5 GraphicUsed by:6
Symbol 6 MovieClipUses:5Used by:10
Symbol 7 GraphicUsed by:10
Symbol 8 GraphicUsed by:9
Symbol 9 MovieClipUses:8Used by:10
Symbol 10 MovieClip {Dot}Uses:6 7 9
Symbol 11 GraphicUsed by:12
Symbol 12 MovieClipUses:11Used by:87 88 112 116 121 132 133
Symbol 13 MovieClip {fl.core.ComponentShim}Used by:29 50 84 87 88 112 116 121 132 133
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClip {HeaderRenderer_upSkin}Uses:14Used by:29
Symbol 16 GraphicUsed by:17
Symbol 17 MovieClip {HeaderRenderer_disabledSkin}Uses:16Used by:29
Symbol 18 GraphicUsed by:19 24
Symbol 19 MovieClip {HeaderRenderer_downSkin}Uses:18Used by:29
Symbol 20 GraphicUsed by:21
Symbol 21 MovieClip {HeaderRenderer_overSkin}Uses:20Used by:29
Symbol 22 GraphicUsed by:23
Symbol 23 MovieClip {HeaderRenderer_selectedDisabledSkin}Uses:22Used by:29
Symbol 24 MovieClip {HeaderRenderer_selectedDownSkin}Uses:18Used by:29
Symbol 25 GraphicUsed by:26
Symbol 26 MovieClip {HeaderRenderer_selectedOverSkin}Uses:25Used by:29
Symbol 27 GraphicUsed by:28
Symbol 28 MovieClip {HeaderRenderer_selectedUpSkin}Uses:27Used by:29
Symbol 29 MovieClip {fl.controls.dataGridClasses.HeaderRenderer}Uses:15 13 17 19 21 23 24 26 28Used by:87
Symbol 30 GraphicUsed by:31 60 63 67 77 246 247
Symbol 31 MovieClip {HeaderSortArrow_ascIcon}Uses:30Used by:87
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClip {HeaderSortArrow_descIcon}Uses:32Used by:87
Symbol 34 GraphicUsed by:35
Symbol 35 MovieClip {CellRenderer_upSkin}Uses:34Used by:50
Symbol 36 GraphicUsed by:37
Symbol 37 MovieClip {CellRenderer_disabledSkin}Uses:36Used by:50
Symbol 38 GraphicUsed by:39
Symbol 39 MovieClip {CellRenderer_downSkin}Uses:38Used by:50
Symbol 40 GraphicUsed by:41
Symbol 41 MovieClip {CellRenderer_overSkin}Uses:40Used by:50
Symbol 42 GraphicUsed by:43
Symbol 43 MovieClip {CellRenderer_selectedDisabledSkin}Uses:42Used by:50
Symbol 44 GraphicUsed by:45
Symbol 45 MovieClip {CellRenderer_selectedDownSkin}Uses:44Used by:50
Symbol 46 GraphicUsed by:47
Symbol 47 MovieClip {CellRenderer_selectedOverSkin}Uses:46Used by:50
Symbol 48 GraphicUsed by:49
Symbol 49 MovieClip {CellRenderer_selectedUpSkin}Uses:48Used by:50
Symbol 50 MovieClip {fl.controls.listClasses.CellRenderer}Uses:35 13 37 39 41 43 45 47 49Used by:87 121
Symbol 51 GraphicUsed by:52
Symbol 52 MovieClip {focusRectSkin}Uses:51Used by:84 87 88 112 116 121 132 133
Symbol 53 GraphicUsed by:54
Symbol 54 MovieClip {ColumnStretch_cursor}Uses:53Used by:87
Symbol 55 GraphicUsed by:56
Symbol 56 MovieClip {DataGrid_skin}Uses:55Used by:87
Symbol 57 GraphicUsed by:58
Symbol 58 MovieClip {ScrollTrack_skin}Uses:57Used by:84 88 249
Symbol 59 GraphicUsed by:61 247
Symbol 60 MovieClipUses:30Used by:61 71 73
Symbol 61 MovieClip {ScrollArrowUp_downSkin}Uses:59 60Used by:84 88 247
Symbol 62 GraphicUsed by:63 246
Symbol 63 MovieClip {ScrollArrowDown_downSkin}Uses:62 30Used by:84 88 246
Symbol 64 GraphicUsed by:65 248
Symbol 65 MovieClip {ScrollThumb_downSkin}Uses:64Used by:84 88 248
Symbol 66 GraphicUsed by:67
Symbol 67 MovieClip {ScrollArrowDown_overSkin}Uses:66 30Used by:84 88 246
Symbol 68 GraphicUsed by:69
Symbol 69 MovieClip {ScrollThumb_overSkin}Uses:68Used by:84 88 248
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClip {ScrollArrowUp_overSkin}Uses:70 60Used by:84 88 247
Symbol 72 GraphicUsed by:73
Symbol 73 MovieClip {ScrollArrowUp_upSkin}Uses:72 60Used by:84 88 247
Symbol 74 GraphicUsed by:75
Symbol 75 MovieClip {ScrollThumb_upSkin}Uses:74Used by:84 88 248
Symbol 76 GraphicUsed by:77
Symbol 77 MovieClip {ScrollArrowDown_upSkin}Uses:76 30Used by:84 88 246
Symbol 78 GraphicUsed by:79
Symbol 79 MovieClip {ScrollArrowDown_disabledSkin}Uses:78Used by:84 88
Symbol 80 GraphicUsed by:81
Symbol 81 MovieClip {ScrollArrowUp_disabledSkin}Uses:80Used by:84 88
Symbol 82 GraphicUsed by:83 248
Symbol 83 MovieClip {ScrollBar_thumbIcon}Uses:82Used by:84 88 248
Symbol 84 MovieClip {fl.controls.ScrollBar}Uses:58 13 52 61 63 65 67 69 71 73 75 77 79 81 83Used by:87 121
Symbol 85 GraphicUsed by:86 115 131
Symbol 86 MovieClip {DataGridCellEditor_skin}Uses:85Used by:87
Symbol 87 MovieClip {fl.controls.DataGrid}Uses:12 13 29 31 33 50 52 54 56 84 86
Symbol 88 MovieClip {fl.controls.UIScrollBar}Uses:12 13 52 58 61 63 65 67 69 71 73 75 77 79 81 83
Symbol 89 GraphicUsed by:90 266
Symbol 90 MovieClipUses:89Used by:92
Symbol 91 MovieClipUsed by:92 191 235 270  Timeline
Symbol 92 MovieClip {AlertScreen}Uses:90 91
Symbol 93 GraphicUsed by:117 118 141 179 180
Symbol 94 GraphicUsed by:95
Symbol 95 MovieClip {Button_disabledSkin}Uses:94Used by:112
Symbol 96 GraphicUsed by:97
Symbol 97 MovieClip {Button_downSkin}Uses:96Used by:112
Symbol 98 GraphicUsed by:99
Symbol 99 MovieClip {Button_emphasizedSkin}Uses:98Used by:112
Symbol 100 GraphicUsed by:101
Symbol 101 MovieClip {Button_overSkin}Uses:100Used by:112
Symbol 102 GraphicUsed by:103
Symbol 103 MovieClip {Button_selectedDisabledSkin}Uses:102Used by:112
Symbol 104 GraphicUsed by:105
Symbol 105 MovieClip {Button_selectedDownSkin}Uses:104Used by:112
Symbol 106 GraphicUsed by:107
Symbol 107 MovieClip {Button_selectedOverSkin}Uses:106Used by:112
Symbol 108 GraphicUsed by:109
Symbol 109 MovieClip {Button_selectedUpSkin}Uses:108Used by:112
Symbol 110 GraphicUsed by:111
Symbol 111 MovieClip {Button_upSkin}Uses:110Used by:112
Symbol 112 MovieClip {fl.controls.Button}Uses:12 13 95 97 99 101 103 105 107 109 111 52Used by:117 118 140 141 144 179 180 184 226 270 287
Symbol 113 GraphicUsed by:114 130
Symbol 114 MovieClip {TextArea_disabledSkin}Uses:113Used by:116
Symbol 115 MovieClip {TextArea_upSkin}Uses:85Used by:116
Symbol 116 MovieClip {fl.controls.TextArea}Uses:12 13 114 115 52Used by:117 118 140 141 144 179 180 270
Symbol 117 MovieClip {Message}Uses:93 112 116
Symbol 118 MovieClip {VersionMessage}Uses:93 112 116
Symbol 119 GraphicUsed by:120
Symbol 120 MovieClip {List_skin}Uses:119Used by:121
Symbol 121 MovieClip {fl.controls.List}Uses:12 13 120 50 52 84Used by:133
Symbol 122 GraphicUsed by:123
Symbol 123 MovieClip {ComboBox_upSkin}Uses:122Used by:133
Symbol 124 GraphicUsed by:125
Symbol 125 MovieClip {ComboBox_disabledSkin}Uses:124Used by:133
Symbol 126 GraphicUsed by:127
Symbol 127 MovieClip {ComboBox_overSkin}Uses:126Used by:133
Symbol 128 GraphicUsed by:129
Symbol 129 MovieClip {ComboBox_downSkin}Uses:128Used by:133
Symbol 130 MovieClip {TextInput_disabledSkin}Uses:113Used by:132
Symbol 131 MovieClip {TextInput_upSkin}Uses:85Used by:132
Symbol 132 MovieClip {fl.controls.TextInput}Uses:12 13 130 131 52Used by:133 270 287
Symbol 133 MovieClip {fl.controls.ComboBox}Uses:12 13 52 123 125 127 129 132 121Used by:287
Symbol 134 GraphicUsed by:236 237 242 270  Timeline
Symbol 135 GraphicUsed by:Timeline
Symbol 136 Bitmap {JiggminLogo}Used by:302
Symbol 137 GraphicUsed by:140 144
Symbol 138 FontUsed by:139 142 143 149 150 151 152 154 155 157 158 160 161 163 165 166 168 169 172 173 176 182 183 201 208 209 210 231 232 233 234 250 251 252 253 254 255 257 258 263 264 265 267 268 289 291 293 295
Symbol 139 EditableTextUses:138Used by:140
Symbol 140 MovieClip {ComposeMessage}Uses:137 112 116 139Used by:302
Symbol 141 MovieClip {Confirm}Uses:93 112 116Used by:302
Symbol 142 TextUses:138Used by:144
Symbol 143 EditableTextUses:138Used by:144
Symbol 144 MovieClip {PlayerMessage}Uses:137 112 116 142 143Used by:302
Symbol 145 GraphicUsed by:146
Symbol 146 MovieClipUses:145Used by:178
Symbol 147 GraphicUsed by:148
Symbol 148 MovieClipUses:147Used by:178
Symbol 149 EditableTextUses:138Used by:178
Symbol 150 EditableTextUses:138Used by:178
Symbol 151 TextUses:138Used by:153
Symbol 152 TextUses:138Used by:153
Symbol 153 ButtonUses:151 152Used by:178
Symbol 154 TextUses:138Used by:156
Symbol 155 TextUses:138Used by:156
Symbol 156 ButtonUses:154 155Used by:178
Symbol 157 TextUses:138Used by:159
Symbol 158 TextUses:138Used by:159
Symbol 159 ButtonUses:157 158Used by:178
Symbol 160 TextUses:138Used by:162
Symbol 161 TextUses:138Used by:162
Symbol 162 ButtonUses:160 161Used by:178
Symbol 163 TextUses:138Used by:164
Symbol 164 MovieClipUses:163Used by:178
Symbol 165 TextUses:138Used by:167
Symbol 166 TextUses:138Used by:167
Symbol 167 ButtonUses:165 166Used by:178
Symbol 168 TextUses:138Used by:170
Symbol 169 TextUses:138Used by:170
Symbol 170 ButtonUses:168 169Used by:178
Symbol 171 GraphicUsed by:178
Symbol 172 TextUses:138Used by:174
Symbol 173 TextUses:138Used by:174
Symbol 174 ButtonUses:172 173Used by:178
Symbol 175 GraphicUsed by:177
Symbol 176 TextUses:138Used by:177
Symbol 177 MovieClipUses:175 176Used by:178
Symbol 178 MovieClip {PlayerOptions}Uses:146 148 149 150 153 156 159 162 164 167 170 171 174 177Used by:302
Symbol 179 MovieClip {RandomMatch}Uses:93 112 116Used by:302
Symbol 180 MovieClip {SendChallenge}Uses:93 112 116Used by:302
Symbol 181 GraphicUsed by:184
Symbol 182 TextUses:138Used by:184
Symbol 183 EditableTextUses:138Used by:184
Symbol 184 MovieClip {VictoryMessage}Uses:181 112 182 183Used by:302
Symbol 185 GraphicUsed by:187
Symbol 186 GraphicUsed by:187
Symbol 187 MovieClip {Ball}Uses:185 186Used by:302
Symbol 188 GraphicUsed by:191
Symbol 189 GraphicUsed by:190
Symbol 190 MovieClipUses:189Used by:191
Symbol 191 MovieClip {Disc}Uses:188 91 190Used by:235 302
Symbol 192 GraphicUsed by:193
Symbol 193 MovieClipUses:192Used by:194
Symbol 194 MovieClip {DiscColor}Uses:193Used by:302
Symbol 195 GraphicUsed by:196
Symbol 196 MovieClipUses:195Used by:197
Symbol 197 MovieClip {volly_fla.spin_43}Uses:196Used by:199
Symbol 198 GraphicUsed by:199
Symbol 199 MovieClip {volly_fla.paddleStuff_42}Uses:197 198Used by:200
Symbol 200 MovieClip {Paddle}Uses:199Used by:302
Symbol 201 TextUses:138Used by:205
Symbol 202 GraphicUsed by:203
Symbol 203 MovieClipUses:202Used by:204
Symbol 204 MovieClipUses:203Used by:205
Symbol 205 MovieClip {ThisIsYou}Uses:201 204Used by:302
Symbol 206 GraphicUsed by:207
Symbol 207 MovieClipUses:206Used by:211
Symbol 208 EditableTextUses:138Used by:211
Symbol 209 EditableTextUses:138Used by:211
Symbol 210 EditableTextUses:138Used by:211
Symbol 211 MovieClip {ListName}Uses:207 208 209 210Used by:302
Symbol 212 MovieClip {PlayerList}Used by:302
Symbol 213 GraphicUsed by:214
Symbol 214 MovieClipUses:213Used by:226 287
Symbol 215 FontUsed by:216 217 218 219 273 274 280
Symbol 216 TextUses:215Used by:220
Symbol 217 TextUses:215Used by:220
Symbol 218 TextUses:215Used by:220
Symbol 219 TextUses:215Used by:220
Symbol 220 MovieClipUses:216 217 218 219Used by:226
Symbol 221 GraphicUsed by:225
Symbol 222 FontUsed by:223 224
Symbol 223 TextUses:222Used by:225
Symbol 224 EditableTextUses:222Used by:225
Symbol 225 MovieClip {volly_fla.title_mc_54}Uses:221 223 224Used by:226 243 270 287
Symbol 226 MovieClip {ConnectingPage}Uses:214 112 220 225Used by:302
Symbol 227 GraphicUsed by:228
Symbol 228 MovieClipUses:227Used by:229
Symbol 229 MovieClip {volly_fla.scoreFlashAnim_56}Uses:228Used by:235
Symbol 230 GraphicUsed by:235
Symbol 231 EditableTextUses:138Used by:235
Symbol 232 EditableTextUses:138Used by:235
Symbol 233 EditableTextUses:138Used by:235
Symbol 234 EditableTextUses:138Used by:235
Symbol 235 MovieClip {GamePage}Uses:229 91 230 231 232 233 234 191Used by:302
Symbol 236 MovieClipUses:134Used by:242
Symbol 237 MovieClip {volly_fla.logo_mc_61}Uses:134Used by:242
Symbol 238 GraphicUsed by:239
Symbol 239 MovieClipUses:238Used by:242
Symbol 240 GraphicUsed by:241
Symbol 241 MovieClipUses:240Used by:242
Symbol 242 MovieClip {volly_fla.logoAnim_59}Uses:236 237 134 239 241Used by:243
Symbol 243 MovieClip {InitializePage}Uses:225 242Used by:302
Symbol 244 GraphicUsed by:245
Symbol 245 MovieClipUses:244Used by:270
Symbol 246 ButtonUses:77 67 63 62 30Used by:249
Symbol 247 ButtonUses:73 71 61 59 30Used by:249
Symbol 248 ButtonUses:75 83 69 65 64 82Used by:249
Symbol 249 MovieClip {volly_fla.scrollBar_66}Uses:58 246 247 248Used by:270
Symbol 250 TextUses:138Used by:270
Symbol 251 TextUses:138Used by:270
Symbol 252 EditableTextUses:138Used by:270
Symbol 253 TextUses:138Used by:270
Symbol 254 TextUses:138Used by:256
Symbol 255 TextUses:138Used by:256
Symbol 256 ButtonUses:254 255Used by:262
Symbol 257 TextUses:138Used by:259
Symbol 258 TextUses:138Used by:259
Symbol 259 ButtonUses:257 258Used by:262
Symbol 260 GraphicUsed by:261
Symbol 261 MovieClipUses:260Used by:262
Symbol 262 MovieClip {volly_fla.yesNoButton_82}Uses:256 259 261Used by:270
Symbol 263 EditableTextUses:138Used by:270
Symbol 264 TextUses:138Used by:270
Symbol 265 TextUses:138Used by:266
Symbol 266 MovieClip {volly_fla.chatCover_89}Uses:89 265Used by:270
Symbol 267 TextUses:138Used by:269
Symbol 268 TextUses:138Used by:269
Symbol 269 ButtonUses:267 268Used by:270
Symbol 270 MovieClip {LobbyPage}Uses:245 134 91 249 250 251 252 253 262 263 264 116 132 112 266 269 225Used by:302
Symbol 271 GraphicUsed by:272
Symbol 272 MovieClipUses:271Used by:287
Symbol 273 TextUses:215Used by:287
Symbol 274 TextUses:215Used by:287
Symbol 275 FontUsed by:276 277 278 279 281 282 284 285 304 305
Symbol 276 TextUses:275Used by:287
Symbol 277 TextUses:275Used by:287
Symbol 278 TextUses:275Used by:287
Symbol 279 TextUses:275Used by:287
Symbol 280 TextUses:215Used by:287
Symbol 281 TextUses:275Used by:283
Symbol 282 TextUses:275Used by:283
Symbol 283 ButtonUses:281 282Used by:287
Symbol 284 TextUses:275Used by:286
Symbol 285 TextUses:275Used by:286
Symbol 286 ButtonUses:284 285Used by:287
Symbol 287 MovieClip {LoginPage}Uses:272 214 273 274 276 277 278 279 133 280 112 132 283 286 225Used by:302
Symbol 288 GraphicUsed by:297
Symbol 289 TextUses:138Used by:290
Symbol 290 MovieClipUses:289Used by:297
Symbol 291 TextUses:138Used by:292
Symbol 292 MovieClipUses:291Used by:297
Symbol 293 TextUses:138Used by:294
Symbol 294 MovieClipUses:293Used by:297
Symbol 295 TextUses:138Used by:296
Symbol 296 MovieClipUses:295Used by:297
Symbol 297 MovieClip {ColorBG}Uses:288 290 292 294 296 SS1Used by:302
Symbol 298 Sound {LogoIntroMusic}Used by:302
Symbol 299 Sound {BounceSound}Used by:302
Symbol 300 Sound {GoodScore}Used by:302
Symbol 301 Sound {BadScore}Used by:302
Symbol 302 MovieClip {volly_fla.export_2}Uses:136 140 141 144 178 179 180 184 187 191 194 200 205 211 212 226 235 243 270 287 297 298 299 300 301Used by:Timeline
Symbol 303 GraphicUsed by:Timeline
Symbol 304 TextUses:275Used by:306
Symbol 305 TextUses:275Used by:306
Symbol 306 ButtonUses:304 305Used by:Timeline
Streaming Sound 1Used by:Symbol 297 MovieClip {ColorBG}

Instance Names

"preloaderHolder"Frame 1Symbol 91 MovieClip
"alertHolder"Frame 1Symbol 91 MovieClip
"pageHolder"Frame 11Symbol 91 MovieClip
"muteButton"Frame 11Symbol 306 Button
"contentHolder"Symbol 92 MovieClip {AlertScreen} Frame 1Symbol 91 MovieClip
"ok_bt"Symbol 117 MovieClip {Message} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"textBox"Symbol 117 MovieClip {Message} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"getItButton"Symbol 118 MovieClip {VersionMessage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"textBox"Symbol 118 MovieClip {VersionMessage} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"sendButton"Symbol 140 MovieClip {ComposeMessage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"textBox"Symbol 140 MovieClip {ComposeMessage} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"cancelButton"Symbol 140 MovieClip {ComposeMessage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"toBox"Symbol 140 MovieClip {ComposeMessage} Frame 1Symbol 139 EditableText
"okButton"Symbol 141 MovieClip {Confirm} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"textBox"Symbol 141 MovieClip {Confirm} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"cancelButton"Symbol 141 MovieClip {Confirm} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"replyButton"Symbol 144 MovieClip {PlayerMessage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"textBox"Symbol 144 MovieClip {PlayerMessage} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"closeButton"Symbol 144 MovieClip {PlayerMessage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"nameBox"Symbol 144 MovieClip {PlayerMessage} Frame 1Symbol 143 EditableText
"extraBG"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 146 MovieClip
"nameBox"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 149 EditableText
"rankBox"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 150 EditableText
"messageButton"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 153 Button
"flagButton"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 156 Button
"cancelButton"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 159 Button
"ignoreButton"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 162 Button
"ignoreMod"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 164 MovieClip
"promoteButton"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 167 Button
"banButton"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 170 Button
"challengeButton"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 174 Button
"meScreen"Symbol 178 MovieClip {PlayerOptions} Frame 1Symbol 177 MovieClip
"cancelButton"Symbol 179 MovieClip {RandomMatch} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"textBox"Symbol 179 MovieClip {RandomMatch} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"cancelButton"Symbol 180 MovieClip {SendChallenge} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"textBox"Symbol 180 MovieClip {SendChallenge} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"okButton"Symbol 184 MovieClip {VictoryMessage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"nameBox"Symbol 184 MovieClip {VictoryMessage} Frame 1Symbol 183 EditableText
"colorHolder"Symbol 191 MovieClip {Disc} Frame 1Symbol 91 MovieClip
"spin"Symbol 199 MovieClip {volly_fla.paddleStuff_42} Frame 1Symbol 197 MovieClip {volly_fla.spin_43}
"graphic"Symbol 200 MovieClip {Paddle} Frame 1Symbol 199 MovieClip {volly_fla.paddleStuff_42}
"bg"Symbol 211 MovieClip {ListName} Frame 1Symbol 207 MovieClip
"nameBox"Symbol 211 MovieClip {ListName} Frame 1Symbol 208 EditableText
"rankBox"Symbol 211 MovieClip {ListName} Frame 1Symbol 209 EditableText
"pingBox"Symbol 211 MovieClip {ListName} Frame 1Symbol 210 EditableText
"versionBox"Symbol 225 MovieClip {volly_fla.title_mc_54} Frame 1Symbol 224 EditableText
"cancelButton"Symbol 226 MovieClip {ConnectingPage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"leftFlash"Symbol 235 MovieClip {GamePage} Frame 1Symbol 229 MovieClip {volly_fla.scoreFlashAnim_56}
"rightFlash"Symbol 235 MovieClip {GamePage} Frame 1Symbol 229 MovieClip {volly_fla.scoreFlashAnim_56}
"bgHolder"Symbol 235 MovieClip {GamePage} Frame 1Symbol 91 MovieClip
"leftName"Symbol 235 MovieClip {GamePage} Frame 1Symbol 231 EditableText
"leftScore"Symbol 235 MovieClip {GamePage} Frame 1Symbol 232 EditableText
"rightName"Symbol 235 MovieClip {GamePage} Frame 1Symbol 233 EditableText
"rightScore"Symbol 235 MovieClip {GamePage} Frame 1Symbol 234 EditableText
"paddleHolder"Symbol 235 MovieClip {GamePage} Frame 1Symbol 91 MovieClip
"ballHolder"Symbol 235 MovieClip {GamePage} Frame 1Symbol 91 MovieClip
"logo_mc"Symbol 242 MovieClip {volly_fla.logoAnim_59} Frame 1Symbol 237 MovieClip {volly_fla.logo_mc_61}
"anim"Symbol 243 MovieClip {InitializePage} Frame 1Symbol 242 MovieClip {volly_fla.logoAnim_59}
"thumb"Symbol 249 MovieClip {volly_fla.scrollBar_66} Frame 1Symbol 248 Button
"yesButton"Symbol 262 MovieClip {volly_fla.yesNoButton_82} Frame 1Symbol 256 Button
"noButton"Symbol 262 MovieClip {volly_fla.yesNoButton_82} Frame 1Symbol 259 Button
"outline_mc"Symbol 262 MovieClip {volly_fla.yesNoButton_82} Frame 1Symbol 261 MovieClip
"InstanceName_0"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 245 MovieClip
"InstanceName_1"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 245 MovieClip
"InstanceName_0"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 245 MovieClip
"listHolder"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 91 MovieClip
"scrollBar"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 249 MovieClip {volly_fla.scrollBar_66}
"nameBox"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 252 EditableText
"challengeYN"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 262 MovieClip {volly_fla.yesNoButton_82}
"messageYN"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 262 MovieClip {volly_fla.yesNoButton_82}
"chatYN"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 262 MovieClip {volly_fla.yesNoButton_82}
"playersBox"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 263 EditableText
"chatBox"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 116 MovieClip {fl.controls.TextArea}
"chatInput"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 132 MovieClip {fl.controls.TextInput}
"randomButton"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"chatCover"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 266 MovieClip {volly_fla.chatCover_89}
"logoutButton"Symbol 270 MovieClip {LobbyPage} Frame 1Symbol 269 Button
"serverOptions"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 133 MovieClip {fl.controls.ComboBox}
"go_bt"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"createAccount_bt"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"login_bt"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 112 MovieClip {fl.controls.Button}
"nameBox1"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 132 MovieClip {fl.controls.TextInput}
"passBox1"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 132 MovieClip {fl.controls.TextInput}
"nameBox2"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 132 MovieClip {fl.controls.TextInput}
"passBox2"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 132 MovieClip {fl.controls.TextInput}
"musicButton"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 283 Button
"gameButton"Symbol 287 MovieClip {LoginPage} Frame 1Symbol 286 Button

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 256, ScriptTimeout: 5 seconds

Labels

"preload"Frame 1
"export"Frame 6
"pages"Frame 11
"flash"Symbol 10 MovieClip {Dot} Frame 41
"die"Symbol 92 MovieClip {AlertScreen} Frame 9
"blue"Symbol 187 MovieClip {Ball} Frame 1
"pink"Symbol 187 MovieClip {Ball} Frame 6
"red"Symbol 194 MovieClip {DiscColor} Frame 1
"blue"Symbol 194 MovieClip {DiscColor} Frame 6
"yellow"Symbol 194 MovieClip {DiscColor} Frame 11
"hit"Symbol 197 MovieClip {volly_fla.spin_43} Frame 2
"off"Symbol 229 MovieClip {volly_fla.scoreFlashAnim_56} Frame 1
"on"Symbol 229 MovieClip {volly_fla.scoreFlashAnim_56} Frame 6
"off"Symbol 266 MovieClip {volly_fla.chatCover_89} Frame 1
"on"Symbol 266 MovieClip {volly_fla.chatCover_89} Frame 6




http://swfchan.com/12/56260/info.shtml
Created: 19/4 -2019 14:41:40 Last modified: 19/4 -2019 14:41:40 Server time: 14/05 -2024 11:54:35