List of usage examples for org.eclipse.jface.viewers TreeViewer getControl
@Override
public Control getControl()
From source file:com.windowtester.eclipse.ui.views.RecorderConsoleView.java
License:Open Source License
private void addContextMenus() { final TreeViewer viewer = treeViewer.getTreeViewer(); MenuManager mm = new MenuManager(MENU_MANAGER_NAME); mm.setRemoveAllWhenShown(true);/*from ww w . j a va 2 s . co m*/ mm.addMenuListener(new IMenuListener() { public void menuAboutToShow(IMenuManager manager) { if (viewer == null) return; Tree tree = viewer.getTree(); if (tree == null) return; final TreeItem[] selection = tree.getSelection(); if (selection.length == 0) { return; } manager.add(new ContextMenuAction(deleteAction)); // manager.add(new Action("Group") { // public void run() { // super.run(); // System.out.println("DO group!"); // // ISemanticEvent[] selected = getSelection(); // IEvent[] events = new IEvent[selected.length]; // for (int i = 0; i < selection.length; i++) { // events[i] = (IEvent)selected[i]; // } // IEventGroup group = getPresenter().group(events); // getViewer().setGroupedState(group); // // } // }); } }); mm.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS)); Control control = viewer.getControl(); Menu menu = mm.createContextMenu(control); control.setMenu(menu); //re-enable if we want to accept contributions // getSite().registerContextMenu(mm, viewer); }
From source file:de.innot.avreclipse.ui.views.avrdevice.AVRDeviceView.java
License:Open Source License
@Override public void setFocus() { // Passing the focus request to the treeviewer of the selected tab CTabItem item = fTabFolder.getSelection(); if (item != null) { TreeViewer tv = (TreeViewer) item.getData(); tv.getControl().setFocus(); }// w w w .j a va2 s .c o m }
From source file:de.innot.avreclipse.ui.views.avrdevice.AVRDeviceView.java
License:Open Source License
/** * Update all tabs./*w w w . j a v a2 s. c om*/ * <p> * One tab for each Category of the device is created. Each tab also gets a * <code>TreeViewer</code> associated to it, accessible via the <code>CTabItem.getData()</code> * method. * </p> * <p> * If a new tab has the same name as the previously selected tab, it will be selected as well * </p> */ private void updateTabs(CTabFolder parent, IDeviceDescription device) { TreeViewer tv = null; CTabItem cti = null; String activetabname = null; // Remember the name of the active tab if (parent.getSelection() != null) { activetabname = parent.getSelection().getText(); } List<ICategory> categories = device.getCategories(); // Strategy: iterate over all elements of the category list, and try to // get a CTabItem control from the existing CTabItems. If this fails // with an Exception a new CTabItem control is created and added to the // internal list fTabs. Also a TreeViewer is created and linked to the // tab. // After the list has been iterated, any CTabItems that // are left over in the list will be disposed. int cticounter = 0; for (ICategory cat : categories) { try { cti = fTabs.get(cticounter); } catch (IndexOutOfBoundsException ioobe) { // Tab did not exist: create a new CTabItem and an associated // TreeViewer cti = new CTabItem(parent, SWT.NONE); tv = createTreeView(parent, cat); cti.setData(tv); cti.setControl(tv.getControl()); fTabs.add(cti); } cti.setText(cat.getName()); tv = (TreeViewer) cti.getData(); updateTreeView(tv, cat); tv.setInput(cat); // Check if this tab should be made active if (cat.getName().equals(activetabname)) { parent.setSelection(cti); } cticounter++; } // dispose and remove any remaining CTabItems and associated TreeViewers // The loop will end with an Exception once the last list element has // been removed and we try to read the same index again. try { while (true) { cti = fTabs.get(cticounter); cti.getControl().dispose(); cti.dispose(); fTabs.remove(cticounter); // all remaining items are moved up } } catch (IndexOutOfBoundsException ioobe) { // do nothing, as this exception is expected } // If no Tab is active then activate the first one if (parent.getSelectionIndex() == -1) { parent.setSelection(0); } }
From source file:de.loskutov.anyedit.jdt.SelectWorkingSetsAction.java
License:Open Source License
@Override public void run() { if (workingSets == null || workingSets.length == 0) { return;//from w w w . j a v a 2 s .c om } try { IViewPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage() .showView(JavaUI.ID_PACKAGES); if (!(part instanceof PackageExplorerPart)) { return; } PackageExplorerPart viewPart = (PackageExplorerPart) part; int showWS = PackageExplorerPart.WORKING_SETS_AS_ROOTS; if (viewPart.getRootMode() != showWS) { viewPart.rootModeChanged(showWS); } WorkingSetModel workingSetModel = viewPart.getWorkingSetModel(); IWorkingSet[] active = workingSetModel.getActiveWorkingSets(); List<IWorkingSet> all = new ArrayList<IWorkingSet>(); for (int i = 0; i < active.length; i++) { all.add(active[i]); } IWorkingSet[] existing = workingSetModel.getAllWorkingSets(); for (int i = 0; i < workingSets.length; i++) { IWorkingSet set = workingSets[i]; set = lookupName(existing, set); if (set != null && !all.contains(set)) { all.add(set); } } if (all.size() > 0) { workingSetModel.setActiveWorkingSets(all.toArray(new IWorkingSet[all.size()])); TreeViewer viewer = viewPart.getTreeViewer(); viewer.getControl().setRedraw(false); viewer.refresh(); viewer.getControl().setRedraw(true); } } catch (PartInitException e) { AnyEditToolsPlugin.logError(null, e); } }
From source file:de.ovgu.featureide.ui.ahead.views.outline.JakOutlinePage.java
License:Open Source License
/** * Updates the outline page./*from w w w . j a v a2 s. c o m*/ */ public void update() { TreeViewer viewer = getTreeViewer(); if (viewer != null) { Control control = viewer.getControl(); if (control != null && !control.isDisposed()) { control.setRedraw(false); viewer.setInput(fInput); viewer.expandAll(); control.setRedraw(true); } } }
From source file:de.quamoco.qm.editor.hierarchyviews.HierarchyMenuProvider.java
License:Apache License
/** Create the context menu for the {@link TreeViewer}. */ public void createContextMenu(TreeViewer treeViewer, IWorkbenchPartSite site) { this.treeViewer = treeViewer; MenuManager contextMenu = new MenuManager("#PopUp"); contextMenu.add(new Separator(ADDITIONS)); contextMenu.setRemoveAllWhenShown(true); Menu menu = contextMenu.createContextMenu(treeViewer.getControl()); treeViewer.getControl().setMenu(menu); site.registerContextMenu(contextMenu, new UnwrappingSelectionProvider(treeViewer)); contextMenu.addMenuListener(this); }
From source file:de.tobject.findbugs.actions.FindBugsAction.java
License:Open Source License
protected static void refreshViewer(IWorkbenchPart targetPart, final List<WorkItem> resources) { if (targetPart == null) { return;/*w w w . jav a 2 s .c o m*/ } ISelectionProvider selProvider = (ISelectionProvider) targetPart.getAdapter(ISelectionProvider.class); if (!(selProvider instanceof TreeViewer)) { return; } final TreeViewer viewer = (TreeViewer) selProvider; Display.getDefault().asyncExec(new Runnable() { public void run() { if (viewer.getControl().isDisposed()) { return; } for (WorkItem workItem : resources) { if (workItem.getMarkerTarget() instanceof IProject) { // this element has to be refreshed manually, because // there is no one real // resource associated with it => no resource change // notification after // creating a marker... viewer.refresh(workItem.getCorespondingJavaElement(), true); } } } }); }
From source file:de.topicmapslab.kuria.swtgenerator.tree.TreeGenerator.java
License:Apache License
public TreeViewer generateTree(Composite parent, boolean showRoot, final IContextMenuListener listener) { TreeViewer viewer = new TreeViewer(parent) { @Override/* w ww. j a v a 2 s. c o m*/ public void refresh() { ((TreeBindingContentProvider) getContentProvider()).setReturnRoot(true); super.refresh(); } }; viewer.setContentProvider(new TreeBindingContentProvider(showRoot)); viewer.setLabelProvider(new TextBindingLabelProvider(bindingContainer) { @Override public String getText(Object element) { if (element instanceof MediatorNode) { return ((MediatorNode) element).getTitle(); } return super.getText(element); } @Override public Image getImage(Object element) { if (element instanceof MediatorNode) { String image = ((MediatorNode) element).getImage(); if (image != null) return ImageRegistry.getImage(image); } else { ITreeNodeBinding tnb = bindingContainer.getTreeNodeBinding(element.getClass()); if ((tnb != null) && (tnb.getImage(element) != null)) return ImageRegistry.getImage(tnb.getImage(element)); } return null; } }); if (listener != null) { MenuManager menuMgr = new MenuManager("#PopupMenu"); //$NON-NLS-1$ menuMgr.setRemoveAllWhenShown(true); menuMgr.addMenuListener(new IMenuListener() { public void menuAboutToShow(IMenuManager manager) { listener.createMenu(manager); } }); Menu menu = menuMgr.createContextMenu(viewer.getControl()); viewer.getControl().setMenu(menu); } return viewer; }
From source file:de.walware.ecommons.ui.util.ViewerUtil.java
License:Open Source License
public static void scheduleStandardSelection(final TreeViewer viewer) { viewer.getControl().getDisplay().asyncExec(new Runnable() { @Override// www . j ava 2s.c o m public void run() { final ISelection selection = viewer.getSelection(); if (selection.isEmpty()) { if (viewer.getTree().getItemCount() > 0) { final TreeItem item = viewer.getTree().getItem(0); viewer.setSelection(new TreeSelection(new TreePath(new Object[] { item.getData() }))); viewer.setExpandedState(item.getData(), true); } else { viewer.setSelection(new StructuredSelection()); } } } }); }
From source file:de.walware.statet.r.internal.ui.pkgmanager.PkgTab.java
License:Open Source License
private void createDetailRef(final Composite parent, final int type) { {/*from w w w.j a v a 2 s . com*/ final Label label = new Label(parent, SWT.NONE); label.setText((type == 0) ? "Dependencies:" : "Reverse:"); label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); } final TreeViewer viewer = new TreeViewer(parent, (SWT.BORDER | SWT.SINGLE)); if (type == 0) { fDetailDepTable = viewer; } else { fDetailRevTable = viewer; } { final GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1); gd.heightHint = LayoutUtil.hintHeight(viewer.getTree(), 12); gd.widthHint = fDialog.hintWidthInChars(20); viewer.getControl().setLayoutData(gd); } viewer.setContentProvider(new DetailGroup.ContentProvider(5) { private static final int DEPENDS = 0; private static final int IMPORTS = 1; private static final int LINKINGTO = 2; private static final int SUGGESTS = 3; private static final int ENHANCES = 4; { fGroups[DEPENDS] = new DetailGroup(0, "Depends"); fGroups[IMPORTS] = new DetailGroup(1, "Imports"); fGroups[LINKINGTO] = new DetailGroup(2, "Linking To"); fGroups[SUGGESTS] = new DetailGroup(3, "Suggests"); fGroups[ENHANCES] = new DetailGroup(4, "Enhances"); } @Override public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { if (newInput instanceof IRPkgData) { final IRPkgData pkg = (IRPkgData) newInput; fGroups[DEPENDS].setList(pkg.getDepends()); fGroups[IMPORTS].setList(pkg.getImports()); fGroups[LINKINGTO].setList(pkg.getLinkingTo()); fGroups[SUGGESTS].setList(pkg.getSuggests()); fGroups[ENHANCES].setList(pkg.getEnhances()); } else { fGroups[DEPENDS].clearList(); fGroups[IMPORTS].clearList(); fGroups[LINKINGTO].clearList(); fGroups[SUGGESTS].clearList(); fGroups[ENHANCES].clearList(); } } }); viewer.setAutoExpandLevel(TreeViewer.ALL_LEVELS); viewer.setLabelProvider(new StyledCellLabelProvider() { @Override public void update(final ViewerCell cell) { final Object element = cell.getElement(); if (element instanceof DetailGroup) { cell.setText(((DetailGroup) element).getLabel()); cell.setStyleRanges(null); return; } else if (element instanceof IRPkg) { final IRPkg pkg = (IRPkg) element; final StyledString text = new StyledString(); text.append(pkg.getName()); final String version = pkg.getVersion().toString(); if (!version.isEmpty()) { text.append(" (", StyledString.QUALIFIER_STYLER); //$NON-NLS-1$ text.append(version, StyledString.QUALIFIER_STYLER); text.append(")", StyledString.QUALIFIER_STYLER); //$NON-NLS-1$ } cell.setText(text.getString()); cell.setStyleRanges(text.getStyleRanges()); return; } throw new IllegalStateException(); } }); viewer.setInput(NO_INPUT); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(final DoubleClickEvent event) { final Object element = ((IStructuredSelection) event.getSelection()).getFirstElement(); if (element instanceof IRPkg) { showPkg(((IRPkg) element).getName()); } } }); }