Class ClassicButtonShaper

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

public class ClassicButtonShaper extends Object implements RadianceButtonShaper, RectangularButtonShaper
Button shaper that returns rectangular buttons with slightly rounded corners (ala Windows XP). This class is part of officially supported API.
Author:
Kirill Grouchnikov
  • Field Details

    • INSTANCE

      public static final ClassicButtonShaper INSTANCE
      Reusable instance of this shaper.
  • Constructor Details

    • ClassicButtonShaper

      public ClassicButtonShaper()
  • 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 outline.
      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.
    • 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.