xref: /reactos/dll/ime/msctfime/msctfime.h (revision 0c2cdcae)
1 /*
2  * PROJECT:     ReactOS msctfime.ime
3  * LICENSE:     LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
4  * PURPOSE:     Supporting IME interface of Text Input Processors (TIPs)
5  * COPYRIGHT:   Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
6  */
7 
8 #pragma once
9 
10 #include <stdlib.h>
11 
12 #define WIN32_NO_STATUS
13 #define COBJMACROS
14 #define INITGUID
15 
16 #include <windows.h>
17 #include <imm.h>
18 #include <immdev.h>
19 #include <imm32_undoc.h>
20 #include <cguid.h>
21 #include <tchar.h>
22 #include <msctf.h>
23 #include <ctffunc.h>
24 #include <shlwapi.h>
25 #include <strsafe.h>
26 
27 #include <cicbase.h>
28 #include <cicarray.h>
29 #include <cicimc.h>
30 #include <cictf.h>
31 #include <cicreg.h>
32 #include <ciccaret.h>
33 #include <cicuif.h>
34 #include <cicutb.h>
35 
36 #include <wine/debug.h>
37 
38 extern HINSTANCE g_hInst;
39 extern CRITICAL_SECTION g_csLock;
40 
41 typedef CicArray<GUID> CDispAttrPropCache;
42 extern CDispAttrPropCache *g_pPropCache;
43 
44 HRESULT
45 Inquire(
46     _Out_ LPIMEINFO lpIMEInfo,
47     _Out_ LPWSTR lpszWndClass,
48     _In_ DWORD dwSystemInfoFlags,
49     _In_ HKL hKL);
50 
51 DEFINE_GUID(GUID_COMPARTMENT_CTFIME_DIMFLAGS,        0xA94C5FD2, 0xC471, 0x4031, 0x95, 0x46, 0x70, 0x9C, 0x17, 0x30, 0x0C, 0xB9);
52 DEFINE_GUID(GUID_COMPARTMENT_CTFIME_CICINPUTCONTEXT, 0x85A688F7, 0x6DC8, 0x4F17, 0xA8, 0x3A, 0xB1, 0x1C, 0x09, 0xCD, 0xD7, 0xBF);
53 DEFINE_GUID(GUID_MODEBIAS_FILENAME,                  0xD7F707FE, 0x44C6, 0x4FCA, 0x8E, 0x76, 0x86, 0xAB, 0x50, 0xC7, 0x93, 0x1B);
54 DEFINE_GUID(GUID_MODEBIAS_NUMERIC,                   0x4021766C, 0xE872, 0x48FD, 0x9C, 0xEE, 0x4E, 0xC5, 0xC7, 0x5E, 0x16, 0xC3);
55 DEFINE_GUID(GUID_MODEBIAS_URLHISTORY,                0x8B0E54D9, 0x63F2, 0x4C68, 0x84, 0xD4, 0x79, 0xAE, 0xE7, 0xA5, 0x9F, 0x09);
56 DEFINE_GUID(GUID_MODEBIAS_DEFAULT,                   0xF3DA8BD4, 0x0786, 0x49C2, 0x8C, 0x09, 0x68, 0x39, 0xD8, 0xB8, 0x4F, 0x58);
57 DEFINE_GUID(GUID_PROP_MODEBIAS,                      0x372E0716, 0x974F, 0x40AC, 0xA0, 0x88, 0x08, 0xCD, 0xC9, 0x2E, 0xBF, 0xBC);
58 #define GUID_MODEBIAS_NONE GUID_NULL
59 
60 #include "resource.h"
61 
62 #include "bridge.h"
63 #include "inputcontext.h"
64 #include "misc.h"
65 #include "profile.h"
66 #include "sinks.h"
67 #include "tls.h"
68 #include "ui.h"
69