Example usage for org.eclipse.jface.viewers ITableLabelProvider getColumnText

List of usage examples for org.eclipse.jface.viewers ITableLabelProvider getColumnText

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ITableLabelProvider getColumnText.

Prototype

public String getColumnText(Object element, int columnIndex);

Source Link

Document

Returns the label text for the given column of the given element.

Usage

From source file:org.eclipse.wst.sse.ui.preferences.CodeAssistCyclingConfigurationBlock.java

License:Open Source License

private void createOwnPageViewer(Composite composite) {
    fOwnPageViewer = CheckboxTableViewer.newCheckList(composite, SWT.SINGLE | SWT.BORDER);
    Table table = fOwnPageViewer.getTable();
    table.setHeaderVisible(true);//from w ww  .  j ava 2  s .com
    table.setLinesVisible(false);
    table.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, true, false, 1, 1));

    TableColumn nameColumn = new TableColumn(table, SWT.NONE);
    nameColumn.setText(SSEUIMessages.CodeAssistAdvancedConfigurationBlock_separate_table_category_column_title);
    nameColumn.setResizable(false);

    fOwnPageViewer.setContentProvider(new ArrayContentProvider());

    ITableLabelProvider labelProvider = new OwnPageTableLabelProvider();
    fOwnPageViewer.setLabelProvider(labelProvider);
    fOwnPageViewer.setInput(fModel.pageElements);
    fOwnPageViewer.setComparator(new ModelViewerComparator(fCategoryPageComparator));

    final int ICON_AND_CHECKBOX_WITH = 50;
    final int HEADER_MARGIN = 20;
    int minNameWidth = computeWidth(table, nameColumn.getText()) + HEADER_MARGIN;
    for (int i = 0; i < fModel.pageElements.size(); i++) {
        minNameWidth = Math.max(minNameWidth,
                computeWidth(table, labelProvider.getColumnText(fModel.pageElements.get(i), 0))
                        + ICON_AND_CHECKBOX_WITH);
    }

    nameColumn.setWidth(minNameWidth);

    fOwnPageViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            boolean checked = event.getChecked();
            ModelElement element = (ModelElement) event.getElement();
            element.setShouldDisplayOnOwnPage(checked);
        }
    });

    table.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            handleOwnPageTableSelection();
        }
    });

}

From source file:org.eclipselabs.changelog.ChangeLogView.java

License:Open Source License

protected void copyToClipBoard(boolean all) {

    FileEntry[] entries;//ww  w . j  a v a2  s  .  c om
    if (all) {
        Collection<?> input = (Collection<?>) filesTreeViewer.getInput();
        entries = input.toArray(new FileEntry[input.size()]);
    } else {
        List<FileEntry> list = ((IStructuredSelection) filesTreeViewer.getSelection()).toList();
        entries = list.toArray(new FileEntry[list.size()]);
    }

    // ordena conforme a ordenao do usurio
    filesTreeViewer.getSorter().sort(filesTreeViewer, entries);

    // pega o mesmo label visvel para o usurio
    ITableLabelProvider labelProvider = (ITableLabelProvider) filesTreeViewer.getLabelProvider();

    StringWriter buf = new StringWriter();
    PrintWriter writer = new PrintWriter(buf);
    for (FileEntry file : entries) {
        writer.print(labelProvider.getColumnText(file, 0));
        writer.print(FILE_REVISION_SEPARATOR);
        writer.println(file.getRevision());
    }

    Clipboard clipboard = new Clipboard(getSite().getShell().getDisplay());
    clipboard.setContents(new Object[] { buf.getBuffer().toString() },
            new Transfer[] { TextTransfer.getInstance() });
    clipboard.dispose();
}

From source file:org.eclipselabs.changelog.ChangeLogView.java

License:Open Source License

private void updateFilesText(Collection<FileEntry> files) {
    StringBuilder buf = new StringBuilder();

    ITableLabelProvider labelProvider = (ITableLabelProvider) filesTreeViewer.getLabelProvider();

    for (FileEntry file : files) {
        buf.append(labelProvider.getColumnText(file, 0));
        buf.append(FILE_REVISION_SEPARATOR);
        buf.append(file.getRevision());//from w  w  w .  ja  v  a  2 s  .com
        buf.append("\n");
    }

    filesTextViewer.getDocument().set(buf.toString());
}

From source file:org.jboss.tools.deltacloud.ui.views.cloudelements.TableViewerColumnComparator.java

License:Open Source License

private int compareByColumn(Viewer viewer, Object e1, Object e2) {
    Assert.isTrue(viewer instanceof TableViewer
            && ((TableViewer) viewer).getLabelProvider() instanceof ITableLabelProvider);

    ITableLabelProvider provider = (ITableLabelProvider) ((TableViewer) viewer).getLabelProvider();
    String s1 = provider.getColumnText(e1, column);
    String s2 = provider.getColumnText(e2, column);
    return s1.compareToIgnoreCase(s2);
}

From source file:org.kalypso.ogc.gml.table.LayerTableViewer.java

License:Open Source License

public String[][] exportTable(final boolean onlySelected) {
    Object[] features;//from  ww  w.  jav  a2 s. c o  m

    if (onlySelected) {
        final IStructuredSelection sel = (IStructuredSelection) getSelection();
        features = sel.toArray();
    } else {
        final IFeaturesProvider featuresProvider = getInput();
        if (featuresProvider == null)
            return new String[0][];

        features = featuresProvider.getFeatureList().toFeatures();
    }

    final Collection<String[]> lines = new ArrayList<>();

    final ITableLabelProvider labelProvider = (ITableLabelProvider) getLabelProvider();

    final Table table = getTable();
    final TableColumn[] columns = table.getColumns();

    final String[] firstLine = new String[columns.length];
    for (int j = 0; j < columns.length; j++)
        firstLine[j] = columns[j].getText();
    lines.add(firstLine);

    for (final Object element : features) {
        final String[] line = new String[columns.length];

        for (int j = 0; j < columns.length; j++)
            line[j] = labelProvider.getColumnText(element, j);

        lines.add(line);
    }

    return lines.toArray(new String[features.length][]);
}

From source file:org.key_project.util.eclipse.swt.SWTUtil.java

License:Open Source License

/**
 * <p>//from  w w w.ja  va 2s  .co  m
 * Makes the columns in the given {@link TableViewer} sortable.
 * </p>
 * <p>
 * <b>Attention:</b> It is required to call this method once after
 * the {@link TableViewer} is filled with the available columns.
 * </p>
 * @param viewer The {@link TableViewer} to make his columns sortable.
 */
public static void makeTableColumnsSortable(final TableViewer viewer) {
    if (viewer != null && !viewer.getTable().isDisposed()) {
        final Table table = viewer.getTable();
        Listener sortListener = new Listener() {
            public void handleEvent(Event e) {
                // determine new sort column and direction
                TableColumn sortColumn = table.getSortColumn();
                TableColumn currentColumn = (TableColumn) e.widget;
                int dir = table.getSortDirection();
                if (sortColumn == currentColumn) {
                    if (dir == SWT.UP) {
                        dir = SWT.DOWN;
                    } else if (dir == SWT.DOWN) {
                        dir = SWT.NONE;
                    } else {
                        dir = SWT.UP;
                    }
                } else {
                    table.setSortColumn(currentColumn);
                    dir = SWT.UP;
                }
                table.setSortDirection(dir);
                final int columnIndex = table.indexOf(currentColumn);
                final int sortDirection = dir;
                // sort the data based on column and direction
                viewer.setComparator(new ViewerComparator() {
                    @Override
                    public int compare(Viewer viewerComp, Object e1, Object e2) {
                        if (sortDirection == SWT.UP || sortDirection == SWT.DOWN) {
                            Assert.isTrue(viewer.getLabelProvider() instanceof ITableLabelProvider);
                            ITableLabelProvider provider = (ITableLabelProvider) viewer.getLabelProvider();
                            String e1value = provider.getColumnText(e1, columnIndex);
                            String e2value = provider.getColumnText(e2, columnIndex);
                            int comparison = e1value.compareTo(e2value);
                            if (sortDirection == SWT.UP) {
                                return comparison;
                            } else {
                                return comparison * -1;
                            }
                        } else {
                            return 0; // Original order.
                        }
                    }
                });
            }
        };
        TableColumn[] columns = table.getColumns();
        for (TableColumn column : columns) {
            column.addListener(SWT.Selection, sortListener);
        }
    }
}

From source file:org.multicore_association.shim.edit.gui.swt.viewer.ShimObjectTableFilter.java

License:MIT License

/**
 * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer,
 *      java.lang.Object, java.lang.Object)
 *///from   w  w w.  j av a2 s  . co  m
@Override
public boolean select(Viewer viewer, Object parentElement, Object element) {
    if (searchString == null || searchString.isEmpty()) {
        return true;
    }

    List<Integer> searchIndexes = new ArrayList<Integer>();

    TableViewer tableViewer = (TableViewer) viewer;
    TableColumn[] columns = tableViewer.getTable().getColumns();
    for (int i = 0; i < columns.length; i++) {
        if (searchFiled != null && !searchFiled.equals(columns[i].getText())) {
            continue;
        }
        searchIndexes.add(i);
    }

    ITableLabelProvider labelProvider = (ITableLabelProvider) tableViewer.getLabelProvider();

    ShimObject obj = (ShimObject) element;
    for (Integer searchIndex : searchIndexes) {
        String columnText = labelProvider.getColumnText(obj, searchIndex);
        if (isMatch(columnText)) {
            return true;
        }
    }

    return false;
}

From source file:org.netxms.ui.eclipse.objectmanager.propertypages.helpers.AccessListComparator.java

License:Open Source License

@Override
public int compare(Viewer viewer, Object e1, Object e2) {
    ITableLabelProvider lp = (ITableLabelProvider) ((SortableTableViewer) viewer).getLabelProvider();
    int column = (Integer) ((SortableTableViewer) viewer).getTable().getSortColumn().getData("ID"); //$NON-NLS-1$
    String text1 = lp.getColumnText(e1, column);
    String text2 = lp.getColumnText(e2, column);
    if (text1 == null)
        text1 = ""; //$NON-NLS-1$
    if (text2 == null)
        text2 = ""; //$NON-NLS-1$
    int result = text1.compareToIgnoreCase(text2);
    return (((SortableTableViewer) viewer).getTable().getSortDirection() == SWT.UP) ? result : -result;
}

From source file:org.nightlabs.base.ui.table.GenericInvertViewerSorter.java

License:Open Source License

@SuppressWarnings("unchecked") //$NON-NLS-1$
public int compare(Viewer viewer, Object e1, Object e2, int columnIndex) {
    int cat1 = category(e1);
    int cat2 = category(e2);

    if (cat1 != cat2) {
        return cat1 - cat2;
    }//from  ww w. j  a v  a  2 s  .co  m

    Comparable comp1 = null;
    Comparable comp2 = null;

    if (viewer == null || !(viewer instanceof ContentViewer)) {
        comp1 = e1.toString();
        comp2 = e2.toString();
    } else {
        ContentViewer contentViewer = (ContentViewer) viewer;
        IBaseLabelProvider prov = ((ContentViewer) viewer).getLabelProvider();

        if (prov instanceof IColumnComparatorProvider) {
            IColumnComparatorProvider cprov = (IColumnComparatorProvider) prov;
            //            comp1 = cprov.getColumnComparable(e1, columnIndex);
            //            comp2 = cprov.getColumnComparable(e2, columnIndex);
            Comparator comparator = cprov.getColumnComparator(e1, columnIndex);
            if (comparator != null) {
                return comparator.compare(e1, e2);
            }
        }
        if (prov instanceof ITableLabelProvider) {
            ITableLabelProvider lprov = (ITableLabelProvider) prov;
            comp1 = lprov.getColumnText(e1, columnIndex);
            comp2 = lprov.getColumnText(e2, columnIndex);
        }
        // handle special case of ColumnViewers and new Eclipse 3.3 API
        // (e.g. TableViewerColumn#setLabelProvider(ColumnLabelProvider))
        else if (contentViewer instanceof ColumnViewer) {
            final ColumnViewer columnViewer = (ColumnViewer) contentViewer;
            // this always returns a result even if no ColumnLabelProvider was set for a column
            // then getText() just returns element.toString(), therefore the check for ColumnLabelProvider
            // should be quite at the end and definitely after the check for ITabelLabelProvider
            CellLabelProvider lprov = columnViewer.getLabelProvider(columnIndex);
            if (lprov != null && (lprov instanceof ColumnLabelProvider)) {
                final ColumnLabelProvider clprov = (ColumnLabelProvider) lprov;
                comp1 = clprov.getText(e1);
                comp2 = clprov.getText(e2);
            } else if (lprov != null && lprov instanceof ColumnSpanLabelProvider) {
                ColumnSpanLabelProvider cslp = (ColumnSpanLabelProvider) lprov;
                comp1 = cslp.getColumnText(e1, columnIndex);
                comp2 = cslp.getColumnText(e2, columnIndex);
            } else {
                comp1 = e1.toString();
                comp2 = e2.toString();
            }
        } else if (prov instanceof ILabelProvider) {
            ILabelProvider lprov = (ILabelProvider) prov;
            comp1 = lprov.getText(e1);
            comp2 = lprov.getText(e2);
        } else {
            comp1 = e1.toString();
            comp2 = e2.toString();
        }
    }
    if (comp1 == null) {
        return comp2 != null ? -1 : 0;
    }
    if (comp2 == null) {
        return comp1 != null ? 1 : 0;
    }

    if (comp1 instanceof String && comp2 instanceof String) {
        return collator.compare(comp1, comp2);
    }
    return comp1.compareTo(comp2);
}

From source file:org.seasar.uruma.viewer.AbstractGenericColumnViewerComparator.java

License:Apache License

/**
 * ????<br />/*w  w w .  ja  v a2 s  .  c  om*/
 * ????????????<br />
 * 
 * @param viewer
 *        {@link ColumnViewer} 
 * @param e1
 *        1
 * @param e2
 *        2
 * @param sortColumn
 *        ??
 * @return ?
 */
protected int doCompare(final ColumnViewer viewer, final Object e1, final Object e2, final int sortColumn) {
    IBaseLabelProvider baseLabelProvider = viewer.getLabelProvider();

    String value1 = "";
    String value2 = "";
    if (baseLabelProvider instanceof ITableLabelProvider) {
        ITableLabelProvider prov = (ITableLabelProvider) baseLabelProvider;
        value1 = prov.getColumnText(e1, sortColumn);
        value2 = prov.getColumnText(e2, sortColumn);
    } else {
        value1 = e1.toString();
        value2 = e2.toString();
    }

    if (value1 == null) {
        value1 = "";
    }
    if (value2 == null) {
        value2 = "";
    }

    return getComparator().compare(value1, value2);
}