javax.swing.text
Class IconView

java.lang.Object
  extended by javax.swing.text.View
      extended by javax.swing.text.IconView
All Implemented Interfaces:
SwingConstants

public class IconView
extends View

A View that can render an icon. This view is created by the StyledEditorKit's view factory for all elements that have name StyleConstants.IconElementName. This is usually created by inserting an icon into JTextPane using JTextPane.insertIcon(Icon) The icon is determined using the attribute StyleConstants.IconAttribute, which's value must be an Icon.


Field Summary
 
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
IconView(Element element)
          Creates a new IconView for the given Element.
 
Method Summary
 float getAlignment(int axis)
          Returns the alignment for this view.
 float getPreferredSpan(int axis)
          Returns the preferred span of the content managed by this View along the specified axis.
 Shape modelToView(int pos, Shape a, Position.Bias b)
          Maps a position in the document into the coordinate space of the View.
 void paint(Graphics g, Shape a)
          Renders the Element that is associated with this View.
 int viewToModel(float x, float y, Shape a, Position.Bias[] b)
          Maps coordinates from the View's space into a position in the document model.
 
Methods inherited from class javax.swing.text.View
append, breakView, changedUpdate, createFragment, dump, forwardUpdate, forwardUpdateToView, getAttributes, getBreakWeight, getChildAllocation, getContainer, getDocument, getElement, getEndOffset, getGraphics, getMaximumSpan, getMinimumSpan, getNextVisualPositionFrom, getParent, getResizeWeight, getStartOffset, getToolTipText, getView, getViewCount, getViewFactory, getViewIndex, getViewIndex, insert, insertUpdate, isVisible, modelToView, modelToView, preferenceChanged, remove, removeAll, removeUpdate, replace, setParent, setSize, updateChildren, updateLayout, viewToModel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IconView

public IconView(Element element)
Creates a new IconView for the given Element.

Parameters:
element - the element that is rendered by this IconView
Method Detail

paint

public void paint(Graphics g,
                  Shape a)
Renders the Element that is associated with this View.

Specified by:
paint in class View
Parameters:
g - the Graphics context to render to
a - the allocated region for the Element

getPreferredSpan

public float getPreferredSpan(int axis)
Returns the preferred span of the content managed by this View along the specified axis.

Specified by:
getPreferredSpan in class View
Parameters:
axis - the axis
Returns:
the preferred span of this View.

modelToView

public Shape modelToView(int pos,
                         Shape a,
                         Position.Bias b)
                  throws BadLocationException
Maps a position in the document into the coordinate space of the View. The output rectangle usually reflects the font height but has a width of zero.

Specified by:
modelToView in class View
Parameters:
pos - the position of the character in the model
a - the area that is occupied by the view
b - either Position.Bias.Forward or Position.Bias.Backward depending on the preferred direction bias. If null this defaults to Position.Bias.Forward
Returns:
a rectangle that gives the location of the document position inside the view coordinate space
Throws:
BadLocationException - if pos is invalid
IllegalArgumentException - if b is not one of the above listed valid values

viewToModel

public int viewToModel(float x,
                       float y,
                       Shape a,
                       Position.Bias[] b)
Maps coordinates from the View's space into a position in the document model.

Specified by:
viewToModel in class View
Parameters:
x - the x coordinate in the view space
y - the y coordinate in the view space
a - the allocation of this View
b - the bias to use
Returns:
the position in the document that corresponds to the screen coordinates x, y

getAlignment

public float getAlignment(int axis)
Returns the alignment for this view. This will be 1.0 for the Y_AXIS, and the super behaviour for the X_AXIS.

Overrides:
getAlignment in class View
Parameters:
axis - the axis for which to calculate the alignment
Returns:
the alignment