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

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

Introduction

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

Prototype

public Tree getTree() 

Source Link

Document

Returns this tree viewer's tree control.

Usage

From source file:org.eclipse.cdt.ui.tests.callhierarchy.CallHierarchyAcrossProjectsTest.java

License:Open Source License

public void testReverseMultipleImplsForMethod() throws Exception {
    StringBuilder[] content = getContentsForTest(3);
    String header = content[0].toString();
    String source1 = content[1].toString();
    String source2 = content[2].toString();
    IFile headerFile = createFile(getProject(), "testMethods.h", header);
    IFile sourceFile1 = createFile(getProject(), "testMethods1.cpp", source1);
    IFile sourceFile2 = createFile(getProject(), "testMethods2.cpp", source2);

    CEditor editor = openEditor(sourceFile2);
    waitUntilFileIsIndexed(fIndex, sourceFile2);

    editor.selectAndReveal(source2.indexOf("main"), 2);
    openCallHierarchy(editor, false);/* ww  w  .  j  a  v a  2s. c om*/
    TreeViewer tv = getCHTreeViewer();

    final Tree tree = tv.getTree();
    checkTreeNode(tree, 0, "main() : void");
    TreeItem item = checkTreeNode(tree, 0, 0, "MyClass::method1() : void");
    checkTreeNode(tree, 0, 1, null);
    tv.setExpandedState(item.getData(), true);

    TreeItem item0 = checkTreeNode(item, 0, "MyClass::method1() : void");
    TreeItem item1 = checkTreeNode(item, 1, "MyClass::method1() : void");
    checkTreeNode(item, 2, null);
    item = null;

    try {
        tv.setExpandedState(item0.getData(), true);
        checkTreeNode(item0, 0, "MyClass::method2() : void");
    } catch (Throwable e) {
        TreeItem tmp = item0;
        item0 = item1;
        item1 = tmp;
    }

    // method 1
    tv.setExpandedState(item0.getData(), true);
    TreeItem nextItem = checkTreeNode(item0, 0, "MyClass::method2() : void");
    checkTreeNode(item0, 1, null);
    item0 = nextItem;
    tv.setExpandedState(item0.getData(), true);
    checkTreeNode(item0, 0, null);

    // method 2
    tv.setExpandedState(item1.getData(), true);
    nextItem = checkTreeNode(item1, 0, "MyClass::method3() : void");
    checkTreeNode(item1, 1, null);
    item1 = nextItem;
    tv.setExpandedState(item1.getData(), true);
    checkTreeNode(item1, 0, null);
}

From source file:org.eclipse.cdt.ui.tests.callhierarchy.CppCallHierarchyTest.java

License:Open Source License

public void testMethodsInMultipleFiles() throws Exception {
    CharSequence[] content = getContentsForTest(3);
    String header = content[0].toString();
    String source1 = content[1].toString();
    String source2 = content[2].toString();
    IFile headerFile = createFile(getProject(), "testMethods.h", header);
    IFile sourceFile1 = createFile(getProject(), "testMethods1.cpp", source1);
    IFile sourceFile2 = createFile(getProject(), "testMethods2.cpp", source2);

    CEditor editor = openEditor(sourceFile1);
    waitUntilFileIsIndexed(fIndex, sourceFile2);

    editor.selectAndReveal(source1.indexOf("method3"), 2);
    openCallHierarchy(editor);//from  w ww .j a  v  a2  s.  c o  m
    TreeViewer tv = getCHTreeViewer();

    checkTreeNode(tv.getTree(), 0, "MyClass::method3() : void");
    TreeItem item = checkTreeNode(tv.getTree(), 0, 0, "MyClass::method2() : void");
    checkTreeNode(tv.getTree(), 0, 1, null);
    tv.setExpandedState(item.getData(), true);
    TreeItem nextItem = checkTreeNode(item, 0, "MyClass::method1() : void");
    checkTreeNode(item, 1, null);
    item = nextItem;
    tv.setExpandedState(item.getData(), true);
    checkTreeNode(item, 0, null);
}

From source file:org.eclipse.cdt.ui.tests.callhierarchy.CppCallHierarchyTest.java

License:Open Source License

public void testMultipleImplsForMethod() throws Exception {
    CharSequence[] content = getContentsForTest(3);
    String header = content[0].toString();
    String source1 = content[1].toString();
    String source2 = content[2].toString();
    IFile headerFile = createFile(getProject(), "testMethods.h", header);
    IFile sourceFile1 = createFile(getProject(), "testMethods1.cpp", source1);
    IFile sourceFile2 = createFile(getProject(), "testMethods2.cpp", source2);

    waitUntilFileIsIndexed(fIndex, sourceFile2);

    CEditor editor = openEditor(sourceFile1);
    editor.selectAndReveal(source1.indexOf("method3"), 2);
    openCallHierarchy(editor);/*from w  w  w  .j a  v  a2  s .c  o m*/
    TreeViewer tv = getCHTreeViewer();

    TreeItem item = checkTreeNode(tv.getTree(), 0, "MyClass::method3() : void");
    TreeItem item0 = checkTreeNode(tv.getTree(), 0, 0, "MyClass::method1() : void");
    TreeItem item1 = checkTreeNode(tv.getTree(), 0, 1, "MyClass::method2() : void");
    checkTreeNode(tv.getTree(), 0, 2, null);
    item = null;

    // method 1
    tv.setExpandedState(item0.getData(), true);
    checkTreeNode(item0, 0, null);

    // method 2
    tv.setExpandedState(item1.getData(), true);
    TreeItem nextItem = checkTreeNode(item1, 0, "MyClass::method1() : void");
    checkTreeNode(item1, 1, null);
    item1 = nextItem;
    tv.setExpandedState(item1.getData(), true);
    checkTreeNode(item1, 0, null);
}

From source file:org.eclipse.cdt.ui.tests.callhierarchy.CppCallHierarchyTest.java

License:Open Source License

public void testReverseMultipleImplsForMethod() throws Exception {
    CharSequence[] content = getContentsForTest(3);
    String header = content[0].toString();
    String source1 = content[1].toString();
    String source2 = content[2].toString();
    IFile headerFile = createFile(getProject(), "testMethods.h", header);
    IFile sourceFile1 = createFile(getProject(), "testMethods1.cpp", source1);
    IFile sourceFile2 = createFile(getProject(), "testMethods2.cpp", source2);

    CEditor editor = openEditor(sourceFile2);
    waitUntilFileIsIndexed(fIndex, sourceFile2);

    editor.selectAndReveal(source2.indexOf("main"), 2);
    openCallHierarchy(editor, false);//from  www.  ja  v  a 2 s  .  c  o m
    TreeViewer tv = getCHTreeViewer();

    checkTreeNode(tv.getTree(), 0, "main() : void");
    TreeItem item = checkTreeNode(tv.getTree(), 0, 0, "MyClass::method1() : void");
    checkTreeNode(tv.getTree(), 0, 1, null);
    tv.setExpandedState(item.getData(), true);

    TreeItem item0 = checkTreeNode(item, 0, "MyClass::method1() : void");
    TreeItem item1 = checkTreeNode(item, 1, "MyClass::method1() : void");
    checkTreeNode(item, 2, null);
    item = null;

    // method 1
    try {
        tv.setExpandedState(item0.getData(), true);
        checkTreeNode(item0, 0, "MyClass::method2() : void");
    } catch (Throwable e) {
        TreeItem tmp = item0;
        item0 = item1;
        item1 = tmp;
    }
    expandTreeItem(item0);
    item = checkTreeNode(item0, 0, "MyClass::method2() : void");
    checkTreeNode(item0, 1, null);
    item0 = item;
    tv.setExpandedState(item0.getData(), true);
    checkTreeNode(item0, 0, null);

    // method 2
    tv.setExpandedState(item1.getData(), true);
    item = checkTreeNode(item1, 0, "MyClass::method3() : void");
    checkTreeNode(item1, 1, null);
    item1 = item;
    tv.setExpandedState(item1.getData(), true);
    checkTreeNode(item1, 0, null);
}

From source file:org.eclipse.cdt.ui.tests.viewsupport.AsyncViewerTest.java

License:Open Source License

private int countVisibleItems(TreeViewer viewer) {
    return countVisibleItems(viewer.getTree().getItems());
}

From source file:org.eclipse.contribution.xref.internal.ui.inplace.XReferenceInplaceDialog.java

License:Open Source License

private void addListenersToTree(TreeViewer treeViewer) {
    final Tree tree = treeViewer.getTree();
    tree.addKeyListener(new KeyListener() {
        public void keyPressed(KeyEvent e) {
            if (e.character == 0x1B) // ESC
                dispose();//w  w  w.j ava  2  s .c  o  m
        }

        public void keyReleased(KeyEvent e) {
            // do nothing
        }
    });

    tree.addSelectionListener(new SelectionListener() {
        public void widgetSelected(SelectionEvent e) {
            // do nothing
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            gotoSelectedElement();
        }
    });

    tree.addMouseMoveListener(new MouseMoveListener() {
        TreeItem fLastItem = null;

        public void mouseMove(MouseEvent e) {
            if (tree.equals(e.getSource())) {
                Object o = tree.getItem(new Point(e.x, e.y));
                if (o instanceof TreeItem) {
                    if (!o.equals(fLastItem)) {
                        fLastItem = (TreeItem) o;
                        tree.setSelection(new TreeItem[] { fLastItem });
                    } else if (e.y < tree.getItemHeight() / 4) {
                        // Scroll up
                        Point p = tree.toDisplay(e.x, e.y);
                        Item item = viewer.scrollUp(p.x, p.y);
                        if (item instanceof TreeItem) {
                            fLastItem = (TreeItem) item;
                            tree.setSelection(new TreeItem[] { fLastItem });
                        }
                    } else if (e.y > tree.getBounds().height - tree.getItemHeight() / 4) {
                        // Scroll down
                        Point p = tree.toDisplay(e.x, e.y);
                        Item item = viewer.scrollDown(p.x, p.y);
                        if (item instanceof TreeItem) {
                            fLastItem = (TreeItem) item;
                            tree.setSelection(new TreeItem[] { fLastItem });
                        }
                    }
                }
            }
        }
    });

    tree.addMouseListener(new MouseAdapter() {
        public void mouseUp(MouseEvent e) {

            if (tree.getSelectionCount() < 1)
                return;

            if (e.button != 1)
                return;

            if (tree.equals(e.getSource())) {
                Object o = tree.getItem(new Point(e.x, e.y));
                TreeItem selection = tree.getSelection()[0];
                if (selection.equals(o)) {
                    gotoSelectedElement();
                }
            }
        }
    });

    doubleClickAction = new DoubleClickAction(dialogShell, treeViewer);

    treeViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            doubleClickAction.run();
            if (dialogShell != null && dialogShell.isDisposed()) {
                dispose();
            }
        }
    });

    treeViewer.getTree().addKeyListener(getKeyAdapter());
}

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

License:Open Source License

public static TreeObject getTreeObjectForSelection(TreeViewer viewer, ISelection selection,
        IWorkbenchPart part) {//from  w w  w. j  av a 2 s . c o m
    if (selection instanceof IStructuredSelection) {
        IStructuredSelection structuredSelection = (IStructuredSelection) selection;
        Object first = structuredSelection.getFirstElement();
        if (first instanceof IJavaElement) {
            return getTreeObjectForJavaElement(viewer.getTree().getItems(), (IJavaElement) first);
        } else if (first instanceof TreeObject) {
            Object data = ((TreeObject) first).getData();
            if (data instanceof IJavaElement) {
                return getTreeObjectForJavaElement(viewer.getTree().getItems(), (IJavaElement) data);
            }
        }
    } else if (part instanceof IEditorPart && selection instanceof ITextSelection) {
        if (part instanceof JavaEditor) {
            JavaEditor je = (JavaEditor) part;
            ISourceReference sourceRef = XRefUIUtils.computeHighlightRangeSourceReference(je);
            IJavaElement javaElement = (IJavaElement) sourceRef;
            return getTreeObjectForJavaElement(viewer.getTree().getItems(), javaElement);
        }
    }
    return null;
}

From source file:org.eclipse.datatools.connectivity.internal.ui.dialogs.DriverDialog.java

License:Open Source License

public static TreeSortSelectionListener createTableColumn(TreeViewer viewer, String text, String tooltip,
        AbstractInvertableTableSorter sorter, int initialDirection, boolean keepDirection) {
    TreeColumn column = new TreeColumn(viewer.getTree(), SWT.LEFT);
    column.setText(text);/*from  w w w . j a  v a  2  s  . c om*/
    column.setToolTipText(tooltip);
    return new TreeSortSelectionListener(viewer, column, sorter, initialDirection, keepDirection);
}

From source file:org.eclipse.datatools.connectivity.ui.dse.dialogs.ProfileSelectionDialogPage.java

License:Open Source License

/**
 * Select all profiles/*ww  w.j  ava  2s . c o m*/
 */
public void selectAll() {
    TreeViewer viewer = (TreeViewer) this.getNavigatorViewer();
    viewer.getTree().selectAll();
    validate();
}

From source file:org.eclipse.datatools.connectivity.ui.dse.dialogs.ProfileSelectionDialogPage.java

License:Open Source License

/**
 * Deselect all profiles/*from   ww w.j a v  a  2s .c om*/
 */
public void unselectAll() {
    TreeViewer viewer = (TreeViewer) this.getNavigatorViewer();
    viewer.getTree().deselectAll();
}