List of usage examples for org.eclipse.jface.viewers TreeViewer getExpandedState
public boolean getExpandedState(Object elementOrTreePath)
From source file:com.mindquarry.desktop.preferences.dialog.FilteredPreferenceDialog.java
License:Open Source License
/** * Add the listeners to the tree viewer. * /*from ww w . j ava 2 s . co m*/ * @param viewer * * @since 3.1 */ protected void addListeners(final TreeViewer viewer) { viewer.addPostSelectionChangedListener(new ISelectionChangedListener() { private void handleError() { try { // remove the listener temporarily so that the events caused // by the error handling dont further cause error handling // to occur. viewer.removePostSelectionChangedListener(this); showPageFlippingAbortDialog(); selectCurrentPageAgain(); clearSelectedNode(); } finally { viewer.addPostSelectionChangedListener(this); } } public void selectionChanged(SelectionChangedEvent event) { Object selection = getSingleSelection(event.getSelection()); if (selection instanceof IPreferenceNode) { if (!isCurrentPageValid()) { handleError(); } else if (!showPage((IPreferenceNode) selection)) { // Page flipping wasn't successful handleError(); } else { // Everything went well lastSuccessfulNode = (IPreferenceNode) selection; } } } }); ((Tree) viewer.getControl()).addSelectionListener(new SelectionAdapter() { @Override public void widgetDefaultSelected(final SelectionEvent event) { ISelection selection = viewer.getSelection(); if (selection.isEmpty()) { return; } IPreferenceNode singleSelection = getSingleSelection(selection); boolean expanded = viewer.getExpandedState(singleSelection); viewer.setExpandedState(singleSelection, !expanded); } }); // Register help listener on the tree to use context sensitive help viewer.getControl().addHelpListener(new HelpListener() { public void helpRequested(HelpEvent event) { // call perform help on the current page if (currentPage != null) { currentPage.performHelp(); } } }); }
From source file:com.nokia.carbide.search.system.ui.text.AbstractTextSearchViewPage.java
License:Open Source License
/** * <p>This method is called when the search page gets an open even from it's * underlying viewer (for example on double click). The default * implementation will open the first match on any element that has matches. * If the element to be opened is an inner node in the tree layout, the node * will be expanded if it's collapsed and vice versa. Subclasses are allowed * to override this method.// w w w . jav a 2 s .c o m * </p> * @param event * the event sent for the currently shown viewer * * @see IOpenListener */ protected void handleOpen(OpenEvent event) { Viewer viewer = event.getViewer(); boolean hasCurrentMatch = showCurrentMatch(OpenStrategy.activateOnOpen()); ISelection sel = event.getSelection(); if (viewer instanceof TreeViewer && sel instanceof IStructuredSelection) { IStructuredSelection selection = (IStructuredSelection) sel; TreeViewer tv = (TreeViewer) getViewer(); Object element = selection.getFirstElement(); if (element != null) { if (!hasCurrentMatch && getDisplayedMatchCount(element) > 0) gotoNextMatch(OpenStrategy.activateOnOpen()); else tv.setExpandedState(element, !tv.getExpandedState(element)); } return; } else if (!hasCurrentMatch) { gotoNextMatch(OpenStrategy.activateOnOpen()); } }
From source file:com.puppetlabs.geppetto.puppetdb.ui.views.PuppetResourceEventsView.java
License:Open Source License
@Override public void doubleClick(DoubleClickEvent event) { TreeViewer viewer = (TreeViewer) event.getViewer(); Object selectedNode = ((IStructuredSelection) event.getSelection()).getFirstElement(); viewer.setExpandedState(selectedNode, !viewer.getExpandedState(selectedNode)); }
From source file:com.sap.dirigible.ide.workspace.ui.viewer.WorkspaceViewerUtils.java
License:Open Source License
public static void doubleClickedElement(Object element) { if (element instanceof IFolder || element instanceof IProject) { IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); IViewPart view = page.findView(WorkspaceExplorerView.VIEW_ID); if (view != null && view instanceof WorkspaceExplorerView) { TreeViewer treeViewer = ((WorkspaceExplorerView) view).getViewer().getViewer(); if (element instanceof IFolder || element instanceof IProject) { treeViewer.setExpandedState(element, (!treeViewer.getExpandedState(element))); }//from ww w . j a va2 s . c o m } } }
From source file:com.siteview.mde.internal.ui.editor.TreeSection.java
License:Open Source License
/** * Expands or collapsed selected node according to its current state * @param selection/*www . ja v a 2s .c o m*/ */ protected void handleDoubleClick(IStructuredSelection selection) { TreeViewer viewer = (TreeViewer) fViewerPart.getViewer(); boolean expandedState = viewer.getExpandedState(selection.getFirstElement()); viewer.setExpandedState(selection.getFirstElement(), !expandedState); }
From source file:de.bmw.yamaica.ide.ui.internal.editor.OverviewPage.java
License:Mozilla Public License
private TreeViewer createTreeViewer(Composite parent, int verticalSpan) { GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true, 1, verticalSpan); gridData.minimumWidth = 100;// w w w. j av a 2 s.co m gridData.widthHint = 100; Tree tree = toolkit.createTree(parent, SWT.BORDER | SWT.MULTI); tree.setHeaderVisible(false); tree.setLayoutData(gridData); final TreeViewer treeViewer = new TreeViewer(tree); treeViewer.setComparator(new ResourceComparator(ResourceComparator.NAME)); treeViewer.setContentProvider(new WorkbenchContentProvider()); treeViewer.setLabelProvider(WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider()); treeViewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { ITreeSelection selection = (ITreeSelection) event.getSelection(); Object selectedElement = selection.getFirstElement(); if (selectedElement instanceof IFile) { openEditor(selection); } else if (selectedElement instanceof IContainer) { // toggle expand state treeViewer.setExpandedState(selectedElement, !treeViewer.getExpandedState(selectedElement)); } } }); return treeViewer; }
From source file:de.walware.ecommons.ui.util.ViewerUtil.java
License:Open Source License
public static void addDoubleClickExpansion(final TreeViewer viewer) { viewer.addDoubleClickListener(new IDoubleClickListener() { @Override/* w ww.ja va 2s . c o m*/ public void doubleClick(final DoubleClickEvent event) { final IStructuredSelection selection = (IStructuredSelection) event.getSelection(); if (selection != null && selection.size() == 1) { final Object item = selection.getFirstElement(); if (viewer.getExpandedState(item)) { viewer.collapseToLevel(item, TreeViewer.ALL_LEVELS); } else { viewer.expandToLevel(item, 1); } } } }); }
From source file:edu.harvard.i2b2.eclipse.plugins.querytool.ui.GroupPanel.java
License:Open Source License
protected void addDoubleClickListenerToViewer() { myTreeViewer.addDoubleClickListener(new IDoubleClickListener() { @Override// www . j a va 2 s . co m public void doubleClick(DoubleClickEvent event) { TreeViewer viewer = (TreeViewer) event.getViewer(); IStructuredSelection thisSelection = (IStructuredSelection) event.getSelection(); QueryConceptTreeNodeData parentNode = (QueryConceptTreeNodeData) thisSelection.getFirstElement(); // if selected node is a working node if (parentNode instanceof WorkingTreeNodeData) { WorkingTreeNodeData workingNode = (WorkingTreeNodeData) parentNode; // if failed or canceled, restart it! if (workingNode.getState() == WorkingTreeNodeData.WorkingTreeNodeState.CANCELED || workingNode.getState() == WorkingTreeNodeData.WorkingTreeNodeState.FAILED) { parentNode = workingNode.getParent(); workingNode.name(WorkingTreeNodeData.DEFAULT_WORKING_LABEL); workingNode.visualAttribute(ProcessorConst.ICON_WORKING); ((WorkingTreeNodeData) workingNode) .setState(WorkingTreeNodeData.WorkingTreeNodeState.RUNNING); TermFetchRunnable runner = new TermFetchRunnable(GroupPanel.this, viewer, parentNode, workingNode); workingNode.setTerMFetchRunnable(runner); myTermFetchRunnables.add(runner); // try fetching again myTermFetchScheduler.schedule(runner, 10, TimeUnit.MILLISECONDS); return; } else if (workingNode.getState() == WorkingTreeNodeData.WorkingTreeNodeState.RUNNING) // if it's RUNNING, cancel it! { workingNode.cancelRunner(); // send cancel signal to the task via workingNode } } if (!parentNode.isConcept()) // nothing to expand if concept is not a node return; // if already has a child, don't fetch children, just expand/contract if (parentNode.getChildren().size() > 0) { viewer.setExpandedState(parentNode, !viewer.getExpandedState(parentNode)); // expand the selected node viewer.update(parentNode, null); // make sure the tree redraws autoSetMaxAllowablePanelHeight(parentNode, viewer.getExpandedState(parentNode)); return; } WorkingTreeNodeData child = null; if (!viewer.getExpandedState(parentNode)) { child = new WorkingTreeNodeData(parentNode); parentNode.addChild(child); } if (child != null) { viewer.setExpandedState(parentNode, !viewer.getExpandedState(parentNode)); // expand the selected node viewer.update(parentNode, null); // make sure the tree redraws autoSetMaxAllowablePanelHeight(parentNode, true); // expand tree immediate to accommodate the Working Node TermFetchRunnable runner = new TermFetchRunnable(GroupPanel.this, viewer, parentNode, child); child.setTerMFetchRunnable(runner); myTermFetchRunnables.add(runner); myTermFetchScheduler.schedule(runner, 10, TimeUnit.MILLISECONDS); } } }); }
From source file:eu.esdihumboldt.hale.ui.util.wizard.ViewerWizardSelectionPage.java
License:Open Source License
/** * Called when a double click in the viewer occurs. * // ww w . j ava 2 s.co m * @param event the double click event */ protected void doubleClicked(DoubleClickEvent event) { ISelection selection = event.getViewer().getSelection(); IStructuredSelection ss = (IStructuredSelection) selection; viewerSelectionChanged(ss); Object element = ss.getFirstElement(); if (element instanceof IWizardNode) { if (canFlipToNextPage()) { getContainer().showPage(getNextPage()); return; } } else if (event.getViewer() instanceof TreeViewer) { TreeViewer viewer = (TreeViewer) event.getViewer(); viewer.setExpandedState(element, !viewer.getExpandedState(element)); } getContainer().showPage(getNextPage()); }
From source file:eu.geclipse.ui.views.GridModelViewPart.java
License:Open Source License
/** * Handle a double click event that occurred in the viewer of this * view.// w w w.ja v a 2 s. c o m * * @param event The associated {@link DoubleClickEvent}. */ protected void handleDoubleClick(final DoubleClickEvent event) { if (this.viewer instanceof TreeViewer) { TreeViewer treeViewer = (TreeViewer) this.viewer; ISelection selection = event.getSelection(); if (selection instanceof IStructuredSelection) { Object element = ((IStructuredSelection) selection).getFirstElement(); if (treeViewer.isExpandable(element)) { boolean state = treeViewer.getExpandedState(element); treeViewer.setExpandedState(element, !state); } } } }