Eclipse Platform
2.0

org.eclipse.jface.viewers
Class DecoratingLabelProvider

java.lang.Object
  |
  +--org.eclipse.jface.viewers.LabelProvider
        |
        +--org.eclipse.jface.viewers.DecoratingLabelProvider
All Implemented Interfaces:
IBaseLabelProvider, ILabelProvider

public class DecoratingLabelProvider
extends LabelProvider
implements ILabelProvider

A decorating label provider is a label provider which combines a nested label provider and an optional decorator. The decorator decorates the label text and image provided by the nested label provider.


Constructor Summary
DecoratingLabelProvider(ILabelProvider provider, ILabelDecorator decorator)
          Creates a decorating label provider which uses the given label decorator to decorate labels provided by the given label provider.
 
Method Summary
 void addListener(ILabelProviderListener listener)
          The DecoratingLabelProvider implementation of this IBaseLabelProvider method adds the listener to both the nested label provider and the label decorator.
 void dispose()
          The DecoratingLabelProvider implementation of this IBaseLabelProvider method disposes both the nested label provider and the label decorator.
 Image getImage(Object element)
          The DecoratingLabelProvider implementation of this ILabelProvider method returns the image provided by the nested label provider's getImage method, decorated with the decoration provided by the label decorator's decorateImage method.
 ILabelDecorator getLabelDecorator()
          Returns the label decorator, or null if none has been set.
 ILabelProvider getLabelProvider()
          Returns the nested label provider.
 String getText(Object element)
          The DecoratingLabelProvider implementation of this ILabelProvider method returns the text label provided by the nested label provider's getText method, decorated with the decoration provided by the label decorator's decorateText method.
 boolean isLabelProperty(Object element, String property)
          The DecoratingLabelProvider implementation of this IBaseLabelProvider method returns true if the corresponding method on the nested label provider returns true or if the corresponding method on the decorator returns true.
 void removeListener(ILabelProviderListener listener)
          The DecoratingLabelProvider implementation of this IBaseLabelProvider method removes the listener from both the nested label provider and the label decorator.
 void setLabelDecorator(ILabelDecorator decorator)
          Sets the label decorator.
 
Methods inherited from class org.eclipse.jface.viewers.LabelProvider
fireLabelProviderChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DecoratingLabelProvider

public DecoratingLabelProvider(ILabelProvider provider,
                               ILabelDecorator decorator)
Creates a decorating label provider which uses the given label decorator to decorate labels provided by the given label provider.

Parameters:
provider - the nested label provider
decorator - the label decorator, or null if no decorator is to be used initially
Method Detail

addListener

public void addListener(ILabelProviderListener listener)
The DecoratingLabelProvider implementation of this IBaseLabelProvider method adds the listener to both the nested label provider and the label decorator.

Specified by:
addListener in interface IBaseLabelProvider
Overrides:
addListener in class LabelProvider
Parameters:
listener - a label provider listener

dispose

public void dispose()
The DecoratingLabelProvider implementation of this IBaseLabelProvider method disposes both the nested label provider and the label decorator.

Specified by:
dispose in interface IBaseLabelProvider
Overrides:
dispose in class LabelProvider

getImage

public Image getImage(Object element)
The DecoratingLabelProvider implementation of this ILabelProvider method returns the image provided by the nested label provider's getImage method, decorated with the decoration provided by the label decorator's decorateImage method.

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 these is no image for the given object

getLabelDecorator

public ILabelDecorator getLabelDecorator()
Returns the label decorator, or null if none has been set.

Returns:
the label decorator, or null if none has been set.

getLabelProvider

public ILabelProvider getLabelProvider()
Returns the nested label provider.

Returns:
the nested label provider

getText

public String getText(Object element)
The DecoratingLabelProvider implementation of this ILabelProvider method returns the text label provided by the nested label provider's getText method, decorated with the decoration provided by the label decorator's decorateText method.

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 these is no text label for the given object

isLabelProperty

public boolean isLabelProperty(Object element,
                               String property)
The DecoratingLabelProvider implementation of this IBaseLabelProvider method returns true if the corresponding method on the nested label provider returns true or if the corresponding method on the decorator returns true.

Specified by:
isLabelProperty in interface IBaseLabelProvider
Overrides:
isLabelProperty in class LabelProvider
Parameters:
element - the element
property - the property
Returns:
true if the label would be affected, and false if it would be unaffected

removeListener

public void removeListener(ILabelProviderListener listener)
The DecoratingLabelProvider implementation of this IBaseLabelProvider method removes the listener from both the nested label provider and the label decorator.

Specified by:
removeListener in interface IBaseLabelProvider
Overrides:
removeListener in class LabelProvider
Parameters:
listener - a label provider listener

setLabelDecorator

public void setLabelDecorator(ILabelDecorator decorator)
Sets the label decorator. Removes all known listeners from the old decorator, and adds all known listeners to the new decorator. The old decorator is not disposed. Fires a label provider changed event indicating that all labels should be updated. Has no effect if the given decorator is identical to the current one.

Parameters:
decorator - the label decorator, or null if no decorations are to be applied

Eclipse Platform
2.0

Copyright (c) IBM Corp. and others 2000, 2002. All Rights Reserved.