layout(bounds.width, bounds.height);
setSize(bounds.width, bounds.height);
  public Shape modelToView(int pos, Shape a, Position.Bias bias)      throws BadLocationException  {    // Make sure everything is allocated properly and then call super    if (! isAllocationValid())      {        Rectangle bounds = a.getBounds();        layout(bounds.width, bounds.height);      }    return super.modelToView(pos, a, bias);  }