Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
java.awt.Image
java.awt.image.VolatileImage
gnu.java.awt.peer.gtk.GtkVolatileImage
public class GtkVolatileImage
extends VolatileImage
Field Summary |
Fields inherited from class java.awt.image.VolatileImage | |
IMAGE_INCOMPATIBLE , IMAGE_OK , IMAGE_RESTORED , transparency |
Fields inherited from class java.awt.Image | |
SCALE_AREA_AVERAGING , SCALE_DEFAULT , SCALE_FAST , SCALE_REPLICATE , SCALE_SMOOTH , UndefinedProperty , accelerationPriority |
Fields inherited from interface java.awt.Transparency | |
BITMASK , OPAQUE , TRANSLUCENT |
Constructor Summary | |
| |
| |
|
Method Summary | |
boolean |
|
void |
|
protected static SampleModel |
|
Graphics2D |
|
void |
|
void |
|
void |
|
ImageCapabilities |
|
Graphics |
|
int |
|
int |
|
int[] |
|
Object |
|
BufferedImage |
|
int |
|
int |
|
int |
|
Methods inherited from class java.awt.image.VolatileImage | |
contentsLost , createGraphics , flush , getCapabilities , getGraphics , getHeight , getSnapshot , getSource , getTransparency , getWidth , validate |
Methods inherited from class java.awt.Image | |
flush , getAccelerationPriority , getGraphics , getHeight , getProperty , getScaledInstance , getSource , getWidth , setAccelerationPriority |
Methods inherited from class java.lang.Object | |
clone , equals , extends Object> getClass , finalize , hashCode , notify , notifyAll , toString , wait , wait , wait |
public GtkVolatileImage(GtkComponentPeer component, int width, int height, ImageCapabilities caps)
public boolean contentsLost()
Returns true if the contents of the image buffer have been damaged or if the image buffer's resources have been reclaimed by the graphics system. You should call this method after a series of rendering operations to or from the image, to see if the image buffer needs to be revalidated or the image re-rendered.
- Overrides:
- contentsLost in interface VolatileImage
- Returns:
- true if the validate should be called, false otherwise
protected static SampleModel createGdkSampleModel(int w, int h)
Creates a SampleModel that matches GDK's native format
public Graphics2D createGraphics()
Returns a Graphics2D object that can be used to draw onto this image.
- Overrides:
- createGraphics in interface VolatileImage
- Returns:
- a Graphics2D object that can be used to draw onto this image
public void finalize()
Called on an object by the Virtual Machine at most once, at some point after the Object is determined unreachable but before it is destroyed. You would think that this means it eventually is called on every Object, but this is not necessarily the case. If execution terminates abnormally, garbage collection does not always happen. Thus you cannot rely on this method to always work. For finer control over garbage collection, use references from thejava.lang.ref
package. Virtual Machines are free to not call this method if they can determine that it does nothing important; for example, if your class extends Object and overrides finalize to do simplysuper.finalize()
. finalize() will be called by aThread
that has no locks on any Objects, and may be called concurrently. There are no guarantees on the order in which multiple objects are finalized. This means that finalize() is usually unsuited for performing actions that must be thread-safe, and that your implementation must be use defensive programming if it is to always work. If an Exception is thrown from finalize() during garbage collection, it will be patently ignored and the Object will still be destroyed. It is allowed, although not typical, for user code to call finalize() directly. User invocation does not affect whether automatic invocation will occur. It is also permitted, although not recommended, for a finalize() method to "revive" an object by making it reachable from normal code again. Unlike constructors, finalize() does not get called for an object's superclass unless the implementation specifically callssuper.finalize()
. The default implementation does nothing.
- See Also:
System.gc()
,System.runFinalizersOnExit(boolean)
,java.lang.ref
public ImageCapabilities getCapabilities()
Returns the capabilities of this image buffer.
- Overrides:
- getCapabilities in interface VolatileImage
- Returns:
- the capabilities of this image buffer
public Graphics getGraphics()
Returns a Graphics2D object that can be used to draw onto this image. This method is present for backwards-compatibility. It simply returns the result of createGraphics.
- Overrides:
- getGraphics in interface VolatileImage
- Returns:
- a Graphics2D object that can be used to draw onto this image
public int getHeight()
Returns the height of this image buffer.
- Overrides:
- getHeight in interface VolatileImage
- Returns:
- the height of this VolatileImage
public int getHeight(ImageObserver observer)
Returns the height of the image, or -1 if it is unknown. If the image height is unknown, the observer object will be notified when the value is known.
- Parameters:
observer
- the image observer for this object
- Returns:
- the height in pixels
- See Also:
Image.getWidth(ImageObserver)
public int[] getPixels()
Gets the pixels in the current image from GDK. Note that pixels are in 32-bit RGBA, non-premultiplied, which is different from Cairo's premultiplied ARGB, which is different from Java's standard non-premultiplied ARGB. Caution is advised when using this method, to ensure that the data format remains consistent with what you expect.
- Returns:
- the current pixels, as reported by GDK.
public Object getProperty(String name, ImageObserver observer)
This method requests a named property for an object. The value of the property is returned. The valueUndefinedProperty
is returned if there is no property with the specified name. The valuenull
is returned if the properties for the object are not yet known. In this case, the specified image observer is notified when the properties are known.
- Overrides:
- getProperty in interface Image
- Parameters:
name
- the requested property nameobserver
- the image observer for this object
- Returns:
- the named property, if available
- See Also:
Image.UndefinedProperty
public BufferedImage getSnapshot()
Returns an image representing the current state of the volatile image buffer. The returned image is static meaning that it is not updated after being created. It is a snapshot of the volatile image buffer at the time getSnapshot is called. This method, which reads pixels from the volatile image buffer, may be less-performant than methods that write pixels since VolatileImages are typically optimized for writing.
- Overrides:
- getSnapshot in interface VolatileImage
- Returns:
- a BufferedImage representing this VolatileImage
public int getWidth()
Returns the width of this image buffer.
- Overrides:
- getWidth in interface VolatileImage
- Returns:
- the width of this VolatileImage
public int getWidth(ImageObserver observer)
Returns the width of the image, or -1 if it is unknown. If the image width is unknown, the observer object will be notified when the value is known.
- Parameters:
observer
- the image observer for this object
- Returns:
- the width in pixels
- See Also:
Image.getHeight(ImageObserver)
public int validate(GraphicsConfiguration gc)
Validates and restores this image. If the image buffer has become unavailable for further use since the last call to validate, validate will allocate a new image buffer. The image is also "validated" against the GraphicsConfiguration parameter. "Validating" the image means checking that the capabilities it requires of the output device are indeed supported by the given output device. If the image's characteristics, which can be highly output device-specific, are not supported by the graphics configuration, then IMAGE_INCOMPATIBLE will be returned. This can happen, for example, if this image was created on one output device, then validated against a different output device with different capabilities. Calling validate with a NULL gc argument causes validate to skip the validation test.
- Overrides:
- validate in interface VolatileImage
- Parameters:
gc
- graphics configuration against which to validate or NULL
- Returns:
- a code indicating the result of validation. One of:
IMAGE_OK
if the image did not need to be validated and didn't need to be restoredIMAGE_RESTORED
if the image may need to be re-rendered.IMAGE_INCOMPATIBLE
if this image's requirements are not fulfilled by the graphics configuration parameter. This implies that you need to create a new VolatileImage for the different GraphicsConfiguration or Component. This return value implies nothing about whether the image is valid or needs to be re-rendered.