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

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

Introduction

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

Prototype

@Override
public IBaseLabelProvider getLabelProvider() 

Source Link

Document

The tree viewer implementation of this Viewer framework method ensures that the given label provider is an instance of either ITableLabelProvider or ILabelProvider.

Usage

From source file:org.talend.core.ui.context.ContextTableValuesComposite.java

License:Open Source License

private void addSorter(final TreeViewer viewer2) {
    final Tree table = viewer2.getTree();
    Listener sortListener = new Listener() {

        private int direction = 1;

        @Override//from  w w w.j av  a2s.  com
        public void handleEvent(Event e) {
            final TreeColumn column = (TreeColumn) e.widget;

            if (column == table.getSortColumn()) {
                direction = -direction;
            }
            if (direction == 1) {
                table.setSortDirection(SWT.UP);
            } else {
                table.setSortDirection(SWT.DOWN);
            }

            table.setSortColumn(column);
            viewer2.setSorter(new ViewerSorter() {

                int index = 0;

                @Override
                public void sort(Viewer viewer, Object[] elements) {
                    boolean found = false;
                    // find the sort column index
                    for (index = 0; index < table.getColumns().length; index++) {
                        if (table.getColumn(index) == table.getSortColumn()) {
                            found = true;
                            break;
                        }
                    }
                    if (!found) {
                        index = 0; // first one as default
                    }
                    super.sort(viewer, elements);
                }

                @Override
                public int compare(Viewer viewer, Object e1, Object e2) {
                    ITableLabelProvider labelProvider = (ITableLabelProvider) viewer2.getLabelProvider();
                    String columnText = labelProvider.getColumnText(e1, index) != null
                            ? labelProvider.getColumnText(e1, index)
                            : ""; //$NON-NLS-1$
                    String columnText2 = labelProvider.getColumnText(e2, index) != null
                            ? labelProvider.getColumnText(e2, index)
                            : ""; //$NON-NLS-1$
                    return getComparator().compare(columnText, columnText2) * direction;
                }
            });
        }
    };
    table.getColumn(0).addListener(SWT.Selection, sortListener);
    if (getContexts().size() > 0) {
        for (int i = 0; i < getContexts().size(); i++) {
            table.getColumn(i + 1).addListener(SWT.Selection, sortListener);
        }
    }
    table.setSortColumn(table.getColumn(0));
    table.setSortDirection(SWT.UP);
}

From source file:org.talend.core.ui.context.ContextTreeValuesComposite.java

License:Open Source License

/**
 * DOC bqian Comment method "addSorter".
 * /*from w  ww.  j  a  va2 s. c o  m*/
 * @param viewer2
 */
private void addSorter(final TreeViewer viewer2) {
    final Tree table = viewer2.getTree();
    Listener sortListener = new Listener() {

        private int direction = 1;

        @Override
        public void handleEvent(Event e) {
            final TreeColumn column = (TreeColumn) e.widget;

            if (column == table.getSortColumn()) {
                direction = -direction;
            }
            if (direction == 1) {
                table.setSortDirection(SWT.UP);
            } else {
                table.setSortDirection(SWT.DOWN);
            }

            table.setSortColumn(column);
            viewer2.setSorter(new ViewerSorter() {

                int index = 0;

                @Override
                public void sort(Viewer viewer, Object[] elements) {
                    while (index < table.getColumns().length && table.getColumn(index) != column) {
                        index++;
                    }
                    super.sort(viewer, elements);
                }

                @Override
                public int compare(Viewer viewer, Object e1, Object e2) {
                    ITableLabelProvider labelProvider = (ITableLabelProvider) viewer2.getLabelProvider();
                    String columnText = labelProvider.getColumnText(e1, index) != null
                            ? labelProvider.getColumnText(e1, index)
                            : ""; //$NON-NLS-1$
                    String columnText2 = labelProvider.getColumnText(e2, index) != null
                            ? labelProvider.getColumnText(e2, index)
                            : ""; //$NON-NLS-1$
                    return getComparator().compare(columnText, columnText2) * direction;
                }
            });
            viewer2.expandAll();
        }
    };
    table.getColumn(0).addListener(SWT.Selection, sortListener);
    table.getColumn(1).addListener(SWT.Selection, sortListener);
    table.setSortColumn(table.getColumn(0));
    table.setSortDirection(SWT.UP);
}

From source file:org.talend.designer.maven.ui.setting.repository.RepositoryMavenSettingManager.java

License:Open Source License

public void init(TreeViewer treeViewer) {
    // from tree item
    TreeItem[] items = treeViewer.getTree().getItems();
    createNodes(this.getRoot(), (ILabelProvider) treeViewer.getLabelProvider(), items);

}