List of usage examples for org.eclipse.jface.viewers ViewerCell getText
public String getText()
From source file:com.blackducksoftware.integration.eclipseplugin.views.providers.DependencyComponentColumnLabelProvider.java
License:Apache License
@Override public void styleCell(ViewerCell cell) { String[] compChunks = cell.getText().split(":"); cell.setText(String.format("%1$s %2$s ", compChunks[0], compChunks[1])); Display display = Display.getCurrent(); final Color versionColor = decodeHex(display, "#285F8F"); final Color backgroundColor = decodeHex(display, "#fafafa"); final Color borderColor = decodeHex(display, "#dddddd"); final StyleRange versionStyle = new StyleRange(compChunks[0].length() + 1, compChunks[1].length() + 2, versionColor, backgroundColor); versionStyle.borderStyle = SWT.BORDER_SOLID; versionStyle.borderColor = borderColor; int versionHeight = (int) (cell.getFont().getFontData()[0].getHeight() * 0.85); versionStyle.font = FontDescriptor.createFrom(cell.getFont()).setHeight(versionHeight).createFont(display); cell.setStyleRanges(new StyleRange[] { versionStyle }); }
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 av a 2s. c om*/ } 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.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();// ww w. jav a 2 s . c o m 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.google.gwt.eclipse.oophm.breadcrumbs.BreadcrumbViewer.java
License:Open Source License
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);/*ww w .j a v a 2s .com*/ } 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:com.mercatis.lighthouse3.ui.event.providers.EventTable.java
License:Apache License
public void addSelectedColumnAsFilterCriteria() { ViewerCell cell = (ViewerCell) tableViewer.getCell(lastMousePosition); int columnIndex = cell.getColumnIndex(); ColumnType columnType = (ColumnType) tableViewer.getTable().getColumn(columnIndex).getData(); Event event = (Event) ((StructuredSelection) tableViewer.getSelection()).getFirstElement(); List<Object> values = new LinkedList<Object>(); int propertyIndex = EventTableUIElementsConstants.transformColumnNameToFilterPropertyIndex(columnType); switch (propertyIndex) { case EventFilterModel.UDF: for (Entry<String, Object> entry : event.getUdfs().entrySet()) { values.add(new Tuple<String, Object>(entry.getKey(), entry.getValue())); }/*from www .j av a 2s .c o m*/ values.addAll(eventFilterModel.getValuesFor(propertyIndex)); break; case EventFilterModel.DATE: values.add(new Tuple<Date, Object>(event.getDateOfOccurrence(), null)); break; case EventFilterModel.TRANSACTION_ID: for (String transActionId : event.getTransactionIds()) { values.add((Object) transActionId); } values.addAll(eventFilterModel.getValuesFor(propertyIndex)); break; default: values.add(cell.getText()); values.addAll(eventFilterModel.getValuesFor(propertyIndex)); } eventFilterModel.setValuesFor(values, propertyIndex); }
From source file:de.walware.ecommons.ui.breadcrumb.BreadcrumbViewer.java
License:Open Source License
@Override protected void doUpdateItem(final Widget widget, final Object element, final boolean fullMap) { if (widget instanceof BreadcrumbItem) { final BreadcrumbItem item = (BreadcrumbItem) widget; // remember element we are showing if (fullMap) { associate(element, item);/*from ww w. j ava 2s . c o m*/ } else { final Object data = item.getData(); if (data != null) { unmapElement(data, item); } item.setData(element); mapElement(element, item); } final BreadcrumbViewerRow row = new BreadcrumbViewerRow(this, item); final 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:de.walware.ecommons.ui.viewers.DecoratingStyledCellLabelProvider.java
License:Open Source License
private boolean waitForPendingDecoration(final ViewerCell cell) { if (this.decorator == null) { return false; }//from www. ja v a 2 s . com final Object element = cell.getElement(); final String oldText = cell.getText(); boolean isDecorationPending = false; if (this.decorator instanceof LabelDecorator) { isDecorationPending = !((LabelDecorator) this.decorator) .prepareDecoration(getElementToDecorate(element), oldText, getDecorationContext()); } else if (this.decorator instanceof IDelayedLabelDecorator) { isDecorationPending = !((IDelayedLabelDecorator) this.decorator) .prepareDecoration(getElementToDecorate(element), oldText); } if (isDecorationPending && oldText.length() == 0) { // item is empty: is shown for the first time: don't wait return false; } return isDecorationPending; }
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$ }/* w ww. ja v a 2s .c o 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.util.viewer.BrowserColumnViewerTip.java
License:Open Source License
/** * Show tooltip for the cell at the given position * /*from w ww .j a v a2s.c om*/ * @param x the widget relative x ordinate * @param y the widget relative y ordinate */ protected void showToolTip(int x, int y) { ViewerCell cell = viewer.getCell(new Point(x, y)); if (toolCell != null && toolCell.equals(cell) && BrowserTip.toolTipVisible(toolShell)) { // tooltip already visible -> do nothing return; } toolCell = cell; BrowserTip.hideToolTip(toolShell); if (cell != null) { Object element = cell.getElement(); int col = cell.getColumnIndex(); /** * It would be very nice if we could get the column from the viewer * and the attached label provider, but the getViewerColumn method * is only package visible */ String text = cell.getText(); String tipText = getToolTip(element, col, text); if (tipText != null && !tipText.isEmpty() && tipText.length() >= tipCharThreshold) { Rectangle cellBounds = cell.getBounds(); // toolShell = tip.showToolTip(viewer.getControl(), x, y, tipText); toolShell = tip.showToolTip(viewer.getControl(), cellBounds.x, cellBounds.y + cellBounds.height, tipText, cellBounds, viewer.getControl()); } } }
From source file:eu.esdihumboldt.hale.ui.views.data.internal.compare.DefinitionInstanceTreeViewer.java
License:Open Source License
/** * @see InstanceViewer#createControls(Composite, SchemaSpaceID) *//*from w w w . j a v a 2 s .co m*/ @Override public void createControls(final Composite parent, SchemaSpaceID schemaSpace) { main = new Composite(parent, SWT.NONE); main.setLayout(new TreeColumnLayout()); treeViewer = new TreeViewer(main, SWT.SINGLE | SWT.FULL_SELECTION | SWT.BORDER); treeViewer.setContentProvider(new TypeMetaPairContentProvider(treeViewer, schemaSpace)); treeViewer.setLabelProvider(new DefinitionMetaCompareLabelProvider()); // Add an editor for selecting specific paths. editor = new TreeEditor(treeViewer.getTree()); editor.horizontalAlignment = SWT.RIGHT; treeViewer.getTree().addMouseMoveListener(new MouseMoveListener() { @Override public void mouseMove(MouseEvent e) { final ViewerCell cell = treeViewer.getCell(new Point(e.x, e.y)); // Selected cell changed? if (cell == null || editor.getItem() != cell.getItem() || editor.getColumn() != cell.getColumnIndex()) { // Clean up any previous editor control Control oldEditor = editor.getEditor(); if (oldEditor != null) { oldEditor.dispose(); editor.setEditor(null, null, 0); } } // No valid selected cell if (cell == null || cell.getColumnIndex() == 0) { return; } // cell didn't change if ((editor.getItem() == cell.getItem() && editor.getColumn() == cell.getColumnIndex())) { return; } Composite editorControl = new Composite(treeViewer.getTree(), SWT.NONE); GridLayoutFactory.fillDefaults().margins(0, 0).spacing(0, 0).numColumns(2).applyTo(editorControl); boolean hideCopy = false; // multi value selector // Quote the format first. Pattern.quote does the same, except, // that it checks the input for \Es. // Since we know that there will be no \Es in this case // do it ourselves to be safe from changes to Pattern.quote. String pattern = "\\Q" + DefinitionInstanceLabelProvider.MULTIPLE_VALUE_FORMAT + "\\E$"; pattern = pattern.replace("{0}", "\\E(\\d+)\\Q").replace("{1}", "\\E(\\d+)\\Q"); Matcher m = Pattern.compile(pattern).matcher(cell.getText()); if (m.find()) { // multi value element int current = Integer.parseInt(m.group(1)); int total = Integer.parseInt(m.group(2)); // Create the selection control. ComboViewer combo = new ComboViewer(editorControl); Integer[] values = new Integer[total]; for (int i = 1; i <= total; i++) values[i - 1] = i; combo.setContentProvider(ArrayContentProvider.getInstance()); combo.setInput(values); combo.setSelection(new StructuredSelection(current)); combo.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { if (event.getSelection() instanceof IStructuredSelection) { // Update label provider and refresh viewer. labelProviders.get(cell.getColumnIndex()).selectPath( cell.getViewerRow().getTreePath(), (Integer) (((IStructuredSelection) event.getSelection()) .getFirstElement())); treeViewer.refresh(cell.getElement(), true); } } }); } else { /* * only one value - so we can safely determine if the copy * button should be shown */ Object value = labelProviders.get(cell.getColumnIndex()) .findInstanceEntry(cell.getViewerRow().getTreePath()).getValue(); if (value instanceof Instance) { value = ((Instance) value).getValue(); } hideCopy = value == null || value.toString().isEmpty(); } // copy button if (!hideCopy) { Button button = new Button(editorControl, SWT.PUSH | SWT.FLAT); button.setImage( PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_TOOL_COPY)); button.setToolTipText("Copy string value"); button.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { // determine text value Object value = labelProviders.get(cell.getColumnIndex()) .findInstanceEntry(cell.getViewerRow().getTreePath()).getValue(); if (value instanceof Instance) { value = ((Instance) value).getValue(); } if (value != null) { final String textValue = value.toString(); if (!textValue.isEmpty()) { // empty string is // invalid // copy content to clipboard Clipboard clipBoard = new Clipboard(Display.getCurrent()); clipBoard.setContents(new Object[] { textValue }, new Transfer[] { TextTransfer.getInstance() }); clipBoard.dispose(); } } } }); } // calculate editor size Point size = editorControl.computeSize(SWT.DEFAULT, SWT.DEFAULT); editor.minimumHeight = size.y; editor.minimumWidth = size.x; editor.setEditor(editorControl, (TreeItem) cell.getItem(), cell.getColumnIndex()); } }); maep = new MetadataCompareActionProvider(treeViewer); maep.setup(); treeViewer.setComparator(new DefinitionComparator()); treeViewer.getTree().setHeaderVisible(true); treeViewer.getTree().setLinesVisible(true); ColumnViewerToolTipSupport.enableFor(treeViewer); setInput(null, null); }