Class StandardButtonShaper
- java.lang.Object
-
- org.pushingpixels.substance.api.shaper.StandardButtonShaper
-
- All Implemented Interfaces:
RectangularButtonShaper
,SubstanceButtonShaper
,SubstanceTrait
public class StandardButtonShaper extends Object implements SubstanceButtonShaper, RectangularButtonShaper
Button shaper that returns buttons with completely rounded corners (ala Mac 10.4). This class is part of officially supported API.
-
-
Constructor Summary
Constructors Constructor Description StandardButtonShaper()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Border
getButtonBorder(AbstractButton button)
Returns the border for the specified button.GeneralPath
getButtonOutline(AbstractButton button, Insets insets, int width, int height, boolean isInner)
Returns the outline path for the specified button.float
getCornerRadius(AbstractButton button, Insets insets)
Returns the corner radius of the specified button.String
getDisplayName()
Returns the display name ofthis
trait.Dimension
getPreferredSize(AbstractButton button, Dimension uiPreferredSize)
Returns the preferred size for the specified button.boolean
isProportionate()
Returns the boolean indication whether the shaper should maintain button proportions on the resize.static boolean
isRoundButton(AbstractButton button)
Returns indication whether the specified button should be drawn with completely round corners.
-
-
-
Method Detail
-
getDisplayName
public String getDisplayName()
Description copied from interface:SubstanceTrait
Returns the display name ofthis
trait. This method is part of officially supported API.- Specified by:
getDisplayName
in interfaceSubstanceButtonShaper
- Specified by:
getDisplayName
in interfaceSubstanceTrait
- Returns:
- The display name of
this
trait.
-
getButtonOutline
public GeneralPath getButtonOutline(AbstractButton button, Insets insets, int width, int height, boolean isInner)
Description copied from interface:SubstanceButtonShaper
Returns the outline path for the specified button.- Specified by:
getButtonOutline
in interfaceSubstanceButtonShaper
- Parameters:
button
- A button.insets
- Button insets.width
- Button width.height
- Button height.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:SubstanceButtonShaper
Returns the border for the specified button.- Specified by:
getButtonBorder
in interfaceSubstanceButtonShaper
- Parameters:
button
- A button.- Returns:
- The border for the specified button.
-
getPreferredSize
public Dimension getPreferredSize(AbstractButton button, Dimension uiPreferredSize)
Description copied from interface:SubstanceButtonShaper
Returns the preferred size for the specified button.- Specified by:
getPreferredSize
in interfaceSubstanceButtonShaper
- 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:SubstanceButtonShaper
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 interfaceSubstanceButtonShaper
- Returns:
true
ifthis
shaper should maintain button proportions on the resize,false
otherwise.
-
getCornerRadius
public float getCornerRadius(AbstractButton button, Insets insets)
Description copied from interface:RectangularButtonShaper
Returns the corner radius of the specified button.- Specified by:
getCornerRadius
in interfaceRectangularButtonShaper
- Parameters:
button
- Button.insets
- Button insets.- Returns:
- Corner radius of the specified button.
-
-