Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Remote Application Platform (RAP) » [ANN] New tree implementation in CVS
[ANN] New tree implementation in CVS [message #548270] Wed, 21 July 2010 09:50 Go to next message
Tim Buschtoens is currently offline Tim BuschtoensFriend
Messages: 396
Registered: July 2009
Senior Member
Hello everybody!

I'm pleased to announce that the new Tree implementation has been
committed to CVS HEAD. This was one of the most requested improvements
for RAP, since the old Tree had several shortcomings that were
immpossible to work around. The new Tree has been (in contrast to the
old one) build specifically for RAP and is faster, more flexible and
(for us) easier to maintain and enhance.

So please check it out and test it. Work on the new Tree is by no means
finished, and if you find any problems (especially new ones) that don't
yet have an bugzilla entry, please open one. If you are unsure if its a
known bug, respond to this post.

New Features:
- Virtual scrolling makes (even non-virtual) big trees load much faster.
- Items can be higher than the default 16px.
- Cells can have different colors and fonts.
- FULL_SELECTION support.
- Gridlines support.
- Themeable indentation-symbols (treelines, expand/collapse icons).

All already open bugzilla-entries will be reviewed and, where
appropriate, closed by me in the next few hours.

Greetings,
Tim
Re: [ANN] New tree implementation in CVS [message #548271 is a reply to message #548270] Wed, 21 July 2010 10:10 Go to previous messageGo to next message
Markus  rüger is currently offline Markus rügerFriend
Messages: 369
Registered: July 2009
Senior Member
Great work, as soon as we can update I will test it :-)

"Tim Buscht
Re: [ANN] New tree implementation in CVS [message #548297 is a reply to message #548271] Wed, 21 July 2010 12:08 Go to previous messageGo to next message
Benjamin Wolff is currently offline Benjamin WolffFriend
Messages: 136
Registered: July 2009
Senior Member
Looks like the regular Menu does not popup anymore. To verify just crate a simple application with a view and use the following createPartControl body:

public void createPartControl(Composite parent) {
Composite mainComp = new Composite(parent, SWT.NONE);
GridLayoutFactory.swtDefaults().applyTo(mainComp);

Tree tree = new Tree(mainComp, SWT.BORDER | SWT.SINGLE);
GridDataFactory.fillDefaults().grab(true, true).applyTo(tree);

for (int i = 0; i < 5; i++) {
TreeItem item = new TreeItem(tree, SWT.NONE);
item.setText("TreeItem: " + String.valueOf(i));
}

Menu menu = new Menu(tree);

for (int i = 0; i < 3; i++) {
MenuItem item = new MenuItem(menu, SWT.NONE);
item.setText("MenuItem: " + String.valueOf(i));
}

tree.setMenu(menu);
}

On right-click the menu pops up using the 1.3 target-platform. The menu does not pop up when running against the current CVS packages. Maybe a bug?

Greetings,
-Ben


Am 21.07.2010 12:10, schrieb Markus Krüger:
> Great work, as soon as we can update I will test it :-)
>
> "Tim Buschtöns"<tbuschto@eclipsesource.com> schrieb im Newsbeitrag
> news:i26fts$tff$1@build.eclipse.org...
>> Hello everybody!
>>
>> I'm pleased to announce that the new Tree implementation has been
>> committed to CVS HEAD. This was one of the most requested improvements for
>> RAP, since the old Tree had several shortcomings that were immpossible to
>> work around. The new Tree has been (in contrast to the old one) build
>> specifically for RAP and is faster, more flexible and (for us) easier to
>> maintain and enhance.
>>
>> So please check it out and test it. Work on the new Tree is by no means
>> finished, and if you find any problems (especially new ones) that don't
>> yet have an bugzilla entry, please open one. If you are unsure if its a
>> known bug, respond to this post.
>>
>> New Features:
>> - Virtual scrolling makes (even non-virtual) big trees load much faster.
>> - Items can be higher than the default 16px.
>> - Cells can have different colors and fonts.
>> - FULL_SELECTION support.
>> - Gridlines support.
>> - Themeable indentation-symbols (treelines, expand/collapse icons).
>>
>> All already open bugzilla-entries will be reviewed and, where appropriate,
>> closed by me in the next few hours.
>>
>> Greetings,
>> Tim
>
>
Re: [ANN] New tree implementation in CVS [message #548327 is a reply to message #548297] Wed, 21 July 2010 13:54 Go to previous messageGo to next message
Tim Buschtoens is currently offline Tim BuschtoensFriend
Messages: 396
Registered: July 2009
Senior Member
Hi.

Yep there was a bug with the menu. I fixed it.
(https://bugs.eclipse.org/bugs/show_bug.cgi?id=320508)
Please try again.

Greetings,
Tim



Benjamin Wolff schrieb:
> Looks like the regular Menu does not popup anymore. To verify just crate
> a simple application with a view and use the following createPartControl
> body:
>
> public void createPartControl(Composite parent) {
> Composite mainComp = new Composite(parent, SWT.NONE);
> GridLayoutFactory.swtDefaults().applyTo(mainComp);
>
> Tree tree = new Tree(mainComp, SWT.BORDER | SWT.SINGLE);
> GridDataFactory.fillDefaults().grab(true, true).applyTo(tree);
>
> for (int i = 0; i < 5; i++) {
> TreeItem item = new TreeItem(tree, SWT.NONE);
> item.setText("TreeItem: " + String.valueOf(i));
> }
>
> Menu menu = new Menu(tree);
>
> for (int i = 0; i < 3; i++) {
> MenuItem item = new MenuItem(menu, SWT.NONE);
> item.setText("MenuItem: " + String.valueOf(i));
> }
>
> tree.setMenu(menu);
> }
>
> On right-click the menu pops up using the 1.3 target-platform. The menu
> does not pop up when running against the current CVS packages. Maybe a bug?
>
> Greetings,
> -Ben
>
>
> Am 21.07.2010 12:10, schrieb Markus Krüger:
>> Great work, as soon as we can update I will test it :-)
>>
>> "Tim Buschtöns"<tbuschto@eclipsesource.com> schrieb im Newsbeitrag
>> news:i26fts$tff$1@build.eclipse.org...
>>> Hello everybody!
>>>
>>> I'm pleased to announce that the new Tree implementation has been
>>> committed to CVS HEAD. This was one of the most requested
>>> improvements for
>>> RAP, since the old Tree had several shortcomings that were
>>> immpossible to
>>> work around. The new Tree has been (in contrast to the old one) build
>>> specifically for RAP and is faster, more flexible and (for us) easier to
>>> maintain and enhance.
>>>
>>> So please check it out and test it. Work on the new Tree is by no means
>>> finished, and if you find any problems (especially new ones) that don't
>>> yet have an bugzilla entry, please open one. If you are unsure if its a
>>> known bug, respond to this post.
>>>
>>> New Features:
>>> - Virtual scrolling makes (even non-virtual) big trees load much faster.
>>> - Items can be higher than the default 16px.
>>> - Cells can have different colors and fonts.
>>> - FULL_SELECTION support.
>>> - Gridlines support.
>>> - Themeable indentation-symbols (treelines, expand/collapse icons).
>>>
>>> All already open bugzilla-entries will be reviewed and, where
>>> appropriate,
>>> closed by me in the next few hours.
>>>
>>> Greetings,
>>> Tim
>>
>>
Re: [ANN] New tree implementation in CVS [message #548365 is a reply to message #548327] Wed, 21 July 2010 14:38 Go to previous messageGo to next message
Benjamin Wolff is currently offline Benjamin WolffFriend
Messages: 136
Registered: July 2009
Senior Member
Yes, works as expected again. Thanks for the quick bugfix!!

Greetings,
-Ben


Am 21.07.2010 15:54, schrieb Tim Buschtöns:
> Hi.
>
> Yep there was a bug with the menu. I fixed it.
> (https://bugs.eclipse.org/bugs/show_bug.cgi?id=320508)
> Please try again.
>
> Greetings,
> Tim
>
>
>
> Benjamin Wolff schrieb:
>> Looks like the regular Menu does not popup anymore. To verify just
>> crate a simple application with a view and use the following
>> createPartControl body:
>>
>> public void createPartControl(Composite parent) {
>> Composite mainComp = new Composite(parent, SWT.NONE);
>> GridLayoutFactory.swtDefaults().applyTo(mainComp);
>>
>> Tree tree = new Tree(mainComp, SWT.BORDER | SWT.SINGLE);
>> GridDataFactory.fillDefaults().grab(true, true).applyTo(tree);
>>
>> for (int i = 0; i < 5; i++) {
>> TreeItem item = new TreeItem(tree, SWT.NONE);
>> item.setText("TreeItem: " + String.valueOf(i));
>> }
>>
>> Menu menu = new Menu(tree);
>>
>> for (int i = 0; i < 3; i++) {
>> MenuItem item = new MenuItem(menu, SWT.NONE);
>> item.setText("MenuItem: " + String.valueOf(i));
>> }
>>
>> tree.setMenu(menu);
>> }
>>
>> On right-click the menu pops up using the 1.3 target-platform. The
>> menu does not pop up when running against the current CVS packages.
>> Maybe a bug?
>>
>> Greetings,
>> -Ben
>>
>>
>> Am 21.07.2010 12:10, schrieb Markus Krüger:
>>> Great work, as soon as we can update I will test it :-)
>>>
>>> "Tim Buschtöns"<tbuschto@eclipsesource.com> schrieb im Newsbeitrag
>>> news:i26fts$tff$1@build.eclipse.org...
>>>> Hello everybody!
>>>>
>>>> I'm pleased to announce that the new Tree implementation has been
>>>> committed to CVS HEAD. This was one of the most requested
>>>> improvements for
>>>> RAP, since the old Tree had several shortcomings that were
>>>> immpossible to
>>>> work around. The new Tree has been (in contrast to the old one) build
>>>> specifically for RAP and is faster, more flexible and (for us)
>>>> easier to
>>>> maintain and enhance.
>>>>
>>>> So please check it out and test it. Work on the new Tree is by no means
>>>> finished, and if you find any problems (especially new ones) that don't
>>>> yet have an bugzilla entry, please open one. If you are unsure if its a
>>>> known bug, respond to this post.
>>>>
>>>> New Features:
>>>> - Virtual scrolling makes (even non-virtual) big trees load much
>>>> faster.
>>>> - Items can be higher than the default 16px.
>>>> - Cells can have different colors and fonts.
>>>> - FULL_SELECTION support.
>>>> - Gridlines support.
>>>> - Themeable indentation-symbols (treelines, expand/collapse icons).
>>>>
>>>> All already open bugzilla-entries will be reviewed and, where
>>>> appropriate,
>>>> closed by me in the next few hours.
>>>>
>>>> Greetings,
>>>> Tim
>>>
>>>
Re: [ANN] New tree implementation in CVS [message #548555 is a reply to message #548270] Thu, 22 July 2010 10:49 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: Michal.Nikodim.elanor.cz

I maybe found some bugs:

1. Empty column header text => column header have minimal height
2. CellEditor don't work as in table (In my case I use CheckboxCellEditor
and Tree dont remember check)
3. Tree slow down if there GridLayout as parent layout (about 1000 nodes
in root and 100 nodes on first 10 nodes as children). In RowLayout is new
Tree faster then old implementation.
Re: [ANN] New tree implementation in CVS [message #548937 is a reply to message #548555] Fri, 23 July 2010 13:42 Go to previous messageGo to next message
Tim Buschtoens is currently offline Tim BuschtoensFriend
Messages: 396
Registered: July 2009
Senior Member
Hi!

> 1. Empty column header text => column header have minimal height
Fixed. (https://bugs.eclipse.org/bugs/show_bug.cgi?id=320717)

> 2. CellEditor don't work as in table (In my case I use CheckboxCellEditor
> and Tree dont remember check)
Can you provide a snippet for us to test this?

> 3. Tree slow down if there GridLayout as parent layout (about 1000 nodes
> in root and 100 nodes on first 10 nodes as children). In RowLayout is new
> Tree faster then old implementation.

I don't think the GridLayout has anything to do with the performance of
the Tree itself. Even though we are still working on some
performance-tweaks, when you add 2000 items to a Tree it can be expected
to be a bit slower at times.

Greetings,
Tim
Re: [ANN] New tree implementation in CVS [message #549053 is a reply to message #548937] Fri, 23 July 2010 21:11 Go to previous messageGo to next message
Ralf Sternberg is currently offline Ralf SternbergFriend
Messages: 1313
Registered: July 2009
Senior Member

I'd like to add that for thousands of tree items, you should consider
using a SWT.VIRTUAL tree. Non-virtual trees cannot perform well with
that many items.

Regards, Ralf

Tim Buschtöns wrote:
> Hi!
>
>> 1. Empty column header text => column header have minimal height
> Fixed. (https://bugs.eclipse.org/bugs/show_bug.cgi?id=320717)
>
>> 2. CellEditor don't work as in table (In my case I use
>> CheckboxCellEditor and Tree dont remember check)
> Can you provide a snippet for us to test this?
>
>> 3. Tree slow down if there GridLayout as parent layout (about 1000
>> nodes in root and 100 nodes on first 10 nodes as children). In
>> RowLayout is new Tree faster then old implementation.
>
> I don't think the GridLayout has anything to do with the performance of
> the Tree itself. Even though we are still working on some
> performance-tweaks, when you add 2000 items to a Tree it can be expected
> to be a bit slower at times.
>
> Greetings,
> Tim
Re: [ANN] New tree implementation in CVS [message #549227 is a reply to message #548937] Mon, 26 July 2010 08:04 Go to previous message
Eclipse UserFriend
Originally posted by: Michal.Nikodim.elanor.cz

>> 2. CellEditor don't work as in table (In my case I use
CheckboxCellEditor
>> and Tree dont remember check)
>Can you provide a snippet for us to test this?


I have no time for snippet right now, but I test this bug closer and it's
look like that celleditor recieve "mouse down" and "mouse up" event as
mouse click. Both events generate click. If I click to cell editor (mouse
down) and hold them and move out from cell and then release mouse button
(mouse up) everything working right.
Previous Topic:Problem using GMap
Next Topic:Predefined RAP GET Parameters
Goto Forum:
  


Current Time: Sat Apr 27 01:10:05 GMT 2024

Powered by FUDForum. Page generated in 8.97731 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top