Class DropShadowBorder

java.lang.Object
org.jdesktop.swingx.border.DropShadowBorder
All Implemented Interfaces:
Serializable, Border

public class DropShadowBorder extends Object implements Border, Serializable
Implements 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.

Note: DropShadowBorder should usually be added to non-opaque components, otherwise the background is likely to bleed through.

Note: Since generating drop shadows is relatively expensive operation, DropShadowBorder keeps internal static cache that allows sharing same border for multiple re-rendering and between different instances of the class. Since this cache is shared at class level and never reset, it might bleed your app memory in case you tend to create many different borders rapidly.

Author:
rbair
See Also:
  • Constructor Details

    • DropShadowBorder

      public DropShadowBorder()
    • DropShadowBorder

      public DropShadowBorder(Color shadowColor, int shadowSize)
    • DropShadowBorder

      public DropShadowBorder(boolean showLeftShadow)
    • DropShadowBorder

      public DropShadowBorder(Color shadowColor, int shadowSize, float shadowOpacity, int cornerSize, boolean showTopShadow, boolean showLeftShadow, boolean showBottomShadow, boolean showRightShadow)
  • Method Details

    • paintBorder

      public void paintBorder(Component c, Graphics graphics, int x, int y, int width, int height)
      Specified by:
      paintBorder in interface Border
    • getBorderInsets

      public Insets getBorderInsets(Component c)
      Specified by:
      getBorderInsets in interface Border
    • isBorderOpaque

      public boolean isBorderOpaque()
      Specified by:
      isBorderOpaque in interface Border
    • isShowTopShadow

      public boolean isShowTopShadow()
    • isShowLeftShadow

      public boolean isShowLeftShadow()
    • isShowRightShadow

      public boolean isShowRightShadow()
    • isShowBottomShadow

      public boolean isShowBottomShadow()
    • getShadowSize

      public int getShadowSize()
    • getShadowColor

      public Color getShadowColor()
    • getShadowOpacity

      public float getShadowOpacity()
    • getCornerSize

      public int getCornerSize()
    • setShadowColor

      public void setShadowColor(Color shadowColor)
    • setShadowSize

      public void setShadowSize(int shadowSize)
    • setShadowOpacity

      public void setShadowOpacity(float shadowOpacity)
    • setCornerSize

      public void setCornerSize(int cornerSize)
    • setShowTopShadow

      public void setShowTopShadow(boolean showTopShadow)
    • setShowLeftShadow

      public void setShowLeftShadow(boolean showLeftShadow)
    • setShowBottomShadow

      public void setShowBottomShadow(boolean showBottomShadow)
    • setShowRightShadow

      public void setShowRightShadow(boolean showRightShadow)