public class EtchedBorder extends AbstractBorder
A class which implements a simple etched border which can either be etched-in or etched-out. If no highlight/shadow colors are initialized when the border is created, then these colors will be dynamically derived from the background color of the component argument passed into the paintBorder() method.
Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the java.beans
package. Please see XMLEncoder
.
public static final int RAISED
Raised etched type.
public static final int LOWERED
Lowered etched type.
protected int etchType
protected Color highlight
protected Color shadow
public EtchedBorder()
Creates a lowered etched border whose colors will be derived from the background color of the component passed into the paintBorder method.
public EtchedBorder(int etchType)
Creates an etched border with the specified etch-type whose colors will be derived from the background color of the component passed into the paintBorder method.
etchType
- the type of etch to be drawn by the borderpublic EtchedBorder(Color highlight, Color shadow)
Creates a lowered etched border with the specified highlight and shadow colors.
highlight
- the color to use for the etched highlightshadow
- the color to use for the etched shadow@ConstructorProperties(value={"etchType","highlightColor","shadowColor"}) public EtchedBorder(int etchType, Color highlight, Color shadow)
Creates an etched border with the specified etch-type, highlight and shadow colors.
etchType
- the type of etch to be drawn by the borderhighlight
- the color to use for the etched highlightshadow
- the color to use for the etched shadowpublic void paintBorder(Component c, Graphics g, int x, int y, int width, int height)
Paints the border for the specified component with the specified position and size.
paintBorder
in interface Border
paintBorder
in class AbstractBorder
c
- the component for which this border is being paintedg
- the paint graphicsx
- 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 borderpublic Insets getBorderInsets(Component c, Insets insets)
Reinitialize the insets parameter with this Border's current Insets.
getBorderInsets
in class AbstractBorder
c
- the component for which this border insets value appliesinsets
- the object to be reinitializedinsets
objectpublic boolean isBorderOpaque()
Returns whether or not the border is opaque.
isBorderOpaque
in interface Border
isBorderOpaque
in class AbstractBorder
public int getEtchType()
Returns which etch-type is set on the etched border.
public Color getHighlightColor(Component c)
Returns the highlight color of the etched border when rendered on the specified component. If no highlight color was specified at instantiation, the highlight color is derived from the specified component's background color.
c
- the component for which the highlight may be derivedpublic Color getHighlightColor()
Returns the highlight color of the etched border. Will return null if no highlight color was specified at instantiation.
public Color getShadowColor(Component c)
Returns the shadow color of the etched border when rendered on the specified component. If no shadow color was specified at instantiation, the shadow color is derived from the specified component's background color.
c
- the component for which the shadow may be derivedpublic Color getShadowColor()
Returns the shadow color of the etched border. Will return null if no shadow color was specified at instantiation.
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.