gnu.java.awt.peer.qt

Class QtImage


public class QtImage
extends Image

QtImage - wraps a QImage

Field Summary

Fields inherited from class java.awt.Image

SCALE_AREA_AVERAGING, SCALE_DEFAULT, SCALE_FAST, SCALE_REPLICATE, SCALE_SMOOTH, UndefinedProperty, accelerationPriority

Constructor Summary

QtImage(byte[] data)
Constructs a QtImage from a byte array of an image file.
QtImage(int width, int height)
Constructs an empty QtImage.
QtImage(ImageProducer producer)
Creates the image from an ImageProducer.
QtImage(String filename)
Constructs a QtImage by loading a given file.
QtImage(URL url)
Creates the image from a URL.

Method Summary

int
checkImage(ImageObserver observer)
Returns the image status, used by QtToolkit
void
clear()
Clears the image to RGBA 0
void
copyArea(int x, int y, int width, int height, int dx, int dy)
void
dispose()
boolean
drawImage(QtGraphics g, QMatrix matrix, ImageObserver observer)
Draws an image with eventual scaling/transforming.
boolean
drawImage(QtGraphics g, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer)
Draws an image with eventual scaling/transforming.
boolean
drawImage(QtGraphics g, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)
Draws an image to the QtGraphics context, at (x,y) scaled to width and height, with optional compositing with a background color.
boolean
drawImage(QtGraphics g, int x, int y, Color bgcolor, ImageObserver observer)
Draws an image to the QtGraphics context, at (x,y) with optional compositing with a background color.
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.
void
flush()
If the image is loaded and comes from an ImageProducer, regenerate the image from there.
Graphics
getGraphics()
Creates a Graphics context for this image.
int
getHeight(ImageObserver observer)
Returns the height of the image, or -1 if it is unknown.
Object
getProperty(String name, ImageObserver observer)
This method requests a named property for an object.
Image
getScaledInstance(int width, int height, int hints)
Returns a scaled instance of this image.
ImageProducer
getSource()
Returns the source of this image.
int
getWidth(ImageObserver observer)
Returns the width of the image, or -1 if it is unknown.
void
setImage(int width, int height, int[] pixels, Hashtable<K,V> properties)
Callback from the image consumer.
String
toString()
Convert this Object to a human-readable String.

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

Constructor Details

QtImage

public QtImage(byte[] data)
Constructs a QtImage from a byte array of an image file.
Throws:
IllegalArgumentException - if the image could not be loaded.

QtImage

public QtImage(int width,
               int height)
Constructs an empty QtImage.

QtImage

public QtImage(ImageProducer producer)
Creates the image from an ImageProducer. May result in an error image.

QtImage

public QtImage(String filename)
Constructs a QtImage by loading a given file.
Throws:
IllegalArgumentException - if the image could not be loaded.

QtImage

public QtImage(URL url)
Creates the image from a URL. May result in an error image.

Method Details

checkImage

public int checkImage(ImageObserver observer)
Returns the image status, used by QtToolkit

clear

public void clear()
Clears the image to RGBA 0

copyArea

public void copyArea(int x,
                     int y,
                     int width,
                     int height,
                     int dx,
                     int dy)

dispose

public void dispose()

drawImage

public boolean drawImage(QtGraphics g,
                         QMatrix matrix,
                         ImageObserver observer)
Draws an image with eventual scaling/transforming.

drawImage

public boolean drawImage(QtGraphics g,
                         int dx1,
                         int dy1,
                         int dx2,
                         int dy2,
                         int sx1,
                         int sy1,
                         int sx2,
                         int sy2,
                         Color bgcolor,
                         ImageObserver observer)
Draws an image with eventual scaling/transforming.

drawImage

public boolean drawImage(QtGraphics g,
                         int x,
                         int y,
                         int width,
                         int height,
                         Color bgcolor,
                         ImageObserver observer)
Draws an image to the QtGraphics context, at (x,y) scaled to width and height, with optional compositing with a background color.

drawImage

public boolean drawImage(QtGraphics g,
                         int x,
                         int y,
                         Color bgcolor,
                         ImageObserver observer)
Draws an image to the QtGraphics context, at (x,y) with optional compositing with a background color.

finalize

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 the java.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 simply super.finalize().

finalize() will be called by a Thread 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 calls super.finalize().

The default implementation does nothing.

Overrides:
finalize in interface Object

flush

public void flush()
If the image is loaded and comes from an ImageProducer, regenerate the image from there. I have no idea if this is ever actually used. Since QtImage can't be instantiated directly, how is the user to know if it was created from an ImageProducer or not?
Overrides:
flush in interface Image

getGraphics

public Graphics getGraphics()
Creates a Graphics context for this image.
Overrides:
getGraphics in interface Image

getHeight

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.
Overrides:
getHeight in interface Image
Parameters:
observer - the image observer for this object
Returns:
the height in pixels

getProperty

public Object getProperty(String name,
                          ImageObserver observer)
This method requests a named property for an object. The value of the property is returned. The value UndefinedProperty is returned if there is no property with the specified name. The value null 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 name
observer - the image observer for this object
Returns:
the named property, if available

getScaledInstance

public Image getScaledInstance(int width,
                               int height,
                               int hints)
Returns a scaled instance of this image.
Overrides:
getScaledInstance in interface Image

getSource

public ImageProducer getSource()
Returns the source of this image.
Overrides:
getSource in interface Image

getWidth

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.
Overrides:
getWidth in interface Image
Parameters:
observer - the image observer for this object
Returns:
the width in pixels

setImage

public void setImage(int width,
                     int height,
                     int[] pixels,
                     Hashtable<K,V> properties)
Callback from the image consumer.

toString

public String toString()
Convert this Object to a human-readable String. There are no limits placed on how long this String should be or what it should contain. We suggest you make it as intuitive as possible to be able to place it into System.out.println() and such.

It is typical, but not required, to ensure that this method never completes abruptly with a RuntimeException.

This method will be called when performing string concatenation with this object. If the result is null, string concatenation will instead use "null".

The default implementation returns getClass().getName() + "@" + Integer.toHexString(hashCode()).

Overrides:
toString in interface Object
Returns:
the String representing this Object, which may be null

QtImage.java -- Copyright (C) 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.