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

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

Introduction

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

Prototype

public void expandToLevel(int level) 

Source Link

Document

Expands the root of the viewer's tree to the given level.

Usage

From source file:org.eclipse.ecf.mgmt.framework.eclipse.ui.services.RemoteServicesView.java

License:Open Source License

private void updateRemoteServiceManager(final IServiceManagerAsync s, final IRemoteServiceReference rsRef,
        final RemoteServiceManagerNode node) {
    final TreeViewer viewer = getTreeViewer();
    if (viewer == null)
        return;//from  w  ww  .  j a va  2  s .c  o m
    s.getServiceReferencesAsync().whenComplete((result, exception) -> {
        viewer.getControl().getDisplay().asyncExec(new Runnable() {
            @Override
            public void run() {
                if (exception != null)
                    logAndShowError("Exception using remote service reference=" + rsRef, exception);
                else {
                    RemoteServiceManagerNode managerNode = (node == null)
                            ? getRootNode().getServiceManagerNode(rsRef, s)
                            : node;
                    managerNode.clearChildren();
                    for (ServiceReferenceMTO srMTO : result) {
                        long bundleId = srMTO.getBundle();
                        long[] usingBundleIds = srMTO.getUsingBundles();
                        ServiceNode sn = new ServiceNode(bundleId, usingBundleIds, srMTO.getProperties());
                        sn.addChild(new RegisteringBundleIdNode(bundleId));
                        sn.addChild(new UsingBundleIdsNode("Using Bundles", usingBundleIds));
                        managerNode.addChild(sn);
                    }
                    viewer.expandToLevel(2);
                    viewer.refresh();
                }
            }
        });
    });
}

From source file:org.eclipse.emf.henshin.cpa.ui.util.CpEditorUtil.java

License:Open Source License

public static void openResultInCpEditor(URI firstRuleUri, URI overlapUri, URI secondRuleUri) {

    /** URIs of henshin1, ecore[, henshin2 [.ecore, .wcoreextended, .gcore and .wcore files] */
    URI[] modelURIs = new URI[3];
    // TODO: die drei URIs einfgen
    modelURIs[0] = firstRuleUri;//  w  w  w  . j a v  a2s  . co m
    modelURIs[1] = overlapUri;
    modelURIs[2] = secondRuleUri;

    IEditorInput[] editorInputs;
    try {

        editorInputs = createEditorInputsAndModelURIs(modelURIs);

        MultiEditorInput multiEditorInput = new MultiEditorInput(CpEditorUtil.getInnerEditorIDs(),
                editorInputs);

        IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
        IEditorPart editor = page.openEditor(multiEditorInput, HenshinCPEditor.MULTI_EDITOR_ID, true);
        // ((HenshinCPEditorBasedOnPimarEditor)editor).setModelFileUris(modelURIs); //scheint berflssig.

        // TODO: extract Method?
        if (editor instanceof HenshinCPEditor) { // sollte eigentlich immer so sein - soll nur ClassCastException
            // vermeiden
            HenshinCPEditor openedHenshinCPEditor = (HenshinCPEditor) editor;
            IEditorPart[] innerEditors = openedHenshinCPEditor.getInnerEditors();

            // TODO den ganzen Prozess des ausklappens in eine Methode auslagern und mit try/catch aufrufen um NPEs
            // zu vermeiden.

            for (IEditorPart iEditorPart : innerEditors) {
                if (iEditorPart instanceof EcoreEditor) {
                    EcoreEditor ecoreEditor = (EcoreEditor) iEditorPart;
                    Viewer viewer = ecoreEditor.getViewer();
                    // TODO: vorm cast'en prfen, ob es auch instanceof ist, sonst kann es zur NPE kommen.
                    TreeViewer tViewer = (TreeViewer) viewer;

                    // TODO: disable Validation (liveValidation)

                    tViewer.expandToLevel(4);

                }

                // TODO: introduce expand functionality for henshin rules
                if (iEditorPart instanceof HenshinEditor) {
                    HenshinEditor henshinEditor = (HenshinEditor) iEditorPart;
                }
            }
        }

    } catch (URISyntaxException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (PartInitException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

From source file:org.eclipse.emf.henshin.presentation.HenshinEditor.java

License:Open Source License

/**
 * This is the method used by the framework to install your own controls.
 * <!-- begin-user-doc --> <!-- end-user-doc -->
 * //www .  j  a v a  2s  . c om
 * @generated NOT
 */
@Override
public void createPages() {
    // Creates the model from the editor input
    //
    createModel();

    // Only creates the other pages if there is something that can be edited
    //
    if (!getEditingDomain().getResourceSet().getResources().isEmpty()) {
        // Create a page for the selection tree view.
        //
        {

            final FilterControlsViewer filterViewer = new FilterControlsViewer(filterController);

            ViewerPane viewerPane = new ViewerPane(getSite().getPage(), HenshinEditor.this) {
                @Override
                public Viewer createViewer(Composite composite) {
                    final Tree tree = new Tree(composite, SWT.MULTI | SWT.VIRTUAL);
                    TreeViewer newTreeViewer = new HighlightingTreeViewer(tree);
                    return newTreeViewer;
                }

                @Override
                public void requestActivation() {
                    super.requestActivation();
                    setCurrentViewerPane(this);
                }

                protected void createTitleBar() {
                    super.createTitleBar();

                    ToolItem exp = new ToolItem(actionBar, SWT.PUSH);
                    exp.setToolTipText("Collapse to TransformationSystem");
                    exp.setImage(getImageDescriptor("full/obj16/CollapseTransformationSystemChildren.png")
                            .createImage());
                    exp.addSelectionListener(new SelectionAdapter() {
                        @Override
                        public void widgetSelected(SelectionEvent e) {
                            TreeViewer tv = (TreeViewer) getViewer();
                            tv.collapseAll();
                            tv.expandToLevel(3);
                        }
                    });

                    new ToolItem(actionBar, SWT.SEPARATOR);

                    filterViewer.buildControls(actionBar);
                    control.changed(new Control[] { actionBar });
                }
            };

            viewerPane.createControl(getContainer());

            selectionViewer = (HighlightingTreeViewer) viewerPane.getViewer();
            selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));

            createHighlightingMenu(viewerPane.getMenuManager(), selectionViewer);

            // new TreeViewerToolTipSupport(selectionViewer, SWT.NONE,
            // false);

            filterController.addFilterListener(new IFilterChangeListener() {
                @Override
                public void filterChanged() {
                    selectionViewer.refresh();
                }
            });

            selectionViewer.refresh();
            selectionViewer.setLabelProvider(
                    new AdapterFactoryLabelFontColorToolTipProvider(adapterFactory, selectionViewer));
            selectionViewer.setInput(editingDomain.getResourceSet());
            selectionViewer.setSelection(
                    new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);

            // TreeViewerToolTipSupport.enableFor(selectionViewer);
            HtmlTipSupport.enableFor(selectionViewer);
            viewerPane.setTitle(editingDomain.getResourceSet());

            new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
            createContextMenuFor(selectionViewer);
            int pageIndex = addPage(viewerPane.getControl());
            setPageText(pageIndex, getString("_UI_SelectionPage_label"));
        }

        // Create a page for the parent tree view.
        //
        // {
        // ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
        // HenshinEditor.this) {
        // @Override
        // public Viewer createViewer(Composite composite) {
        // Tree tree = new Tree(composite, SWT.MULTI);
        // TreeViewer newTreeViewer = new TreeViewer(tree);
        // return newTreeViewer;
        // }
        //
        // @Override
        // public void requestActivation() {
        // super.requestActivation();
        // setCurrentViewerPane(this);
        // }
        // };
        // viewerPane.createControl(getContainer());
        //
        // parentViewer = (TreeViewer) viewerPane.getViewer();
        // parentViewer.setAutoExpandLevel(30);
        // parentViewer.setContentProvider(new
        // ReverseAdapterFactoryContentProvider(
        // adapterFactory));
        // parentViewer.setLabelProvider(new
        // AdapterFactoryLabelProvider(adapterFactory));
        //
        // createContextMenuFor(parentViewer);
        // int pageIndex = addPage(viewerPane.getControl());
        // setPageText(pageIndex, getString("_UI_ParentPage_label"));
        // }
        //
        // // This is the page for the list viewer
        // //
        // {
        // ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
        // HenshinEditor.this) {
        // @Override
        // public Viewer createViewer(Composite composite) {
        // return new ListViewer(composite);
        // }
        //
        // @Override
        // public void requestActivation() {
        // super.requestActivation();
        // setCurrentViewerPane(this);
        // }
        // };
        // viewerPane.createControl(getContainer());
        // listViewer = (ListViewer) viewerPane.getViewer();
        // listViewer.setContentProvider(new
        // AdapterFactoryContentProvider(adapterFactory));
        // listViewer.setLabelProvider(new
        // AdapterFactoryLabelProvider(adapterFactory));
        //
        // createContextMenuFor(listViewer);
        // int pageIndex = addPage(viewerPane.getControl());
        // setPageText(pageIndex, getString("_UI_ListPage_label"));
        // }
        //
        // // This is the page for the tree viewer
        // //
        // {
        // ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
        // HenshinEditor.this) {
        // @Override
        // public Viewer createViewer(Composite composite) {
        // return new TreeViewer(composite);
        // }
        //
        // @Override
        // public void requestActivation() {
        // super.requestActivation();
        // setCurrentViewerPane(this);
        // }
        // };
        // viewerPane.createControl(getContainer());
        // treeViewer = (TreeViewer) viewerPane.getViewer();
        // treeViewer.setContentProvider(new
        // AdapterFactoryContentProvider(adapterFactory));
        // treeViewer.setLabelProvider(new
        // AdapterFactoryLabelProvider(adapterFactory));
        //
        // new AdapterFactoryTreeEditor(treeViewer.getTree(),
        // adapterFactory);
        //
        // createContextMenuFor(treeViewer);
        // int pageIndex = addPage(viewerPane.getControl());
        // setPageText(pageIndex, getString("_UI_TreePage_label"));
        // }
        //
        // // This is the page for the table viewer.
        // //
        // {
        // ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
        // HenshinEditor.this) {
        // @Override
        // public Viewer createViewer(Composite composite) {
        // return new TableViewer(composite);
        // }
        //
        // @Override
        // public void requestActivation() {
        // super.requestActivation();
        // setCurrentViewerPane(this);
        // }
        // };
        // viewerPane.createControl(getContainer());
        // tableViewer = (TableViewer) viewerPane.getViewer();
        //
        // Table table = tableViewer.getTable();
        // TableLayout layout = new TableLayout();
        // table.setLayout(layout);
        // table.setHeaderVisible(true);
        // table.setLinesVisible(true);
        //
        // TableColumn objectColumn = new TableColumn(table, SWT.NONE);
        // layout.addColumnData(new ColumnWeightData(3, 100, true));
        // objectColumn.setText(getString("_UI_ObjectColumn_label"));
        // objectColumn.setResizable(true);
        //
        // TableColumn selfColumn = new TableColumn(table, SWT.NONE);
        // layout.addColumnData(new ColumnWeightData(2, 100, true));
        // selfColumn.setText(getString("_UI_SelfColumn_label"));
        // selfColumn.setResizable(true);
        //
        // tableViewer.setColumnProperties(new String[] { "a", "b" });
        // tableViewer.setContentProvider(new
        // AdapterFactoryContentProvider(adapterFactory));
        // tableViewer.setLabelProvider(new
        // AdapterFactoryLabelProvider(adapterFactory));
        //
        // createContextMenuFor(tableViewer);
        // int pageIndex = addPage(viewerPane.getControl());
        // setPageText(pageIndex, getString("_UI_TablePage_label"));
        // }
        //
        // // This is the page for the table tree viewer.
        // //
        // {
        // ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
        // HenshinEditor.this) {
        // @Override
        // public Viewer createViewer(Composite composite) {
        // return new TreeViewer(composite);
        // }
        //
        // @Override
        // public void requestActivation() {
        // super.requestActivation();
        // setCurrentViewerPane(this);
        // }
        // };
        // viewerPane.createControl(getContainer());
        //
        // treeViewerWithColumns = (TreeViewer) viewerPane.getViewer();
        //
        // Tree tree = treeViewerWithColumns.getTree();
        // tree.setLayoutData(new FillLayout());
        // tree.setHeaderVisible(true);
        // tree.setLinesVisible(true);
        //
        // TreeColumn objectColumn = new TreeColumn(tree, SWT.NONE);
        // objectColumn.setText(getString("_UI_ObjectColumn_label"));
        // objectColumn.setResizable(true);
        // objectColumn.setWidth(250);
        //
        // TreeColumn selfColumn = new TreeColumn(tree, SWT.NONE);
        // selfColumn.setText(getString("_UI_SelfColumn_label"));
        // selfColumn.setResizable(true);
        // selfColumn.setWidth(200);
        //
        // treeViewerWithColumns.setColumnProperties(new String[] { "a", "b"
        // });
        // treeViewerWithColumns.setContentProvider(new
        // AdapterFactoryContentProvider(
        // adapterFactory));
        // treeViewerWithColumns.setLabelProvider(new
        // AdapterFactoryLabelProvider(
        // adapterFactory));
        //
        // createContextMenuFor(treeViewerWithColumns);
        // int pageIndex = addPage(viewerPane.getControl());
        // setPageText(pageIndex,
        // getString("_UI_TreeWithColumnsPage_label"));
        // }

        getSite().getShell().getDisplay().asyncExec(new Runnable() {
            public void run() {
                setActivePage(0);
            }
        });
    }

    // Ensures that this editor will only display the page's tab
    // area if there are more than one page
    //
    getContainer().addControlListener(new ControlAdapter() {
        boolean guard = false;

        @Override
        public void controlResized(ControlEvent event) {
            if (!guard) {
                guard = true;
                hideTabs();
                guard = false;
            }
        }
    });

    getSite().getShell().getDisplay().asyncExec(new Runnable() {
        public void run() {
            updateProblemIndication();
        }
    });
}

From source file:org.eclipse.jubula.client.ui.controllers.TreeViewContainerGUIController.java

License:Open Source License

/**
 * collapse or expand the give TreeViewer
 * /*from   w  w w .  j a va  2s.c om*/
 * @param treeCont
 *            ITreeViewerContainer
 */
public static void collapseExpandTree(ITreeViewerContainer treeCont) {
    TreeViewer tv = treeCont.getTreeViewer();
    try {
        tv.getTree().setRedraw(false);
        tv.collapseAll();
        int autoExpandLevel = tv.getAutoExpandLevel();
        tv.expandToLevel(autoExpandLevel);
    } finally {
        tv.getTree().setRedraw(true);
    }
}

From source file:org.eclipse.lsp4e.outline.CNFOutlinePage.java

License:Open Source License

public static void refreshTreeSelection(TreeViewer viewer, int offset, IDocument document) {
    ITreeContentProvider contentProvider = (ITreeContentProvider) viewer.getContentProvider();
    Object[] objects = contentProvider.getElements(null);
    SymbolInformation bestSymbol = null;
    int level = 0;
    while (objects != null && objects.length > 0) {
        SymbolInformation nextChild = null;
        for (Object object : objects) {
            SymbolInformation symbol = object instanceof SymbolInformation ? (SymbolInformation) object
                    : Adapters.adapt(object, SymbolInformation.class);
            if (symbol != null) {
                if (isOffsetInSymbolRange(offset, symbol, document)) {
                    nextChild = symbol;//from   ww  w .j a  va2s  . c o  m
                    objects = contentProvider.getChildren(symbol);
                    break;
                }
            }
        }
        if (nextChild == null)
            break;
        level++;
        bestSymbol = nextChild;
    }
    if (bestSymbol != null) {
        if (bestSymbol.equals(viewer.getStructuredSelection().getFirstElement())) {
            // the symbol to select is the same than current selected symbol, don't select
            // it.
            return;
        }
        final int finalLevel = level;
        final SymbolInformation finalBestSymbol = bestSymbol;
        Display.getDefault().asyncExec(() -> {
            viewer.expandToLevel(finalLevel);
            viewer.setSelection(new StructuredSelection(finalBestSymbol), true);
        });
    }
}

From source file:org.eclipse.m2m.internal.qvt.oml.editor.ui.quickoutline.OutlineContentProvider.java

License:Open Source License

public void toggleShowInheritedMembers() {
    TreeViewer treeViewer = myQvtOutlineInformationControl.getTreeViewer();
    Tree tree = treeViewer.getTree();/*from   w  w  w. j  ava  2 s.c o  m*/

    tree.setRedraw(false);
    isShowImportedInfo = !isShowImportedInfo;
    treeViewer.refresh();
    treeViewer.expandToLevel(2);

    // reveal selection
    Object selectedElement = myQvtOutlineInformationControl.getSelectedElement();
    if (selectedElement != null)
        treeViewer.reveal(selectedElement);

    tree.setRedraw(true);
}

From source file:org.eclipse.m2m.internal.qvt.oml.ui.wizards.SourceDestinationChooser.java

License:Open Source License

@Override
protected TreeViewer createTreeViewer(Composite parent) {
    TreeViewer viewer = super.createTreeViewer(parent);
    viewer.addFilter(new ViewerFilter() {
        @Override//from  ww  w . jav a2s .  co m
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            IProject project = adaptObject(element, IProject.class);
            if (project != null) {
                return QvtProjectUtil.isQvtProject(project);
            }

            return true;
        }
    });

    viewer.expandToLevel(2);

    return viewer;
}

From source file:org.eclipse.osee.framework.ui.plugin.util.JobbedNode.java

License:Open Source License

@Override
public void setChildren(Object[] objChildren) {
    super.setChildren(objChildren);

    if (expand) {
        if (viewer instanceof TreeViewer) {
            final TreeViewer treeViewer = (TreeViewer) viewer;

            Displays.ensureInDisplayThread(new Runnable() {

                @Override//from   w w w . j  ava2 s. c  o m
                public void run() {
                    treeViewer.refresh();
                    treeViewer.expandToLevel(2);
                }
            });
        }
    }
}

From source file:org.eclipse.papyrus.diagram.common.sheet.ReferenceElementChooserDialog.java

License:Open Source License

@Override
protected void setSelection(TreeViewer treeViewer) {
    Object featureValue = mySourceObject.eGet(myFeature);
    if (featureValue != null) {
        treeViewer.expandToLevel(3);
        treeViewer.setSelection(new StructuredSelection(featureValue), true);
    }/*from  w w w  . j av a 2 s.c om*/
}

From source file:org.eclipse.sirius.common.ui.tools.api.selection.page.AbstractSelectionWizardPage.java

License:Open Source License

/**
 * Expand the tree viewer. If the GroupingContentProvider is enable, we
 * expand the first level only if it does not contain any grouping items for
 * performance purposes. We cannot expandAll the tree viewer because it can
 * contain grouping items also in each branches.
 * //from ww w.  jav a 2 s  .c  o m
 * @param treeViewer
 *            the treeViewer to expand
 */
protected static void expandTreeViewer(TreeViewer treeViewer) {
    if (SiriusTransPlugin.getPlugin().getPreferenceStore()
            .getBoolean(CommonPreferencesConstants.PREF_GROUP_ENABLE)) {
        boolean hasGroupingItem = false;
        for (TreeItem item : treeViewer.getTree().getItems()) {
            if (item.getData() instanceof GroupingItem) {
                hasGroupingItem = true;
                break;
            }
        }
        if (!hasGroupingItem) {
            treeViewer.expandToLevel(2);
        }
    } else {
        treeViewer.expandAll();
    }
}