java.lang.Object
org.pushingpixels.radiance.theming.extras.api.shaperpack.BasePolygonShaper
All Implemented Interfaces:
RadianceButtonShaper, RadianceTrait
Direct Known Subclasses:
ButterflyButtonShaper, DolphinButtonShaper, FishButtonShaper, FootButtonShaper, IceCreamButtonShaper, RaceCarButtonShaper, RhinoButtonShaper, StegosaurusButtonShaper

public abstract class BasePolygonShaper extends Object implements RadianceButtonShaper
  • Field Details

    • canonicalPath

      private CanonicalPath canonicalPath
    • topCoef

      private double topCoef
    • leftCoef

      private double leftCoef
    • bottomCoef

      private double bottomCoef
    • rightCoef

      private double rightCoef
  • Constructor Details

    • BasePolygonShaper

      public BasePolygonShaper(String resourceName, double topCoef, double leftCoef, double bottomCoef, double rightCoef)
  • Method Details

    • 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.
    • 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.
    • getButtonBorder

      public Border getButtonBorder(Dimension preferredSize)
    • 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.
    • 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.