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 Classes
Nested classes/interfaces inherited from class javax.swing.text.GlyphView
GlyphView.GlyphPainter
Fields
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
Constructors
Constructor and Description |
---|
InlineView(Element elem) Constructs a new view wrapped on an element. |
Methods
Modifier and Type | Method and 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() |
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 inherited from class javax.swing.text.LabelView
getBackground, getFont, getFontMetrics, getForeground, isStrikeThrough, isSubscript, isSuperscript, isUnderline, setBackground, setStrikeThrough, setSubscript, setSuperscript, setUnderline
Methods inherited from class javax.swing.text.GlyphView
checkPainter, clone, createFragment, getAlignment, getEndOffset, getGlyphPainter, getMinimumSpan, getNextVisualPositionFrom, getPartialSpan, getPreferredSpan, getStartOffset, getTabbedSpan, getTabExpander, getText, modelToView, paint, setGlyphPainter, viewToModel
Methods inherited from class javax.swing.text.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
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
Constructors
InlineView
public InlineView(Element elem)
Constructs a new view wrapped on an element.
- Parameters:
-
elem
- the element
Methods
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 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 - Since:
- 1.5
- See Also:
View.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.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 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 - Since:
- 1.5
- See Also:
View.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.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 classLabelView
- 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)
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 classView
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 classGlyphView
- 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 classGlyphView
- Parameters:
-
axis
- may be eitherView.X_AXIS
orView.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 classLabelView
getStyleSheet
protected StyleSheet getStyleSheet()
© 1993, 2020, 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.
https://docs.oracle.com/javase/8/docs/api/javax/swing/text/html/InlineView.html