List of usage examples for org.eclipse.jface.viewers ViewerLabel getImage
public final Image getImage()
From source file:com.jointlogic.breadcrumbs.sampleapp.api.BreadcrumbViewer.java
License:Open Source License
/** * @param item//from w w w . java2 s . co m * Item to refresh. * @return returns whether the item's size and layout needs to be updated. */ private boolean refreshItem(final BreadcrumbItem item) { boolean layoutChanged = false; final TreePath path = getTreePathFromItem(item); final ViewerLabel label = new ViewerLabel(item.getText(), item.getImage()); ((ITreePathLabelProvider) getLabelProvider()).updateLabel(label, path); if (label.hasNewText()) { item.setText(label.getText()); layoutChanged = true; } if (label.hasNewImage()) { item.setImage(label.getImage()); layoutChanged = true; } if (label.hasNewTooltipText()) { item.setToolTip(label.getTooltipText()); } return layoutChanged; }
From source file:org.eclipse.cdt.internal.ui.util.ResourceToItemsMapper.java
License:Open Source License
private void updateItem(Item item) { if (!item.isDisposed()) { // defensive code ILabelProvider lprovider = (ILabelProvider) fContentViewer.getLabelProvider(); Object data = item.getData(); // If it is an IItemLabelProvider than short circuit: patch Tod (bug 55012) if (data != null && lprovider instanceof IViewerLabelProvider) { IViewerLabelProvider provider = (IViewerLabelProvider) lprovider; ViewerLabel updateLabel = new ViewerLabel(item.getText(), item.getImage()); provider.updateLabel(updateLabel, data); if (updateLabel.hasNewImage()) { item.setImage(updateLabel.getImage()); }/*from w w w . j a v a 2 s . co m*/ if (updateLabel.hasNewText()) { item.setText(updateLabel.getText()); } } else { Image oldImage = item.getImage(); Image image = lprovider.getImage(data); if (image != null && !image.equals(oldImage)) { item.setImage(image); } String oldText = item.getText(); String text = lprovider.getText(data); if (text != null && !text.equals(oldText)) { item.setText(text); } } } }
From source file:org.eclipse.debug.internal.ui.viewers.breadcrumb.BreadcrumbViewer.java
License:Open Source License
/** * @param item Item to refresh./*from ww w. ja va 2 s . com*/ * @return returns whether the item's size and layout needs to be updated. */ private boolean refreshItem(BreadcrumbItem item) { boolean layoutChanged = false; TreePath path = getTreePathFromItem(item); ViewerLabel label = new ViewerLabel(item.getText(), item.getImage()); ((ITreePathLabelProvider) getLabelProvider()).updateLabel(label, path); if (label.hasNewText()) { item.setText(label.getText()); layoutChanged = true; } if (label.hasNewImage()) { item.setImage(label.getImage()); layoutChanged = true; } if (label.hasNewTooltipText()) { item.setToolTip(label.getTooltipText()); } return layoutChanged; }
From source file:org.eclipse.jubula.client.ui.provider.DecoratingCellLabelProvider.java
License:Open Source License
/** * {@inheritDoc}//from w w w.ja v a 2s . c o m */ public void updateLabel(ViewerLabel settings, Object element) { ILabelDecorator currentDecorator = getLabelDecorator(); String oldText = settings.getText(); boolean decorationReady = true; if (currentDecorator instanceof IDelayedLabelDecorator) { IDelayedLabelDecorator delayedDecorator = (IDelayedLabelDecorator) currentDecorator; if (!delayedDecorator.prepareDecoration(element, oldText)) { // The decoration is not ready but has been queued for // processing decorationReady = false; } } // update icon and label if (decorationReady || oldText == null || settings.getText().length() == 0) { settings.setText(getText(element)); } Image oldImage = settings.getImage(); if (decorationReady || oldImage == null) { settings.setImage(getImage(element)); } if (decorationReady) { updateForDecorationReady(settings, element); } }
From source file:org.eclipse.jubula.client.ui.provider.DecoratingCellLabelProvider.java
License:Open Source License
/** * {@inheritDoc}//w w w.ja v a 2 s . co m */ public void updateLabel(ViewerLabel settings, TreePath elementPath) { ILabelDecorator currentDecorator = getLabelDecorator(); String oldText = settings.getText(); Object element = elementPath.getLastSegment(); boolean decorationReady = true; if (currentDecorator instanceof LabelDecorator) { LabelDecorator labelDecorator = (LabelDecorator) currentDecorator; if (!labelDecorator.prepareDecoration(element, oldText, getDecorationContext())) { // The decoration is not ready but has been queued for // processing decorationReady = false; } } else if (currentDecorator instanceof IDelayedLabelDecorator) { IDelayedLabelDecorator delayedDecorator = (IDelayedLabelDecorator) currentDecorator; if (!delayedDecorator.prepareDecoration(element, oldText)) { // The decoration is not ready but has been queued for // processing decorationReady = false; } } // settings.setHasPendingDecorations(!decorationReady); // update icon and label if (m_provider instanceof ITreePathLabelProvider) { ITreePathLabelProvider pprov = (ITreePathLabelProvider) m_provider; if (decorationReady || oldText == null || settings.getText().length() == 0) { pprov.updateLabel(settings, elementPath); decorateSettings(settings, elementPath); } } else { if (decorationReady || oldText == null || settings.getText().length() == 0) { settings.setText(getText(element)); } Image oldImage = settings.getImage(); if (decorationReady || oldImage == null) { settings.setImage(getImage(element)); } if (decorationReady) { updateForDecorationReady(settings, element); } } }
From source file:org.eclipse.jubula.client.ui.provider.DecoratingCellLabelProvider.java
License:Open Source License
/** * Decorate the settings// w w w. jav a 2s. c om * * @param settings * the settings obtained from the label provider * @param elementPath * the element path being decorated */ private void decorateSettings(ViewerLabel settings, TreePath elementPath) { Object element = elementPath.getLastSegment(); if (m_decorator != null) { if (m_decorator instanceof LabelDecorator) { LabelDecorator labelDecorator = (LabelDecorator) m_decorator; String text = labelDecorator.decorateText(settings.getText(), element, getDecorationContext()); if (text != null && text.length() > 0) { settings.setText(text); } Image image = labelDecorator.decorateImage(settings.getImage(), element, getDecorationContext()); if (image != null) { settings.setImage(image); } } else { String text = m_decorator.decorateText(settings.getText(), element); if (text != null && text.length() > 0) { settings.setText(text); } Image image = m_decorator.decorateImage(settings.getImage(), element); if (image != null) { settings.setImage(image); } } if (m_decorator instanceof IColorDecorator) { IColorDecorator colorDecorator = (IColorDecorator) m_decorator; Color background = colorDecorator.decorateBackground(element); if (background != null) { settings.setBackground(background); } Color foreground = colorDecorator.decorateForeground(element); if (foreground != null) { settings.setForeground(foreground); } } if (m_decorator instanceof IFontDecorator) { Font font = ((IFontDecorator) m_decorator).decorateFont(element); if (font != null) { settings.setFont(font); } } } }
From source file:org.eclipse.jubula.client.ui.provider.DecoratingCellLabelProvider.java
License:Open Source License
/** * {@inheritDoc}//from w w w. j av a 2 s . c om */ 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.ui.internal.navigator.extensions.SafeDelegateCommonLabelProvider.java
License:Open Source License
public void updateLabel(ViewerLabel label, TreePath elementPath) { if (delegateLabelProvider instanceof ITreePathLabelProvider) { ITreePathLabelProvider tplp = (ITreePathLabelProvider) delegateLabelProvider; String text = label.getText() != null ? label.getText() : ""; //$NON-NLS-1$ Image image = label.getImage(); tplp.updateLabel(label, elementPath); if (label.getText() == null) label.setText(text);/*from w ww. j a v a 2 s . c om*/ if (label.getImage() == null && image != null) label.setImage(image); } else { Image image = getImage(elementPath.getLastSegment()); if (image != null) label.setImage(image); String text = getText(elementPath.getLastSegment()); if (text != null) label.setText(text); } }