PatchSet 7280 Date: 2006/05/04 00:29:34 Author: riccardo Branch: HEAD Tag: (none) Log: changed default char back to Lucida
Members: ChangeLog:1.4784->1.4785 libraries/clib/awt/X/fnt.c:1.18->1.19 libraries/javalib/awt-implementations/kaffe/java/awt/Defaults.java:1.2->1.3 Index: kaffe/ChangeLog diff -u kaffe/ChangeLog:1.4784 kaffe/ChangeLog:1.4785 --- kaffe/ChangeLog:1.4784 Tue May 2 20:38:47 2006 +++ kaffe/ChangeLog Thu May 4 00:29:34 2006 @@ -1,3 +1,10 @@ +2006-05-04 Riccardo Mottola <[EMAIL PROTECTED]> + + * libraries/clib/awt/X/fnt.c: + fixed seriously broken charWidth implementation + * libraries/javalib/awt-implementations/kaffe/java/awt/Defaults.java: + changed default char back to Lucida + 2006-05-02 Riccardo Mottola <[EMAIL PROTECTED]> * libraries/javalib/awt-implementations/kaffe/java/awt/Font.java: Index: kaffe/libraries/clib/awt/X/fnt.c diff -u kaffe/libraries/clib/awt/X/fnt.c:1.18 kaffe/libraries/clib/awt/X/fnt.c:1.19 --- kaffe/libraries/clib/awt/X/fnt.c:1.18 Tue Oct 25 15:43:26 2005 +++ kaffe/libraries/clib/awt/X/fnt.c Thu May 4 00:29:38 2006 @@ -3,6 +3,8 @@ * * Copyright (c) 1998 * Transvirtual Technologies, Inc. All rights reserved. + * Copyright (c) 2006 + * Kaffe.org developers. See ChangeLog for details. * * See the file "license.terms" for information on usage and redistribution * of this file. @@ -215,11 +217,37 @@ return xfse->max_logical_extent.height-(-xfse->max_logical_extent.y); } +// We want to return a width if the font is fixed, else 0 KAFFE_FONT_FUNC_DECL( jint, Java_java_awt_Toolkit_fntGetFixedWidth ) { - XFontSetExtents *xfse=XExtentsOfFontSet(UNVEIL_XOC(xoc)); - return ( xfse->max_logical_extent.width == xfse->max_ink_extent.width ) ? - xfse->max_logical_extent.width : 0; + XFontSet *fontSet; + XFontStruct **fontStructList; + char **fontNameList; + fontSet = UNVEIL_XOC(xoc); + Atom atom; + unsigned long retValue; + char *atomValue; + int isFixedWidth; + + // we create an atom to query the font properties + atom = XInternAtom( X->dsp, "SPACING", 0); + + // we get the font structure + XFontsOfFontSet(fontSet, &fontStructList, &fontNameList); + + isFixedWidth = 0; + if (XGetFontProperty(fontStructList[0], atom, &retValue)) { + atomValue = XGetAtomName(X->dsp, (Atom)retValue); + if (atomValue != NULL) { + if (atomValue[0] == 'C' || atomValue[0] == 'M') { + // we have a fixed with font + XFontSetExtents *xfse=XExtentsOfFontSet(fontSet); + return xfse->max_logical_extent.width; + } + } + XFree(atomValue); + } + return 0; } KAFFE_FONT_FUNC_DECL( jint, Java_java_awt_Toolkit_fntGetHeight ) Index: kaffe/libraries/javalib/awt-implementations/kaffe/java/awt/Defaults.java diff -u kaffe/libraries/javalib/awt-implementations/kaffe/java/awt/Defaults.java:1.2 kaffe/libraries/javalib/awt-implementations/kaffe/java/awt/Defaults.java:1.3 --- kaffe/libraries/javalib/awt-implementations/kaffe/java/awt/Defaults.java:1.2 Tue Apr 25 22:14:05 2006 +++ kaffe/libraries/javalib/awt-implementations/kaffe/java/awt/Defaults.java Thu May 4 00:29:38 2006 @@ -423,8 +423,8 @@ int res = (ScreenWidth > 1024) ? 100 : 75; String fntCat = Integer.toString(res) + '-' + res + "-*-*-*-*"; - //FsDefault = "-b&h-lucida-%s-%s-*-*-*-%d-" + fntCat; - FsDefault = "-adobe-helvetica-%s-%s-*-*-*-%d-" + fntCat; + FsDefault = "-*-lucida-%s-%s-*-*-*-%d-" + fntCat; + //FsDefault = "-adobe-helvetica-%s-%s-*-*-*-%d-" + fntCat; FsMonospaced = "-adobe-courier-%s-%s-*-*-*-%d-" + fntCat; FsSansSerif = "-adobe-helvetica-%s-%s-*-*-*-%d-" + fntCat; FsSerif = "-adobe-times-%s-%s-*-*-*-%d-" + fntCat; _______________________________________________ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe