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

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

Introduction

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

Prototype

@Override
public void setSelection(ISelection selection, boolean reveal) 

Source Link

Document

Sets a new selection for this viewer and optionally makes it visible.

Usage

From source file:org.dev.toos.constcode.ui.handler.vartree.VarTreeAddChildAdapter.java

License:Apache License

@Override
public void widgetSelected(SelectionEvent e) {
    TreeViewer varTreeViewer = this.getViewPage().getVarTreeViewer();
    TreeSelection varSelect = (TreeSelection) varTreeViewer.getSelection();
    VarBeanBridge beforeVar = null;/*ww  w.j a  v a 2  s  .c om*/
    ConstBeanBridge atConst = null;
    //
    if (varSelect != null && varSelect.isEmpty() == false)
        beforeVar = (VarBeanBridge) varSelect.getFirstElement();
    if (beforeVar == null)
        return;
    atConst = beforeVar.getConst();
    //
    VarBeanBridge newVar = new VarBeanBridge(atConst, beforeVar, atConst.getSource());
    beforeVar.addVar(newVar);
    newVar.doEdit();
    varTreeViewer.refresh();
    varTreeViewer.setSelection(new TreeSelection(new TreePath(new Object[] { newVar })), true);
    varTreeViewer.editElement(newVar, 0);
}

From source file:org.dev.toos.constcode.ui.handler.vartree.VarTreeAddRootAdapter.java

License:Apache License

@Override
public void widgetSelected(SelectionEvent e) {
    TreeViewer constTreeViewer = this.getViewPage().getConstTreeViewer();
    TreeViewer varTreeViewer = this.getViewPage().getVarTreeViewer();
    TreeSelection constSelect = (TreeSelection) constTreeViewer.getSelection();
    TreeSelection varSelect = (TreeSelection) varTreeViewer.getSelection();
    ConstBeanBridge atConst = null;/*  www .  j  a va  2 s. c o m*/
    VarBeanBridge beforeVar = null;
    //
    if (constSelect == null || constSelect.isEmpty() == true)
        return;
    atConst = (ConstBeanBridge) constSelect.getFirstElement();
    if (varSelect != null && varSelect.isEmpty() == false)
        beforeVar = (VarBeanBridge) varSelect.getFirstElement();
    //
    int index = -1;
    if (beforeVar != null) {
        atConst = beforeVar.getConst();
        index = atConst.getVarRoots().indexOf(beforeVar);
    }
    //
    VarBeanBridge newVar = new VarBeanBridge(atConst, null, atConst.getSource());
    atConst.addVar(index + 1, newVar);
    newVar.doEdit();
    varTreeViewer.refresh();
    varTreeViewer.setSelection(new TreeSelection(new TreePath(new Object[] { newVar })), true);
    varTreeViewer.editElement(newVar, 0);
}

From source file:org.eclipse.acceleo.internal.ide.ui.views.result.AcceleoResultView.java

License:Open Source License

/**
 * Expands the traceability element at the given offset, in the traceability information of the given
 * file. It expands the nearest template element and all its ancestors in the view.
 * <p>//ww  w . ja va  2 s . co  m
 * Here is an example of expanded elements, in order :
 * </p>
 * <p>
 * {IWorspaceRoot, IContainer, IFile, TraceabilityTargetFile, TraceabilityModel, ...,
 * TraceabilityTemplate}
 * </p>
 * 
 * @param generatedFile
 *            is the generated file where to search the offset
 * @param offset
 *            to search in the sub regions
 */
private void expandElementsAt(IFile generatedFile, int offset) {
    List<Object> elements = getElementsAt(getContent().getTargetFile(generatedFile.getLocation().toString()),
            offset);
    if (elements.size() > 0) {
        Object last = elements.get(elements.size() - 1);
        TreeViewer treeViewer = getTreeViewer();
        treeViewer.setExpandedElements(elements.toArray());
        treeViewer.setSelection(new StructuredSelection(elements), true);
        treeViewer.setSelection(new StructuredSelection(last), true);
        Widget item = treeViewer.testFindItem(last);
        if (item instanceof TreeItem) {
            ((TreeItem) item).setExpanded(false);
        }
    }
}

From source file:org.eclipse.babel.editor.tree.internal.KeyTreeContributor.java

License:Open Source License

/**
 * Contributes key synchronization between editor and tree selected keys.
 *
 * @param treeViewer/*from  w w w .j  a  v a 2  s  .c o m*/
 *            tree viewer
 */
private void contributeKeySync(final TreeViewer treeViewer) {
    // changes in tree selected key update the editor
    treeViewer.getTree().addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            IStructuredSelection selection = (IStructuredSelection) treeViewer.getSelection();
            if (selection != null && selection.getFirstElement() != null) {
                KeyTreeNode node = (KeyTreeNode) selection.getFirstElement();
                LOGGER.log(Level.INFO, "viewer key/hash:" + node.getMessageKey() + "/" + node.hashCode());
                editor.setSelectedKey(node.getMessageKey());
            } else {
                editor.setSelectedKey(null);
            }
        }
    });
    // changes in editor selected key updates the tree
    editor.addChangeListener(new MessagesEditorChangeAdapter() {
        public void selectedKeyChanged(String oldKey, String newKey) {
            ITreeContentProvider provider = (ITreeContentProvider) treeViewer.getContentProvider();
            if (provider != null) { // alst workaround
                KeyTreeNode node = findKeyTreeNode(provider, provider.getElements(null), newKey);
                if (node != null) {
                    treeViewer.setSelection(new StructuredSelection(node), true);
                    treeViewer.getTree().showSelection();
                }
            }
        }
    });
}

From source file:org.eclipse.babel.editor.tree.KeyTreeContributor.java

License:Open Source License

/**
 * Contributes key synchronization between editor and tree selected keys.
 * @param treeViewer tree viewer/*  w w  w.j a  v a2 s .c o m*/
 */
private void contributeKeySync(final TreeViewer treeViewer) {
    // changes in tree selected key update the editor
    treeViewer.getTree().addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(final SelectionEvent e) {
            final IStructuredSelection selection = (IStructuredSelection) treeViewer.getSelection();
            if (selection != null && selection.getFirstElement() != null) {
                final KeyTreeNode node = (KeyTreeNode) selection.getFirstElement();
                System.out.println("viewer key/hash:" + node.getMessageKey() + "/" + node.hashCode());
                editor.setSelectedKey(node.getMessageKey());
            } else {
                editor.setSelectedKey(null);
            }
        }
    });
    // changes in editor selected key updates the tree
    editor.addChangeListener(new MessagesEditorChangeAdapter() {
        @Override
        public void selectedKeyChanged(final String oldKey, final String newKey) {
            final ITreeContentProvider provider = (ITreeContentProvider) treeViewer.getContentProvider();
            final KeyTreeNode node = findKeyTreeNode(provider, provider.getElements(null), newKey);
            System.out.println("editor key/hash:" + node.getMessageKey() + "/" + node.hashCode());

            //                String[] test = newKey.split("\\.");
            //                treeViewer.setSelection(new StructuredSelection(test), true);

            treeViewer.setSelection(new StructuredSelection(node), true);
            treeViewer.getTree().showSelection();
        }
    });
}

From source file:org.eclipse.babel.editor.tree.KeyTreeContributor.java

License:Open Source License

/**
 * Contributes key synchronization between editor and tree selected keys.
 * @param treeViewer tree viewer/*from  w w w. j a va2s .  c om*/
 */
private void contributeKeySync(final TreeViewer treeViewer) {
    // changes in tree selected key update the editor
    treeViewer.getTree().addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            IStructuredSelection selection = (IStructuredSelection) treeViewer.getSelection();
            if (selection != null && selection.getFirstElement() != null) {
                KeyTreeNode node = (KeyTreeNode) selection.getFirstElement();
                System.out.println("viewer key/hash:" + node.getMessageKey() + "/" + node.hashCode());
                editor.setSelectedKey(node.getMessageKey());
            } else {
                editor.setSelectedKey(null);
            }
        }
    });
    // changes in editor selected key updates the tree
    editor.addChangeListener(new MessagesEditorChangeAdapter() {
        public void selectedKeyChanged(String oldKey, String newKey) {
            ITreeContentProvider provider = (ITreeContentProvider) treeViewer.getContentProvider();
            KeyTreeNode node = findKeyTreeNode(provider, provider.getElements(null), newKey);
            System.out.println("editor key/hash:" + node.getMessageKey() + "/" + node.hashCode());

            //                String[] test = newKey.split("\\.");
            //                treeViewer.setSelection(new StructuredSelection(test), true);

            treeViewer.setSelection(new StructuredSelection(node), true);
            treeViewer.getTree().showSelection();
        }
    });
}

From source file:org.eclipse.bpel.common.wsdl.wizards.UriResourceImportWizardPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {

    Composite container = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout(2, false);
    container.setLayout(layout);/*from   w w  w  .  ja  va2 s . c  o  m*/
    container.setLayoutData(new GridData(GridData.FILL_BOTH));

    // WSDL field
    Label l = new Label(container, SWT.NONE);
    l.setText(this.shortName + " URI:");

    GridData layoutData = new GridData();
    layoutData.verticalIndent = 6;
    layoutData.horizontalSpan = 2;
    l.setLayoutData(layoutData);

    final Text text = new Text(container, SWT.BORDER | SWT.SINGLE);
    text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    text.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            String uri = text.getText();
            if (uri.trim().length() == 0)
                return;

            try {
                UriResourceImportWizardPage.this.uri = UriAndUrlHelper.urlToUri(uri);

            } catch (Exception e1) {
                UriResourceImportWizardPage.this.uri = null;
            }

            validate();
        }
    });

    if (this.initialUri != null)
        text.setText(this.initialUri);

    Button b = new Button(container, SWT.PUSH);
    b.setText("Browse...");
    b.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }

        @Override
        public void widgetSelected(SelectionEvent e) {

            FileDialog dlg = new FileDialog(text.getShell(), SWT.SINGLE);
            dlg.setFilterNames(UriResourceImportWizardPage.this.filterNames);
            dlg.setFilterExtensions(UriResourceImportWizardPage.this.filterExtensions);
            String path = dlg.open();

            if (path != null) {
                String uri = new File(path).toURI().toString();
                text.setText(uri);
                text.setSelection(uri.length());
                text.setFocus();
            }
        }
    });

    // Container selection
    l = new Label(container, SWT.NONE);
    l.setText("Select the container in which the " + this.shortName + " will be imported.");

    layoutData = new GridData();
    layoutData.verticalIndent = 10;
    layoutData.horizontalSpan = 2;
    l.setLayoutData(layoutData);

    TreeViewer viewer = new TreeViewer(container, SWT.SINGLE | SWT.V_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    layoutData = new GridData(GridData.FILL_BOTH);
    layoutData.heightHint = 200;
    layoutData.horizontalSpan = 2;
    viewer.getTree().setLayoutData(layoutData);
    viewer.setLabelProvider(new WorkbenchLabelProvider());

    viewer.setContentProvider(new WorkbenchContentProvider() {
        @Override
        public Object[] getChildren(Object o) {

            if (o instanceof IContainer) {
                IResource[] members;
                try {
                    members = ((IContainer) o).members();
                } catch (Exception e) {
                    return new Object[0];
                }

                ArrayList<IResource> results = new ArrayList<IResource>();
                for (IResource member : members) {
                    if (member instanceof IContainer)
                        results.add(member);
                }

                return results.toArray();
            }

            return new Object[0];
        }
    });

    // Set page input
    IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    viewer.setInput(root);
    if (this.outputContainer != null) {
        viewer.setSelection(new StructuredSelection(this.outputContainer), true);
        viewer.expandToLevel(this.outputContainer, 1);
        viewer.reveal(this.outputContainer.getProject());
    }

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {

            IStructuredSelection s = (IStructuredSelection) event.getSelection();
            if (!s.isEmpty())
                UriResourceImportWizardPage.this.outputContainer = (IContainer) s.getFirstElement();
            else
                UriResourceImportWizardPage.this.outputContainer = null;
            validate();
        }
    });

    text.setFocus();
    setControl(container);
}

From source file:org.eclipse.cdt.internal.ui.workingsets.WorkingSetConfigsController.java

License:Open Source License

/**
 * Assigns the tree viewer that I control.
 * //from   w ww. ja  v a2  s  .co  m
 * @param tree
 *            my tree viewer
 */
void setTreeViewer(final TreeViewer tree) {
    if (this.tree != null) {
        this.tree.removeSelectionChangedListener(this);
    }

    this.tree = tree;

    if (this.tree != null) {
        this.tree.addSelectionChangedListener(this);

        this.tree.setInput(workspace.getWorkingSets());

        if (!workspace.getWorkingSets().isEmpty()) {
            tree.getTree().getDisplay().asyncExec(new Runnable() {

                @Override
                public void run() {
                    Object initialSelection;

                    ITreeContentProvider content = (ITreeContentProvider) tree.getContentProvider();

                    if ((initialWorkingSet != null) && Arrays.asList(content.getElements(tree.getInput()))
                            .contains(initialWorkingSet)) {
                        initialSelection = initialWorkingSet;
                    } else {
                        // we have a most-recently-used working set. Just
                        // take the first in tree order
                        initialSelection = tree.getTree().getItem(0).getData();
                    }

                    Object[] children = content.getChildren(initialSelection);
                    IStructuredSelection sel;

                    if ((children == null) || (children.length == 0)) {
                        // Shouldn't happen: there should at least be the
                        // read-only config.
                        // Can only select the initial working set
                        sel = new StructuredSelection(initialSelection);
                    } else {
                        Object[] toSort = new Object[children.length];
                        System.arraycopy(children, 0, toSort, 0, children.length);
                        tree.getComparator().sort(tree, toSort);
                        sel = new StructuredSelection(toSort[0]);
                    }

                    // make the selection
                    tree.setSelection(sel, true);
                }
            });
        }
    }
}

From source file:org.eclipse.contribution.xref.internal.ui.utils.XRefUIUtils.java

License:Open Source License

public static void setSelection(IWorkbenchPart part, ISelection selection, TreeViewer viewer) {
    TreeObject o = XRefUIUtils.getTreeObjectForSelection(viewer, selection, part);
    if (o != null) {
        viewer.setSelection(new StructuredSelection(o), true);
        viewer.reveal(o);//from   ww w .  ja va2  s .c  o m
    } else if (selection != null) {
        viewer.setSelection(selection, true);
        viewer.reveal(selection);
    }
}

From source file:org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView.java

License:Open Source License

/**
 * The given launch configuration has been added. Add it to the tree.
 * @param configuration the added configuration
 *//* w  w  w .  ja v a 2 s .c  o  m*/
private void handleConfigurationAdded(ILaunchConfiguration configuration, ILaunchConfiguration from) {
    TreeViewer viewer = getTreeViewer();
    if (viewer != null) {
        try {
            viewer.getControl().setRedraw(false);
            viewer.add(configuration.getType(), configuration);
            // if moved, remove original now
            if (from != null) {
                viewer.remove(from);
            }
            if (isAutoSelect()) {
                viewer.setSelection(new StructuredSelection(configuration), true);
            }
            updateFilterLabel();
        } catch (CoreException e) {
        } finally {
            viewer.getControl().setRedraw(true);
        }
    }
}