Class ClassicButtonShaper
- java.lang.Object
-
- org.pushingpixels.substance.api.shaper.ClassicButtonShaper
-
- All Implemented Interfaces:
RectangularButtonShaper
,SubstanceButtonShaper
,SubstanceTrait
public class ClassicButtonShaper extends Object implements SubstanceButtonShaper, RectangularButtonShaper
Button shaper that returns rectangular buttons with slightly rounded corners (ala Windows XP). This class is part of officially supported API.
-
-
Field Summary
Fields Modifier and Type Field Description static ClassicButtonShaper
INSTANCE
Reusable instance of this shaper.
-
Constructor Summary
Constructors Constructor Description ClassicButtonShaper()
-
Method Summary
All 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.
-
-
-
Field Detail
-
INSTANCE
public static final ClassicButtonShaper INSTANCE
Reusable instance of this shaper.
-
-
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.
-
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.
-
-