Interface IDecoratorManager

All Superinterfaces:
IBaseLabelProvider, IDelayedLabelDecorator, ILabelDecorator

public interface IDecoratorManager extends IDelayedLabelDecorator
Manages the decorators contributed via the org.eclipse.ui.decorator extension point. Views which allow decoration of their elements should use the label decorator returned by getLabelDecorator().

This class is not intended to be implemented by clients.

Restriction:
This interface is not intended to be implemented by clients.
  • Method Details

    • getLabelDecorator

      ILabelDecorator getLabelDecorator()
      Returns the label decorator which applies the decorations from all enabled decorators. Views which allow decoration of their elements should use this label decorator. This decorator should be disposed when it is no longer referenced by the caller or the images created within it may be kept until JFaceResources.getResources() is disposed.
      Returns:
      ILabelDecorator
      See Also:
    • getBaseLabelProvider

      IBaseLabelProvider getBaseLabelProvider(String decoratorId)
      Return the IBaseLabelProvider that corresponds to the decoratorId. This can handle both lightweight and full decorators.
      Parameters:
      decoratorId - the decorator id
      Returns:
      the label provider
    • getLabelDecorator

      ILabelDecorator getLabelDecorator(String decoratorId)
      Returns the full label decorator instance for the specified decorator id if it is enabled. Otherwise returns null. Returns null for lightweight decorators. It is recommended that getBaseLabelProvider is used instead so that lightweight decorators are also checked.
      Parameters:
      decoratorId - the decorator id
      Returns:
      the label decorator
    • getLightweightLabelDecorator

      @Deprecated ILightweightLabelDecorator getLightweightLabelDecorator(String decoratorId)
      Deprecated.
      use getBaseLabelProvider(String) instead.
      Returns the lightweight label decorator instance for the specified decorator id if it is enabled. Otherwise returns null. Returns null for heavyweight decorators. Use getLabelDecorator instead for heavyweight decorators.
      Parameters:
      decoratorId - the decorator id
      Returns:
      the lightweight label decorator
    • getEnabled

      boolean getEnabled(String decoratorId)
      Returns whether the specified decorator is enabled.
      Parameters:
      decoratorId - the decorator id
      Returns:
      true if the decorator is enabled, or false if not
    • setEnabled

      void setEnabled(String decoratorId, boolean enabled) throws CoreException
      Sets whether the specified decorator is enabled.
      Parameters:
      decoratorId - the decorator id
      enabled - true to enable the decorator, or false to disable it
      Throws:
      CoreException - if the decorator cannot be instantiated
    • update

      void update(String decoratorId)
      Fire a LabelProviderChangedEvent for the decorator that corresponds to decoratorID if it exists and is enabled using the IBaseLabelProvider as the argument to the event. Otherwise do nothing.

      This method must be called from the user interface thread as widget updates may result.

      Parameters:
      decoratorId - the decorator id