Class PillButtonShaper

java.lang.Object
org.pushingpixels.radiance.theming.api.shaper.PillButtonShaper
All Implemented Interfaces:
RadianceButtonShaper, RectangularButtonShaper, RadianceTrait

public class PillButtonShaper extends Object implements RadianceButtonShaper, RectangularButtonShaper
Button shaper that returns buttons with completely rounded corners (ala Mac 10.4). This class is part of officially supported API.
  • Field Details

  • Constructor Details

    • PillButtonShaper

      public PillButtonShaper()
  • Method Details

    • getDisplayName

      public String getDisplayName()
      Description copied from interface: RadianceTrait
      Returns the display name of this trait. This method is part of officially supported API.
      Specified by:
      getDisplayName in interface RadianceTrait
      Returns:
      The display name of this trait.
    • getButtonOutline

      public Shape getButtonOutline(AbstractButton button, float extraInsets, float width, float height, double scaleFactor, boolean isInner)
      Description copied from interface: RadianceButtonShaper
      Returns the outline path for the specified button.
      Specified by:
      getButtonOutline in interface RadianceButtonShaper
      Parameters:
      button - A button.
      extraInsets - Button insets.
      width - Button width.
      height - Button height.
      scaleFactor - Scale factor.
      isInner - Indication whether the returned outline is used for the inner contour.
      Returns:
      The outline path for the specified button.
    • getButtonBorder

      public Border getButtonBorder(AbstractButton button)
      Description copied from interface: RadianceButtonShaper
      Returns the border for the specified button.
      Specified by:
      getButtonBorder in interface RadianceButtonShaper
      Parameters:
      button - A button.
      Returns:
      The border for the specified button.
    • getPreferredSize

      public Dimension getPreferredSize(AbstractButton button, Dimension uiPreferredSize)
      Description copied from interface: RadianceButtonShaper
      Returns the preferred size for the specified button.
      Specified by:
      getPreferredSize in interface RadianceButtonShaper
      Parameters:
      button - A button.
      uiPreferredSize - Preferred size of the button under the regular conditions (plain rectangular button).
      Returns:
      The preferred size for the specified button.
    • isRoundButton

      public static boolean isRoundButton(AbstractButton button)
      Returns indication whether the specified button should be drawn with completely round corners.
      Parameters:
      button - A button.
      Returns:
      true if the specified button should be drawn with completely round corners, false otherwise.
    • isProportionate

      public boolean isProportionate()
      Description copied from interface: RadianceButtonShaper
      Returns the boolean indication whether the shaper should maintain button proportions on the resize. This may be relevant for vector-based shapers (such as animals / other objects).
      Specified by:
      isProportionate in interface RadianceButtonShaper
      Returns:
      true if this shaper should maintain button proportions on the resize, false otherwise.
    • getCornerRadius

      public float getCornerRadius(AbstractButton button, float insets)
      Description copied from interface: RectangularButtonShaper
      Returns the corner radius of the specified button.
      Specified by:
      getCornerRadius in interface RectangularButtonShaper
      Parameters:
      button - Button.
      insets - Button insets.
      Returns:
      Corner radius of the specified button.