List of usage examples for org.eclipse.jface.viewers TreeViewer getStructuredSelection
@Override public ITreeSelection getStructuredSelection() throws ClassCastException
ITreeSelection
of this viewer. From source file:com.google.gapid.widgets.Widgets.java
License:Apache License
public static TreeViewer createTreeViewer(Tree tree) { TreeViewer viewer = new VisibilityTrackingTreeViewer(tree); viewer.setUseHashlookup(true);//from w w w . j a va2s .co m tree.addListener(SWT.KeyDown, e -> { switch (e.keyCode) { case SWT.ARROW_LEFT: case SWT.ARROW_RIGHT: ITreeSelection selection = viewer.getStructuredSelection(); if (selection.size() == 1) { viewer.setExpandedState(selection.getFirstElement(), e.keyCode == SWT.ARROW_RIGHT); } break; } }); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); if (selection.size() == 1) { Object element = selection.getFirstElement(); viewer.setExpandedState(element, !viewer.getExpandedState(element)); } } }); return viewer; }
From source file:com.liferay.ide.project.ui.migration.MigrateProjectHandler.java
License:Open Source License
protected void refreshViewer(List<Problem> allProblems) { FindBreakingChangesPage page = UpgradeView.getPage(Page.FINDBREACKINGCHANGES_PAGE_ID, FindBreakingChangesPage.class); TableViewer problemsViewer = page.get_problemsViewer(); TreeViewer treeViewer = page.getTreeViewer(); UIUtil.async(new Runnable() { @Override// ww w .j av a2s . c o m public void run() { problemsViewer.setInput(allProblems); Object currentTreeNode = treeViewer.getStructuredSelection().getFirstElement(); String currentPath = null; if (currentTreeNode instanceof FileProblems) { FileProblems currentNode = (FileProblems) currentTreeNode; currentPath = currentNode.getFile().getAbsolutePath().toString(); } MigrationContentProvider contentProvider = (MigrationContentProvider) treeViewer .getContentProvider(); MigrationProblemsContainer mc = (MigrationProblemsContainer) contentProvider._problems.get(0); for (MigrationProblems project : mc.getProblemsArray()) { Iterator<FileProblems> fileProblemItertor = new LinkedList<FileProblems>( Arrays.asList(project.getProblems())).iterator(); while (fileProblemItertor.hasNext()) { FileProblems fileProblem = fileProblemItertor.next(); if (fileProblem.getFile().getAbsolutePath().toString().equals(currentPath)) { fileProblem.getProblems().clear(); fileProblem.getProblems().addAll(allProblems); break; } } } } }); }
From source file:com.liferay.ide.project.ui.migration.RemoveAction.java
License:Open Source License
@Override public void run() { // final MigrationView mv = (MigrationView) UIUtil.showView( MigrationView.ID ); // final CommonViewer commonViewer = mv.getCommonViewer(); final FindBreakingChangesPage page = UpgradeView.getPage(Page.FINDBREACKINGCHANGES_PAGE_ID, FindBreakingChangesPage.class); final TreeViewer treeViewer = page.getTreeViewer(); Object selection = treeViewer.getStructuredSelection().getFirstElement(); if (selection instanceof MigrationProblems) { MigrationProblems migrationProblem = (MigrationProblems) selection; MigrationUtil.removeMigrationProblems(migrationProblem); IResource project = MigrationUtil.getResourceFromMigrationProblems(migrationProblem); if (project != null) { MarkerUtil.clearMarkers(project, MigrationConstants.MARKER_TYPE, null); }/* w w w . j a va2 s .c om*/ } treeViewer.setInput(CoreUtil.getWorkspaceRoot()); treeViewer.expandToLevel(2); }
From source file:org.eclipse.jface.snippets.viewers.Snippet005TreeCustomMenu.java
License:Open Source License
public Snippet005TreeCustomMenu(Shell shell) { final TreeViewer v = new TreeViewer(shell); v.setLabelProvider(new LabelProvider()); v.setContentProvider(new MyContentProvider()); v.setInput(createModel());/* w ww .j a v a 2 s . c o m*/ createColumn(v.getTree(), "Values"); final Action a = new Action("") { }; final MenuManager mgr = new MenuManager(); mgr.setRemoveAllWhenShown(true); mgr.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(IMenuManager manager) { IStructuredSelection selection = v.getStructuredSelection(); if (!selection.isEmpty()) { a.setText("Action for " + selection.getFirstElement()); mgr.add(a); } } }); v.getControl().setMenu(mgr.createContextMenu(v.getControl())); }
From source file:org.eclipse.lsp4e.outline.CNFOutlinePage.java
License:Open Source License
public static void refreshTreeSelection(TreeViewer viewer, int offset, IDocument document) { ITreeContentProvider contentProvider = (ITreeContentProvider) viewer.getContentProvider(); Object[] objects = contentProvider.getElements(null); SymbolInformation bestSymbol = null; int level = 0; while (objects != null && objects.length > 0) { SymbolInformation nextChild = null; for (Object object : objects) { SymbolInformation symbol = object instanceof SymbolInformation ? (SymbolInformation) object : Adapters.adapt(object, SymbolInformation.class); if (symbol != null) { if (isOffsetInSymbolRange(offset, symbol, document)) { nextChild = symbol;//from ww w. jav a2 s .c o m objects = contentProvider.getChildren(symbol); break; } } } if (nextChild == null) break; level++; bestSymbol = nextChild; } if (bestSymbol != null) { if (bestSymbol.equals(viewer.getStructuredSelection().getFirstElement())) { // the symbol to select is the same than current selected symbol, don't select // it. return; } final int finalLevel = level; final SymbolInformation finalBestSymbol = bestSymbol; Display.getDefault().asyncExec(() -> { viewer.expandToLevel(finalLevel); viewer.setSelection(new StructuredSelection(finalBestSymbol), true); }); } }