- gr.setColor(attrToForegroundColor(lCell));
- char [] chars = new char[1];
- chars[0] = lCell.getChar();
- gr.drawChars(chars, 0, 1, xPixel,
- yPixel + textHeight - maxDescent);
+
+ // Handle blink and underline
+ if (!lCell.isBlink()
+ || (lCell.isBlink() && cursorBlinkVisible)
+ ) {
+ gr.setColor(attrToForegroundColor(lCellColor));
+ char [] chars = new char[1];
+ chars[0] = lCell.getChar();
+ gr.drawChars(chars, 0, 1, xPixel + textAdjustX,
+ yPixel + textHeight - maxDescent
+ + textAdjustY);
+
+ if (lCell.isUnderline()) {
+ gr.fillRect(xPixel, yPixel + textHeight - 2,
+ textWidth, 2);
+ }
+ }