gnu.java.awt.peer.gtk

Class ComponentGraphics

Known Direct Subclasses:
VolatileImageGraphics

public class ComponentGraphics
extends CairoGraphics2D

ComponentGraphics - context for drawing directly to a component, as this is an X drawable, it requires that we use GTK locks. This context draws directly to the drawable and requires xrender.

Field Summary

protected long
cairo_t

Fields inherited from class gnu.java.awt.peer.gtk.CairoGraphics2D

ALPHA_INTERPOLATION_DEFAULT, ALPHA_INTERPOLATION_QUALITY, ALPHA_INTERPOLATION_SPEED, INTERPOLATION_BICUBIC, INTERPOLATION_BILINEAR, INTERPOLATION_NEAREST, shiftDrawCalls

Method Summary

void
copyAreaImpl(int x, int y, int width, int height, int dx, int dy)
Graphics
create()
These are declared abstract as there may be context-specific issues.
void
draw(Shape s)
Overloaded methods that do actual drawing need to enter the gdk threads and also do certain things before and after.
void
drawGlyphVector(GlyphVector gv, float x, float y)
boolean
drawImage(Image img, int x, int y, int width, int height, ImageObserver observer)
boolean
drawImage(Image img, int x, int y, ImageObserver observer)
protected boolean
drawImage(Image img, AffineTransform xform, Color bgcolor, ImageObserver obs)
void
drawRenderedImage(RenderedImage image, AffineTransform xform)
void
fill(Shape s)
static Graphics2D
getComponentGraphics(GtkComponentPeer component)
Returns a Graphics2D object for a component, either an instance of this class (if xrender is supported), or a context which copies.
GraphicsConfiguration
getDeviceConfiguration()
protected ColorModel
getNativeCM()
Returns the Colour Model describing the native, raw image data for this specific peer.
protected Rectangle2D
getRealBounds()
Find the bounds of this graphics context, in device space.
static GtkImage
grab(GtkComponentPeer component)
Not really related (moveme?).
static boolean
hasXRender()
Query if the system has the XRender extension.
protected long
initFromVolatile(long pixmapPtr)
Creates a cairo_t for a volatile image
protected @Override
long init(long pointer)
protected @Override
void cairoArc(long pointer, double x, double y, double radius, double angle1, double angle2)
protected @Override
void cairoClip(long pointer)
protected @Override
void cairoClosePath(long pointer)
protected @Override
void cairoCurveTo(long pointer, double x1, double y1, double x2, double y2, double x3, double y3)
protected @Override
void cairoFill(long pointer, double alpha)
protected @Override
void cairoLineTo(long pointer, double x, double y)
protected @Override
void cairoMoveTo(long pointer, double x, double y)
protected @Override
void cairoNewPath(long pointer)
protected @Override
void cairoRectangle(long pointer, double x, double y, double width, double height)
protected @Override
void cairoResetClip(long pointer)
protected @Override
void cairoRestore(long pointer)
protected @Override
void cairoSave(long pointer)
protected @Override
void cairoScale(long pointer, double x, double y)
protected @Override
void cairoSetAntialias(long pointer, boolean aa)
protected @Override
void cairoSetDash(long pointer, double[] dashes, int ndash, double offset)
protected @Override
void cairoSetFillRule(long pointer, int cairoFillRule)
protected @Override
void cairoSetLine(long pointer, double width, int cap, int join, double miterLimit)
protected @Override
void cairoSetMatrix(long pointer, double[] m)
protected @Override
void cairoSetOperator(long pointer, int cairoOperator)
protected @Override
void cairoSetRGBAColor(long pointer, double red, double green, double blue, double alpha)
protected @Override
void cairoStroke(long pointer)
protected @Override
void drawCairoSurface(CairoSurface surface, AffineTransform tx, double alpha, int interpolation)
protected @Override
void drawPixels(long pointer, int[] pixels, int w, int h, int stride, double[] i2u, double alpha, int interpolation)
protected @Override
void setGradient(long pointer, double x1, double y1, double x2, double y2, int r1, int g1, int b1, int a1, int r2, int g2, int b2, int a2, boolean cyclic)
protected @Override
void setPaintPixels(long pointer, int[] pixels, int w, int h, int stride, boolean repeat, int x, int y)

Methods inherited from class gnu.java.awt.peer.gtk.CairoGraphics2D

addRenderingHints, cairoArc, cairoClip, cairoClosePath, cairoCurveTo, cairoDrawGlyphVector, cairoFill, cairoLineTo, cairoMoveTo, cairoNewPath, cairoRectangle, cairoResetClip, cairoRestore, cairoSave, cairoScale, cairoSetAntialias, cairoSetDash, cairoSetFillRule, cairoSetFont, cairoSetLine, cairoSetMatrix, cairoSetOperator, cairoSetRGBAColor, cairoStroke, clearRect, clip, clipRect, copy, copyArea, copyAreaImpl, create, dispose, disposeNative, draw, draw3DRect, drawArc, drawCairoSurface, drawGlyphVector, drawImage, drawImage, drawImage, drawImage, drawImage, drawImage, drawImage, drawImage, drawImage, drawLine, drawOval, drawPixels, drawPolygon, drawPolyline, drawRect, drawRenderableImage, drawRenderedImage, drawRoundRect, drawString, drawString, drawString, drawString, fill, fillArc, fillOval, fillPolygon, fillRect, fillRoundRect, finalize, findSimpleIntegerArray, findStrokedBounds, getBackground, getBufferCM, getClip, getClipBounds, getClipInDevSpace, getColor, getComposite, getDeviceConfiguration, getFont, getFontMetrics, getFontMetrics, getFontRenderContext, getNativeCM, getPaint, getRealBounds, getRenderingHint, getRenderingHints, getStroke, getTransform, hit, init, rotate, rotate, scale, setBackground, setClip, setClip, setColor, setComposite, setCustomPaint, setFont, setGradient, setPaint, setPaintMode, setPaintPixels, setRenderingHint, setRenderingHints, setStroke, setTransform, setXORMode, setup, shear, toString, transform, translate, translate

Methods inherited from class java.awt.Graphics2D

addRenderingHints, clip, draw, draw3DRect, drawGlyphVector, drawImage, drawImage, drawRenderableImage, drawRenderedImage, drawString, drawString, drawString, drawString, fill, fill3DRect, getBackground, getComposite, getDeviceConfiguration, getFontRenderContext, getPaint, getRenderingHint, getRenderingHints, getStroke, getTransform, hit, rotate, rotate, scale, setBackground, setComposite, setPaint, setRenderingHint, setRenderingHints, setStroke, setTransform, shear, transform, translate, translate

Methods inherited from class java.awt.Graphics

clearRect, clipRect, copyArea, create, create, dispose, draw3DRect, drawArc, drawBytes, drawChars, drawImage, drawImage, drawImage, drawImage, drawImage, drawImage, drawLine, drawOval, drawPolygon, drawPolygon, drawPolyline, drawRect, drawRoundRect, drawString, drawString, fill3DRect, fillArc, fillOval, fillPolygon, fillPolygon, fillRect, fillRoundRect, finalize, getClip, getClipBounds, getClipBounds, getClipRect, getColor, getFont, getFontMetrics, getFontMetrics, hitClip, setClip, setClip, setColor, setFont, setPaintMode, setXORMode, toString, translate

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

cairo_t

protected long cairo_t

Method Details

copyAreaImpl

public void copyAreaImpl(int x,
                         int y,
                         int width,
                         int height,
                         int dx,
                         int dy)
Overrides:
copyAreaImpl in interface CairoGraphics2D

create

public Graphics create()
These are declared abstract as there may be context-specific issues.
Overrides:
create in interface CairoGraphics2D

draw

public void draw(Shape s)
Overloaded methods that do actual drawing need to enter the gdk threads and also do certain things before and after.
Overrides:
draw in interface CairoGraphics2D

drawGlyphVector

public void drawGlyphVector(GlyphVector gv,
                            float x,
                            float y)
Overrides:
drawGlyphVector in interface CairoGraphics2D

drawImage

public boolean drawImage(Image img,
                         int x,
                         int y,
                         int width,
                         int height,
                         ImageObserver observer)
Overrides:
drawImage in interface CairoGraphics2D

drawImage

public boolean drawImage(Image img,
                         int x,
                         int y,
                         ImageObserver observer)
Overrides:
drawImage in interface CairoGraphics2D

drawImage

protected boolean drawImage(Image img,
                            AffineTransform xform,
                            Color bgcolor,
                            ImageObserver obs)
Overrides:
drawImage in interface CairoGraphics2D

drawRenderedImage

public void drawRenderedImage(RenderedImage image,
                              AffineTransform xform)
Overrides:
drawRenderedImage in interface CairoGraphics2D

fill

public void fill(Shape s)
Overrides:
fill in interface CairoGraphics2D

getComponentGraphics

public static Graphics2D getComponentGraphics(GtkComponentPeer component)
Returns a Graphics2D object for a component, either an instance of this class (if xrender is supported), or a context which copies.

getDeviceConfiguration

public GraphicsConfiguration getDeviceConfiguration()
Overrides:
getDeviceConfiguration in interface CairoGraphics2D

getNativeCM

protected ColorModel getNativeCM()
Returns the Colour Model describing the native, raw image data for this specific peer.
Overrides:
getNativeCM in interface CairoGraphics2D
Returns:
ColorModel the ColorModel of native data in this peer

getRealBounds

protected Rectangle2D getRealBounds()
Find the bounds of this graphics context, in device space.
Overrides:
getRealBounds in interface CairoGraphics2D
Returns:
the bounds in device-space

grab

public static GtkImage grab(GtkComponentPeer component)
Not really related (moveme?). Utility method used by GtkComponent.

hasXRender

public static boolean hasXRender()
Query if the system has the XRender extension.

initFromVolatile

protected long initFromVolatile(long pixmapPtr)
Creates a cairo_t for a volatile image

long init

protected @Override long init(long pointer)

void cairoArc

protected @Override void cairoArc(long pointer,
                                  double x,
                                  double y,
                                  double radius,
                                  double angle1,
                                  double angle2)

void cairoClip

protected @Override void cairoClip(long pointer)

void cairoClosePath

protected @Override void cairoClosePath(long pointer)

void cairoCurveTo

protected @Override void cairoCurveTo(long pointer,
                                      double x1,
                                      double y1,
                                      double x2,
                                      double y2,
                                      double x3,
                                      double y3)

void cairoFill

protected @Override void cairoFill(long pointer,
                                   double alpha)

void cairoLineTo

protected @Override void cairoLineTo(long pointer,
                                     double x,
                                     double y)

void cairoMoveTo

protected @Override void cairoMoveTo(long pointer,
                                     double x,
                                     double y)

void cairoNewPath

protected @Override void cairoNewPath(long pointer)

void cairoRectangle

protected @Override void cairoRectangle(long pointer,
                                        double x,
                                        double y,
                                        double width,
                                        double height)

void cairoResetClip

protected @Override void cairoResetClip(long pointer)

void cairoRestore

protected @Override void cairoRestore(long pointer)

void cairoSave

protected @Override void cairoSave(long pointer)

void cairoScale

protected @Override void cairoScale(long pointer,
                                    double x,
                                    double y)

void cairoSetAntialias

protected @Override void cairoSetAntialias(long pointer,
                                           boolean aa)

void cairoSetDash

protected @Override void cairoSetDash(long pointer,
                                      double[] dashes,
                                      int ndash,
                                      double offset)

void cairoSetFillRule

protected @Override void cairoSetFillRule(long pointer,
                                          int cairoFillRule)

void cairoSetLine

protected @Override void cairoSetLine(long pointer,
                                      double width,
                                      int cap,
                                      int join,
                                      double miterLimit)

void cairoSetMatrix

protected @Override void cairoSetMatrix(long pointer,
                                        double[] m)

void cairoSetOperator

protected @Override void cairoSetOperator(long pointer,
                                          int cairoOperator)

void cairoSetRGBAColor

protected @Override void cairoSetRGBAColor(long pointer,
                                           double red,
                                           double green,
                                           double blue,
                                           double alpha)

void cairoStroke

protected @Override void cairoStroke(long pointer)

void drawCairoSurface

protected @Override void drawCairoSurface(CairoSurface surface,
                                          AffineTransform tx,
                                          double alpha,
                                          int interpolation)

void drawPixels

protected @Override void drawPixels(long pointer,
                                    int[] pixels,
                                    int w,
                                    int h,
                                    int stride,
                                    double[] i2u,
                                    double alpha,
                                    int interpolation)

void setGradient

protected @Override void setGradient(long pointer,
                                     double x1,
                                     double y1,
                                     double x2,
                                     double y2,
                                     int r1,
                                     int g1,
                                     int b1,
                                     int a1,
                                     int r2,
                                     int g2,
                                     int b2,
                                     int a2,
                                     boolean cyclic)

void setPaintPixels

protected @Override void setPaintPixels(long pointer,
                                        int[] pixels,
                                        int w,
                                        int h,
                                        int stride,
                                        boolean repeat,
                                        int x,
                                        int y)

ComponentGraphics.java -- Copyright (C) 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.