Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
2.2 KiB

  1. /*************************************************
  2. * uimetool.h *
  3. * *
  4. * Copyright (C) 1995-1999 Microsoft Inc. *
  5. * *
  6. *************************************************/
  7. //
  8. // 1/17/96
  9. // @E01 Change for multi-threading
  10. // @E02 Change for multi-threading without extending function
  11. //
  12. #include <commctrl.h>
  13. //
  14. #define MAX_CHAR_NUM 1000
  15. #define SEGMENT_SIZE 60
  16. #define NULL_SEG 0xffff
  17. #define MAX_RADICAL 8
  18. #define ALLOCBLOCK 1000
  19. #define MAX_BYTE 4
  20. // Help ID declarations
  21. #define IDH_IME_NAME 3001
  22. #define IDH_TABLE_NAME 3002
  23. #define IDH_ROOT_NUM 3003
  24. #define IDH_IME_FILE_NAME 3004
  25. #define IDH_CANDBEEP_YES 3005
  26. #define IDH_CANDBEEP_NO 3006
  27. //
  28. #define SOURCE_IME_NAME _TEXT("MINIIME")
  29. #define LIBRARY_NAME _TEXT("MINIIME.TPL")
  30. #define HELP_FILE _TEXT("UIMETOOL.CHM")
  31. #define IME_NAME_LEN_TOOL 5
  32. #define TAB_NAME_LEN 13 //filename 8.3 + NULL
  33. #define KEY_NUM_STR_LEN 2
  34. #define END_PHRASE 0x8000
  35. #define NOT_END_PHRASE 0x7f
  36. //
  37. BOOL FAR PASCAL SetDialogProc( HWND, unsigned, WORD, LONG);
  38. void GetOpenFile(HWND);
  39. BOOL CheckInput(HWND);
  40. BOOL MakeNewIme(HWND);
  41. //unsigned _stdcall MakeNewImeThread(LPVOID voidparam); // <== @E01
  42. void MakeNewImeThread(LPVOID voidparam); // <== @E02
  43. BOOL is_DBCS(UINT);
  44. //-------------------------------------------------------------------------
  45. // Memory blobal variable declarations.
  46. //
  47. // Warning : iFirst_Seg & iNext_Seg store only SEGMENT number but address
  48. // for address can not mainten after GlobalRealloc
  49. //
  50. typedef struct{
  51. UINT iFirst_Seg;
  52. TCHAR szRadical[MAX_RADICAL];
  53. WORD wCode;
  54. } RADICALBUF, FAR *LPRADICALBUF;
  55. typedef struct STRUCT_PHRASE{
  56. UINT iNext_Seg;
  57. TCHAR szPhrase[SEGMENT_SIZE];
  58. } PHRASEBUF, FAR *LPPHRASEBUF;
  59. HANDLE hRadical;
  60. UINT nRadicalBuffsize;
  61. UINT iRadicalBuff;
  62. LPRADICALBUF lpRadical;
  63. HANDLE hPhrase;
  64. UINT nPhraseBuffsize;
  65. UINT iPhraseBuff;
  66. LPPHRASEBUF lpPhrase;