gnu.java.awt.peer.gtk
Class GtkVolatileImage
- Transparency
contentsLost , createGraphics , flush , getCapabilities , getGraphics , getHeight , getSnapshot , getSource , getTransparency , getWidth , validate |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
contentsLost
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.
- contentsLost in interface VolatileImage
- true if the validate should be called, false otherwise
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.
- getHeight in interface Image
observer
- the image observer for this object
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.
- getProperty in interface Image
name
- the requested property nameobserver
- the image observer for this object
- the named property, if available
getSnapshot
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.
- getSnapshot in interface VolatileImage
- a BufferedImage representing this VolatileImage
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.
- getWidth in interface Image
observer
- the image observer for this object
validate
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.
- validate in interface VolatileImage
gc
- graphics configuration against which to validate or
NULL
- 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.
GtkVolatileImage.java -- a hardware-accelerated image buffer
Copyright (C) 2005 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.