Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Remote Application Platform (RAP) » ScrollBar problem in TreeViewer(problem with scrolling in a treeviewer when tree item is selected programmatically)
ScrollBar problem in TreeViewer [message #1690774] Tue, 31 March 2015 08:15 Go to next message
Olga Penskaya is currently offline Olga PenskayaFriend
Messages: 1
Registered: March 2015
Junior Member
Hello all,
I have a strange problem with vertical scrollbar in TreeViewer.
I created a simple RAP application with two views :
- first with treeviewer
- second with comboviewer

When I create this treeviewer, I select a random element from the tree. Element is selected but scroll is still in top position and selected element is not visible (see attachment 1).
Below code for treeviewer creation:

viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
viewer.setContentProvider(new TreeContentProvider());
viewer.setLabelProvider(new TreeLabelProvider());		
viewer.setInput(UtilContent.getInstance().getElements());
Object root = UtilContent.getInstance().getElements().get(24);        
Object group = ((RootElement) root).getChildren().get(45);
Object child = ((GroupElement) group).getChildren().get(70);
viewer.setExpandedElements(new Object[]{root, group, child}); 
viewer.setSelection(new StructuredSelection(child), true);


Besides, If I select same element from comboviewer, scrolling works (see attachment 2).
Below code for tree item selection through comboviewer:

comboViewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
			
			@Override
			public void selectionChanged(SelectionChangedEvent event) {
				TreeViewer viewer = UtilContent.getInstance().getViewer();
                if (viewer != null) {  
                    AbstractChildElement elem = (AbstractChildElement) ((StructuredSelection) event.getSelection()).getFirstElement();
               	    Object[] path = getPath(elem.getName());
                    viewer.setExpandedElements(path); 
                    viewer.setSelection(new StructuredSelection(elem), true);                   
                }
			}
		});

private Object[] getPath(String name) {
		List<Object> path = new ArrayList<>();
		for (Object element : UtilContent.getInstance().getElements()) {
			for (Object groupElem : ((RootElement)element).getChildren()) {
				for (Object childElem : ((GroupElement)groupElem).getChildren()) {
					if (name.equals(((AbstractChildElement)childElem).getName())) {
						path.add(element);
						path.add(groupElem);
						path.add(childElem);
						break;
					}
				}
			}
			
		}
		return path.toArray();
	}


I use rap 2.3.0. Maybe I do something wrong?
Re: ScrollBar problem in TreeViewer [message #1690830 is a reply to message #1690774] Tue, 31 March 2015 14:05 Go to previous message
Ivan Furnadjiev is currently offline Ivan FurnadjievFriend
Messages: 2426
Registered: July 2009
Location: Sofia, Bulgaria
Senior Member
Hi,
it looks like a bug to me. Please file a bugzilla with a small, complete
snippet to reproduce the issue.
Thanks,
Ivan

--
Ivan Furnadjiev

Twitter: @EclipseRAP
Blog: http://eclipsesource.com/blogs/

Professional services for RAP and RCP?
http://eclipsesource.com/services/rap/
Previous Topic:Is it possible to disable/hide the "Hide" and "Restore Hidden Toolbar Entries"?
Next Topic:Migrate from 1.5 to Luna SR2 problem
Goto Forum:
  


Current Time: Tue Mar 19 06:42:24 GMT 2024

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

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

Back to the top