List of usage examples for org.eclipse.jface.viewers TreeViewer setContentProvider
@Override public void setContentProvider(IContentProvider provider)
TreeViewer
. From source file:com.architexa.org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog.java
License:Open Source License
/** * Creates the TreeViewer that is the outline of the model. * //from w ww .j a v a 2 s .c o m * @param composite The Composite to which the ToolBar is to be added * @return The newly created TreeViewer */ protected TreeViewer createOutlineTreeViewer(Composite composite) { Tree treeForViewer = new Tree(composite, SWT.BORDER); treeForViewer.setFont(composite.getFont()); GridData data = new GridData(GridData.FILL_VERTICAL | GridData.HORIZONTAL_ALIGN_FILL); data.widthHint = 185; // Make the tree this tall even when there is nothing in it. This will keep the // dialog from shrinking to an unusually small size. data.heightHint = 200; treeForViewer.setLayoutData(data); TreeViewer viewer = new TreeViewer(treeForViewer) { protected void preservingSelection(Runnable updateCode) { if ((getTree().getStyle() & SWT.SINGLE) != 0) updateCode.run(); else super.preservingSelection(updateCode); } }; viewer.setContentProvider(new PaletteTreeProvider(viewer)); treeViewerLabelProvider = new PaletteLabelProvider(viewer); viewer.setLabelProvider(treeViewerLabelProvider); viewer.setInput(getPaletteRoot()); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { handleOutlineSelectionChanged(); } }); return viewer; }
From source file:com.astra.ses.spell.gui.views.HistoryTreePage.java
License:Open Source License
public HistoryTreePage(String procId, Composite parent, HistoryTreeView view) { super(parent, SWT.NONE); setLayout(new GridLayout(1, true)); m_model = s_pmgr.getProcedure(procId); TreeViewer viewer = new TreeViewer(this); viewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH)); viewer.setContentProvider(new HistoryTreeContentProvider()); viewer.setLabelProvider(new HistoryTreeLabelProvider()); viewer.setInput(m_model);//from w ww . j a va 2 s . c o m viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); Object obj = sel.getFirstElement(); String instanceId = null; if (obj instanceof HistoryTreeRootNode) { HistoryTreeRootNode node = (HistoryTreeRootNode) obj; instanceId = node.getInstanceId(); } else if (obj instanceof HistoryTreeChildProcedureNode) { HistoryTreeChildProcedureNode node = (HistoryTreeChildProcedureNode) obj; instanceId = node.getInstanceId(); } if (instanceId != null) { if (s_vmgr.containsProcedureView(instanceId)) { s_vmgr.showProcedureView(instanceId); } else { HistoryTreeChildProcedureNode node = (HistoryTreeChildProcedureNode) obj; HashMap<String, String> args = new HashMap<String, String>(); args.put(OpenProcedureReplay.ARG_ASRUN, node.getAsRunPath()); CommandHelper.execute(OpenProcedureReplay.ID, args); } } } }); ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE); viewer.expandAll(); MenuManager menuMgr = new MenuManager("#PopupMenu"); menuMgr.setRemoveAllWhenShown(true); menuMgr.addMenuListener(new IMenuListener() { public void menuAboutToShow(IMenuManager manager) { Action exportAsRunTree = new Action() { public void run() { HistoryTreePage.this.exportAsRunTree(); } }; exportAsRunTree.setText("Export ASRUN..."); manager.add(exportAsRunTree); } }); Menu menu = menuMgr.createContextMenu(viewer.getControl()); viewer.getControl().setMenu(menu); view.getSite().registerContextMenu(menuMgr, viewer); }
From source file:com.axmor.eclipse.typescript.editor.search.TypeScriptSearchResultPage.java
License:Open Source License
@Override protected void configureTreeViewer(TreeViewer viewer) { viewer.setUseHashlookup(true);//from ww w . j a v a2 s.com FileLabelProvider innerLabelProvider = new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL); viewer.setLabelProvider(innerLabelProvider); contentProvider = new TypeScriptSearchContentProvider(viewer); viewer.setContentProvider(contentProvider); }
From source file:com.axmor.eclipse.typescript.editor.TypeScriptContentOutlinePage.java
License:Open Source License
@Override public void createControl(Composite parent) { super.createControl(parent); TreeViewer viewer = getTreeViewer(); viewer.setContentProvider(new TypeScriptOutlineContentProvider()); viewer.setLabelProvider(new TypeScriptOutlineLabelProvider()); if (model != null) { setViewerInput(model);/*from w w w. ja v a2 s . co m*/ } // add a listener for page navigation viewer.addPostSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { firePostSelectionChanged(event.getSelection()); } }); }
From source file:com.baremetalstudios.mapleide.internal.ResourceNavigator.java
License:Open Source License
@Inject public ResourceNavigator(Composite parent, final IEclipseContext context, IWorkspace workspace) { final Realm realm = SWTObservables.getRealm(parent.getDisplay()); this.context = context; parent.setLayout(new FillLayout()); TreeViewer viewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { StructuredSelection selection = (StructuredSelection) event.getSelection(); selectionService/* www. j a v a2 s . c om*/ .setSelection(selection.size() == 1 ? selection.getFirstElement() : selection.toArray()); // context.modify(IServiceConstants.ACTIVE_SELECTION, selection.size() == 1 ? selection.getFirstElement() : selection.toArray()); } }); IObservableFactory setFactory = new IObservableFactory() { public IObservable createObservable(Object element) { if (element instanceof IContainer && ((IContainer) element).exists()) { IObservableSet observableSet = observableSets.get(element); if (observableSet == null) { observableSet = new WritableSet(realm); try { observableSet.addAll(Arrays.asList(((IContainer) element).members())); } catch (CoreException e) { // TODO Auto-generated catch block e.printStackTrace(); } observableSets.put((IContainer) element, observableSet); } return observableSet; } return Observables.emptyObservableSet(); } }; viewer.setContentProvider(new ObservableSetTreeContentProvider(setFactory, new TreeStructureAdvisor() { public Boolean hasChildren(Object element) { return Boolean.valueOf(element instanceof IContainer); } })); viewer.setLabelProvider(new LabelProvider() { public String getText(Object element) { if (element instanceof IResource) return ((IResource) element).getName(); return element == null ? "" : element.toString(); } }); viewer.setSorter(new ViewerSorter()); viewer.setInput(workspace.getRoot()); viewer.addOpenListener(new IOpenListener() { public void open(OpenEvent event) { MapleIDEApplication app = (MapleIDEApplication) application; IStructuredSelection s = (IStructuredSelection) event.getSelection(); for (Object o : s.toArray()) { if (o instanceof IFile) { IFile f = (IFile) o; context.set(IFile.class, f); String fExt = f.getFileExtension(); EDITOR: for (EditorPartDescriptor desc : app.getEditorPartDescriptors()) { for (String ext : desc.getFileextensions()) { if (ext.equals(fExt)) { context.set(EditorPartDescriptor.class, desc); System.err.println("Opening with: " + desc); Command cmd = commandService .getCommand("com.baremetalstudios.mapleide.command.openeditor"); // Command cmd = commandService.getCommand("simpleide.command.openeditor"); ParameterizedCommand pCmd = ParameterizedCommand.generateCommand(cmd, null); handlerService.executeHandler(pCmd); break EDITOR; } } } } } } }); setupContextMenu(viewer, parent.getShell()); workspace.addResourceChangeListener(listener); }
From source file:com.bdaum.zoom.ui.internal.dialogs.ConfigureColumnsDialog.java
License:Open Source License
@SuppressWarnings("unused") private TreeViewer createMetaDataGroup(Composite composite) { ExpandCollapseGroup expandCollapseGroup = new ExpandCollapseGroup(composite, SWT.NONE); new Label(composite, SWT.NONE); new Label(composite, SWT.NONE); final TreeViewer viewer = new TreeViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); expandCollapseGroup.setViewer(viewer); viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); viewer.setLabelProvider(new MetadataLabelProvider()); viewer.setContentProvider(new MetadataContentProvider()); viewer.setComparator(ZViewerComparator.INSTANCE); UiUtilities.installDoubleClickExpansion(viewer); viewer.addFilter(new ViewerFilter() { @Override/*from www .j av a 2s.c o m*/ public boolean select(Viewer aViewer, Object parentElement, Object element) { if (element instanceof QueryField) { QueryField qfield = (QueryField) element; return qfield.hasChildren() || element != QueryField.EXIF_MAKERNOTES && qfield.isUiField() && !columnFields.contains(element); } return false; } }); viewer.setInput(QueryField.ALL); viewer.expandToLevel(2); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateButtons(); } }); return viewer; }
From source file:com.bdaum.zoom.ui.internal.dialogs.ExhibitionEditDialog.java
License:Open Source License
private TreeViewer createDetailViewer(Composite parent, boolean frame) { TreeViewer viewer = new TreeViewer(parent, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); Tree tree = viewer.getTree();/*from w w w. j a v a2 s .c om*/ GridData gd_tree = new GridData(SWT.FILL, SWT.FILL, true, true); gd_tree.heightHint = 300; tree.setLayoutData(gd_tree); tree.setLinesVisible(true); tree.setHeaderVisible(true); createColumn(viewer, 0, 210, Messages.ExhibitionEditDialog_item, SWT.LEFT, frame); createColumn(viewer, 1, 60, Messages.ExhibitionEditDialog_x, SWT.RIGHT, frame); createColumn(viewer, 2, 60, Messages.ExhibitionEditDialog_y, SWT.RIGHT, frame); createColumn(viewer, 3, 60, Messages.ExhibitionEditDialog_w, SWT.RIGHT, frame); createColumn(viewer, 4, 60, Messages.ExhibitionEditDialog_h, SWT.RIGHT, frame); createColumn(viewer, 5, 40, Messages.ExhibitionEditDialog_dpi, SWT.RIGHT, frame); createColumn(viewer, 6, 100, "", SWT.LEFT, frame); //$NON-NLS-1$ viewer.setContentProvider(new ITreeContentProvider() { public void inputChanged(Viewer aViewer, Object oldInput, Object newInput) { // do nothing } public void dispose() { // do nothing } public Object[] getElements(Object inputElement) { if (inputElement instanceof Exhibition) return ((Exhibition) inputElement).getWall().toArray(); return EKPTY; } public boolean hasChildren(Object element) { if (element instanceof Wall) return !((Wall) element).getExhibit().isEmpty(); return false; } public Object getParent(Object element) { if (element instanceof Exhibit) return dbManager.obtainById(WallImpl.class, ((Exhibit) element).getWall_exhibit_parent()); return null; } public Object[] getChildren(Object parentElement) { if (parentElement instanceof Wall) { List<String> ids = ((Wall) parentElement).getExhibit(); List<ExhibitImpl> list = new ArrayList<ExhibitImpl>(ids.size()); for (String id : ids) { ExhibitImpl obj = dbManager.obtainById(ExhibitImpl.class, id); if (obj != null) list.add(obj); } return list.toArray(); } return EKPTY; } }); viewer.setComparator(new ZViewerComparator() { @Override public int compare(Viewer aViewer, Object e1, Object e2) { if (e1 instanceof Wall && e2 instanceof Wall) { return UiUtilities.stringComparator.compare(((Wall) e1).getLocation(), ((Wall) e2).getLocation()); } else if (e1 instanceof Exhibit && e2 instanceof Exhibit) { int x1 = ((Exhibit) e1).getX(); int x2 = ((Exhibit) e2).getX(); return x1 == x2 ? 0 : x1 < x2 ? -1 : 1; } return super.compare(aViewer, e1, e2); } }); UiUtilities.installDoubleClickExpansion(viewer); return viewer; }
From source file:com.bdaum.zoom.ui.internal.preferences.MetadataPreferencePage.java
License:Open Source License
private TreeViewer createTolerancesViewer(Composite comp) { ExpandCollapseGroup toleranceExpandCollapseGroup = new ExpandCollapseGroup(comp, SWT.NONE); final TreeViewer viewer = new TreeViewer(comp, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION); viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); toleranceExpandCollapseGroup.setViewer(viewer); viewer.getTree().setLinesVisible(true); TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.NONE); col1.getColumn().setWidth(250);//from ww w. j a v a2 s . co m col1.setLabelProvider(new MetadataLabelProvider()); TreeViewerColumn col2 = new TreeViewerColumn(viewer, SWT.NONE); col2.getColumn().setWidth(80); final ToleranceLabelProvider labelProvider = new ToleranceLabelProvider(); col2.setLabelProvider(labelProvider); col2.setEditingSupport(new EditingSupport(viewer) { @Override protected void setValue(Object element, Object value) { if (element instanceof QueryField) { QueryField qfield = (QueryField) element; String key = qfield.getKey(); String s = String.valueOf(value); float v; if (s.endsWith("%")) //$NON-NLS-1$ v = Integer.parseInt(s.substring(0, s.length() - 1).trim()); else try { af.setMaximumFractionDigits(8); v = -af.parse(s.trim()).floatValue(); if (qfield.getType() == QueryField.T_DATE) v = 1000 * v; } catch (ParseException e) { v = 0f; } toleranceMap.put(key, v); viewer.update(element, null); } } @Override protected Object getValue(Object element) { String text = labelProvider.getText(element); if (text.endsWith(SEC)) return text.substring(0, text.length() - SEC.length()); return text; } @Override protected CellEditor getCellEditor(Object element) { if (element instanceof QueryField) { final int type = ((QueryField) element).getType(); TextCellEditor editor = new TextCellEditor(viewer.getTree()); editor.setValidator(new ICellEditorValidator() { public String isValid(Object value) { String s = String.valueOf(value); if (s.endsWith("%")) { //$NON-NLS-1$ try { if (Integer.parseInt(s.substring(0, s.length() - 1).trim()) < 0) return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$ if (type == QueryField.T_DATE) return Messages .getString("MetadataPreferencePage.percent_not_allowed_for_date"); //$NON-NLS-1$ return null; } catch (NumberFormatException e) { return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$ } } if (type == QueryField.T_POSITIVEINTEGER || type == QueryField.T_INTEGER) { try { if (Integer.parseInt(s.substring(0, s.length() - 1).trim()) < 0) return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$ return null; } catch (NumberFormatException e) { return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$ } } else if (type == QueryField.T_POSITIVELONG || type == QueryField.T_LONG) { try { if (Long.parseLong(s.substring(0, s.length() - 1).trim()) < 0) return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$ return null; } catch (NumberFormatException e) { return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$ } } try { af.setMaximumFractionDigits(8); if (af.parse(s.trim()).floatValue() < 0) return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$ return null; } catch (ParseException e) { return Messages.getString("MetadataPreferencePage.bad_floating_point"); //$NON-NLS-1$ } } }); return editor; } return null; } @Override protected boolean canEdit(Object element) { if (element instanceof QueryField) return ((QueryField) element).getTolerance() != 0f; return false; } }); viewer.setContentProvider(new MetadataContentProvider()); viewer.setComparator(ZViewerComparator.INSTANCE); UiUtilities.installDoubleClickExpansion(viewer); viewer.setFilters(new ViewerFilter[] { new ViewerFilter() { @Override public boolean select(Viewer aViewer, Object parentElement, Object element) { if (element instanceof QueryField) { QueryField qfield = (QueryField) element; return (qfield.hasChildren() || qfield.isUiField()) && hostsToleranceValue((QueryField) element); } return false; } private boolean hostsToleranceValue(QueryField qfield) { if (qfield.getTolerance() != 0f) return true; for (QueryField child : qfield.getChildren()) if (hostsToleranceValue(child)) return true; return false; } } }); return viewer; }
From source file:com.boothen.jsonedit.outline.JsonContentOutlinePage.java
License:Open Source License
@Override public void createControl(Composite parent) { super.createControl(parent); TreeViewer viewer = getTreeViewer(); viewer.setContentProvider(fContentProvider); DelegatingStyledCellLabelProvider delegatingStyledCellLabelProvider = new DelegatingStyledCellLabelProvider( new JsonLabelProvider()); viewer.setLabelProvider(delegatingStyledCellLabelProvider); getSite().getPage().addPostSelectionListener(this); if (fInput != null) { viewer.setInput(fInput);/*w w w.j a v a2 s . c o m*/ fContentProvider.setInput(fInput); } }
From source file:com.diffplug.common.swt.jface.ViewerMisc.java
License:Apache License
/** Sets an {@link ITreeContentProvider} implemented by the given {@link TreeDef.Parented}. */ @SuppressWarnings("unchecked") public static <T> void setTreeContentProvider(TreeViewer viewer, TreeDef.Parented<T> treeDef) { viewer.setContentProvider(new ITreeContentProvider() { @Override/*w w w .j a v a 2s. c om*/ public Object[] getElements(Object inputElement) { return getChildren(inputElement); } @Override public Object[] getChildren(Object parentElement) { return treeDef.childrenOf((T) parentElement).toArray(); } @Override public Object getParent(Object element) { return treeDef.parentOf((T) element); } @Override public boolean hasChildren(Object element) { return !treeDef.childrenOf((T) element).isEmpty(); } @Override public void dispose() { } @Override public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); }