1 /****************************************************************************
2 **
3 ** Copyright (C) 2017 The Qt Company Ltd.
4 ** Contact: https://www.qt.io/licensing/
5 **
6 ** This file is part of the QtGui module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and The Qt Company. For licensing terms
14 ** and conditions see https://www.qt.io/terms-conditions. For further
15 ** information use the contact form at https://www.qt.io/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 3 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL3 included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 3 requirements
23 ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24 **
25 ** GNU General Public License Usage
26 ** Alternatively, this file may be used under the terms of the GNU
27 ** General Public License version 2.0 or (at your option) the GNU General
28 ** Public license version 3 or any later version approved by the KDE Free
29 ** Qt Foundation. The licenses are as published by the Free Software
30 ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31 ** included in the packaging of this file. Please review the following
32 ** information to ensure the GNU General Public License requirements will
33 ** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34 ** https://www.gnu.org/licenses/gpl-3.0.html.
35 **
36 ** $QT_END_LICENSE$
37 **
38 ****************************************************************************/
39 
40 #ifndef UIASERVERINTERFACES_H
41 #define UIASERVERINTERFACES_H
42 
43 //
44 //  W A R N I N G
45 //  -------------
46 //
47 // This file is not part of the Qt API. It exists purely as an
48 // implementation detail. This header file may change from version to
49 // version without notice, or even be removed.
50 //
51 // We mean it.
52 //
53 
54 #include <unknwn.h>
55 
56 #ifndef __IRawElementProviderSimple_INTERFACE_DEFINED__
57 #define __IRawElementProviderSimple_INTERFACE_DEFINED__
58 DEFINE_GUID(IID_IRawElementProviderSimple, 0xd6dd68d1, 0x86fd, 0x4332, 0x86,0x66, 0x9a,0xbe,0xde,0xa2,0xd2,0x4c);
59 MIDL_INTERFACE("d6dd68d1-86fd-4332-8666-9abedea2d24c")
60 IRawElementProviderSimple : public IUnknown
61 {
62 public:
63     virtual HRESULT STDMETHODCALLTYPE get_ProviderOptions(__RPC__out enum ProviderOptions *pRetVal) = 0;
64     virtual HRESULT STDMETHODCALLTYPE GetPatternProvider(PATTERNID patternId, __RPC__deref_out_opt IUnknown **pRetVal) = 0;
65     virtual HRESULT STDMETHODCALLTYPE GetPropertyValue(PROPERTYID propertyId, __RPC__out VARIANT *pRetVal) = 0;
66     virtual HRESULT STDMETHODCALLTYPE get_HostRawElementProvider(__RPC__deref_out_opt IRawElementProviderSimple **pRetVal) = 0;
67 };
68 #ifdef __CRT_UUID_DECL
69 __CRT_UUID_DECL(IRawElementProviderSimple, 0xd6dd68d1, 0x86fd, 0x4332, 0x86,0x66, 0x9a,0xbe,0xde,0xa2,0xd2,0x4c)
70 #endif
71 #endif
72 
73 
74 #ifndef __IRawElementProviderFragmentRoot_FWD_DEFINED__
75 #define __IRawElementProviderFragmentRoot_FWD_DEFINED__
76 typedef interface IRawElementProviderFragmentRoot IRawElementProviderFragmentRoot;
77 #endif
78 
79 
80 #ifndef __IRawElementProviderFragment_FWD_DEFINED__
81 #define __IRawElementProviderFragment_FWD_DEFINED__
82 typedef interface IRawElementProviderFragment IRawElementProviderFragment;
83 #endif
84 
85 
86 #ifndef __IRawElementProviderFragment_INTERFACE_DEFINED__
87 #define __IRawElementProviderFragment_INTERFACE_DEFINED__
88 DEFINE_GUID(IID_IRawElementProviderFragment, 0xf7063da8, 0x8359, 0x439c, 0x92,0x97, 0xbb,0xc5,0x29,0x9a,0x7d,0x87);
89 MIDL_INTERFACE("f7063da8-8359-439c-9297-bbc5299a7d87")
90 IRawElementProviderFragment : public IUnknown
91 {
92 public:
93     virtual HRESULT STDMETHODCALLTYPE Navigate(enum NavigateDirection direction, __RPC__deref_out_opt IRawElementProviderFragment **pRetVal) = 0;
94     virtual HRESULT STDMETHODCALLTYPE GetRuntimeId(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
95     virtual HRESULT STDMETHODCALLTYPE get_BoundingRectangle(__RPC__out struct UiaRect *pRetVal) = 0;
96     virtual HRESULT STDMETHODCALLTYPE GetEmbeddedFragmentRoots(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
97     virtual HRESULT STDMETHODCALLTYPE SetFocus() = 0;
98     virtual HRESULT STDMETHODCALLTYPE get_FragmentRoot(__RPC__deref_out_opt IRawElementProviderFragmentRoot **pRetVal) = 0;
99 };
100 #ifdef __CRT_UUID_DECL
101 __CRT_UUID_DECL(IRawElementProviderFragment, 0xf7063da8, 0x8359, 0x439c, 0x92,0x97, 0xbb,0xc5,0x29,0x9a,0x7d,0x87)
102 #endif
103 #endif
104 
105 
106 #ifndef __IRawElementProviderFragmentRoot_INTERFACE_DEFINED__
107 #define __IRawElementProviderFragmentRoot_INTERFACE_DEFINED__
108 DEFINE_GUID(IID_IRawElementProviderFragmentRoot, 0x620ce2a5, 0xab8f, 0x40a9, 0x86,0xcb, 0xde,0x3c,0x75,0x59,0x9b,0x58);
109 MIDL_INTERFACE("620ce2a5-ab8f-40a9-86cb-de3c75599b58")
110 IRawElementProviderFragmentRoot : public IUnknown
111 {
112 public:
113     virtual HRESULT STDMETHODCALLTYPE ElementProviderFromPoint(double x, double y, __RPC__deref_out_opt IRawElementProviderFragment **pRetVal) = 0;
114     virtual HRESULT STDMETHODCALLTYPE GetFocus(__RPC__deref_out_opt IRawElementProviderFragment **pRetVal) = 0;
115 };
116 #ifdef __CRT_UUID_DECL
117 __CRT_UUID_DECL(IRawElementProviderFragmentRoot, 0x620ce2a5, 0xab8f, 0x40a9, 0x86,0xcb, 0xde,0x3c,0x75,0x59,0x9b,0x58)
118 #endif
119 #endif
120 
121 
122 #ifndef __IValueProvider_INTERFACE_DEFINED__
123 #define __IValueProvider_INTERFACE_DEFINED__
124 DEFINE_GUID(IID_IValueProvider, 0xc7935180, 0x6fb3, 0x4201, 0xb1,0x74, 0x7d,0xf7,0x3a,0xdb,0xf6,0x4a);
125 MIDL_INTERFACE("c7935180-6fb3-4201-b174-7df73adbf64a")
126 IValueProvider : public IUnknown
127 {
128 public:
129     virtual HRESULT STDMETHODCALLTYPE SetValue(__RPC__in LPCWSTR val) = 0;
130     virtual HRESULT STDMETHODCALLTYPE get_Value(__RPC__deref_out_opt BSTR *pRetVal) = 0;
131     virtual HRESULT STDMETHODCALLTYPE get_IsReadOnly(__RPC__out BOOL *pRetVal) = 0;
132 };
133 #ifdef __CRT_UUID_DECL
134 __CRT_UUID_DECL(IValueProvider, 0xc7935180, 0x6fb3, 0x4201, 0xb1,0x74, 0x7d,0xf7,0x3a,0xdb,0xf6,0x4a)
135 #endif
136 #endif
137 
138 
139 #ifndef __IRangeValueProvider_INTERFACE_DEFINED__
140 #define __IRangeValueProvider_INTERFACE_DEFINED__
141 DEFINE_GUID(IID_IRangeValueProvider, 0x36dc7aef, 0x33e6, 0x4691, 0xaf,0xe1, 0x2b,0xe7,0x27,0x4b,0x3d,0x33);
142 MIDL_INTERFACE("36dc7aef-33e6-4691-afe1-2be7274b3d33")
143 IRangeValueProvider : public IUnknown
144 {
145 public:
146     virtual HRESULT STDMETHODCALLTYPE SetValue(double val) = 0;
147     virtual HRESULT STDMETHODCALLTYPE get_Value(__RPC__out double *pRetVal) = 0;
148     virtual HRESULT STDMETHODCALLTYPE get_IsReadOnly(__RPC__out BOOL *pRetVal) = 0;
149     virtual HRESULT STDMETHODCALLTYPE get_Maximum(__RPC__out double *pRetVal) = 0;
150     virtual HRESULT STDMETHODCALLTYPE get_Minimum(__RPC__out double *pRetVal) = 0;
151     virtual HRESULT STDMETHODCALLTYPE get_LargeChange(__RPC__out double *pRetVal) = 0;
152     virtual HRESULT STDMETHODCALLTYPE get_SmallChange(__RPC__out double *pRetVal) = 0;
153 };
154 #ifdef __CRT_UUID_DECL
155 __CRT_UUID_DECL(IRangeValueProvider, 0x36dc7aef, 0x33e6, 0x4691, 0xaf,0xe1, 0x2b,0xe7,0x27,0x4b,0x3d,0x33)
156 #endif
157 #endif
158 
159 
160 #ifndef __ITextRangeProvider_INTERFACE_DEFINED__
161 #define __ITextRangeProvider_INTERFACE_DEFINED__
162 DEFINE_GUID(IID_ITextRangeProvider, 0x5347ad7b, 0xc355, 0x46f8, 0xaf,0xf5, 0x90,0x90,0x33,0x58,0x2f,0x63);
163 MIDL_INTERFACE("5347ad7b-c355-46f8-aff5-909033582f63")
164 ITextRangeProvider : public IUnknown
165 {
166 public:
167     virtual HRESULT STDMETHODCALLTYPE Clone(__RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
168     virtual HRESULT STDMETHODCALLTYPE Compare(__RPC__in_opt ITextRangeProvider *range, __RPC__out BOOL *pRetVal) = 0;
169     virtual HRESULT STDMETHODCALLTYPE CompareEndpoints(enum TextPatternRangeEndpoint endpoint, __RPC__in_opt ITextRangeProvider *targetRange, enum TextPatternRangeEndpoint targetEndpoint, __RPC__out int *pRetVal) = 0;
170     virtual HRESULT STDMETHODCALLTYPE ExpandToEnclosingUnit(enum TextUnit unit) = 0;
171     virtual HRESULT STDMETHODCALLTYPE FindAttribute(TEXTATTRIBUTEID attributeId, VARIANT val, BOOL backward, __RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
172     virtual HRESULT STDMETHODCALLTYPE FindText(__RPC__in BSTR text, BOOL backward, BOOL ignoreCase, __RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
173     virtual HRESULT STDMETHODCALLTYPE GetAttributeValue(TEXTATTRIBUTEID attributeId, __RPC__out VARIANT *pRetVal) = 0;
174     virtual HRESULT STDMETHODCALLTYPE GetBoundingRectangles(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
175     virtual HRESULT STDMETHODCALLTYPE GetEnclosingElement(__RPC__deref_out_opt IRawElementProviderSimple **pRetVal) = 0;
176     virtual HRESULT STDMETHODCALLTYPE GetText(int maxLength, __RPC__deref_out_opt BSTR *pRetVal) = 0;
177     virtual HRESULT STDMETHODCALLTYPE Move(enum TextUnit unit, int count, __RPC__out int *pRetVal) = 0;
178     virtual HRESULT STDMETHODCALLTYPE MoveEndpointByUnit(enum TextPatternRangeEndpoint endpoint, enum TextUnit unit, int count, __RPC__out int *pRetVal) = 0;
179     virtual HRESULT STDMETHODCALLTYPE MoveEndpointByRange(enum TextPatternRangeEndpoint endpoint, __RPC__in_opt ITextRangeProvider *targetRange, enum TextPatternRangeEndpoint targetEndpoint) = 0;
180     virtual HRESULT STDMETHODCALLTYPE Select() = 0;
181     virtual HRESULT STDMETHODCALLTYPE AddToSelection() = 0;
182     virtual HRESULT STDMETHODCALLTYPE RemoveFromSelection() = 0;
183     virtual HRESULT STDMETHODCALLTYPE ScrollIntoView(BOOL alignToTop) = 0;
184     virtual HRESULT STDMETHODCALLTYPE GetChildren(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
185 };
186 #ifdef __CRT_UUID_DECL
187 __CRT_UUID_DECL(ITextRangeProvider, 0x5347ad7b, 0xc355, 0x46f8, 0xaf,0xf5, 0x90,0x90,0x33,0x58,0x2f,0x63)
188 #endif
189 #endif
190 
191 
192 #ifndef __ITextProvider_INTERFACE_DEFINED__
193 #define __ITextProvider_INTERFACE_DEFINED__
194 DEFINE_GUID(IID_ITextProvider, 0x3589c92c, 0x63f3, 0x4367, 0x99,0xbb, 0xad,0xa6,0x53,0xb7,0x7c,0xf2);
195 MIDL_INTERFACE("3589c92c-63f3-4367-99bb-ada653b77cf2")
196 ITextProvider : public IUnknown
197 {
198 public:
199     virtual HRESULT STDMETHODCALLTYPE GetSelection(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
200     virtual HRESULT STDMETHODCALLTYPE GetVisibleRanges(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
201     virtual HRESULT STDMETHODCALLTYPE RangeFromChild(__RPC__in_opt IRawElementProviderSimple *childElement, __RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
202     virtual HRESULT STDMETHODCALLTYPE RangeFromPoint(struct UiaPoint point, __RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
203     virtual HRESULT STDMETHODCALLTYPE get_DocumentRange(__RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
204     virtual HRESULT STDMETHODCALLTYPE get_SupportedTextSelection(__RPC__out enum SupportedTextSelection *pRetVal) = 0;
205 };
206 #ifdef __CRT_UUID_DECL
207 __CRT_UUID_DECL(ITextProvider, 0x3589c92c, 0x63f3, 0x4367, 0x99,0xbb, 0xad,0xa6,0x53,0xb7,0x7c,0xf2)
208 #endif
209 #endif
210 
211 
212 #ifndef __ITextProvider2_INTERFACE_DEFINED__
213 #define __ITextProvider2_INTERFACE_DEFINED__
214 DEFINE_GUID(IID_ITextProvider2, 0x0dc5e6ed, 0x3e16, 0x4bf1, 0x8f,0x9a, 0xa9,0x79,0x87,0x8b,0xc1,0x95);
215 MIDL_INTERFACE("0dc5e6ed-3e16-4bf1-8f9a-a979878bc195")
216 ITextProvider2 : public ITextProvider
217 {
218 public:
219     virtual HRESULT STDMETHODCALLTYPE RangeFromAnnotation(__RPC__in_opt IRawElementProviderSimple *annotationElement, __RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
220     virtual HRESULT STDMETHODCALLTYPE GetCaretRange(__RPC__out BOOL *isActive, __RPC__deref_out_opt ITextRangeProvider **pRetVal) = 0;
221 };
222 #ifdef __CRT_UUID_DECL
223 __CRT_UUID_DECL(ITextProvider2, 0x0dc5e6ed, 0x3e16, 0x4bf1, 0x8f,0x9a, 0xa9,0x79,0x87,0x8b,0xc1,0x95)
224 #endif
225 #endif
226 
227 
228 #ifndef __IToggleProvider_INTERFACE_DEFINED__
229 #define __IToggleProvider_INTERFACE_DEFINED__
230 DEFINE_GUID(IID_IToggleProvider, 0x56d00bd0, 0xc4f4, 0x433c, 0xa8,0x36, 0x1a,0x52,0xa5,0x7e,0x08,0x92);
231 MIDL_INTERFACE("56d00bd0-c4f4-433c-a836-1a52a57e0892")
232 IToggleProvider : public IUnknown
233 {
234 public:
235     virtual HRESULT STDMETHODCALLTYPE Toggle() = 0;
236     virtual HRESULT STDMETHODCALLTYPE get_ToggleState(__RPC__out enum ToggleState *pRetVal) = 0;
237 };
238 #ifdef __CRT_UUID_DECL
239 __CRT_UUID_DECL(IToggleProvider, 0x56d00bd0, 0xc4f4, 0x433c, 0xa8,0x36, 0x1a,0x52,0xa5,0x7e,0x08,0x92)
240 #endif
241 #endif
242 
243 
244 #ifndef __IInvokeProvider_INTERFACE_DEFINED__
245 #define __IInvokeProvider_INTERFACE_DEFINED__
246 DEFINE_GUID(IID_IInvokeProvider, 0x54fcb24b, 0xe18e, 0x47a2, 0xb4,0xd3, 0xec,0xcb,0xe7,0x75,0x99,0xa2);
247 MIDL_INTERFACE("54fcb24b-e18e-47a2-b4d3-eccbe77599a2")
248 IInvokeProvider : public IUnknown
249 {
250 public:
251     virtual HRESULT STDMETHODCALLTYPE Invoke() = 0;
252 };
253 #ifdef __CRT_UUID_DECL
254 __CRT_UUID_DECL(IInvokeProvider, 0x54fcb24b, 0xe18e, 0x47a2, 0xb4,0xd3, 0xec,0xcb,0xe7,0x75,0x99,0xa2)
255 #endif
256 #endif
257 
258 
259 #ifndef __ISelectionProvider_INTERFACE_DEFINED__
260 #define __ISelectionProvider_INTERFACE_DEFINED__
261 DEFINE_GUID(IID_ISelectionProvider, 0xfb8b03af, 0x3bdf, 0x48d4, 0xbd,0x36, 0x1a,0x65,0x79,0x3b,0xe1,0x68);
262 MIDL_INTERFACE("fb8b03af-3bdf-48d4-bd36-1a65793be168")
263 ISelectionProvider : public IUnknown
264 {
265 public:
266     virtual HRESULT STDMETHODCALLTYPE GetSelection(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
267     virtual HRESULT STDMETHODCALLTYPE get_CanSelectMultiple(__RPC__out BOOL *pRetVal) = 0;
268     virtual HRESULT STDMETHODCALLTYPE get_IsSelectionRequired(__RPC__out BOOL *pRetVal) = 0;
269 };
270 #ifdef __CRT_UUID_DECL
271 __CRT_UUID_DECL(ISelectionProvider, 0xfb8b03af, 0x3bdf, 0x48d4, 0xbd,0x36, 0x1a,0x65,0x79,0x3b,0xe1,0x68)
272 #endif
273 #endif
274 
275 
276 #ifndef __ISelectionItemProvider_INTERFACE_DEFINED__
277 #define __ISelectionItemProvider_INTERFACE_DEFINED__
278 DEFINE_GUID(IID_ISelectionItemProvider, 0x2acad808, 0xb2d4, 0x452d, 0xa4,0x07, 0x91,0xff,0x1a,0xd1,0x67,0xb2);
279 MIDL_INTERFACE("2acad808-b2d4-452d-a407-91ff1ad167b2")
280 ISelectionItemProvider : public IUnknown
281 {
282 public:
283     virtual HRESULT STDMETHODCALLTYPE Select() = 0;
284     virtual HRESULT STDMETHODCALLTYPE AddToSelection() = 0;
285     virtual HRESULT STDMETHODCALLTYPE RemoveFromSelection() = 0;
286     virtual HRESULT STDMETHODCALLTYPE get_IsSelected(__RPC__out BOOL *pRetVal) = 0;
287     virtual HRESULT STDMETHODCALLTYPE get_SelectionContainer(__RPC__deref_out_opt IRawElementProviderSimple **pRetVal) = 0;
288 };
289 #ifdef __CRT_UUID_DECL
290 __CRT_UUID_DECL(ISelectionItemProvider, 0x2acad808, 0xb2d4, 0x452d, 0xa4,0x07, 0x91,0xff,0x1a,0xd1,0x67,0xb2)
291 #endif
292 #endif
293 
294 
295 #ifndef __ITableProvider_INTERFACE_DEFINED__
296 #define __ITableProvider_INTERFACE_DEFINED__
297 DEFINE_GUID(IID_ITableProvider, 0x9c860395, 0x97b3, 0x490a, 0xb5,0x2a, 0x85,0x8c,0xc2,0x2a,0xf1,0x66);
298 MIDL_INTERFACE("9c860395-97b3-490a-b52a-858cc22af166")
299 ITableProvider : public IUnknown
300 {
301 public:
302     virtual HRESULT STDMETHODCALLTYPE GetRowHeaders(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
303     virtual HRESULT STDMETHODCALLTYPE GetColumnHeaders(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
304     virtual HRESULT STDMETHODCALLTYPE get_RowOrColumnMajor(__RPC__out enum RowOrColumnMajor *pRetVal) = 0;
305 };
306 #ifdef __CRT_UUID_DECL
307 __CRT_UUID_DECL(ITableProvider, 0x9c860395, 0x97b3, 0x490a, 0xb5,0x2a, 0x85,0x8c,0xc2,0x2a,0xf1,0x66)
308 #endif
309 #endif
310 
311 
312 #ifndef __ITableItemProvider_INTERFACE_DEFINED__
313 #define __ITableItemProvider_INTERFACE_DEFINED__
314 DEFINE_GUID(IID_ITableItemProvider, 0xb9734fa6, 0x771f, 0x4d78, 0x9c,0x90, 0x25,0x17,0x99,0x93,0x49,0xcd);
315 MIDL_INTERFACE("b9734fa6-771f-4d78-9c90-2517999349cd")
316 ITableItemProvider : public IUnknown
317 {
318 public:
319     virtual HRESULT STDMETHODCALLTYPE GetRowHeaderItems(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
320     virtual HRESULT STDMETHODCALLTYPE GetColumnHeaderItems(__RPC__deref_out_opt SAFEARRAY **pRetVal) = 0;
321 };
322 #ifdef __CRT_UUID_DECL
323 __CRT_UUID_DECL(ITableItemProvider, 0xb9734fa6, 0x771f, 0x4d78, 0x9c,0x90, 0x25,0x17,0x99,0x93,0x49,0xcd)
324 #endif
325 #endif
326 
327 
328 #ifndef __IGridProvider_INTERFACE_DEFINED__
329 #define __IGridProvider_INTERFACE_DEFINED__
330 DEFINE_GUID(IID_IGridProvider, 0xb17d6187, 0x0907, 0x464b, 0xa1,0x68, 0x0e,0xf1,0x7a,0x15,0x72,0xb1);
331 MIDL_INTERFACE("b17d6187-0907-464b-a168-0ef17a1572b1")
332 IGridProvider : public IUnknown
333 {
334 public:
335     virtual HRESULT STDMETHODCALLTYPE GetItem(int row, int column, __RPC__deref_out_opt IRawElementProviderSimple **pRetVal) = 0;
336     virtual HRESULT STDMETHODCALLTYPE get_RowCount(__RPC__out int *pRetVal) = 0;
337     virtual HRESULT STDMETHODCALLTYPE get_ColumnCount(__RPC__out int *pRetVal) = 0;
338 };
339 #ifdef __CRT_UUID_DECL
340 __CRT_UUID_DECL(IGridProvider, 0xb17d6187, 0x0907, 0x464b, 0xa1,0x68, 0x0e,0xf1,0x7a,0x15,0x72,0xb1)
341 #endif
342 #endif
343 
344 
345 #ifndef __IGridItemProvider_INTERFACE_DEFINED__
346 #define __IGridItemProvider_INTERFACE_DEFINED__
347 DEFINE_GUID(IID_IGridItemProvider, 0xd02541f1, 0xfb81, 0x4d64, 0xae,0x32, 0xf5,0x20,0xf8,0xa6,0xdb,0xd1);
348 MIDL_INTERFACE("d02541f1-fb81-4d64-ae32-f520f8a6dbd1")
349 IGridItemProvider : public IUnknown
350 {
351 public:
352     virtual HRESULT STDMETHODCALLTYPE get_Row(__RPC__out int *pRetVal) = 0;
353     virtual HRESULT STDMETHODCALLTYPE get_Column(__RPC__out int *pRetVal) = 0;
354     virtual HRESULT STDMETHODCALLTYPE get_RowSpan(__RPC__out int *pRetVal) = 0;
355     virtual HRESULT STDMETHODCALLTYPE get_ColumnSpan(__RPC__out int *pRetVal) = 0;
356     virtual HRESULT STDMETHODCALLTYPE get_ContainingGrid(__RPC__deref_out_opt IRawElementProviderSimple **pRetVal) = 0;
357 };
358 #ifdef __CRT_UUID_DECL
359 __CRT_UUID_DECL(IGridItemProvider, 0xd02541f1, 0xfb81, 0x4d64, 0xae,0x32, 0xf5,0x20,0xf8,0xa6,0xdb,0xd1)
360 #endif
361 #endif
362 
363 
364 #ifndef __IWindowProvider_INTERFACE_DEFINED__
365 #define __IWindowProvider_INTERFACE_DEFINED__
366 DEFINE_GUID(IID_IWindowProvider, 0x987df77b, 0xdb06, 0x4d77, 0x8f,0x8a, 0x86,0xa9,0xc3,0xbb,0x90,0xb9);
367 MIDL_INTERFACE("987df77b-db06-4d77-8f8a-86a9c3bb90b9")
368 IWindowProvider : public IUnknown
369 {
370 public:
371     virtual HRESULT STDMETHODCALLTYPE SetVisualState(enum WindowVisualState state) = 0;
372     virtual HRESULT STDMETHODCALLTYPE Close( void) = 0;
373     virtual HRESULT STDMETHODCALLTYPE WaitForInputIdle(int milliseconds, __RPC__out BOOL *pRetVal) = 0;
374     virtual HRESULT STDMETHODCALLTYPE get_CanMaximize(__RPC__out BOOL *pRetVal) = 0;
375     virtual HRESULT STDMETHODCALLTYPE get_CanMinimize(__RPC__out BOOL *pRetVal) = 0;
376     virtual HRESULT STDMETHODCALLTYPE get_IsModal(__RPC__out BOOL *pRetVal) = 0;
377     virtual HRESULT STDMETHODCALLTYPE get_WindowVisualState(__RPC__out enum WindowVisualState *pRetVal) = 0;
378     virtual HRESULT STDMETHODCALLTYPE get_WindowInteractionState(__RPC__out enum WindowInteractionState *pRetVal) = 0;
379     virtual HRESULT STDMETHODCALLTYPE get_IsTopmost(__RPC__out BOOL *pRetVal) = 0;
380 };
381 #ifdef __CRT_UUID_DECL
382 __CRT_UUID_DECL(IWindowProvider, 0x987df77b, 0xdb06, 0x4d77, 0x8f,0x8a, 0x86,0xa9,0xc3,0xbb,0x90,0xb9)
383 #endif
384 #endif
385 
386 
387 #ifndef __IExpandCollapseProvider_INTERFACE_DEFINED__
388 #define __IExpandCollapseProvider_INTERFACE_DEFINED__
389 DEFINE_GUID(IID_IExpandCollapseProvider, 0xd847d3a5, 0xcab0, 0x4a98, 0x8c,0x32, 0xec,0xb4,0x5c,0x59,0xad,0x24);
390 MIDL_INTERFACE("d847d3a5-cab0-4a98-8c32-ecb45c59ad24")
391 IExpandCollapseProvider : public IUnknown
392 {
393 public:
394     virtual HRESULT STDMETHODCALLTYPE Expand() = 0;
395     virtual HRESULT STDMETHODCALLTYPE Collapse() = 0;
396     virtual HRESULT STDMETHODCALLTYPE get_ExpandCollapseState(__RPC__out enum ExpandCollapseState *pRetVal) = 0;
397 };
398 #ifdef __CRT_UUID_DECL
399 __CRT_UUID_DECL(IExpandCollapseProvider, 0xd847d3a5, 0xcab0, 0x4a98, 0x8c,0x32, 0xec,0xb4,0x5c,0x59,0xad,0x24)
400 #endif
401 #endif
402 
403 #endif
404