Bug 232406 - [Tree] setLinesVisible has no effect
Summary: [Tree] setLinesVisible has no effect
Status: RESOLVED FIXED
Alias: None
Product: RAP
Classification: RT
Component: RWT (show other bugs)
Version: 1.0   Edit
Hardware: All All
: P3 normal with 5 votes (vote)
Target Milestone: 1.4 M1   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 309519
Blocks: 262603
  Show dependency tree
 
Reported: 2008-05-15 16:47 EDT by Ralf Sternberg CLA
Modified: 2010-07-23 09:41 EDT (History)
8 users (show)

See Also:


Attachments
Employment of setLinesVisible() for Tree (3.08 KB, patch)
2009-03-24 16:38 EDT, Austin Riddle CLA
no flags Details | Diff
Initial attempt at column gridlines implementation. (6.12 KB, patch)
2009-03-24 18:15 EDT, Austin Riddle CLA
no flags Details | Diff
Attempt at row gridlines implementation (8.98 KB, patch)
2009-03-27 12:14 EDT, Austin Riddle CLA
no flags Details | Diff
Another row gridlines implementation (10.03 KB, patch)
2009-03-31 17:22 EDT, Austin Riddle CLA
no flags Details | Diff
Combined patch that addresses the row gridlines problem (17.23 KB, patch)
2009-04-09 14:11 EDT, Austin Riddle CLA
no flags Details | Diff
Sample project for testing various tree types (430.76 KB, application/octet-stream)
2009-04-09 14:13 EDT, Austin Riddle CLA
no flags Details
Implementation of setLinesVisible() and column and row gridlines (14.52 KB, patch)
2009-04-22 17:47 EDT, Austin Riddle CLA
no flags Details | Diff
Patch updated for CVS HEAD (37.84 KB, patch)
2010-04-19 10:17 EDT, Austin Riddle CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ralf Sternberg CLA 2008-05-15 16:47:14 EDT
API for setting linesVisible exists but has no effect: Tree lines are always displayed.
Comment 1 Matthias Basler CLA 2009-02-17 17:28:28 EST
I experience the opposite, which is, that the tree lines are always OFF, no matter what setLinesVisible says. (with RAP 1.2.M5)

In detail:
The RWT tree widget (in contrast to its SWT counterpart and the RWT table widget) does not show the typical thin grey or dotted lines above/below every line and left/right of every column. This can be seen in the RWT widgets demo, where the lines are absent. The Eclipse IDE properties view shows how this looks in SWT.

I also looked at the SWT widgets demo and it shows the "lines Visible" attribute toggeling the cell borders on/off in SWT.

This is just a cosmetical request, but for single sourcing it is favourable to have the RWT widgets to match the appearance of their SWT counterparts if possible and reasonable.
Comment 2 Austin Riddle CLA 2009-03-23 13:45:58 EDT
This is an important bug for us because many of our tree columns have values that are longer than the column width.  This makes the tree extremely difficult to read, since all of the text appears mashed together.  This is causing us some heartburn.
Comment 3 Austin Riddle CLA 2009-03-24 16:38:01 EDT
Created attachment 129758 [details]
Employment of setLinesVisible() for Tree
Comment 4 Austin Riddle CLA 2009-03-24 16:38:35 EDT
To be more clear about this bug, there are two different set of lines we are talking about.  In my team's experience with 1.2M6, the lines that connect parent and child nodes are visible by default, and the use of setLinesVisible() has no effect. Please see previously attached patch for a fix to this bug.
Comment 5 Austin Riddle CLA 2009-03-24 16:46:20 EDT
The issue that we are really having difficulty with is the fact that there are no grid lines for trees with columns. I believe that the call to setLinesVisible() is supposed to also govern the grid lines between columns.  However looking at the Qooxdoo fragment, it may not be possible without the use of TreeVirtual.
Comment 6 Austin Riddle CLA 2009-03-24 18:15:05 EDT
Created attachment 129767 [details]
Initial attempt at column gridlines implementation.

This is a separate patch from the previous so that people can use the other without any side-effects from this one.  This patch does however, include the previous one.

It works for me for scrolling and resizing of columns.  It uses the table-gridline appearance setting. The only side-effect I know of is that it shows the lines on top of the scrollbar.  Anyone want to help keep evolving this until it is ready for CVS head? ;-)
Comment 7 Austin Riddle CLA 2009-03-27 12:14:59 EDT
Created attachment 130115 [details]
Attempt at row gridlines implementation

This patch is an attempt at the row gridlines.  It includes the previous patches.  There are several issues I have considered, but I have not been able to implement all of them.  

In Eclipse 3.4, when looking at the "Problems" view, it is clear that when the user scrolls the vertical scrollbar, that the row gridlines never change. This is probably the most efficient approach, since row gridlines would not have to move when scrolling.  The row gridlines only change when the tree is resized.
   a. The scroll "step" is set to the height of the tree item row so that when the user scrolls, the items always show up in the grid cells.
   b. The row gridlines should go to the bottom of the tree, whether the items fill the parent or not.
   
I have set up the row lines update code to operate as above.  What is missing, and what I think might not be possible (after pouring over the qooxdoo api) is to adjust the scroll "step" so that it behaves just like the SWT Tree.  The difficulty with the Tree is that the scrolling is managed elsewhere.  The Table widget actually manages virtual rows and its own scrolling.

Another alternative is to have the row gridlines move with the items, but I attempted that route and the scrolling becomes quite slow to update (row lines repositioned on every scroll).  The items move before the lines and column header and it takes about a second for it all to sync up.

So that is where I am.  Any thoughts or help would be appreciated. All I can say is that I wish I had gone to EclipseCon instead.  ;-)



BUGS:
1. The vertical lines do not go to the bottom of the parent when a scrollbar is absent.
2. The horizontal lines go over the vertical scrollbar.
3. As per my previous note, scrolling vertically does not move the items at the scroll "step".
Comment 8 Austin Riddle CLA 2009-03-27 14:30:50 EDT
Another bug with the previous patch is that the row lines somehow prohibit selection of the row unless the user clicks on the actual text in the cell.
Comment 9 Austin Riddle CLA 2009-03-31 17:22:08 EDT
Created attachment 130470 [details]
Another row gridlines implementation

After fighting with the scroll step issue for a while, I decided that there were two options:

1. Go back to the approach where the row lines move when the user scrolls.
2. Implement the scrolling how it is found in Table.js.

I decided to go with option 1 because I am closer to it than the other.

So this patch actually scrolls the row gridlines.

The only bugs I know of are:

1. Both the row and column gridlines will only reach the point where a scrollbar would be.  So if you have a scrollbar it looks nice.  If you don't have a scrollbar, then they will not connect to the end of the tree. I did not set the overflow from 'auto' to 'scroll', because one of the frustrating things about the table widget is that the scrollbars are always visible. The reason for difficulty here is that since the scrollbars are regulated via the browser (overflow: auto), there is not an easy way to determine when a scrollbar is actually visible.  In the table case, it is easy since the scrollbars are managed there.

2. Occasionally when a node is opened, the row lines do not match up. I am sure this is just a simple missed call to _updateRowGridLines().  

So I hope that some may find this patch helpful. In any case, the 'right' way is probably option 2 from above, but I am unable to devote more time to it.

:-)
Comment 10 Austin Riddle CLA 2009-04-09 14:11:43 EDT
Created attachment 131432 [details]
Combined patch that addresses the row gridlines problem

This patch also includes my solutions for bugs:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=206780
https://bugs.eclipse.org/bugs/show_bug.cgi?id=232406
https://bugs.eclipse.org/bugs/show_bug.cgi?id=271277

After studying the behavior of more trees in Eclipse (Windows XP) I believe this is the correct policy for Tree.setLinesVisible();

If a tree has columns, they will always and automatically have row and column gridlines.
Tree.setLinesVisible() does not affect these, but rather only the parent/child lines.

So that is how I implemented it.

Because of problems with the previous approach, this solution implements row gridlines from the perspective of qooxdoo appearances. Now, the tree items get a border. The column gridlines are still implemented the same.

Side-Effects: 

There are no row gridlines where there are no tree items. I attempted to fill in the gap (See Tree.js) , but I could only seem to hook into when an item is expanded or collapsed in the tree. But those event handlers are called before the tree items are made visible, so the calculations would always be one step behind.  I left the code commented out for viewing/experimenting.

The vertical gridlines will still move over the scrollbar when scrolled.

At this point, my team members and I are happy with this patch as a solution to these few nagging bugs.
Comment 11 Austin Riddle CLA 2009-04-09 14:13:04 EDT
Created attachment 131433 [details]
Sample project for testing various tree types
Comment 12 Austin Riddle CLA 2009-04-22 17:47:26 EDT
Created attachment 132851 [details]
Implementation of setLinesVisible() and column and row gridlines

Here is a patch just for this bug.  The behavior is a bit different than before.

After experimenting with the behavior of even more trees in Eclipse 3.4 (Windows XP) I believe this is the correct policy for Tree.setLinesVisible() (Different from previous post):

1. If a tree has only "1 column", there will always and automatically have parent/child lines.
2. If a tree has more than "1 column", there will never be parent/child lines.

3. Tree.setLinesVisible() does not affect parent/child lines, but rather only the grid lines.

There is some question in SWT as to what 1 column means, since a tree can have a single column using the TreeColumn infrastructure, or the default tree behavior which is not really column-based.  I am not sure if there is different behavior in this case.

So, that question aside, numbers 1,2, and 3 is how I implemented it.

Because of problems with the previous approaches, this solution implements row and column gridlines from the perspective of qooxdoo appearances. Now, the tree items get a border. No gridlines overlap the scrollbars as they did in previous attempts.

Known Side-Effects: 

There are no row or column gridlines where there are no tree items.

At this point, the gridlines work very well and do not have refresh or overlap problems as previous attempts did.

Hope this can make its way into HEAD.
Comment 13 Martijn Cremer CLA 2010-04-19 04:37:01 EDT
Hi Austin,

Tried your patch on the latest Milestone of RAP. I gotten a few patch errors. So I gotten the latest from the CSV. This still gave Patching problems so I applied them as good as I could with the help of the Patch information and the fuzzy compair.

Then I ran a project with a Virtual Jtree with TreeColumns in it. It worked semi well. I have horizontal lines that are perfect how ever the vertical grid lines are not showing. Also if we compare the grid lines with the one in the RCP environment there a soft Gray not a dominant Black. Al touch I am already happy with  the horizontal lines showing up instead of completely missing.

Hope this helps.
Comment 14 Austin Riddle CLA 2010-04-19 09:30:06 EDT
(In reply to comment #13)
> Hi Austin,
> 
> Tried your patch on the latest Milestone of RAP. I gotten a few patch errors.
> So I gotten the latest from the CSV. This still gave Patching problems so I
> applied them as good as I could with the help of the Patch information and the
> fuzzy compair.
> 
> Then I ran a project with a Virtual Jtree with TreeColumns in it. It worked
> semi well. I have horizontal lines that are perfect how ever the vertical grid
> lines are not showing. Also if we compare the grid lines with the one in the
> RCP environment there a soft Gray not a dominant Black. Al touch I am already
> happy with  the horizontal lines showing up instead of completely missing.
> 
> Hope this helps.

Hi Martijn,

The color of the gridlines is governed by a css tag in the theme.
Add the following to your theme and you can control the color:


Tree-GridLine {
   color: rgb( 178, 178, 178 );
}

It looks like the Tree widget is going to be rewritten soon so this patch/bug will be obselete.  However, in the interest of providing functionality up to 1.3, I will update the patch and repost shortly.
Comment 15 Martijn Cremer CLA 2010-04-19 09:35:07 EDT
Thanks Austin,

I saw the dependency on 309519. And It is already said a few times on the RAP forums. However I don't think the new Tree will make it before 1.3 comes out. So this is a great way to get at least the visual feel that the RCP and RAP environment are similar.
Comment 16 Austin Riddle CLA 2010-04-19 10:17:38 EDT
Created attachment 165281 [details]
Patch updated for CVS HEAD

(In reply to comment #14)

Here is a patch that should work for 1.3 HEAD as of today.  Unfortunately, I am unable at the moment to extract just the setLinesVisible() functionality.  This patch includes some changes for my FULL_SELECTION and Tree cell padding  implementation.  My apologies.  But nonetheless, it should provide the setLinesVisible() functionality.  The rest should be benign.
Comment 17 Austin Riddle CLA 2010-04-19 10:21:40 EDT
(In reply to comment #13)

Hi Martijn,

In the last patch I included a change to Tree.default.css, making the default color of the lines light gray.  Also, the vertical lines are shown via AppearancesBase.js. You can find the section mentioning verticalGridlines there.

Hope this helps!

Let me know if this works for you.
Comment 18 Martijn Cremer CLA 2010-04-19 10:53:04 EDT
(In reply to comment #17)
Hi Austin,

For some strange reason I am getting the notification:

Could not evaluate javascript response:

TypeError: Object [object org.eclipse.swt.widgets.Tree] has no method 'setLinesVisible'

var wm = org.eclipse.swt.WidgetManager.getInstance();var w = wm.findWidgetById( "w3" );w.doClose();wm.dispose( "w3" );wm.dispose( "w4" );wm.dispose( "w16" );wm.dispose( "w17" );wm.dispose( "w5" );wm.dispose( "w15" );wm.dispose( "w7" );wm.dispose( "w6" );wm.dispose( "w8" );wm.dispose( "w14" );wm.dispose( "w13" );wm.dispose( "w10" );wm.dispose( "w9" );wm.dispose( "w19" );wm.dispose( "w12" );wm.dispose( "w18" );wm.dispose( "w11" );var req = org.eclipse.swt.Request.getInstance();req.setRequestCounter( "2" );var w = new org.eclipse.swt.widgets.Shell();wm.add( w, "w50", true );w.addToDocument();w.setShowMinimize( false );w.setAllowMinimize( false );w.setShowMaximize( false );w.setAllowMaximize( false );w.setShowClose( false );w.setAllowClose( false );w.setResizable( false, false, false, false );w.setParentShell( wm.findWidgetById( "w20" ) );w.initialize();w.setOpacity( 0.784 );w.setMinWidth( 80 );w.setMinHeight( 2 );w.setSpace( 37, 526, 248, 23 );w.setTabIndex( -1 );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.mouseUp );w.addEventListener( "mousedown", org.eclipse.swt.EventUtil.mouseDown );w.addState( "variant_toolbarLayer" );var w = new org.eclipse.swt.widgets.Shell();wm.add( w, "w20", true );w.addToDocument();w.setShowMinimize( false );w.setAllowMinimize( false );w.setShowMaximize( false );w.setAllowMaximize( false );w.setShowClose( false );w.setAllowClose( false );w.setResizable( false, false, false, false );w.initialize();w.setCaption( "Gravety RAP" );w.open();w.setActive( true );w.setMode( "maximized" );w.setHasShellListener( true );w.setMinWidth( 80 );w.setMinHeight( 2 );w.setTabIndex( -1 );w.setVisibility( true );w.addEventListener( "keydown", org.eclipse.swt.EventUtil.helpRequested );w.addState( "variant_shellGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w23", true );wm.setParent( w, "w20" );w.setSpace( 0, 1918, 0, 170 );w.setZIndex( 300 );w.setTabIndex( -1 );var w = new qx.ui.basic.Atom();wm.add( w, "w24", true );wm.setParent( w, "w23" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 0, 10, 0, 170 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/header_left.png" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w30", true );wm.setParent( w, "w23" );w.setSpace( 10, 1337, 0, 170 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [10,170 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/header_left_bg.png" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w29", true );wm.setParent( w, "w30" );w.setSpace( 25, 1312, 54, 94 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addState( "variant_compTrans" );var w = new org.eclipse.rwt.widgets.ToolBar();wm.add( w, "w28", true );wm.setParent( w, "w29" );w.setSpace( 0, 10, 0, 22 );w.setZIndex( 300 );w.setTabIndex( 4 );w.setBackgroundColor( null );w.addState( "variant_header-toolbar" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w27", true );wm.setParent( w, "w23" );w.setSpace( 1347, 10, 0, 170 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );var w = new qx.ui.basic.Atom();wm.add( w, "w25", true );wm.setParent( w, "w23" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 1907, 10, 0, 170 );w.setZIndex( 297 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/header_right.png" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w26", true );wm.setParent( w, "w23" );w.setSpace( 1347, 560, 0, 170 );w.setZIndex( 296 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [10,170 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/header_right_bg.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w34", true );wm.setParent( w, "w26" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 5, 480, 32, 65 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/logo.png" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w21", true );wm.setParent( w, "w20" );w.setSpace( 35, 1848, 170, 28 );w.setZIndex( 299 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new org.eclipse.rwt.widgets.ToolBar();wm.add( w, "w22", true );wm.setParent( w, "w21" );w.setSpace( 0, 24, 3, 22 );w.setZIndex( 300 );w.setTabIndex( 8 );w.addState( "variant_menuBar" );var w = new qx.ui.basic.Atom();wm.add( w, "w33", true );wm.setParent( w, "w20" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 35, 1848, 198, 1 );w.setZIndex( 298 );w.setTabIndex( -1 );w.addState( "variant_menuBorder" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w31", true );wm.setParent( w, "w20" );w.setSpace( 35, 1848, 225, 783 );w.setZIndex( 297 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w32", true );wm.setParent( w, "w31" );w.setSpace( -7, 1862, -7, 784 );w.setZIndex( 300 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w35", true );wm.setParent( w, "w32" );w.setSpace( 0, 1862, 0, 784 );w.setZIndex( 300 );w.setTabIndex( -1 );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w55", true );wm.setParent( w, "w35" );w.setSpace( 0, 1862, 0, 784 );w.setZIndex( 300 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w56", true );wm.setParent( w, "w55" );w.setSpace( 8, 1846, 423, 353 );w.setZIndex( 300 );w.setTabIndex( -1 );var t = wm.findWidgetById( "w20" );t.addActivateListenerWidget( w );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w95", true );wm.setParent( w, "w56" );w.setSpace( 0, 1846, 0, 353 );w.setZIndex( 300 );w.setTabIndex( -1 );var w = new org.eclipse.swt.custom.ScrolledComposite();wm.add( w, "w127", true );wm.setParent( w, "w95" );w.addState( "rwt_BORDER" );w.setSpace( 0, 1846, 0, 353 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setClipWidth( 1846 );w.setClipHeight( 353 );w.setOverflow( "hidden" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w105", true );wm.setParent( w, "w127" );w.setWidth( 0 );w.setHeight( 0 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setVisibility( false );var w = new org.eclipse.rwt.widgets.ToolBar();wm.add( w, "w128", true );wm.setParent( w, "w55" );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setVisibility( false );var t = wm.findWidgetById( "w20" );t.addActivateListenerWidget( w );w.addState( "variant_viewToolbar" );var w = new org.eclipse.rwt.widgets.ToolBar();wm.add( w, "w47", true );wm.setParent( w, "w55" );w.setSpace( 1669, 185, 27, 26 );w.setZIndex( 298 );w.setTabIndex( 27 );var t = wm.findWidgetById( "w20" );t.addActivateListenerWidget( w );w.addState( "variant_viewToolbar" );var w = new org.eclipse.rwt.widgets.ToolItem( "push", false );wm.add( w, "w129", false );var t = wm.findWidgetById( "w47" );t.addAt( w, 0 );w.setText( "create call" );w.setSpace( 4, 88, 3, 22 );w.setHasSelectionListener( true );wm.setToolTip( w, "create call" );w.addState( "variant_viewToolbar" );var w = new org.eclipse.rwt.widgets.ToolItem( "push", false );wm.add( w, "w130", false );var t = wm.findWidgetById( "w47" );t.addAt( w, 1 );w.setText( "Fetch Data" );w.setSpace( 96, 81, 3, 22 );w.setHasSelectionListener( true );wm.setToolTip( w, "Fetch Data" );w.addState( "variant_viewToolbar" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w39", true );wm.setParent( w, "w55" );w.setSpace( 8, 1846, 53, 330 );w.setZIndex( 297 );w.setTabIndex( -1 );var t = wm.findWidgetById( "w20" );t.addActivateListenerWidget( w );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w38", true );wm.setParent( w, "w39" );w.setSpace( 0, 1846, 0, 330 );w.setZIndex( 300 );w.setTabIndex( -1 );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w75", true );wm.setParent( w, "w38" );w.setSpace( 0, 1846, 0, 330 );w.setZIndex( 300 );w.setTabIndex( -1 );var w = new org.eclipse.swt.widgets.Tree( "virtual|full_selection|" );wm.add( w, "w37", true );wm.setParent( w, "w75" );w.setSpace( 0, 1846, 0, 330 );w.setZIndex( 300 );w.setTabIndex( 31 );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.mouseUp );w.addEventListener( "mousedown", org.eclipse.swt.EventUtil.mouseDown );w.setSelectionListeners( true );w.setHeaderHeight( 16 );w.setHeaderVisible( true );w.setLinesVisible( true );w.setColumnOrder( [0,1 ] );w.setTreeOverflow( "hidden" );var w = new org.eclipse.swt.widgets.TreeColumn( wm.findWidgetById( "w37" ) );wm.add( w, "w131", false );w.setLabel( " " );w.setWidth( 923 );w.setZIndex( 301 );var w = new org.eclipse.swt.widgets.TreeColumn( wm.findWidgetById( "w37" ) );wm.add( w, "w132", false );w.setLabel( " " );w.setLeft( 923 );w.setWidth( 923 );w.setZIndex( 301 );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w54", true );wm.setParent( w, "w55" );w.setSpace( 0, 1862, 0, 391 );w.setZIndex( 296 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w53", true );wm.setParent( w, "w54" );w.setSpace( 0, 1862, 0, 391 );w.setZIndex( 300 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new qx.ui.basic.Atom();wm.add( w, "w62", true );wm.setParent( w, "w53" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 3, 1, 7, 1 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/trans.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w63", true );wm.setParent( w, "w53" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 1858, 1, 7, 1 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/trans.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w64", true );wm.setParent( w, "w53" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 0, 8, 7, 377 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [8,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_left.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w65", true );wm.setParent( w, "w53" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 1854, 8, 7, 377 );w.setZIndex( 297 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [8,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_right.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w71", true );wm.setParent( w, "w53" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 8, 1846, 0, 8 );w.setZIndex( 296 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [21,8 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_top.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w72", true );wm.setParent( w, "w53" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 8, 1846, 383, 8 );w.setZIndex( 295 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [21,8 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_bottom.png" );w.addState( "variant_stackBorder" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w52", true );wm.setParent( w, "w53" );w.setSpace( 8, 1846, 8, 375 );w.setZIndex( 294 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w51", true );wm.setParent( w, "w52" );w.setSpace( 0, 1846, 21, 24 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [2,24 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/viewtoolbar_bg.png" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w70", true );wm.setParent( w, "w52" );w.setSpace( 0, 1846, 0, 21 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [4,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_tab_bg_active.png" );var w = new org.eclipse.rwt.widgets.Button( "push" );wm.add( w, "w96", true );wm.setParent( w, "w70" );w.addState( "rwt_PUSH" );w.setSpace( 1810, 14, 5, 11 );w.setZIndex( 300 );w.setTabIndex( 18 );w.setVisibility( false );w.setBackgroundColor( null );w.setText( null );w.setHasSelectionListener( true );w.addState( "variant_tabOverflowActive" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w40", true );wm.setParent( w, "w70" );w.setSpace( 0, 1818, 0, 21 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addState( "variant_compTrans" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w44", true );wm.setParent( w, "w40" );w.setSpace( 0, 146, 0, 23 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( "#00589f" );w.addState( "variant_tabActive" );var w = new org.eclipse.rwt.widgets.Button( "push" );wm.add( w, "w42", true );wm.setParent( w, "w44" );w.addState( "rwt_PUSH" );w.setSpace( 0, 126, -2, 23 );w.setZIndex( 300 );w.setTabIndex( 21 );w.setBackgroundColor( null );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.mouseUp );w.addEventListener( "mousedown", org.eclipse.swt.EventUtil.mouseDown );w.setText( "UniversalTreeTableView" );w.setHasSelectionListener( true );w.addState( "variant_partInActiveActive" );var w = new org.eclipse.rwt.widgets.Button( "push" );wm.add( w, "w43", true );wm.setParent( w, "w44" );w.addState( "rwt_PUSH" );w.setSpace( 132, 7, 6, 8 );w.setZIndex( 299 );w.setTabIndex( 22 );w.setBackgroundColor( null );w.setText( null );w.setHasSelectionListener( true );w.addState( "variant_viewClose" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w41", true );wm.setParent( w, "w44" );w.setSpace( 134, 10, 0, 21 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addState( "variant_compTrans" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w69", true );wm.setParent( w, "w70" );w.setSpace( 1818, 28, 0, 21 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [3,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_tab_active_confarea_bg.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w67", true );wm.setParent( w, "w69" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 0, 9, 0, 21 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/stack_tab_inactive_right_active.png" );var w = new org.eclipse.rwt.widgets.Button( "push" );wm.add( w, "w68", true );wm.setParent( w, "w69" );w.addState( "rwt_PUSH" );w.setSpace( 10, 18, 1, 18 );w.setZIndex( 299 );w.setTabIndex( 25 );wm.setToolTip( w, "UniversalTreeTableView has no actions or viewmenu to configure" );w.setEnabled( false );w.setBackgroundColor( null );w.setText( null );w.setImage( "rwt-resources/25.fwk32603767/img/business/stack_tab_conf_active.png", 14, 14 );w.setHasSelectionListener( true );w.addState( "variant_clearButton" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w66", true );wm.setParent( w, "w52" );w.setSpace( 0, 1846, 21, 354 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w36", true );wm.setParent( w, "w55" );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 295 );w.setTabIndex( -1 );w.setVisibility( false );w.setEnabled( false );w.addState( "variant_compGray" );org.eclipse.rwt.DNDSupport.getInstance().registerDropTarget( w, [ "copy",null, "link" ] );var w = new qx.ui.pageview.tabview.TabView();wm.add( w, "w134", true );wm.setParent( w, "w36" );w.setHideFocus( true );w.addEventListener( "keypress", org.eclipse.swt.TabUtil.onTabFolderKeyPress );w.addEventListener( "changeFocused", org.eclipse.swt.TabUtil.onTabFolderChangeFocused );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setVisibility( false );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.mouseUp );w.addEventListener( "mousedown", org.eclipse.swt.EventUtil.mouseDown );w.addEventListener( "keydown", org.eclipse.swt.EventUtil.menuDetectedByKey );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.menuDetectedByMouse );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w106", true );wm.setParent( w, "w36" );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setVisibility( false );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w107", true );wm.setParent( w, "w106" );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setVisibility( false );w.addState( "variant_compGray" );var w = new qx.ui.basic.Atom();wm.add( w, "w108", true );wm.setParent( w, "w107" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 3, 1, 7, 1 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/trans.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w109", true );wm.setParent( w, "w107" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( -4, 1, 7, 1 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/trans.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w110", true );wm.setParent( w, "w107" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 0, 8, 7, 0 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [8,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_left.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w111", true );wm.setParent( w, "w107" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( -8, 8, 7, 0 );w.setZIndex( 297 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [8,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_right.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w115", true );wm.setParent( w, "w107" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 8, 0, 0, 8 );w.setZIndex( 296 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [21,8 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_top.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w116", true );wm.setParent( w, "w107" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 8, 0, -8, 8 );w.setZIndex( 295 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [21,8 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_bottom.png" );w.addState( "variant_stackBorder" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w112", true );wm.setParent( w, "w107" );w.setSpace( 8, 0, 8, 0 );w.setZIndex( 294 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w114", true );wm.setParent( w, "w112" );w.setSpace( 0, 0, 0, 21 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [4,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_tab_inactive_bg_active.png" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w113", true );wm.setParent( w, "w112" );w.setSpace( 0, 0, 21, 0 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );var w = new qx.ui.pageview.tabview.TabView();wm.add( w, "w135", true );wm.setParent( w, "w55" );w.setHideFocus( true );w.addEventListener( "keypress", org.eclipse.swt.TabUtil.onTabFolderKeyPress );w.addEventListener( "changeFocused", org.eclipse.swt.TabUtil.onTabFolderChangeFocused );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 294 );w.setTabIndex( -1 );w.setVisibility( false );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.mouseUp );w.addEventListener( "mousedown", org.eclipse.swt.EventUtil.mouseDown );w.addEventListener( "keydown", org.eclipse.swt.EventUtil.menuDetectedByKey );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.menuDetectedByMouse );var w = new org.eclipse.rwt.widgets.ToolBar();wm.add( w, "w136", true );wm.setParent( w, "w55" );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 293 );w.setTabIndex( -1 );w.setVisibility( false );var w = new qx.ui.pageview.tabview.TabView();wm.add( w, "w137", true );wm.setParent( w, "w55" );w.setHideFocus( true );w.addEventListener( "keypress", org.eclipse.swt.TabUtil.onTabFolderKeyPress );w.addEventListener( "changeFocused", org.eclipse.swt.TabUtil.onTabFolderChangeFocused );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 292 );w.setTabIndex( -1 );w.setVisibility( false );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.mouseUp );w.addEventListener( "mousedown", org.eclipse.swt.EventUtil.mouseDown );w.addEventListener( "keydown", org.eclipse.swt.EventUtil.menuDetectedByKey );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.menuDetectedByMouse );var w = new org.eclipse.rwt.widgets.ToolBar();wm.add( w, "w138", true );wm.setParent( w, "w55" );w.setSpace( 0, 0, 0, 0 );w.setZIndex( 291 );w.setTabIndex( -1 );w.setVisibility( false );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w82", true );wm.setParent( w, "w55" );w.setSpace( 0, 1862, 394, 390 );w.setZIndex( 290 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w83", true );wm.setParent( w, "w82" );w.setSpace( 0, 1862, 0, 390 );w.setZIndex( 300 );w.setTabIndex( -1 );w.addState( "variant_compGray" );var w = new qx.ui.basic.Atom();wm.add( w, "w84", true );wm.setParent( w, "w83" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 3, 1, 7, 1 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/trans.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w85", true );wm.setParent( w, "w83" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 1858, 1, 7, 1 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/trans.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w86", true );wm.setParent( w, "w83" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 0, 8, 7, 376 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [8,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_left.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w87", true );wm.setParent( w, "w83" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 1854, 8, 7, 376 );w.setZIndex( 297 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [8,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_right.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w93", true );wm.setParent( w, "w83" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 8, 1846, 0, 8 );w.setZIndex( 296 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [21,8 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_top.png" );w.addState( "variant_stackBorder" );var w = new qx.ui.basic.Atom();wm.add( w, "w94", true );wm.setParent( w, "w83" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 8, 1846, 382, 8 );w.setZIndex( 295 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [21,8 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_border_bottom.png" );w.addState( "variant_stackBorder" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w88", true );wm.setParent( w, "w83" );w.setSpace( 8, 1846, 8, 374 );w.setZIndex( 294 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addState( "variant_compGray" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w61", true );wm.setParent( w, "w88" );w.setSpace( 0, 1846, 21, 24 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [2,24 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/viewtoolbar_bg.png" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w92", true );wm.setParent( w, "w88" );w.setSpace( 0, 1846, 0, 21 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [4,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_tab_inactive_bg_active.png" );var w = new org.eclipse.rwt.widgets.Button( "push" );wm.add( w, "w117", true );wm.setParent( w, "w92" );w.addState( "rwt_PUSH" );w.setSpace( 1810, 14, 5, 11 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setVisibility( false );w.setBackgroundColor( null );w.setText( null );w.setHasSelectionListener( true );w.addState( "variant_tabOverflowInactive" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w57", true );wm.setParent( w, "w92" );w.setSpace( 0, 1818, 0, 21 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addState( "variant_compTrans" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w60", true );wm.setParent( w, "w57" );w.setSpace( 0, 130, 0, 23 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( "#949494" );w.addState( "variant_tabInactive" );var w = new org.eclipse.rwt.widgets.Button( "push" );wm.add( w, "w59", true );wm.setParent( w, "w60" );w.addState( "rwt_PUSH" );w.setSpace( 0, 110, -2, 23 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addEventListener( "mouseup", org.eclipse.swt.EventUtil.mouseUp );w.addEventListener( "mousedown", org.eclipse.swt.EventUtil.mouseDown );w.setText( "UniversalDetailView" );w.setHasSelectionListener( true );w.addState( "variant_partActive" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w58", true );wm.setParent( w, "w60" );w.setSpace( 118, 10, 0, 21 );w.setZIndex( 299 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.addState( "variant_compTrans" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w91", true );wm.setParent( w, "w92" );w.setSpace( 1818, 28, 0, 21 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );w.setUserData( "backgroundImageSize", [2,21 ] );w.setBackgroundImage( "rwt-resources/25.fwk32603767/img/business/stack_tab_inactive_confarea_bg.png" );var w = new qx.ui.basic.Atom();wm.add( w, "w90", true );wm.setParent( w, "w91" );org.eclipse.swt.LabelUtil.initialize( w );org.eclipse.swt.LabelUtil.setWrap( w, false );w.setSpace( 0, 9, 0, 21 );w.setZIndex( 300 );w.setTabIndex( -1 );w.setBackgroundColor( null );org.eclipse.swt.LabelUtil.setImage( w, "rwt-resources/25.fwk32603767/img/business/stack_inactive_corner.png" );var w = new org.eclipse.rwt.widgets.Button( "push" );wm.add( w, "w118", true );wm.setParent( w, "w91" );w.addState( "rwt_PUSH" );w.setSpace( 10, 18, 1, 18 );w.setZIndex( 299 );w.setTabIndex( -1 );wm.setToolTip( w, "UniversalDetailView has no actions or viewmenu to configure" );w.setEnabled( false );w.setBackgroundColor( null );w.setText( null );w.setImage( "rwt-resources/25.fwk32603767/img/business/stack_tab_conf_inactive.png", 14, 14 );w.setHasSelectionListener( true );w.addState( "variant_clearButton" );var w = new org.eclipse.swt.widgets.Composite();wm.add( w, "w89", true );wm.setParent( w, "w88" );w.setSpace( 0, 1846, 21, 353 );w.setZIndex( 298 );w.setTabIndex( -1 );w.setBackgroundColor( null );var w = new org.eclipse.swt.widgets.Sash();wm.add( w, "w139", true );wm.setParent( w, "w55" );w.setOrientation( qx.constant.Layout.ORIENTATION_HORIZONTAL );w.setSpace( 0, 1862, 391, 3 );w.setZIndex( 289 );w.setTabIndex( -1 );var w = wm.findWidgetById( "w2" );w.setActiveControl( w );var w = wm.findWidgetById( "w20" );w.setActiveControl( wm.findWidgetById( "w75" ) );org.eclipse.swt.WidgetManager.getInstance().focus( "w75" );org.eclipse.swt.FontSizeCalculation.probe( [ [ -785381545, "!#$%&()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy", [ "Verdana", "Lucida Sans", "Arial", "Helvetica", "sans-serif" ], 11, false, false ] ] );org.eclipse.swt.FontSizeCalculation.measureStrings( [ [ 14252445, "UniversalTreeTableView", [ "Verdana", "Lucida Sans", "Arial", "Helvetica", "sans-serif" ], 11, false, false, -1 ], [ 29313387, "create call", [ "Verdana", "Lucida Sans", "Arial", "Helvetica", "sans-serif" ], 12, false, false, -1 ], [ 23940670, "Fetch Data", [ "Verdana", "Lucida Sans", "Arial", "Helvetica", "sans-serif" ], 12, false, false, -1 ], [ 19663047, "UniversalDetailView", [ "Verdana", "Lucida Sans", "Arial", "Helvetica", "sans-serif" ], 11, false, false, -1 ] ] );

While I can find it in the patched org.eclipse.rap.rwt.q07 package.
Comment 19 Austin Riddle CLA 2010-04-19 10:59:58 EDT
Hi Martijn,

It sounds like the patch did not get applied properly.  If you look at the patch, there is a setLinesVisible().

Look in your Tree.js.  Is the method there?

Are you using CVS HEAD?
Comment 20 Martijn Cremer CLA 2010-04-19 11:29:46 EDT
(In reply to comment #19)
I was running 1.3m6. But after updating to CSV Head and reapplying the patch (this time without any problems). And indeed it works like a charm.

Thanks
Comment 21 Martijn Cremer CLA 2010-04-19 11:40:06 EDT
(In reply to comment #20)
> (In reply to comment #19)
> I was running 1.3m6. But after updating to CSV Head and reapplying the patch
> (this time without any problems). And indeed it works like a charm.
> 
> Thanks

Also full selection works good and in the themed style.
Comment 22 Tim Buschtoens CLA 2010-07-21 07:38:41 EDT
The new Tree implementation supports girdlines (using "setLinesVisible") and themeable treelines (using CSS).