public class SimpleLinePainter extends java.lang.Object implements UnderlinePainter
SimpleLinePainter
is an implementation of the UnderlinePainter
which paints a straight underline or separator of a given thickness.Modifier and Type | Field and Description |
---|---|
protected int |
_thickness
The thickness of the line to paint.
|
protected int |
_underlineType
The type of underline, such as TYPE_UNDERLINE or TYPE_SEPARATOR.
|
static int |
MAX_THICKNESS
The maximum thickness that can be specified to the line painter.
|
TYPE_SEPARATOR, TYPE_STRIKETHRU, TYPE_UNDERLINE
Constructor and Description |
---|
SimpleLinePainter(int thickness, int underlineType)
Constructs a new
SimpleLinePainter of the specified thickness. |
Modifier and Type | Method and Description |
---|---|
int |
getUnderlineType()
Fetch the type of underline, such as TYPE_SEPARATOR.
|
protected int |
getYPos(int yTop, int yBaseline, int descent)
Utility routine to calculate the appropriate y position to start painting downwards from, based on the requested paint position (from baseline or from bottom), and the yBaseline coordinate and the descent.)
|
void |
paintUnderline(java.awt.Graphics graphics, java.awt.Color color, int xPos, int width, int yTop, int yBaseline, int descent)
Paints the underline using this implementation of the
UnderlinePainter . |
public static final int MAX_THICKNESS
protected final int _thickness
protected final int _underlineType
public SimpleLinePainter(int thickness, int underlineType)
SimpleLinePainter
of the specified thickness. Any thickness greater than MAX_THICKNESS will be automatically reduced. The type of underline indicates where the underline will be painted.thickness
- the thickness of the line to paintunderlineType
- the type of underline, such as TYPE_SEPARATORprotected int getYPos(int yTop, int yBaseline, int descent)
yBaseline
- the y position of the baselinedescent
- the descent of the text below the baselinepublic void paintUnderline(java.awt.Graphics graphics, java.awt.Color color, int xPos, int width, int yTop, int yBaseline, int descent)
UnderlinePainter
.paintUnderline
in interface UnderlinePainter
graphics
- the graphics context to paint intocolor
- the color to use for painting the underlinexPos
- the x position to start painting fromwidth
- the width of the underline to paintyTop
- the y position of the top of the textyBaseline
- the y position of the baseline of the text we are drawing an underline fordescent
- the descent of the font the text was drawn withpublic int getUnderlineType()
getUnderlineType
in interface UnderlinePainter