repaint();
if (visible) if (textComponent.isEnabled() && textComponent.isEditable()) { if (blinkTimer == null) initBlinkTimer(); blinkTimer.start(); } else { if (blinkTimer != null) blinkTimer.stop(); } Rectangle area = null; try { area = getComponent().modelToView(getDot()); } catch (BadLocationException ex) { assert false: "Unexpected bad caret location: " + getDot(); } if (area != null) damage(area);
  public void setVisible(boolean v)  {    if (v != visible)      {    visible = v;    repaint();  }  }