Spec-Zone.ru › OpenJDK 27

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
A LabelView 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 declared in class GlyphView

GlyphView.GlyphPainter
Modifier and Type Class Description
static class  GlyphView.GlyphPainter
A class to perform rendering of the glyphs.

Field Summary

Fields declared in class View

BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
Modifier and Type Field Description
static final int BadBreakWeight
The weight to indicate a view is a bad break opportunity for the purpose of formatting.
static final int ExcellentBreakWeight
The weight to indicate a view supports breaking, and this represents a very attractive place to break.
static final int ForcedBreakWeight
The weight to indicate a view supports breaking, and must be broken to be represented properly when placed in a view that formats its children by breaking them.
static final int GoodBreakWeight
The weight to indicate a view supports breaking, but better opportunities probably exist.
static final int X_AXIS
Axis for format/break operations.
static final int Y_AXIS
Axis for format/break operations.

Fields declared in interface SwingConstants

BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
Modifier and Type Field Description
static final int BOTTOM
Box-orientation constant used to specify the bottom of a box.
static final int CENTER
The central position in an area.
static final int EAST
Compass-direction east (right).
static final int HORIZONTAL
Horizontal orientation.
static final int LEADING
Identifies the leading edge of text for use with left-to-right and right-to-left languages.
static final int LEFT
Box-orientation constant used to specify the left side of a box.
static final int NEXT
Identifies the next direction in a sequence.
static final int NORTH
Compass-direction North (up).
static final int NORTH_EAST
Compass-direction north-east (upper right).
static final int NORTH_WEST
Compass-direction north west (upper left).
static final int PREVIOUS
Identifies the previous direction in a sequence.
static final int RIGHT
Box-orientation constant used to specify the right side of a box.
static final int SOUTH
Compass-direction south (down).
static final int SOUTH_EAST
Compass-direction south-east (lower right).
static final int SOUTH_WEST
Compass-direction south-west (lower left).
static final int TOP
Box-orientation constant used to specify the top of a box.
static final int TRAILING
Identifies the trailing edge of text for use with left-to-right and right-to-left languages.
static final int VERTICAL
Vertical orientation.
static final int WEST
Compass-direction west (left).

Constructor Summary

Constructor Description
LabelView(Element elem)
Constructs a new view wrapped on an element.

Method Summary

Modifier and Type Method 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 declared in class GlyphView

breakView, checkPainter, clone, createFragment, getAlignment, getBreakWeight, getEndOffset, getGlyphPainter, getMinimumSpan, getNextVisualPositionFrom, getPartialSpan, getPreferredSpan, getStartOffset, getTabbedSpan, getTabExpander, getText, insertUpdate, modelToView, paint, removeUpdate, setGlyphPainter, viewToModel
Modifier and Type Method Description
View breakView(int axis, int p0, float pos, float len)
Breaks this view on the given axis at the given length.
protected void checkPainter()
Check to see that a glyph painter exists.
protected final Object clone()
Creates a shallow copy.
View createFragment(int p0, int p1)
Creates a view that represents a portion of the element.
float getAlignment(int axis)
Determines the desired alignment for this view along an axis.
int getBreakWeight(int axis, float pos, float len)
Determines how attractive a break opportunity in this view is.
int getEndOffset()
Fetches the portion of the model that this view is responsible for.
GlyphView.GlyphPainter getGlyphPainter()
Fetch the currently installed glyph painter.
float getMinimumSpan(int axis)
Determines the minimum span for this view along an axis.
int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet)
Provides a way to determine the next visually represented model location that one might place a caret.
float getPartialSpan(int p0, int p1)
Determines the span along the same axis as tab expansion for a portion of the view.
float getPreferredSpan(int axis)
Determines the preferred span for this view along an axis.
int getStartOffset()
Fetches the portion of the model that this view is responsible for.
float getTabbedSpan(float x, TabExpander e)
Determines the desired span when using the given tab expansion implementation.
TabExpander getTabExpander()
Fetch the TabExpander to use if tabs are present in this view.
Segment getText(int p0, int p1)
Fetch a reference to the text that occupies the given range.
void insertUpdate(DocumentEvent e, Shape a, ViewFactory f)
Gives notification that something was inserted into the document in a location that this view is responsible for.
Shape modelToView(int pos, Shape a, Position.Bias b)
Provides a mapping from the document model coordinate space to the coordinate space of the view mapped to it.
void paint(Graphics g, Shape a)
Renders a portion of a text style run.
void removeUpdate(DocumentEvent e, Shape a, ViewFactory f)
Gives notification that something was removed from the document in a location that this view is responsible for.
void setGlyphPainter(GlyphView.GlyphPainter p)
Sets the painter to use for rendering glyphs.
int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)
Provides a mapping from the view coordinate space to the logical coordinate space of the model.

Methods declared in class 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
Modifier and Type Method Description
void append(View v)
Appends a single child view.
protected void forwardUpdate(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a, ViewFactory f)
Forwards the given DocumentEvent to the child views that need to be notified of the change to the model.
protected void forwardUpdateToView(View v, DocumentEvent e, Shape a, ViewFactory f)
Forwards the DocumentEvent to the give child view.
AttributeSet getAttributes()
Fetches the attributes to use when rendering.
Shape getChildAllocation(int index, Shape a)
Fetches the allocation for the given child view.
Container getContainer()
Fetches the container hosting the view.
Document getDocument()
Fetches the model associated with the view.
Element getElement()
Fetches the structural portion of the subject that this view is mapped to.
Graphics getGraphics()
Fetch a Graphics for rendering.
float getMaximumSpan(int axis)
Determines the maximum span for this view along an axis.
View getParent()
Returns the parent of the view.
int getResizeWeight(int axis)
Determines the resizability of the view along the given axis.
String getToolTipText(float x, float y, Shape allocation)
Returns the tooltip text at the specified location.
View getView(int n)
Gets the nth child view.
int getViewCount()
Returns the number of views in this view.
ViewFactory getViewFactory()
Fetches the ViewFactory implementation that is feeding the view hierarchy.
int getViewIndex(float x, float y, Shape allocation)
Returns the child view index representing the given position in the view.
int getViewIndex(int pos, Position.Bias b)
Returns the child view index representing the given position in the model.
void insert(int offs, View v)
Inserts a single child view.
boolean isVisible()
Returns a boolean that indicates whether the view is visible or not.
Shape modelToView(int pos, Shape a)
Deprecated.
Shape modelToView(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a)
Provides a mapping, for a given region, from the document model coordinate space to the view coordinate space.
void preferenceChanged(View child, boolean width, boolean height)
Child views can call this on the parent to indicate that the preference has changed and should be reconsidered for layout.
void remove(int i)
Removes one of the children at the given position.
void removeAll()
Removes all of the children.
void replace(int offset, int length, View[] views)
Replaces child views.
void setParent(View parent)
Establishes the parent view for this view.
void setSize(float width, float height)
Sets the size of the view.
protected boolean updateChildren(DocumentEvent.ElementChange ec, DocumentEvent e, ViewFactory f)
Updates the child views in response to receiving notification that the model changed, and there is change record for the element this view is responsible for.
protected void updateLayout(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a)
Updates the layout in response to receiving notification of change from the model.
int viewToModel(float x, float y, Shape a)
Deprecated.

Methods declared in class Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Modifier and Type Method Description
boolean equals(Object obj)
Indicates whether some other object is "equal to" this one.
protected void finalize()
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
final Class<?> getClass()
Returns the runtime class of this Object.
int hashCode()
Returns a hash code value for this object.
final void notify()
Wakes up a single thread that is waiting on this object's monitor.
final void notifyAll()
Wakes up all threads that are waiting on this object's monitor.
String toString()
Returns a string representation of the object.
final void wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
final void wait(long timeoutMillis)
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
final void wait(long timeoutMillis, int nanos)
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

Constructor Details

LabelView

public LabelView(Element elem)
Constructs a new view wrapped on an element.
Parameters:
elem - the element

Method Details

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 this View. If you need to customize the background color you should override setPropertiesFromAttributes and invoke this method. A value of null indicates no background should be rendered, so that the background of the parent View 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 the FontMetrics used for this view.
Returns:
the FontMetrics 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 to null.
Overrides:
getBackground in class GlyphView
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 to null.
Overrides:
getForeground in class GlyphView
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.
Overrides:
getFont in class GlyphView
Returns:
the 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 the Element's AttributeSet. If Element's AttributeSet does not have this property set, it will revert to false.

Overrides:
isUnderline in class GlyphView
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 cached strikeThrough property.

When you request this property, LabelView re-syncs its state with the properties of the Element's AttributeSet. If Element's AttributeSet does not have this property set, it will revert to false.

Overrides:
isStrikeThrough in class GlyphView
Returns:
the value of the cached strikeThrough property
Since:
1.3

isSubscript

public boolean isSubscript()
Determines if the glyphs should be rendered as superscript.

When you request this property, LabelView re-syncs its state with the properties of the Element's AttributeSet. If Element's AttributeSet does not have this property set, it will revert to false.

Overrides:
isSubscript in class GlyphView
Returns:
the value of the cached subscript property
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 the Element's AttributeSet. If Element's AttributeSet does not have this property set, it will revert to false.

Overrides:
isSuperscript in class GlyphView
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 class GlyphView
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(DocumentEvent, Shape, ViewFactory)

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 1993, 2025, 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API