Actually Aric and Ulrich helped a lot and they provided us the patch you Codeweavers did for your clients and Aric has gained permission to open the source. Since he needs to clean up the code, he suggested to let him post the patch when it's done.
I used it to try for Chinese Input on Notes Client r6. Unfortunately, it only works on some controls. When I want to type Chinese/Japanese on the mail content area ( do not know what kind of widget it is), it doesn't show properly. I think it's a bug. Could you kindly help? Which segment of code I should trace on?
I have not used Notes R6 extensively but based on my understanding of the Notes R4 - R5 code, the mail content area is a Notes Rich Text field, which is implemented internally to Notes. It's not a Windows control therefore will not be responsive to code that hooks into Windows controls.
Notes is localized for many countries,including, I think, Chinese, although the Notes R6 Beta is probably US-English only. I suggest you experiment with a copy of Notes R5 with Chinese localization.
If you need technical details on how localized versions of Notes handle alternate keyboard input methods, let me know and I'll see what I can dig up.
Regards,
Dan Schwarz http://www.winecentric.com/wiki The Wine Wiki
Daniel Schwarz wrote:
Actually Aric and Ulrich helped a lot and they provided us the patch you Codeweavers did for your clients and Aric has gained permission to open the source. Since he needs to clean up the code, he suggested to let him post the patch when it's done.
I used it to try for Chinese Input on Notes Client r6. Unfortunately, it only works on some controls. When I want to type Chinese/Japanese on the mail content area ( do not know what kind of widget it is), it doesn't show properly. I think it's a bug. Could you kindly help? Which segment of code I should trace on?
I have not used Notes R6 extensively but based on my understanding of the Notes R4 - R5 code, the mail content area is a Notes Rich Text field, which is implemented internally to Notes. It's not a Windows control therefore will not be responsive to code that hooks into Windows controls.
Notes is localized for many countries,including, I think, Chinese, although the Notes R6 Beta is probably US-English only. I suggest you experiment with a copy of Notes R5 with Chinese localization.
We have tried with R5 and the result was the same. and when I typed "你" (Chinese of "you"), I got unicode 4f60 in windows/defwnd.c
LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam );
case WM_IME_CHAR: charW = wParam; printf("DefWindowProcA WM_IME_CHAR %08x\n", charW); // I got it correct! - 4f60 (unicode of "you" in Chinese)
//Is there something wrong here?
{ CHAR chChar1 = (CHAR)( (wParam>>8) & 0xff ); CHAR chChar2 = (CHAR)( wParam & 0xff );
SendMessageA( hwnd, WM_CHAR, (WPARAM)chChar1, lParam ); if ( IsDBCSLeadByte( chChar1 ) ) SendMessageA( hwnd, WM_CHAR, (WPARAM)chChar2, lParam ); }
break;
If you need technical details on how localized versions of Notes handle alternate keyboard input methods, let me know and I'll see what I can dig up.
Regards,
Dan Schwarz http://www.winecentric.com/wiki The Wine Wiki
leanne wrote:
Daniel Schwarz wrote:
Actually Aric and Ulrich helped a lot and they provided us the patch you Codeweavers did for your clients and Aric has gained permission to open the source. Since he needs to clean up the code, he suggested to let him post the patch when it's done.
I used it to try for Chinese Input on Notes Client r6. Unfortunately, it only works on some controls. When I want to type Chinese/Japanese on the mail content area ( do not know what kind of widget it is), it doesn't show properly. I think it's a bug. Could you kindly help? Which segment of code I should trace on?
I have not used Notes R6 extensively but based on my understanding of the Notes R4 - R5 code, the mail content area is a Notes Rich Text field, which is implemented internally to Notes. It's not a Windows control therefore will not be responsive to code that hooks into Windows controls.
Notes is localized for many countries,including, I think, Chinese, although the Notes R6 Beta is probably US-English only. I suggest you experiment with a copy of Notes R5 with Chinese localization.
We have tried with R5 and the result was the same. and when I typed "你" (Chinese of "you"), I got unicode 4f60 in windows/defwnd.c
LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam );
case WM_IME_CHAR: charW = wParam; printf("DefWindowProcA WM_IME_CHAR %08x\n", charW); // I got it correct!
- 4f60 (unicode of "you" in Chinese)
//Is there something wrong here?
or it does not cater for Asian characters coz it seemed seperating 2 bytes to send for output. When I replaced with SendMessageA(hwnd, WM_CHAR, wParam, lParam);
It does not display any characters.
{ CHAR chChar1 = (CHAR)( (wParam>>8) & 0xff ); CHAR chChar2 = (CHAR)( wParam & 0xff );
SendMessageA( hwnd, WM_CHAR, (WPARAM)chChar1, lParam ); if ( IsDBCSLeadByte( chChar1 ) ) SendMessageA( hwnd, WM_CHAR, (WPARAM)chChar2, lParam ); }
break;
If you need technical details on how localized versions of Notes handle alternate keyboard input methods, let me know and I'll see what I can dig up.
Regards,
Dan Schwarz http://www.winecentric.com/wiki The Wine Wiki
leanne wrote:
leanne wrote:
Daniel Schwarz wrote:
Actually Aric and Ulrich helped a lot and they provided us the patch you Codeweavers did for your clients and Aric has gained permission to open the source. Since he needs to clean up the code, he suggested to let him post the patch when it's done.
I used it to try for Chinese Input on Notes Client r6. Unfortunately, it only works on some controls. When I want to type Chinese/Japanese on the mail content area ( do not know what kind of widget it is), it doesn't show properly. I think it's a bug. Could you kindly help? Which segment of code I should trace on?
I have not used Notes R6 extensively but based on my understanding of the Notes R4 - R5 code, the mail content area is a Notes Rich Text field, which is implemented internally to Notes. It's not a Windows control therefore will not be responsive to code that hooks into Windows controls.
Notes is localized for many countries,including, I think, Chinese, although the Notes R6 Beta is probably US-English only. I suggest you experiment with a copy of Notes R5 with Chinese localization.
We have tried with R5 and the result was the same. and when I typed "你" (Chinese of "you"), I got unicode 4f60 in windows/defwnd.c
LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam );
case WM_IME_CHAR: charW = wParam; printf("DefWindowProcA WM_IME_CHAR %08x\n", charW); // I got it correct!
- 4f60 (unicode of "you" in Chinese)
//Is there something wrong here?
or it does not cater for Asian characters coz it seemed seperating 2 bytes to send for output. When I replaced with SendMessageA(hwnd, WM_CHAR, wParam, lParam);
It does not display any characters.
or I should modify dlls/richedit/richedit.c?
Many thanks.
{ CHAR chChar1 = (CHAR)( (wParam>>8) & 0xff ); CHAR chChar2 = (CHAR)( wParam & 0xff );
SendMessageA( hwnd, WM_CHAR, (WPARAM)chChar1, lParam ); if ( IsDBCSLeadByte( chChar1 ) ) SendMessageA( hwnd, WM_CHAR, (WPARAM)chChar2, lParam ); }
break;
If you need technical details on how localized versions of Notes handle alternate keyboard input methods, let me know and I'll see what I can dig up.
Regards,
Dan Schwarz http://www.winecentric.com/wiki The Wine Wiki
"leanne" leanne@thizlinux.com wrote:
LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam );
case WM_IME_CHAR: charW = wParam; printf("DefWindowProcA WM_IME_CHAR %08x\n", charW); // I got it correct!
- 4f60 (unicode of "you" in Chinese)
//Is there something wrong here?
Something really wrong there. You shouldn't receive unicode characters in the ANSI (DefWindowProcA) message handler. Apparently mapping of WM_IME_CHAR and friends to/from unicode should be added in windows/winproc.c.
Just look how it was done for WM_CHAR, and try to add WM_IME_CHAR there.
Dmitry Timoshkov wrote:
"leanne" leanne@thizlinux.com wrote:
LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam );
case WM_IME_CHAR: charW = wParam; printf("DefWindowProcA WM_IME_CHAR %08x\n", charW); // I got it correct!
- 4f60 (unicode of "you" in Chinese)
//Is there something wrong here?
Something really wrong there. You shouldn't receive unicode characters in the ANSI (DefWindowProcA) message handler. Apparently mapping of WM_IME_CHAR and friends to/from unicode should be added in windows/winproc.c.
Just look how it was done for WM_CHAR, and try to add WM_IME_CHAR there.
Thank all for your hints.
Somehow we checked that we run with --winver win2k and we can input Chinese/Japnese without any problems