List of usage examples for org.eclipse.jface.viewers TreeViewer remove
public void remove(final Object parentOrTreePath, final int index)
From source file:de.walware.ecommons.workbench.search.ui.TextSearchResultTreeContentProvider.java
License:Open Source License
protected void removeElement(final TreeViewer viewer, final E element, final int idx) { viewer.remove(TreePath.EMPTY, idx); }
From source file:ext.org.eclipse.jdt.internal.ui.model.JavaSynchronizationContentProvider.java
License:Open Source License
/** * Handles a diff change event./*from ww w .j a v a2 s . co m*/ * * @param event * the event */ private void handleChange(final IDiffChangeEvent event) { final Set<IJavaProject> existing = getVisibleProjects(); // Get all existing and open projects that contain changes // and determine what needs to be done to the project // (i.e. add, remove or refresh) final IJavaProject[] changed = getChangedProjects(event); final List<IJavaProject> refreshes = new ArrayList<IJavaProject>(changed.length); final List<IJavaProject> additions = new ArrayList<IJavaProject>(changed.length); final List<IJavaProject> removals = new ArrayList<IJavaProject>(changed.length); for (int index = 0; index < changed.length; index++) { final IJavaProject project = changed[index]; if (hasVisibleChanges(event.getTree(), project)) { if (existing.contains(project)) refreshes.add(project); else additions.add(project); } else removals.add(project); } // Remove any java projects that correspond to deleted or closed projects final Set<IProject> removed = getDeletedProjects(event); for (final Iterator<IJavaProject> iterator = existing.iterator(); iterator.hasNext();) { final IJavaProject element = iterator.next(); if (removed.contains(element.getResource())) removals.add(element); } if (!removals.isEmpty() || !additions.isEmpty() || !refreshes.isEmpty()) { final TreeViewer viewer = (TreeViewer) getViewer(); final Tree tree = viewer.getTree(); try { tree.setRedraw(false); if (!additions.isEmpty()) viewer.add(viewer.getInput(), additions.toArray()); if (!removals.isEmpty()) viewer.remove(viewer.getInput(), removals.toArray()); if (!refreshes.isEmpty()) { for (final Iterator<IJavaProject> iter = refreshes.iterator(); iter.hasNext();) viewer.refresh(iter.next()); } } finally { tree.setRedraw(true); } } }
From source file:oic.simulator.clientcontroller.view.LogView.java
License:Open Source License
public LogView() { logListener = new ILogUIListener() { @Override//from ww w .j av a 2 s.co m public void logChanged(final List<LogEntry> entry) { Display.getDefault().asyncExec(new Runnable() { @Override public void run() { TreeViewer viewer = tree.getViewer(); if (viewer.getControl().isDisposed()) { return; } viewer.setInput(entry); updateTree(false); } }); } @Override public void logAdded(final LogEntry added) { Display.getDefault().asyncExec(new Runnable() { @Override public void run() { TreeViewer viewer = tree.getViewer(); if (viewer.getControl().isDisposed()) { return; } LogContentProvider provider = (LogContentProvider) viewer.getContentProvider(); provider.addLog(added); tree.getViewer().add(viewer.getInput(), added); @SuppressWarnings("unchecked") List<LogEntry> input = (List<LogEntry>) viewer.getInput(); if (input.size() > Constants.LOG_SIZE) { viewer.remove(viewer.getInput(), 0); } updateTree(true); } }); } private void updateTree(boolean needscroll) { if (activateOnChange) { IWorkbenchPage page = Activator.getDefault().getWorkbench().getActiveWorkbenchWindow() .getActivePage(); if (page != null) { page.bringToTop(LogView.this); } } if (scrollLockDisabled && needscroll) { Tree tree2 = tree.getViewer().getTree(); if (tree2.getItemCount() > 0) { TreeItem item = tree2.getItem(tree2.getItemCount() - 1); tree2.setTopItem(item); deleteLogAction.setEnabled(true); } } } }; logManager = Activator.getDefault().getLogManager(); // Initially state of scroll lock scrollLockDisabled = true; }
From source file:oic.simulator.serviceprovider.view.LogView.java
License:Open Source License
public LogView() { logListener = new ILogListener() { @Override/* w w w.j a v a 2s.c o m*/ public void logChanged(final List<LogEntry> entry) { Display.getDefault().asyncExec(new Runnable() { @Override public void run() { TreeViewer viewer = tree.getViewer(); if (viewer.getControl().isDisposed()) { return; } viewer.setInput(entry); updateTree(false); } }); } @Override public void logAdded(final LogEntry added) { Display.getDefault().asyncExec(new Runnable() { @Override public void run() { TreeViewer viewer = tree.getViewer(); if (viewer.getControl().isDisposed()) { return; } LogContentProvider provider = (LogContentProvider) viewer.getContentProvider(); provider.addLog(added); tree.getViewer().add(viewer.getInput(), added); @SuppressWarnings("unchecked") List<LogEntry> input = (List<LogEntry>) viewer.getInput(); if (input.size() > Constants.LOG_SIZE) { viewer.remove(viewer.getInput(), 0); } updateTree(true); } }); } private void updateTree(boolean needscroll) { if (activateOnChange) { IWorkbenchPage page = Activator.getDefault().getWorkbench().getActiveWorkbenchWindow() .getActivePage(); if (page != null) { page.bringToTop(LogView.this); } } if (scrollLockDisabled && needscroll) { Tree tree2 = tree.getViewer().getTree(); if (tree2.getItemCount() > 0) { TreeItem item = tree2.getItem(tree2.getItemCount() - 1); tree2.setTopItem(item); deleteLogAction.setEnabled(true); } } } }; logManager = Activator.getDefault().getLogManager(); // Initially state of scroll lock scrollLockDisabled = true; }
From source file:org.eclipse.team.examples.model.ui.mapping.ModelSyncContentProvider.java
License:Open Source License
void handleChange(IDiffChangeEvent event) { Set existingProjects = getVisibleModelProjects(); IProject[] changedProjects = getChangedModelProjects(event); List refreshes = new ArrayList(changedProjects.length); List additions = new ArrayList(changedProjects.length); List removals = new ArrayList(changedProjects.length); for (int i = 0; i < changedProjects.length; i++) { IProject project = changedProjects[i]; if (hasVisibleChanges(event.getTree(), project)) { if (existingProjects.contains(project)) { refreshes.add(ModelObject.create(project)); } else { additions.add(ModelObject.create(project)); }/*from ww w . j a va2s.c o m*/ } else if (existingProjects.contains(project)) { removals.add(ModelObject.create(project)); } } if (!removals.isEmpty() || !additions.isEmpty() || !refreshes.isEmpty()) { TreeViewer viewer = (TreeViewer) getViewer(); Tree tree = viewer.getTree(); try { tree.setRedraw(false); if (!additions.isEmpty()) viewer.add(viewer.getInput(), additions.toArray()); if (!removals.isEmpty()) viewer.remove(viewer.getInput(), removals.toArray()); if (!refreshes.isEmpty()) { for (Iterator iter = refreshes.iterator(); iter.hasNext();) { Object element = iter.next(); viewer.refresh(element); } } } finally { tree.setRedraw(true); } } }
From source file:org.eclipse.team.internal.ui.mapping.ResourceModelContentProvider.java
License:Open Source License
private void handleChange(IDiffChangeEvent event) { List refreshes = new ArrayList(); List additions = new ArrayList(); List removals = new ArrayList(); if (isFlatPresentation()) { Set existingResources = getVisibleResources(); IResource[] changedResources = getChangedResources(event, existingResources); for (int i = 0; i < changedResources.length; i++) { IResource resource = changedResources[i]; if (event.getTree().getDiff(resource.getFullPath()) != null) { if (existingResources.contains(resource)) { refreshes.add(resource); } else { additions.add(resource); }/*from w w w . j a v a2 s . c om*/ } else if (existingResources.contains(resource)) { removals.add(resource); } } } else { IProject[] changedProjects = getChangedProjects(event); Set existingProjects = getVisibleProjects(); for (int i = 0; i < changedProjects.length; i++) { IProject project = changedProjects[i]; if (hasVisibleChanges(event.getTree(), project)) { if (existingProjects.contains(project)) { refreshes.add(project); } else { additions.add(project); } } else if (existingProjects.contains(project)) { removals.add(project); } } } if (!removals.isEmpty() || !additions.isEmpty() || !refreshes.isEmpty()) { TreeViewer viewer = (TreeViewer) getViewer(); Tree tree = viewer.getTree(); try { tree.setRedraw(false); if (!additions.isEmpty()) viewer.add(viewer.getInput(), additions.toArray()); if (!removals.isEmpty()) viewer.remove(viewer.getInput(), removals.toArray()); if (!refreshes.isEmpty()) { for (Iterator iter = refreshes.iterator(); iter.hasNext();) { Object element = iter.next(); viewer.refresh(element); } } } finally { tree.setRedraw(true); } } }
From source file:org.eclipse.wst.jsdt.internal.ui.model.JavaSynchronizationContentProvider.java
License:Open Source License
/** * Handles a diff change event./* w ww . j ava 2 s. co m*/ * * @param event * the event */ private void handleChange(final IDiffChangeEvent event) { final Set existing = getVisibleProjects(); // Get all existing and open projects that contain changes // and determine what needs to be done to the project // (i.e. add, remove or refresh) final IJavaScriptProject[] changed = getChangedProjects(event); final List refreshes = new ArrayList(changed.length); final List additions = new ArrayList(changed.length); final List removals = new ArrayList(changed.length); for (int index = 0; index < changed.length; index++) { final IJavaScriptProject project = changed[index]; if (hasVisibleChanges(event.getTree(), project)) { if (existing.contains(project)) refreshes.add(project); else additions.add(project); } else removals.add(project); } // Remove any java projects that correspond to deleted or closed projects final Set removed = getDeletedProjects(event); for (final Iterator iterator = existing.iterator(); iterator.hasNext();) { final IJavaScriptProject element = (IJavaScriptProject) iterator.next(); if (removed.contains(element.getResource())) removals.add(element); } if (!removals.isEmpty() || !additions.isEmpty() || !refreshes.isEmpty()) { final TreeViewer viewer = (TreeViewer) getViewer(); final Tree tree = viewer.getTree(); try { tree.setRedraw(false); if (!additions.isEmpty()) viewer.add(viewer.getInput(), additions.toArray()); if (!removals.isEmpty()) viewer.remove(viewer.getInput(), removals.toArray()); if (!refreshes.isEmpty()) { for (final Iterator iter = refreshes.iterator(); iter.hasNext();) viewer.refresh(iter.next()); } } finally { tree.setRedraw(true); } } }
From source file:org.embl.cca.utils.ui.widget.support.treeviewer.TreeContentProvider.java
License:Apache License
@Override public void childrenReady(final TreeNode node, final TreeNodeState result, final TreeNode[] previousChildren) { synchronized (node.nodePathRequests) { try {/*from ww w . ja v a2 s .co m*/ final TreeViewer treeViewer = getTreeViewer(); // final long t1 = System.nanoTime(); switch (result) { case TREENODE_FILLED: // System.out.println("FolderListerJob: before adding children, this: " + TreeNode.this.toString()); treeViewer.remove(node, previousChildren); treeViewer.add(node, node.listChildren); // System.out.println("BP1* treeNodes added, " + TreeNode.this.toString()); // System.out.println("FolderListerJob: after adding children, this: " + TreeNode.this.toString()); // treeViewer.refresh(TreeNode.this, false); treeViewer.expandToLevel(node, 1); //Tell TV: show children of node (user asked) // final FileSystemEntryNode fsen = (FileSystemEntryNode)node; final Iterator<Entry<List<TreeNode>, TreeNodeRequest>> it = node.nodePathRequests.entrySet() .iterator(); while (it.hasNext()) { final Entry<List<TreeNode>, TreeNodeRequest> nodePathAndRequest = it.next(); List<TreeNode> nodePath = nodePathAndRequest.getKey(); if (nodePath.size() == 0) finishRequest(nodePathAndRequest.getValue(), node); else requestForPath(nodePathAndRequest.getValue(), null, nodePath); } break; case TREENODE_NOT_FILLABLE: treeViewer.expandToLevel(node, 1); //Tell TV: show children of node (user asked) // long t2 = System.nanoTime(); // System.out.println("Filling node took " + (t2-t1)/1000000000. + " sec"); System.out.println( "! " + this.getClass().getName() + ".childrenReady, in TREENODE_NOT_FILLABLE branch"); break; case TREENODE_NOT_EXISTING: treeViewer.refresh(node.getParent(), false); //Tell TV: parent does not have this child break; } fireNodeReady(node.identifier, result); } finally { node.nodePathRequests.clear(); debug(); } } }