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

Reply via email to