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

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

Introduction

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

Prototype

public void collapseToLevel(Object elementOrTreePath, int level) 

Source Link

Document

Collapses the subtree rooted at the given element or tree path to the given level.

Usage

From source file:org.openmaji.implementation.tool.eclipse.browser.relationship.space.controllers.MeemController.java

License:Open Source License

public void handleDoubleClick(DoubleClickEvent e) {
    TreeViewer viewer = (TreeViewer) getMeemNode().getViewer();
    boolean expanded = viewer.getExpandedState(getNode());
    if (expanded) {
        viewer.collapseToLevel(getNode(), 1);
    } else {// w  w  w.  j a  va 2  s  .  com
        viewer.expandToLevel(getNode(), 1);
        viewer.refresh(getNode());
    }
}

From source file:org.ripla.rap.demo.widgets.views.TreeWidgetsView.java

License:Open Source License

/**
 * TreeWidgetsView constructor.//from  w  w  w.ja  v a  2 s . c  o  m
 * 
 * @param inParent
 *            {@link Composite}
 * @param inTree
 *            {@link TreeObject}
 */
public TreeWidgetsView(final Composite inParent, final TreeObject inTree) {
    super(inParent);
    createTitle(MESSAGES.getMessage("widgets.title.page.tree"));

    LabelHelper.createLabel(this, MESSAGES.getMessage("widgets.view.tree.title"), "ripla-font");

    final TreeViewer lViewer = new TreeViewer(this, SWT.V_SCROLL | SWT.H_SCROLL);
    final Tree lTree = lViewer.getTree();
    lTree.setLayout(GridLayoutHelper.createGridLayout());
    lTree.setData(RWT.CUSTOM_VARIANT, "ripla-font");
    final GridData lLayoutData = GridLayoutHelper.createFillLayoutData();
    lLayoutData.heightHint = 430;
    lTree.setLayoutData(lLayoutData);

    lViewer.setContentProvider(new CountryTreeContentProvider());
    lViewer.setLabelProvider(new CellLabelProvider() {
        @Override
        public void update(final ViewerCell inCell) {
            final TreeObject lCountry = (TreeObject) inCell.getElement();
            inCell.setText(lCountry.getLabel());
        }
    });
    lViewer.expandAll();
    lViewer.setInput(inTree);
    lViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(final SelectionChangedEvent inEvent) {
            final TreeObject lTreeObject = (TreeObject) ((IStructuredSelection) inEvent.getSelection())
                    .getFirstElement();
            if (lTreeObject.hasChildren()) {
                if (lViewer.getExpandedState(lTreeObject)) {
                    lViewer.collapseToLevel(lTreeObject, AbstractTreeViewer.ALL_LEVELS);
                } else {
                    lViewer.expandToLevel(lTreeObject, 1);
                }
            } else {
                popup(lTreeObject.getCountry());
            }
        }
    });

    lTree.forceFocus();
    lTree.select(lTree.getItem(0));
}

From source file:org.xmind.ui.internal.wizards.ChooseLocationInFileSystemWizardPage.java

License:Open Source License

private void createFolderViewer(Composite parent) {
    Label label = new Label(parent, SWT.NONE);
    label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
    label.setText(WizardMessages.NewPage_SelectParent_label);

    final TreeViewer folderViewer = new TreeViewer(parent, SWT.BORDER | SWT.SINGLE);
    folderViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    folderViewer.setContentProvider(new FolderContentProvider());
    folderViewer.setLabelProvider(new FolderLabelProvider());
    folderViewer.setComparator(new ViewerComparator());
    folderViewer.setUseHashlookup(true);
    folderViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            folderSelectionChanged((File) selection.getFirstElement());
        }/*from   w  w w  .  ja va  2 s.c  o  m*/
    });
    folderViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            ISelection selection = event.getSelection();
            if (selection instanceof IStructuredSelection) {
                Object item = ((IStructuredSelection) selection).getFirstElement();
                if (item == null) {
                    return;
                }
                if (folderViewer.getExpandedState(item)) {
                    folderViewer.collapseToLevel(item, 1);
                } else {
                    folderViewer.expandToLevel(item, 1);
                }
            }
        }
    });
    addInputControl(folderViewer.getTree());

    parent.getDisplay().asyncExec(new Runnable() {
        public void run() {
            if (folderViewer.getControl().isDisposed())
                return;

            folderViewer.setInput(File.listRoots());
            File homeDir = new File(System.getProperty("user.home")); //$NON-NLS-1$
            folderViewer.setSelection(new StructuredSelection(homeDir), true);
            folderViewer.setExpandedState(homeDir, true);
            updateButtonStates();
        }
    });

}

From source file:org.xmind.ui.internal.wizards.ChooseLocationInWorkspaceWizardPage.java

License:Open Source License

private void createContainerViewer(Composite parent) {
    Label label = new Label(parent, SWT.NONE);
    label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
    label.setText(WizardMessages.NewPage_SelectParent_label);

    final TreeViewer containerViewer = new TreeViewer(parent, SWT.BORDER | SWT.SINGLE);
    containerViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    containerViewer.setContentProvider(new ContainerContentProvider());
    containerViewer.setLabelProvider(WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider());
    containerViewer.setComparator(new ViewerComparator());
    containerViewer.setUseHashlookup(true);
    containerViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            containerSelectionChanged((IContainer) selection.getFirstElement()); // allow null
        }// www  . j av a 2s .c  o  m
    });
    containerViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            ISelection selection = event.getSelection();
            if (selection instanceof IStructuredSelection) {
                Object item = ((IStructuredSelection) selection).getFirstElement();
                if (item == null) {
                    return;
                }
                if (containerViewer.getExpandedState(item)) {
                    containerViewer.collapseToLevel(item, 1);
                } else {
                    containerViewer.expandToLevel(item, 1);
                }
            }
        }
    });

    addInputControl(containerViewer.getTree());

    parent.getDisplay().asyncExec(new Runnable() {
        public void run() {
            containerViewer.setInput(ResourcesPlugin.getWorkspace());
            if (selectedContainer != null) {
                containerViewer.setSelection(new StructuredSelection(selectedContainer), true);
            }
            updateButtonStates();
        }
    });
}

From source file:zigen.plugin.db.ui.views.TreeDoubleClickHandler.java

License:Open Source License

private void changeExpandedState(TreeViewer viewer, TreeNode element) {

    if (!viewer.getExpandedState(element)) {

        viewer.expandToLevel(element, 1);

        if (element instanceof Schema) {

            Schema schema = (Schema) element;

            if (!schema.isExpanded()) {
                schema.setExpanded(true);
                TableTypeSearchJob job = new TableTypeSearchJob(viewer, schema);
                job.setPriority(TableTypeSearchJob.SHORT);
                job.setUser(showDialog);
                job.schedule();/*from   w w  w  . j  a v  a 2  s.  c o m*/
            }

        } else if (element instanceof Folder) {
            Folder folder = (Folder) element;
            if (!folder.isExpanded()) {
                folder.setExpanded(true);
                Schema schema = folder.getSchema();

                if (schema != null) {
                    switch (DBType.getType(schema.getDbConfig())) {
                    case DBType.DB_TYPE_ORACLE:
                        if (schema != null) {
                            if ("TABLE".equals(folder.getName())) {
                                return;
                            } else if ("SEQUENCE".equals(folder.getName())) { //$NON-NLS-1$
                                OracleSequeceSearchJob job = new OracleSequeceSearchJob(viewer, folder);
                                job.setPriority(OracleSequeceSearchJob.SHORT);
                                job.setUser(showDialog);
                                job.schedule();

                                return;

                            } else if ("VIEW".equals(folder.getName())) { //$NON-NLS-1$

                                System.out.println("changeExpandedState!!");
                                RefreshFolderJob job = new RefreshFolderJob(viewer, folder);
                                job.setPriority(OracleSequeceSearchJob.SHORT);
                                job.setUser(showDialog);
                                job.schedule();
                                return;

                            } else {
                                String[] sTypes = schema.getSourceType();
                                if (sTypes != null) {
                                    for (int i = 0; i < sTypes.length; i++) {
                                        String stype = sTypes[i];
                                        if (stype.equals(folder.getName())) {
                                            OracleSourceSearchJob job = new OracleSourceSearchJob(viewer,
                                                    folder);
                                            job.setPriority(OracleSourceSearchJob.SHORT);
                                            job.setUser(showDialog);
                                            job.schedule();
                                            return;
                                        }
                                    }
                                }
                            }
                        }
                    default:
                        RefreshFolderJob job = new RefreshFolderJob(viewer, folder);
                        job.setPriority(RefreshFolderJob.SHORT);
                        job.setUser(showDialog);
                        job.schedule();
                        break;
                    }
                }
            }

        }

    } else {
        viewer.collapseToLevel(element, 1);
    }

}