if (b.isOpaque() && UIManager.get(getPropertyPrefix() + "gradient") != null
if (b.isContentAreaFilled() && UIManager.get(getPropertyPrefix() + "gradient") != null
  public void update(Graphics g, JComponent c)  {    AbstractButton b = (AbstractButton) c;    if (b.isOpaque() && UIManager.get(getPropertyPrefix() + "gradient") != null        && !b.getModel().isPressed() && b.isEnabled())      {        MetalUtils.paintGradient(g, 0, 0, c.getWidth(), c.getHeight(),                                 SwingConstants.VERTICAL,                                 getPropertyPrefix() + "gradient");        paint(g, c);      }    else      super.update(g, c);  }