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