Class LabelView
- java.lang.Object
-
- javax.swing.text.View
-
- javax.swing.text.GlyphView
-
- javax.swing.text.LabelView
-
- All Implemented Interfaces:
- Cloneable, SwingConstants, TabableView
- Direct Known Subclasses:
- InlineView
public class LabelView extends GlyphView implements TabableView
ALabelView
is a styled chunk of text that represents a view mapped over an element in the text model. It caches the character level attributes used for rendering.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.text.GlyphView
GlyphView.GlyphPainter
-
-
Field Summary
-
Fields inherited from class javax.swing.text.View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
-
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
-
-
Constructor Summary
Constructors Constructor and Description LabelView(Element elem)
Constructs a new view wrapped on an element.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method and Description void
changedUpdate(DocumentEvent e, Shape a, ViewFactory f)
Gives notification from the document that attributes were changed in a location that this view is responsible for.Color
getBackground()
Fetches the background color to use to render the glyphs.Font
getFont()
Fetches the font that the glyphs should be based upon.protected FontMetrics
getFontMetrics()
Deprecated.FontMetrics are not used for glyph rendering when running in the JDK.Color
getForeground()
Fetches the foreground color to use to render the glyphs.boolean
isStrikeThrough()
Determines if the glyphs should have a strikethrough line.boolean
isSubscript()
Determines if the glyphs should be rendered as superscript.boolean
isSuperscript()
Determines if the glyphs should be rendered as subscript.boolean
isUnderline()
Determines if the glyphs should be underlined.protected void
setBackground(Color bg)
Sets the background color for the view.protected void
setPropertiesFromAttributes()
Sets the cached properties from the attributes.protected void
setStrikeThrough(boolean s)
Sets whether or not the view has a strike/line through it.protected void
setSubscript(boolean s)
Sets whether or not the view represents a subscript.protected void
setSuperscript(boolean s)
Sets whether or not the view represents a superscript.protected void
setUnderline(boolean u)
Sets whether or not the view is underlined.-
Methods inherited from class javax.swing.text.GlyphView
breakView, checkPainter, clone, createFragment, getAlignment, getBreakWeight, getEndOffset, getGlyphPainter, getMinimumSpan, getNextVisualPositionFrom, getPartialSpan, getPreferredSpan, getStartOffset, getTabbedSpan, getTabExpander, getText, insertUpdate, modelToView, paint, removeUpdate, setGlyphPainter, viewToModel
-
Methods inherited from class javax.swing.text.View
append, forwardUpdate, forwardUpdateToView, getAttributes, getChildAllocation, getContainer, getDocument, getElement, getGraphics, getMaximumSpan, getParent, getResizeWeight, getToolTipText, getView, getViewCount, getViewFactory, getViewIndex, getViewIndex, insert, isVisible, modelToView, modelToView, preferenceChanged, remove, removeAll, replace, setParent, setSize, updateChildren, updateLayout, viewToModel
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface javax.swing.text.TabableView
getPartialSpan, getTabbedSpan
-
-
-
-
Constructor Detail
LabelView
public LabelView(Element elem)
Constructs a new view wrapped on an element.- Parameters:
-
elem
- the element
-
Method Detail
setUnderline
protected void setUnderline(boolean u)
Sets whether or not the view is underlined. Note that this setter is protected and is really only meant if you need to update some additional state when set.- Parameters:
-
u
- true if the view is underlined, otherwise false - See Also:
-
isUnderline()
setStrikeThrough
protected void setStrikeThrough(boolean s)
Sets whether or not the view has a strike/line through it. Note that this setter is protected and is really only meant if you need to update some additional state when set.- Parameters:
-
s
- true if the view has a strike/line through it, otherwise false - See Also:
-
isStrikeThrough()
setSuperscript
protected void setSuperscript(boolean s)
Sets whether or not the view represents a superscript. Note that this setter is protected and is really only meant if you need to update some additional state when set.- Parameters:
-
s
- true if the view represents a superscript, otherwise false - See Also:
-
isSuperscript()
setSubscript
protected void setSubscript(boolean s)
Sets whether or not the view represents a subscript. Note that this setter is protected and is really only meant if you need to update some additional state when set.- Parameters:
-
s
- true if the view represents a subscript, otherwise false - See Also:
-
isSubscript()
setBackground
protected void setBackground(Color bg)
Sets the background color for the view. This method is typically invoked as part of configuring thisView
. If you need to customize the background color you should overridesetPropertiesFromAttributes
and invoke this method. A value of null indicates no background should be rendered, so that the background of the parentView
will show through.- Parameters:
-
bg
- background color, or null - Since:
- 1.5
- See Also:
-
setPropertiesFromAttributes()
setPropertiesFromAttributes
protected void setPropertiesFromAttributes()
Sets the cached properties from the attributes.
getFontMetrics
@Deprecated protected FontMetrics getFontMetrics()
Deprecated. FontMetrics are not used for glyph rendering when running in the JDK.Fetches theFontMetrics
used for this view.
getBackground
public Color getBackground()
Fetches the background color to use to render the glyphs. This is implemented to return a cached background color, which defaults tonull
.- Overrides:
-
getBackground
in classGlyphView
- Returns:
- the cached background color
- Since:
- 1.3
getForeground
public Color getForeground()
Fetches the foreground color to use to render the glyphs. This is implemented to return a cached foreground color, which defaults tonull
.- Overrides:
-
getForeground
in classGlyphView
- Returns:
- the cached foreground color
- Since:
- 1.3
getFont
public Font getFont()
Fetches the font that the glyphs should be based upon. This is implemented to return a cached font.
isUnderline
public boolean isUnderline()
Determines if the glyphs should be underlined. If true, an underline should be drawn through the baseline. This is implemented to return the cached underline property.When you request this property,
LabelView
re-syncs its state with the properties of theElement
'sAttributeSet
. IfElement
'sAttributeSet
does not have this property set, it will revert to false.- Overrides:
-
isUnderline
in classGlyphView
- Returns:
-
the value of the cached
underline
property - Since:
- 1.3
isStrikeThrough
public boolean isStrikeThrough()
Determines if the glyphs should have a strikethrough line. If true, a line should be drawn through the center of the glyphs. This is implemented to return the cachedstrikeThrough
property.When you request this property,
LabelView
re-syncs its state with the properties of theElement
'sAttributeSet
. IfElement
'sAttributeSet
does not have this property set, it will revert to false.- Overrides:
-
isStrikeThrough
in classGlyphView
- Returns:
-
the value of the cached
strikeThrough
property - Since:
- 1.3
isSubscript
public boolean isSubscript()
Determines if the glyphs should be rendered as superscript.- Overrides:
-
isSubscript
in classGlyphView
- Returns:
-
the value of the cached subscript property
When you request this property,
LabelView
re-syncs its state with the properties of theElement
'sAttributeSet
. IfElement
'sAttributeSet
does not have this property set, it will revert to false. - Since:
- 1.3
isSuperscript
public boolean isSuperscript()
Determines if the glyphs should be rendered as subscript.When you request this property,
LabelView
re-syncs its state with the properties of theElement
'sAttributeSet
. IfElement
'sAttributeSet
does not have this property set, it will revert to false.- Overrides:
-
isSuperscript
in classGlyphView
- Returns:
-
the value of the cached
superscript
property - Since:
- 1.3
changedUpdate
public void changedUpdate(DocumentEvent e, Shape a, ViewFactory f)
Gives notification from the document that attributes were changed in a location that this view is responsible for.- Overrides:
-
changedUpdate
in classGlyphView
- Parameters:
-
e
- the change information from the associated document -
a
- the current allocation of the view -
f
- the factory to use to rebuild if the view has children - See Also:
-
View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.