Example usage for org.eclipse.jface.viewers TreeViewer remove

List of usage examples for org.eclipse.jface.viewers TreeViewer remove

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TreeViewer remove.

Prototype

public void remove(final Object parentOrTreePath, final int index) 

Source Link

Document

Removes the element at the specified index of the parent.

Usage

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();
        }
    }
}