[PATCH] various graphics2d fixes
graydon hoare
graydon@redhat.com
Tue Nov 18 18:41:00 GMT 2003
hi,
these are just miscellaneous fixes which have accumulated to the
graphics2d implementation I did atop cairo. nothing revolutionary,
just a lot of minor fixups, so I bundled them up here in one
patch. changes to other areas (eg. swing) will follow in separate
patches.
comments? ok to commit?
-graydon
(patch is against gcj's libjava, but I'm also asking classpath because
a similar one with pathnames altered is implied, for it)
2003-11-17 Graydon Hoare <graydon@redhat.com>
* gnu/java/awt/peer/gtk/GdkClasspathFontPeerMetrics.java: New file.
* gnu/java/awt/peer/gtk/GdkClasspathFontPeer.java
(GdkFontLineMetrics): New inner class.
(getLineMetrics): Return new GdkFontLineMetrics.
(getFontMetrics): Return new GdkClasspathFontPeerMetrics.
(layoutGlyphVector): Create GdkGlyphVector.
* gnu/java/awt/peer/gtk/GdkGraphics2D.java (stateStack): New member.
(GdkGraphics2D): Initialize state via mathod calls.
(cairoSetMatrix, cairoShowGlyphs): Simplify native calls.
(cairoTranslate, cairoScale, cairoRotate): Remove.
(various methods): use setTransform for special transform cases.
(DrawState): New inner class.
(stateSave): New method.
(stateRestore): New method.
(various methods): use stateSave, stateRestore.
(getClipInDevSpace): New method.
(clip, clipRect, setClip, getClip, getClipBounds):
Follow spec more closely.
(getTransform): Return clone of transform.
(setStroke): Set linewidth to passed width / 2.0.
(setPaintMode): Set SrcOver rather than Xor.
(setColor): Set paint to passed color.
(drawRaster, drawImage, PainterThread, drawPixels): Take affine
transform from image to user space.
(drawRenderedImage, drawRenderableImage): Implement.
(getFontRenderContext, getFontMetrics, drawString, getFont):
Implement
(drawArc, drawOval, drawRoundRect, fillArc, fillOval, fillRoundRect):
Implement.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c:
Match changes to java side.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeer.c:
Release resources.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGlyphVector.c:
Don't use pango for metrics.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeerMetrics.c:
New file.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: GdkClasspathFontPeerMetrics.java
Type: application/octet-stream
Size: 3504 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/java/attachments/20031118/407fa15e/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gnu_java_awt_peer_gtk_GdkClasspathFontPeerMetrics.c
Type: application/octet-stream
Size: 3448 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/java/attachments/20031118/407fa15e/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: j2d-graphics2d-fixes-for-gcj.patch
Type: text/x-patch
Size: 45264 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/java/attachments/20031118/407fa15e/attachment.bin>
More information about the Java
mailing list