org.fife.ui.rtextarea
Class BufferedImageBackgroundPainterStrategy

java.lang.Object
  extended by org.fife.ui.rtextarea.ImageBackgroundPainterStrategy
      extended by org.fife.ui.rtextarea.BufferedImageBackgroundPainterStrategy
All Implemented Interfaces:
BackgroundPainterStrategy

public class BufferedImageBackgroundPainterStrategy
extends ImageBackgroundPainterStrategy

A strategy for painting the background of an RTextAreaBase as an image. The image is always stretched to completely fill the RTextAreaBase.

A java.awt.image.BufferedImage is used for rendering; theoretically, for performance you should use java.awt.image.VolatileImage; see org.fife.ui.RTextArea.VolatileImageBackgroundPainterStrategy for this.

You can set the scaling hint used when stretching/skewing the image to fit in the RTextAreaBase's background via the setScalingHint method, but keep in mind the more accurate the scaling hint, the less responsive your application will be when stretching the window (as that's the only time the image's size is recalculated).

Version:
0.1
Author:
Robert Futrell
See Also:
ImageBackgroundPainterStrategy, VolatileImageBackgroundPainterStrategy

Field Summary
 
Fields inherited from class org.fife.ui.rtextarea.ImageBackgroundPainterStrategy
tracker
 
Constructor Summary
BufferedImageBackgroundPainterStrategy(org.fife.ui.rtextarea.RTextAreaBase ta)
          Constructor.
 
Method Summary
protected  void paintImage(Graphics g, int x, int y)
          Paints the image at the specified location.
protected  void rescaleImage(int width, int height, int hint)
          Rescales the displayed image to be the specified size.
 
Methods inherited from class org.fife.ui.rtextarea.ImageBackgroundPainterStrategy
getMasterImage, getRTextAreaBase, getScalingHint, paint, setImage, setImage, setScalingHint
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BufferedImageBackgroundPainterStrategy

public BufferedImageBackgroundPainterStrategy(org.fife.ui.rtextarea.RTextAreaBase ta)
Constructor.

Parameters:
ta - The text area whose background we'll be painting.
Method Detail

paintImage

protected void paintImage(Graphics g,
                          int x,
                          int y)
Paints the image at the specified location. This method assumes scaling has already been done, and simply paints the background image "as-is."

Specified by:
paintImage in class ImageBackgroundPainterStrategy
Parameters:
g - The graphics context.
x - The x-coordinate at which to paint.
y - The y-coordinate at which to paint.

rescaleImage

protected void rescaleImage(int width,
                            int height,
                            int hint)
Rescales the displayed image to be the specified size.

Specified by:
rescaleImage in class ImageBackgroundPainterStrategy
Parameters:
width - The new width of the image.
height - The new height of the image.
hint - The scaling hint to use.