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

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

Introduction

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

Prototype

public void setForeground(Color foreground) 

Source Link

Document

Set the foreground color of the cell.

Usage

From source file:com.kdmanalytics.toif.ui.views.FindingStyledLabelProvider.java

License:Open Source License

public void update(final ViewerCell cell) {
    final IFindingEntry entry = (IFindingEntry) cell.getElement();
    int index = cell.getColumnIndex();
    String text = getColumnText(entry, index);
    if (text == null) {
        text = "";
    }//from   w w w.  ja va2s  .co  m
    final StyledString styledString = new StyledString(text);

    Boolean citing = entry.getCiting();
    if (citing != null) {
        if (citing) {
            cell.setForeground(FOREGROUND_RED);
            cell.setBackground(RED);
        } else {
            cell.setForeground(FOREGROUND_GREEN);
            cell.setBackground(GREEN);
        }
    } else {
        cell.setForeground(FOREGROUND_BLACK);
        cell.setBackground(WHITE);
    }

    cell.setText(styledString.toString());
    cell.setStyleRanges(styledString.getStyleRanges());
    cell.setImage(getImage(entry, cell.getColumnIndex()));
}

From source file:com.logcat.offline.view.ddmuilib.logcat.LogCatMessageLabelProvider.java

License:Apache License

@Override
public void update(ViewerCell cell) {
    Object element = cell.getElement();
    if (!(element instanceof LogCatMessageWrapper)) {
        return;//from   w  ww  .  j a va  2  s  . co  m
    }
    LogCatMessage m = ((LogCatMessageWrapper) element).getLogCatMessage();

    String text = getCellText(m, cell.getColumnIndex());
    cell.setText(text);
    cell.setFont(mLogFont);
    cell.setForeground(getForegroundColor(m));
    cell.setBackground(getBackgroundColor((LogCatMessageWrapper) element));
}

From source file:com.maccasoft.composer.MusicEditor.java

License:Open Source License

void createMusicViewer(Composite parent) {
    Group group = new Group(parent, SWT.NONE);
    group.setText("Pattern");
    group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    group.setLayout(new GridLayout(1, false));

    final Font font;
    if ("win32".equals(SWT.getPlatform())) {
        font = new Font(Display.getDefault(), "Courier New", 10, SWT.NONE);
    } else {/*from  ww w . j a va 2s  . c  o  m*/
        font = new Font(Display.getDefault(), "mono", 10, SWT.NONE);
    }

    GC gc = new GC(group);
    gc.setFont(font);
    FontMetrics fontMetrics = gc.getFontMetrics();
    gc.dispose();

    Grid table = new Grid(group, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
    table.setHeaderVisible(true);
    table.setLinesVisible(false);
    table.setRowHeaderVisible(true);
    table.setItemHeaderWidth(Dialog.convertWidthInCharsToPixels(fontMetrics, 6));
    table.setCellSelectionEnabled(true);
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    table.setFont(font);

    table.addDisposeListener(new DisposeListener() {

        @Override
        public void widgetDisposed(DisposeEvent e) {
            font.dispose();
        }
    });

    viewer = new GridTableViewer(table);

    ObservableListContentProvider contentProvider = new ObservableListContentProvider() {

        @Override
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
            if (oldInput != null) {
                ((IObservableList) oldInput).removeListChangeListener(listChangeListener);
            }
            if (newInput != null) {
                ((IObservableList) newInput).addListChangeListener(listChangeListener);
            }
            Display.getDefault().timerExec(0, rowBackgroundUpdateRunnable);
            super.inputChanged(viewer, oldInput, newInput);
        }
    };
    viewer.setContentProvider(contentProvider);

    viewer.setRowHeaderLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            int index = ((IObservableList) viewer.getInput()).indexOf(cell.getElement());
            cell.setText(String.format("%02X", index));
        }
    });

    for (int ch = 0; ch < Project.channelLabels.length; ch++) {
        final int channel = ch;

        GridColumnGroup columnGroup = new GridColumnGroup(table, SWT.NONE);
        columnGroup.setText(Project.channelLabels[ch]);

        GridColumn column = new GridColumn(columnGroup, SWT.CENTER);
        column.setText("Note");
        column.setWidth(Dialog.convertWidthInCharsToPixels(fontMetrics, 6));
        GridViewerColumn viewerColumn = new GridViewerColumn(viewer, column);
        viewerColumn.setLabelProvider(new CellLabelProvider() {

            @Override
            public void update(ViewerCell cell) {
                SongRow element = (SongRow) cell.getElement();
                cell.setText(element.getNote(channel));
            }
        });
        viewerColumn.setEditingSupport(new TextEditingSupport(viewer) {

            @Override
            protected Object getValue(Object element) {
                return ((SongRow) element).getNote(channel);
            }

            @Override
            protected void setValue(Object element, Object value) {
                ((SongRow) element).setNote(channel, value.toString());
                viewer.update(element, null);
            }
        });

        column = new GridColumn(columnGroup, SWT.CENTER);
        column.setText("Ins.");
        column.setWidth(Dialog.convertWidthInCharsToPixels(fontMetrics, 6));
        viewerColumn = new GridViewerColumn(viewer, column);
        viewerColumn.setLabelProvider(new CellLabelProvider() {

            @Override
            public void update(ViewerCell cell) {
                SongRow element = (SongRow) cell.getElement();
                String value = element.getInstrument(channel);
                cell.setText(value);
                if (project.getInstrument(value) == null) {
                    cell.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_RED));
                } else {
                    cell.setForeground(null);
                }
            }
        });
        viewerColumn.setEditingSupport(new TextEditingSupport(viewer) {

            @Override
            protected Object getValue(Object element) {
                return ((SongRow) element).getInstrument(channel);
            }

            @Override
            protected void setValue(Object element, Object value) {
                ((SongRow) element).setInstrument(channel, value.toString());
                viewer.update(element, null);
            }
        });

        column = new GridColumn(columnGroup, SWT.CENTER);
        column.setText("Fx1");
        column.setWidth(Dialog.convertWidthInCharsToPixels(fontMetrics, 6));
        viewerColumn = new GridViewerColumn(viewer, column);
        viewerColumn.setLabelProvider(new CellLabelProvider() {

            @Override
            public void update(ViewerCell cell) {
                SongRow element = (SongRow) cell.getElement();
                String value = element.getFx1(channel);
                cell.setText(value);
                if (value.startsWith("TR") && project.getInstrument(element.getInstrument(channel)) == null) {
                    cell.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_RED));
                } else {
                    cell.setForeground(null);
                }
            }
        });
        viewerColumn.setEditingSupport(new TextEditingSupport(viewer) {

            @Override
            protected Object getValue(Object element) {
                return ((SongRow) element).getFx1(channel);
            }

            @Override
            protected void setValue(Object element, Object value) {
                ((SongRow) element).setFx1(channel, value.toString());
                viewer.update(element, null);
            }
        });

        column = new GridColumn(columnGroup, SWT.CENTER);
        column.setText("Fx2");
        column.setWidth(Dialog.convertWidthInCharsToPixels(fontMetrics, 6));
        viewerColumn = new GridViewerColumn(viewer, column);
        viewerColumn.setLabelProvider(new CellLabelProvider() {

            @Override
            public void update(ViewerCell cell) {
                SongRow element = (SongRow) cell.getElement();
                String value = element.getFx2(channel);
                cell.setText(value);
                if (value.startsWith("TR") && project.getInstrument(element.getInstrument(channel)) == null) {
                    cell.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_RED));
                } else {
                    cell.setForeground(null);
                }
            }
        });
        viewerColumn.setEditingSupport(new TextEditingSupport(viewer) {

            @Override
            protected Object getValue(Object element) {
                return ((SongRow) element).getFx2(channel);
            }

            @Override
            protected void setValue(Object element, Object value) {
                ((SongRow) element).setFx2(channel, value.toString());
                viewer.update(element, null);
            }
        });
    }

    table.addKeyListener(new NoteKeyListener(viewer) {

        @Override
        protected int getOctave() {
            return octave.getSelection();
        }

        @Override
        protected String getInstrument() {
            IStructuredSelection selection = instrumentToolBar.getStructuredSelection();
            String id = project.getInstrumentId((Instrument) selection.getFirstElement());
            return id != null ? id : super.getInstrument();
        }
    });

    ColumnViewerEditorActivationStrategy activationStrategy = new ColumnViewerEditorActivationStrategy(viewer) {

        @Override
        protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) {
            return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL
                    || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION
                    || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED
                            && event.character == SWT.CR)
                    || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC;
        }
    };
    activationStrategy.setEnableEditorActivationWithKeyboard(true);

    GridViewerEditor.create(viewer, activationStrategy, ColumnViewerEditor.TABBING_HORIZONTAL
            | ColumnViewerEditor.KEYBOARD_ACTIVATION | GridViewerEditor.SELECTION_FOLLOWS_EDITOR);
}

From source file:com.matlab.eclipse.mconsole.views.CommandHistoryLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    if (cell.getElement() instanceof CommandHistoryEntry) {
        ThemeWrapper theme = MConsolePlugin.getDefault().getCurrentTheme();
        CommandHistoryEntry commandHistoryEntry = (CommandHistoryEntry) cell.getElement();

        String entry = commandHistoryEntry.getName();
        if (entry.contains(System.getProperty("line.separator"))) {
            cell.setText(/*from w  ww  . ja  va2 s  .  com*/
                    commandHistoryEntry.toString().replaceAll(System.getProperty("line.separator"), "\\\\n"));
        } else {
            cell.setText(commandHistoryEntry.toString());
        }
        try {
            if (commandHistoryEntry.getName().startsWith("%")) {
                cell.setForeground(theme.getColor(ThemeConstants.COMMANDHISTORY_DATE_COLOR));
            } else
                cell.setForeground(theme.getColor(ThemeConstants.COMMANDHISTORY_FOREGROUND_COLOR));
            cell.setBackground(theme.getColor(ThemeConstants.COMMANDHISTORY_BACKGROUND_COLOR));
            cell.setFont(theme.getFont(ThemeConstants.COMMANDHISTORY_FONT));

        } catch (Exception e) {

        }
    }

}

From source file:com.microsoft.tfs.client.common.ui.controls.TeamProjectTable.java

License:Open Source License

private void setCellForeground(final ViewerCell cell, final int color) {
    cell.setForeground(getDisplay().getSystemColor(color));
}

From source file:com.microsoft.tfs.client.eclipse.ui.egit.importwizard.GitImportWizardSelectProjectsPage.java

License:Open Source License

private void setCellForeground(final ViewerCell cell, final int color) {
    cell.setForeground(getControl().getDisplay().getSystemColor(color));
}

From source file:de.dentrassi.eclipse.rpm.editor.ContentTable.java

License:Open Source License

private void createColumn(final TreeColumnLayout layout, final String label, final int weight, final int flags,
        final BiConsumer<Node, ViewerCell> consumer) {
    {/*ww w  .  ja v a 2 s. c om*/
        final TreeViewerColumn col = new TreeViewerColumn(this.viewer, flags);
        col.getColumn().setText(label);
        col.setLabelProvider(new CellLabelProvider() {

            @Override
            public void update(final ViewerCell cell) {
                final Object ele = cell.getElement();
                if (ele instanceof Node) {
                    final MetaInformation meta = ContentTable.this.meta.get(((Node) ele).getFullName());
                    if (meta == null) {
                        cell.setForeground(ContentTable.this.dimmedColor);
                    }
                    consumer.accept((Node) ele, cell);
                }
            }
        });
        layout.setColumnData(col.getColumn(), new ColumnWeightData(weight));
    }
}

From source file:es.uah.aut.srg.micobs.util.impl.MICOBSAdapterFactoryLabelProvider.java

License:Open Source License

public void update(ViewerCell cell) {
    Object element = cell.getElement();

    StyledString styledString = getStyledText(element);
    String newText = styledString.toString();

    StyleRange[] oldStyleRanges = cell.getStyleRanges();
    StyleRange[] newStyleRanges = isOwnerDrawEnabled() ? styledString.getStyleRanges() : null;

    if (!Arrays.equals(oldStyleRanges, newStyleRanges)) {
        cell.setStyleRanges(newStyleRanges);
        if (cell.getText().equals(newText)) {
            // make sure there will be a refresh from a change
            cell.setText(""); //$NON-NLS-1$
        }//from  w w w. j av a 2 s. co m
    }

    cell.setText(newText);
    cell.setImage(getImage(element));
    cell.setFont(getFont(element));
    cell.setForeground(getForeground(element));
    cell.setBackground(getBackground(element));

    // no super call required. changes on item will trigger the refresh.
}

From source file:eu.esdihumboldt.hale.ui.common.definition.viewer.StyledDefinitionLabelProvider.java

License:Open Source License

/**
 * @see StyledCellLabelProvider#update(ViewerCell)
 *//*from w ww  .  j  a  va 2  s  . com*/
@Override
public void update(ViewerCell cell) {
    Object element = cell.getElement();

    element = extractElement(element);

    StyledString text = new StyledString(defaultLabels.getText(element));

    cell.setImage(defaultLabels.getImage(element));

    String contextText = null;
    String countText = null;
    if (element instanceof EntityDefinition) {
        PopulationService ps = (PopulationService) PlatformUI.getWorkbench()
                .getService(PopulationService.class);
        if (ps != null) {
            Population pop = ps.getPopulation((EntityDefinition) element);
            int count = pop.getOverallCount();
            int parents = pop.getParentsCount();
            switch (count) {
            case Population.UNKNOWN:
                countText = "\u00d7?";
                break;
            case 0:
                break;
            default:
                countText = "\u00d7" + count;
                if (parents != count) {
                    countText += " (" + parents + ")";
                }
            }
        }

        contextText = AlignmentUtil.getContextText((EntityDefinition) element);
        element = ((EntityDefinition) element).getDefinition();
    }

    // append cardinality
    if (!suppressCardinality && element instanceof ChildDefinition<?>) {
        Cardinality cardinality = null;
        if (((ChildDefinition<?>) element).asGroup() != null) {
            cardinality = ((ChildDefinition<?>) element).asGroup().getConstraint(Cardinality.class);
        } else if (((ChildDefinition<?>) element).asProperty() != null) {
            cardinality = ((ChildDefinition<?>) element).asProperty().getConstraint(Cardinality.class);
        }

        if (cardinality != null) {
            // only append cardinality if it isn't 1/1
            if (cardinality.getMinOccurs() != 1 || cardinality.getMaxOccurs() != 1) {
                String card = " " + MessageFormat.format("({0}..{1})",
                        new Object[] { Long.valueOf(cardinality.getMinOccurs()),
                                (cardinality.getMaxOccurs() == Cardinality.UNBOUNDED) ? ("n")
                                        : (Long.valueOf(cardinality.getMaxOccurs())) });
                text.append(card, StyledString.COUNTER_STYLER);
            }
        }
    }

    if (contextText != null) {
        contextText = " " + contextText;
        text.append(contextText, StyledString.DECORATIONS_STYLER);
    }

    if (countText != null) {
        countText = " " + countText;
        text.append(countText, StyledString.QUALIFIER_STYLER);
    }

    cell.setText(text.toString());
    cell.setStyleRanges(text.getStyleRanges());

    Color foreground = getForeground(cell.getElement());
    cell.setForeground(foreground);

    Color background = getBackground(cell.getElement());
    cell.setBackground(background);

    super.update(cell);
}

From source file:gov.redhawk.common.ui.AdapterFactoryCellLabelProvider.java

License:Open Source License

/**
 * {@inheritDoc}/* www .  j  a  va  2 s. c o m*/
 */
@Override
public void update(final ViewerCell cell) {
    Object object = getElement(cell);
    object = AdapterFactoryEditingDomain.unwrap(object);
    cell.setBackground(this.labelProvider.getBackground(object));
    cell.setFont(this.labelProvider.getFont(object));
    cell.setForeground(this.labelProvider.getForeground(object));
    cell.setImage(this.labelProvider.getImage(object));
    cell.setText(this.labelProvider.getText(object));
}