Class WorkbenchLabelProvider

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

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 Details

    • WorkbenchLabelProvider

      public WorkbenchLabelProvider()
      Creates a new workbench label provider.
  • Method Details

    • 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:
    • 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 ornull 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 ornull 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 ornull 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