Pretty good. The intensiveness is in memory consumption for all of those rows and managing an accurate notion of scrollposition of we don't create those rows right away. With variable row height, how do we know max scroll position without creating and rendering every row?
However, we'll be adding smooth scrolling in the near future. There's be some odd edge cases in certain variable row height situations, but in general, it should look ok for most folks. ________________________________ From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Derek Vadneau Sent: Wednesday, May 30, 2007 1:32 PM To: [email protected] Subject: Re: [flexcoders] Smooth scrolling in list controls "I'm sure the code is slightly easier to write for the list controls if they don't have to track item renderers being in partial positions, etc" Actually, that's not the issue. The rows aren't all rendered at once. A specific number of rows are created (the number relates to what is visible in the control). From then on, when you "scroll" the rows, the cellrenderers are being populated with new data. Think of it like a computer screen. Each pixel is updated with new data so you get the effect of movement. The pixels themselves don't move. The same goes for the List components. The cellrenderers don't move, they just get fed new data. The idea is to increase the performance of the list. Otherwise, if the list created all the rows and then you scrolled the entire list, it could get rather intensive when holding thousands of items. That's my understanding of the why. Perhaps someone else could give a better analogy/explanation. On 5/30/07, thirtyfivemph <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: I'm fairly satisfied with the capabilities of most of the Flex components. Sure, there are a few shortcomings, but they have mostly been fixed by the community in projects like flexlib, etc. What I've found frustrating (aesthetically), and surprising (technically), is that the list controls (List and HorizontalList) don't support smooth scrolling! In a graphics-intensive environment like Flash, I just don't understand why we'd have components that look so clunky. Well, in fact, I do understand "why"... I'm sure the code is slightly easier to write for the list controls if they don't have to track item renderers being in partial positions, etc... but come on, compared to all of the code that's going on in the List control already, I can't imagine that would have been a big deal (particularly consider the "ugh" factor it delivers). So, I've tried to work around it the easy way by using Repeater controls inside of canvases (which gives the right visual look, but doesn't provide the niceties of a List control with built-in drag-n-drop support and efficient use of item renderers). I've also checked out other folks controls like Scroller, etc., but they all see to go the same route. So, I'm wondering... does anyone have a good solution for smooth scrolling in Lists or HorizontalLists? I swear I expected it so much I figured I was just overlooking a style setting or property for a long time, but at this point I think its simply an oversight in the control's design! Am I alone in this opinion? Do the rest of you guys not want a silky smooth UI? Troy. -- Derek Vadneau

