<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: JFace&#8217;s Viewers Performances</title>
	<atom:link href="http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/feed/" rel="self" type="application/rss+xml" />
	<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/</link>
	<description>My Eclipse Experiences</description>
	<lastBuildDate>Thu, 10 Dec 2009 16:25:35 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Akram</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-249</link>
		<dc:creator>Akram</dc:creator>
		<pubDate>Thu, 05 Mar 2009 20:00:17 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-249</guid>
		<description>Hi,

I did a model level sort, it works fine except when adding dynamically an  item that should occupy the first position, the tree is no longer coherent!</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>I did a model level sort, it works fine except when adding dynamically an  item that should occupy the first position, the tree is no longer coherent!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Manuel</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-47</link>
		<dc:creator>Manuel</dc:creator>
		<pubDate>Mon, 21 Apr 2008 08:12:27 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-47</guid>
		<description>Hi Tom,

When you said : &quot;Using a TreeViewer in VIRTUAL-Mode with an ordinary content provider should create the TreeItems only when shown&quot; does it mean all TreeItems are created lazily or only &quot;Children&quot; items ?

In fact I forgot to mention in my post than my TreeViewer mainly contains &quot;Root elements&quot; (only ~1% of the 60 000 entries have a parent).
So what I mean by &quot;Performances Problems&quot; is : Root elements are all created at once even if they are not visible.

The snippet 02 in the JFace&#039;s snippets can be used to reproduce this ...

In fact I just had a quick look into TreeViewer class and the following lines made me think that VIRTUAL style must be used with Lazy content providers:

treeControl.addListener(SWT.SetData, new Listener() {
	public void handleEvent(Event event) {
		if (contentProviderIsLazy) {
		      TreeItem item = (TreeItem) event.item;
		        .....
		}
	}
});



If my viewer doesn&#039;t have a LazyContentProvider the SWT.SetData listener isn&#039;t used ... Am I right or did I miss something ?</description>
		<content:encoded><![CDATA[<p>Hi Tom,</p>
<p>When you said : &#8220;Using a TreeViewer in VIRTUAL-Mode with an ordinary content provider should create the TreeItems only when shown&#8221; does it mean all TreeItems are created lazily or only &#8220;Children&#8221; items ?</p>
<p>In fact I forgot to mention in my post than my TreeViewer mainly contains &#8220;Root elements&#8221; (only ~1% of the 60 000 entries have a parent).<br />
So what I mean by &#8220;Performances Problems&#8221; is : Root elements are all created at once even if they are not visible.</p>
<p>The snippet 02 in the JFace&#8217;s snippets can be used to reproduce this &#8230;</p>
<p>In fact I just had a quick look into TreeViewer class and the following lines made me think that VIRTUAL style must be used with Lazy content providers:</p>
<p>treeControl.addListener(SWT.SetData, new Listener() {<br />
	public void handleEvent(Event event) {<br />
		if (contentProviderIsLazy) {<br />
		      TreeItem item = (TreeItem) event.item;<br />
		        &#8230;..<br />
		}<br />
	}<br />
});</p>
<p>If my viewer doesn&#8217;t have a LazyContentProvider the SWT.SetData listener isn&#8217;t used &#8230; Am I right or did I miss something ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom Schindl</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-46</link>
		<dc:creator>Tom Schindl</dc:creator>
		<pubDate>Thu, 17 Apr 2008 11:19:59 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-46</guid>
		<description>Do you by chance have a small test-case I can run to see what&#039;s going wrong with TreeViewers?</description>
		<content:encoded><![CDATA[<p>Do you by chance have a small test-case I can run to see what&#8217;s going wrong with TreeViewers?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom Schindl</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-45</link>
		<dc:creator>Tom Schindl</dc:creator>
		<pubDate>Thu, 17 Apr 2008 11:18:22 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-45</guid>
		<description>A thing that makes me think is way a TreeViewer in VIRTUAL-Mode with an ordinary content provider has performance problems because it should create the TreeItems only when shown. Need to investigate that a bit.</description>
		<content:encoded><![CDATA[<p>A thing that makes me think is way a TreeViewer in VIRTUAL-Mode with an ordinary content provider has performance problems because it should create the TreeItems only when shown. Need to investigate that a bit.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Manuel</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-44</link>
		<dc:creator>Manuel</dc:creator>
		<pubDate>Thu, 17 Apr 2008 05:49:40 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-44</guid>
		<description>Thanks to all for your answers,

I will keep an eye on the bug #157228.

Xavier, i will get a try concerning sorting and filtering at model level, and of course let you know ;o)</description>
		<content:encoded><![CDATA[<p>Thanks to all for your answers,</p>
<p>I will keep an eye on the bug #157228.</p>
<p>Xavier, i will get a try concerning sorting and filtering at model level, and of course let you know ;o)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom Schindl</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-43</link>
		<dc:creator>Tom Schindl</dc:creator>
		<pubDate>Wed, 16 Apr 2008 22:33:10 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-43</guid>
		<description>The JFace request is Bug 157228</description>
		<content:encoded><![CDATA[<p>The JFace request is Bug 157228</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: XR</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-42</link>
		<dc:creator>XR</dc:creator>
		<pubDate>Wed, 16 Apr 2008 19:10:09 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-42</guid>
		<description>Hi Manuel,

50 000 rows is not so big.
If you really want sorting and filtering, perhaps you can do that at model level (ContentProvider level) instead of at UI level ?

XR</description>
		<content:encoded><![CDATA[<p>Hi Manuel,</p>
<p>50 000 rows is not so big.<br />
If you really want sorting and filtering, perhaps you can do that at model level (ContentProvider level) instead of at UI level ?</p>
<p>XR</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Curtis</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-38</link>
		<dc:creator>Curtis</dc:creator>
		<pubDate>Wed, 16 Apr 2008 18:40:08 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-38</guid>
		<description>https://bugs.eclipse.org/bugs/show_bug.cgi?id=161435

The debug framework has its own asynchronous viewer framework with some filtering capability (no sorting).  There has been ongoing discussions about making the API available outside of debug, possibly combing work done by JFace.</description>
		<content:encoded><![CDATA[<p><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=161435" rel="nofollow">https://bugs.eclipse.org/bugs/show_bug.cgi?id=161435</a></p>
<p>The debug framework has its own asynchronous viewer framework with some filtering capability (no sorting).  There has been ongoing discussions about making the API available outside of debug, possibly combing work done by JFace.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ismael Juma</title>
		<link>http://manuelselva.wordpress.com/2008/04/16/jfaces-viewers-performances/#comment-37</link>
		<dc:creator>Ismael Juma</dc:creator>
		<pubDate>Wed, 16 Apr 2008 16:02:02 +0000</pubDate>
		<guid isPermaLink="false">http://manuelselva.wordpress.com/?p=29#comment-37</guid>
		<description>Hi,

Our experience in RSSOwl2 has also been that the creation of UI elements is the bottleneck.

&quot;Someone told me on the Eclipse Platform newsgroup that the request to support SWT.VIRTUAL style and sorting and filtering for TreeViewer is already in the “pipe”&quot;

That&#039;s interesting. We would benefit from that too.

Ismael</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Our experience in RSSOwl2 has also been that the creation of UI elements is the bottleneck.</p>
<p>&#8220;Someone told me on the Eclipse Platform newsgroup that the request to support SWT.VIRTUAL style and sorting and filtering for TreeViewer is already in the “pipe”&#8221;</p>
<p>That&#8217;s interesting. We would benefit from that too.</p>
<p>Ismael</p>
]]></content:encoded>
	</item>
</channel>
</rss>
