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
-
Field Summary
Fields declared in class javax.swing.text.View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
Fields declared in 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 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 javax.swing.text.LabelView
getBackground, getFont, getFontMetrics, getForeground, isStrikeThrough, isSubscript, isSuperscript, isUnderline, setBackground, setStrikeThrough, setSubscript, setSuperscript, setUnderline
Methods declared in class javax.swing.text.GlyphView
checkPainter, clone, createFragment, getAlignment, getEndOffset, getGlyphPainter, getMinimumSpan, getNextVisualPositionFrom, getPartialSpan, getPreferredSpan, getStartOffset, getTabbedSpan, getTabExpander, getText, modelToView, paint, setGlyphPainter, viewToModel
Methods declared in 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
-
Constructor Details
-
InlineView
Constructs a new view wrapped on an element.- Parameters:
elem
- the element
-
-
Method Details
-
insertUpdate
Gives notification that something was inserted into the document in a location that this view is responsible for. If either parameter isnull
, behavior of this method is implementation dependent.- Overrides:
insertUpdate
in classGlyphView
- Parameters:
e
- the change information from the associated documenta
- the current allocation of the viewf
- 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
Gives notification that something was removed from the document in a location that this view is responsible for. If either parameter isnull
, behavior of this method is implementation dependent.- Overrides:
removeUpdate
in classGlyphView
- Parameters:
e
- the change information from the associated documenta
- the current allocation of the viewf
- 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
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 documenta
- the current allocation of the viewf
- 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
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
- 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 callbreakView
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 thanBadBreakWeight
should not be considered for a break. A value greater than or equal toForcedBreakWeight
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 isLabelView
. An example of a view that uses break weight isParagraphView
.- Overrides:
getBreakWeight
in classGlyphView
- Parameters:
axis
- may be either View.X_AXIS or View.Y_AXISpos
- 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
Tries to break this view on the given axis. Refer toView.breakView(int, int, float, float)
for a complete description of this method.Behavior of this method is unspecified in case
axis
is neitherView.X_AXIS
norView.Y_AXIS
, and in caseoffset
,pos
, orlen
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 returnedpos
- the position along the axis that the broken view would occupy >= 0. This may be useful for things like tab calculationslen
- 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
Convenient method to get the StyleSheet.- Returns:
- the StyleSheet
-