I added a decorator in a Eclipse/RCP application to my tree viewer items by plugin.xml:
<extension point="org.eclipse.ui.decorators">
<decorator
adaptable="true"
class="sernet.verinice.samt.rcp.TopicDecorator"
id="sernet.verinice.samt.rcp.TopicDecorator"
label="ISA Topic decorator"
lightweight="true"
location="BOTTOM_LEFT"
state="true">
<enablement>
<objectClass name="sernet.verinice.model.samt.SamtTopic"/>
</enablement>
</decorator>
In the decorator class i set the decoration suffix which works fine:
public class TopicDecorator extends LabelProvider implements ILightweightLabelDecorator, {
ControlMaturityService maturityService = new ControlMaturityService();
@Override
public void decorate(Object element, IDecoration decoration) {
decoration.addSuffix( new StringBuilder().append(" [")
.append(maturityService.getWeightedMaturity((IControl)element))
.append("]").toString() );
decoration.setForegroundColor(new Color(Display.getCurrent(), 150,90,90));
}
As you can see i also tried to set the foreground color of the suffic which has no effect. Suffix has the same color as the label in the tree: black.
How can i set the color of the decoration suffix?
DelegatingStyledCellLabelProvider
can be used to wrap aIStyledLabelProvider
in cases where one does not want a decorator, but rather just a label provider which creates styled labels directly. – Tan