[IMM32][SDK] Implement IME Soft Keyboard Type T1 (#6021)

- Rename version.rc as imm32.rc.
- Add resource.h and t1keys.h.
- Add some resource bitmaps.
- Modify <immdev.h>.

Test:
Press Ctrl+Alt+comma on FreeCJ2004.

NOTE: There's a visual bug in PatBlt with negative values.
CORE-19268
This commit is contained in:
Katayama Hirofumi MZ 2023-11-24 23:02:19 +09:00 committed by GitHub
parent f710e5a260
commit bd06299059
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
24 changed files with 1316 additions and 138 deletions

View file

@ -17,12 +17,23 @@
extern "C" {
#endif
typedef struct tagSOFTKBDDATA
{
UINT uCount;
WORD wCode[1][256];
} SOFTKBDDATA, *PSOFTKBDDATA, *LPSOFTKBDDATA;
/* wParam for WM_IME_CONTROL */
#define IMC_GETCONVERSIONMODE 0x0001
#define IMC_GETSENTENCEMODE 0x0003
#define IMC_GETOPENSTATUS 0x0005
#define IMC_GETSOFTKBDFONT 0x0011
#define IMC_SETSOFTKBDFONT 0x0012
#define IMC_GETSOFTKBDPOS 0x0013
#define IMC_SETSOFTKBDPOS 0x0014
#define IMC_GETSOFTKBDSUBTYPE 0x0015
#define IMC_SETSOFTKBDSUBTYPE 0x0016
#define IMC_SETSOFTKBDDATA 0x0018
/* wParam for WM_IME_SYSTEM */
#define IMS_NOTIFYIMESHOW 0x05
@ -46,6 +57,9 @@ extern "C" {
#define IMS_SETLANGBAND 0x23
#define IMS_UNSETLANGBAND 0x24
/* wParam for WM_IME_NOTIFY */
#define IMN_SOFTKBDDESTROYED 0x0011
#define IMMGWL_IMC 0
#define IMMGWL_PRIVATE (sizeof(LONG))
@ -59,7 +73,7 @@ typedef struct _tagINPUTCONTEXT {
POINT ptSoftKbdPos;
DWORD fdwConversion;
DWORD fdwSentence;
union {
union {
LOGFONTA A;
LOGFONTW W;
} lfFont;