Package UI
Class DropShadowBorder
- java.lang.Object
-
- UI.DropShadowBorder
-
- All Implemented Interfaces:
javax.swing.border.Border
public class DropShadowBorder extends java.lang.Object implements javax.swing.border.BorderImplements a DropShadow for components. In general, the DropShadowBorder will work with any rectangular components that do not have a default border installed as part of the look and feel, or otherwise. For example, DropShadowBorder works wonderfully with JPanel, but horribly with JComboBox.
-
-
Constructor Summary
Constructors Constructor Description DropShadowBorder()Constructs a DropShadowBorder with default settings.DropShadowBorder(java.awt.Color lineColor, int lineWidth, int shadowSize)Constructs a DropShadowBorder with specified line color, line width, and shadow size.DropShadowBorder(java.awt.Color lineColor, int lineWidth, int shadowSize, float shadowOpacity, int cornerSize, boolean showTopShadow, boolean showLeftShadow, boolean showBottomShadow, boolean showRightShadow)Constructs a DropShadowBorder with full customization options.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.InsetsgetBorderInsets(java.awt.Component c)Returns the insets of the border.booleanisBorderOpaque()Indicates whether the border is opaque.voidpaintBorder(java.awt.Component c, java.awt.Graphics graphics, int x, int y, int width, int height)Paints the border for the specified component.
-
-
-
Constructor Detail
-
DropShadowBorder
public DropShadowBorder()
Constructs a DropShadowBorder with default settings. Uses the default color from the UIManager, a line width of 1, and a shadow size of 5.
-
DropShadowBorder
public DropShadowBorder(java.awt.Color lineColor, int lineWidth, int shadowSize)Constructs a DropShadowBorder with specified line color, line width, and shadow size.- Parameters:
lineColor- the color of the border linelineWidth- the width of the border lineshadowSize- the size of the shadow
-
DropShadowBorder
public DropShadowBorder(java.awt.Color lineColor, int lineWidth, int shadowSize, float shadowOpacity, int cornerSize, boolean showTopShadow, boolean showLeftShadow, boolean showBottomShadow, boolean showRightShadow)Constructs a DropShadowBorder with full customization options.- Parameters:
lineColor- the color of the border linelineWidth- the width of the border lineshadowSize- the size of the shadowshadowOpacity- the opacity of the shadowcornerSize- the size of the cornersshowTopShadow- whether to show the top shadowshowLeftShadow- whether to show the left shadowshowBottomShadow- whether to show the bottom shadowshowRightShadow- whether to show the right shadow
-
-
Method Detail
-
paintBorder
public void paintBorder(java.awt.Component c, java.awt.Graphics graphics, int x, int y, int width, int height)Paints the border for the specified component. Draws the shadow and border lines based on the component's dimensions and shadow settings.- Specified by:
paintBorderin interfacejavax.swing.border.Border- Parameters:
c- the component for which this border is being paintedgraphics- the Graphics context in which to paintx- the x position of the painted bordery- the y position of the painted borderwidth- the width of the painted borderheight- the height of the painted border
-
getBorderInsets
public java.awt.Insets getBorderInsets(java.awt.Component c)
Returns the insets of the border. The insets are determined based on the visibility of the shadows and the line width.- Specified by:
getBorderInsetsin interfacejavax.swing.border.Border- Parameters:
c- the component for which this border insets value applies- Returns:
- the insets of the border
-
isBorderOpaque
public boolean isBorderOpaque()
Indicates whether the border is opaque.- Specified by:
isBorderOpaquein interfacejavax.swing.border.Border- Returns:
- true if the border is opaque, false otherwise
-
-