[royale-docs] branch master updated: Added coercion details
This is an automated email from the ASF dual-hosted git repository. harbs pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/royale-docs.git The following commit(s) were added to refs/heads/master by this push: new 9c29e1a Added coercion details 9c29e1a is described below commit 9c29e1ae8afef0d2a6360dacca7aeb0a0f6aedb8 Author: Harbs AuthorDate: Thu Dec 31 23:42:55 2020 +0200 Added coercion details --- .../optimizations/doc-comment-directives.md | 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/create-an-application/optimizations/doc-comment-directives.md b/create-an-application/optimizations/doc-comment-directives.md index 53041df..c397a73 100644 --- a/create-an-application/optimizations/doc-comment-directives.md +++ b/create-an-application/optimizations/doc-comment-directives.md @@ -33,6 +33,7 @@ They have no case variation (all lower case, not camel case, for example) and ma |[Suppress Warnings](create-an-application/optimizations/doc-comment-directives.html#suppress-warnings) |[@royalesuppresspublicvarwarning](create-an-application/optimizations/doc-comment-directives.html#royalesuppresspublicvarwarning) | |[Output Optimizations](create-an-application/optimizations/doc-comment-directives.html#output-optimizations) |[@royaleigorecoercion](create-an-application/optimizations/doc-comment-directives.html#royaleigorecoercion) | +| |[@royaleemitcoercion](create-an-application/optimizations/doc-comment-directives.html#royaleemitcoercion) | | |[@royalesuppressresolveuncertain](create-an-application/optimizations/doc-comment-directives.html#royalesuppressresolveuncertain) | | |[@royalesuppresscompleximplicitcoercion](create-an-application/optimizations/doc-comment-directives.html#royalesuppresscompleximplicitcoercion) | | |[@royalesuppressvectorindexcheck](create-an-application/optimizations/doc-comment-directives.html#royalesuppressvectorindexcheck) | @@ -80,8 +81,10 @@ public var myImportantVar:String = 'myValue'; ### @royaleigorecoercion type {#royaleigorecoercion} Used for: performance tuning, code size tuning. -This is an option to avoid compiler output of coercions of a certain type. -It can help avoid unnecessary code and improve performance. + +The `as` keyword in ActionScript has two purposes. The first is to tell the compiler to accept a value as a specific type even if it's ambiguous. This is called a compile-time coercion. ActionScript also supports run-time coercion of types. If runtime coercion is enabled, the type of an object is coerced to the specified type. If the object is not of the specified type, the assigned value will be nullified. This runtime check comes with a cost to code size and runtime performance/complexity. + +If runtime coercion is not needed, the `@royaleigorecoercion` option can be used. It can help avoid unnecessary code and improve performance. A simplistic, illustrative example is: ```as3 @@ -102,10 +105,14 @@ The following can then be used to avoid the redundant (as described above) javas /** * @royaleigorecoercion mypackage.MyClass * / -``` +``` * * * +### @royaleemitcoercion type {#royaleemitcoercion} +The flipside of `@royaleigorecoercion` is used to emit `as` coercions even when the `-js-output-optimization=skipAsCoercions` option is enabled. In the Royale framework code we use `@royaleemitcoercion` even though the compiler is set to emit the coercions because it's an explicit statement that coercions are necessary. + +* * * ### @royalesuppressresolveuncertain optional_arg {#royalesuppressresolveuncertain} Used for: performance tuning, code size tuning.
[royale-asjs] branch develop updated: tour-de-jewel: example for DateField with DateFieldDateRangeRestriction bead to limit the possible range of dates that can be selected on the calendar
This is an automated email from the ASF dual-hosted git repository. carlosrovira pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git The following commit(s) were added to refs/heads/develop by this push: new ab51337 tour-de-jewel: example for DateField with DateFieldDateRangeRestriction bead to limit the possible range of dates that can be selected on the calendar ab51337 is described below commit ab51337d43bce0599fb9c95b714929db513c7444 Author: Carlos Rovira AuthorDate: Thu Dec 31 17:20:23 2020 +0100 tour-de-jewel: example for DateField with DateFieldDateRangeRestriction bead to limit the possible range of dates that can be selected on the calendar --- .../src/main/royale/DateComponentsPlayGround.mxml | 22 ++ 1 file changed, 22 insertions(+) diff --git a/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml b/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml index bb1e7da..7087e46 100644 --- a/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml +++ b/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml @@ -289,6 +289,28 @@ limitations under the License. + + + + + + + + + + + + + + + + + + + + + +
[royale-asjs] branch develop updated: jewel-DateFieldDateRangeRestriction: new bead to add date range restrictions to DateField
This is an automated email from the ASF dual-hosted git repository. carlosrovira pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git The following commit(s) were added to refs/heads/develop by this push: new e8476d9 jewel-DateFieldDateRangeRestriction: new bead to add date range restrictions to DateField e8476d9 is described below commit e8476d9b94324126ae28f58d311b0c8810bcfd75 Author: Carlos Rovira AuthorDate: Thu Dec 31 17:19:34 2020 +0100 jewel-DateFieldDateRangeRestriction: new bead to add date range restrictions to DateField --- .../Jewel/src/main/resources/jewel-manifest.xml| 1 + .../datechooser/DateChooserDateRangeRestriction.as | 6 +- .../DateFieldDateRangeRestriction.as} | 100 +++-- 3 files changed, 38 insertions(+), 69 deletions(-) diff --git a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml index 9422b31..5ca4d25 100644 --- a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml +++ b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml @@ -135,6 +135,7 @@ + diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as index 6f2bd76..77150b4 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as @@ -123,7 +123,11 @@ package org.apache.royale.jewel.beads.controls.datechooser private function handleDateChooserInitComplete(event:Event):void { (_strand as IEventDispatcher).removeEventListener("initComplete", handleDateChooserInitComplete); - + setUpBead(); + } + + public function setUpBead():void + { view = _strand.getBeadByType(DateChooserView) as DateChooserView; view.previousButton.addEventListener(MouseEvent.CLICK, refreshDateRange); view.nextButton.addEventListener(MouseEvent.CLICK, refreshDateRange); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldDateRangeRestriction.as similarity index 53% copy from frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldDateRangeRestriction.as index 6f2bd76..811c1a2 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldDateRangeRestriction.as @@ -16,31 +16,27 @@ // limitations under the License. // -package org.apache.royale.jewel.beads.controls.datechooser +package org.apache.royale.jewel.beads.controls.datefield { import org.apache.royale.core.IBead; import org.apache.royale.core.IStrand; import org.apache.royale.events.Event; import org.apache.royale.events.IEventDispatcher; -import org.apache.royale.events.MouseEvent; -import org.apache.royale.jewel.beads.controls.Disabled; import org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer; -import org.apache.royale.jewel.beads.views.DateChooserView; -import org.apache.royale.jewel.supportClasses.datechooser.DateChooserTable; -import org.apache.royale.jewel.supportClasses.table.TBodyContentArea; -import org.apache.royale.jewel.supportClasses.table.TableCell; -import org.apache.royale.jewel.supportClasses.table.TableRow; +import org.apache.royale.jewel.beads.views.DateFieldView; +import org.apache.royale.jewel.DateChooser; +import org.apache.royale.jewel.beads.controls.datechooser.DateChooserDateRangeRestriction; /** * Disable dates which are outside restriction provided by minDate and maxDate properties -* in DateChooser component -* +* in DateField component + * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion
[royale-asjs] branch develop updated: jewel-DateRangeRestriction: Rename to DateChooserDateRangeRestriction to make room for another bead for DateField
This is an automated email from the ASF dual-hosted git repository. carlosrovira pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git The following commit(s) were added to refs/heads/develop by this push: new af6ed13 jewel-DateRangeRestriction: Rename to DateChooserDateRangeRestriction to make room for another bead for DateField af6ed13 is described below commit af6ed13288126b833316020b1926a891e2dda434 Author: Carlos Rovira AuthorDate: Thu Dec 31 17:15:07 2020 +0100 jewel-DateRangeRestriction: Rename to DateChooserDateRangeRestriction to make room for another bead for DateField --- .../src/main/royale/DateComponentsPlayGround.mxml | 4 ++-- .../projects/Jewel/src/main/resources/jewel-manifest.xml| 2 +- ...ngeRestriction.as => DateChooserDateRangeRestriction.as} | 13 +++-- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml b/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml index 1316af3..bb1e7da 100644 --- a/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml +++ b/examples/jewel/TourDeJewel/src/main/royale/DateComponentsPlayGround.mxml @@ -270,10 +270,10 @@ limitations under the License. - + - + diff --git a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml index 9e8ac6e..9422b31 100644 --- a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml +++ b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml @@ -134,7 +134,7 @@ - + diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateRangeRestriction.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as similarity index 94% rename from frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateRangeRestriction.as rename to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as index 87553db..6f2bd76 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateRangeRestriction.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as @@ -33,13 +33,14 @@ package org.apache.royale.jewel.beads.controls.datechooser /** * Disable dates which are outside restriction provided by minDate and maxDate properties +* in DateChooser component * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 * @productversion Royale 0.9.8 */ - public class DateRangeRestriction implements IBead + public class DateChooserDateRangeRestriction implements IBead { /** * constructor. @@ -49,7 +50,7 @@ package org.apache.royale.jewel.beads.controls.datechooser * @playerversion AIR 2.6 * @productversion Royale 0.9.8 */ - public function DateRangeRestriction() + public function DateChooserDateRangeRestriction() { } @@ -112,16 +113,16 @@ package org.apache.royale.jewel.beads.controls.datechooser public function set strand(value:IStrand):void { _strand = value; - (_strand as IEventDispatcher).addEventListener("initComplete", handlerDateChooserInitComplete); + (_strand as IEventDispatcher).addEventListener("initComplete", handleDateChooserInitComplete); } private var view:DateChooserView; private var table:DateChooserTable; private var tableContent:TBodyContentArea; - private function handlerDateChooserInitComplete(event:Event):void + private function handleDateChooserInitComplete(event:Event):void { - (_strand as IEventDispatcher).removeEventListener("initComplete", handlerDateChooserInitComplete); + (_strand as IEventDispatcher).removeEventListener("initComplete",
[royale-asjs] branch develop updated: jewel-datefield: add "popUpOpened" and "popUpClosed" to hook actions when open the datechooser popup. This is the same we do in ComboBox
This is an automated email from the ASF dual-hosted git repository. carlosrovira pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git The following commit(s) were added to refs/heads/develop by this push: new 8da9b34 jewel-datefield: add "popUpOpened" and "popUpClosed" to hook actions when open the datechooser popup. This is the same we do in ComboBox 8da9b34 is described below commit 8da9b34976f5a86d4eb9e08747f805b8e139f4a4 Author: Carlos Rovira AuthorDate: Thu Dec 31 17:13:36 2020 +0100 jewel-datefield: add "popUpOpened" and "popUpClosed" to hook actions when open the datechooser popup. This is the same we do in ComboBox --- .../royale/org/apache/royale/jewel/DateField.as| 22 ++ .../royale/jewel/beads/views/DateFieldView.as | 9 +++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DateField.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DateField.as index 5297208..0d6fa25 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DateField.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DateField.as @@ -29,6 +29,28 @@ package org.apache.royale.jewel * The change event is dispatched when the selectedDate is changed. */ [Event(name="change", type="org.apache.royale.events.Event")] + + /** + * Dispatched when the popup is opened. + * + * @toplevel + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion Royale 0.9.8 + */ + [Event(name="popUpOpened", type="org.apache.royale.events.Event")] + + /** + * Dispatched when the popup is closed. + * + * @toplevel + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion Royale 0.9.8 + */ + [Event(name="popUpClosed", type="org.apache.royale.events.Event")] /** * The DateField class provides an input field where a date can be entered diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as index 0209ec3..7831c2c 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as @@ -49,6 +49,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.beads.controls.textinput.MaxNumberCharacters; import org.apache.royale.jewel.beads.views.DateChooserView; import org.apache.royale.utils.UIUtils; + import org.apache.royale.utils.sendStrandEvent; /** * The DateFieldView class is a bead for DateField that creates the @@ -267,13 +268,16 @@ package org.apache.royale.jewel.beads.views table = (popUp.view as DateChooserView).table; // rq = requestAnimationFrame(prepareForPopUp); // not work in Chrome/Firefox, while works in Safari, IE11, setInterval/Timer as well doesn't work right in Firefox - setTimeout(prepareForPopUp, 300); - + COMPILE::JS { window.addEventListener('resize', autoResizeHandler, false); } + prepareForPopUp(); + + sendStrandEvent(_strand, "popUpOpened"); + autoResizeHandler(); } else @@ -286,6 +290,7 @@ package org.apache.royale.jewel.beads.views } _popUp.removeEventListener("initComplete", handlePopUpInitComplete); _popUp = null; + sendStrandEvent(_strand, "popUpClosed"); } } _showingPopup = false;
[royale-asjs] branch develop updated: Implement propertyNames() in ObjectProxy for JS to allow enumerations using "for" and "for each", and adjust Proxy version of propertyNames() in JS.
This is an automated email from the ASF dual-hosted git repository. harbs pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git The following commit(s) were added to refs/heads/develop by this push: new 3734839 Implement propertyNames() in ObjectProxy for JS to allow enumerations using "for" and "for each", and adjust Proxy version of propertyNames() in JS. new 5576954 Merge pull request #1010 from estanglerbm/objectproxy-enum 3734839 is described below commit 3734839045701f984efe2963445e27e90c9b8df7 Author: Edward Stangler AuthorDate: Wed Dec 16 11:31:11 2020 -0600 Implement propertyNames() in ObjectProxy for JS to allow enumerations using "for" and "for each", and adjust Proxy version of propertyNames() in JS. --- .../Core/src/main/royale/org/apache/royale/utils/Proxy.as | 11 ++- .../projects/MXRoyale/src/main/royale/mx/utils/ObjectProxy.as | 10 ++ 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/Proxy.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/Proxy.as index ed5e48b..4c45fc5 100644 --- a/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/Proxy.as +++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/Proxy.as @@ -145,12 +145,13 @@ public dynamic class Proxy extends EventDispatcher return delete valueMap[propName]; } - public function propertyNames():Array + public function propertyNames():Object { - var names:Array = []; - for (var p:String in valueMap) - names.push(p); - return names; +// var names:Array = []; +// for (var p:String in valueMap) +// names.push(p); +// return names; + return valueMap; } } diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/utils/ObjectProxy.as b/frameworks/projects/MXRoyale/src/main/royale/mx/utils/ObjectProxy.as index 63825ca..ed7f99b 100644 --- a/frameworks/projects/MXRoyale/src/main/royale/mx/utils/ObjectProxy.as +++ b/frameworks/projects/MXRoyale/src/main/royale/mx/utils/ObjectProxy.as @@ -657,6 +657,16 @@ public dynamic class ObjectProxy extends Proxy } } +/* + * To enumerate keys: for (key:String in objproxy) + * To enumerate values: for each (value in objproxy) + */ +COMPILE::JS +override public function propertyNames():Object +{ +return _item; +} + //-- // // object_proxy methods
[royale-asjs] branch develop updated (41ee8ed -> 457d058)
This is an automated email from the ASF dual-hosted git repository. harbs pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git. from 41ee8ed Merge pull request #1025 from estanglerbm/xml-faster-parse new af2fb81 Add support for XML and XMLList to MX LogLogger logging new bf7545c Add removeAllElements() and removeElementAt() to MX ViewStack (via Container). new ac13e07 Support null arg. new 20ab20d Initialize _url in MX and Spark so that FlexGlobals.topLevelApplication.url is defined. new aedd772 Set ListEvent.itemRenderer on itemClick of AdvancedDataGrid. new d9f5a9d Fix typos in MX CartesianChart regarding verticalAxisRenderers that throw runtime errors. new 457d058 Merge pull request #1017 from estanglerbm/mx-changes The 12217 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../mx/charts/chartClasses/CartesianChart.as | 4 ++-- ...vancedDataGridSingleSelectionMouseController.as | 1 + .../src/main/royale/mx/core/Application.as | 4 .../MXRoyale/src/main/royale/mx/core/Container.as | 19 + .../src/main/royale/mx/logging/LogLogger.as| 23 +++-- .../main/royale/spark/components/Application.as| 24 -- 6 files changed, 61 insertions(+), 14 deletions(-)
[royale-asjs] branch develop updated: Speed up XML parsing of larger datasets by 30-50% by using faster DOM APIs, shorter string lookups, eliminating unnecessary string copies, and other changes.
This is an automated email from the ASF dual-hosted git repository. harbs pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git The following commit(s) were added to refs/heads/develop by this push: new fe5f7d2 Speed up XML parsing of larger datasets by 30-50% by using faster DOM APIs, shorter string lookups, eliminating unnecessary string copies, and other changes. new 41ee8ed Merge pull request #1025 from estanglerbm/xml-faster-parse fe5f7d2 is described below commit fe5f7d2c3858957a53e732b251495ef6350a32de Author: Edward Stangler AuthorDate: Wed Dec 30 22:01:08 2020 -0600 Speed up XML parsing of larger datasets by 30-50% by using faster DOM APIs, shorter string lookups, eliminating unnecessary string copies, and other changes. --- frameworks/projects/XML/src/main/royale/XML.as | 66 ++ 1 file changed, 45 insertions(+), 21 deletions(-) diff --git a/frameworks/projects/XML/src/main/royale/XML.as b/frameworks/projects/XML/src/main/royale/XML.as index 27c7103..0b2d810 100644 --- a/frameworks/projects/XML/src/main/royale/XML.as +++ b/frameworks/projects/XML/src/main/royale/XML.as @@ -34,20 +34,24 @@ package * The XML QName can be a significant percentage of an XML object size. * By retaining a lookup of QNames and reusing QName objects, we can save quite a bit of memory. */ - static private var _nameMap:Object = {}; + static private var _nameMap:Object = Object.create(null); + static private var _attrNameMap:Object = Object.create(null); static private function getQName(localName:String,prefix:*,uri:String,isAttribute:Boolean):QName{ localName = localName || ""; var prefixKey:String = prefix == null ? '{$'+prefix+'$}' : prefix ; // handle nullish values differently to the potent 'null' or 'undefined' string values uri = uri || ''; //internally there is no concept of 'any' namespace which is what a null uri is in a QName. - var key:String = localName + ":" + prefixKey + ":" + uri + ":" + isAttribute; - var qname:QName = _nameMap[key]; + var key:String = (!prefix && !uri ? localName : localName + ":" + prefixKey + ":" + uri); + var qname:QName = (isAttribute ? _attrNameMap[key] : _nameMap[key]); if(!qname){ qname = new QName(uri, localName); if(prefix != null) qname.setPrefix(prefix); if (isAttribute) qname.setIsAttribute(true); - _nameMap[key] = qname; + if (isAttribute) + _attrNameMap[key] = qname; + else + _nameMap[key] = qname; } return qname; } @@ -213,7 +217,8 @@ package */ static public function clearQNameCache():void { - _nameMap = {}; + _nameMap = Object.create(null); + _attrNameMap = Object.create(null); } /** @@ -333,12 +338,34 @@ package return xml; } - static private function iterateElement(node:Element,xml:XML):void + static private function polyFillNodeGetAttributeNames(node:Element):Array { + var ret:Array = new Array(); var i:int; - // add attributes var attrs:* = node.attributes; var len:int = node.attributes.length; + for(i=0;i"; + data = ""; xml.setValue(data); break; //case 5:break;//ENTITY_REFERENCE_NODE //case 6:break;//ENTITY_NODE case 7: //PROCESSING_INSTRUCTION_NODE + data = node.nodeValue; xml = new XML(); xml._nodeKind = PROCESSING_INSTRUCTION; //e4x: The [[Name]] for each XML object representing a processing-instruction will have its uri property set to the empty string. @@ -436,7 +464,7 @@ package break; case 8:
[royale-asjs] branch develop updated (640b751 -> bc6b0cc)
This is an automated email from the ASF dual-hosted git repository. alinakazi pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git. from 640b751 Jewel DateFieldView: Make some method protected to easier extending add bc6b0cc headerHeight Property added in mx Panel No new revisions were added by this update. Summary of changes: .../MXRoyale/src/main/royale/mx/containers/Panel.as| 14 -- 1 file changed, 12 insertions(+), 2 deletions(-)
[royale-asjs] branch develop updated (cadad31 -> 640b751)
This is an automated email from the ASF dual-hosted git repository. piotrz pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git. from cadad31 jewel-datefield-beads: organize and clean imports add 640b751 Jewel DateFieldView: Make some method protected to easier extending No new revisions were added by this update. Summary of changes: .../main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[royale-asjs] branch develop updated: jewel-datefield-beads: organize and clean imports
This is an automated email from the ASF dual-hosted git repository. carlosrovira pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-asjs.git The following commit(s) were added to refs/heads/develop by this push: new cadad31 jewel-datefield-beads: organize and clean imports cadad31 is described below commit cadad319cad2334ee956f126fe81b80d51e4feb3 Author: Carlos Rovira AuthorDate: Thu Dec 31 10:01:24 2020 +0100 jewel-datefield-beads: organize and clean imports --- .../beads/controls/datefield/DateFieldMaskedTextInput.as| 13 +++-- .../jewel/beads/controls/datefield/DateFieldTextPrompt.as | 2 +- .../beads/controls/datefield/SpanishDateComponentConfig.as | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldMaskedTextInput.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldMaskedTextInput.as index b35c602..1643cbf 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldMaskedTextInput.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldMaskedTextInput.as @@ -25,15 +25,16 @@ package org.apache.royale.jewel.beads.controls.datefield COMPILE::SWF { import flash.events.TextEvent; - import org.apache.royale.core.CSSTextField; - import org.apache.royale.html.beads.ITextFieldView; + + import org.apache.royale.core.CSSTextField; + import org.apache.royale.events.Event; + import org.apache.royale.events.IEventDispatcher; + import org.apache.royale.html.beads.ITextFieldView; } import org.apache.royale.core.IBead; - import org.apache.royale.core.IStrand; -import org.apache.royale.core.UIBase; - import org.apache.royale.events.Event; - import org.apache.royale.events.IEventDispatcher; import org.apache.royale.core.IFormatter; + import org.apache.royale.core.IStrand; + import org.apache.royale.core.UIBase; /** * The DateFieldMaskedTextInput class is a specialty bead that is used diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as index 229d413..1cc0b82 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/DateFieldTextPrompt.as @@ -20,7 +20,7 @@ package org.apache.royale.jewel.beads.controls.datefield { COMPILE::SWF { - import flash.utils.setTimeout; + import flash.utils.setTimeout; } import org.apache.royale.core.UIBase; import org.apache.royale.jewel.beads.controls.textinput.TextPrompt; diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as index 5fb16bc..e6b16ee 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as @@ -20,8 +20,8 @@ package org.apache.royale.jewel.beads.controls.datefield { import org.apache.royale.core.IDateControlConfigBead; import org.apache.royale.core.IStrand; -import org.apache.royale.jewel.beads.models.DateChooserModel; import org.apache.royale.jewel.DateField; +import org.apache.royale.jewel.beads.models.DateChooserModel; /** * The SpanishDateFieldConfig class is a specialty bead that is used