javax.swing.text.html
Class InlineView

java.lang.Object
  extended byjavax.swing.text.View
      extended byjavax.swing.text.GlyphView
          extended byjavax.swing.text.LabelView
              extended byjavax.swing.text.html.InlineView
All Implemented Interfaces:
Cloneable, SwingConstants, TabableView
Direct Known Subclasses:
BRView, ImageView.ImageLabelView

public class InlineView
extends LabelView

Displays the inline element styles based upon css attributes.

Author:
Timothy Prinzing

Nested Class Summary
 
Nested classes inherited from class javax.swing.text.GlyphView
GlyphView.GlyphPainter
 
Field Summary
private  AttributeSet attr
           
private  boolean nowrap
           
 
Fields inherited from class javax.swing.text.LabelView
 
Fields inherited from class javax.swing.text.GlyphView
 
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
InlineView(Element elem)
          Constructs a new view wrapped on an element.
 
Method Summary
 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.
(package private)  float getLongestWordSpan()
          Fetch the span of the longest word in the view.
protected  StyleSheet getStyleSheet()
           
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, setStrikeThrough, setSubscript, setSuperscript, setUnderline
 
Methods inherited from class javax.swing.text.GlyphView
breakView, checkPainter, clone, createFragment, getAlignment, getEndOffset, getGlyphPainter, getNextVisualPositionFrom, getPartialSpan, getPreferredSpan, getStartOffset, getTabbedSpan, getTabExpander, getText, insertUpdate, modelToView, paint, removeUpdate, setGlyphPainter, viewToModel
 
Methods inherited from class javax.swing.text.View
append, forwardUpdate, forwardUpdateToView, getChildAllocation, getContainer, getDocument, getElement, getGraphics, getMaximumSpan, getMinimumSpan, 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
 

Field Detail

nowrap

private boolean nowrap

attr

private AttributeSet attr
Constructor Detail

InlineView

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

Parameters:
elem - the element
Method Detail

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(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 class View

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

getLongestWordSpan

float getLongestWordSpan()
Fetch the span of the longest word in the view.


setPropertiesFromAttributes

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

Overrides:
setPropertiesFromAttributes in class LabelView

getStyleSheet

protected StyleSheet getStyleSheet()