List of usage examples for org.eclipse.jface.viewers ViewerCell setStyleRanges
public void setStyleRanges(StyleRange[] styleRanges)
From source file:com.blackducksoftware.integration.eclipseplugin.views.providers.DependencyNumVulnColumnLabelProvider.java
License:Apache License
@Override public void styleCell(ViewerCell cell) { if (cell.getText().equals(VALUE_UNKNOWN)) { cell.setText(""); return;//from w w w .j a v a 2 s. c o m } String[] vulnChunks = cell.getText().split(":"); cell.setFont(JFaceResources.getTextFont()); Display display = Display.getCurrent(); final String noVulns = " 0 "; final Color textColor = display.getSystemColor(SWT.COLOR_WHITE); final Color highColor = decodeHex(display, "#b52b24"); final Color mediumColor = decodeHex(display, "#eca4a0"); final Color lowColor = decodeHex(display, "#999999"); final Color invisible = display.getSystemColor(SWT.COLOR_WIDGET_BACKGROUND); final Color[] vulnColors = new Color[] { highColor, mediumColor, lowColor }; StyleRange[] styleRanges = new StyleRange[vulnChunks.length]; int lastLabelEnd = 0; cell.setText(String.format("%1$-5s %2$-5s %3$-5s", StringUtils.center(vulnChunks[0], 5), StringUtils.center(vulnChunks[1], 5), StringUtils.center(vulnChunks[2], 5))); for (int i = 0; i < vulnChunks.length; i++) { int labelStart = cell.getText().indexOf(vulnChunks[i], lastLabelEnd); int labelSize = vulnChunks[i].length(); if (vulnChunks[i].equals(noVulns)) { styleRanges[i] = new StyleRange(labelStart, labelSize, invisible, invisible); } else { styleRanges[i] = new StyleRange(labelStart, labelSize, textColor, vulnColors[i]); } lastLabelEnd = labelStart + labelSize; } cell.setStyleRanges(styleRanges); }
From source file:com.contrastsecurity.ide.eclipse.ui.internal.model.VulnerabilityLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { Object element = cell.getElement(); if (element instanceof Trace) { int index = cell.getColumnIndex(); switch (index) { case 0:/*w ww. j a va 2s.c o m*/ case 3: Image image = getImage(element, index); cell.setImage(image); break; case 1: String title = getText(element, index); if (title.startsWith(UNLICENSED_PREFIX)) { StyledString text = new StyledString(); StyleRange range = new StyleRange(0, UNLICENSED_PREFIX.length(), Constants.UNLICENSED_COLOR, null); text.append(title, StyledString.DECORATIONS_STYLER); StyleRange[] ranges = { range }; cell.setStyleRanges(ranges); } cell.setText(title); break; case 2: String appName = ((Trace) element).getApplication().getName(); cell.setText(appName); break; default: break; } if (index == 0) { } } super.update(cell); }
From source file:com.dubture.symfony.ui.views.ServiceLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { Object element = cell.getElement(); Styler style = null;//from w w w. ja va2 s . c o m if (element instanceof IProject) { IProject project = (IProject) element; StyledString styledString = new StyledString(project.getName(), style); cell.setText(styledString.toString()); cell.setImage(PHPPluginImages.get(PHPPluginImages.IMG_OBJS_PHP_PROJECT)); } else if (element instanceof Service) { Service service = (Service) element; String name = service.getClassName() != null ? service.getClassName() : service.getId(); StyledString styledString = new StyledString(name, style); String decoration = MessageFormat.format(" [{0}]", new Object[] { service.getId() }); //$NON-NLS-1$ styledString.append(decoration, StyledString.DECORATIONS_STYLER); cell.setText(styledString.toString()); cell.setStyleRanges(styledString.getStyleRanges()); if (service.isPublic()) { cell.setImage(SymfonyPluginImages.get(SymfonyPluginImages.IMG_OBJS_SERVICE_PUBLIC)); } else { cell.setImage(SymfonyPluginImages.get(SymfonyPluginImages.IMG_OBJS_SERVICE_PRIVATE)); } } else if (element instanceof Bundle) { Bundle bundle = (Bundle) element; StyledString styledString = new StyledString(bundle.getElementName(), style); cell.setText(styledString.toString()); cell.setImage(SymfonyPluginImages.get(SymfonyPluginImages.IMG_OBJS_BUNDLE2)); } }
From source file:com.google.gapid.widgets.MeasuringViewLabelProvider.java
License:Apache License
@Override public void update(ViewerCell cell) { // Adjusted from the DelegatingStyledCellLabelProvider implementation. StyledString styledString = format(cell.getItem(), cell.getElement(), LinkableStyledString.ignoring(theme)) .getString();/*from ww w. j a va 2s. c om*/ String newText = styledString.toString(); StyleRange[] oldStyleRanges = cell.getStyleRanges(); StyleRange[] newStyleRanges = styledString.getStyleRanges(); if (!Arrays.equals(oldStyleRanges, newStyleRanges)) { cell.setStyleRanges(newStyleRanges); if (cell.getText().equals(newText)) { cell.setText(""); } } Color bgcolor = getBackgroundColor(cell.getElement()); if (bgcolor != null) { cell.setBackground(bgcolor); } cell.setImage(getImage(cell.getElement())); cell.setText(newText); }
From source file:com.hydra.project.myplugin_nebula.xviewer.XViewerStyledTextLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { Object element = cell.getElement(); StyledString styledString = getStyledText(element, cell.getColumnIndex()); 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 ww . j av a 2s .c o m*/ cell.setText(newText); cell.setImage(getColumnImage(element, cell.getColumnIndex())); cell.setFont(getFont(element, cell.getColumnIndex())); cell.setForeground(getForeground(element, cell.getColumnIndex())); cell.setBackground(getBackground(element, cell.getColumnIndex())); // no super call required. changes on item will trigger the refresh. }
From source file:com.kdmanalytics.toif.report.internal.providers.ReportLabelProvider.java
License:Open Source License
@Override public void update(final ViewerCell cell) { Object element = cell.getElement(); final StyledString styledString = new StyledString(getColumnText(element, cell.getColumnIndex())); if (element instanceof IFindingEntry) { final IFindingEntry entry = (IFindingEntry) element; if (Citing.UNKNOWN == entry.isOk()) { cell.setForeground(colorReg.get(FOREGROUND_BLACK)); cell.setBackground(colorReg.get(BLUE)); } else {/*from ww w . j a va 2 s . c o m*/ cell.setForeground(Citing.TRUE == entry.isOk() ? colorReg.get(FOREGROUND_GREEN) : colorReg.get(FOREGROUND_RED)); cell.setBackground(Citing.TRUE == entry.isOk() ? colorReg.get(GREEN) : colorReg.get(RED)); } } else if (element instanceof IFileGroup) { cell.setFont(getFont(element)); } cell.setText(styledString.toString()); cell.setStyleRanges(styledString.getStyleRanges()); cell.setImage(cell.getColumnIndex() > 0 ? null : getImage(element)); }
From source file:com.kdmanalytics.toif.report.internal.providers.ReportStyledCellLabelProvider.java
License:Open Source License
@Override public void update(final ViewerCell cell) { final IToifReportEntry entry = (IToifReportEntry) cell.getElement(); final StyledString styledString = new StyledString(getColumnText(entry, cell.getColumnIndex())); final IFindingEntry findingEntry = entry.getFindingEntry(); if (Citing.UNKNOWN == findingEntry.isOk()) { cell.setForeground(FOREGROUND_BLACK); cell.setBackground(WHITE);//from www .j a v a2s. c om } else { cell.setForeground(Citing.TRUE == findingEntry.isOk() ? FOREGROUND_RED : FOREGROUND_GREEN); cell.setBackground(Citing.TRUE == findingEntry.isOk() ? RED : GREEN); } cell.setText(styledString.toString()); cell.setStyleRanges(styledString.getStyleRanges()); cell.setImage(getImage(entry, cell.getColumnIndex())); }
From source file:com.kdmanalytics.toif.ui.views.DefectDescStyledLabelProvider.java
License:Open Source License
public void update(final ViewerCell cell) { final DefectNode entry = (DefectNode) cell.getElement(); int index = cell.getColumnIndex(); final StyledString styledString = new StyledString(getColumnText(entry, index)); String desc = entry.getDescription(); if (desc.startsWith("http://") || desc.startsWith("https://")) { cell.setForeground(FOREGROUND_BLUE); }//from w ww . jav a2s . c o m String text = styledString.toString(); // This removed code is used to split the string into a number of separate // lines suitable for wrapping. // // // // How many characters will we allow per line? // Tree tree = (Tree)cell.getControl(); // // // Use the client area minus the first column to see how much room we have // // for text. // Rectangle area = viewer.getTree().getClientArea(); // TreeColumn column = tree.getColumn(0); // int width = area.width - column.getWidth(); // if (width < 50) width = 50; // width -= 10; // GC gc = new GC(tree); // FontMetrics fm = gc.getFontMetrics(); // int charWidth = fm.getAverageCharWidth(); // int charCount = width / charWidth; // if (charCount < 10) charCount = 10; // // List<String> lines = new LinkedList<String>(); // // while (text.length() > 0) { // // Break at space // int lastSpace = text.lastIndexOf(' ', charCount); // if (lastSpace > 10) { // lines.add(text.substring(0, lastSpace)); // text = text.substring(lastSpace + 1); // continue; // } // // // Break at next space // int nextSpace = text.indexOf(' ', charCount); // if (nextSpace > 10) { // lines.add(text.substring(0, nextSpace)); // text = text.substring(nextSpace + 1); // continue; // } // // // Just use whole string // lines.add(text); // text = ""; // } // // // Add in \n characters // StringBuilder sb = new StringBuilder(); // for (int i = 0; i < lines.size(); i++) { // if (i > 0) sb.append("\n"); // sb.append(lines.get(i)); // } // // cell.setText(sb.toString()); cell.setText(text); cell.setStyleRanges(styledString.getStyleRanges()); }
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 = ""; }/*ww w. j a v a 2 s . c o 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.kopson.cite.views.SmartLogConsole.java
License:Open Source License
/** * This will create the columns for the table * //w ww.j a v a2 s .c o m * @param parent */ private void createColumns(final Composite parent) { headerMenu = new Menu(parent.getShell(), SWT.POP_UP); String[] titles = { CITE.SMARTLOG_COLUMN_ID, CITE.SMARTLOG_COLUMN_TYPE, CITE.SMARTLOG_COLUMN_TAG, CITE.SMARTLOG_COLUMN_MESSAGE, CITE.SMARTLOG_COLUMN_OBJECT, CITE.SMARTLOG_COLUMN_ASSERT }; int[] bounds = { 100, 100, 100, 100, 100, 100 }; TableViewerColumn idColumn = createTableViewerColumn(titles[0], bounds[0], 0); idColumn.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { cell.setText("" + ((SmartLogEntry) cell.getElement()).getId()); } @Override public String getToolTipText(Object element) { return "Tooltip (" + element + ")"; } @Override public Point getToolTipShift(Object object) { return new Point(5, 5); } @Override public int getToolTipDisplayDelayTime(Object object) { return 100; } @Override public int getToolTipTimeDisplayed(Object object) { return 5000; } }); TableViewerColumn typeColumn = createTableViewerColumn(titles[1], bounds[1], 1); typeColumn.setLabelProvider(new StyledCellLabelProvider() { @Override public void update(ViewerCell cell) { String search = searchText.getText(); SmartLogEntry logRow = (SmartLogEntry) cell.getElement(); String cellText = logRow.getType(); cell.setText(cellText); if (search != null && search.length() > 0) { int intRangesCorrectSize[] = SearchUtil.getSearchTermOccurrences(search, cellText); List<StyleRange> styleRange = new ArrayList<StyleRange>(); for (int i = 0; i < intRangesCorrectSize.length / 2; i++) { int start = intRangesCorrectSize[i]; int length = intRangesCorrectSize[++i]; StyleRange myStyledRange = new StyleRange(start, length, null, colorYellow); styleRange.add(myStyledRange); } cell.setStyleRanges(styleRange.toArray(new StyleRange[styleRange.size()])); } else { cell.setStyleRanges(null); } super.update(cell); } }); typeColumn.setEditingSupport(new TypeEditingSupport(viewer)); TableViewerColumn tagColumn = createTableViewerColumn(titles[2], bounds[2], 2); tagColumn.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { cell.setText(((SmartLogEntry) cell.getElement()).getTag()); } @Override public String getToolTipText(Object element) { return "Tooltip (" + element + ")"; } @Override public Point getToolTipShift(Object object) { return new Point(5, 5); } @Override public int getToolTipDisplayDelayTime(Object object) { return 100; } @Override public int getToolTipTimeDisplayed(Object object) { return 5000; } }); tagColumn.setEditingSupport(new TagEditingSupport(viewer)); TableViewerColumn messageColumn = createTableViewerColumn(titles[3], bounds[3], 3); messageColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((SmartLogEntry) element).getMessage(); } }); messageColumn.setEditingSupport(new MessageEditingSupport(viewer)); TableViewerColumn objectColumn = createTableViewerColumn(titles[4], bounds[4], 4); objectColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((SmartLogEntry) element).getObject(); } //TODO: set meaningful images @Override public Image getImage(Object element) { if (((SmartLogEntry) element).getObject() != null) { return CHECKED; } return UNCHECKED; } }); TableViewerColumn assertColumn = createTableViewerColumn(titles[5], bounds[5], 5); assertColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((SmartLogEntry) element).getAssertion(); } }); assertColumn.setEditingSupport(new AssertionEditingSupport(viewer)); }