org.eclipse.ui.model

## Class WorkbenchLabelProvider

- java.lang.Object
- - org.eclipse.core.commands.common.EventManager
  - - org.eclipse.jface.viewers.BaseLabelProvider
    - - org.eclipse.jface.viewers.LabelProvider
      - - org.eclipse.ui.model.WorkbenchLabelProvider

All Implemented Interfaces:
  DelegatingStyledCellLabelProvider.IStyledLabelProvider, IBaseLabelProvider, IColorProvider, IFontProvider, ILabelProvider

    public class WorkbenchLabelProvider
    extends LabelProvider
    implements IColorProvider, IFontProvider, DelegatingStyledCellLabelProvider.IStyledLabelProvider

Provides basic labels for adaptable objects that have the `IWorkbenchAdapter` adapter associated with them. All dispensed images are cached until the label provider is explicitly disposed. This class provides a facility for subclasses to define annotations on the labels and icons of adaptable objects.

### Constructor Summary

Constructors
Constructor and Description
`WorkbenchLabelProvider()` Creates a new workbench label provider.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`protected ImageDescriptor` `decorateImage(ImageDescriptor input, Object element)` Returns an image descriptor that is based on the given descriptor, but decorated with additional information relating to the state of the provided object.
`protected String` `decorateText(String input, Object element)` Returns a label that is based on the given label, but decorated with additional information relating to the state of the provided object.
`void` `dispose()` The `BaseLabelProvider` implementation of this `IBaseLabelProvider` method clears its internal listener list.
`protected IWorkbenchAdapter` `getAdapter(Object o)` Returns the implementation of IWorkbenchAdapter for the given object.
`protected IWorkbenchAdapter2` `getAdapter2(Object o)` Returns the implementation of IWorkbenchAdapter2 for the given object.
`protected IWorkbenchAdapter3` `getAdapter3(Object o)` Returns the implementation of IWorkbenchAdapter3 for the given object.
`Color` `getBackground(Object element)` Provides a background color for the given element.
`static ILabelProvider` `getDecoratingWorkbenchLabelProvider()` Returns a workbench label provider that is hooked up to the decorator mechanism.
`protected StyledString.Styler` `getDecorationStyle(Object element)` Sets the `StyledString.Styler` to be used for string decorations.
`Font` `getFont(Object element)` Provides a font for the given element.
`Color` `getForeground(Object element)` Provides a foreground color for the given element.
`Image` `getImage(Object element)` The `LabelProvider` implementation of this `ILabelProvider` method returns `null`.
`StyledString` `getStyledText(Object element)` The default implementation of this returns the styled text label for the given element.
`String` `getText(Object element)` The `LabelProvider` implementation of this `ILabelProvider` method returns the element's `toString` string.

### Methods inherited from class org.eclipse.jface.viewers.BaseLabelProvider

`addListener, fireLabelProviderChanged, isLabelProperty, removeListener`

### Methods inherited from class org.eclipse.core.commands.common.EventManager

`addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.eclipse.jface.viewers.IBaseLabelProvider

`addListener, isLabelProperty, removeListener`

### Constructor Detail

#### WorkbenchLabelProvider

    public WorkbenchLabelProvider()

Creates a new workbench label provider.

### Method Detail

#### getDecoratingWorkbenchLabelProvider

    public static ILabelProvider getDecoratingWorkbenchLabelProvider()

Returns a workbench label provider that is hooked up to the decorator mechanism.

Returns:
  a new `DecoratingLabelProvider` which wraps a `new `WorkbenchLabelProvider``

#### decorateImage

    protected ImageDescriptor decorateImage(ImageDescriptor input,
                                            Object element)

Returns an image descriptor that is based on the given descriptor, but decorated with additional information relating to the state of the provided object. Subclasses may reimplement this method to decorate an object's image.

Parameters:
  `input` - The base image to decorate.
  `element` - The element used to look up decorations.
Returns:
  the resuling ImageDescriptor.
See Also:
  `CompositeImageDescriptor`

#### decorateText

    protected String decorateText(String input,
                                  Object element)

Returns a label that is based on the given label, but decorated with additional information relating to the state of the provided object. Subclasses may implement this method to decorate an object's label.

Parameters:
  `input` - The base text to decorate.
  `element` - The element used to look up decorations.
Returns:
  the resulting text

#### dispose

    public void dispose()

Description copied from class: `BaseLabelProvider`
The `BaseLabelProvider` implementation of this `IBaseLabelProvider` method clears its internal listener list. Subclasses may extend but should call the super implementation.

Specified by:
  `dispose` in interface `IBaseLabelProvider`
Overrides:
  `dispose` in class `BaseLabelProvider`

#### getAdapter

    protected final IWorkbenchAdapter getAdapter(Object o)

Returns the implementation of IWorkbenchAdapter for the given object.

Parameters:
  `o` - the object to look up.
Returns:
  IWorkbenchAdapter or`null` if the adapter is not defined or the object is not adaptable.

#### getAdapter2

    protected final IWorkbenchAdapter2 getAdapter2(Object o)

Returns the implementation of IWorkbenchAdapter2 for the given object.

Parameters:
  `o` - the object to look up.
Returns:
  IWorkbenchAdapter2 or`null` if the adapter is not defined or the object is not adaptable.

#### getAdapter3

    protected final IWorkbenchAdapter3 getAdapter3(Object o)

Returns the implementation of IWorkbenchAdapter3 for the given object.

Parameters:
  `o` - the object to look up.
Returns:
  IWorkbenchAdapter3 or`null` if the adapter is not defined or the object is not adaptable.
Since:
  3.7

#### getImage

    public final Image getImage(Object element)

Description copied from class: `LabelProvider`
The `LabelProvider` implementation of this `ILabelProvider` method returns `null`. Subclasses may override.

Specified by:
  `getImage` in interface `DelegatingStyledCellLabelProvider.IStyledLabelProvider`
Specified by:
  `getImage` in interface `ILabelProvider`
Overrides:
  `getImage` in class `LabelProvider`
Parameters:
  `element` - the element for which to provide the label image
Returns:
  the image used to label the element, or `null` if there is no image for the given object

#### getStyledText

    public StyledString getStyledText(Object element)

The default implementation of this returns the styled text label for the given element.

Specified by:
  `getStyledText` in interface `DelegatingStyledCellLabelProvider.IStyledLabelProvider`
Parameters:
  `element` - the element to evaluate the styled string for
Returns:
  the styled string.
Since:
  3.7

#### getDecorationStyle

    protected StyledString.Styler getDecorationStyle(Object element)

Sets the `StyledString.Styler` to be used for string decorations. By default the `decoration style`. Clients can override.

Parameters:
  `element` - the element that has been decorated
Returns:
  return the decoration style
Since:
  3.7

#### getText

    public final String getText(Object element)

Description copied from class: `LabelProvider`
The `LabelProvider` implementation of this `ILabelProvider` method returns the element's `toString` string. Subclasses may override.

Specified by:
  `getText` in interface `ILabelProvider`
Overrides:
  `getText` in class `LabelProvider`
Parameters:
  `element` - the element for which to provide the label text
Returns:
  the text string used to label the element, or `null` if there is no text label for the given object

#### getForeground

    public Color getForeground(Object element)

Description copied from interface: `IColorProvider`
Provides a foreground color for the given element.

Specified by:
  `getForeground` in interface `IColorProvider`
Parameters:
  `element` - the element
Returns:
  the foreground color for the element, or `null` to use the default foreground color

#### getBackground

    public Color getBackground(Object element)

Description copied from interface: `IColorProvider`
Provides a background color for the given element.

Specified by:
  `getBackground` in interface `IColorProvider`
Parameters:
  `element` - the element
Returns:
  the background color for the element, or `null` to use the default background color

#### getFont

    public Font getFont(Object element)

Description copied from interface: `IFontProvider`
Provides a font for the given element.

Specified by:
  `getFont` in interface `IFontProvider`
Parameters:
  `element` - the element
Returns:
  the font for the element, or `null` to use the default font