8 use vars qw(@ISA @EXPORT @EXPORT_OK);
14 my $module_declarations = {
15 "ImmAssociateContext" => ["long", ["long", "long"]],
16 "ImmConfigureIMEA" => ["long", ["long", "long", "long", "ptr"]],
17 "ImmConfigureIMEW" => ["long", ["long", "long", "long", "ptr"]],
18 "ImmCreateContext" => ["long", []],
19 "ImmCreateIMCC" => ["long", ["long"]],
20 "ImmCreateSoftKeyboard" => ["long", ["long", "long", "long", "long"]],
21 "ImmDestroyContext" => ["long", ["long"]],
22 "ImmDestroyIMCC" => ["long", ["long"]],
23 "ImmDestroySoftKeyboard" => ["long", ["long"]],
24 "ImmDisableIME" => ["long", ["long"]],
25 "ImmEnumRegisterWordA" => ["long", ["long", "ptr", "str", "long", "str", "ptr"]],
26 "ImmEnumRegisterWordW" => ["long", ["long", "ptr", "wstr", "long", "wstr", "ptr"]],
27 "ImmEscapeA" => ["long", ["long", "long", "long", "ptr"]],
28 "ImmEscapeW" => ["long", ["long", "long", "long", "ptr"]],
29 "ImmGenerateMessage" => ["long", ["long"]],
30 "ImmGetCandidateListA" => ["long", ["long", "long", "ptr", "long"]],
31 "ImmGetCandidateListCountA" => ["long", ["long", "ptr"]],
32 "ImmGetCandidateListCountW" => ["long", ["long", "ptr"]],
33 "ImmGetCandidateListW" => ["long", ["long", "long", "ptr", "long"]],
34 "ImmGetCandidateWindow" => ["long", ["long", "long", "ptr"]],
35 "ImmGetCompositionFontA" => ["long", ["long", "ptr"]],
36 "ImmGetCompositionFontW" => ["long", ["long", "ptr"]],
37 "ImmGetCompositionStringA" => ["long", ["long", "long", "ptr", "long"]],
38 "ImmGetCompositionStringW" => ["long", ["long", "long", "ptr", "long"]],
39 "ImmGetCompositionWindow" => ["long", ["long", "ptr"]],
40 "ImmGetContext" => ["long", ["long"]],
41 "ImmGetConversionListA" => ["long", ["long", "long", "str", "ptr", "long", "long"]],
42 "ImmGetConversionListW" => ["long", ["long", "long", "wstr", "ptr", "long", "long"]],
43 "ImmGetConversionStatus" => ["long", ["long", "ptr", "ptr"]],
44 "ImmGetDefaultIMEWnd" => ["long", ["long"]],
45 "ImmGetDescriptionA" => ["long", ["long", "str", "long"]],
46 "ImmGetDescriptionW" => ["long", ["long", "wstr", "long"]],
47 "ImmGetGuideLineA" => ["long", ["long", "long", "str", "long"]],
48 "ImmGetGuideLineW" => ["long", ["long", "long", "wstr", "long"]],
49 "ImmGetHotKey" => ["long", ["long", "ptr", "ptr", "ptr"]],
50 "ImmGetIMCCLockCount" => ["long", ["long"]],
51 "ImmGetIMCCSize" => ["long", ["long"]],
52 "ImmGetIMCLockCount" => ["long", ["long"]],
53 "ImmGetIMEFileNameA" => ["long", ["long", "str", "long"]],
54 "ImmGetIMEFileNameW" => ["long", ["long", "wstr", "long"]],
55 "ImmGetOpenStatus" => ["long", ["long"]],
56 "ImmGetProperty" => ["long", ["long", "long"]],
57 "ImmGetRegisterWordStyleA" => ["long", ["long", "long", "ptr"]],
58 "ImmGetRegisterWordStyleW" => ["long", ["long", "long", "ptr"]],
59 "ImmGetStatusWindowPos" => ["long", ["long", "ptr"]],
60 "ImmGetVirtualKey" => ["long", ["long"]],
61 "ImmInstallIMEA" => ["long", ["str", "str"]],
62 "ImmInstallIMEW" => ["long", ["wstr", "wstr"]],
63 "ImmIsIME" => ["long", ["long"]],
64 "ImmIsUIMessageA" => ["long", ["long", "long", "long", "long"]],
65 "ImmIsUIMessageW" => ["long", ["long", "long", "long", "long"]],
66 "ImmLockIMC" => ["ptr", ["long"]],
67 "ImmLockIMCC" => ["ptr", ["long"]],
68 "ImmNotifyIME" => ["long", ["long", "long", "long", "long"]],
69 "ImmReSizeIMCC" => ["long", ["long", "long"]],
70 "ImmRegisterWordA" => ["long", ["long", "str", "long", "str"]],
71 "ImmRegisterWordW" => ["long", ["long", "wstr", "long", "wstr"]],
72 "ImmReleaseContext" => ["long", ["long", "long"]],
73 "ImmSetCandidateWindow" => ["long", ["long", "ptr"]],
74 "ImmSetCompositionFontA" => ["long", ["long", "ptr"]],
75 "ImmSetCompositionFontW" => ["long", ["long", "ptr"]],
76 "ImmSetCompositionStringA" => ["long", ["long", "long", "ptr", "long", "ptr", "long"]],
77 "ImmSetCompositionStringW" => ["long", ["long", "long", "ptr", "long", "ptr", "long"]],
78 "ImmSetCompositionWindow" => ["long", ["long", "ptr"]],
79 "ImmSetConversionStatus" => ["long", ["long", "long", "long"]],
80 "ImmSetHotKey" => ["long", ["long", "long", "long", "long"]],
81 "ImmSetOpenStatus" => ["long", ["long", "long"]],
82 "ImmSetStatusWindowPos" => ["long", ["long", "ptr"]],
83 "ImmShowSoftKeyboard" => ["long", ["long", "long"]],
84 "ImmSimulateHotKey" => ["long", ["long", "long"]],
85 "ImmUnlockIMC" => ["long", ["long"]],
86 "ImmUnlockIMCC" => ["long", ["long"]],
87 "ImmUnregisterWordA" => ["long", ["long", "str", "long", "str"]],
88 "ImmUnregisterWordW" => ["long", ["long", "wstr", "long", "wstr"]]
91 &wine::declare("imm32",%$module_declarations);
92 push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));