sekel: Well, you didn't ask my question. I said above i don't need UTF8 support because i solved the problem by changing my locale. Consequently i don't see reason to make any efforts for UTF8 support.
I won't say you can't solve your problems this way, but I think you will face problems on the future by doing this.
It is one thing to get your app running on your machine. To get it running on any Linux machine is something completely different.
I have a medium cross-platform project working with accented characters (it has translations to several languages) on both win32 and gtk2. it's gpl, so you can download the sources and see how I made it work across all target machines here:
http://magnifier.sourceforge.net/All distributions that I know about are removing non-utf-8 encodings support, so your application may have trouble running on new distributions.
Further, Gtk 1 itself is already old, you will need to convert to Gtk 2 on the future. I actually use Gtk 2 for most of my projects. And Gtk 2 *only* support UTF-8
The question is: where Lazarus gets info about font it use in captions of form?
Afaik it doesn't get it from anywhere. It just passes the string you provided to Gtk without any modifications. Gtk handles it as he likes, or better: as he is configured to.
We will prefer to spend this time moving to KDevelop for example.
Unless you only write GPL software, a Qt license costs 1000 euros per developer per platforms. Further, try reading their license. It's absurdely restrictive.
Also, KDevelop only works on Linux, and if you use any KDE components your app will also only work on Linux. Lazarus runs on Windows, Macintosh, all Unixes, cross-compiles to Windows CE, etc.
It is actually much cheaper to pay someone to implement utf-8 support on SynEdit.