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

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

Introduction

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

Prototype

public void setExpandedState(Object elementOrTreePath, boolean expanded) 

Source Link

Document

Sets whether the node corresponding to the given element or tree path is expanded or collapsed.

Usage

From source file:ext.org.eclipse.jdt.internal.ui.browsing.MembersView.java

License:Open Source License

@Override
protected void hookViewerListeners() {
    super.hookViewerListeners();
    getViewer().addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            TreeViewer viewer = (TreeViewer) getViewer();
            Object element = ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (viewer.isExpandable(element))
                viewer.setExpandedState(element, !viewer.getExpandedState(element));
        }/*  w  w  w  . j a  va2 s. c o  m*/
    });
}

From source file:ext.org.eclipse.jdt.internal.ui.browsing.ProjectsView.java

License:Open Source License

/**
 * Adds additional listeners to this view.
 *///from ww  w .j  a v a 2 s.c  o m
@Override
protected void hookViewerListeners() {
    super.hookViewerListeners();
    getViewer().addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            TreeViewer viewer = (TreeViewer) getViewer();
            Object element = ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (viewer.isExpandable(element))
                viewer.setExpandedState(element, !viewer.getExpandedState(element));
        }
    });
}

From source file:ext.org.eclipse.jdt.internal.ui.packageview.PackageExplorerActionGroup.java

License:Open Source License

void handleDoubleClick(DoubleClickEvent event) {
    TreeViewer viewer = fPart.getTreeViewer();
    IStructuredSelection selection = (IStructuredSelection) event.getSelection();
    Object element = selection.getFirstElement();
    if (viewer.isExpandable(element)) {
        if (doubleClickGoesInto()) {
            // don't zoom into compilation units and class files
            if (element instanceof ICompilationUnit || element instanceof IClassFile)
                return;
            if (element instanceof IOpenable || element instanceof IContainer
                    || element instanceof IWorkingSet) {
                fZoomInAction.run();/*w  w w.ja v  a2 s  .c  om*/
            }
        } else {
            IAction openAction = fNavigateActionGroup.getOpenAction();
            if (openAction != null && openAction.isEnabled()
                    && OpenStrategy.getOpenMethod() == OpenStrategy.DOUBLE_CLICK)
                return;
            if (selection instanceof ITreeSelection) {
                TreePath[] paths = ((ITreeSelection) selection).getPathsFor(element);
                for (int i = 0; i < paths.length; i++) {
                    viewer.setExpandedState(paths[i], !viewer.getExpandedState(paths[i]));
                }
            } else {
                viewer.setExpandedState(element, !viewer.getExpandedState(element));
            }
        }
    } else if (element instanceof IProject && !((IProject) element).isOpen()) {
        OpenProjectAction openProjectAction = fProjectActionGroup.getOpenProjectAction();
        if (openProjectAction.isEnabled()) {
            openProjectAction.run();
        }
    }
}

From source file:fr.esrf.icat.manager.core.part.ServerPart.java

License:Apache License

@PostConstruct
public void postConstruct(final Composite parent, final EMenuService menuService,
        final EPartService partService, final EModelService modelService,
        final ESelectionService selectionService, final MWindow window) {

    // only place I could think of for registering that
    window.getContext().set(IWindowCloseHandler.class, new ExitHandler(partService));

    // listening to server changes
    service = ICATDataService.getInstance();
    service.addPropertyChangeListener(this);

    // our viewer
    viewer = new TreeViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    icatContentProvider = new IcatServerContentProvider();
    viewer.setContentProvider(icatContentProvider);
    serverLabelProvider = new IcatServerLabelProvider();
    viewer.setLabelProvider(serverLabelProvider);
    viewer.setInput(service);/*from www.  ja  v  a  2 s . c  o m*/

    // make selection available
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
            selectionService.setSelection(selection.getFirstElement());
        }
    });

    // toggle / connect / open entity on dbl click
    viewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            final TreeViewer viewer = (TreeViewer) event.getViewer();
            IStructuredSelection thisSelection = (IStructuredSelection) event.getSelection();
            final Object selectedNode = thisSelection.getFirstElement();
            if (selectedNode instanceof ICATServer) {
                final ICATServer server = (ICATServer) selectedNode;
                if (!server.isConnected()) {
                    ConnectHandler.connectServer(server, sync, parent.getShell(), new Runnable() {
                        @Override
                        public void run() {
                            if (server.isConnected()) {
                                viewer.setExpandedState(selectedNode, true);
                            }
                        }
                    });
                } else if (server.isConnected()) {
                    viewer.setExpandedState(selectedNode, !viewer.getExpandedState(selectedNode));
                }
            } else if (selectedNode instanceof ICATEntity) {
                OpenEntityHandler.openEntityPart(partService, modelService, window, (ICATEntity) selectedNode);
            } else {
                LOG.warn("Selected element is neither an ICAT server nor an ICAT entity !");
            }
        }
    });

    // context menu
    menuService.registerContextMenu(viewer.getControl(), "icat-manager.core.popupmenu.server");

}

From source file:gov.redhawk.ui.editor.TreeSection.java

License:Open Source License

/**
 * Expands or collapsed selected node according to its current state.
 * //from ww  w  . ja  v a 2 s .c  o m
 * @param selection the selection
 */
protected void handleDoubleClick(final IStructuredSelection selection) {
    final TreeViewer viewer = (TreeViewer) this.fViewerPart.getViewer();
    final boolean expandedState = viewer.getExpandedState(selection.getFirstElement());
    viewer.setExpandedState(selection.getFirstElement(), !expandedState);
}

From source file:it.eng.spagobi.meta.editor.business.BusinessModelEditor.java

License:Mozilla Public License

public void refreshViewer() {
    if (currentViewer != null) {
        // currentViewer.refresh();
        if (currentViewer instanceof TreeViewer) {
            TreeViewer treeViewer = (TreeViewer) currentViewer;
            Object[] elements = treeViewer.getExpandedElements();
            treeViewer.refresh();/* w  ww  .  j a v  a  2  s. co  m*/
            for (Object element : elements) {
                treeViewer.setExpandedState(element, true);
            }
            // treeViewer.setExpandedElements(elements);
        }
    } else {
        // if there are no viewer set current viewer to the modelTreeViewer and refresh it
        if (modelTreeViewer != null) {
            setCurrentViewer(modelTreeViewer);
            refreshViewer();
        }
    }

}

From source file:it.eng.spagobi.meta.editor.physical.PhysicalModelEditor.java

License:Mozilla Public License

public void refreshViewer() {
    if (currentViewer != null) {
        // currentViewer.refresh();
        if (currentViewer instanceof TreeViewer) {
            TreeViewer treeViewer = (TreeViewer) currentViewer;
            Object[] elements = treeViewer.getExpandedElements();
            treeViewer.refresh();/*w  w w.j a va 2  s. c  om*/
            for (Object element : elements) {
                treeViewer.setExpandedState(element, true);
            }
            // treeViewer.setExpandedElements(elements);
        }
    } else {
        // if there are no viewer set current viewer to the modelTreeViewer and refresh it
        if (selectionViewer != null) {
            setCurrentViewer(selectionViewer);
            refreshViewer();
        }
    }

}

From source file:msi.gama.gui.navigator.GamaNavigator.java

License:Open Source License

@Override
protected void handleDoubleClick(final DoubleClickEvent anEvent) {
    IStructuredSelection selection = (IStructuredSelection) anEvent.getSelection();
    Object element = selection.getFirstElement();
    if (element instanceof IFile) {
        TreeViewer viewer = getCommonViewer();
        if (viewer.isExpandable(element)) {
            viewer.setExpandedState(element, !viewer.getExpandedState(element));
        }/*from  w  ww. ja  v a2 s .  co m*/
    }
    if (element instanceof VirtualContent && ((VirtualContent) element).handleDoubleClick()) {
        return;
    } else {
        super.handleDoubleClick(anEvent);
    }
}

From source file:net.refractions.udig.style.sld.editor.internal.EditorDialog.java

License:Open Source License

/**
 * Add the listeners to the tree viewer.
 * @param viewer/*from  w w  w  .ja  v  a2 s  .  co m*/
 * 
 * @since 3.1
 */
protected void addListeners(final TreeViewer viewer) {
    viewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
        private void handleError() {
            try {
                // remove the listener temporarily so that the events caused
                // by the error handling dont further cause error handling
                // to occur.
                viewer.removePostSelectionChangedListener(this);
                showPageFlippingAbortDialog();
                selectCurrentPageAgain();
                clearSelectedNode();
            } finally {
                viewer.addPostSelectionChangedListener(this);
            }
        }

        public void selectionChanged(SelectionChangedEvent event) {
            Object selection = getSingleSelection(event.getSelection());
            if (selection instanceof IEditorNode) {
                if (!isCurrentPageValid()) {
                    handleError();
                } else if (!showPage((IEditorNode) selection)) {
                    // Page flipping wasn't successful
                    handleError();
                } else {
                    // Everything went well
                    lastSuccessfulNode = (IEditorNode) selection;
                }
            }
        }
    });
    ((Tree) viewer.getControl()).addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetDefaultSelected(final SelectionEvent event) {
            ISelection selection = viewer.getSelection();
            if (selection.isEmpty())
                return;
            IEditorNode singleSelection = getSingleSelection(selection);
            boolean expanded = viewer.getExpandedState(singleSelection);
            viewer.setExpandedState(singleSelection, !expanded);
        }
    });
    //Register help listener on the tree to use context sensitive help
    viewer.getControl().addHelpListener(new HelpListener() {
        public void helpRequested(HelpEvent event) {
            // call perform help on the current page
            if (currentPage != null) {
                currentPage.performHelp();
            }
        }
    });
}

From source file:net.sf.eclipsensis.wizard.NSISWizardContentsPage.java

License:Open Source License

private void expandGroup(TreeViewer tv, AbstractNSISInstallGroup group) {
    if (tv.getExpandedState(group) != group.isExpanded()) {
        tv.setExpandedState(group, group.isExpanded());
    }/*from www . j  ava  2 s . co  m*/
    INSISInstallElement[] children = group.getChildren();
    if (!Common.isEmptyArray(children)) {
        for (int i = 0; i < children.length; i++) {
            if (children[i] instanceof AbstractNSISInstallGroup) {
                expandGroup(tv, (AbstractNSISInstallGroup) children[i]);
            }
        }
    }
}