commit-classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[commit-cp] classpath ChangeLog include/gnu_java_awt_peer_g...


From: Roman Kennke
Subject: [commit-cp] classpath ChangeLog include/gnu_java_awt_peer_g...
Date: Sat, 10 Jun 2006 10:33:19 +0000

CVSROOT:        /cvsroot/classpath
Module name:    classpath
Changes by:     Roman Kennke <rabbit78> 06/06/10 10:33:18

Modified files:
        .              : ChangeLog 
        include        : gnu_java_awt_peer_gtk_CairoGraphics2D.h 
                         gnu_java_awt_peer_gtk_CairoSurface.h 
                         gnu_java_awt_peer_gtk_ComponentGraphics.h 
                         gnu_java_awt_peer_gtk_GtkVolatileImage.h 
        native/jni/gtk-peer: cairographics2d.h 
                             gnu_java_awt_peer_gtk_CairoGraphics2D.c 
                             gnu_java_awt_peer_gtk_CairoSurface.c 
                             gnu_java_awt_peer_gtk_ComponentGraphics.c 
                             gnu_java_awt_peer_gtk_GtkVolatileImage.c 
        gnu/java/awt/peer/gtk: CairoGraphics2D.java CairoSurface.java 
                               CairoSurfaceGraphics.java 
                               ComponentGraphics.java 
                               GtkVolatileImage.java 

Log message:
        2006-06-10  Roman Kennke  <address@hidden>
        
                * gnu/java/awt/peer/gtk/CairoGraphics2D.java
                * gnu/java/awt/peer/gtk/CairoSurface.java
                * gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java
                * gnu/java/awt/peer/gtk/ComponentGraphics.java
                * gnu/java/awt/peer/gtk/GtkVolatileImage.java
                * native/jni/gtk-peer/cairographics2d.h
                * native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c
                * native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoSurface.c
                * native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
                * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkVolatileImage.c:
                Changed method signatures and calls to pass native pointers 
directly
                into the JNI code, in order to avoid costly lookups on each
                JNI call.
                * include/gnu_java_awt_peer_gtk_CairoGraphics2D.h,
                * include/gnu_java_awt_peer_gtk_CairoSurface.h,
                * include/gnu_java_awt_peer_gtk_ComponentGraphics.h,
                * include/gnu_java_awt_peer_gtk_GtkVolatileImage.h:
                Regenerated

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpath&r1=1.7756&r2=1.7757
http://cvs.savannah.gnu.org/viewcvs/classpath/include/gnu_java_awt_peer_gtk_CairoGraphics2D.h?cvsroot=classpath&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/classpath/include/gnu_java_awt_peer_gtk_CairoSurface.h?cvsroot=classpath&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/classpath/include/gnu_java_awt_peer_gtk_ComponentGraphics.h?cvsroot=classpath&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/classpath/include/gnu_java_awt_peer_gtk_GtkVolatileImage.h?cvsroot=classpath&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/gtk-peer/cairographics2d.h?cvsroot=classpath&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c?cvsroot=classpath&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoSurface.c?cvsroot=classpath&r1=1.16&r2=1.17
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c?cvsroot=classpath&r1=1.15&r2=1.16
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkVolatileImage.c?cvsroot=classpath&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/CairoGraphics2D.java?cvsroot=classpath&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/CairoSurface.java?cvsroot=classpath&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java?cvsroot=classpath&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/ComponentGraphics.java?cvsroot=classpath&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/GtkVolatileImage.java?cvsroot=classpath&r1=1.6&r2=1.7

Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/classpath/classpath/ChangeLog,v
retrieving revision 1.7756
retrieving revision 1.7757
diff -u -b -r1.7756 -r1.7757
--- ChangeLog   10 Jun 2006 09:18:25 -0000      1.7756
+++ ChangeLog   10 Jun 2006 10:33:14 -0000      1.7757
@@ -1,4 +1,25 @@
-2006-06-09  Audrius Meskauskas  <address@hidden>
+2006-06-10  Roman Kennke  <address@hidden>
+
+       * gnu/java/awt/peer/gtk/CairoGraphics2D.java
+       * gnu/java/awt/peer/gtk/CairoSurface.java
+       * gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java
+       * gnu/java/awt/peer/gtk/ComponentGraphics.java
+       * gnu/java/awt/peer/gtk/GtkVolatileImage.java
+       * native/jni/gtk-peer/cairographics2d.h
+       * native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c
+       * native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoSurface.c
+       * native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
+       * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkVolatileImage.c:
+       Changed method signatures and calls to pass native pointers directly
+       into the JNI code, in order to avoid costly lookups on each
+       JNI call.
+       * include/gnu_java_awt_peer_gtk_CairoGraphics2D.h,
+       * include/gnu_java_awt_peer_gtk_CairoSurface.h,
+       * include/gnu_java_awt_peer_gtk_ComponentGraphics.h,
+       * include/gnu_java_awt_peer_gtk_GtkVolatileImage.h:
+       Regenerated
+
+2006-06-10  Audrius Meskauskas  <address@hidden>
 
        PR 27973
        * javax/swing/text/DefaultStyledDocument.java 

Index: include/gnu_java_awt_peer_gtk_CairoGraphics2D.h
===================================================================
RCS file: 
/cvsroot/classpath/classpath/include/gnu_java_awt_peer_gtk_CairoGraphics2D.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- include/gnu_java_awt_peer_gtk_CairoGraphics2D.h     7 Jun 2006 09:40:54 
-0000       1.3
+++ include/gnu_java_awt_peer_gtk_CairoGraphics2D.h     10 Jun 2006 10:33:15 
-0000      1.4
@@ -1,45 +1,229 @@
 /* DO NOT EDIT THIS FILE - it is machine generated */
-
-#ifndef __gnu_java_awt_peer_gtk_CairoGraphics2D__
-#define __gnu_java_awt_peer_gtk_CairoGraphics2D__
-
 #include <jni.h>
+/* Header for class gnu_java_awt_peer_gtk_CairoGraphics2D */
 
+#ifndef _Included_gnu_java_awt_peer_gtk_CairoGraphics2D
+#define _Included_gnu_java_awt_peer_gtk_CairoGraphics2D
 #ifdef __cplusplus
-extern "C"
-{
+extern "C" {
 #endif
-
-JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_init 
(JNIEnv *env, jobject, jlong);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_disposeNative (JNIEnv *env, jobject);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_drawPixels 
(JNIEnv *env, jobject, jintArray, jint, jint, jint, jdoubleArray);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setGradient 
(JNIEnv *env, jobject, jdouble, jdouble, jdouble, jdouble, jint, jint, jint, 
jint, jint, jint, jint, jint, jboolean);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setTexturePixels (JNIEnv *env, 
jobject, jintArray, jint, jint, jint);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetMatrix (JNIEnv *env, 
jobject, jdoubleArray);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetOperator (JNIEnv *env, 
jobject, jint);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetRGBAColor (JNIEnv *env, 
jobject, jdouble, jdouble, jdouble, jdouble);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetFillRule (JNIEnv *env, 
jobject, jint);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetLine 
(JNIEnv *env, jobject, jdouble, jint, jint, jdouble);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetDash 
(JNIEnv *env, jobject, jdoubleArray, jint, jdouble);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawGlyphVector (JNIEnv *env, 
jobject, jobject, jfloat, jfloat, jint, jintArray, jfloatArray);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelCurveTo (JNIEnv *env, 
jobject, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRectangle (JNIEnv *env, 
jobject, jdouble, jdouble, jdouble, jdouble);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoNewPath 
(JNIEnv *env, jobject);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoClosePath (JNIEnv *env, 
jobject);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoMoveTo 
(JNIEnv *env, jobject, jdouble, jdouble);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelMoveTo (JNIEnv *env, 
jobject, jdouble, jdouble);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoLineTo 
(JNIEnv *env, jobject, jdouble, jdouble);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelLineTo (JNIEnv *env, 
jobject, jdouble, jdouble);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoCurveTo 
(JNIEnv *env, jobject, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoStroke 
(JNIEnv *env, jobject);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoFill 
(JNIEnv *env, jobject);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoClip 
(JNIEnv *env, jobject);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoPreserveClip (JNIEnv *env, 
jobject);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoResetClip (JNIEnv *env, 
jobject);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSurfaceSetFilter (JNIEnv *env, 
jobject, jint);
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    init
+ * Signature: (J)J
+ */
+JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_init
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    disposeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_disposeNative
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    drawPixels
+ * Signature: (J[IIII[D)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_drawPixels
+  (JNIEnv *, jobject, jlong, jintArray, jint, jint, jint, jdoubleArray);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    setGradient
+ * Signature: (JDDDDIIIIIIIIZ)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setGradient
+  (JNIEnv *, jobject, jlong, jdouble, jdouble, jdouble, jdouble, jint, jint, 
jint, jint, jint, jint, jint, jint, jboolean);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    setTexturePixels
+ * Signature: (J[IIII)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setTexturePixels
+  (JNIEnv *, jobject, jlong, jintArray, jint, jint, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoSetMatrix
+ * Signature: (J[D)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetMatrix
+  (JNIEnv *, jobject, jlong, jdoubleArray);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoSetOperator
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetOperator
+  (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoSetRGBAColor
+ * Signature: (JDDDD)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetRGBAColor
+  (JNIEnv *, jobject, jlong, jdouble, jdouble, jdouble, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoSetFillRule
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetFillRule
+  (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoSetLine
+ * Signature: (JDIID)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetLine
+  (JNIEnv *, jobject, jlong, jdouble, jint, jint, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoSetDash
+ * Signature: (J[DID)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetDash
+  (JNIEnv *, jobject, jlong, jdoubleArray, jint, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoDrawGlyphVector
+ * Signature: (JLgnu/java/awt/peer/gtk/GdkFontPeer;FFI[I[F)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawGlyphVector
+  (JNIEnv *, jobject, jlong, jobject, jfloat, jfloat, jint, jintArray, 
jfloatArray);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoRelCurveTo
+ * Signature: (JDDDDDD)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelCurveTo
+  (JNIEnv *, jobject, jlong, jdouble, jdouble, jdouble, jdouble, jdouble, 
jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoRectangle
+ * Signature: (JDDDD)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRectangle
+  (JNIEnv *, jobject, jlong, jdouble, jdouble, jdouble, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoNewPath
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoNewPath
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoClosePath
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoClosePath
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoMoveTo
+ * Signature: (JDD)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoMoveTo
+  (JNIEnv *, jobject, jlong, jdouble, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoRelMoveTo
+ * Signature: (JDD)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelMoveTo
+  (JNIEnv *, jobject, jlong, jdouble, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoLineTo
+ * Signature: (JDD)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoLineTo
+  (JNIEnv *, jobject, jlong, jdouble, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoRelLineTo
+ * Signature: (JDD)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelLineTo
+  (JNIEnv *, jobject, jlong, jdouble, jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoCurveTo
+ * Signature: (JDDDDDD)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoCurveTo
+  (JNIEnv *, jobject, jlong, jdouble, jdouble, jdouble, jdouble, jdouble, 
jdouble);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoStroke
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoStroke
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoFill
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoFill
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoClip
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoClip
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoPreserveClip
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoPreserveClip
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoResetClip
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoResetClip
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoGraphics2D
+ * Method:    cairoSurfaceSetFilter
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSurfaceSetFilter
+  (JNIEnv *, jobject, jlong, jint);
 
 #ifdef __cplusplus
 }
 #endif
-
-#endif /* __gnu_java_awt_peer_gtk_CairoGraphics2D__ */
+#endif

Index: include/gnu_java_awt_peer_gtk_CairoSurface.h
===================================================================
RCS file: 
/cvsroot/classpath/classpath/include/gnu_java_awt_peer_gtk_CairoSurface.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- include/gnu_java_awt_peer_gtk_CairoSurface.h        7 Jun 2006 09:40:54 
-0000       1.3
+++ include/gnu_java_awt_peer_gtk_CairoSurface.h        10 Jun 2006 10:33:15 
-0000      1.4
@@ -1,28 +1,107 @@
 /* DO NOT EDIT THIS FILE - it is machine generated */
-
-#ifndef __gnu_java_awt_peer_gtk_CairoSurface__
-#define __gnu_java_awt_peer_gtk_CairoSurface__
-
 #include <jni.h>
+/* Header for class gnu_java_awt_peer_gtk_CairoSurface */
 
+#ifndef _Included_gnu_java_awt_peer_gtk_CairoSurface
+#define _Included_gnu_java_awt_peer_gtk_CairoSurface
 #ifdef __cplusplus
-extern "C"
-{
+extern "C" {
 #endif
-
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_create (JNIEnv 
*env, jobject, jint, jint, jint);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_destroy (JNIEnv 
*env, jobject);
-JNIEXPORT jint JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_nativeGetElem 
(JNIEnv *env, jobject, jint);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_nativeSetElem 
(JNIEnv *env, jobject, jint, jint);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_drawSurface 
(JNIEnv *env, jobject, jobject, jdoubleArray);
-JNIEXPORT jintArray JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_getPixels 
(JNIEnv *env, jobject, jint);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_setPixels 
(JNIEnv *env, jobject, jintArray);
-JNIEXPORT jlong JNICALL 
Java_gnu_java_awt_peer_gtk_CairoSurface_getFlippedBuffer (JNIEnv *env, jobject, 
jint);
-JNIEXPORT jlong JNICALL 
Java_gnu_java_awt_peer_gtk_CairoSurface_newCairoContext (JNIEnv *env, jobject);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_copyAreaNative 
(JNIEnv *env, jobject, jint, jint, jint, jint, jint, jint, jint);
+#undef gnu_java_awt_peer_gtk_CairoSurface_TYPE_BYTE
+#define gnu_java_awt_peer_gtk_CairoSurface_TYPE_BYTE 0L
+#undef gnu_java_awt_peer_gtk_CairoSurface_TYPE_USHORT
+#define gnu_java_awt_peer_gtk_CairoSurface_TYPE_USHORT 1L
+#undef gnu_java_awt_peer_gtk_CairoSurface_TYPE_SHORT
+#define gnu_java_awt_peer_gtk_CairoSurface_TYPE_SHORT 2L
+#undef gnu_java_awt_peer_gtk_CairoSurface_TYPE_INT
+#define gnu_java_awt_peer_gtk_CairoSurface_TYPE_INT 3L
+#undef gnu_java_awt_peer_gtk_CairoSurface_TYPE_FLOAT
+#define gnu_java_awt_peer_gtk_CairoSurface_TYPE_FLOAT 4L
+#undef gnu_java_awt_peer_gtk_CairoSurface_TYPE_DOUBLE
+#define gnu_java_awt_peer_gtk_CairoSurface_TYPE_DOUBLE 5L
+#undef gnu_java_awt_peer_gtk_CairoSurface_TYPE_UNDEFINED
+#define gnu_java_awt_peer_gtk_CairoSurface_TYPE_UNDEFINED 32L
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    create
+ * Signature: (III)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_create
+  (JNIEnv *, jobject, jint, jint, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    destroy
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_destroy
+  (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    nativeGetElem
+ * Signature: (JI)I
+ */
+JNIEXPORT jint JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_nativeGetElem
+  (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    nativeSetElem
+ * Signature: (JII)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_nativeSetElem
+  (JNIEnv *, jobject, jlong, jint, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    nativeDrawSurface
+ * Signature: (JJ[D)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_CairoSurface_nativeDrawSurface
+  (JNIEnv *, jobject, jlong, jlong, jdoubleArray);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    nativeGetPixels
+ * Signature: (JI)[I
+ */
+JNIEXPORT jintArray JNICALL 
Java_gnu_java_awt_peer_gtk_CairoSurface_nativeGetPixels
+  (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    nativeSetPixels
+ * Signature: (J[I)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_nativeSetPixels
+  (JNIEnv *, jobject, jlong, jintArray);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    getFlippedBuffer
+ * Signature: (JI)J
+ */
+JNIEXPORT jlong JNICALL 
Java_gnu_java_awt_peer_gtk_CairoSurface_getFlippedBuffer
+  (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    nativeNewCairoContext
+ * Signature: (J)J
+ */
+JNIEXPORT jlong JNICALL 
Java_gnu_java_awt_peer_gtk_CairoSurface_nativeNewCairoContext
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_CairoSurface
+ * Method:    copyAreaNative2
+ * Signature: (JIIIIIII)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_CairoSurface_copyAreaNative2
+  (JNIEnv *, jobject, jlong, jint, jint, jint, jint, jint, jint, jint);
 
 #ifdef __cplusplus
 }
 #endif
-
-#endif /* __gnu_java_awt_peer_gtk_CairoSurface__ */
+#endif

Index: include/gnu_java_awt_peer_gtk_ComponentGraphics.h
===================================================================
RCS file: 
/cvsroot/classpath/classpath/include/gnu_java_awt_peer_gtk_ComponentGraphics.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- include/gnu_java_awt_peer_gtk_ComponentGraphics.h   7 Jun 2006 09:40:54 
-0000       1.5
+++ include/gnu_java_awt_peer_gtk_ComponentGraphics.h   10 Jun 2006 10:33:15 
-0000      1.6
@@ -1,26 +1,77 @@
 /* DO NOT EDIT THIS FILE - it is machine generated */
-
-#ifndef __gnu_java_awt_peer_gtk_ComponentGraphics__
-#define __gnu_java_awt_peer_gtk_ComponentGraphics__
-
 #include <jni.h>
+/* Header for class gnu_java_awt_peer_gtk_ComponentGraphics */
 
+#ifndef _Included_gnu_java_awt_peer_gtk_ComponentGraphics
+#define _Included_gnu_java_awt_peer_gtk_ComponentGraphics
 #ifdef __cplusplus
-extern "C"
-{
+extern "C" {
 #endif
-
-JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState 
(JNIEnv *env, jobject, jobject);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface (JNIEnv *env, 
jobject, jlong);
-JNIEXPORT jlong JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_initFromVolatile (JNIEnv *env, 
jobject, jlong, jint, jint);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_start_1gdk_1drawing (JNIEnv *env, 
jobject);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_end_1gdk_1drawing (JNIEnv *env, 
jobject);
-JNIEXPORT jboolean JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_hasXRender (JNIEnv *env, jclass);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_copyAreaNative (JNIEnv *env, 
jobject, jobject, jint, jint, jint, jint, jint, jint);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_drawVolatile (JNIEnv *env, 
jobject, jobject, jobject, jint, jint, jint, jint);
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    initState
+ * Signature: (Lgnu/java/awt/peer/gtk/GtkComponentPeer;)J
+ */
+JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState
+  (JNIEnv *, jobject, jobject);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    disposeSurface
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    initFromVolatile
+ * Signature: (JII)J
+ */
+JNIEXPORT jlong JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_initFromVolatile
+  (JNIEnv *, jobject, jlong, jint, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    start_gdk_drawing
+ * Signature: ()V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_start_1gdk_1drawing
+  (JNIEnv *, jobject);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    end_gdk_drawing
+ * Signature: ()V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_end_1gdk_1drawing
+  (JNIEnv *, jobject);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    hasXRender
+ * Signature: ()Z
+ */
+JNIEXPORT jboolean JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_hasXRender
+  (JNIEnv *, jclass);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    copyAreaNative
+ * Signature: (Lgnu/java/awt/peer/gtk/GtkComponentPeer;IIIIII)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_copyAreaNative
+  (JNIEnv *, jobject, jobject, jint, jint, jint, jint, jint, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_ComponentGraphics
+ * Method:    drawVolatile
+ * Signature: (Lgnu/java/awt/peer/gtk/GtkComponentPeer;JIIII)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_ComponentGraphics_drawVolatile
+  (JNIEnv *, jobject, jobject, jlong, jint, jint, jint, jint);
 
 #ifdef __cplusplus
 }
 #endif
-
-#endif /* __gnu_java_awt_peer_gtk_ComponentGraphics__ */
+#endif

Index: include/gnu_java_awt_peer_gtk_GtkVolatileImage.h
===================================================================
RCS file: 
/cvsroot/classpath/classpath/include/gnu_java_awt_peer_gtk_GtkVolatileImage.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- include/gnu_java_awt_peer_gtk_GtkVolatileImage.h    6 Jun 2006 02:22:28 
-0000       1.2
+++ include/gnu_java_awt_peer_gtk_GtkVolatileImage.h    10 Jun 2006 10:33:15 
-0000      1.3
@@ -1,23 +1,69 @@
 /* DO NOT EDIT THIS FILE - it is machine generated */
-
-#ifndef __gnu_java_awt_peer_gtk_GtkVolatileImage__
-#define __gnu_java_awt_peer_gtk_GtkVolatileImage__
-
 #include <jni.h>
+/* Header for class gnu_java_awt_peer_gtk_GtkVolatileImage */
 
+#ifndef _Included_gnu_java_awt_peer_gtk_GtkVolatileImage
+#define _Included_gnu_java_awt_peer_gtk_GtkVolatileImage
 #ifdef __cplusplus
-extern "C"
-{
+extern "C" {
 #endif
-
-JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_GtkVolatileImage_init 
(JNIEnv *env, jobject, jobject, jint, jint);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkVolatileImage_destroy 
(JNIEnv *env, jobject);
-JNIEXPORT jintArray JNICALL 
Java_gnu_java_awt_peer_gtk_GtkVolatileImage_getPixels (JNIEnv *env, jobject);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkVolatileImage_copyArea 
(JNIEnv *env, jobject, jint, jint, jint, jint, jint, jint);
-JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_GtkVolatileImage_drawVolatile (JNIEnv *env, jobject, 
jlong, jint, jint, jint, jint);
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_DEFAULT
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_DEFAULT 1L
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_FAST
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_FAST 2L
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_SMOOTH
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_SMOOTH 4L
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_REPLICATE
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_REPLICATE 8L
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_AREA_AVERAGING
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_SCALE_AREA_AVERAGING 16L
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_IMAGE_OK
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_IMAGE_OK 0L
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_IMAGE_RESTORED
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_IMAGE_RESTORED 1L
+#undef gnu_java_awt_peer_gtk_GtkVolatileImage_IMAGE_INCOMPATIBLE
+#define gnu_java_awt_peer_gtk_GtkVolatileImage_IMAGE_INCOMPATIBLE 2L
+/*
+ * Class:     gnu_java_awt_peer_gtk_GtkVolatileImage
+ * Method:    init
+ * Signature: (Lgnu/java/awt/peer/gtk/GtkComponentPeer;II)J
+ */
+JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_GtkVolatileImage_init
+  (JNIEnv *, jobject, jobject, jint, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_GtkVolatileImage
+ * Method:    destroy
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkVolatileImage_destroy
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_GtkVolatileImage
+ * Method:    nativeGetPixels
+ * Signature: (J)[I
+ */
+JNIEXPORT jintArray JNICALL 
Java_gnu_java_awt_peer_gtk_GtkVolatileImage_nativeGetPixels
+  (JNIEnv *, jobject, jlong);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_GtkVolatileImage
+ * Method:    nativeCopyArea
+ * Signature: (JIIIIII)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_GtkVolatileImage_nativeCopyArea
+  (JNIEnv *, jobject, jlong, jint, jint, jint, jint, jint, jint);
+
+/*
+ * Class:     gnu_java_awt_peer_gtk_GtkVolatileImage
+ * Method:    nativeDrawVolatile
+ * Signature: (JJIIII)V
+ */
+JNIEXPORT void JNICALL 
Java_gnu_java_awt_peer_gtk_GtkVolatileImage_nativeDrawVolatile
+  (JNIEnv *, jobject, jlong, jlong, jint, jint, jint, jint);
 
 #ifdef __cplusplus
 }
 #endif
-
-#endif /* __gnu_java_awt_peer_gtk_GtkVolatileImage__ */
+#endif

Index: native/jni/gtk-peer/cairographics2d.h
===================================================================
RCS file: /cvsroot/classpath/classpath/native/jni/gtk-peer/cairographics2d.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- native/jni/gtk-peer/cairographics2d.h       31 May 2006 23:00:22 -0000      
1.2
+++ native/jni/gtk-peer/cairographics2d.h       10 Jun 2006 10:33:16 -0000      
1.3
@@ -113,7 +113,6 @@
   char *pattern_pixels;
 };
 
-cairo_t *cp_gtk_get_cairo_t(JNIEnv *env,
-                           jobject cairographics2dobj);
+cairo_t *cp_gtk_get_cairo_t(JNIEnv *env, jlong pointer);
 
 #endif

Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c
===================================================================
RCS file: 
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c 7 Jun 2006 
09:40:54 -0000       1.7
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c 10 Jun 2006 
10:33:17 -0000      1.8
@@ -51,30 +51,15 @@
 
 static void install_font_peer(cairo_t *cr, struct peerfont *pfont);
 static void update_pattern_transform (struct cairographics2d *gr);
-static struct cairographics2d *getPointer(JNIEnv *env, jobject obj);
-
-static struct cairographics2d *
-getPointer(JNIEnv *env, jobject obj)
-{
-  jclass cls;
-  jlong value;
-  jfieldID nofid;
-  cls = (*env)->GetObjectClass( env, obj );
-  nofid = (*env)->GetFieldID( env, cls, "nativePointer", "J" );
-  value = (*env)->GetLongField( env, obj, nofid );
-  (*env)->DeleteLocalRef( env, cls );
-
-  return JLONG_TO_PTR(struct cairographics2d, value);
-}
 
 /**
  * Returns the cairo_t * associated with a CairoGraphics2D object,
  * This is used by GdkTextLayout.
  */
 cairo_t *cp_gtk_get_cairo_t(JNIEnv *env,
-                           jobject cairographics2dobj)
+                           jlong pointer)
 {
-  struct cairographics2d *gr = getPointer(env, cairographics2dobj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert(gr != NULL);
   return gr->cr;
 }
@@ -106,9 +91,9 @@
  */
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_disposeNative
-  (JNIEnv *env, jobject obj)
+  (JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer(env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
 
   if (gr == NULL)
     return;
@@ -136,7 +121,7 @@
  */
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setGradient
-  (JNIEnv *env, jobject obj, 
+(JNIEnv *env, jobject obj, jlong pointer,
    jdouble x1, jdouble y1, 
    jdouble x2, jdouble y2,
    jint r1, jint g1, jint b1, jint a1,
@@ -147,7 +132,7 @@
   cairo_pattern_t* pattern;
   cairo_extend_t extend;
 
-  gr = getPointer (env, obj);
+  gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert( gr != NULL );
 
   pattern = cairo_pattern_create_linear(x1, y1, x2, y2);
@@ -169,12 +154,13 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setTexturePixels
-  (JNIEnv *env, jobject obj, jintArray jarr, jint w, jint h, jint stride)
+(JNIEnv *env, jobject obj, jlong pointer, jintArray jarr, jint w, jint h,
+ jint stride)
 {
   struct cairographics2d *gr = NULL;
   jint *jpixels = NULL;
 
-  gr = getPointer (env, obj);
+  gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   if (gr->pattern)
@@ -210,12 +196,12 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_drawPixels 
-  (JNIEnv *env, jobject obj, jintArray java_pixels, 
+(JNIEnv *env, jobject obj, jlong pointer, jintArray java_pixels, 
    jint w, jint h, jint stride, jdoubleArray java_matrix)
 {
   jint *native_pixels = NULL;
   jdouble *native_matrix = NULL;
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   native_pixels = (*env)->GetIntArrayElements (env, java_pixels, NULL);
@@ -253,10 +239,12 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetMatrix
-   (JNIEnv *env, jobject obj, jdoubleArray java_matrix)
+   (JNIEnv *env, jobject obj, jlong pointer, jdoubleArray java_matrix)
 {
   jdouble *native_matrix = NULL;
-  struct cairographics2d *gr = getPointer (env, obj);
+  g_assert (obj != NULL);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
+  g_assert (gr != NULL);
 
   native_matrix = (*env)->GetDoubleArrayElements (env, java_matrix, NULL);  
   g_assert (native_matrix != NULL);
@@ -270,6 +258,7 @@
                        native_matrix[0], native_matrix[1],
                        native_matrix[2], native_matrix[3],
                        native_matrix[4], native_matrix[5]);
+    g_assert (gr != NULL);
     cairo_set_matrix (gr->cr, &mat);
   }
 
@@ -279,7 +268,7 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawGlyphVector
-   (JNIEnv *env, jobject obj, 
+(JNIEnv *env, jobject obj, jlong pointer,
     jobject font,
     jfloat x, jfloat y, jint n,
     jintArray java_codes,
@@ -297,7 +286,7 @@
   g_assert (java_codes != NULL);
   g_assert (java_positions != NULL);
 
-  gr = getPointer (env, obj);
+  gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   pfont = (struct peerfont *)NSA_GET_FONT_PTR (env, font);
@@ -329,9 +318,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetOperator 
-   (JNIEnv *env, jobject obj, jint op)
+   (JNIEnv *env, jobject obj, jlong pointer, jint op)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   switch ((enum java_awt_alpha_composite_rule) op)
@@ -388,9 +377,10 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetRGBAColor
-   (JNIEnv *env, jobject obj, jdouble r, jdouble g, jdouble b, jdouble a)
+(JNIEnv *env, jobject obj, jlong pointer, jdouble r, jdouble g, jdouble b,
+ jdouble a)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_set_source_rgba (gr->cr, r, g, b, a);
@@ -398,9 +388,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetFillRule 
-   (JNIEnv *env, jobject obj, jint rule)
+   (JNIEnv *env, jobject obj, jlong pointer, jint rule)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   switch ((enum java_awt_geom_path_iterator_winding_rule) rule)
@@ -419,9 +409,10 @@
  */
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetLine
-  (JNIEnv *env, jobject obj, jdouble width, int cap, int join, double 
miterLimit)
+(JNIEnv *env, jobject obj, jlong pointer, jdouble width, int cap, int join,
+ double miterLimit)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   /* set width */
@@ -468,10 +459,11 @@
  */ 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetDash
-   (JNIEnv *env, jobject obj, jdoubleArray dashes, jint ndash, jdouble offset)
+(JNIEnv *env, jobject obj, jlong pointer, jdoubleArray dashes, jint ndash,
+ jdouble offset)
 {
   jdouble *dasharr = NULL;
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   dasharr = (*env)->GetDoubleArrayElements (env, dashes, NULL);  
@@ -484,9 +476,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoNewPath 
-   (JNIEnv *env, jobject obj)
+   (JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_new_path (gr->cr);
@@ -494,9 +486,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoMoveTo 
-   (JNIEnv *env, jobject obj, jdouble x, jdouble y)
+   (JNIEnv *env, jobject obj, jlong pointer, jdouble x, jdouble y)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_move_to (gr->cr, x, y);
@@ -504,9 +496,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoLineTo 
-   (JNIEnv *env, jobject obj, jdouble x, jdouble y)
+(JNIEnv *env, jobject obj, jlong pointer, jdouble x, jdouble y)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_line_to (gr->cr, x, y);
@@ -514,18 +506,19 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoCurveTo 
-   (JNIEnv *env, jobject obj, jdouble x1, jdouble y1, jdouble x2, jdouble y2, 
jdouble x3, jdouble y3)
+(JNIEnv *env, jobject obj, jlong pointer, jdouble x1, jdouble y1,
+ jdouble x2, jdouble y2, jdouble x3, jdouble y3)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
   cairo_curve_to (gr->cr, x1, y1, x2, y2, x3, y3);
 }
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelMoveTo 
-   (JNIEnv *env, jobject obj, jdouble dx, jdouble dy)
+   (JNIEnv *env, jobject obj, jlong pointer, jdouble dx, jdouble dy)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_rel_move_to (gr->cr, dx, dy);
@@ -533,9 +526,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelLineTo 
-   (JNIEnv *env, jobject obj, jdouble dx, jdouble dy)
+   (JNIEnv *env, jobject obj, jlong pointer, jdouble dx, jdouble dy)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_rel_line_to (gr->cr, dx, dy);
@@ -543,9 +536,10 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelCurveTo 
-   (JNIEnv *env, jobject obj, jdouble dx1, jdouble dy1, jdouble dx2, jdouble 
dy2, jdouble dx3, jdouble dy3)
+(JNIEnv *env, jobject obj, jlong pointer, jdouble dx1, jdouble dy1,
+ jdouble dx2, jdouble dy2, jdouble dx3, jdouble dy3)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_rel_curve_to (gr->cr, dx1, dy1, dx2, dy2, dx3, dy3);
@@ -553,18 +547,19 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRectangle 
-   (JNIEnv *env, jobject obj, jdouble x, jdouble y, jdouble width, jdouble 
height)
+(JNIEnv *env, jobject obj, jlong pointer, jdouble x, jdouble y,
+ jdouble width, jdouble height)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
 
   cairo_rectangle (gr->cr, x, y, width, height);
 }
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoClosePath 
-   (JNIEnv *env, jobject obj)
+   (JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_close_path (gr->cr);
@@ -572,9 +567,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoStroke 
-   (JNIEnv *env, jobject obj)
+   (JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_stroke (gr->cr);
@@ -582,9 +577,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoFill 
-   (JNIEnv *env, jobject obj)
+(JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_fill (gr->cr);
@@ -592,9 +587,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoClip 
-   (JNIEnv *env, jobject obj)
+(JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer( env, obj );
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert( gr != NULL );
 
   cairo_clip( gr->cr );
@@ -602,9 +597,9 @@
 
 JNIEXPORT void JNICALL 
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoResetClip 
-  (JNIEnv *env, jobject obj)
+(JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer( env, obj );
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_reset_clip( gr->cr );
@@ -612,9 +607,9 @@
 
 JNIEXPORT void JNICALL 
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoPreserveClip 
-(JNIEnv *env, jobject obj)
+(JNIEnv *env, jobject obj, jlong pointer)
 {
-  struct cairographics2d *gr = getPointer( env, obj );
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
 
   cairo_clip_preserve( gr->cr );
@@ -622,9 +617,9 @@
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSurfaceSetFilter
-   (JNIEnv *env, jobject obj, jint filter)
+   (JNIEnv *env, jobject obj, jlong pointer, jint filter)
 {
-  struct cairographics2d *gr = getPointer (env, obj);
+  struct cairographics2d *gr = JLONG_TO_PTR(struct cairographics2d, pointer);
   g_assert (gr != NULL);
   
   if (gr->pattern == NULL)

Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoSurface.c
===================================================================
RCS file: 
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoSurface.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoSurface.c    7 Jun 2006 
09:40:54 -0000       1.16
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoSurface.c    10 Jun 2006 
10:33:17 -0000      1.17
@@ -50,7 +50,6 @@
 #define BUFFER "bufferPointer"
 
 /* prototypes */
-static void *getNativeObject( JNIEnv *env, jobject obj, const char *pointer );
 static void setNativeObject( JNIEnv *env, jobject obj, void *ptr, const char 
*pointer );
 
 /**
@@ -74,14 +73,15 @@
  * Destroy the surface
  */
 JNIEXPORT void JNICALL 
-Java_gnu_java_awt_peer_gtk_CairoSurface_destroy (JNIEnv *env, jobject obj)
+Java_gnu_java_awt_peer_gtk_CairoSurface_destroy
+(JNIEnv *env, jobject obj, jlong surfacePointer, jlong bufferPointer)
 {
   void *buffer;
-  cairo_surface_t* surface = (cairo_surface_t *)getNativeObject(env, obj, 
SURFACE);
+  cairo_surface_t* surface = JLONG_TO_PTR(void, surfacePointer);
   if( surface != NULL )
     cairo_surface_destroy(surface);
 
-  buffer = getNativeObject(env, obj, BUFFER);
+  buffer = JLONG_TO_PTR(void, bufferPointer);
   if( buffer != NULL )
     g_free(buffer);
 }
@@ -90,9 +90,10 @@
  * Gets a pixel
  */
 JNIEXPORT jint JNICALL 
-Java_gnu_java_awt_peer_gtk_CairoSurface_nativeGetElem (JNIEnv *env, jobject 
obj, jint i)
+Java_gnu_java_awt_peer_gtk_CairoSurface_nativeGetElem
+(JNIEnv *env, jobject obj, jlong bufferPointer, jint i)
 {
-  jint *pixeldata = (jint *)getNativeObject(env, obj, BUFFER);
+  jint *pixeldata = JLONG_TO_PTR(void, bufferPointer);
 
   if( pixeldata == NULL )
     return 0;
@@ -105,9 +106,9 @@
  */
 JNIEXPORT void JNICALL 
 Java_gnu_java_awt_peer_gtk_CairoSurface_nativeSetElem 
-(JNIEnv *env, jobject obj, jint i, jint val)
+(JNIEnv *env, jobject obj, jlong bufferPointer, jint i, jint val)
 {
-  jint *pixeldata = (jint *)getNativeObject(env, obj, BUFFER);
+  jint *pixeldata = JLONG_TO_PTR(void, bufferPointer);
 
   if( pixeldata == NULL )
     return;
@@ -119,13 +120,13 @@
  * Gets all pixels in an array
  */
 JNIEXPORT jintArray JNICALL 
-Java_gnu_java_awt_peer_gtk_CairoSurface_getPixels
-(JNIEnv *env, jobject obj, int size)
+Java_gnu_java_awt_peer_gtk_CairoSurface_nativeGetPixels
+(JNIEnv *env, jobject obj, jlong bufferPointer, int size)
 {
   jint *pixeldata, *jpixdata;
   jintArray jpixels;
 
-  pixeldata = (jint *)getNativeObject(env, obj, BUFFER);
+  pixeldata = JLONG_TO_PTR(void, bufferPointer);
   g_assert(pixeldata != NULL);
 
   jpixels = (*env)->NewIntArray (env, size);
@@ -140,8 +141,8 @@
  * Sets all pixels by an array.
  */
 JNIEXPORT void JNICALL 
-Java_gnu_java_awt_peer_gtk_CairoSurface_setPixels
-(JNIEnv *env, jobject obj, jintArray jpixels)
+Java_gnu_java_awt_peer_gtk_CairoSurface_nativeSetPixels
+(JNIEnv *env, jobject obj, jlong bufferPointer, jintArray jpixels)
 {
   jint *pixeldata, *jpixdata;
   int size;
@@ -161,7 +162,7 @@
   g_assert (field != 0);
   height = (*env)->GetIntField (env, obj, field);
 
-  pixeldata = (jint *)getNativeObject(env, obj, BUFFER);
+  pixeldata = JLONG_TO_PTR(void, bufferPointer);
   g_assert(pixeldata != NULL);
   
   jpixdata = (*env)->GetIntArrayElements (env, jpixels, NULL);
@@ -174,12 +175,13 @@
 }
 
 JNIEXPORT void JNICALL
-Java_gnu_java_awt_peer_gtk_CairoSurface_drawSurface 
-   (JNIEnv *env, jobject obj, jobject context, jdoubleArray java_matrix)
+Java_gnu_java_awt_peer_gtk_CairoSurface_nativeDrawSurface 
+(JNIEnv *env, jobject obj, jlong surfacePointer, jlong context,
+ jdoubleArray java_matrix)
 {
   cairo_t *cr;
   jdouble *native_matrix = NULL;
-  cairo_surface_t* surface = (cairo_surface_t *)getNativeObject(env, obj, 
SURFACE);
+  cairo_surface_t* surface = JLONG_TO_PTR(void, surfacePointer);
   g_assert(surface != NULL);
 
   cr = cp_gtk_get_cairo_t(env, context);
@@ -211,10 +213,10 @@
 
 JNIEXPORT jlong JNICALL 
 Java_gnu_java_awt_peer_gtk_CairoSurface_getFlippedBuffer 
-(JNIEnv *env, jobject obj, jint size)
+(JNIEnv *env, jobject obj, jlong bufferPointer, jint size)
 {
   jint *dst;
-  jint *src = (jint *)getNativeObject(env, obj, BUFFER);
+  jint *src = JLONG_TO_PTR(void, bufferPointer);
   int i;
   int t;
 
@@ -236,9 +238,10 @@
  * Create and return a cairo context for drawing to the surface.
  */
 JNIEXPORT jlong JNICALL 
-Java_gnu_java_awt_peer_gtk_CairoSurface_newCairoContext (JNIEnv *env, jobject 
obj)
+Java_gnu_java_awt_peer_gtk_CairoSurface_nativeNewCairoContext
+(JNIEnv *env, jobject obj, jlong surfacePointer)
 {
-  cairo_surface_t* surface = (cairo_surface_t *)getNativeObject(env, obj, 
SURFACE);
+  cairo_surface_t* surface = JLONG_TO_PTR(cairo_surface_t, surfacePointer);
   cairo_t *ptr;
   g_assert(surface != NULL);
   ptr = cairo_create(surface);
@@ -251,17 +254,14 @@
  * copyArea.
  */
 JNIEXPORT void JNICALL 
-Java_gnu_java_awt_peer_gtk_CairoSurface_copyAreaNative (JNIEnv *env, 
-                                                       jobject obj, 
-                                                       jint x, jint y, 
-                                                       jint w, jint h, 
-                                                       jint dx, jint dy, 
-                                                       jint stride)
+Java_gnu_java_awt_peer_gtk_CairoSurface_copyAreaNative2
+(JNIEnv *env, jobject obj, jlong bufferPointer,
+ jint x, jint y, jint w, jint h, jint dx, jint dy, jint stride)
 {
   int row;
   int srcOffset, dstOffset;
   jint *temp;
-  jint *pixeldata = (jint *)getNativeObject(env, obj, BUFFER);
+  jint *pixeldata = JLONG_TO_PTR(jint, bufferPointer);
   g_assert( pixeldata != NULL );
 
   temp = g_malloc( h * w * 4 );
@@ -294,19 +294,3 @@
   (*env)->SetLongField( env, obj, nofid, value );
   (*env)->DeleteLocalRef( env, cls );
 }
-
-/**
- * Gets the native object field.
- */
-static void *
-getNativeObject( JNIEnv *env, jobject obj, const char *pointer )
-{
-  jclass cls;
-  jlong value;
-  jfieldID nofid;
-  cls = (*env)->GetObjectClass( env, obj );
-  nofid = (*env)->GetFieldID( env, cls, pointer, "J" );
-  value = (*env)->GetLongField( env, obj, nofid );
-  (*env)->DeleteLocalRef( env, cls );
-  return JLONG_TO_PTR(void, value);
-}

Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
===================================================================
RCS file: 
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c       9 Jun 
2006 22:08:08 -0000       1.15
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c       10 Jun 
2006 10:33:17 -0000      1.16
@@ -279,7 +279,7 @@
 JNIEXPORT void JNICALL 
 Java_gnu_java_awt_peer_gtk_ComponentGraphics_drawVolatile
 (JNIEnv *env, jobject obj __attribute__ ((unused)), jobject peer, 
- jobject img, jint x, jint y, jint w, jint h)
+ jlong img, jint x, jint y, jint w, jint h)
 {
   GdkPixmap *pixmap;
   GtkWidget *widget = NULL;
@@ -293,7 +293,7 @@
   widget = GTK_WIDGET (ptr);
   g_assert (widget != NULL);
 
-  pixmap = cp_gtk_get_pixmap( env, img );
+  pixmap = JLONG_TO_PTR(GdkPixmap, img);
  
   gc = gdk_gc_new(widget->window);
   gdk_draw_drawable(widget->window,

Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkVolatileImage.c
===================================================================
RCS file: 
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkVolatileImage.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkVolatileImage.c        6 Jun 
2006 02:22:29 -0000       1.3
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkVolatileImage.c        10 Jun 
2006 10:33:17 -0000      1.4
@@ -47,11 +47,6 @@
 #include "gnu_java_awt_peer_gtk_GtkVolatileImage.h"
 #include "cairographics2d.h"
 
-/* prototypes */
-static void *getNativeObject( JNIEnv *env, jobject obj );
-/* static void setNativeObject( JNIEnv *env, jobject obj, void *ptr ); */
-
-GdkPixmap *cp_gtk_get_pixmap( JNIEnv *env, jobject obj);
 
 /**
  * Creates a cairo surface, ARGB32, native ordering, premultiplied alpha.
@@ -91,9 +86,10 @@
  * Destroy the surface
  */
 JNIEXPORT void JNICALL 
-Java_gnu_java_awt_peer_gtk_GtkVolatileImage_destroy (JNIEnv *env, jobject obj)
+Java_gnu_java_awt_peer_gtk_GtkVolatileImage_destroy
+(JNIEnv *env, jobject obj, jlong pointer)
 {
-  GdkPixmap* pixmap = getNativeObject(env, obj);
+  GdkPixmap* pixmap = JLONG_TO_PTR(GdkPixmap, pointer);
   if( pixmap != NULL )
     {
       gdk_threads_enter();
@@ -106,8 +102,8 @@
  * Gets all pixels in an array
  */
 JNIEXPORT jintArray JNICALL 
-Java_gnu_java_awt_peer_gtk_GtkVolatileImage_getPixels
-(JNIEnv *env, jobject obj)
+Java_gnu_java_awt_peer_gtk_GtkVolatileImage_nativeGetPixels
+(JNIEnv *env, jobject obj, jlong pointer)
 {
   /* jint *pixeldata, *jpixdata; */
   jint *jpixdata;
@@ -126,7 +122,7 @@
   g_assert (field != 0);
   height = (*env)->GetIntField (env, obj, field);
 
-  pixmap = GDK_PIXMAP(getNativeObject(env, obj));
+  pixmap = JLONG_TO_PTR(GdkPixmap, pointer);
   g_assert(pixmap != NULL);
 
   gdk_threads_enter();
@@ -149,11 +145,12 @@
  * Copy area
  */
 JNIEXPORT void JNICALL 
-Java_gnu_java_awt_peer_gtk_GtkVolatileImage_copyArea
-(JNIEnv *env, jobject obj, jint x, jint y, jint w, jint h, jint dx, jint dy)
+Java_gnu_java_awt_peer_gtk_GtkVolatileImage_nativeCopyArea
+(JNIEnv *env, jobject obj, jlong pointer, jint x, jint y, jint w, jint h,
+ jint dx, jint dy)
 {
   GdkPixbuf *pixbuf;
-  GdkPixmap* pixmap = getNativeObject(env, obj);
+  GdkPixmap* pixmap = JLONG_TO_PTR(GdkPixmap, pointer);
 
   g_assert (pixmap != NULL);
 
@@ -169,14 +166,15 @@
 }
 
 JNIEXPORT void JNICALL 
-Java_gnu_java_awt_peer_gtk_GtkVolatileImage_drawVolatile
-(JNIEnv *env, jobject obj, jlong ptr, jint x, jint y, jint w, jint h)
+Java_gnu_java_awt_peer_gtk_GtkVolatileImage_nativeDrawVolatile
+(JNIEnv *env, jobject obj, jlong pointer, jlong srcptr, jint x, jint y, jint w,
+ jint h)
 {
   GdkPixmap *dst, *src;
   GdkGC *gc;
 
-  src = JLONG_TO_PTR(GdkPixmap, ptr);
-  dst = getNativeObject(env, obj);
+  src = JLONG_TO_PTR(GdkPixmap, srcptr);
+  dst = JLONG_TO_PTR(GdkPixmap, pointer);
   g_assert (src != NULL);
   g_assert (dst != NULL);
 
@@ -194,23 +192,3 @@
   gdk_threads_leave();
 }
 
-GdkPixmap *cp_gtk_get_pixmap( JNIEnv *env, jobject obj)
-{
-  return (GdkPixmap *)getNativeObject(env, obj);
-}
-
-/**
- * Gets the native object field.
- */
-static void *
-getNativeObject( JNIEnv *env, jobject obj )
-{
-  jclass cls;
-  jlong value;
-  jfieldID nofid;
-  cls = (*env)->GetObjectClass( env, obj );
-  nofid = (*env)->GetFieldID( env, cls, "nativePointer", "J" );
-  value = (*env)->GetLongField( env, obj, nofid );
-  (*env)->DeleteLocalRef( env, cls );
-  return JLONG_TO_PTR(void, value);
-}

Index: gnu/java/awt/peer/gtk/CairoGraphics2D.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/CairoGraphics2D.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- gnu/java/awt/peer/gtk/CairoGraphics2D.java  9 Jun 2006 20:40:59 -0000       
1.17
+++ gnu/java/awt/peer/gtk/CairoGraphics2D.java  10 Jun 2006 10:33:17 -0000      
1.18
@@ -38,14 +38,12 @@
 
 package gnu.java.awt.peer.gtk;
 
-import gnu.classpath.Configuration;
 import gnu.java.awt.ClasspathToolkit;
 
 import java.awt.AlphaComposite;
 import java.awt.BasicStroke;
 import java.awt.Color;
 import java.awt.Composite;
-import java.awt.Dimension;
 import java.awt.Font;
 import java.awt.FontMetrics;
 import java.awt.GradientPaint;
@@ -68,7 +66,6 @@
 import java.awt.geom.Arc2D;
 import java.awt.geom.Area;
 import java.awt.geom.Line2D;
-import java.awt.geom.GeneralPath;
 import java.awt.geom.NoninvertibleTransformException;
 import java.awt.geom.PathIterator;
 import java.awt.geom.Point2D;
@@ -78,11 +75,9 @@
 import java.awt.image.BufferedImage;
 import java.awt.image.BufferedImageOp;
 import java.awt.image.ColorModel;
-import java.awt.image.CropImageFilter;
 import java.awt.image.DataBuffer;
 import java.awt.image.DataBufferInt;
 import java.awt.image.DirectColorModel;
-import java.awt.image.FilteredImageSource;
 import java.awt.image.ImageObserver;
 import java.awt.image.ImagingOpException;
 import java.awt.image.MultiPixelPackedSampleModel;
@@ -95,7 +90,6 @@
 import java.text.AttributedCharacterIterator;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.Stack;
 
 /**
  * This is an abstract implementation of Graphics2D on Cairo. 
@@ -277,7 +271,7 @@
    */
   public void dispose()
   {    
-    disposeNative();
+    disposeNative(nativePointer);
     nativePointer = 0;
   }
 
@@ -305,7 +299,7 @@
   /**
    * Dispose of allocate native resouces.
    */
-  public native void disposeNative();
+  public native void disposeNative(long pointer);
 
   /**
    * Draw pixels as an RGBA int matrix
@@ -313,119 +307,125 @@
    * @param stride - stride of the array width
    * @param i2u - affine transform array
    */
-  private native void drawPixels(int[] pixels, int w, int h, int stride,
-                                 double[] i2u);
+  private native void drawPixels(long pointer, int[] pixels, int w, int h,
+                                 int stride, double[] i2u);
 
-  private native void setGradient(double x1, double y1, double x2, double y2,
+  private native 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);
   
-  private native void setTexturePixels(int[] pixels, int w, int h, int stride);
+  private native void setTexturePixels(long pointer, int[] pixels, int w,
+                                       int h, int stride);
 
   /**
    * Set the current transform matrix
    */
-  private native void cairoSetMatrix(double[] m);
+  private native void cairoSetMatrix(long pointer, double[] m);
 
   /**
    * Set the compositing operator
    */
-  private native void cairoSetOperator(int cairoOperator);
+  private native void cairoSetOperator(long pointer, int cairoOperator);
 
   /**
    * Sets the current color in RGBA as a 0.0-1.0 double
    */
-  private native void cairoSetRGBAColor(double red, double green,
+  private native void cairoSetRGBAColor(long pointer, double red, double green,
                                         double blue, double alpha);
 
   /**
    * Sets the current winding rule in Cairo
    */
-  private native void cairoSetFillRule(int cairoFillRule);
+  private native void cairoSetFillRule(long pointer, int cairoFillRule);
 
   /**
    * Set the line style, cap, join and miter limit.
    * Cap and join parameters are in the BasicStroke enumerations.
    */
-  private native void cairoSetLine(double width, int cap, int join, double 
miterLimit);
+  private native void cairoSetLine(long pointer, double width, int cap,
+                                   int join, double miterLimit);
 
   /**
    * Set the dash style
    */
-  private native void cairoSetDash(double[] dashes, int ndash, double offset);
+  private native void cairoSetDash(long pointer, double[] dashes, int ndash,
+                                   double offset);
 
   /*
    * Draws a Glyph Vector
    */
-  native void cairoDrawGlyphVector(GdkFontPeer font, 
+  native void cairoDrawGlyphVector(long pointer, GdkFontPeer font, 
                                    float x, float y, int n, 
                                    int[] codes, float[] positions);
 
 
-  private native void cairoRelCurveTo(double dx1, double dy1, double dx2,
-                                      double dy2, double dx3, double dy3);
+  private native void cairoRelCurveTo(long pointer, double dx1, double dy1,
+                                      double dx2, double dy2, double dx3,
+                                      double dy3);
 
   /**
    * Appends a rectangle to the current path
    */
-  private native void cairoRectangle(double x, double y, double width,
-                                     double height);
+  private native void cairoRectangle(long pointer, double x, double y,
+                                     double width, double height);
 
   /**
    * New current path
    */
-  private native void cairoNewPath();
+  private native void cairoNewPath(long pointer);
 
   /** 
    * Close current path
    */
-  private native void cairoClosePath();
+  private native void cairoClosePath(long pointer);
 
   /** moveTo */
-  private native void cairoMoveTo(double x, double y);
+  private native void cairoMoveTo(long pointer, double x, double y);
 
   /** relative moveTo */
-  private native void cairoRelMoveTo(double dx, double dy);
+  private native void cairoRelMoveTo(long pointer, double dx, double dy);
 
   /** lineTo */
-  private native void cairoLineTo(double x, double y);
+  private native void cairoLineTo(long pointer, double x, double y);
 
   /** relative lineTo */
-  private native void cairoRelLineTo(double dx, double dy);
+  private native void cairoRelLineTo(long pointer, double dx, double dy);
 
   /** Cubic curve-to */
-  private native void cairoCurveTo(double x1, double y1, double x2, double y2,
+  private native void cairoCurveTo(long pointer, double x1, double y1,
+                                   double x2, double y2,
                                    double x3, double y3);
 
   /**
    * Stroke current path
    */
-  private native void cairoStroke();
+  private native void cairoStroke(long pointer);
 
   /**
    * Fill current path
    */
-  private native void cairoFill();
+  private native void cairoFill(long pointer);
 
   /** 
    * Clip current path
    */
-  private native void cairoClip();
+  private native void cairoClip(long pointer);
 
   /** 
    * Save clip
    */
-  private native void cairoPreserveClip();
+  private native void cairoPreserveClip(long pointer);
 
   /** 
    * Save clip
    */
-  private native void cairoResetClip();
+  private native void cairoResetClip(long pointer);
 
   /**
    * Set interpolation types
    */
-  private native void cairoSurfaceSetFilter(int filter);
+  private native void cairoSurfaceSetFilter(long pointer, int filter);
 
   ///////////////////////// TRANSFORMS ///////////////////////////////////
   /**
@@ -438,7 +438,7 @@
       {
        double[] m = new double[6];
        transform.getMatrix(m);
-       cairoSetMatrix(m);
+       cairoSetMatrix(nativePointer, m);
       }
   }
   
@@ -539,7 +539,7 @@
       clip = originalClip;
     
     // This is so common, let's optimize this. 
-    else if (clip instanceof Rectangle2D && s instanceof Rectangle2D)
+    if (clip instanceof Rectangle2D && s instanceof Rectangle2D)
       {
         Rectangle2D clipRect = (Rectangle2D) clip;
         Rectangle2D r = (Rectangle2D) s;
@@ -604,7 +604,7 @@
        AffineTransformOp op = new AffineTransformOp(at, getRenderingHints());
        BufferedImage texture = op.filter(img, null);
        int[] pixels = texture.getRGB(0, 0, width, height, null, 0, width);
-       setTexturePixels(pixels, width, height, width);
+       setTexturePixels(nativePointer, pixels, width, height, width);
       }
     else if (paint instanceof GradientPaint)
       {
@@ -613,9 +613,10 @@
        Point2D p2 = gp.getPoint2();
        Color c1 = gp.getColor1();
        Color c2 = gp.getColor2();
-       setGradient(p1.getX(), p1.getY(), p2.getX(), p2.getY(), c1.getRed(),
-                   c1.getGreen(), c1.getBlue(), c1.getAlpha(), c2.getRed(),
-                   c2.getGreen(), c2.getBlue(), c2.getAlpha(), gp.isCyclic());
+       setGradient(nativePointer, p1.getX(), p1.getY(), p2.getX(), p2.getY(),
+                    c1.getRed(), c1.getGreen(), c1.getBlue(), c1.getAlpha(),
+                    c2.getRed(), c2.getGreen(), c2.getBlue(), c2.getAlpha(),
+                    gp.isCyclic());
       }
     else
       throw new java.lang.UnsupportedOperationException();
@@ -632,7 +633,7 @@
     if (stroke instanceof BasicStroke)
       {
        BasicStroke bs = (BasicStroke) stroke;
-       cairoSetLine(bs.getLineWidth(), bs.getEndCap(), 
+       cairoSetLine(nativePointer, bs.getLineWidth(), bs.getEndCap(), 
                     bs.getLineJoin(), bs.getMiterLimit());
 
        float[] dashes = bs.getDashArray();
@@ -641,11 +642,11 @@
            double[] double_dashes = new double[dashes.length];
            for (int i = 0; i < dashes.length; i++)
              double_dashes[i] = dashes[i];
-           cairoSetDash(double_dashes, double_dashes.length,
+           cairoSetDash(nativePointer, double_dashes, double_dashes.length,
                         (double) bs.getDashPhase());
          }
        else
-         cairoSetDash(new double[0], 0, 0.0);
+         cairoSetDash(nativePointer, new double[0], 0, 0.0);
       }
   }
 
@@ -676,8 +677,9 @@
   {
     if (fg == null)
       fg = Color.BLACK;
-    cairoSetRGBAColor(fg.getRed() / 255.0, fg.getGreen() / 255.0,
-                      fg.getBlue() / 255.0, fg.getAlpha() / 255.0);
+    cairoSetRGBAColor(nativePointer, fg.getRed() / 255.0,
+                      fg.getGreen() / 255.0,fg.getBlue() / 255.0,
+                      fg.getAlpha() / 255.0);
   }
 
   public Color getColor()
@@ -750,19 +752,19 @@
       clip = originalClip;
     else
       clip = s;
+    cairoResetClip(nativePointer);
 
-    cairoResetClip();
-
-    cairoNewPath();
+    cairoNewPath(nativePointer);
     if (clip instanceof Rectangle2D)
       {
        Rectangle2D r = (Rectangle2D) clip;
-       cairoRectangle(r.getX(), r.getY(), r.getWidth(), r.getHeight());
+       cairoRectangle(nativePointer, r.getX(), r.getY(), r.getWidth(),
+                       r.getHeight());
       }
     else
       walkPath(clip.getPathIterator(null), false);
     
-    cairoClip();
+    cairoClip(nativePointer);
   }
 
   public void setBackground(Color c)
@@ -798,7 +800,7 @@
     if (comp instanceof AlphaComposite)
       {
        AlphaComposite a = (AlphaComposite) comp;
-       cairoSetOperator(a.getRule());
+       cairoSetOperator(nativePointer, a.getRule());
        Color c = getColor();
        setColor(new Color(c.getRed(), c.getGreen(), c.getBlue(),
                           (int) (a.getAlpha() * ((float) c.getAlpha()))));
@@ -820,32 +822,33 @@
        return;
       }
 
-    cairoNewPath();
+    cairoNewPath(nativePointer);
 
     if (s instanceof Rectangle2D)
       {
        Rectangle2D r = (Rectangle2D) s;
-       cairoRectangle(shifted(r.getX(), shiftDrawCalls),
+       cairoRectangle(nativePointer, shifted(r.getX(), shiftDrawCalls),
                       shifted(r.getY(), shiftDrawCalls), r.getWidth(),
                       r.getHeight());
       }
     else
       walkPath(s.getPathIterator(null), shiftDrawCalls);
-    cairoStroke();
+    cairoStroke(nativePointer);
   }
 
   public void fill(Shape s)
   {
-    cairoNewPath();
+    cairoNewPath(nativePointer);
     if (s instanceof Rectangle2D)
       {
        Rectangle2D r = (Rectangle2D) s;
-       cairoRectangle(r.getX(), r.getY(), r.getWidth(), r.getHeight());
+       cairoRectangle(nativePointer, r.getX(), r.getY(), r.getWidth(),
+                       r.getHeight());
       }
     else
       walkPath(s.getPathIterator(null), false);
 
-    cairoFill();
+    cairoFill(nativePointer);
   }
 
   /**
@@ -857,8 +860,8 @@
   public void clearRect(int x, int y, int width, int height)
   {
     if (bg != null)
-      cairoSetRGBAColor(bg.getRed() / 255.0, bg.getGreen() / 255.0,
-                       bg.getBlue() / 255.0, 1.0);
+      cairoSetRGBAColor(nativePointer, bg.getRed() / 255.0,
+                        bg.getGreen() / 255.0, bg.getBlue() / 255.0, 1.0);
     fillRect(x, y, width, height);
     updateColor();
   }
@@ -1006,19 +1009,19 @@
         || hintKey.equals(RenderingHints.KEY_ALPHA_INTERPOLATION))
       {
        if 
(hintValue.equals(RenderingHints.VALUE_INTERPOLATION_NEAREST_NEIGHBOR))
-         cairoSurfaceSetFilter(0);
+         cairoSurfaceSetFilter(nativePointer, 0);
 
        else if (hintValue.equals(RenderingHints.VALUE_INTERPOLATION_BILINEAR))
-         cairoSurfaceSetFilter(1);
+         cairoSurfaceSetFilter(nativePointer, 1);
 
        else if 
(hintValue.equals(RenderingHints.VALUE_ALPHA_INTERPOLATION_SPEED))
-         cairoSurfaceSetFilter(2);
+         cairoSurfaceSetFilter(nativePointer, 2);
 
        else if 
(hintValue.equals(RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY))
-         cairoSurfaceSetFilter(3);
+         cairoSurfaceSetFilter(nativePointer, 3);
 
        else if 
(hintValue.equals(RenderingHints.VALUE_ALPHA_INTERPOLATION_DEFAULT))
-         cairoSurfaceSetFilter(4);
+         cairoSurfaceSetFilter(nativePointer, 4);
       }
 
     shiftDrawCalls = hints.containsValue(RenderingHints.VALUE_STROKE_NORMALIZE)
@@ -1038,22 +1041,22 @@
     if (hints.containsKey(RenderingHints.KEY_INTERPOLATION))
       {
        if 
(hints.containsValue(RenderingHints.VALUE_INTERPOLATION_NEAREST_NEIGHBOR))
-         cairoSurfaceSetFilter(0);
+         cairoSurfaceSetFilter(nativePointer, 0);
 
        else if 
(hints.containsValue(RenderingHints.VALUE_INTERPOLATION_BILINEAR))
-         cairoSurfaceSetFilter(1);
+         cairoSurfaceSetFilter(nativePointer, 1);
       }
 
     if (hints.containsKey(RenderingHints.KEY_ALPHA_INTERPOLATION))
       {
        if (hints.containsValue(RenderingHints.VALUE_ALPHA_INTERPOLATION_SPEED))
-         cairoSurfaceSetFilter(2);
+         cairoSurfaceSetFilter(nativePointer, 2);
 
        else if 
(hints.containsValue(RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY))
-         cairoSurfaceSetFilter(3);
+         cairoSurfaceSetFilter(nativePointer, 3);
 
        else if 
(hints.containsValue(RenderingHints.VALUE_ALPHA_INTERPOLATION_DEFAULT))
-         cairoSurfaceSetFilter(4);
+         cairoSurfaceSetFilter(nativePointer, 4);
       }
 
     shiftDrawCalls = hints.containsValue(RenderingHints.VALUE_STROKE_NORMALIZE)
@@ -1120,7 +1123,7 @@
 
     if(db instanceof CairoSurface)
       {
-       ((CairoSurface)db).drawSurface(this, i2u);
+       ((CairoSurface)db).drawSurface(nativePointer, i2u);
        return true;
       }
            
@@ -1156,7 +1159,7 @@
                          null, 0, width);
       }
 
-    drawPixels(pixels, width, height, width, i2u);
+    drawPixels(nativePointer, pixels, width, height, width, i2u);
 
     // Cairo seems to lose the current color which must be restored.
     updateColor();
@@ -1295,8 +1298,8 @@
         float[] positions = gv.getGlyphPositions (0, n, null);
 
         setFont (gv.getFont ());
-        cairoDrawGlyphVector( (GdkFontPeer)getFont().getPeer(), x, y, n, codes,
-                              positions);
+        cairoDrawGlyphVector(nativePointer, (GdkFontPeer)getFont().getPeer(),
+                             x, y, n, codes, positions);
       }
     else
       {
@@ -1456,7 +1459,8 @@
       for (int i = 0; i < pixels.length; i++)
        pixels[i] |= 0xFF000000;
 
-    drawPixels(pixels, r.getWidth(), r.getHeight(), r.getWidth(), i2u);
+    drawPixels(nativePointer, pixels, r.getWidth(), r.getHeight(),
+               r.getWidth(), i2u);
 
     // Cairo seems to lose the current color which must be restored.
     updateColor();
@@ -1484,7 +1488,7 @@
     double y = 0;
     double[] coords = new double[6];
 
-    cairoSetFillRule(p.getWindingRule());
+    cairoSetFillRule(nativePointer, p.getWindingRule());
     for (; ! p.isDone(); p.next())
       {
        int seg = p.currentSegment(coords);
@@ -1493,12 +1497,12 @@
          case PathIterator.SEG_MOVETO:
            x = shifted(coords[0], doShift);
            y = shifted(coords[1], doShift);
-           cairoMoveTo(x, y);
+           cairoMoveTo(nativePointer, x, y);
            break;
          case PathIterator.SEG_LINETO:
            x = shifted(coords[0], doShift);
            y = shifted(coords[1], doShift);
-           cairoLineTo(x, y);
+           cairoLineTo(nativePointer, x, y);
            break;
          case PathIterator.SEG_QUADTO:
            // splitting a quadratic bezier into a cubic:
@@ -1511,18 +1515,18 @@
 
            x = shifted(coords[2], doShift);
            y = shifted(coords[3], doShift);
-           cairoCurveTo(x1, y1, x2, y2, x, y);
+           cairoCurveTo(nativePointer, x1, y1, x2, y2, x, y);
            break;
          case PathIterator.SEG_CUBICTO:
            x = shifted(coords[4], doShift);
            y = shifted(coords[5], doShift);
-           cairoCurveTo(shifted(coords[0], doShift),
+           cairoCurveTo(nativePointer, shifted(coords[0], doShift),
                         shifted(coords[1], doShift),
                         shifted(coords[2], doShift),
                         shifted(coords[3], doShift), x, y);
            break;
          case PathIterator.SEG_CLOSE:
-           cairoClosePath();
+           cairoClosePath(nativePointer);
            break;
          }
       }

Index: gnu/java/awt/peer/gtk/CairoSurface.java
===================================================================
RCS file: /cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/CairoSurface.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- gnu/java/awt/peer/gtk/CairoSurface.java     7 Jun 2006 09:40:54 -0000       
1.7
+++ gnu/java/awt/peer/gtk/CairoSurface.java     10 Jun 2006 10:33:18 -0000      
1.8
@@ -95,35 +95,51 @@
   /**
    * Destroys the cairo surface and frees the buffer.
    */
-  private native void destroy();
+  private native void destroy(long surfacePointer, long bufferPointer);
 
   /**
    * Gets buffer elements
    */
-  private native int nativeGetElem(int i);
+  private native int nativeGetElem(long bufferPointer, int i);
   
   /**
    * Sets buffer elements.
    */
-  private native void nativeSetElem(int i, int val);
+  private native void nativeSetElem(long bufferPointer, int i, int val);
 
   /**
    * Draws this image to a given CairoGraphics context, 
    * with an affine transform given by i2u.
    */
-  public native void drawSurface(CairoGraphics2D context, double[] i2u);
+  public native void nativeDrawSurface(long surfacePointer, long 
contextPointer,
+                                       double[] i2u);
+
+  public void drawSurface(long contextPointer, double[] i2u)
+  {
+    nativeDrawSurface(surfacePointer, contextPointer, i2u);
+  }
 
   /**
    * getPixels -return the pixels as a java array.
    */
-  native int[] getPixels(int size);
+  native int[] nativeGetPixels(long bufferPointer, int size);
+
+  public int[] getPixels(int size)
+  {
+    return nativeGetPixels(bufferPointer, size);
+  }
 
   /**
    * getPixels -return the pixels as a java array.
    */
-  native void setPixels(int[] pixels);
+  native void nativeSetPixels(long bufferPointer, int[] pixels);
+
+  public void setPixels(int[] pixels)
+  {
+    nativeSetPixels(bufferPointer, pixels);
+  }
 
-  native long getFlippedBuffer(int size);
+  native long getFlippedBuffer(long bufferPointer, int size);
 
   /**
    * Create a cairo_surface_t with specified width and height.
@@ -195,7 +211,7 @@
   public void dispose()
   {
     if(surfacePointer != 0)
-      destroy();
+      destroy(surfacePointer, bufferPointer);
   }
 
   /**
@@ -211,7 +227,8 @@
    */
   public GtkImage getGtkImage()
   {
-    return new GtkImage( width, height, getFlippedBuffer( width * height ));
+    return new GtkImage( width, height,
+                         getFlippedBuffer(bufferPointer, width * height ));
   }
 
   /**
@@ -251,7 +268,7 @@
   {
     if(bank != 0 || i < 0 || i >= width*height)
       throw new IndexOutOfBoundsException(i+" size: "+width*height);
-    return nativeGetElem(i);
+    return nativeGetElem(bufferPointer, i);
   }
   
   /**
@@ -261,7 +278,7 @@
   {
     if(bank != 0 || i < 0 || i >= width*height)
       throw new IndexOutOfBoundsException(i+" size: "+width*height);
-    nativeSetElem(i, val);
+    nativeSetElem(bufferPointer, i, val);
   }
 
   /**
@@ -277,12 +294,22 @@
    * Creates a cairo_t drawing context, returns the pointer as a long.
    * Used by CairoSurfaceGraphics.
    */
-  native long newCairoContext();
+  native long nativeNewCairoContext(long surfacePointer);
+
+  public long newCairoContext()
+  {
+    return nativeNewCairoContext(surfacePointer);
+  }
 
   /**
    * Copy an area of the surface. Expects parameters must be within bounds. 
    * Count on a segfault otherwise.
    */
-  native void copyAreaNative(int x, int y, int width, int height, 
-                            int dx, int dy, int stride);
+  native void copyAreaNative2(long bufferPointer, int x, int y, int width,
+                             int height, int dx, int dy, int stride);
+  public void copyAreaNative(int x, int y, int width,
+                             int height, int dx, int dy, int stride)
+  {
+    copyAreaNative2(bufferPointer, x, y, width, height, dx, dy, stride);
+  }
 }

Index: gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java     2 Jun 2006 22:57:31 
-0000       1.4
+++ gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java     10 Jun 2006 10:33:18 
-0000      1.5
@@ -40,6 +40,7 @@
 
 import java.awt.Graphics;
 import java.awt.Color;
+import java.awt.GraphicsEnvironment;
 import java.awt.Image;
 import java.awt.Point;
 import java.awt.Graphics2D;
@@ -85,7 +86,7 @@
   
   public GraphicsConfiguration getDeviceConfiguration()
   {
-    throw new UnsupportedOperationException();
+    return 
GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration();
   }
   
   protected Rectangle2D getRealBounds()

Index: gnu/java/awt/peer/gtk/ComponentGraphics.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/ComponentGraphics.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- gnu/java/awt/peer/gtk/ComponentGraphics.java        7 Jun 2006 09:40:54 
-0000       1.11
+++ gnu/java/awt/peer/gtk/ComponentGraphics.java        10 Jun 2006 10:33:18 
-0000      1.12
@@ -104,8 +104,8 @@
    */
   public void dispose()
   {
-    disposeSurface(nativePointer);
     super.dispose();
+    disposeSurface(nativePointer);
   }
 
   /**
@@ -138,7 +138,7 @@
                                     int width, int height, int dx, int dy);
 
   private native void drawVolatile(GtkComponentPeer component,
-                                  Image vimg, int x, int y, 
+                                  long vimg, int x, int y, 
                                   int width, int height);
 
   /**
@@ -219,9 +219,9 @@
   {
     if( img instanceof GtkVolatileImage )
       {
-       drawVolatile( component, img, x, y - 20,
-                     ((GtkVolatileImage)img).width, 
-                     ((GtkVolatileImage)img).height );
+        GtkVolatileImage vimg = (GtkVolatileImage) img;
+       drawVolatile( component, vimg.nativePointer,
+                      x, y - 20, vimg.width, vimg.height );
        return true;
       }      
     return super.drawImage( img, x, y, observer );
@@ -232,7 +232,8 @@
   {
     if( img instanceof GtkVolatileImage )
       {
-       drawVolatile( component, img, x, y - 20, 
+        GtkVolatileImage vimg = (GtkVolatileImage) img;
+       drawVolatile( component, vimg.nativePointer, x, y - 20, 
                      width, height );
        return true;
       }      

Index: gnu/java/awt/peer/gtk/GtkVolatileImage.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/GtkVolatileImage.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- gnu/java/awt/peer/gtk/GtkVolatileImage.java 6 Jun 2006 02:22:28 -0000       
1.6
+++ gnu/java/awt/peer/gtk/GtkVolatileImage.java 10 Jun 2006 10:33:18 -0000      
1.7
@@ -57,13 +57,27 @@
 
   native long init(GtkComponentPeer component, int width, int height);
 
-  native void destroy();
+  native void destroy(long pointer);
 
-  native int[] getPixels();
+  native int[] nativeGetPixels(long pointer);
+  public int[] getPixels()
+  {
+    return nativeGetPixels(nativePointer);
+  }
 
-  native void copyArea( int x, int y, int w, int h, int dx, int dy );
+  native void nativeCopyArea(long pointer, int x, int y, int w, int h, int dx,
+                             int dy );
+  public void copyArea(int x, int y, int w, int h, int dx, int dy)
+  {
+    nativeCopyArea(nativePointer, x, y, w, h, dx, dy);
+  }
 
-  native void drawVolatile( long ptr, int x, int y, int w, int h );
+  native void nativeDrawVolatile(long pointer, long srcPtr, int x, int y,
+                                 int w, int h );
+  public void drawVolatile(long srcPtr, int x, int y, int w, int h )
+  {
+    nativeDrawVolatile(nativePointer, srcPtr, x, y, w, h);
+  }
   
   public GtkVolatileImage(GtkComponentPeer component, 
                          int width, int height, ImageCapabilities caps)
@@ -91,7 +105,7 @@
 
   public void dispose()
   {
-    destroy();
+    destroy(nativePointer);
   }
 
   public BufferedImage getSnapshot()




reply via email to

[Prev in Thread] Current Thread [Next in Thread]