- Unicode

From: Treutwein Bernhard <"Treutwein>
Date: Thu, 27 Oct 2005 10:16:57 +0200

----boundary-LibPST-iamunique-1341788522_-_-
Content-type: text/plain

> I guess that BB still uses A everywhere. If so the only way
> to enable Unicode is to recompile BB by using all W data
> types, function calls etc. (... and then hope that it doesn't
> break elsewhere).

right, I fear there is no way around recompilation, and
thorough checking the HostXyz modules. It may be feasible
to (auto?)-scan through the interfaces and replace:

<excerpts from WinApi.Mod>:

        PROCEDURE FormatMessage* ["FormatMessageA"] (dwFlags: SET; lpSource:
PtrVoid; dwMessageId: INTEGER; dwLanguageId: INTEGER; lpBuffer: PtrSTR;
nSize: INTEGER; VAR [nil] Arguments: PtrSTR): INTEGER;

by:

        PROCEDURE FormatMessage* ["FormatMessageW"] (dwFlags: SET; lpSource:
PtrVoid; dwMessageId: INTEGER; dwLanguageId: INTEGER; lpBuffer: PtrSTR;
nSize: INTEGER; VAR [nil] Arguments: PtrSTR): INTEGER;

This change will (almost shure) lead to an awful lot of problems,
since the parameters to these calls must be adjusted to contain
unicode strings and all these interface modules use dirty low level
stuff.

Moreover, this will break backward compatibility with Win9x ...
--
   Bernhard Treutwein
   Bernhard Treutwein(at)verwaltung uni-muenchen de
> -----Original Message-----
> From: blackbox{([at]})nowhere.xy> Behalf Of Hof, Philipp
> Sent: Wednesday, October 26, 2005 10:21 PM
> To: BlackBox Mailing List
> Subject: [BlackBox] - AW: [BlackBox] - Pascal to Component 
> Pascal translator & Name Translation & Character Translation 
> to Unicode
> 
> 
> >I can't use Unicode in string constant (ARRAY OF CHAR)
> I haven't followed all the mails regarding this topic and 
> above all this is wild guess (without having verified the BB 
> source code):
> 
> Many Windows data types, APIs etc. exist twice with endings A 
> and W. E.g.: WINGDIAPI BOOL  WINAPI GetCharWidthA( IN HDC, IN 
> UINT, IN UINT, OUT LPINT); WINGDIAPI BOOL  WINAPI 
> GetCharWidthW( IN HDC, IN UINT, IN UINT, OUT LPINT);
> 
> where W is the Unicode version.
> 
> I guess that BB still uses A everywhere. If so the only way 
> to enable Unicode is to recompile BB by using all W data 
> types, function calls etc. (... and then hope that it doesn't 
> break elsewhere).
> 
> Philipp
> 
> --- BlackBox
> --- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy> 
> 
--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy----boundary-LibPST-iamunique-1341788522_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwID4gSSBndWVzcyB0aGF0IEJCIHN0aWxsIHVzZXMg
QSBldmVyeXdoZXJlLiBJZiBzbyB0aGUgb25seSB3YXkgXHBhcg0KPiB0byBlbmFibGUgVW5pY29k
ZSBpcyB0byByZWNvbXBpbGUgQkIgYnkgdXNpbmcgYWxsIFcgZGF0YSBccGFyDQo+IHR5cGVzLCBm
dW5jdGlvbiBjYWxscyBldGMuICguLi4gYW5kIHRoZW4gaG9wZSB0aGF0IGl0IGRvZXNuJ3QgXHBh
cg0KPiBicmVhayBlbHNld2hlcmUpLlxwYXINClxwYXINCnJpZ2h0LCBJIGZlYXIgdGhlcmUgaXMg
bm8gd2F5IGFyb3VuZCByZWNvbXBpbGF0aW9uLCBhbmRccGFyDQp0aG9yb3VnaCBjaGVja2luZyB0
aGUgSG9zdFh5eiBtb2R1bGVzLiBJdCBtYXkgYmUgZmVhc2libGUgXHBhcg0KdG8gKGF1dG8/KS1z
Y2FuIHRocm91Z2ggdGhlIGludGVyZmFjZXMgYW5kIHJlcGxhY2U6XHBhcg0KXHBhcg0KPGV4Y2Vy
cHRzIGZyb20gV2luQXBpLk1vZD46XHBhcg0KXHBhcg0KXHRhYiBQUk9DRURVUkUgRm9ybWF0TWVz
c2FnZSogWyJGb3JtYXRNZXNzYWdlQSJdIChkd0ZsYWdzOiBTRVQ7IGxwU291cmNlOlxwYXINClB0
clZvaWQ7IGR3TWVzc2FnZUlkOiBJTlRFR0VSOyBkd0xhbmd1YWdlSWQ6IElOVEVHRVI7IGxwQnVm
ZmVyOiBQdHJTVFI7XHBhcg0KblNpemU6IElOVEVHRVI7IFZBUiBbbmlsXSBBcmd1bWVudHM6IFB0
clNUUik6IElOVEVHRVI7XHBhcg0KXHBhcg0KYnk6XHBhcg0KXHBhcg0KXHRhYiBQUk9DRURVUkUg
Rm9ybWF0TWVzc2FnZSogWyJGb3JtYXRNZXNzYWdlVyJdIChkd0ZsYWdzOiBTRVQ7IGxwU291cmNl
OlxwYXINClB0clZvaWQ7IGR3TWVzc2FnZUlkOiBJTlRFR0VSOyBkd0xhbmd1YWdlSWQ6IElOVEVH
RVI7IGxwQnVmZmVyOiBQdHJTVFI7XHBhcg0KblNpemU6IElOVEVHRVI7IFZBUiBbbmlsXSBBcmd1
bWVudHM6IFB0clNUUik6IElOVEVHRVI7XHBhcg0KXHBhcg0KVGhpcyBjaGFuZ2Ugd2lsbCAoYWxt
b3N0IHNodXJlKSBsZWFkIHRvIGFuIGF3ZnVsIGxvdCBvZiBwcm9ibGVtcywgXHBhcg0Kc2luY2Ug
dGhlIHBhcmFtZXRlcnMgdG8gdGhlc2UgY2FsbHMgbXVzdCBiZSBhZGp1c3RlZCB0byBjb250YWlu
IFxwYXINCnVuaWNvZGUgc3RyaW5ncyBhbmQgYWxsIHRoZXNlIGludGVyZmFjZSBtb2R1bGVzIHVz
ZSBkaXJ0eSBsb3cgbGV2ZWxccGFyDQpzdHVmZi5ccGFyDQpccGFyDQpNb3Jlb3ZlciwgdGhpcyB3
aWxsIGJyZWFrIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2l0aCBXaW45eCAuLi5ccGFyDQotLVxw
YXINCiAgIEJlcm5oYXJkIFRyZXV0d2VpblxwYXINCiAgIEJlcm5oYXJkIFRyZXV0d2VpbihhdCl2
ZXJ3YWx0dW5nIHVuaS1tdWVuY2hlbiBkZVxwYXINClxwYXINClxwYXINCj4gLS0tLS1PcmlnaW5h
bCBNZXNzYWdlLS0tLS1ccGFyDQo+IEZyb206IGJsYWNrYm94QG9iZXJvbi5jaCBbbWFpbHRvOmJs
YWNrYm94QG9iZXJvbi5jaF0gT24gXHBhcg0KPiBCZWhhbGYgT2YgSG9mLCBQaGlsaXBwXHBhcg0K
PiBTZW50OiBXZWRuZXNkYXksIE9jdG9iZXIgMjYsIDIwMDUgMTA6MjEgUE1ccGFyDQo+IFRvOiBC
bGFja0JveCBNYWlsaW5nIExpc3RccGFyDQo+IFN1YmplY3Q6IFtCbGFja0JveF0gLSBBVzogW0Js
YWNrQm94XSAtIFBhc2NhbCB0byBDb21wb25lbnQgXHBhcg0KPiBQYXNjYWwgdHJhbnNsYXRvciAm
IE5hbWUgVHJhbnNsYXRpb24gJiBDaGFyYWN0ZXIgVHJhbnNsYXRpb24gXHBhcg0KPiB0byBVbmlj
b2RlXHBhcg0KPiBccGFyDQo+IFxwYXINCj4gPkkgY2FuJ3QgdXNlIFVuaWNvZGUgaW4gc3RyaW5n
IGNvbnN0YW50IChBUlJBWSBPRiBDSEFSKVxwYXINCj4gSSBoYXZlbid0IGZvbGxvd2VkIGFsbCB0
aGUgbWFpbHMgcmVnYXJkaW5nIHRoaXMgdG9waWMgYW5kIFxwYXINCj4gYWJvdmUgYWxsIHRoaXMg
aXMgd2lsZCBndWVzcyAod2l0aG91dCBoYXZpbmcgdmVyaWZpZWQgdGhlIEJCIFxwYXINCj4gc291
cmNlIGNvZGUpOlxwYXINCj4gXHBhcg0KPiBNYW55IFdpbmRvd3MgZGF0YSB0eXBlcywgQVBJcyBl
dGMuIGV4aXN0IHR3aWNlIHdpdGggZW5kaW5ncyBBIFxwYXINCj4gYW5kIFcuIEUuZy46IFdJTkdE
SUFQSSBCT09MICBXSU5BUEkgR2V0Q2hhcldpZHRoQSggSU4gSERDLCBJTiBccGFyDQo+IFVJTlQs
IElOIFVJTlQsIE9VVCBMUElOVCk7IFdJTkdESUFQSSBCT09MICBXSU5BUEkgXHBhcg0KPiBHZXRD
aGFyV2lkdGhXKCBJTiBIREMsIElOIFVJTlQsIElOIFVJTlQsIE9VVCBMUElOVCk7XHBhcg0KPiBc
cGFyDQo+IHdoZXJlIFcgaXMgdGhlIFVuaWNvZGUgdmVyc2lvbi5ccGFyDQo+IFxwYXINCj4gSSBn
dWVzcyB0aGF0IEJCIHN0aWxsIHVzZXMgQSBldmVyeXdoZXJlLiBJZiBzbyB0aGUgb25seSB3YXkg
XHBhcg0KPiB0byBlbmFibGUgVW5pY29kZSBpcyB0byByZWNvbXBpbGUgQkIgYnkgdXNpbmcgYWxs
IFcgZGF0YSBccGFyDQo+IHR5cGVzLCBmdW5jdGlvbiBjYWxscyBldGMuICguLi4gYW5kIHRoZW4g
aG9wZSB0aGF0IGl0IGRvZXNuJ3QgXHBhcg0KPiBicmVhayBlbHNld2hlcmUpLlxwYXINCj4gXHBh
cg0KPiBQaGlsaXBwXHBhcg0KPiBccGFyDQo+IC0tLSBCbGFja0JveFxwYXINCj4gLS0tIHNlbmQg
c3ViamVjdCBIRUxQIG9yIFVOU1VCU0NSSUJFIHRvIGJsYWNrYm94QG9iZXJvbi5jaFxwYXINCj4g
XHBhcg0KPiBccGFyDQpccGFyDQotLS0gQmxhY2tCb3hccGFyDQotLS0gc2VuZCBzdWJqZWN0IEhF
TFAgb3IgVU5TVUJTQ1JJQkUgdG8gYmxhY2tib3hAb2Jlcm9uLmNoXHBhcg0KfX0ALmRlIA=
----boundary-LibPST-iamunique-1341788522_-_---
Received on Thu Oct 27 2005 - 10:16:57 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:28:07 UTC