# Class InlineView

java.lang.Object
javax.swing.text.View
javax.swing.text.GlyphView
javax.swing.text.LabelView
javax.swing.text.html.InlineView

All Implemented Interfaces:
  `Cloneable, SwingConstants, TabableView`

public class InlineView extends LabelView
Displays the inline element styles based upon css attributes.

## 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

Constructors
Constructor
Description
`InlineView(Element elem)`
Constructs a new view wrapped on an element.

## Method Summary

Modifier and Type
Method
Description
`View`
`breakView(int axis, int offset, float pos, float len)`
Tries to break this view on the given axis.
`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.
`AttributeSet`
`getAttributes()`
Fetches the attributes to use when rendering.
`int`
`getBreakWeight(int axis, float pos, float len)`
Determines how attractive a break opportunity in this view is.
`protected StyleSheet`
`getStyleSheet()`
Convenient method to get the StyleSheet.
`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.
`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.
`protected void`
`setPropertiesFromAttributes()`
Set the cached properties from the attributes.

### Methods declared in class LabelView

`getBackground, getFont, getFontMetrics, getForeground, isStrikeThrough, isSubscript, isSuperscript, isUnderline, setBackground, setStrikeThrough, setSubscript, setSuperscript, setUnderline`
Modifier and Type
Method
Description
`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`
`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

`checkPainter, clone, createFragment, getAlignment, getEndOffset, getGlyphPainter, getMinimumSpan, getNextVisualPositionFrom, getPartialSpan, getPreferredSpan, getStartOffset, getTabbedSpan, getTabExpander, getText, modelToView, paint, setGlyphPainter, viewToModel`
Modifier and Type
Method
Description
`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`
`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.
`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`
`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, 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.
`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

### InlineView

public InlineView(Element elem)
Constructs a new view wrapped on an element.

Parameters:
  `elem` - the element

## Method Details

### insertUpdate

public 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. If either parameter is `null`, behavior of this method is implementation dependent.

Overrides:
  `insertUpdate` 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
Since:
  1.5
See Also:
  - `View.insertUpdate(DocumentEvent, Shape, ViewFactory)`

### removeUpdate

public 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. If either parameter is `null`, behavior of this method is implementation dependent.

Overrides:
  `removeUpdate` 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
Since:
  1.5
See Also:
  - `View.removeUpdate(DocumentEvent, Shape, ViewFactory)`

### 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 `LabelView`
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)`

### getAttributes

public AttributeSet getAttributes()
Fetches the attributes to use when rendering. This is implemented to multiplex the attributes specified in the model with a StyleSheet.

Overrides:
  `getAttributes` in class `View`
Returns:
  the attributes to use when rendering

### getBreakWeight

public int getBreakWeight(int axis, float pos, float len)
Determines how attractive a break opportunity in this view is. This can be used for determining which view is the most attractive to call `breakView` on in the process of formatting. A view that represents text that has whitespace in it might be more attractive than a view that has no whitespace, for example. The higher the weight, the more attractive the break. A value equal to or lower than `BadBreakWeight` should not be considered for a break. A value greater than or equal to `ForcedBreakWeight` should be broken.

This is implemented to provide the default behavior of returning `BadBreakWeight` unless the length is greater than the length of the view in which case the entire view represents the fragment. Unless a view has been written to support breaking behavior, it is not attractive to try and break the view. An example of a view that does support breaking is `LabelView`. An example of a view that uses break weight is `ParagraphView`.

Overrides:
  `getBreakWeight` in class `GlyphView`
Parameters:
  `axis` - may be either View.X_AXIS or View.Y_AXIS
  `pos` - the potential location of the start of the broken view >= 0. This may be useful for calculating tab positions.
  `len` - specifies the relative length from pos where a potential break is desired >= 0.
Returns:
  the weight, which should be a value between ForcedBreakWeight and BadBreakWeight.
See Also:
  - `LabelView`
  - `ParagraphView`
  - `View.BadBreakWeight`
  - `View.GoodBreakWeight`
  - `View.ExcellentBreakWeight`
  - `View.ForcedBreakWeight`

### breakView

public View breakView(int axis, int offset, float pos, float len)
Tries to break this view on the given axis. Refer to `View.breakView(int, int, float, float)` for a complete description of this method.

Behavior of this method is unspecified in case `axis` is neither `View.X_AXIS` nor `View.Y_AXIS`, and in case `offset`, `pos`, or `len` is null.

Overrides:
  `breakView` in class `GlyphView`
Parameters:
  `axis` - may be either `View.X_AXIS` or `View.Y_AXIS`
  `offset` - the location in the document model that a broken fragment would occupy >= 0. This would be the starting offset of the fragment returned
  `pos` - the position along the axis that the broken view would occupy >= 0. This may be useful for things like tab calculations
  `len` - specifies the distance along the axis where a potential break is desired >= 0
Returns:
  the fragment of the view that represents the given span.
Since:
  1.5
See Also:
  - `View.breakView(int, int, float, float)`

### setPropertiesFromAttributes

protected void setPropertiesFromAttributes()
Set the cached properties from the attributes.

Overrides:
  `setPropertiesFromAttributes` in class `LabelView`

### getStyleSheet

protected StyleSheet getStyleSheet()
Convenient method to get the StyleSheet.

Returns:
  the StyleSheet