Example usage for org.eclipse.jface.viewers ViewerCell getText

List of usage examples for org.eclipse.jface.viewers ViewerCell getText

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ViewerCell getText.

Prototype

public String getText() 

Source Link

Document

Return the text for the cell.

Usage

From source file:ext.org.eclipse.jdt.internal.ui.javaeditor.breadcrumb.BreadcrumbViewer.java

License:Open Source License

@Override
protected void doUpdateItem(Widget widget, Object element, boolean fullMap) {
    if (widget instanceof BreadcrumbItem) {
        final BreadcrumbItem item = (BreadcrumbItem) widget;

        // remember element we are showing
        if (fullMap) {
            associate(element, item);/*  w ww. j  a v  a 2  s.co m*/
        } else {
            Object data = item.getData();
            if (data != null) {
                unmapElement(data, item);
            }
            item.setData(element);
            mapElement(element, item);
        }

        BreadcrumbViewerRow row = new BreadcrumbViewerRow(this, item);
        ViewerCell cell = row.getCell(0);

        ((CellLabelProvider) getLabelProvider()).update(cell);

        item.refreshArrow();

        if (fToolTipLabelProvider != null) {
            item.setToolTip(fToolTipLabelProvider.getText(item.getData()));
        } else {
            item.setToolTip(cell.getText());
        }
    }
}

From source file:org.bonitasoft.studio.businessobject.ui.BusinessObjectDataStyledLabelProvider.java

License:Open Source License

@Override
public void update(final ViewerCell cell) {
    super.update(cell);
    if (cell.getElement() instanceof BusinessObjectData) {
        final BusinessObjectData data = (BusinessObjectData) cell.getElement();
        if (!businessObjectDefinitionExists(data)) {
            final StyledString styledString = createStrikethroughStyle(cell.getText(), data.getClassName());
            cell.setText(styledString.getString());
            cell.setStyleRanges(styledString.getStyleRanges());
        }/*from   w ww  .j av  a2 s .com*/
    }
}

From source file:org.csstudio.alarm.beast.ui.alarmtree.AlarmTreeLabelProvider.java

License:Open Source License

/** Set a cell's text and color from alarm tree item */
@Override/*from w w w .  java 2 s  . c o  m*/
public void update(final ViewerCell cell) {
    final AlarmTreeItem item = (AlarmTreeItem) cell.getElement();
    // Text
    String text = getText(item);
    if (!text.equals(cell.getText()))
        cell.setText(text);

    // Provide icon that represents the item's severity
    if (item instanceof AlarmTreePV && !((AlarmTreePV) item).isEnabled()) {
        cell.setImage(icon_provider.getDisabledIcon());
        cell.setBackground(null);
        cell.setForeground(null);
        return; // done, skip the color coding
    } else
        cell.setImage(icon_provider.getIcon(item.getCurrentSeverity(), item.getSeverity(),
                item.getDisabledChildCount() > 0));

    // Color-code AlarmTreePV based on severity.
    final SeverityLevel severity = item.getSeverity();
    //  'OK' severity isn't color-coded.
    if (severity == SeverityLevel.OK) {
        cell.setBackground(null);
        cell.setForeground(null);
        return;
    }
    //  Generally, the foreground (text) color is set,
    //  but for PV items with active alarms, the background
    //  color is set to make it stand out even more.
    final Color color = color_provider.getColor(severity);
    if ((item instanceof AlarmTreePV) && severity.isActive()) {
        cell.setBackground(color);
        cell.setForeground(null);
    } else {
        cell.setForeground(color);
        cell.setBackground(null);
    }
}

From source file:org.csstudio.display.pvtable.ui.PVTableCellLabelProviderWithChangeIndicator.java

License:Open Source License

@Override
public void update(final ViewerCell cell) {
    final String text = cell.getText();
    final PVTableItem item = (PVTableItem) cell.getElement();
    if (item.isChanged())
        cell.setStyleRanges(new StyleRange[] { new StyleRange(0, text.length(), null, changed_background) });
    else//w w  w.j  ava2s  .  c  o  m
        cell.setStyleRanges(null);

    super.update(cell);
}

From source file:org.eclipse.jface.snippets.viewers.TableCursor.java

License:Open Source License

@Override
protected void paint(Event event) {
    if (getSelectedCells().length == 1 && getSelectedCells()[0] == null)
        return;/*from  w w  w .  j  a  v a  2 s. c o  m*/
    ViewerCell cell = getSelectedCells()[0];

    GC gc = event.gc;
    Display display = getDisplay();
    gc.setBackground(getBackground());
    gc.setForeground(getForeground());
    gc.fillRectangle(event.x, event.y, event.width, event.height);
    int x = 0;
    Point size = getSize();
    Image image = cell.getImage();
    if (image != null) {
        Rectangle imageSize = image.getBounds();
        int imageY = (size.y - imageSize.height) / 2;
        gc.drawImage(image, x, imageY);
        x += imageSize.width;
    }
    String text = cell.getText();
    if (text != "") { //$NON-NLS-1$
        Rectangle bounds = cell.getBounds();
        Point extent = gc.stringExtent(text);
        // Temporary code - need a better way to determine table trim
        if (Util.isWin32()) {
            if (((Table) getParent()).getColumnCount() == 0 || cell.getColumnIndex() == 0) {
                x += 2;
            } else {
                int alignmnent = ((Table) getParent()).getColumn(cell.getColumnIndex()).getAlignment();
                switch (alignmnent) {
                case SWT.LEFT:
                    x += 6;
                    break;
                case SWT.RIGHT:
                    x = bounds.width - extent.x - 6;
                    break;
                case SWT.CENTER:
                    x += (bounds.width - x - extent.x) / 2;
                    break;
                }
            }
        } else {
            if (((Table) getParent()).getColumnCount() == 0) {
                x += 5;
            } else {
                int alignmnent = ((Table) getParent()).getColumn(cell.getColumnIndex()).getAlignment();
                switch (alignmnent) {
                case SWT.LEFT:
                    x += 5;
                    break;
                case SWT.RIGHT:
                    x = bounds.width - extent.x - 2;
                    break;
                case SWT.CENTER:
                    x += (bounds.width - x - extent.x) / 2 + 2;
                    break;
                }
            }
        }
        int textY = (size.y - extent.y) / 2;
        gc.drawString(text, x, textY);
    }
    if (isFocusControl()) {
        gc.setBackground(display.getSystemColor(SWT.COLOR_BLACK));
        gc.setForeground(display.getSystemColor(SWT.COLOR_WHITE));
        gc.drawFocus(0, 0, size.x, size.y);
    }
}

From source file:org.eclipse.jubula.client.ui.provider.DecoratingCellLabelProvider.java

License:Open Source License

/**
 * {@inheritDoc}/*from  w w  w . j ava2s. c  o  m*/
 */
public void update(ViewerCell cell) {

    ViewerLabel label = new ViewerLabel(cell.getText(), cell.getImage());

    // Set up the initial settings from the label provider
    label.setBackground(getBackground(cell.getElement()));
    label.setForeground(getForeground(cell.getElement()));
    label.setFont(getFont(cell.getElement()));

    updateLabel(label, cell.getElement());

    cell.setBackground(label.getBackground());
    cell.setForeground(label.getForeground());
    cell.setFont(label.getFont());

    if (label.hasNewText()) {
        cell.setText(label.getText());
    }

    if (label.hasNewImage()) {
        cell.setImage(label.getImage());
    }
}

From source file:org.eclipse.linuxtools.dataviewers.findreplace.STTableFindReplaceTarget.java

License:Open Source License

public String getSelectionText(ViewerCell index) {
    if (index == null) {
        if (fRow != null)
            return fRow.getCell(0).getText();
        else {/* ww  w. j  av a 2s.  c  om*/
            fRow = new STTableViewerRow(_viewer.getTable().getItem(0));
            return fRow.getCell(0).getText();
        }
    }
    return index.getText();
}

From source file:org.eclipse.linuxtools.dataviewers.findreplace.STTableFindReplaceTarget.java

License:Open Source License

private ViewerCell searchInRow(ViewerRow row, int index, String findString, boolean searchForward,
        boolean caseSensitive, boolean wholeWord, int dirCell, boolean regExSearch) {
    Pattern pattern = null;//from   w  w  w. j a  v  a 2s . c  o m
    if (regExSearch) {
        pattern = Pattern.compile(findString);
    }

    ISTDataViewersField[] fields = getAllFields();

    ViewerCell cell = row.getCell(index);

    do {
        String text = "";

        ISTDataViewersField field = fields[cell.getColumnIndex()];
        if (field.getSpecialDrawer(cell.getElement()) != null) {
            ISpecialDrawerListener hfield = (ISpecialDrawerListener) field;
            text = hfield.getValue(cell.getElement()).trim();
        } else
            text = cell.getText().trim();
        boolean ok = false;

        if (regExSearch) {
            Matcher matcher = pattern.matcher(text);
            ok = matcher.find();
        } else {

            if (wholeWord) {
                if (caseSensitive)
                    ok = text.equals(findString);
                else
                    ok = text.equalsIgnoreCase(findString);
            } else {
                ok = text.contains(findString);

                if (ok && caseSensitive) {
                    text.indexOf(findString);
                }
            }
        }

        if (ok) {
            _viewer.reveal(cell.getElement());
            if (((TableViewer) _viewer).getTable().getSelectionCount() > 0) {
                TableViewer tv = (TableViewer) _viewer;
                Table table = tv.getTable();
                table.deselect(table.indexOf((TableItem) row.getItem()));
            }

            return cell;

        }
        cell = cell.getNeighbor(dirCell, true);
    } while (cell != null);

    return null;
}

From source file:org.eclipse.linuxtools.dataviewers.findreplace.STTreeFindReplaceTarget.java

License:Open Source License

public String getSelectionText(ViewerCell index) {
    if (index == null) {
        if (fRow != null)
            return fRow.getCell(0).getText();
        else {//  w  ww .  j a  v  a2 s  . co  m
            fRow = new STTreeViewerRow(_viewer.getTree().getItem(0));
            return fRow.getCell(0).getText();
        }
    }
    return index.getText();
}

From source file:org.eclipse.linuxtools.dataviewers.findreplace.STTreeFindReplaceTarget.java

License:Open Source License

private ViewerCell searchInRow(ViewerRow row, int index, String findString, boolean searchForward,
        boolean caseSensitive, boolean wholeWord, int dirCell, boolean regExSearch) {
    Pattern pattern = null;/*  w ww.j a v a  2  s . co m*/
    if (regExSearch) {
        pattern = Pattern.compile(findString);
    }

    ISTDataViewersField[] fields = getAllFields();

    ViewerCell cell = row.getCell(index);

    do {
        String text = "";

        ISTDataViewersField field = fields[cell.getColumnIndex()];
        if (field.getSpecialDrawer(cell.getElement()) != null) {
            ISpecialDrawerListener hfield = (ISpecialDrawerListener) field;
            text = hfield.getValue(cell.getElement()).trim();
        } else
            text = cell.getText().trim();

        boolean ok = false;

        if (regExSearch) {
            Matcher matcher = pattern.matcher(text);
            ok = matcher.find();
        } else {
            if (wholeWord) {
                if (caseSensitive)
                    ok = text.equals(findString);
                else
                    ok = text.equalsIgnoreCase(findString);
            } else {
                ok = text.contains(findString);

                if (ok && caseSensitive) {
                    text.indexOf(findString);
                }
            }
        }

        if (ok) {
            _viewer.reveal(cell.getElement());

            if (fSelections != null && fSelections.indexOf(row.getItem()) != -1)
                _viewer.getTree().deselectAll();

            return cell;

        }
        cell = cell.getNeighbor(dirCell, true);
    } while (cell != null);

    return null;
}