Friday, August 05, 2005

 

So how VIRTUAL are you?

Steve Northover and I were talking this morning about some of the extra support (and fixes) we want to do in the JFace VIRTUAL support in 3.2.

One use case we hear about is that when you scroll enough on a Table it populates so much that the Table is effectively a normal Table.

If you had 1,000,000 entries this would be a problem. But does anyone actually have this case? I would be interested to hear if there is a product out there that users will periodically overpopulate thier table with scrolling.

There is one case I can see that is easy to get - that is a shift-selecting the whole table (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=98248).
Comments:
I want 1M entries in a table. 500M entries even. Why not? One use-case is a table that's a preview of a SQL query result. You probably didn't *mean* to pull 500M entries back, but you certainly don't want your UI to freeze up while it fills them all into a table. You want it to show data as it is available and visible, and be responsive so you can scroll around, redo the query, or maybe drill down into something interesting.
 
I second Ed on this one and can think of an immediate use case in the context of the DTP when you want to browse content of a database. But you might want to ask that directly to them.
 
I know that one of our products has a table that contains about 150,000 rows, if that counts. And it is common to select a very large percentage of the rows with shift select or select-all.
 
The Table could use SoftReferences for holding the TableItems. People with a lot of RAM can then hold the whole result set in memory, while others can still use it (but might see small delays on TableItems they had already seen before).
 
I think you guys are missing the point. That is exactly the use case I expect. If we are VIRTUAL that is no problem - the issue is more if the user has ever looked at them.

Once they are outside of the visible range no SWT widgets are created - if you use an ILazyContentProvider we don't even cache the elements.

My question is more about if anyone will actually scroll through them all and force us to create extra widgets.
 
P.S. Shift select is definately a case we want to handle better in the viewer BTW.
 
Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?