Class SoftBevelBorder

All Implemented Interfaces:
Serializable, Border

public class SoftBevelBorder extends BevelBorder
Port of SoftBevelBorder. Rounded-corner variant of BevelBorder. Under R_best_effort_behaviour best-effort we reuse the same CSS inset/outset rendering and add a small border-radius so the edges are visibly rounded. The hand- picked rounding radius (3px) mirrors what JDK's SoftBevelBorder paints at its standard 2px thickness.
See Also:
  • Constructor Details

    • SoftBevelBorder

      public SoftBevelBorder(int bevelType)
    • SoftBevelBorder

      public SoftBevelBorder(int bevelType, Color highlight, Color shadow)
    • SoftBevelBorder

      public SoftBevelBorder(int bevelType, Color highlightOuterColor, Color highlightInnerColor, Color shadowOuterColor, Color shadowInnerColor)
  • Method Details

    • getBorderInsets

      public Insets getBorderInsets(Component c)
      Specified by:
      getBorderInsets in interface Border
      Overrides:
      getBorderInsets in class BevelBorder
    • isBorderOpaque

      public boolean isBorderOpaque()
      Specified by:
      isBorderOpaque in interface Border
      Overrides:
      isBorderOpaque in class BevelBorder
    • applyCss

      public void applyCss(com.vaadin.flow.dom.Element element)
      Description copied from class: AbstractBorder
      Write this border's CSS onto the target element. Called by JComponent.setBorder(Border). Concrete border classes override to emit the CSS that represents them (padding for EmptyBorder, border for LineBorder, per-side for MatteBorder, …). The base implementation clears any previously-installed border CSS via AbstractBorder.clearBorderCss(Element) and writes nothing, which is the honest behaviour for a user-authored custom AbstractBorder that didn't override this hook.

      Typical override: clearBorderCss(e); set("border", …);. Always clear first so a previous border's keys don't linger.

      Overrides:
      applyCss in class BevelBorder