}
if (dim.wid == 0)
dim.wid = fm.width(s);
-
- setDimCache(mi, dim);
-}
-
-
-void InsetSpecialChar::drawBackground(PainterInfo & pi, int x, int y) const
-{
- if (pi.full_repaint)
- return;
- Dimension const dim = dimension(*pi.base.bv);
- pi.pain.fillRectangle(x, y - dim.asc, dim.wid, dim.asc + dim.des,
- pi.backgroundColor(this));
}
// helper function: draw text and update x.
void drawChar(PainterInfo & pi, int & x, int const y, char_type ch)
{
- pi.pain.text(x, y, ch, pi.base.font);
- x += theFontMetrics(pi.base.font).width(ch);
+ FontInfo font = pi.base.font;
+ font.setPaintColor(pi.textColor(font.realColor()));
+ pi.pain.text(x, y, ch, font);
+ x += theFontMetrics(font).width(ch);
}