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:eu.udig.omsbox.ui.CoverageLayersTreeViewer.java

License:Open Source License

public CoverageLayersTreeViewer(Composite parent, int style, int selectionStyle) {
    super(parent, style);
    setLayout(new GridLayout(1, false));
    GridData gridData = new GridData();
    gridData.grabExcessHorizontalSpace = true;
    gridData.horizontalAlignment = org.eclipse.swt.layout.GridData.FILL;
    gridData.verticalAlignment = org.eclipse.swt.layout.GridData.FILL;
    gridData.grabExcessVerticalSpace = true;
    setLayoutData(gridData);/*  ww w  .j a va  2 s. c o m*/

    try {
        getCoverageResources();
    } catch (IOException e) {
        e.printStackTrace();
    }

    // Create the tree viewer to display the file tree
    PatternFilter patternFilter = new PatternFilter();
    final FilteredTree filter = new FilteredTree(this, selectionStyle, patternFilter, true);
    final TreeViewer tv = filter.getViewer();
    tv.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
    tv.setContentProvider(new MyContentProvider());
    MyLabelProvider labelProvider = new MyLabelProvider();
    tv.setLabelProvider(labelProvider);
    tv.setInput(itemsMap);
    tv.addSelectionChangedListener(this);
}

From source file:ext.org.eclipse.jdt.internal.ui.model.JavaSynchronizationContentProvider.java

License:Open Source License

/**
 * Handles a diff change event./*ww w  .  j  a va2  s.  co m*/
 *
 * @param event
 *            the event
 */
private void handleChange(final IDiffChangeEvent event) {
    final Set<IJavaProject> existing = getVisibleProjects();
    // Get all existing and open projects that contain changes
    // and determine what needs to be done to the project
    // (i.e. add, remove or refresh)
    final IJavaProject[] changed = getChangedProjects(event);
    final List<IJavaProject> refreshes = new ArrayList<IJavaProject>(changed.length);
    final List<IJavaProject> additions = new ArrayList<IJavaProject>(changed.length);
    final List<IJavaProject> removals = new ArrayList<IJavaProject>(changed.length);
    for (int index = 0; index < changed.length; index++) {
        final IJavaProject project = changed[index];
        if (hasVisibleChanges(event.getTree(), project)) {
            if (existing.contains(project))
                refreshes.add(project);
            else
                additions.add(project);
        } else
            removals.add(project);
    }
    // Remove any java projects that correspond to deleted or closed projects
    final Set<IProject> removed = getDeletedProjects(event);
    for (final Iterator<IJavaProject> iterator = existing.iterator(); iterator.hasNext();) {
        final IJavaProject element = iterator.next();
        if (removed.contains(element.getResource()))
            removals.add(element);
    }

    if (!removals.isEmpty() || !additions.isEmpty() || !refreshes.isEmpty()) {
        final TreeViewer viewer = (TreeViewer) getViewer();
        final Tree tree = viewer.getTree();
        try {
            tree.setRedraw(false);
            if (!additions.isEmpty())
                viewer.add(viewer.getInput(), additions.toArray());
            if (!removals.isEmpty())
                viewer.remove(viewer.getInput(), removals.toArray());
            if (!refreshes.isEmpty()) {
                for (final Iterator<IJavaProject> iter = refreshes.iterator(); iter.hasNext();)
                    viewer.refresh(iter.next());
            }
        } finally {
            tree.setRedraw(true);
        }
    }
}

From source file:ext.org.eclipse.jdt.internal.ui.refactoring.reorg.ReorgUserInputPage.java

License:Open Source License

private TreeViewer createViewer(Composite parent) {
    TreeViewer treeViewer = new TreeViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.widthHint = convertWidthInCharsToPixels(40);
    gd.heightHint = convertHeightInCharsToPixels(15);
    treeViewer.getTree().setLayoutData(gd);
    treeViewer.setLabelProvider(new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_SMALL_ICONS));
    treeViewer.setContentProvider(new DestinationContentProvider(getDestinationValidator()));
    treeViewer.setComparator(new JavaElementComparator());
    treeViewer.setInput(JavaCore.create(ResourcesPlugin.getWorkspace().getRoot()));
    return treeViewer;
}

From source file:ext.org.eclipse.jdt.internal.ui.text.JavaOutlineInformationControl.java

License:Open Source License

/**
 * {@inheritDoc}/* w  w  w . j  av a  2 s .co m*/
 */
@Override
protected TreeViewer createTreeViewer(Composite parent, int style) {
    Tree tree = new Tree(parent, SWT.SINGLE | (style & ~SWT.MULTI));
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = tree.getItemHeight() * 12;
    tree.setLayoutData(gd);

    final TreeViewer treeViewer = new OutlineTreeViewer(tree);

    // Hard-coded filters
    treeViewer.addFilter(new NamePatternFilter());
    treeViewer.addFilter(new MemberFilter());

    fInnerLabelProvider = new OutlineLabelProvider();
    fInnerLabelProvider.addLabelDecorator(new ProblemsLabelDecorator(null));
    IDecoratorManager decoratorMgr = PlatformUI.getWorkbench().getDecoratorManager();
    if (decoratorMgr.getEnabled("org.eclipse.jdt.ui.override.decorator")) //$NON-NLS-1$
        fInnerLabelProvider.addLabelDecorator(new OverrideIndicatorLabelDecorator(null));

    treeViewer.setLabelProvider(new ColoringLabelProvider(fInnerLabelProvider));

    fLexicalSortingAction = new LexicalSortingAction(treeViewer);
    fSortByDefiningTypeAction = new SortByDefiningTypeAction(treeViewer);
    fShowOnlyMainTypeAction = new ShowOnlyMainTypeAction(treeViewer);
    fCategoryFilterActionGroup = new CategoryFilterActionGroup(treeViewer, getId(), getInputForCategories());

    fOutlineContentProvider = new OutlineContentProvider(false);
    treeViewer.setContentProvider(fOutlineContentProvider);
    fOutlineSorter = new OutlineSorter();
    treeViewer.setComparator(fOutlineSorter);
    treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);

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

    return treeViewer;
}

From source file:ext.org.eclipse.jdt.internal.ui.typehierarchy.HierarchyInformationControl.java

License:Open Source License

@Override
protected TreeViewer createTreeViewer(Composite parent, int style) {
    Tree tree = new Tree(parent, SWT.SINGLE | (style & ~SWT.MULTI));
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = tree.getItemHeight() * 12;
    tree.setLayoutData(gd);//w ww. j a  v  a 2  s  . c o m

    TreeViewer treeViewer = new TreeViewer(tree);
    treeViewer.addFilter(new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            return element instanceof IType;
        }
    });

    fLifeCycle = new TypeHierarchyLifeCycle(false);

    treeViewer.setComparator(new HierarchyViewerSorter(fLifeCycle));
    treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);

    fLabelProvider = new HierarchyLabelProvider(fLifeCycle);
    fLabelProvider.setFilter(new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            return hasFocusMethod((IType) element);
        }
    });

    fLabelProvider.setTextFlags(JavaElementLabels.ALL_DEFAULT | JavaElementLabels.T_POST_QUALIFIED
            | JavaElementLabels.P_COMPRESSED);
    fLabelProvider.addLabelDecorator(new ProblemsLabelDecorator(null));
    treeViewer.setLabelProvider(new ColoringLabelProvider(fLabelProvider));

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

    return treeViewer;
}

From source file:ext.org.eclipse.jdt.internal.ui.typehierarchy.HierarchyInformationControl.java

License:Open Source License

protected void toggleHierarchy() {
    TreeViewer treeViewer = getTreeViewer();

    treeViewer.getTree().setRedraw(false);

    Object[] expandedElements = treeViewer.getExpandedElements();
    TypeHierarchyContentProvider contentProvider = (TypeHierarchyContentProvider) treeViewer
            .getContentProvider();//ww  w. j a  va2  s.  c o  m
    treeViewer.setContentProvider(fOtherContentProvider);

    treeViewer.refresh();
    if (fOtherExpandedElements != null) {
        treeViewer.setExpandedElements(fOtherExpandedElements);
    } else {
        treeViewer.expandAll();
    }

    // reveal selection
    Object selectedElement = getSelectedElement();
    if (selectedElement != null)
        getTreeViewer().reveal(selectedElement);
    else
        selectFirstMatch();

    treeViewer.getTree().setRedraw(true);

    fOtherContentProvider = contentProvider;
    fOtherExpandedElements = expandedElements;

    updateStatusFieldText();
}

From source file:ext.org.eclipse.jdt.internal.ui.workingsets.JavaWorkingSetPage.java

License:Open Source License

/**
 * {@inheritDoc}/*from www.j a  v  a 2  s.  co  m*/
 */
@Override
protected void configureTree(TreeViewer tree) {
    tree.setContentProvider(new JavaWorkingSetPageContentProvider());

    AppearanceAwareLabelProvider javaElementLabelProvider = new AppearanceAwareLabelProvider(
            AppearanceAwareLabelProvider.DEFAULT_TEXTFLAGS | JavaElementLabels.P_COMPRESSED,
            AppearanceAwareLabelProvider.DEFAULT_IMAGEFLAGS | JavaElementImageProvider.SMALL_ICONS);

    tree.setLabelProvider(new DecoratingJavaLabelProvider(javaElementLabelProvider));
    tree.setComparator(new JavaElementComparator());
    tree.addFilter(new EmptyInnerPackageFilter());

    tree.setInput(JavaCore.create(ResourcesPlugin.getWorkspace().getRoot()));

    if (getSelection() == null)
        return;

    Object[] selection = getInitialTreeSelection();
    if (selection.length > 0) {
        try {
            tree.getTree().setRedraw(false);

            for (int i = 0; i < selection.length; i++) {
                tree.expandToLevel(selection[i], 0);
            }
            tree.setSelection(new StructuredSelection(selection));
        } finally {
            tree.getTree().setRedraw(true);
        }
    }
}

From source file:fr.inria.linuxtools.tmf.ui.viewers.tree.TmfTreeColumnData.java

License:Open Source License

/**
 * Create a TreeColumn with this column's data and adds it to a {@link Tree}
 *
 * @param treeViewer/* ww w .j  ava 2 s .  c  om*/
 *            The {@link TreeViewer} object to add the column to
 * @return The newly created {@link TreeViewerColumn}
 */
@NonNull
public TreeViewerColumn createColumn(final TreeViewer treeViewer) {
    final TreeViewerColumn column = new TreeViewerColumn(treeViewer, getAlignment());
    final TmfTreeColumnData columnData = this;
    column.getColumn().setText(getText());
    if (getWidth() != -1) {
        column.getColumn().setWidth(getWidth());
    }
    if (getTooltip() != null) {
        column.getColumn().setToolTipText(getTooltip());
    }
    column.getColumn().setMoveable(isMovable());

    /* Add the comparator to sort the column */
    if (getComparator() != null) {
        column.getColumn().addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {

                if (treeViewer.getTree().getSortDirection() == SWT.UP
                        || treeViewer.getTree().getSortColumn() != column.getColumn()) {
                    /*
                     * Puts the descendant order if the old order was up
                     * or if the selected column has changed.
                     */
                    treeViewer.setComparator(columnData.getComparator());
                    treeViewer.getTree().setSortDirection(SWT.DOWN);
                } else {
                    ViewerComparator reverseComparator;
                    /* Initializes the reverse comparator. */
                    reverseComparator = new ViewerComparator() {
                        @Override
                        public int compare(Viewer viewer, Object e1, Object e2) {
                            return -1 * columnData.getComparator().compare(viewer, e1, e2);
                        }
                    };

                    /*
                     * Puts the ascendant ordering if the selected
                     * column hasn't changed.
                     */
                    treeViewer.setComparator(reverseComparator);
                    treeViewer.getTree().setSortDirection(SWT.UP);
                }
                treeViewer.getTree().setSortColumn(column.getColumn());
            }
        });
    }

    return column;
}

From source file:fr.labsticc.framework.ide.viewpart.TreeColumnSorter.java

License:Open Source License

@Override
public int compare(final Viewer p_viewer, final Object p_obj1, final Object p_obj2) {
    Object prop1;/*from   ww w.  ja  v a  2s  .com*/
    Object prop2;

    if (column == null) {
        prop1 = p_obj1;
        prop2 = p_obj2;
    } else {
        final TreeViewer treeViewer = (TreeViewer) p_viewer;
        final int colIndex = indexOf(treeViewer.getTree(), column);
        //         
        //         final IBaseLabelProvider lblProvider = treeViewer.getLabelProvider();
        //         
        //         if ( lblProvider instnaceof TreeCellLabelProvider ) {
        //            final TreeCellLabelProvider lblProvider = (TreeCellLabelProvider) treeViewer.getLabelProvider();
        prop1 = getColumnText(treeViewer, p_obj1, colIndex);

        if (prop1 == null) {
            Image image = getColumnImage(treeViewer, p_obj1, colIndex);
            prop1 = image == null ? null : image.toString();

            image = getColumnImage(treeViewer, p_obj2, colIndex);
            prop2 = image == null ? null : image.toString();
        } else {
            prop2 = getColumnText(treeViewer, p_obj2, colIndex);
        }
    }

    if (ascend()) {
        return comparator.compare(prop1, prop2);
    }

    return comparator.compare(prop2, prop1);
}

From source file:fr.openpeople.rdal.ide.view.traceability.navigator.AbstractShowHideOutlineCoverageActionDelegate.java

License:Open Source License

protected void setCoverageColumnVisible(final boolean pb_value) {
    final TreeViewer viewer = getTreeViewer(outlineView.getCurrentPage());

    if (viewer != null) {
        final Tree tree = viewer.getTree();

        if (pb_value) {
            if (tree.getColumnCount() != 2) {
                parentLayout = tree.getParent().getLayout();
                final TreeColumnLayout colLayout = new TreeColumnLayoutFixed();
                tree.getParent().setLayout(colLayout);
                final TreeColumn resourceColumn = new TreeColumn(tree, SWT.NONE);
                resourceColumn.setText("Resources");
                resourceColumn.setWidth(150);
                final ColumnWeightData colDataRes = new ColumnWeightData(50, 200);
                colLayout.setColumnData(resourceColumn, colDataRes);
                resourceColumn.setWidth(colDataRes.minimumWidth);

                final TreeViewerColumn coverageViewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
                coverageViewerColumn.setLabelProvider(new CoverageLabelProvider(coverageViewerColumn, viewer,
                        RdalIdePlugin.getDefault().getDefinedCoverageListers(),
                        RdalIdePlugin.getDefault().getExceptionHandler()));

                final TreeColumn coverageColumn = coverageViewerColumn.getColumn();
                coverageColumn.setText("Verif. Rate");
                final ColumnWeightData colDataCov = new ColumnWeightData(50, 80);
                colLayout.setColumnData(coverageColumn, colDataCov);
                // DB 30/05/2011 Set width now seems necessary. Change in JFace?
                coverageColumn.setWidth(colDataCov.minimumWidth);
            }//from ww  w.  j  a  v a 2s .c o m
        } else {
            for (final TreeColumn column : tree.getColumns()) {
                column.dispose();
            }

            tree.getParent().setLayout(parentLayout);
        }

        tree.setHeaderVisible(pb_value);
        tree.getParent().layout();
        viewer.refresh();
    }
}