continue;
}
final TextAttribute textattribute = (TextAttribute) attribute;
if (textattribute.equals(TextAttribute.FONT))
{
final Font font = (Font) iter.getAttributes().get(textattribute);
setFont(font);
}
else if (textattribute.equals(TextAttribute.UNDERLINE))
{
if (iter.getAttributes().get(textattribute) == TextAttribute.UNDERLINE_ON)
{
underline = true;
}
}
else if (textattribute.equals(TextAttribute.SIZE))
{
final Object obj = iter.getAttributes().get(textattribute);
if (obj instanceof Integer)
{
final int i = ((Integer) obj).intValue();
setFont(getFont().deriveFont(getFont().getStyle(), i));
}
else if (obj instanceof Float)
{
final float f = ((Float) obj).floatValue();
setFont(getFont().deriveFont(getFont().getStyle(), f));
}
}
else if (textattribute.equals(TextAttribute.FOREGROUND))
{
setColor((Color) iter.getAttributes().get(textattribute));
}
else if (textattribute.equals(TextAttribute.FAMILY))
{
final Font font = getFont();
final Map fontAttributes = font.getAttributes();
fontAttributes.put(TextAttribute.FAMILY, iter.getAttributes().get(textattribute));
setFont(font.deriveFont(fontAttributes));
}
else if (textattribute.equals(TextAttribute.POSTURE))
{
final Font font = getFont();
final Map fontAttributes = font.getAttributes();
fontAttributes.put(TextAttribute.POSTURE, iter.getAttributes().get(textattribute));
setFont(font.deriveFont(fontAttributes));
}
else if (textattribute.equals(TextAttribute.WEIGHT))
{
final Font font = getFont();
final Map fontAttributes = font.getAttributes();
fontAttributes.put(TextAttribute.WEIGHT, iter.getAttributes().get(textattribute));
setFont(font.deriveFont(fontAttributes));
}
}
}