source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/ctfutb.idl@ 1172

Last change on this file since 1172 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 5.4 KB
RevLine 
[1166]1/*
2 * Copyright 2010 Justin Chevrier
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#ifndef DO_NO_IMPORTS
20import "oaidl.idl";
21#endif
22
23interface ITfLangBarEventSink;
24interface ITfLangBarItemMgr;
25interface ITfInputProcessorProfiles;
26
27const ULONG TF_LBI_DESC_MAXLEN = 32;
28
29typedef [uuid(12a1d29f-a065-440c-9746-eb2002c8bd19)] struct TF_LANGBARITEMINFO
30{
31 CLSID clsidService;
32 GUID guidItem;
33 DWORD dwStyle;
34 ULONG ulSort;
35 WCHAR szDescription[TF_LBI_DESC_MAXLEN];
36} TF_LANGBARITEMINFO;
37
38[
39 object,
40 uuid(73540d69-edeb-4ee9-96c9-23aa30b25916),
41 pointer_default(unique),
42]
43interface ITfLangBarItem : IUnknown
44{
45 HRESULT GetInfo(
46 [out] TF_LANGBARITEMINFO *pInfo);
47
48 HRESULT GetStatus(
49 [out] DWORD *pdwStatus);
50
51 HRESULT Show(
52 [in] BOOL fShow);
53
54 HRESULT GetTooltipString(
55 [out] BSTR *pbstrToolTip);
56}
57
58[
59 object,
60 uuid(583f34d0-de25-11d2-afdd-00105a2799b5),
61 pointer_default(unique),
62]
63interface IEnumTfLangBarItems : IUnknown
64{
65 HRESULT Clone(
66 [out] IEnumTfLangBarItems **ppEnum);
67
68 HRESULT Next(
69 [in] ULONG ulCount,
70 [out, size_is(ulCount)] ITfLangBarItem **ppItem,
71 [in, out, unique] ULONG *pcFetched);
72
73 HRESULT Reset();
74
75 HRESULT Skip(
76 [in] ULONG ulCount);
77}
78
79[
80 object,
81 uuid(57dbe1a0-de25-11d2-afdd-00105a2799b5),
82 pointer_default(unique),
83]
84interface ITfLangBarItemSink : IUnknown
85{
86 HRESULT OnUpdate(
87 [in] DWORD dwFlags);
88}
89
90[
91 object,
92 uuid(ba468c55-9956-4fb1-a59d-52a7dd7cc6aa),
93 pointer_default(unique),
94]
95interface ITfLangBarItemMgr : IUnknown
96{
97 HRESULT EnumItems(
98 [out] IEnumTfLangBarItems **ppEnum);
99
100 HRESULT GetItem(
101 [in] REFGUID rguid,
102 [out] ITfLangBarItem **ppItem);
103
104 HRESULT AddItem(
105 [in] ITfLangBarItem *punk);
106
107 HRESULT RemoveItem(
108 [in] ITfLangBarItem *punk);
109
110 HRESULT AdviseItemSink(
111 [in] ITfLangBarItemSink *punk,
112 [out] DWORD *pdwCookie,
113 [in] REFGUID rguidItem);
114
115 HRESULT UnadviseItemSink(
116 [in] DWORD dwCookie);
117
118 HRESULT GetItemFloatingRect(
119 [in] DWORD dwThreadId,
120 [in] REFGUID rguid,
121 [out] RECT *prc);
122
123 HRESULT GetItemsStatus(
124 [in] ULONG ulCount,
125 [in, size_is(ulCount)] const GUID *prgguid,
126 [out, size_is(ulCount)] DWORD *pdwStatus);
127
128 HRESULT GetItemNum(
129 [out] ULONG *pulCount);
130
131 HRESULT GetItems(
132 [in] ULONG ulCount,
133 [out, size_is(ulCount), length_is(*pcFetched)] ITfLangBarItem **ppItem,
134 [out, size_is(ulCount), length_is(*pcFetched)] TF_LANGBARITEMINFO *pInfo,
135 [out, size_is(ulCount), length_is(*pcFetched)] DWORD *pdwStatus,
136 [in, out, unique] ULONG *pcFetched);
137
138 HRESULT AdviseItemsSink(
139 [in] ULONG ulCount,
140 [in, size_is(ulCount)] ITfLangBarItemSink **ppunk,
141 [in, size_is(ulCount)] const GUID *pguidItem,
142 [out, size_is(ulCount)] DWORD *pdwCookie);
143
144 HRESULT UnadviseItemsSink(
145 [in] ULONG ulCount,
146 [in, size_is(ulCount)] DWORD *pdwCookie);
147}
148
149[
150 object,
151 uuid(87955690-e627-11d2-8ddb-00105a2799b5),
152 pointer_default(unique)
153]
154interface ITfLangBarMgr: IUnknown
155{
156 HRESULT AdviseEventSink(
157 [in] ITfLangBarEventSink *pSink,
158 [in] HWND hwnd,
159 [in] DWORD dwflags,
160 [in] DWORD *pdwCookie);
161
162 HRESULT UnAdviseEventSink(
163 [in] DWORD dwCookie);
164
165 HRESULT GetThreadMarshalInterface(
166 [in] DWORD dwThreadId,
167 [in] DWORD dwType,
168 [in] REFIID riid,
169 [out] IUnknown **ppunk);
170
171 HRESULT GetThreadLangBarItemMgr(
172 [in] DWORD dwThreadId,
173 [out] ITfLangBarItemMgr **pplbie,
174 [out] DWORD *pdwThreadid);
175
176 HRESULT GetInputProcessorProfiles(
177 [in] DWORD dwThreadId,
178 [out] ITfInputProcessorProfiles **ppaip,
179 [out] DWORD *pdwThreadid);
180
181 HRESULT RestoreLastFocus(
182 [out] DWORD *dwThreadId,
183 [in] BOOL fPrev);
184
185 HRESULT SetModalInput(
186 [in] ITfLangBarEventSink *pSink,
187 [in] DWORD dwThreadId,
188 [in] DWORD dwFlags);
189
190 HRESULT ShowFloating(
191 [in] DWORD dwFlags);
192
193 HRESULT GetShowFloatingStatus(
194 [out] DWORD *pdwFlags);
195}
196
197[
198 object,
199 uuid(18a4e900-e0ae-11d2-afdd-00105a2799b5),
200 pointer_default(unique)
201]
202interface ITfLangBarEventSink: IUnknown
203{
204 HRESULT OnSetFocus(
205 [in] DWORD dwThreadId);
206
207 HRESULT OnThreadTerminate(
208 [in] DWORD dwThreadId);
209
210 HRESULT OnThreadItemChange(
211 [in] DWORD dwThreadId);
212
213 HRESULT OnModalInput(
214 [in] DWORD dwThreadId,
215 [in] UINT uMsg,
216 [in] WPARAM wParam,
217 [in] LPARAM lParam);
218
219 HRESULT ShowFloating(
220 [in] DWORD dwFlags);
221
222 HRESULT GetItemFloatingRect(
223 [in] DWORD dwThreadId,
224 [in] REFGUID rguid,
225 [out] RECT *prc);
226}
Note: See TracBrowser for help on using the repository browser.