You don't have to know how tall each HTML portion is. You just need to know 
when to load the next page of data and that would be if your scroll 
position nearly reaches the bottom of ScrollPanel.

Its pretty similar to what you can see here (see ShowMorePagerPanel.java): 
http://gwt.google.com/samples/Showcase/Showcase.html?locale=en#!CwCellList 

So you just need a ScrollPanel with a ScrollHandler attached that notifies 
you when to load/render the next page of log entries because the user has 
nearly scrolled to the end of the displayed widget.

I have implemented a list some time ago (before cell widgets) that required 
fixed height list entries and only rendered the list entry widgets when 
they are actually visible to the user. So at any time during scrolling the 
DOM only contained that much elements needed to fill the visible area. 
Scrolled out items were removed from DOM while scrolled in items were 
attached constantly while scrolling. The math wasn't that complicated and 
it works pretty well but because of the constantly deleting and adding of 
DOM elements while scrolling we had some hiccups in older IE's when 
scrolling fast through the list. But we could easily scroll through 
thousands of list entries while only having ~40 DIVs (depending on list 
height and fixed list entry height) to represent them.

Although it worked I think I wouldn't do it again that way unless you have 
some memory constraints (mobile devices) and don't want to have that many 
invisible DOM elements laying around (on the other hand constantly updating 
the DOM can cost more battery power on mobile devices). 

Having a ScrollHandler that notifies you when reaching the end of the list 
is a simpler solution.

-- J.

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/l83xEjeg6U4J.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to