You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@royale.apache.org by Harbs <ha...@gmail.com> on 2018/09/05 12:20:04 UTC
Re: [royale-asjs] branch feature/new_merge updated: this fixes
add/remove items from list
Ah. I was just working on this.
I guess I’ll leave it to you to finish.
Let me know if you want help.
Harbs
> On Sep 5, 2018, at 3:13 PM, carlosrovira@apache.org wrote:
>
> This is an automated email from the ASF dual-hosted git repository.
>
> carlosrovira pushed a commit to branch feature/new_merge
> in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
>
>
> The following commit(s) were added to refs/heads/feature/new_merge by this push:
> new 40a85ea this fixes add/remove items from list
> 40a85ea is described below
>
> commit 40a85ea77bc2e9c57d7d2760d9f7a1aa2cff032b
> Author: Carlos Rovira <ca...@apache.org>
> AuthorDate: Wed Sep 5 14:13:06 2018 +0200
>
> this fixes add/remove items from list
> ---
> .../itemRenderers/AddListItemRendererForArrayListData.as | 10 +++++-----
> .../itemRenderers/RemoveListItemRendererForArrayListData.as | 12 ++++++------
> 2 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as
> index 7e7c2ed..188dba2 100644
> --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as
> +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as
> @@ -26,6 +26,7 @@ package org.apache.royale.jewel.beads.itemRenderers
> import org.apache.royale.core.ISelectableItemRenderer;
> import org.apache.royale.core.ISelectionModel;
> import org.apache.royale.core.IStrand;
> + import org.apache.royale.core.IStrandWithModelView;
> import org.apache.royale.core.SimpleCSSStyles;
> import org.apache.royale.core.UIBase;
> import org.apache.royale.events.CollectionEvent;
> @@ -130,11 +131,10 @@ package org.apache.royale.jewel.beads.itemRenderers
> fillRenderer(event.index, event.item, ir, presentationModel);
>
> // update the index values in the itemRenderers to correspond to their shifted positions.
> - var dataGroup:UIBase = itemRendererParent as UIBase;
> - var n:int = dataGroup.numElements;
> + var n:int = itemRendererParent.numItemRenderers;
> for (var i:int = event.index; i < n; i++)
> {
> - ir = dataGroup.getElementAt(i) as ISelectableItemRenderer;
> + ir = itemRendererParent.getItemRendererAt(i) as ISelectableItemRenderer;
> ir.index = i;
> }
>
> @@ -174,8 +174,8 @@ package org.apache.royale.jewel.beads.itemRenderers
> public function get itemRendererParent():IItemRendererParent
> {
> if (_itemRendererParent == null) {
> - var listView:IListView = _strand.getBeadByType(IListView) as IListView;
> - _itemRendererParent = listView.dataGroup;
> + var view:IListView = (_strand as IStrandWithModelView).view as IListView;
> + _itemRendererParent = view.dataGroup;
> }
> return _itemRendererParent;
> }
> diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveListItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveListItemRendererForArrayListData.as
> index 10f8b4e..98aa953 100644
> --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveListItemRendererForArrayListData.as
> +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveListItemRendererForArrayListData.as
> @@ -24,6 +24,7 @@ package org.apache.royale.jewel.beads.itemRenderers
> import org.apache.royale.core.ISelectableItemRenderer;
> import org.apache.royale.core.ISelectionModel;
> import org.apache.royale.core.IStrand;
> + import org.apache.royale.core.IStrandWithModelView;
> import org.apache.royale.core.UIBase;
> import org.apache.royale.events.CollectionEvent;
> import org.apache.royale.events.Event;
> @@ -116,15 +117,14 @@ package org.apache.royale.jewel.beads.itemRenderers
> */
> protected function handleItemRemoved(event:CollectionEvent):void
> {
> - var parent:UIBase = itemRendererParent as UIBase;
> - var ir:ISelectableItemRenderer = parent.getElementAt(event.index) as ISelectableItemRenderer;
> + var ir:ISelectableItemRenderer = itemRendererParent.getItemRendererAt(event.index) as ISelectableItemRenderer;
> itemRendererParent.removeItemRenderer(ir);
>
> // adjust the itemRenderers' index to adjust for the shift
> - var n:int = parent.numElements;
> + var n:int = itemRendererParent.numItemRenderers;
> for (var i:int = event.index; i < n; i++)
> {
> - ir = parent.getElementAt(i) as ISelectableItemRenderer;
> + ir = itemRendererParent.getItemRendererAt(i) as ISelectableItemRenderer;
> ir.index = i;
> }
>
> @@ -164,8 +164,8 @@ package org.apache.royale.jewel.beads.itemRenderers
> public function get itemRendererParent():IItemRendererParent
> {
> if (_itemRendererParent == null) {
> - var listView:IListView = _strand.getBeadByType(IListView) as IListView;
> - _itemRendererParent = listView.dataGroup;
> + var view:IListView = (_strand as IStrandWithModelView).view as IListView;
> + _itemRendererParent = view.dataGroup;
> }
> return _itemRendererParent;
> }
>