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

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

Introduction

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

Prototype

public void setChildCount(final Object elementOrTreePath, final int count) 

Source Link

Document

For a TreeViewer with a tree with the VIRTUAL style bit set, set the number of children of the given element or tree path.

Usage

From source file:fr.inria.atlanmod.neoemf.eclipse.ui.editors.LazyAdapterFactoryContentProvider.java

License:Open Source License

@Override
public void updateElement(Object parent, int index) {
    TreeViewer tViewer = (TreeViewer) viewer;
    if (parent instanceof ResourceSet) {
        ResourceSet rSet = (ResourceSet) parent;
        Resource childResource = rSet.getResources().get(index);
        tViewer.replace(parent, index, childResource);
        tViewer.setChildCount(childResource, childResource.getContents().size());
    }/* www  . java 2  s. c  o  m*/
    if (parent instanceof Resource) {
        Resource r = (Resource) parent;
        EObject child = r.getContents().get(index);
        tViewer.replace(parent, index, child);
        tViewer.setChildCount(child, getChildCount(child));
    }
    if (parent instanceof PersistentEObject) {
        PersistentEObject e = (PersistentEObject) parent;
        EObject child = e.eContents().get(index);
        tViewer.replace(parent, index, child);
        tViewer.setChildCount(child, getChildCount(child));
    }

}

From source file:fr.inria.atlanmod.neoemf.eclipse.ui.editors.LazyAdapterFactoryContentProvider.java

License:Open Source License

@Override
public void updateChildCount(Object element, int currentChildCount) {
    TreeViewer tViewer = (TreeViewer) viewer;
    if (element instanceof ResourceSet) {
        ResourceSet rSet = (ResourceSet) element;
        tViewer.setChildCount(element, rSet.getResources().size());
    }//  w ww. j  a  v a 2  s .  c o  m
    if (element instanceof Resource) {
        Resource r = (Resource) element;
        tViewer.setChildCount(element, r.getContents().size());
    }
    if (element instanceof PersistentEObject) {
        PersistentEObject e = (PersistentEObject) element;
        tViewer.setChildCount(element, getChildCount(e));
    }
}

From source file:org.eclipse.andmore.android.db.core.ui.LoadingJobListener.java

License:Apache License

@Override
public void done(IJobChangeEvent event) {
    AndmoreDatabaseExplorerView view = DbCoreActivator.getAndmoreDatabaseExplorerView();
    if (view != null) {
        final TreeViewer treeViewer = view.getTreeViewer();
        Job job = event.getJob();//from  w  ww .  j  av a2  s  . com
        if (job instanceof AbstractLoadingNodeJob) {
            AbstractLoadingNodeJob loadingNodeJob = (AbstractLoadingNodeJob) job;
            ITreeNode node = loadingNodeJob.getNode();

            // Job is done, so we can set the loading flag to false.
            node.setLoading(false);
            final ITreeNode[] treeNodeContainer = { node };

            // TreeViewer operations must be executed on the UI Thread.
            Display.getDefault().syncExec(new Runnable() {
                @Override
                public void run() {
                    ITreeNode node = treeNodeContainer[0];
                    List<ITreeNode> children = node.getChildren();
                    if (PluginUtils.getOS() != PluginUtils.OS_LINUX) {
                        treeViewer.setChildCount(node, 0);
                    }
                    int size = children.size();
                    if (size > 0) {
                        ((ILazyTreeContentProvider) treeViewer.getContentProvider()).updateElement(node, 0); // Force
                        // removal
                        // of
                        // loading
                        // node.
                    }
                    // updating the child count is sufficient to allow the
                    // tree to call the content provider and retrieve the
                    // new nodes.
                    treeViewer.setChildCount(node, size);
                    // updating the node so if needed the label/icon will be
                    // updated
                    treeViewer.update(node, null);
                }
            });
        }
        super.done(event);
    }
}

From source file:org.eclipse.n4js.ui.preferences.external.ExternalLibraryTreeContentProvider.java

License:Open Source License

@Override
public void updateElement(final Object parent, final int index) {
    if (treeViewerRef.isPresent()) {
        final TreeViewer treeViewer = treeViewerRef.get();
        if (parent instanceof Iterable) {
            final Object child = Iterables.get((Iterable<?>) parent, index);
            treeViewer.replace(parent, index, child);
            if (child instanceof FileURI) {
                treeViewer.setChildCount(child, getProjects((FileURI) child).size());
            }/*from ww  w  .j  a  va  2s  .  c  o m*/
        } else if (parent instanceof FileURI) {
            final IN4JSProject child = getProjects((FileURI) parent).get(index);
            treeViewer.replace(parent, index, child);
        }
    }
}

From source file:org.eclipse.n4js.ui.preferences.external.ExternalLibraryTreeContentProvider.java

License:Open Source License

@Override
public void updateChildCount(final Object element, final int currentChildCount) {
    if (treeViewerRef.isPresent()) {
        final TreeViewer treeViewer = treeViewerRef.get();
        if (element instanceof Iterable) {
            treeViewer.setChildCount(element, Iterables.size((Iterable<?>) element));
        } else if (element instanceof FileURI) {
            treeViewer.setChildCount(element, getProjects((FileURI) element).size());
        } else {//  w ww  .  ja va2 s.c  om
            treeViewer.setChildCount(element, 0);
        }
    }
}

From source file:org.fusesource.ide.zk.core.viewers.TreeViewerType.java

License:Apache License

@Override
public void setChildCount(StructuredViewer viewer, Object element, int childCount) {
    TreeViewer treeViewer = (TreeViewer) viewer;
    treeViewer.setChildCount(element, childCount);
}