private void adaptToColorChange(PropertyChangeEvent event) {
RGB rgb= null;
Token token = (Token) tokenMap.get(event.getProperty());
LToken lToken = (LToken) tokenMap.get(event.getProperty() + MARK_SUFFIX);
if(token == null && lToken == null) {
return;
}
Object value= event.getNewValue();
if (value instanceof RGB)
rgb= (RGB) value;
else if (value instanceof String)
rgb= StringConverter.asRGB((String) value);
if (rgb != null) {
String property= event.getProperty();
Object data= token.getData();
if (data instanceof TextAttribute) {
TextAttribute oldAttr= (TextAttribute) data;
TextAttribute newAttr = new TextAttribute(colorManager.getColor(property), oldAttr.getBackground(), oldAttr.getStyle());
if(token != null) token.setData(newAttr);
if(lToken != null) lToken.setData(newAttr);
}
}
}