public class

DefaultHighlighter

extends LayeredHighlighter
java.lang.Object
   ↳ javax.swing.text.LayeredHighlighter
     ↳ javax.swing.text.DefaultHighlighter
Known Direct Subclasses

Class Overview

Implements the Highlighter interfaces. Implements a simple highlight painter that renders in a solid color.

See Also

Summary

Nested Classes
class DefaultHighlighter.DefaultHighlightPainter Simple highlight painter that fills a highlighted area with a solid color. 
Fields
public static final LayeredHighlighter.LayerPainter DefaultPainter Default implementation of LayeredHighlighter.LayerPainter that can be used for painting highlights.
Public Constructors
DefaultHighlighter()
Creates a new DefaultHighlighther object.
Public Methods
Object addHighlight(int p0, int p1, Highlighter.HighlightPainter p)
Adds a highlight to the view.
void changeHighlight(Object tag, int p0, int p1)
Changes a highlight.
void deinstall(JTextComponent c)
Called when the UI is being removed from the interface of a JTextComponent.
boolean getDrawsLayeredHighlights()
Highlight[] getHighlights()
Makes a copy of the highlights.
void install(JTextComponent c)
Called when the UI is being installed into the interface of a JTextComponent.
void paint(Graphics g)
Renders the highlights.
void paintLayeredHighlights(Graphics g, int p0, int p1, Shape viewBounds, JTextComponent editor, View view)
When leaf Views (such as LabelView) are rendering they should call into this method.
void removeAllHighlights()
Removes all highlights.
void removeHighlight(Object tag)
Removes a highlight from the view.
void setDrawsLayeredHighlights(boolean newValue)
If true, highlights are drawn as the Views draw the text.
[Expand]
Inherited Methods
From class javax.swing.text.LayeredHighlighter
From class java.lang.Object
From interface javax.swing.text.Highlighter

Fields

public static final LayeredHighlighter.LayerPainter DefaultPainter

Default implementation of LayeredHighlighter.LayerPainter that can be used for painting highlights.

As of 1.4 this field is final.

Public Constructors

public DefaultHighlighter ()

Creates a new DefaultHighlighther object.

Public Methods

public Object addHighlight (int p0, int p1, Highlighter.HighlightPainter p)

Adds a highlight to the view. Returns a tag that can be used to refer to the highlight.

Parameters
p0 the start offset of the range to highlight >= 0
p1 the end offset of the range to highlight >= p0
p the painter to use to actually render the highlight
Returns
  • an object that can be used as a tag to refer to the highlight
Throws
BadLocationException if the specified location is invalid

public void changeHighlight (Object tag, int p0, int p1)

Changes a highlight.

Parameters
tag the highlight tag
p0 the beginning of the range >= 0
p1 the end of the range >= p0
Throws
BadLocationException if the specified location is invalid

public void deinstall (JTextComponent c)

Called when the UI is being removed from the interface of a JTextComponent.

Parameters
c the component

public boolean getDrawsLayeredHighlights ()

public Highlight[] getHighlights ()

Makes a copy of the highlights. Does not actually clone each highlight, but only makes references to them.

Returns
  • the copy
See Also

public void install (JTextComponent c)

Called when the UI is being installed into the interface of a JTextComponent. Installs the editor, and removes any existing highlights.

Parameters
c the editor component

public void paint (Graphics g)

Renders the highlights.

Parameters
g the graphics context

public void paintLayeredHighlights (Graphics g, int p0, int p1, Shape viewBounds, JTextComponent editor, View view)

When leaf Views (such as LabelView) are rendering they should call into this method. If a highlight is in the given region it will be drawn immediately.

Parameters
g Graphics used to draw
p0 starting offset of view
p1 ending offset of view
viewBounds Bounds of View
editor JTextComponent
view View instance being rendered

public void removeAllHighlights ()

Removes all highlights.

public void removeHighlight (Object tag)

Removes a highlight from the view.

Parameters
tag the reference to the highlight

public void setDrawsLayeredHighlights (boolean newValue)

If true, highlights are drawn as the Views draw the text. That is the Views will call into paintLayeredHighlight which will result in a rectangle being drawn before the text is drawn (if the offsets are in a highlighted region that is). For this to work the painter supplied must be an instance of LayeredHighlightPainter.