private void initContextualView(IEditorPart editor) { if (editor == null) { return; } IFile file = editor.getEditorInput().getAdapter(IFile.class); TreeViewer treeViewer = ContextualView.getTreeViewer(); if (treeViewer != null) { // Finding all markers in given file. ArrayList<IMarker> allMarkers; allMarkers = MarkerFactory.findMarkersAsArrayList(file); if (allMarkers == null) { return; } Iterator<IMarker> iter = allMarkers.iterator(); while (iter.hasNext()) { IMarker marker = iter.next(); if (MarkUtilities.getLeaderId(marker) == null && MarkUtilities.getGroupId(marker) != null) { iter.remove(); } } if (!treeViewer.getTree().isDisposed()) { treeViewer.setInput(allMarkers.toArray()); } treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); } }
@Override public void doubleClick(DoubleClickEvent event) { final IStructuredSelection selection = (IStructuredSelection) event.getSelection(); if (selection == null || selection.isEmpty()) return; final Object sel = selection.getFirstElement(); final ITreeContentProvider provider = (ITreeContentProvider) viewer.getContentProvider(); if (!provider.hasChildren(sel)) return; if (viewer.getExpandedState(sel)) viewer.collapseToLevel(sel, AbstractTreeViewer.ALL_LEVELS); else viewer.expandToLevel(sel, 1); }
/** * Creates tree viewer to manage content * * @param parent * parent control */ private void createTreeViewer(Composite parent) { int style = SWT.H_SCROLL | SWT.V_SCROLL; // Create the tree Tree widget = new Tree(parent, style); // Configure the layout GridData data = new GridData(GridData.FILL_BOTH); data.heightHint = widget.getItemHeight() * 12; widget.setLayoutData(data); treeViewer = new TreeViewer(widget); namePatternFilter = new QuickOutlineNamePatternFilter(); treeViewer.addFilter(namePatternFilter); treeContentProvider = getContentProvider(); treeViewer.setContentProvider(treeContentProvider); treeLabelProvider = getLabelProvider(); treeViewer.setLabelProvider(treeLabelProvider); treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); treeViewer.setUseHashlookup(true); treeViewer.setInput(getInitialInput()); }
@Override public boolean isElementVisible(Viewer viewer, Object element) { boolean hasChildren= ((ITreeContentProvider) ((AbstractTreeViewer) viewer).getContentProvider()).hasChildren(element); if (fIsDeepFiltering) { if (!super.isElementVisible(viewer, element)) return false; // Also apply deep filtering to the other registered filters ViewerFilter[] filters= ((TreeViewer)viewer).getFilters(); for (int i= 0; i < filters.length; i++) { if (filters[i] == this) continue; if (!filters[i].select(viewer, element, element)) return false; } return true; } return hasChildren || isLeafMatch(viewer, element); }
private void postRemove(final Object[] elements) { if (elements.length <= 0) return; postRunnable(new Runnable() { public void run() { Control ctrl= fViewer.getControl(); if (ctrl != null && !ctrl.isDisposed()) { if (fViewer instanceof AbstractTreeViewer) ((AbstractTreeViewer)fViewer).remove(elements); else if (fViewer instanceof ListViewer) ((ListViewer)fViewer).remove(elements); else if (fViewer instanceof TableViewer) ((TableViewer)fViewer).remove(elements); } } }); }
@Override public void createControl(Composite parent) { super.createControl(parent); viewer = getTreeViewer(); contentProvider = new TreeNodeContentProvider(); viewer.setContentProvider(contentProvider); labelProvider = new TextUMLLabelProvider(); viewer.setLabelProvider(labelProvider); // disabled: used to make elements to show sorted by type // viewer.setComparator(new UIModelObjectViewerComparator()); viewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); // tracks selections in the outline and reflects them in the editor viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { TreeSelection selection = (TreeSelection) event.getSelection(); if (!selection.isEmpty()) { TreeNode treeNode = (TreeNode) selection.getFirstElement(); UIModelObject model = (UIModelObject) treeNode.getValue(); selectInEditor(model.getToken()); } } }); refresh(); }
private void expandNodeAfterCreation( NotificationEvent ev ) { if ( ev instanceof ContentEvent && ev.getEventType( ) == NotificationEvent.CONTENT_EVENT && ( (ContentEvent) ev ).getAction( ) == ContentEvent.ADD ) { IDesignElement element = ( (ContentEvent) ev ).getContent( ); if ( element != null ) { final DesignElementHandle handle = element.getHandle( input.getModule( ) ); groupViewer.expandToLevel( handle, AbstractTreeViewer.ALL_LEVELS ); groupViewer.setSelection( new StructuredSelection( handle ), true ); refresh( ); } } }
/** * Tests if the specified element is on the given tree viewer * * @param treeViewer * the tree viewer * @param element * the element * * @return true if the element is on the tree, or false else. */ public static boolean containElement( AbstractTreeViewer treeViewer, Object element ) { ITreeContentProvider provider = (ITreeContentProvider) treeViewer.getContentProvider( ); Object input = treeViewer.getInput( ); if ( input instanceof Object[] ) { Object[] inputs = (Object[]) input; for ( int i = 0; i < inputs.length; i++ ) { if ( containElement( inputs[i], provider, element ) ) { return true; } } return false; } return containElement( input, provider, element ); }
protected TreeViewer createTreeViewer(Composite parent) { int style = SWT.V_SCROLL | SWT.H_SCROLL; TreeViewer treeViewer = new TreeViewer(parent, SWT.SINGLE | (style & ~SWT.MULTI)); // Hard-coded filters treeViewer.addFilter(new NamePatternFilter()); treeViewer.setContentProvider(getContentProvider()); treeViewer.setLabelProvider(new TapestryDecoratingLabelProvider()); treeViewer.setSorter(new NameSorter()); treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); treeViewer.setInput(this); Tree tree = treeViewer.getTree(); GridData gd = new GridData(GridData.FILL_BOTH); gd.heightHint = tree.getItemHeight() * 12; tree.setLayoutData(gd); return treeViewer; }
public void createControl(Composite parent) { super.createControl(parent); TreeViewer treeViewer = getTreeViewer(); treeViewer.setLabelProvider(new ItpLabelProvider()); treeViewer.setContentProvider(new CommonContentProvider()); treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (!(event.getSelection() instanceof IStructuredSelection)) return; IStructuredSelection selection = (IStructuredSelection)event.getSelection(); if (selection.size() != 1) return; Object element = selection.getFirstElement(); if (element instanceof SegmentGroup) return; if (!(element instanceof CommonElement)) return; CommonElement commonElement = (CommonElement)element; if (commonElement.getLength() == -1) return; fEditor.selectAndReveal(commonElement.getOffset(), commonElement.getLength()); } }); setModel(fEditor.getModel()); }
public void createControl(Composite parent) { super.createControl(parent); TreeViewer treeViewer = getTreeViewer(); treeViewer.setLabelProvider(new DefLabelProvider()); treeViewer.setContentProvider(new CommonContentProvider()); treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (!(event.getSelection() instanceof IStructuredSelection)) return; IStructuredSelection selection = (IStructuredSelection)event.getSelection(); if (selection.size() != 1) return; Object element = selection.getFirstElement(); if (element instanceof SegmentGroup) return; if (!(element instanceof CommonElement)) return; CommonElement cElement = (CommonElement)element; fEditor.selectAndReveal(cElement.getOffset(), cElement.getLength()); } }); setModel(fEditor.getModel()); }
public KeyTreeViewer ( final Composite parent ) { this.resourceManager = new LocalResourceManager ( JFaceResources.getResources ( parent.getDisplay () ), parent ); this.viewer = new TreeViewer ( parent ); this.viewer.getControl ().setLayoutData ( new GridData ( SWT.FILL, SWT.FILL, true, true ) ); this.viewer.setAutoExpandLevel ( AbstractTreeViewer.ALL_LEVELS ); this.contentProvider = new ObservableListTreeContentProvider ( new FactoryImpl (), null ); this.viewer.setContentProvider ( this.contentProvider ); this.viewer.setLabelProvider ( this.labelProvider = new LabelProviderImpl ( this.resourceManager, this.contentProvider.getRealizedElements () ) ); }
public static void expandAll(final TreeViewer treeViewer, final SchemaNode node) { BusyIndicator.showWhile(Display.getCurrent(), new Runnable() { @Override public void run() { try { treeViewer.getTree().setRedraw(false); treeViewer.expandToLevel(node, AbstractTreeViewer.ALL_LEVELS); } finally { treeViewer.getTree().setRedraw(true); } } }); }
public static void collapseAll(final TreeViewer treeViewer, final SchemaNode node) { BusyIndicator.showWhile(Display.getCurrent(), new Runnable() { @Override public void run() { try { treeViewer.getTree().setRedraw(false); treeViewer.collapseToLevel(node, AbstractTreeViewer.ALL_LEVELS); } finally { treeViewer.getTree().setRedraw(true); } } }); }
@Override public void populate(final TFSRepository repository, final ItemIdentifier id) { final BranchObjectInput input = new BranchObjectInput(repository, id); final TreeViewer viewer = control.getViewer(); viewer.setInput(input); viewer.expandToLevel(input.branch, AbstractTreeViewer.ALL_LEVELS); }
/** * @see org.eclipse.jface.viewers.IDoubleClickListener#doubleClick(org.eclipse.jface.viewers.DoubleClickEvent) */ public void doubleClick(final DoubleClickEvent dce) { if (dce.getSelection() instanceof ITreeSelection) { final ITreeSelection treeSelection = (ITreeSelection) dce.getSelection(); final AbstractTreeViewer treeViewer = (AbstractTreeViewer) dce.getSource(); boolean state = treeViewer.getExpandedState(treeSelection.getPaths()[0]); treeViewer.setExpandedState(treeSelection.getPaths()[0], !state); } if (UserPreferences.getInstance().getBoolean( JpwPreferenceConstants.DOUBLE_CLICK_COPIES_TO_CLIPBOARD)) { cpa.run(); } else { era.run(); } }
private void updateTypeScriptResourcesLabel(IIDETypeScriptProject tsProject) { // he widget may have been destroyed // by the time this is run. Check for this and do nothing if so. Control ctrl = viewer.getControl(); if (ctrl == null || ctrl.isDisposed()) { return; } if (viewer instanceof AbstractTreeViewer) { AbstractTreeViewer treeViewer = (AbstractTreeViewer) viewer; treeViewer.refresh(tsProject, true); } }
/** * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, * java.lang.Object, java.lang.Object) */ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { this.viewer = (AbstractTreeViewer) viewer; if (newInput != null) { this.input = (Element) newInput; } }
private void createObjectTree(Composite container) { lblNewLabel = new Label(container, SWT.NONE); lblNewLabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1)); lblNewLabel.setText("Choose: " + getSelectedGenerator().getContentType()); resourceTree = new CheckboxTreeViewer(container, SWT.BORDER); resourceTree.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); resourceTree.setContentProvider(new WorkspaceTreeContentProvider()); resourceTree.setLabelProvider(new SGenWorkspaceLabelProvider()); TreePropagatingCheckStateListener checkStateListener = new TreePropagatingCheckStateListener(resourceTree) { @Override public void checkStateChanged(CheckStateChangedEvent event) { super.checkStateChanged(event); } }; resourceTree.addCheckStateListener(checkStateListener); resourceTree.addDoubleClickListener(new TreeExpandingDoubleClickListener(resourceTree, checkStateListener)); resourceTree.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); resourceTree.setFilters(new ViewerFilter[] { new ViewerFilter() { @Override public boolean select(Viewer viewer, Object parentElement, Object element) { // TODO: Filter by common navigator filter instead of supressing // '.' prefixed folder if (element instanceof IFolder) { return !((IFolder) element).getName().startsWith("."); } return true; } } }); }
public CollapseAllAction(AbstractTreeViewer aViewer) { fViewer = aViewer; setText(VelocityPlugin.getMessage("VelocityEditor.CollapseAllAction.label")); setToolTipText(VelocityPlugin.getMessage("VelocityEditor.CollapseAllAction.tooltip")); VelocityPluginImages.setLocalImageDescriptors(this, "collapseall.gif"); }
protected void applyExpandHeuristic(String key, String stringToMatch) { ITreeContentProvider cp = (ITreeContentProvider) treeViewer.getContentProvider(); final Object[] rootChildren = cp.getElements(null); if (rootChildren != null && rootChildren.length != 0) { if (rootChildren.length <= 25 && !CommonUtils.isNullOrEmpty(stringToMatch)) { for(Object object : rootChildren) { treeViewer.expandToLevel(object, AbstractTreeViewer.ALL_LEVELS); } } else { treeViewer.collapseAll(); } } }
public void collapseAll() { try { fViewer.getControl().setRedraw(false); fViewer.collapseToLevel(getViewPartInput(), AbstractTreeViewer.ALL_LEVELS); } finally { fViewer.getControl().setRedraw(true); } }
/** * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, * java.lang.Object, java.lang.Object) */ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { if (oldInput instanceof TreeRoot) { MethodWrapper[] roots = ((TreeRoot) oldInput).getRoots(); cancelJobs(roots); } if (viewer instanceof AbstractTreeViewer) { fManager = new DeferredTreeContentManager((AbstractTreeViewer) viewer, fPart.getSite()); } }
@Override public synchronized void elementsChanged(Object[] updatedElements) { if (getSearchResult() == null) return; AbstractTreeViewer viewer= (AbstractTreeViewer) getPage().getViewer(); Set<Object> toRemove= new HashSet<Object>(); Set<Object> toUpdate= new HashSet<Object>(); Map<Object, Set<Object>> toAdd= new HashMap<Object, Set<Object>>(); for (int i= 0; i < updatedElements.length; i++) { if (getPage().getDisplayedMatchCount(updatedElements[i]) > 0) insert(toAdd, toUpdate, updatedElements[i]); else remove(toRemove, toUpdate, updatedElements[i]); } viewer.remove(toRemove.toArray()); for (Iterator<Object> iter= toAdd.keySet().iterator(); iter.hasNext();) { Object parent= iter.next(); HashSet<Object> children= (HashSet<Object>) toAdd.get(parent); viewer.add(parent, children.toArray()); } for (Iterator<Object> elementsToUpdate= toUpdate.iterator(); elementsToUpdate.hasNext();) { viewer.refresh(elementsToUpdate.next()); } }
private void addDropAdapters(AbstractTreeViewer viewer) { Transfer[] transfers= new Transfer[] { LocalSelectionTransfer.getInstance(), PluginTransfer.getInstance() }; int ops= DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK | DND.DROP_DEFAULT; DelegatingDropAdapter delegatingDropAdapter= new DelegatingDropAdapter(); delegatingDropAdapter.addDropTargetListener(new TypeHierarchyTransferDropAdapter(this, viewer)); delegatingDropAdapter.addDropTargetListener(new PluginTransferDropAdapter(viewer)); viewer.addDropSupport(ops, transfers, delegatingDropAdapter); }
/** * {@inheritDoc} */ @Override protected TreeViewer createTreeViewer(Composite parent, int style) { Tree tree= new Tree(parent, SWT.SINGLE | (style & ~SWT.MULTI)); GridData gd= new GridData(GridData.FILL_BOTH); gd.heightHint= tree.getItemHeight() * 12; tree.setLayoutData(gd); final TreeViewer treeViewer= new OutlineTreeViewer(tree); // Hard-coded filters treeViewer.addFilter(new NamePatternFilter()); treeViewer.addFilter(new MemberFilter()); fInnerLabelProvider= new OutlineLabelProvider(); fInnerLabelProvider.addLabelDecorator(new ProblemsLabelDecorator(null)); IDecoratorManager decoratorMgr= PlatformUI.getWorkbench().getDecoratorManager(); if (decoratorMgr.getEnabled("org.eclipse.jdt.ui.override.decorator")) //$NON-NLS-1$ fInnerLabelProvider.addLabelDecorator(new OverrideIndicatorLabelDecorator(null)); treeViewer.setLabelProvider(new ColoringLabelProvider(fInnerLabelProvider)); fLexicalSortingAction= new LexicalSortingAction(treeViewer); fSortByDefiningTypeAction= new SortByDefiningTypeAction(treeViewer); fShowOnlyMainTypeAction= new ShowOnlyMainTypeAction(treeViewer); fCategoryFilterActionGroup= new CategoryFilterActionGroup(treeViewer, getId(), getInputForCategories()); fOutlineContentProvider= new OutlineContentProvider(false); treeViewer.setContentProvider(fOutlineContentProvider); fOutlineSorter= new OutlineSorter(); treeViewer.setComparator(fOutlineSorter); treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); treeViewer.getTree().addKeyListener(getKeyAdapter()); return treeViewer; }
private void editUserLibraryElement(CPUserLibraryElement element) { LibraryNameDialog dialog= new LibraryNameDialog(getShell(), element, fLibraryList.getElements()); if (dialog.open() == Window.OK) { CPUserLibraryElement newLibrary= dialog.getNewLibrary(); if (element != null) { fLibraryList.replaceElement(element, newLibrary); } else { fLibraryList.addElement(newLibrary); } fLibraryList.expandElement(newLibrary, AbstractTreeViewer.ALL_LEVELS); fLibraryList.selectElements(new StructuredSelection(newLibrary)); } }
private void postAdd(final Object parent, final Object[] elements) { if (elements == null || elements.length <= 0) return; postRunnable(new Runnable() { public void run() { Control ctrl= fViewer.getControl(); if (ctrl != null && !ctrl.isDisposed()) { Object[] newElements= getNewElements(elements); if (fViewer instanceof AbstractTreeViewer) { if (fViewer.testFindItem(parent) == null) { Object root= ((AbstractTreeViewer)fViewer).getInput(); if (root != null) ((AbstractTreeViewer)fViewer).add(root, newElements); } else ((AbstractTreeViewer)fViewer).add(parent, newElements); } else if (fViewer instanceof ListViewer) ((ListViewer)fViewer).add(newElements); else if (fViewer instanceof TableViewer) ((TableViewer)fViewer).add(newElements); if (fViewer.testFindItem(elements[0]) != null) fBrowsingPart.adjustInputAndSetSelection(elements[0]); } } }); }
private void traverseCheck(TreeItem item, boolean check) { if (check) { tv.expandToLevel(item, AbstractTreeViewer.ALL_LEVELS); } else { tv.collapseToLevel(item, AbstractTreeViewer.ALL_LEVELS); } TreeItem[] items = item.getItems(); for (int i = 0; i < items.length; i++) { items[i].setChecked(check); traverseCheck(items[i], check); } }
@Override public void databaseStateChanged() { filter(); if (viewer != null) { viewer.getControl().getDisplay().asyncExec(new Runnable() { @Override public void run() { viewer.refresh(); if (viewer instanceof TreeViewer) { ((AbstractTreeViewer) viewer).expandAll(); } } }); } }