Class DefaultHighlighter
java.lang.Object
javax.swing.text.LayeredHighlighter
javax.swing.text.DefaultHighlighter
- All Implemented Interfaces:
Highlighter
- Direct Known Subclasses:
BasicTextUI.BasicHighlighter
Implements the Highlighter interfaces. Implements a simple highlight
painter that renders in a solid color.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classSimple highlight painter that fills a highlighted area with a solid color.Nested classes/interfaces declared in class LayeredHighlighter
LayeredHighlighter.LayerPainterModifier and TypeClassDescriptionstatic classLayered highlight renderer.Nested classes/interfaces declared in interface Highlighter
Highlighter.Highlight, Highlighter.HighlightPainterModifier and TypeInterfaceDescriptionstatic interfaceA highlight.static interfaceHighlight renderer. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final LayeredHighlighter.LayerPainterDefault implementation of LayeredHighlighter.LayerPainter that can be used for painting highlights. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddHighlight(int p0, int p1, Highlighter.HighlightPainter p) Adds a highlight to the view.voidchangeHighlight(Object tag, int p0, int p1) Changes a highlight.voidCalled when the UI is being removed from the interface of a JTextComponent.booleanReturn the draw layered highlights.Makes a copy of the highlights.voidCalled when the UI is being installed into the interface of a JTextComponent.voidRenders the highlights.voidpaintLayeredHighlights(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.voidRemoves all highlights.voidremoveHighlight(Object tag) Removes a highlight from the view.voidsetDrawsLayeredHighlights(boolean newValue) If true, highlights are drawn as the Views draw the text.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.booleanCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.inthashCode()Answers an integer hash code for the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.toString()Answers a string containing a concise, human-readable description of the receiver.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(long time) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.final voidwait(long time, int frac) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.
-
Field Details
-
DefaultPainter
Default implementation of LayeredHighlighter.LayerPainter that can be used for painting highlights.As of 1.4 this field is final.
-
-
Constructor Details
-
DefaultHighlighter
public DefaultHighlighter()Creates a new DefaultHighlighter object.
-
-
Method Details
-
paint
-
install
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- See Also:
-
deinstall
Called when the UI is being removed from the interface of a JTextComponent.- Parameters:
c- the component- See Also:
-
addHighlight
public Object addHighlight(int p0, int p1, Highlighter.HighlightPainter p) throws BadLocationException 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 >= 0p1- the end offset of the range to highlight >= p0p- 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
-
removeHighlight
Removes a highlight from the view.- Parameters:
tag- the reference to the highlight
-
removeAllHighlights
public void removeAllHighlights()Removes all highlights. -
changeHighlight
Changes a highlight.- Parameters:
tag- the highlight tagp0- the beginning of the range >= 0p1- the end of the range >= p0- Throws:
BadLocationException- if the specified location is invalid
-
getHighlights
Makes a copy of the highlights. Does not actually clone each highlight, but only makes references to them.- Returns:
- the copy
- See Also:
-
paintLayeredHighlights
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.- Specified by:
paintLayeredHighlightsin classLayeredHighlighter- Parameters:
g- Graphics used to drawp0- starting offset of viewp1- ending offset of viewviewBounds- Bounds of Vieweditor- JTextComponentview- View instance being rendered
-
setDrawsLayeredHighlights
public void setDrawsLayeredHighlights(boolean newValue) If true, highlights are drawn as the Views draw the text. That is the Views will call intopaintLayeredHighlightwhich 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.- Parameters:
newValue- the new value
-
getDrawsLayeredHighlights
public boolean getDrawsLayeredHighlights()Return the draw layered highlights.- Returns:
- the draw layered highlights
-