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 1658d0da73 Added ArrayListDataSupport, comments
1658d0da73 is described below
commit 1658d0da73fce5446f37a63975b6749fe50bf9ae
Author: Harbs <[email protected]>
AuthorDate: Fri Feb 20 12:10:35 2026 +0200
Added ArrayListDataSupport, comments
---
.../Basic/src/main/resources/basic-manifest.xml | 1 +
.../royale/html/beads/ArrayListDataSupport.as | 74 ++++++++++++++++++++++
.../royale/org/apache/royale/core/CompoundBead.as | 5 ++
3 files changed, 80 insertions(+)
diff --git a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
index 8d6e1231ec..3e41d7ae84 100644
--- a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
@@ -218,6 +218,7 @@
<component id="DataGridPercentageView"
class="org.apache.royale.html.beads.DataGridPercentageView" />
<component id="DataGridCollectionViewModel"
class="org.apache.royale.html.beads.models.DataGridCollectionViewModel" />
+ <component id="ArrayListDataSupport"
class="org.apache.royale.html.beads.ArrayListDataSupport" />
<component id="DataItemRendererFactoryForArrayData"
class="org.apache.royale.html.beads.DataItemRendererFactoryForArrayData" />
<component id="DataItemRendererFactoryForArrayList"
class="org.apache.royale.html.beads.DataItemRendererFactoryForArrayList" />
<component id="DynamicItemsRendererFactoryForArrayListData"
class="org.apache.royale.html.beads.DynamicItemsRendererFactoryForArrayListData"
/>
diff --git
a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ArrayListDataSupport.as
b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ArrayListDataSupport.as
new file mode 100644
index 0000000000..7ab60f516d
--- /dev/null
+++
b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ArrayListDataSupport.as
@@ -0,0 +1,74 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.royale.html.beads
+{
+ import org.apache.royale.core.CompoundBead;
+ import org.apache.royale.core.IDataProviderItemRendererMapper;
+ import org.apache.royale.core.IItemRendererClassFactory;
+
+ /**
+ * Composes bead implementations that support item-renderer mapping for
+ * list-based data providers backed by collection views.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.13
+ */
+ public class ArrayListDataSupport extends CompoundBead implements
IDataProviderItemRendererMapper
+ {
+ /**
+ * Creates an <code>ArrayListDataSupport</code> bead and wires
the default
+ * support beads used to update, clear, and create item
renderers for
+ * collection-view-backed data providers.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.13
+ */
+ public function ArrayListDataSupport()
+ {
+ addBead(new CollectionChangeUpdateForArrayListData());
+ addBead(new
DynamicRemoveAllItemRendererForArrayListData());
+ factory = new
DataItemRendererFactoryForCollectionView();
+ addBead(factory);
+
+ }
+ private var factory:IDataProviderItemRendererMapper;
+
+ /**
+ * The item renderer class factory in the internal mapper bead.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.13
+ */
+ public function get
itemRendererFactory():org.apache.royale.core.IItemRendererClassFactory
+ {
+ return factory.itemRendererFactory;
+ }
+
+ public function set
itemRendererFactory(value:org.apache.royale.core.IItemRendererClassFactory):void
+ {
+ factory.itemRendererFactory = value;
+ }
+ }
+}
\ No newline at end of file
diff --git
a/frameworks/projects/Core/src/main/royale/org/apache/royale/core/CompoundBead.as
b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/CompoundBead.as
index a937885696..6c71fdf3bf 100644
---
a/frameworks/projects/Core/src/main/royale/org/apache/royale/core/CompoundBead.as
+++
b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/CompoundBead.as
@@ -24,6 +24,11 @@ package org.apache.royale.core
/**
* A container bead that aggregates multiple child beads and applies
them
* to a strand as a single unit.
+ *
+ * This would normally be used as a base class for a bead that composes
beads meant to be used together.
+ *
+ * It can also be used as a base for an MXML file while declares a
number of commonly used beads,
+ * so that it can be used elsewhere to apply all the beads at once.
*
* @langversion 3.0
* @playerversion Flash 10.2