[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [cp-patches] FYI: GdkGraphics fix
From: |
Robert Schuster |
Subject: |
Re: [cp-patches] FYI: GdkGraphics fix |
Date: |
Tue, 22 Nov 2005 12:35:40 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; de-AT; rv:1.7.12) Gecko/20051005 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Lillian,
this broke text drawing considerably. All the spaces in labels, textfields etc
are missing now.
Lillian Angel wrote:
>> public class GdkGraphics extends Graphics
>> {
>>@@ -247,10 +247,13 @@
>> native void drawString (GdkFontPeer f, String str, int x, int y);
>> public void drawString (String str, int x, int y)
>> {
>>+ // FIXME: Possibly more characters we need to ignore/
>>+ // Also, implementation may be inefficent because allocating
>>+ // new Strings.
The reason for this is here:
>>+ str = Pattern.compile("[\b | \t | \n | \f | \r | \" |
>>\']").matcher(str).replaceAll("");
I guess you added the spaces to let the regexp look a bit nicer but this
actually means that the expression will match space characters. The correct
expression would be: "[\b|\t|\n|\f|\r|\"|\']"
Apart from that I think Mark is right here. Doing the filtering in C would
result in better performance. You could implement a special variant of the JNI
function that makes Java Strings available as C strings and filter unwanted
characters in it.
cya
Robert
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFDgwKMG9cfwmwwEtoRAuc4AJ9vJz9to+lDFTchIs1qtPTOnwyoggCeJp5d
dFgnMuaS2/DCWKmYZMCP/Sk=
=z6rn
-----END PGP SIGNATURE-----
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [cp-patches] FYI: GdkGraphics fix,
Robert Schuster <=