Smart ListBox: Has Anyone Written One?

The use of specific JADE features and proposals for new feature suggestions
ConvertFromOldNGs
Posts: 5321
Joined: Wed Aug 05, 2009 5:19 pm

Smart ListBox: Has Anyone Written One?

Postby ConvertFromOldNGs » Fri Aug 07, 2009 10:47 am

by Robin Arzoni >> Thu, 5 Apr 2001 22:32:08 GMT

I have a system that uses ListBoxes to display hierarchies. For performance reasons, I would prefer to have a smart ListBox that loads only the objects that will fit into the current ListBox window, and that loads or discards objects as the user scrolls up or down.

I know that the JADE Demo System has a CollectionListBox subclass which adjusts the collection and ListBox items as the user scrolls, but it does not maintain hierarchies.

Has anyone written a ListBox subclass that supports hierarchies and maintains a moveable window over a collection?

Robin

ConvertFromOldNGs
Posts: 5321
Joined: Wed Aug 05, 2009 5:19 pm

Re: Smart ListBox: Has Anyone Written One?

Postby ConvertFromOldNGs » Fri Aug 07, 2009 10:47 am

by Craig Shearer >> Fri, 6 Apr 2001 0:55:47 GMT

Hi Rob

I have a control called a VirtualisedTreeView which does perhaps some of what you want. It basically only loads up the first level of the hierarchy and then loads subsequent child objects as the user expands branches of the tree. The developer responds to events on the control to say whether the object has children, and to load the children when required.

This performs pretty well, providing the width of the hierarchy is not too great (then you're back to loading ALL the objects into the control, albeit only at one level). I imagine you could extend this to virtualise it some more to only contain the objects visible, however, you'd also need to ensure you always kept the parent entries loaded into the control. You'd also need to be pretty smart about how you managed the scrollbar too...

Contact me if you're interested.

Craig.


Return to “Feature Discussions”

Who is online

Users browsing this forum: No registered users and 17 guests