Very impressive! On Mar 25, 2016, at 1:11 AM, OmPrakash Muppirala <bigosma...@gmail.com> wrote:
> On Thu, Mar 24, 2016 at 12:59 PM, <aha...@apache.org> wrote: > >> under 100 errors >> > > woohoo! > > >> >> >> Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo >> Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a23bd593 >> Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a23bd593 >> Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a23bd593 >> >> Branch: refs/heads/spark >> Commit: a23bd593f77438cf52898e8b72c988563f2ca9d8 >> Parents: 93ca6b8 >> Author: Alex Harui <aha...@apache.org> >> Authored: Thu Mar 24 12:59:08 2016 -0700 >> Committer: Alex Harui <aha...@apache.org> >> Committed: Thu Mar 24 12:59:08 2016 -0700 >> >> ---------------------------------------------------------------------- >> .../main/flex/org/apache/flex/core/IChild.as | 22 +- >> .../src/main/flex/flex/display/DisplayObject.as | 7 +- >> .../MX/src/main/flex/flex/display/Graphics.as | 2 +- >> .../MX/src/main/flex/flex/display/MovieClip.as | 190 +++++++++ >> .../MX/src/main/flex/flex/display/Sprite.as | 28 ++ >> .../main/flex/flex/display/TopOfDisplayList.as | 21 +- >> .../MX/src/main/flex/flex/system/I18NManager.as | 7 + >> .../MX/src/main/flex/flex/text/TextField.as | 394 ++----------------- >> .../src/main/flex/flex/utils/IExternalizable.as | 26 ++ >> .../MX/src/main/flex/mx/binding/Watcher.as | 3 + >> .../MX/src/main/flex/mx/controls/ToolTip.as | 42 +- >> .../core/IDeferredInstantiationUIComponent.as | 4 + >> .../mx/core/IDisplayObjectContainerInterface.as | 47 ++- >> .../flex/mx/core/IDisplayObjectInterface.as | 30 +- >> .../src/main/flex/mx/core/IFlexDisplayObject.as | 1 - >> .../MX/src/main/flex/mx/core/IVisualElement.as | 2 + >> .../MX/src/main/flex/mx/core/UIComponent.as | 238 +++++++++-- >> .../MX/src/main/flex/mx/core/UITextField.as | 29 ++ >> .../MX/src/main/flex/mx/core/UITextFormat.as | 15 +- >> .../src/main/flex/mx/effects/EffectManager.as | 42 +- >> .../src/main/flex/mx/managers/SystemManager.as | 47 +-- >> .../flex/mx/managers/SystemManagerGlobals.as | 9 + >> .../main/flex/mx/managers/ToolTipManagerImpl.as | 5 +- >> .../MX/src/main/flex/mx/utils/ObjectProxy.as | 1 + >> .../MX/src/main/flex/mx/utils/Platform.as | 2 +- >> .../src/main/resources/compile-asjs-config.xml | 4 +- >> 26 files changed, 720 insertions(+), 498 deletions(-) >> ---------------------------------------------------------------------- >> >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IChild.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IChild.as >> b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IChild.as >> index 6052094..f273f2e 100755 >> --- a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IChild.as >> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IChild.as >> @@ -42,18 +42,18 @@ package org.apache.flex.core >> * @playerversion AIR 2.6 >> * @productversion FlexJS 0.0 >> */ >> - COMPILE::AS3 >> + COMPILE::AS3 >> function get parent():DisplayObjectContainer; >> >> - /** >> - * The parent. >> - * >> - * @langversion 3.0 >> - * @playerversion Flash 10.2 >> - * @playerversion AIR 2.6 >> - * @productversion FlexJS 0.0 >> - */ >> - COMPILE::JS >> - function get parent():IUIBase; >> + /** >> + * The parent. >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + */ >> + COMPILE::JS >> + function get parent():IUIBase; >> } >> } >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/display/DisplayObject.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/flex/display/DisplayObject.as >> b/frameworks/projects/MX/src/main/flex/flex/display/DisplayObject.as >> index 2568582..bf0598b 100644 >> --- a/frameworks/projects/MX/src/main/flex/flex/display/DisplayObject.as >> +++ b/frameworks/projects/MX/src/main/flex/flex/display/DisplayObject.as >> @@ -18,6 +18,11 @@ >> >> //////////////////////////////////////////////////////////////////////////////// >> package flex.display >> { >> +COMPILE::AS3 >> +{ >> + import flash.display.DisplayObject; >> + import flash.display.DisplayObjectContainer; >> +} >> import flex.display.TopOfDisplayList; >> >> import org.apache.flex.core.IUIBase; >> @@ -25,7 +30,7 @@ import org.apache.flex.events.IEventDispatcher; >> import org.apache.flex.geom.Point; >> import org.apache.flex.geom.Rectangle; >> >> -public interface DisplayObject extends IEventDispatcher >> +public interface DisplayObject extends IEventDispatcher, IUIBase >> { >> include "../../mx/core/IDisplayObjectInterface.as" >> >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/display/Graphics.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/flex/display/Graphics.as >> b/frameworks/projects/MX/src/main/flex/flex/display/Graphics.as >> index fe6f0ec..1a83c3c 100644 >> --- a/frameworks/projects/MX/src/main/flex/flex/display/Graphics.as >> +++ b/frameworks/projects/MX/src/main/flex/flex/display/Graphics.as >> @@ -69,7 +69,7 @@ package flex.display >> public function curveTo(mx:Number, my:Number, x:Number, >> y:Number):void >> { >> var path:String = "M " + lastX.toString() + " " + >> lastY.toString(); >> - path += "Q " + mx.toString() + " " + my.toString() >> + " " + >> + path += "Q " + mx.toString() + " " + my.toString() >> + " " >> + x.toString() + " " + >> y.toString(); >> host.drawPath(path); >> lastX = x; >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/display/MovieClip.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/flex/display/MovieClip.as >> b/frameworks/projects/MX/src/main/flex/flex/display/MovieClip.as >> index 6f1fca9..8add311 100644 >> --- a/frameworks/projects/MX/src/main/flex/flex/display/MovieClip.as >> +++ b/frameworks/projects/MX/src/main/flex/flex/display/MovieClip.as >> @@ -19,6 +19,195 @@ >> >> package flex.display >> { >> + import org.apache.flex.core.IBead; >> + import org.apache.flex.core.IBeadModel; >> + import org.apache.flex.core.IBeadView; >> + import org.apache.flex.core.IFlexJSElement; >> + import org.apache.flex.core.ValuesManager; >> + import org.apache.flex.events.Event; >> + import org.apache.flex.events.IEventDispatcher; >> + >> + COMPILE::AS3 >> + { >> + import flash.display.MovieClip; >> + } >> + COMPILE::JS >> + { >> + import flex.display.DisplayObjectContainer; >> + } >> + >> + COMPILE::AS3 >> + public class MovieClip extends flash.display.MovieClip >> + { >> + COMPILE::AS3 >> + private var _model:IBeadModel; >> + >> + /** >> + * An IBeadModel that serves as the data model for the >> component. >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + */ >> + COMPILE::AS3 >> + public function get model():Object >> + { >> + if (_model == null) >> + { >> + // addbead will set _model >> + addBead(new >> (ValuesManager.valuesImpl.getValue(this, "iBeadModel")) as IBead); >> + } >> + return _model; >> + } >> + >> + /** >> + * @private >> + */ >> + COMPILE::AS3 >> + public function set model(value:Object):void >> + { >> + if (_model != value) >> + { >> + addBead(value as IBead); >> + dispatchEvent(new Event("modelChanged")); >> + } >> + } >> + >> + private var _view:IBeadView; >> + >> + /** >> + * An IBeadView that serves as the view for the component. >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + * @flexjsignorecoercion Class >> + */ >> + public function get view():IBeadView >> + { >> + if (_view == null) >> + { >> + var c:Class = >> ValuesManager.valuesImpl.getValue(this, "iBeadView") as Class; >> + if (c) >> + { >> + if (c) >> + { >> + _view = (new c()) as >> IBeadView; >> + addBead(_view); >> + } >> + } >> + } >> + return _view; >> + } >> + >> + /** >> + * @private >> + */ >> + public function set view(value:IBeadView):void >> + { >> + if (_view != value) >> + { >> + addBead(value as IBead); >> + dispatchEvent(new Event("viewChanged")); >> + } >> + } >> + >> + /** >> + * @copy org.apache.flex.core.IUIBase#element >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + */ >> + public function get element():IFlexJSElement >> + { >> + return this; >> + } >> + >> + /** >> + * @copy org.apache.flex.core.Application#beads >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + */ >> + public var beads:Array; >> + >> + private var _beads:Vector.<IBead>; >> + >> + /** >> + * @copy org.apache.flex.core.IStrand#addBead() >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + */ >> + override public function addBead(bead:IBead):void >> + { >> + if (!_beads) >> + _beads = new Vector.<IBead>; >> + _beads.push(bead); >> + if (bead is IBeadModel) >> + _model = bead as IBeadModel; >> + else if (bead is IBeadView) >> + _view = bead as IBeadView; >> + bead.strand = this; >> + >> + if (bead is IBeadView) { >> + IEventDispatcher(this).dispatchEvent(new >> Event("viewChanged")); >> + } >> + } >> + >> + /** >> + * @copy org.apache.flex.core.IStrand#getBeadByType() >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + */ >> + public function getBeadByType(classOrInterface:Class):IBead >> + { >> + for each (var bead:IBead in _beads) >> + { >> + if (bead is classOrInterface) >> + return bead; >> + } >> + return null; >> + } >> + >> + /** >> + * @copy org.apache.flex.core.IStrand#removeBead() >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 10.2 >> + * @playerversion AIR 2.6 >> + * @productversion FlexJS 0.0 >> + */ >> + public function removeBead(value:IBead):IBead >> + { >> + var n:int = _beads.length; >> + for (var i:int = 0; i < n; i++) >> + { >> + var bead:IBead = _beads[i]; >> + if (bead == value) >> + { >> + _beads.splice(i, 1); >> + return bead; >> + } >> + } >> + return null; >> + } >> + >> + >> + } >> + >> + COMPILE::JS >> public class MovieClip extends Sprite >> { >> public function get totalFrames():int >> @@ -29,5 +218,6 @@ package flex.display >> { >> return 1; >> } >> + >> } >> } >> \ No newline at end of file >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/display/Sprite.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/flex/display/Sprite.as >> b/frameworks/projects/MX/src/main/flex/flex/display/Sprite.as >> index 99dd7c4..bd29b87 100644 >> --- a/frameworks/projects/MX/src/main/flex/flex/display/Sprite.as >> +++ b/frameworks/projects/MX/src/main/flex/flex/display/Sprite.as >> @@ -20,6 +20,9 @@ >> package flex.display >> { >> import org.apache.flex.core.graphics.GraphicsContainer; >> + import org.apache.flex.geom.Point; >> + import org.apache.flex.utils.PointUtils; >> + import mx.managers.SystemManagerGlobals; >> >> public class Sprite extends GraphicsContainer implements >> DisplayObjectContainer >> { >> @@ -147,5 +150,30 @@ package flex.display >> return _graphics >> } >> >> + COMPILE::JS >> + public function get mouseX():Number >> + { >> + var pt:Point = new >> Point(SystemManagerGlobals.lastMouseEvent.screenX, >> + >> SystemManagerGlobals.lastMouseEvent.screenY); >> + pt = PointUtils.globalToLocal(pt, this); >> + return pt.x; >> + } >> + >> + COMPILE::JS >> + public function get mouseY():Number >> + { >> + var pt:Point = new >> Point(SystemManagerGlobals.lastMouseEvent.screenX, >> + >> SystemManagerGlobals.lastMouseEvent.screenY); >> + pt = PointUtils.globalToLocal(pt, this); >> + return pt.x; >> + } >> + >> + COMPILE::JS >> + override public function get >> parent():DisplayObjectContainer >> + { >> + return super.parent as DisplayObjectContainer; >> + } >> + >> } >> + >> } >> \ No newline at end of file >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/display/TopOfDisplayList.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/flex/display/TopOfDisplayList.as >> b/frameworks/projects/MX/src/main/flex/flex/display/TopOfDisplayList.as >> index 94dbf47..e5ef3e4 100644 >> --- a/frameworks/projects/MX/src/main/flex/flex/display/TopOfDisplayList.as >> +++ b/frameworks/projects/MX/src/main/flex/flex/display/TopOfDisplayList.as >> @@ -26,6 +26,8 @@ COMPILE::AS3 >> COMPILE::JS >> { >> import org.apache.flex.core.UIBase; >> + import org.apache.flex.core.HTMLElementWrapper; >> + import org.apache.flex.core.WrappedHTMLElement; >> } >> >> COMPILE::AS3 >> @@ -52,12 +54,29 @@ public class TopOfDisplayList extends Stage >> } >> >> COMPILE::JS >> -public class TopOfDisplayList extends UIBase >> +public class TopOfDisplayList extends Sprite >> { >> public function TopOfDisplayList() >> { >> super(); >> } >> + >> + /** >> + * @flexjsignorecoercion flex.display.InteractiveObject >> + * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement >> + */ >> + public function get focus():InteractiveObject >> + { >> + return (document.activeElement as >> WrappedHTMLElement).flexjs_wrapper as InteractiveObject; >> + } >> + >> + /** >> + * @flexjsignorecoercion org.apache.flex.core.HTMLElementWrapper >> + */ >> + public function set focus(value:InteractiveObject):void >> + { >> + document.activeElement = (value as >> HTMLElementWrapper).element; >> + } >> } >> >> } >> \ No newline at end of file >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/system/I18NManager.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/flex/system/I18NManager.as >> b/frameworks/projects/MX/src/main/flex/flex/system/I18NManager.as >> index c838d89..68e6cf4 100644 >> --- a/frameworks/projects/MX/src/main/flex/flex/system/I18NManager.as >> +++ b/frameworks/projects/MX/src/main/flex/flex/system/I18NManager.as >> @@ -1,6 +1,9 @@ >> package flex.system >> { >> + COMPILE::AS3 >> + { >> import flash.system.Capabilities; >> + } >> >> public class I18NManager >> { >> @@ -19,6 +22,10 @@ package flex.system >> else >> return [ Capabilities.language ]; >> } >> + COMPILE::JS >> + { >> + return [ navigator.language ]; >> + } >> } >> } >> } >> \ No newline at end of file >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/text/TextField.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/flex/text/TextField.as >> b/frameworks/projects/MX/src/main/flex/flex/text/TextField.as >> index d8bde5f..116c7e3 100644 >> --- a/frameworks/projects/MX/src/main/flex/flex/text/TextField.as >> +++ b/frameworks/projects/MX/src/main/flex/flex/text/TextField.as >> @@ -1,5 +1,6 @@ >> package flex.text >> { >> + >> COMPILE::AS3 >> { >> import flash.text.TextField; >> @@ -30,7 +31,7 @@ public class TextField extends flash.text.TextField >> } >> >> COMPILE::JS >> -public class TextField extends Label implements IUITextField >> +public class TextField extends Label >> { >> >> private var _alwaysShowSelection:Boolean; >> @@ -94,12 +95,6 @@ public class TextField extends Label implements >> IUITextField >> element.style.backgroundColor = "#" + >> _backgroundColor.toString(16); >> } >> >> - public function get baselinePosition():Number >> - { >> - trace("TextField.baselinePosition not implemented"); >> - return 0; >> - } >> - >> private var _border:Boolean; >> public function get border():Boolean >> { >> @@ -179,16 +174,6 @@ public class TextField extends Label implements >> IUITextField >> (element as HTMLInputElement).type = "input"; >> } >> >> - private var _document:Object; >> - public function get document():Object >> - { >> - return _document; >> - } >> - public function set document(value:Object):void >> - { >> - _document = value; >> - } >> - >> private var _doubleClickEnabled:Boolean; >> public function get doubleClickEnabled():Boolean >> { >> @@ -213,58 +198,6 @@ public class TextField extends Label implements >> IUITextField >> trace("TextField.embedFonts not implemented"); >> } >> >> - private var _enabled:Boolean; >> - public function get enabled():Boolean >> - { >> - return _enabled; >> - } >> - public function set enabled(value:Boolean):void >> - { >> - _enabled = value; >> - } >> - >> - public function get enableIME():Boolean >> - { >> - trace("TextField.enableIME not implemented"); >> - return false; >> - } >> - >> - public function get explicitMaxWidth():Number >> - { >> - trace("TextField.explicitMaxWidth not implemented"); >> - return 0; >> - } >> - >> - public function get explicitMaxHeight():Number >> - { >> - trace("TextField.explicitMaxHeight not implemented"); >> - return 0; >> - } >> - >> - public function get explicitMinHeight():Number >> - { >> - trace("TextField.explicitMinHeight not implemented"); >> - return 0; >> - } >> - >> - public function get explicitMinWidth():Number >> - { >> - trace("TextField.explicitMinWidth not implemented"); >> - return 0; >> - } >> - >> - private var _focusPane:Sprite; >> - public function get focusPane():Sprite >> - { >> - trace("TextField.focusPane not implemented"); >> - return _focusPane; >> - } >> - public function set focusPane(value:Sprite):void >> - { >> - _focusPane = value; >> - trace("TextField.focusPane not implemented"); >> - } >> - >> private var _focusRect:Object; >> public function get focusRect():Object >> { >> @@ -299,64 +232,6 @@ public class TextField extends Label implements >> IUITextField >> element.innerHTML = _htmlText = value; >> } >> >> - private var _ignorePadding:Boolean; >> - public function get ignorePadding():Boolean >> - { >> - trace("TextField.ignorePadding not implemented"); >> - return _ignorePadding; >> - } >> - public function set ignorePadding(value:Boolean):void >> - { >> - _ignorePadding = value; >> - trace("TextField.ignorePadding not implemented"); >> - } >> - >> - private var _imeMode:String; >> - public function get imeMode():String >> - { >> - return _imeMode; >> - } >> - public function set imeMode(value:String):void >> - { >> - _imeMode = value; >> - } >> - >> - private var _includeInLayout:Boolean; >> - public function get includeInLayout():Boolean >> - { >> - trace("TextField.includeInLayout not implemented"); >> - return _includeInLayout; >> - } >> - public function set includeInLayout(value:Boolean):void >> - { >> - _includeInLayout = value; >> - trace("TextField.includeInLayout not implemented"); >> - } >> - >> - private var _inheritingStyles:Object; >> - public function get inheritingStyles():Object >> - { >> - trace("TextField.inheritingStyles not implemented"); >> - return _inheritingStyles; >> - } >> - public function set inheritingStyles(value:Object):void >> - { >> - _inheritingStyles = value; >> - trace("TextField.inheritingStyles not implemented"); >> - } >> - >> - private var _isPopUp:Boolean; >> - public function get isPopUp():Boolean >> - { >> - trace("TextField.isPopUp not implemented"); >> - return _isPopUp; >> - } >> - public function set isPopUp(value:Boolean):void >> - { >> - _isPopUp = value; >> - trace("TextField.isPopUp not implemented"); >> - } >> - >> public function get length():int >> { >> return element.innerText.length; >> @@ -373,12 +248,6 @@ public class TextField extends Label implements >> IUITextField >> (element as HTMLInputElement).maxLength = value; >> } >> >> - public function get maxHeight():Number >> - { >> - trace("TextField.maxHeight not implemented"); >> - return 0; >> - } >> - >> public function get maxScrollH():int >> { >> trace("TextField.maxScrollH not implemented"); >> @@ -391,72 +260,6 @@ public class TextField extends Label implements >> IUITextField >> return 0; >> } >> >> - public function get maxWidth():Number >> - { >> - trace("TextField.maxWidth not implemented"); >> - return 0; >> - } >> - >> - public function get measuredHeight():Number >> - { >> - trace("TextField.measuredHeight not implemented"); >> - return 0; >> - } >> - >> - private var _measuredMinHeight:Number; >> - public function get measuredMinHeight():Number >> - { >> - trace("TextField.measuredMinHeight not implemented"); >> - return _measuredMinHeight; >> - } >> - public function set measuredMinHeight(value:Number):void >> - { >> - _measuredMinHeight = value; >> - trace("TextField.measuredMinHeight not implemented"); >> - } >> - >> - public function get measuredWidth():Number >> - { >> - trace("TextField.measuredWidth not implemented"); >> - return 0; >> - } >> - >> - private var _measuredMinWidth:Number; >> - public function get measuredMinWidth():Number >> - { >> - trace("TextField.measuredMinWidth not implemented"); >> - return _measuredMinWidth; >> - } >> - public function set measuredMinWidth(value:Number):void >> - { >> - _measuredMinWidth = value; >> - trace("TextField.measuredMinWidth not implemented"); >> - } >> - >> - public function get minHeight():Number >> - { >> - trace("TextField.minHeight not implemented"); >> - return 0; >> - } >> - >> - public function get minWidth():Number >> - { >> - trace("TextField.minWidth not implemented"); >> - return 0; >> - } >> - >> - private var _moduleFactory:IFlexModuleFactory; >> - public function get moduleFactory():IFlexModuleFactory >> - { >> - trace("TextField.moduleFactory not implemented"); >> - return _moduleFactory; >> - } >> - public function set moduleFactory(value:IFlexModuleFactory):void >> - { >> - _moduleFactory = value; >> - trace("TextField.moduleFactory not implemented"); >> - } >> - >> private var _mouseEnabled:Boolean; >> public function get mouseEnabled():Boolean >> { >> @@ -481,6 +284,18 @@ public class TextField extends Label implements >> IUITextField >> trace("TextField.mouseWheelEnabled not implemented"); >> } >> >> + public function get mouseX():Number >> + { >> + trace("TextField.mouseX not implemented"); >> + return 0; >> + } >> + >> + public function get mouseY():Number >> + { >> + trace("TextField.mouseY not implemented"); >> + return 0; >> + } >> + >> private var _multiline:Boolean; >> public function get multiline():Boolean >> { >> @@ -504,50 +319,12 @@ public class TextField extends Label implements >> IUITextField >> element.id = name; >> } >> >> - private var _owner:DisplayObjectContainer; >> - public function get owner():DisplayObjectContainer >> - { >> - return _owner; >> - } >> - public function set owner(value:DisplayObjectContainer):void >> - { >> - _owner = value; >> - } >> - >> - private var _nestLevel:int; >> - public function get nestLevel():int >> - { >> - return _nestLevel; >> - } >> - public function set nestLevel(value:int):void >> - { >> - _nestLevel = value; >> - } >> - >> - private var _nonInheritingStyles:Object; >> - public function get nonInheritingStyles():Object >> - { >> - trace("TextField.nonInheritingStyles not implemented"); >> - return _nonInheritingStyles; >> - } >> - public function set nonInheritingStyles(value:Object):void >> - { >> - _nonInheritingStyles = value; >> - trace("TextField.nonInheritingStyles not implemented"); >> - } >> - >> - public function get nonZeroTextHeight():Number >> - { >> - trace("TextField.nonZeroTextHeight not implemented"); >> - return 0; >> - } >> - >> public function get numLines():int >> { >> trace("TextField.numLines not implemented"); >> - return 0; >> + return -1; >> } >> - >> + >> private var _restrict:String; >> public function get restrict():String >> { >> @@ -626,17 +403,6 @@ public class TextField extends Label implements >> IUITextField >> trace("TextField.sharpness not implemented"); >> } >> >> - private var _styleName:Object; >> - public function get styleName():Object >> - { >> - return _styleName; >> - } >> - public function set styleName(value:Object):void >> - { >> - _styleName = value; >> - element.className = styleName.toString(); >> - } >> - >> private var _styleSheet:StyleSheet; >> public function get styleSheet():StyleSheet >> { >> @@ -648,19 +414,7 @@ public class TextField extends Label implements >> IUITextField >> _styleSheet = value; >> trace("TextField.styleSheet not implemented"); >> } >> - >> - private var _systemManager:ISystemManager; >> - public function get systemManager():ISystemManager >> - { >> - trace("TextField.systemManager not implemented"); >> - return _systemManager; >> - } >> - public function set systemManager(value:ISystemManager):void >> - { >> - _systemManager = value; >> - trace("TextField.systemManager not implemented"); >> - } >> - >> + >> private var _tabEnabled:Boolean; >> public function get tabEnabled():Boolean >> { >> @@ -718,30 +472,6 @@ public class TextField extends Label implements >> IUITextField >> trace("TextField.thickness not implemented"); >> } >> >> - private var _toolTip:String; >> - public function get toolTip():String >> - { >> - trace("TextField.toolTip not implemented"); >> - return _toolTip; >> - } >> - public function set toolTip(value:String):void >> - { >> - _toolTip = value; >> - trace("TextField.toolTip not implemented"); >> - } >> - >> - private var _tweeningProperties:Array; >> - public function get tweeningProperties():Array >> - { >> - trace("TextField.tweeningProperties not implemented"); >> - return _tweeningProperties; >> - } >> - public function set tweeningProperties(value:Array):void >> - { >> - _tweeningProperties = value; >> - trace("TextField.tweeningProperties not implemented"); >> - } >> - >> public function get topOfDisplayList():TopOfDisplayList >> { >> trace("TextField.topOfDisplayList not implemented"); >> @@ -801,18 +531,6 @@ public class TextField extends Label implements >> IUITextField >> return 0; >> } >> >> - public function getExplicitOrMeasuredHeight():Number >> - { >> - trace("TextField.getExplicitOrMeasuredHeight not >> implemented"); >> - return 0; >> - } >> - >> - public function getExplicitOrMeasuredWidth():Number >> - { >> - trace("TextField.getExplicitOrMeasuredWidth not >> implemented"); >> - return 0; >> - } >> - >> public function getFirstCharInParagraph(index:int):int >> { >> trace("TextField.getFirstCharInParagraph not implemented"); >> @@ -867,59 +585,12 @@ public class TextField extends Label implements >> IUITextField >> return 0; >> } >> >> - public function getStyle(styleName:String):* >> - { >> - trace("TextField.getStyle not implemented"); >> - return undefined; >> - } >> - >> public function getTextFormat(beginIndex:int = -1, endIndex:int = >> -1):TextFormat >> { >> trace("TextField.getTextFormat not implemented"); >> return null; >> } >> >> - public function getUITextFormat():UITextFormat >> - { >> - trace("TextField.getUITextFormat not implemented"); >> - return null; >> - } >> - >> - public function initialize():void >> - { >> - trace("TextField.initialize not implemented"); >> - } >> - >> - public function invalidateDisplayList():void >> - { >> - trace("TextField.invalidateDisplayList not implemented"); >> - } >> - >> - public function invalidateProperties():void >> - { >> - trace("TextField.invalidateProperties not implemented"); >> - } >> - >> - public function invalidateSize():void >> - { >> - trace("TextField.invalidateSize not implemented"); >> - } >> - >> - public function move(x:Number, y:Number):void >> - { >> - this.x = x; >> - this.y = y; >> - } >> - >> - public function owns(child:DisplayObject):Boolean >> - { >> - return false; >> - } >> - >> - public function parentChanged(parent:DisplayObjectContainer):void >> - { >> - } >> - >> public function replaceSelectedText(text:String):void >> { >> trace("TextField.replaceSelectedText not implemented"); >> @@ -930,11 +601,6 @@ public class TextField extends Label implements >> IUITextField >> trace("TextField.replaceText not implemented"); >> } >> >> - public function setActualSize(x:Number, y:Number):void >> - { >> - setWidthAndHeight(x, y, true); >> - } >> - >> public function setColor(color:uint):void >> { >> element.style.color = "#" + color.toString(16); >> @@ -955,29 +621,13 @@ public class TextField extends Label implements >> IUITextField >> trace("TextField.setTextFormat not implemented"); >> } >> >> - public function setVisible(value:Boolean, noEvent:Boolean = >> false):void >> - { >> - if (value) >> - element.style.display = "inline"; >> - else >> - element.style.display = "none"; >> - } >> - >> - public function styleChanged(styleProp:String):void >> - { >> - trace("TextField.styleChanged not implemented"); >> - } >> - >> - public function truncateToFit(truncationIndicator:String = >> null):Boolean >> - { >> - trace("TextField.truncateToFit not implemented"); >> - return false; >> - } >> - >> - public function validateNow():void >> + /** >> + * @flexjsignorecoercion flex.display.DisplayObjectContainer >> + */ >> + override public function get parent():DisplayObjectContainer >> { >> + return super.parent as DisplayObjectContainer; >> } >> - >> >> } >> } >> \ No newline at end of file >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/flex/utils/IExternalizable.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/flex/utils/IExternalizable.as >> b/frameworks/projects/MX/src/main/flex/flex/utils/IExternalizable.as >> new file mode 100644 >> index 0000000..a75a480 >> --- /dev/null >> +++ b/frameworks/projects/MX/src/main/flex/flex/utils/IExternalizable.as >> @@ -0,0 +1,26 @@ >> >> +//////////////////////////////////////////////////////////////////////////////// >> +// >> +// Licensed to the Apache Software Foundation (ASF) under one or more >> +// contributor license agreements. See the NOTICE file distributed with >> +// this work for additional information regarding copyright ownership. >> +// The ASF licenses this file to You under the Apache License, Version >> 2.0 >> +// (the "License"); you may not use this file except in compliance with >> +// the License. You may obtain a copy of the License at >> +// >> +// http://www.apache.org/licenses/LICENSE-2.0 >> +// >> +// Unless required by applicable law or agreed to in writing, software >> +// distributed under the License is distributed on an "AS IS" BASIS, >> +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or >> implied. >> +// See the License for the specific language governing permissions and >> +// limitations under the License. >> +// >> >> +//////////////////////////////////////////////////////////////////////////////// >> + >> +package flex.utils >> +{ >> + public interface IExternalizable >> + { >> + >> + } >> +} >> \ No newline at end of file >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/binding/Watcher.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/mx/binding/Watcher.as >> b/frameworks/projects/MX/src/main/flex/mx/binding/Watcher.as >> index fef6ee3..c5855e1 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/binding/Watcher.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/binding/Watcher.as >> @@ -218,6 +218,8 @@ public class Watcher >> // Error #1069: Property - not found on - and there >> is no default value >> // Error #1507: - invalid null argument. >> // We allow any other errors to be thrown. >> + COMPILE::AS3 >> + { >> if ((error.errorID != 1006) && >> (error.errorID != 1009) && >> (error.errorID != 1010) && >> @@ -227,6 +229,7 @@ public class Watcher >> { >> throw error; >> } >> + } >> } >> } >> } >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/controls/ToolTip.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/mx/controls/ToolTip.as >> b/frameworks/projects/MX/src/main/flex/mx/controls/ToolTip.as >> index f6a4b9f..ab63cd4 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/controls/ToolTip.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/controls/ToolTip.as >> @@ -20,9 +20,17 @@ >> package mx.controls >> { >> >> -import flash.display.DisplayObject; >> -import flash.text.TextFieldAutoSize; >> -import flash.text.TextFormat; >> +COMPILE::AS3 >> +{ >> + import flash.display.DisplayObject; >> + import flash.text.TextFieldAutoSize; >> + import flash.text.TextFormat; >> +} >> +COMPILE::JS >> +{ >> + import flex.display.DisplayObject; >> + import flex.text.TextFormat; >> +} >> import mx.core.EdgeMetrics; >> import mx.core.IFlexDisplayObject; >> import mx.core.IFlexModuleFactory; >> @@ -167,10 +175,13 @@ public class ToolTip extends UIComponent implements >> IToolTip, IFontContextCompon >> { >> super(); >> >> - // InteractiveObject variables. >> - // Make the ToolTip invisible to the mouse so that it doesn't >> - // interfere with the ToolTipManager's mouse-tracking. >> - mouseEnabled = false; >> + COMPILE::AS3 >> + { >> + // InteractiveObject variables. >> + // Make the ToolTip invisible to the mouse so that it >> doesn't >> + // interfere with the ToolTipManager's mouse-tracking. >> + mouseEnabled = false; >> + } >> } >> >> >> //-------------------------------------------------------------------------- >> @@ -451,13 +462,16 @@ public class ToolTip extends UIComponent implements >> IToolTip, IFontContextCompon >> { >> textField = IUITextField(createInFontContext(UITextField)); >> >> - textField.autoSize = TextFieldAutoSize.LEFT; >> - textField.mouseEnabled = false; >> - textField.multiline = true; >> - textField.selectable = false; >> - textField.wordWrap = false; >> - textField.styleName = this; >> - >> + COMPILE::AS3 >> + { >> + textField.autoSize = TextFieldAutoSize.LEFT; >> + textField.mouseEnabled = false; >> + textField.multiline = true; >> + textField.selectable = false; >> + textField.wordWrap = false; >> + textField.styleName = this; >> + } >> + >> if (childIndex == -1) >> addChild(DisplayObject(textField)); >> else >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/IDeferredInstantiationUIComponent.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/core/IDeferredInstantiationUIComponent.as >> b/frameworks/projects/MX/src/main/flex/mx/core/IDeferredInstantiationUIComponent.as >> index 714e0bb..632309f 100644 >> --- >> a/frameworks/projects/MX/src/main/flex/mx/core/IDeferredInstantiationUIComponent.as >> +++ >> b/frameworks/projects/MX/src/main/flex/mx/core/IDeferredInstantiationUIComponent.as >> @@ -49,6 +49,7 @@ public interface IDeferredInstantiationUIComponent >> extends IUIComponent >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> function set cacheHeuristic(value:Boolean):void; >> >> //---------------------------------- >> @@ -63,6 +64,7 @@ public interface IDeferredInstantiationUIComponent >> extends IUIComponent >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> function get cachePolicy():String >> >> //---------------------------------- >> @@ -123,6 +125,7 @@ public interface IDeferredInstantiationUIComponent >> extends IUIComponent >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> function createReferenceOnParentDocument( >> >> parentDocument:IFlexDisplayObject):void; >> >> @@ -140,6 +143,7 @@ public interface IDeferredInstantiationUIComponent >> extends IUIComponent >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> function deleteReferenceOnParentDocument( >> >> parentDocument:IFlexDisplayObject):void; >> >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectContainerInterface.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectContainerInterface.as >> b/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectContainerInterface.as >> index e9d9652..894bd46 100644 >> --- >> a/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectContainerInterface.as >> +++ >> b/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectContainerInterface.as >> @@ -22,6 +22,10 @@ >> * for web version of flash.display.DisplayObjectContainer >> * >> */ >> +COMPILE::AS3 >> +{ >> + import flash.display.DisplayObjectContainer; >> +} >> import flash.text.TextSnapshot; >> import flash.geom.Point; >> >> @@ -33,7 +37,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function addChild(child:DisplayObject):DisplayObject; >> + COMPILE::AS3 >> + function >> addChild(child:flash.display.DisplayObject):flash.display.DisplayObject; >> + COMPILE::JS >> + function addChild(child:DisplayObject):DisplayObject; >> >> /** >> * @copy flash.display.DisplayObjectContainer#addChildAt() >> @@ -43,6 +50,9 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::AS3 >> + function addChildAt(child:flash.display.DisplayObject, >> index:int):flash.display.DisplayObject; >> + COMPILE::JS >> function addChildAt(child:DisplayObject, index:int):DisplayObject; >> >> /** >> @@ -53,7 +63,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function removeChild(child:DisplayObject):DisplayObject; >> + COMPILE::AS3 >> + function >> removeChild(child:flash.display.DisplayObject):flash.display.DisplayObject; >> + COMPILE::JS >> + function removeChild(child:DisplayObject):DisplayObject; >> >> /** >> * @copy flash.display.DisplayObjectContainer#removeChildAt() >> @@ -63,7 +76,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function removeChildAt(index:int):DisplayObject; >> + COMPILE::AS3 >> + function removeChildAt(index:int):flash.display.DisplayObject; >> + COMPILE::JS >> + function removeChildAt(index:int):DisplayObject; >> >> /** >> * @copy flash.display.DisplayObjectContainer#getChildIndex() >> @@ -73,7 +89,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function getChildIndex(child:DisplayObject):int; >> + COMPILE::AS3 >> + function getChildIndex(child:flash.display.DisplayObject):int; >> + COMPILE::JS >> + function getChildIndex(child:DisplayObject):int; >> >> /** >> * @copy flash.display.DisplayObjectContainer#setChildIndex() >> @@ -83,7 +102,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function setChildIndex(child:DisplayObject, index:int):void; >> + COMPILE::AS3 >> + function setChildIndex(child:flash.display.DisplayObject, >> index:int):void; >> + COMPILE::JS >> + function setChildIndex(child:DisplayObject, index:int):void; >> >> /** >> * @copy flash.display.DisplayObjectContainer#getChildAt() >> @@ -93,7 +115,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function getChildAt(index:int):DisplayObject; >> + COMPILE::AS3 >> + function getChildAt(index:int):flash.display.DisplayObject; >> + COMPILE::JS >> + function getChildAt(index:int):DisplayObject; >> >> /** >> * @copy flash.display.DisplayObjectContainer#getChildByName() >> @@ -103,7 +128,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function getChildByName(name:String):DisplayObject; >> + COMPILE::AS3 >> + function getChildByName(name:String):flash.display.DisplayObject; >> + COMPILE::JS >> + function getChildByName(name:String):DisplayObject; >> >> /** >> * @copy flash.display.DisplayObjectContainer#numChildren >> @@ -187,7 +215,10 @@ import flash.geom.Point; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function contains(child:DisplayObject):Boolean; >> + COMPILE::AS3 >> + function contains(child:flash.display.DisplayObject):Boolean; >> + COMPILE::JS >> + function contains(child:DisplayObject):Boolean; >> >> /** >> * @copy flash.display.DisplayObjectContainer#swapChildrenAt() >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectInterface.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectInterface.as >> b/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectInterface.as >> index 3d0dbc2..f84242d 100644 >> --- >> a/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectInterface.as >> +++ >> b/frameworks/projects/MX/src/main/flex/mx/core/IDisplayObjectInterface.as >> @@ -32,7 +32,10 @@ >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function get root():DisplayObject; >> + COMPILE::AS3 >> + function get root():flash.display.DisplayObject; >> + COMPILE::JS >> + function get root():DisplayObject; >> >> >> /** >> @@ -67,7 +70,10 @@ >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - function get parent():DisplayObjectContainer; >> + COMPILE::AS3 >> + function get parent():flash.display.DisplayObjectContainer; >> + COMPILE::JS >> + function get parent():DisplayObjectContainer; >> >> >> /** >> @@ -91,9 +97,10 @@ >> * @playerversion Flash 9 >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> - */ >> function get visible():Boolean; >> function set visible(value:Boolean):void; >> + * already in IUIBase >> + */ >> >> >> /** >> @@ -103,9 +110,10 @@ >> * @playerversion Flash 9 >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> - */ >> function get x():Number; >> function set x(value:Number):void; >> + * already in IUIBase >> + */ >> >> >> /** >> @@ -115,9 +123,10 @@ >> * @playerversion Flash 9 >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> - */ >> function get y():Number; >> function set y(value:Number):void; >> + * already in IUIBase >> + */ >> >> >> /** >> @@ -156,7 +165,6 @@ >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - COMPILE::LATER >> function get mouseX():Number; // note: no setter >> >> >> @@ -168,7 +176,6 @@ >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> - COMPILE::LATER >> function get mouseY():Number; // note: no setter >> >> >> @@ -193,9 +200,10 @@ >> * @playerversion Flash 9 >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> - */ >> function get alpha():Number; >> function set alpha(value:Number):void; >> + * already in IUIBase >> + */ >> >> >> /** >> @@ -205,9 +213,10 @@ >> * @playerversion Flash 9 >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> - */ >> function get width():Number; >> function set width(value:Number):void; >> + * already in IUIBase >> + */ >> >> /** >> * @copy flash.display.DisplayObject#height >> @@ -216,9 +225,10 @@ >> * @playerversion Flash 9 >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> - */ >> function get height():Number; >> function set height(value:Number):void; >> + * already in IUIBase >> + */ >> >> >> /** >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/IFlexDisplayObject.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/core/IFlexDisplayObject.as >> b/frameworks/projects/MX/src/main/flex/mx/core/IFlexDisplayObject.as >> index f622766..ecb8dd5 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/core/IFlexDisplayObject.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/core/IFlexDisplayObject.as >> @@ -35,7 +35,6 @@ COMPILE::JS >> } >> import org.apache.flex.events.IEventDispatcher; >> import flex.display.TopOfDisplayList; >> -import flex.display.DisplayObject; >> >> /** >> * The IFlexDisplayObject interface defines the interface for skin >> elements. >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/IVisualElement.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/core/IVisualElement.as >> b/frameworks/projects/MX/src/main/flex/mx/core/IVisualElement.as >> index 3f1464a..4691a12 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/core/IVisualElement.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/core/IVisualElement.as >> @@ -241,11 +241,13 @@ public interface IVisualElement extends >> ILayoutElement, ILayoutDirectionElement >> * @playerversion AIR 1.5 >> * @productversion Flex 4 >> */ >> + COMPILE::LATER >> function get designLayer():DesignLayer; >> >> /** >> * @private >> */ >> + COMPILE::LATER >> function set designLayer(value:DesignLayer):void; >> >> /** >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/UIComponent.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/mx/core/UIComponent.as >> b/frameworks/projects/MX/src/main/flex/mx/core/UIComponent.as >> index 427550e..9b2a960 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/core/UIComponent.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/core/UIComponent.as >> @@ -35,7 +35,7 @@ COMPILE::AS3 >> import flash.display.DisplayObject; >> import flash.display.DisplayObjectContainer; >> import flash.display.InteractiveObject; >> - import flash.display.Sprite; >> +// import flash.display.Sprite; >> import flash.display.GradientType; >> import flash.display.Graphics; >> import flash.display.Loader; >> @@ -48,9 +48,10 @@ COMPILE::JS >> import flex.display.DisplayObject; >> import flex.display.DisplayObjectContainer; >> import flex.display.InteractiveObject; >> + import flex.display.Graphics; >> import flex.display.Loader; >> - import flex.display.Sprite; >> } >> +import flex.display.Sprite; >> /* >> import flash.display.Shader; >> */ >> @@ -158,7 +159,6 @@ import mx.validators.ValidationResult; >> >> use namespace mx_internal; >> >> -import org.apache.flex.core.UIBase; >> import flex.system.DefinitionManager; >> import org.apache.flex.events.EventDispatcher; >> import org.apache.flex.events.IEventDispatcher; >> @@ -1475,7 +1475,7 @@ include "../styles/metadata/AnchorStyles.as"; >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> -public class UIComponent extends UIBase >> +public class UIComponent extends Sprite >> implements IAutomationObject, IChildList, IConstraintClient, >> IDeferredInstantiationUIComponent, IFlexDisplayObject, IFlexModule, >> IInvalidating, ILayoutManagerClient, IPropertyChangeNotifier, >> @@ -1706,8 +1706,11 @@ public class UIComponent extends UIBase >> if (UIComponentGlobals.callLaterSuspendCount == 0) >> { >> var sm:ISystemManager = >> SystemManagerGlobals.topLevelSystemManagers[0]; >> + COMPILE::AS3 >> + { >> if (sm && sm.topOfDisplayList) >> sm.topOfDisplayList.invalidate(); >> + } >> } >> } >> } >> @@ -1731,9 +1734,12 @@ public class UIComponent extends UIBase >> super(); >> >> // Override variables in superclasses. >> + COMPILE::AS3 >> + { >> focusRect = false; // We do our own focus drawing. >> // We are tab enabled by default if IFocusManagerComponent >> tabEnabled = (this is IFocusManagerComponent); >> + } >> tabFocusEnabled = (this is IFocusManagerComponent); >> >> // Whether the component can accept user interaction. >> @@ -2088,6 +2094,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> public function get accessibilityName():String >> { >> return accessibilityProperties ? accessibilityProperties.name : >> ""; >> @@ -2472,9 +2479,14 @@ public class UIComponent extends UIBase >> { >> return _parent ? _parent : super.parent; >> } >> - catch (e:SecurityError) >> + catch (e:Error) >> { >> // trace("UIComponent.get parent(): " + e); >> + COMPILE::AS3 >> + { >> + if (!(e is SecurityError)) >> + throw e; >> + } >> } >> >> return null; >> @@ -2781,6 +2793,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> override public function get rotationZ():Number >> { >> return rotation; >> @@ -2788,6 +2801,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::LATER >> override public function set rotationZ(value:Number):void >> { >> rotation = value; >> @@ -3107,6 +3121,7 @@ public class UIComponent extends UIBase >> * @productversion Flex 3 >> */ >> >> + COMPILE::LATER >> override public function get scaleX():Number >> { >> if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0) >> @@ -3119,8 +3134,10 @@ public class UIComponent extends UIBase >> * @private >> * Storage for the scaleX property. >> */ >> + COMPILE::LATER >> private var _scaleX:Number = 1.0; >> >> + COMPILE::LATER >> override public function set scaleX(value:Number):void >> { >> if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0) >> @@ -3187,6 +3204,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> override public function get scaleY():Number >> { >> if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0) >> @@ -3201,9 +3219,11 @@ public class UIComponent extends UIBase >> * @private >> * Storage for the scaleY property. >> */ >> + COMPILE::LATER >> private var _scaleY:Number = 1.0; >> >> >> + COMPILE::LATER >> override public function set scaleY(value:Number):void >> { >> if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0) >> @@ -3310,11 +3330,13 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> mx_internal final function get $scaleX():Number >> { >> return super.scaleX; >> } >> >> + COMPILE::LATER >> mx_internal final function set $scaleX(value:Number):void >> { >> super.scaleX = value; >> @@ -3332,11 +3354,13 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> mx_internal final function get $scaleY():Number >> { >> return super.scaleY; >> } >> >> + COMPILE::LATER >> mx_internal final function set $scaleY(value:Number):void >> { >> super.scaleY = value; >> @@ -3414,9 +3438,12 @@ public class UIComponent extends UIBase >> if (!initialized) >> return; >> >> + COMPILE::LATER >> + { >> if (designLayer && !designLayer.effectiveVisibility) >> value = false; >> - >> + } >> + >> if ($visible == value) >> return; >> >> @@ -3463,8 +3490,11 @@ public class UIComponent extends UIBase >> { >> _alpha = value; >> >> + COMPILE::LATER >> + { >> if (designLayer) >> value = value * designLayer.effectiveAlpha; >> + } >> >> $alpha = value; >> >> @@ -3545,6 +3575,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> override public function get doubleClickEnabled():Boolean >> { >> return super.doubleClickEnabled; >> @@ -3554,6 +3585,7 @@ public class UIComponent extends UIBase >> * @private >> * Propagate to children. >> */ >> + COMPILE::LATER >> override public function set doubleClickEnabled(value:Boolean):void >> { >> super.doubleClickEnabled = value; >> @@ -3621,6 +3653,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::LATER >> override public function set cacheAsBitmap(value:Boolean):void >> { >> super.cacheAsBitmap = value; >> @@ -3704,6 +3737,7 @@ public class UIComponent extends UIBase >> * @private >> * Storage for the layer property. >> */ >> + COMPILE::LATER >> private var _designLayer:DesignLayer; >> >> [Inspectable (environment='none')] >> @@ -3716,6 +3750,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.5 >> * @productversion Flex 4 >> */ >> + COMPILE::LATER >> public function get designLayer():DesignLayer >> { >> return _designLayer; >> @@ -3724,6 +3759,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::LATER >> public function set designLayer(value:DesignLayer):void >> { >> if (_designLayer) >> @@ -3781,6 +3817,7 @@ public class UIComponent extends UIBase >> * Note that this "base property" is final and cannot be overridden, >> * so you can count on it to reflect what is happening at the player >> level. >> */ >> + COMPILE::LATER >> mx_internal final function get $blendMode():String >> { >> return super.blendMode; >> @@ -3789,6 +3826,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::LATER >> mx_internal final function set $blendMode(value:String):void >> { >> super.blendMode = value; >> @@ -4998,6 +5036,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::LATER >> public function set cachePolicy(value:String):void >> { >> if (_cachePolicy != value) >> @@ -5036,6 +5075,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> public function set cacheHeuristic(value:Boolean):void >> { >> if (_cachePolicy == UIComponentCachePolicy.AUTO) >> @@ -5092,7 +5132,10 @@ public class UIComponent extends UIBase >> >> value.x = 0; >> value.y = 0; >> + COMPILE::AS3 >> + { >> value.scrollRect = null; >> + } >> >> _focusPane = value; >> } >> @@ -5100,7 +5143,10 @@ public class UIComponent extends UIBase >> { >> removeChild(_focusPane); >> >> + COMPILE::AS3 >> + { >> _focusPane.mask = null; >> + } >> _focusPane = null; >> } >> } >> @@ -7429,6 +7475,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::AS3 >> override public function stopDrag():void >> { >> super.stopDrag(); >> @@ -7544,8 +7591,11 @@ public class UIComponent extends UIBase >> listeningForRender = true; >> } >> >> + COMPILE::AS3 >> + { >> if (_systemManager.topOfDisplayList) >> _systemManager.topOfDisplayList.invalidate(); >> + } >> } >> } >> >> @@ -7634,10 +7684,13 @@ public class UIComponent extends UIBase >> else if (child is IUITextField) >> IUITextField(child).nestLevel = nestLevel + 1; >> >> + COMPILE::LATER >> + { >> if (child is InteractiveObject) >> if (doubleClickEnabled) >> InteractiveObject(child).doubleClickEnabled = true; >> - >> + } >> + >> // Sets up the inheritingStyles and nonInheritingStyles objects >> // and their proto chains so that getStyle() works. >> // If this object already has some children, >> @@ -8378,6 +8431,8 @@ public class UIComponent extends UIBase >> } >> case 3: >> { >> + COMPILE::LATER >> + { >> propertyName = >> bindingData[index++]; >> value = bindingData[index++]; >> if (value is Array) >> @@ -8389,6 +8444,7 @@ public class UIComponent extends UIBase >> >> theBindings.push(bindings[bindingIndex]); >> w = new XMLWatcher(propertyName, >> theBindings); >> break; >> + } >> } >> } >> watchers.push(w); >> @@ -8795,6 +8851,7 @@ public class UIComponent extends UIBase >> public function callLater(method:Function, >> args:Array /* of Object */ = null):void >> { >> + >> // trace(">>calllater " + this) >> // Push the method and the arguments onto the method queue. >> methodQueue.push(new MethodQueueElement(method, args)); >> @@ -8815,9 +8872,12 @@ public class UIComponent extends UIBase >> listeningForRender = true; >> } >> >> + COMPILE::AS3 >> + { >> // Force a "render" event to happen soon >> if (sm.topOfDisplayList) >> sm.topOfDisplayList.invalidate(); >> + } >> } >> >> // trace("<<calllater " + this) >> @@ -8903,6 +8963,8 @@ public class UIComponent extends UIBase >> { >> if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0) >> { >> + COMPILE::LATER >> + { >> if (_scaleX != oldScaleX) >> { >> var scalingFactorX:Number = Math.abs(_scaleX / oldScaleX); >> @@ -8932,6 +8994,7 @@ public class UIComponent extends UIBase >> >> super.scaleY = oldScaleY = _scaleY; >> } >> + } >> } >> else >> { >> @@ -8943,8 +9006,11 @@ public class UIComponent extends UIBase >> currentState = newState; >> } >> >> + COMPILE::LATER >> + { >> oldScaleX = scaleX; >> oldScaleY = scaleY; >> + } >> } >> >> // Typically state changes occur immediately, but during >> @@ -9139,6 +9205,8 @@ public class UIComponent extends UIBase >> } >> else >> { >> + COMPILE::LATER >> + { >> var xScale:Number = Math.abs(scaleX); >> var yScale:Number = Math.abs(scaleY); >> >> @@ -9156,7 +9224,7 @@ public class UIComponent extends UIBase >> _measuredHeight /= yScale; >> } >> } >> - >> + } >> measure(); >> >> invalidateSizeFlag = false; >> @@ -9173,6 +9241,8 @@ public class UIComponent extends UIBase >> if (!isNaN(explicitMaxHeight) && measuredHeight > >> explicitMaxHeight) >> measuredHeight = explicitMaxHeight; >> >> + COMPILE::LATER >> + { >> if (FlexVersion.compatibilityVersion < >> FlexVersion.VERSION_4_0) >> { >> if (xScale != 1.0) >> @@ -9187,9 +9257,13 @@ public class UIComponent extends UIBase >> _measuredHeight *= yScale; >> } >> } >> + } >> } >> >> + COMPILE::LATER >> + { >> adjustSizesForScaleChanges(); >> + } >> >> if (isNaN(oldMinWidth)) >> { >> @@ -9326,6 +9400,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::LATER >> mx_internal function adjustSizesForScaleChanges():void >> { >> var xScale:Number = scaleX; >> @@ -9422,10 +9497,14 @@ public class UIComponent extends UIBase >> */ >> protected function get unscaledWidth():Number >> { >> + COMPILE::LATER >> + { >> if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0) >> return width / Math.abs(scaleX); >> else >> return width; >> + } >> + return width; >> } >> >> /** >> @@ -9482,10 +9561,14 @@ public class UIComponent extends UIBase >> */ >> protected function get unscaledHeight():Number >> { >> + COMPILE::LATER >> + { >> if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0) >> return height / Math.abs(scaleY); >> else >> return height; >> + } >> + return height; >> } >> >> /** >> @@ -9642,6 +9725,8 @@ public class UIComponent extends UIBase >> >> var unscaledWidth:Number = width; >> var unscaledHeight:Number = height; >> + COMPILE::LATER >> + { >> if (FlexVersion.compatibilityVersion < >> FlexVersion.VERSION_4_0) >> { >> unscaledWidth = scaleX == 0 ? 0 : width / scaleX; >> @@ -9655,6 +9740,7 @@ public class UIComponent extends UIBase >> if (Math.abs(unscaledHeight - lastUnscaledHeight) < >> .00001) >> unscaledHeight = lastUnscaledHeight; >> } >> + } >> updateDisplayList(unscaledWidth,unscaledHeight); >> lastUnscaledWidth = unscaledWidth; >> lastUnscaledHeight = unscaledHeight; >> @@ -10725,8 +10811,13 @@ public class UIComponent extends UIBase >> var height:Number; >> if (obj is UIComponent) >> { >> + COMPILE::LATER >> + { >> width = UIComponent(obj).unscaledWidth * Math.abs(obj.scaleX); >> height = UIComponent(obj).unscaledHeight * >> Math.abs(obj.scaleY); >> + } >> + width = UIComponent(obj).unscaledWidth; >> + height = UIComponent(obj).unscaledHeight; >> } >> else >> { >> @@ -10768,6 +10859,8 @@ public class UIComponent extends UIBase >> >> var pt:Point; >> >> + COMPILE::LATER >> + { >> if (rotation) >> { >> var rotRad:Number = rotation * Math.PI / 180; >> @@ -10780,7 +10873,8 @@ public class UIComponent extends UIBase >> pt = new Point(obj.x - thickness, obj.y - thickness); >> DisplayObject(focusObj).rotation = 0; >> } >> - >> + } >> + >> if (obj.parent == this) >> { >> // This adjustment only works if obj is a direct child of >> this. >> @@ -11273,7 +11367,14 @@ public class UIComponent extends UIBase >> { >> var message:String = resourceManager.getString( >> "core", "stateUndefined", [ stateName ]); >> - throw new ArgumentError(message); >> + COMPILE::AS3 >> + { >> + throw new ArgumentError(message); >> + } >> + COMPILE::JS >> + { >> + throw new Error(message); >> + } >> } >> return null; >> } >> @@ -11935,7 +12036,14 @@ public class UIComponent extends UIBase >> { >> var message:String = resourceManager.getString( >> "core", "badParameter", [ styleClient ]); >> - throw new ArgumentError(message); >> + COMPILE::AS3 >> + { >> + throw new ArgumentError(message); >> + } >> + COMPILE::JS >> + { >> + throw new Error(message); >> + } >> } >> } >> >> @@ -12363,7 +12471,7 @@ public class UIComponent extends UIBase >> g.clear(); >> g.beginFill(color); >> >> - g.drawRoundRect(targetArea.x, targetArea.y, >> + g.drawRoundRect(targetArea.left, targetArea.top, >> targetArea.width, targetArea.height, >> targetArea.cornerRadius * 2, >> targetArea.cornerRadius * 2); >> @@ -12592,6 +12700,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> public function createReferenceOnParentDocument( >> parentDocument:IFlexDisplayObject):void >> { >> @@ -12645,6 +12754,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> public function deleteReferenceOnParentDocument( >> parentDocument:IFlexDisplayObject):void >> { >> @@ -13043,8 +13153,16 @@ public class UIComponent extends UIBase >> { >> //reset systemManager in case we've been reparented to a new >> Window. >> //systemManager will be set on get systemManager() >> - if (event.eventPhase != EventPhase.AT_TARGET) >> - return; >> + COMPILE::AS3 >> + { >> + if (event.eventPhase != EventPhase.AT_TARGET) >> + return; >> + } >> + COMPILE::JS >> + { >> + if (event.target != event.currentTarget) >> + return; >> + } >> >> try >> { >> @@ -13054,10 +13172,15 @@ public class UIComponent extends UIBase >> return; >> } >> } >> - catch (error:SecurityError) >> - { >> - >> - } >> + catch (e:Error) >> + { >> + // trace("UIComponent.get parent(): " + e); >> + COMPILE::AS3 >> + { >> + if (!(e is SecurityError)) >> + throw e; >> + } >> + } >> } >> >> /** >> @@ -13066,8 +13189,16 @@ public class UIComponent extends UIBase >> */ >> private function removedHandler(event:flex.events.Event):void >> { >> - if (event.eventPhase != EventPhase.AT_TARGET) >> - return; >> + COMPILE::AS3 >> + { >> + if (event.eventPhase != EventPhase.AT_TARGET) >> + return; >> + } >> + COMPILE::JS >> + { >> + if (event.target != event.currentTarget) >> + return; >> + } >> >> try >> { >> @@ -13077,10 +13208,15 @@ public class UIComponent extends UIBase >> return; >> } >> } >> - catch (error:SecurityError) >> - { >> - >> - } >> + catch (e:Error) >> + { >> + // trace("UIComponent.get parent(): " + e); >> + COMPILE::AS3 >> + { >> + if (!(e is SecurityError)) >> + throw e; >> + } >> + } >> } >> >> /** >> @@ -13350,11 +13486,17 @@ public class UIComponent extends UIBase >> child = child.parent; >> } >> } >> - catch (e:SecurityError) >> - { >> - // You can't own what you don't have access to. >> - return false; >> - } >> + catch (e:Error) >> + { >> + // trace("UIComponent.get parent(): " + e); >> + COMPILE::AS3 >> + { >> + if (!(e is SecurityError)) >> + throw e; >> + } >> + // You can't own what you don't have access to. >> + return false; >> + } >> >> return child == this; >> } >> @@ -13784,6 +13926,8 @@ public class UIComponent extends UIBase >> else >> current = current.parent; >> >> + COMPILE::AS3 >> + { >> if (current && current.scrollRect) >> { >> // clip the bounds by the scroll rect >> @@ -13793,6 +13937,7 @@ public class UIComponent extends UIBase >> currentRect.y = pt.y; >> bounds = >> Rectangle.convert(bounds.intersection(currentRect)); >> } >> + } >> } while (current && current != targetParent); >> >> return bounds; >> @@ -13851,6 +13996,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::AS3 >> override public function get mouseX():Number >> { >> if (!root || root is TopOfDisplayList || root[fakeMouseX] === >> undefined) >> @@ -13861,6 +14007,7 @@ public class UIComponent extends UIBase >> /** >> * @private >> */ >> + COMPILE::AS3 >> override public function get mouseY():Number >> { >> if (!root || root is TopOfDisplayList || root[fakeMouseY] === >> undefined) >> @@ -14414,6 +14561,7 @@ public class UIComponent extends UIBase >> * @playerversion AIR 1.5 >> * @productversion Flex 4 >> */ >> + COMPILE::LATER >> protected function applyComputedMatrix():void >> { >> _layoutFeatures.updatePending = false; >> @@ -14759,6 +14907,38 @@ public class UIComponent extends UIBase >> return super.transform.matrix; >> } >> } >> + >> + >> //-------------------------------------------------------------------------- >> + // >> + // Overridden methods >> + // >> + >> //-------------------------------------------------------------------------- >> + >> + /** >> + * Returns a string indicating the location of this object >> + * within the hierarchy of DisplayObjects in the Application. >> + * This string, such as <code>"MyApp0.HBox5.Button17"</code>, >> + * is built by the <code>displayObjectToString()</code> method >> + * of the mx.utils.NameUtils class from the <code>name</code> >> + * property of the object and its ancestors. >> + * >> + * @return A String indicating the location of this object >> + * within the DisplayObject hierarchy. >> + * >> + * @see flash.display.DisplayObject#name >> + * @see mx.utils.NameUtil#displayObjectToString() >> + * >> + * @langversion 3.0 >> + * @playerversion Flash 9 >> + * @playerversion AIR 1.1 >> + * @productversion Flex 3 >> + */ >> + COMPILE::JS >> + public function toString():String >> + { >> + return NameUtil.displayObjectToString(this); >> + } >> + >> } >> >> } >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/UITextField.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/mx/core/UITextField.as >> b/frameworks/projects/MX/src/main/flex/mx/core/UITextField.as >> index 28d61ae..6f4242b 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/core/UITextField.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/core/UITextField.as >> @@ -429,8 +429,11 @@ public class UITextField extends TextField >> { >> _x = value; >> super.x = value; >> + COMPILE::LATER >> + { >> if (mirror) >> validateTransformMatrix(); >> + } >> } >> >> /** >> @@ -455,8 +458,11 @@ public class UITextField extends TextField >> var changed:Boolean = super.width != value; >> >> super.width = value; >> + COMPILE::LATER >> + { >> if (mirror) >> validateTransformMatrix(); >> + } >> >> // Since changing the width may reflow the text which can >> // change the textWidth and/or textHeight dispatch an event so >> @@ -783,6 +789,7 @@ public class UITextField extends TextField >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::LATER >> public function get className():String >> { >> return NameUtil.getUnqualifiedClassName(this); >> @@ -888,6 +895,7 @@ public class UITextField extends TextField >> * @private >> * Storage for the explicitHeight property. >> */ >> + COMPILE::AS3 >> private var _explicitHeight:Number; >> >> /** >> @@ -898,6 +906,7 @@ public class UITextField extends TextField >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::AS3 >> public function get explicitHeight():Number >> { >> return _explicitHeight; >> @@ -906,6 +915,7 @@ public class UITextField extends TextField >> /** >> * @private >> */ >> + COMPILE::AS3 >> public function set explicitHeight(value:Number):void >> { >> _explicitHeight = value; >> @@ -1003,6 +1013,7 @@ public class UITextField extends TextField >> * @private >> * Storage for the explicitWidth property. >> */ >> + COMPILE::AS3 >> private var _explicitWidth:Number; >> >> /** >> @@ -1013,6 +1024,7 @@ public class UITextField extends TextField >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::AS3 >> public function get explicitWidth():Number >> { >> return _explicitWidth; >> @@ -1021,6 +1033,7 @@ public class UITextField extends TextField >> /** >> * @private >> */ >> + COMPILE::AS3 >> public function set explicitWidth(value:Number):void >> { >> _explicitWidth = value; >> @@ -1583,6 +1596,7 @@ public class UITextField extends TextField >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::AS3 >> public function get percentHeight():Number >> { >> return NaN; >> @@ -1591,6 +1605,7 @@ public class UITextField extends TextField >> /** >> * @private >> */ >> + COMPILE::AS3 >> public function set percentHeight(value:Number):void >> { >> } >> @@ -1607,6 +1622,7 @@ public class UITextField extends TextField >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::AS3 >> public function get percentWidth():Number >> { >> return NaN; >> @@ -1615,6 +1631,7 @@ public class UITextField extends TextField >> /** >> * @private >> */ >> + COMPILE::AS3 >> public function set percentWidth(value:Number):void >> { >> } >> @@ -1717,6 +1734,10 @@ public class UITextField extends TextField >> styleChanged("styleName"); >> } >> >> + COMPILE::JS >> + { >> + element.className = styleName.toString(); >> + } >> // If we don't have a parent pointer yet, then we'll wait >> // and initialize the proto chain when the parentChanged() >> // method is called. >> @@ -1922,7 +1943,9 @@ public class UITextField extends TextField >> >> /** >> * @private >> + * TODO (aharui): I'm not seeing this in the doc >> */ >> + COMPILE::LATER >> override public function insertXMLText(beginIndex:int, endIndex:int, >> richText:String, >> pasting:Boolean = false):void >> @@ -2016,6 +2039,7 @@ public class UITextField extends TextField >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::AS3 >> public function setFocus():void >> { >> systemManager.topOfDisplayList.focus = this; >> @@ -2215,8 +2239,11 @@ public class UITextField extends TextField >> { >> const oldMirror:Boolean = mirror; >> mirror = getStyle("layoutDirection") == LayoutDirection.RTL; >> + COMPILE::LATER >> + { >> if (mirror || oldMirror) >> validateTransformMatrix(); >> + } >> } >> >> // Set the text format. >> @@ -2265,6 +2292,7 @@ public class UITextField extends TextField >> * Update the transform.matrix based on the mirror flag. This >> method must be >> * called when x, width, or layoutDirection changes. >> */ >> + COMPILE::LATER >> private function validateTransformMatrix():void >> { >> if (mirror) >> @@ -2375,6 +2403,7 @@ public class UITextField extends TextField >> * @playerversion AIR 1.1 >> * @productversion Flex 3 >> */ >> + COMPILE::AS3 >> public function setColor(color:uint):void >> { >> explicitColor = color; >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/core/UITextFormat.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/mx/core/UITextFormat.as >> b/frameworks/projects/MX/src/main/flex/mx/core/UITextFormat.as >> index 08ba3aa..bcc7c48 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/core/UITextFormat.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/core/UITextFormat.as >> @@ -20,8 +20,16 @@ >> package mx.core >> { >> >> -import flash.text.TextFormat; >> -import flex.text.TextLineMetrics; >> +COMPILE::AS3 >> +{ >> + import flash.text.TextFormat; >> + import flash.text.TextLineMetrics; >> +} >> +COMPILE::JS >> +{ >> + import flex.text.TextFormat; >> + import flex.text.TextLineMetrics; >> +} >> >> import mx.managers.ISystemManager; >> >> @@ -639,7 +647,10 @@ public class UITextFormat extends TextFormat >> letterSpacing = source.letterSpacing; >> blockIndent = source.blockIndent; >> bullet = source.bullet; >> + COMPILE::LATER >> + { >> display = source.display; >> + } >> indent = source.indent; >> kerning = source.kerning; >> tabStops = source.tabStops; >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as >> b/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as >> index e675265..f54f656 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as >> @@ -470,20 +470,36 @@ public class EffectManager extends EventDispatcher >> if (info.vectorEffectsCount == 0 && >> target is IDeferredInstantiationUIComponent) >> { >> - >> IDeferredInstantiationUIComponent(target).cacheHeuristic = true; >> + COMPILE::LATER >> + { >> + >> IDeferredInstantiationUIComponent(target).cacheHeuristic = true; >> + } >> } >> } >> else >> { >> - // If a vector effect started playing, forcibly uncache >> - // the target regardless of anything else. >> - if (info.vectorEffectsCount++ == 0 && >> - target is IDeferredInstantiationUIComponent && >> - IDeferredInstantiationUIComponent(target).cachePolicy >> == UIComponentCachePolicy.AUTO) >> - { >> - target.cacheAsBitmap = false; >> - } >> - } >> + COMPILE::LATER >> + { >> + // If a vector effect started playing, forcibly >> uncache >> + // the target regardless of anything else. >> + if (info.vectorEffectsCount++ == 0 && >> + target is IDeferredInstantiationUIComponent && >> + >> IDeferredInstantiationUIComponent(target).cachePolicy == >> UIComponentCachePolicy.AUTO) >> + { >> + target.cacheAsBitmap = false; >> + } >> + } >> + // If a vector effect started playing, >> forcibly uncache >> + // the target regardless of anything else. >> + if (info.vectorEffectsCount++ == 0 && >> + target is >> IDeferredInstantiationUIComponent) >> + { >> + COMPILE::LATER >> + { >> + target.cacheAsBitmap = false; >> + } >> + } >> + } >> } >> else // effect end >> { >> @@ -492,8 +508,11 @@ public class EffectManager extends EventDispatcher >> if (info.bitmapEffectsCount != 0) >> info.bitmapEffectsCount--; >> >> + COMPILE::LATER >> + { >> if (target is IDeferredInstantiationUIComponent) >> >> IDeferredInstantiationUIComponent(target).cacheHeuristic = false; >> + } >> } >> else >> { >> @@ -506,11 +525,14 @@ public class EffectManager extends EventDispatcher >> { >> // Crank up the counter. >> n = info.bitmapEffectsCount; >> + COMPILE::LATER >> + { >> for (i = 0; i < n; i++) >> { >> if (target is >> IDeferredInstantiationUIComponent) >> >> IDeferredInstantiationUIComponent(target).cacheHeuristic = true; >> } >> + } >> } >> } >> } >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/managers/SystemManager.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/managers/SystemManager.as >> b/frameworks/projects/MX/src/main/flex/mx/managers/SystemManager.as >> index c8a250d..6f31e27 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/managers/SystemManager.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/managers/SystemManager.as >> @@ -54,6 +54,7 @@ COMPILE::JS >> import flex.display.MovieClip; >> import flex.display.Sprite; >> import flex.events.Event; >> + import org.apache.flex.events.MouseEvent; >> import flex.events.EventPhase; >> import flex.ui.Keyboard; >> >> @@ -301,6 +302,7 @@ public class SystemManager extends MovieClip >> COMPILE::JS >> { >> initHandler(null); >> + super.addEventListener(MouseEvent.MOUSE_MOVE, >> js_mouseMoveHandler); >> } >> >> } >> @@ -841,18 +843,9 @@ public class SystemManager extends MovieClip >> >> if (!_cursorChildren) >> { >> - COMPILE::AS3 >> - { >> _cursorChildren = new SystemChildrenList(this, >> new QName(mx_internal, "toolTipIndex"), >> new QName(mx_internal, "cursorIndex")); >> - } >> - COMPILE::JS >> - { >> - _cursorChildren = new >> SystemChildrenList(this, >> - "toolTipIndex", >> - "cursorIndex"); >> - } >> } >> >> return _cursorChildren; >> @@ -1409,18 +1402,9 @@ public class SystemManager extends MovieClip >> >> if (!_popUpChildren) >> { >> - COMPILE::AS3 >> - { >> _popUpChildren = new SystemChildrenList(this, >> new QName(mx_internal, "noTopMostIndex"), >> new QName(mx_internal, "topMostIndex")); >> - } >> - COMPILE::JS >> - { >> - _popUpChildren = new >> SystemChildrenList(this, >> - "noTopMostIndex", >> - "topMostIndex"); >> - } >> } >> >> return _popUpChildren; >> @@ -1513,18 +1497,9 @@ public class SystemManager extends MovieClip >> >> if (!_toolTipChildren) >> { >> - COMPILE::AS3 >> - { >> _toolTipChildren = new SystemChildrenList(this, >> new QName(mx_internal, "topMostIndex"), >> new QName(mx_internal, "toolTipIndex")); >> - } >> - COMPILE::JS >> - { >> - _toolTipChildren = new >> SystemChildrenList(this, >> - "topMostIndex", >> - "toolTipIndex"); >> - } >> } >> >> return _toolTipChildren; >> @@ -2206,16 +2181,8 @@ public class SystemManager extends MovieClip >> // we redirect public API to parent systemmanager >> if (!_popUpChildren) >> { >> - COMPILE::AS3 >> - { >> _popUpChildren = new SystemChildrenList( >> this, new QName(mx_internal, >> "noTopMostIndex"), new QName(mx_internal, "topMostIndex")); >> - } >> - COMPILE::JS >> - { >> - _popUpChildren = new SystemChildrenList( >> - this, "noTopMostIndex", >> "topMostIndex"); >> - } >> } >> _popUpChildren.addChild(preloader); >> >> @@ -3971,6 +3938,16 @@ public class SystemManager extends MovieClip >> return _topOfDisplayList; >> } >> >> + /** >> + * @private >> + * Track mouse moves in order to determine idle >> + */ >> + COMPILE::JS >> + private function js_mouseMoveHandler(event:MouseEvent):void >> + { >> + SystemManagerGlobals.lastMouseEvent = event; >> + } >> + >> >> } >> >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/managers/SystemManagerGlobals.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/managers/SystemManagerGlobals.as >> b/frameworks/projects/MX/src/main/flex/mx/managers/SystemManagerGlobals.as >> index 4b19eeb..c360df8 100644 >> --- >> a/frameworks/projects/MX/src/main/flex/mx/managers/SystemManagerGlobals.as >> +++ >> b/frameworks/projects/MX/src/main/flex/mx/managers/SystemManagerGlobals.as >> @@ -19,6 +19,10 @@ >> >> package mx.managers >> { >> +COMPILE::JS >> +{ >> + import org.apache.flex.events.MouseEvent; >> +} >> >> [ExcludeClass] >> >> @@ -50,6 +54,11 @@ public class SystemManagerGlobals >> * in the application.. >> */ >> public static var parameters:Object; >> + >> + COMPILE::JS >> + { >> + public static var lastMouseEvent:MouseEvent; >> + } >> } >> >> } >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/managers/ToolTipManagerImpl.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/flex/mx/managers/ToolTipManagerImpl.as >> b/frameworks/projects/MX/src/main/flex/mx/managers/ToolTipManagerImpl.as >> index a882de4..a1c6f2f 100644 >> --- >> a/frameworks/projects/MX/src/main/flex/mx/managers/ToolTipManagerImpl.as >> +++ >> b/frameworks/projects/MX/src/main/flex/mx/managers/ToolTipManagerImpl.as >> @@ -1251,7 +1251,10 @@ public class ToolTipManagerImpl extends >> EventDispatcher >> >> var pos:Point = new Point(x, y); >> pos = PointUtils.localToGlobal(pos, sm); >> - pos = PointUtils.globalToLocal(pos, sm.getSandboxRoot()); >> + COMPILE::LATER >> + { >> + pos = PointUtils.globalToLocal(pos, >> sm.getSandboxRoot()); >> + } >> x = pos.x; >> y = pos.y; >> } >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/utils/ObjectProxy.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/mx/utils/ObjectProxy.as >> b/frameworks/projects/MX/src/main/flex/mx/utils/ObjectProxy.as >> index b1f31f2..a6f1591 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/utils/ObjectProxy.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/utils/ObjectProxy.as >> @@ -33,6 +33,7 @@ import flash.utils.flash_proxy; >> COMPILE::JS >> { >> import org.apache.flex.events.Event; >> + import flex.utils.IExternalizable; >> } >> import org.apache.flex.utils.Proxy; >> import mx.core.IPropertyChangeNotifier; >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/flex/mx/utils/Platform.as >> ---------------------------------------------------------------------- >> diff --git a/frameworks/projects/MX/src/main/flex/mx/utils/Platform.as >> b/frameworks/projects/MX/src/main/flex/mx/utils/Platform.as >> index 6a19b2e..b9de66c 100644 >> --- a/frameworks/projects/MX/src/main/flex/mx/utils/Platform.as >> +++ b/frameworks/projects/MX/src/main/flex/mx/utils/Platform.as >> @@ -21,7 +21,7 @@ package mx.utils >> { >> >> import flash.system.Capabilities; >> -import flash.utils.getDefinitionByName; >> +import org.apache.flex.reflection.getDefinitionByName; >> >> /** >> * The Platform utility class contains several static methods to check >> what >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a23bd593/frameworks/projects/MX/src/main/resources/compile-asjs-config.xml >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/MX/src/main/resources/compile-asjs-config.xml >> b/frameworks/projects/MX/src/main/resources/compile-asjs-config.xml >> index 57a36d3..63e54ff 100644 >> --- a/frameworks/projects/MX/src/main/resources/compile-asjs-config.xml >> +++ b/frameworks/projects/MX/src/main/resources/compile-asjs-config.xml >> @@ -30,7 +30,7 @@ >> >> <binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event> >> >> <binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind> >> >> <binding-value-change-event-type>valueChange</binding-value-change-event-type> >> - >> + <allow-subclass-overrides>true</allow-subclass-overrides> >> <keep-as3-metadata> >> <name>Bindable</name> >> <name>Managed</name> >> @@ -49,6 +49,8 @@ >> <path-element>../../../../../externs/Core.swc</path-element> >> >> <path-element>../../../../../externs/Graphics.swc</path-element> >> >> <path-element>../../../../../externs/Collections.swc</path-element> >> + >> <path-element>../../../../../externs/Reflection.swc</path-element> >> + <path-element>../../../../../externs/HTML.swc</path-element> >> </library-path> >> >> <namespaces> >> >>