configure.in: Add --enable-gtk-cairo check.

2003-12-16  Graydon Hoare  <graydon@redhat.com>

	* configure.in: Add --enable-gtk-cairo check.
	* configure: Regenerate.
	* Makefile.am: Conditionally link against cairo.
	* Makefile.in: Regenerate.
	* acinclude.m4: Include PKG_CHECK_MODULES.
	* aclocal.m4: Regenerate.
	* gnu/java/awt/peer/gtk/GtkToolkit.java (useGraphics2D): New method.
	(getFontMetrics, getClasspathFontPeer):
	* gnu/java/awt/peer/gtk/GtkCanvasPeer.java (getGraphics):
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (createImage):
	* gnu/java/awt/peer/gtk/GtkContainerPeer.java (getGraphics):
	* gnu/java/awt/peer/gtk/GtkFramePeer.java (getGraphics):
	Switch behavior depending on GtkToolkit.useGraphics2D().
	* gnu/java/awt/peer/gtk/GtkFontPeer.java: Extend ClasspathFontPeer.
	* java/awt/Font.java: Switch to peer model.
	* jni/gtk-peer/gtkcairopeer.h: Definitions of cairo stuff.
	* jni/gtk-peer/gdkfont.h: Include gtkcairopeer.h.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c: Include gtkcairopeer.h.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeerMetrics.c: Un-include gtkpeer.h.

From-SVN: r75260
This commit is contained in:
Graydon Hoare 2003-12-31 08:58:31 +00:00
parent 4f0c9c8a87
commit 8fe7789edd
17 changed files with 1456 additions and 732 deletions

View file

@ -38,10 +38,15 @@ exception statement from your version. */
package gnu.java.awt.peer.gtk;
import java.awt.peer.FontPeer;
import java.awt.Font;
import java.awt.*;
import java.awt.geom.*;
import java.awt.font.*;
import java.util.Locale;
import java.util.ResourceBundle;
import java.text.*;
import gnu.java.awt.peer.ClasspathFontPeer;
public class GtkFontPeer implements FontPeer
public class GtkFontPeer extends ClasspathFontPeer
{
private static ResourceBundle bundle;
@ -61,6 +66,8 @@ public class GtkFontPeer implements FontPeer
public GtkFontPeer (String name, int style)
{
super(name, style, 12 /* kludge */);
if (bundle != null)
Xname = bundle.getString (name.toLowerCase () + "." + style);
else
@ -91,4 +98,104 @@ public class GtkFontPeer implements FontPeer
{
return Xname;
}
/* remaining methods are for static compatibility with the newer
ClasspathFontPeer superclass; none of these methods ever existed or
worked on the older FontPeer interface, but we need to pretend to
support them anyways. */
public boolean canDisplay (Font font, char c)
{
throw new UnsupportedOperationException();
}
public int canDisplayUpTo (Font font, CharacterIterator i, int start, int limit)
{
throw new UnsupportedOperationException();
}
public String getSubFamilyName (Font font, Locale locale)
{
throw new UnsupportedOperationException();
}
public String getPostScriptName (Font font)
{
throw new UnsupportedOperationException();
}
public int getNumGlyphs (Font font)
{
throw new UnsupportedOperationException();
}
public int getMissingGlyphCode (Font font)
{
throw new UnsupportedOperationException();
}
public byte getBaselineFor (Font font, char c)
{
throw new UnsupportedOperationException();
}
public String getGlyphName (Font font, int glyphIndex)
{
throw new UnsupportedOperationException();
}
public GlyphVector createGlyphVector (Font font,
FontRenderContext frc,
CharacterIterator ci)
{
throw new UnsupportedOperationException();
}
public GlyphVector createGlyphVector (Font font,
FontRenderContext ctx,
int[] glyphCodes)
{
throw new UnsupportedOperationException();
}
public GlyphVector layoutGlyphVector (Font font,
FontRenderContext frc,
char[] chars, int start,
int limit, int flags)
{
throw new UnsupportedOperationException();
}
public FontMetrics getFontMetrics (Font font)
{
throw new UnsupportedOperationException();
}
public boolean hasUniformLineMetrics (Font font)
{
throw new UnsupportedOperationException();
}
public LineMetrics getLineMetrics (Font font,
CharacterIterator ci,
int begin, int limit,
FontRenderContext rc)
{
throw new UnsupportedOperationException();
}
public Rectangle2D getMaxCharBounds (Font font,
FontRenderContext rc)
{
throw new UnsupportedOperationException();
}
public Rectangle2D getStringBounds (Font font,
CharacterIterator ci,
int begin, int limit,
FontRenderContext frc)
{
throw new UnsupportedOperationException();
}
}