Thanks for the response.
Reasonably sure data is good - as I mentioned, it display correctly in
Tk and on the command line when you run perl with a -C.
I'm building a new wxperl right now to compare against, but I will take
your advice and try that simple test.
As far a fonts go, I removed all font assignments and went with with
defaults - problem still exists.
If anyone else has any ideas I'd like to hear them.
Thanks again,
Jeff
On 8/4/2010 4:12 PM, Huub Peters wrote:
It's been a while since I've done stuff in wxPerl but I'm absolutely sure I
could display unicode characters without problems.
What do you mean exactly when you say unicode? What is the used encoding? UTF-8?
Here are some ideas:
- Did you test Mattia's suggestion? Unicode and databases are known to cause
weird troubles that are hard to identify
- Try creating a test app and let it read from a test textfile of which you are sure that it's UTF-8
encoded ( maybe even create it with something like open(my $fh, ">:encoding(UTF-8)",
"test.txt")
- As you mentioned in another reply, font can most definitely be a culprit.
Lots of (older) fonts can't display characters beyond the ascii or latin-1 set.
Don't ditch wxPerl yet. It really is a powerful versatile toolset.
Cheers,
Huub
On Aug 4, 2010, at 9:53 PM, perltk wrote:
Has anyone got any ideas? Unfortunately, this isn't an inconvience for us -
this
is a show stopper.
Trying to move off perltk and the new Guis are looking good, but if we can not
display
unicode characters wxperl is dead for us :-(
On 8/4/2010 8:16 AM, Mattia Barbon wrote:
perltk wrote:
I have an app that is reading from a database. Some of the names
include unicode characters:
Heres are some print statement output when running app:
perl uwi_flip.pl
Well ==> HENW_Letebr?nner
perl -C uwi_flip.pl
Well ==> HENW_Letebrønner
Any names with these characters in them do not display in widgets - they are
blank.
No errors, just blank. The wxwidgets .so should be unicode.
Yes, they are.
What am I missing ?????
Are you sure that the strings you read from the database have the Unicode
flag set when read from the database? You can use the Dump() function from
Devel::Peek to check if the scalar has the Unicode bit set.
If the Unicode bit is not set on the scalar, the conversion from Perl scalar
to wxString should use the encoding of your current locale, but I can't
remember if if uses the system locale or (more likely) the locale set with
wxLocale.
HTH,
Mattia