/**
  * Add this property to the CssStyle
  *
  * @param style The CssStyle
  */
 public void addToStyle(ApplContext ac, CssStyle style) {
   CssBorder cssBorder = ((Css1Style) style).cssBorder;
   cssBorder.borderColor.byUser = byUser;
   if (cssBorder.borderColor.shorthand) {
     style.addRedefinitionWarning(ac, this);
   } else {
     top.addToStyle(ac, style);
     right.addToStyle(ac, style);
     bottom.addToStyle(ac, style);
     left.addToStyle(ac, style);
   }
   cssBorder.borderColor.shorthand = shorthand;
 }
  /**
   * Compares two properties for equality.
   *
   * @param property The other property.
   */
  public boolean equals(CssProperty property) {
    try {
      CssBorderColor other = (CssBorderColor) property;
      // FIXME check compound ?
      return ((left != null && left.equals(other.left)) || (left == null && other.left == null))
          && ((bottom != null && bottom.equals(other.bottom))
              || (bottom == null && other.bottom == null))
          && ((right != null && right.equals(other.right))
              || (right == null && other.right == null))
          && ((top != null && top.equals(other.top)) || (top == null && other.top == null));

    } catch (ClassCastException cce) {
    }
    return false;
  }