The initial versions of Basic data providers and their like were not intended to be complete. Some of it is still proof of concept. The stuff that's there is really meant for a more static viewing rather than being dynamic. Plus there is no code to support virtualized lists of any sort.
With the fundamentals working, we should probably create a new set (not a replacement, just new/more) data provider classes that can handle updates and deletes properly. I would not change what's there unless there is a real bug when it comes to reading the data and generating itemRenderers because that's all it is supposed to do. The ArrayList class, I think, should be made complete: create, add, update, delete. Perhaps that isn't PAYG - I have a hard time telling sometimes. Do most people want create-only? If that's the case, then ArrayListPlus or SuperArrayList could include the other functions - that would be more PAYG. ‹peter On 10/28/17, 7:48 PM, "Harbs" <[email protected]> wrote: >This change made updating the dataProvider in the DataGridExample work, >but it seems to have caused an endless recursive layout in some cases. > >I¹ve reverted it because it seems to have broken existing apps, but I¹m >not completely sure why. > >I¹m left with the question of how to allow changes to ArrayLists >propagating to the view without causing the endless loopŠ > >> On Oct 29, 2017, at 1:43 AM, [email protected] wrote: >> >> This is an automated email from the ASF dual-hosted git repository. >> >> harbs pushed a commit to branch develop >> in repository >>https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitbox.a >>pache.org%2Frepos%2Fasf%2Froyale-asjs.git&data=02%7C01%7C%7C98bf6f3837ba4 >>d6746ff08d51e5e638d%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C63644831 >>3127940766&sdata=OCGyB8FulE%2Fc0UPp2dSnQJ4yIynBlhqDUo%2BP%2B7um%2B10%3D&r >>eserved=0 >> >> commit 9d20a649a7d417ca62724c98f3906c0d160172ae >> Author: Harbs <[email protected]> >> AuthorDate: Sun Oct 29 01:41:08 2017 +0200 >> >> Revert "Updating the source of an ArrayList does not change the view >>of the component without this change." >> >> This reverts commit 313cf14147dfdd53b621b82b949b8544d2b6ed91. >> --- >> .../org/apache/royale/html/beads/models/ArrayListSelectionModel.as >> | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git >>a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ >>models/ArrayListSelectionModel.as >>b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ >>models/ArrayListSelectionModel.as >> index ec10892..81c606c 100644 >> --- >>a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ >>models/ArrayListSelectionModel.as >> +++ >>b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ >>models/ArrayListSelectionModel.as >> @@ -84,6 +84,7 @@ package org.apache.royale.html.beads.models >> */ >> public function set dataProvider(value:Object):void >> { >> + if (value == _dataProvider) return; >> >> _dataProvider = value as IArrayList; >> if(!_dataProvider || _selectedIndex >= >> _dataProvider.length) >> >> -- >> To stop receiving notification emails like this one, please contact >> "[email protected]" <[email protected]>. >
