public class

ImageView

extends View
java.lang.Object
   ↳ javax.swing.text.View
     ↳ javax.swing.text.html.ImageView

Class Overview

View of an Image, intended to support the HTML <IMG> tag. Supports scaling via the HEIGHT and WIDTH attributes of the tag. If the image is unable to be loaded any text specified via the ALT attribute will be rendered.

While this class has been part of swing for a while now, it is public as of 1.4.

See Also

Summary

[Expand]
Inherited Constants
From class javax.swing.text.View
From interface javax.swing.SwingConstants
Public Constructors
ImageView(Element elem)
Creates a new view that represents an IMG element.
Public Methods
void changedUpdate(DocumentEvent e, Shape a, ViewFactory f)
Invoked when the Elements attributes have changed.
float getAlignment(int axis)
Determines the desired alignment for this view along an axis.
String getAltText()
Returns the text to display if the image can't be loaded.
AttributeSet getAttributes()
Fetches the attributes to use when rendering.
Image getImage()
Returns the image to render.
URL getImageURL()
Return a URL for the image source, or null if it could not be determined.
Icon getLoadingImageIcon()
Returns the icon to use while in the process of loading the image.
boolean getLoadsSynchronously()
Returns true if the image should be loaded when first asked for.
Icon getNoImageIcon()
Returns the icon to use if the image couldn't be found.
float getPreferredSpan(int axis)
Determines the preferred span for this view along an axis.
String getToolTipText(float x, float y, Shape allocation)
For images the tooltip text comes from text specified with the ALT attribute.
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)
Paints the View.
void setLoadsSynchronously(boolean newValue)
Sets how the image is loaded.
void setParent(View parent)
Establishes the parent view for this view.
void setSize(float width, float height)
Sets the size of the view.
int viewToModel(float x, float y, Shape a, Bias[] bias)
Provides a mapping from the view coordinate space to the logical coordinate space of the model.
Protected Methods
StyleSheet getStyleSheet()
Convenience method to get the StyleSheet.
void setPropertiesFromAttributes()
Update any cached values that come from attributes.
[Expand]
Inherited Methods
From class javax.swing.text.View
From class java.lang.Object

Public Constructors

public ImageView (Element elem)

Creates a new view that represents an IMG element.

Parameters
elem the element to create a view for

Public Methods

public void changedUpdate (DocumentEvent e, Shape a, ViewFactory f)

Invoked when the Elements attributes have changed. Recreates the image.

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

public float getAlignment (int axis)

Determines the desired alignment for this view along an axis. This is implemented to give the alignment to the bottom of the icon along the y axis, and the default along the x axis.

Parameters
axis may be either X_AXIS or Y_AXIS
Returns
  • the desired alignment; this should be a value between 0.0 and 1.0 where 0 indicates alignment at the origin and 1.0 indicates alignment to the full span away from the origin; an alignment of 0.5 would be the center of the view

public String getAltText ()

Returns the text to display if the image can't be loaded. This is obtained from the Elements attribute set with the attribute name HTML.Attribute.ALT.

public AttributeSet getAttributes ()

Fetches the attributes to use when rendering. This is implemented to multiplex the attributes specified in the model with a StyleSheet.

public Image getImage ()

Returns the image to render.

public URL getImageURL ()

Return a URL for the image source, or null if it could not be determined.

public Icon getLoadingImageIcon ()

Returns the icon to use while in the process of loading the image.

public boolean getLoadsSynchronously ()

Returns true if the image should be loaded when first asked for.

public Icon getNoImageIcon ()

Returns the icon to use if the image couldn't be found.

public float getPreferredSpan (int axis)

Determines the preferred span for this view along an axis.

Parameters
axis may be either X_AXIS or Y_AXIS
Returns
  • the span the view would like to be rendered into; typically the view is told to render into the span that is returned, although there is no guarantee; the parent may choose to resize or break the view

public String getToolTipText (float x, float y, Shape allocation)

For images the tooltip text comes from text specified with the ALT attribute. This is overriden to return getAltText.

See Also

public 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.

Parameters
pos the position to convert
a the allocated region to render into
b the bias toward the previous character or the next character represented by the offset, in case the position is a boundary of two views; b will have one of these values:
  • Position.Bias.Forward
  • Position.Bias.Backward
Returns
  • the bounding box of the given position
Throws
BadLocationException if the given position does not represent a valid location in the associated document

public void paint (Graphics g, Shape a)

Paints the View.

Parameters
g the rendering surface to use
a the allocated region to render into

public void setLoadsSynchronously (boolean newValue)

Sets how the image is loaded. If newValue is true, the image we be loaded when first asked for, otherwise it will be loaded asynchronously. The default is to not load synchronously, that is to load the image asynchronously.

public void setParent (View parent)

Establishes the parent view for this view. Seize this moment to cache the AWT Container I'm in.

Parameters
parent the new parent, or null if the view is being removed from a parent

public void setSize (float width, float height)

Sets the size of the view. This should cause layout of the view if it has any layout duties.

Parameters
width the width >= 0
height the height >= 0

public int viewToModel (float x, float y, Shape a, Bias[] bias)

Provides a mapping from the view coordinate space to the logical coordinate space of the model.

Parameters
x the X coordinate
y the Y coordinate
a the allocated region to render into
Returns
  • the location within the model that best represents the given point of view

Protected Methods

protected StyleSheet getStyleSheet ()

Convenience method to get the StyleSheet.

protected void setPropertiesFromAttributes ()

Update any cached values that come from attributes.