[DDK]
[reactos.git] / include / psdk / exdisp.idl
1 /*
2 * Defines the COM interfaces and APIs related to the IE Web browser
3 *
4 * Copyright (C) 2001 John R. Sheets (for CodeWeavers)
5 * Copyright (C) 2003 Alexandre Julliard
6 * Copyright (C) 2004 Jacek Caban
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 */
22
23 import "ocidl.idl";
24 import "docobj.idl";
25
26 #include <olectl.h>
27 #include <exdispid.h>
28
29 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
30 cpp_quote("#undef FindText")
31 cpp_quote("#endif")
32
33 /*****************************************************************************
34 * SHDocVw library
35 */
36 [
37 uuid(EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B),
38 version(1.1),
39 helpstring("Microsoft Internet Controls")
40 ]
41 library SHDocVw
42 {
43
44 importlib("stdole2.tlb");
45
46
47 /*****************************************************************************
48 * IWebBrowser interface
49 */
50 [
51 object,
52 oleautomation,
53 uuid(eab22ac1-30c1-11cf-a7eb-0000c05bae0b),
54 hidden,
55 dual
56 ]
57 interface IWebBrowser : IDispatch
58 {
59 typedef enum BrowserNavConstants
60 {
61 navOpenInNewWindow = 0x1,
62 navNoHistory = 0x2,
63 navNoReadFromCache = 0x4,
64 navNoWriteToCache = 0x8,
65 navAllowAutosearch = 0x10,
66 navBrowserBar = 0x20,
67 navHyperlink = 0x40,
68 navEnforceRestricted = 0x80
69 } BrowserNavConstants;
70
71 typedef enum RefreshConstants
72 {
73 REFRESH_NORMAL = 0,
74 REFRESH_IFEXPIRED = 1,
75 REFRESH_COMPLETELY = 3
76 } RefreshConstants;
77
78 [id(100)] HRESULT GoBack();
79 [id(101)] HRESULT GoForward();
80 [id(102)] HRESULT GoHome();
81 [id(103)] HRESULT GoSearch();
82
83 [id(104)]
84 HRESULT Navigate(
85 [in] BSTR URL,
86 [in, optional] VARIANT *Flags,
87 [in, optional] VARIANT *TargetFrameName,
88 [in, optional] VARIANT *PostData,
89 [in, optional] VARIANT *Headers);
90
91 [id(DISPID_REFRESH)] HRESULT Refresh();
92 [id(105)] HRESULT Refresh2([in, optional] VARIANT *Level);
93 [id(106)] HRESULT Stop();
94 [id(200), propget] HRESULT Application([out, retval] IDispatch** ppDisp);
95 [id(201), propget] HRESULT Parent([out, retval] IDispatch** ppDisp);
96 [id(202), propget] HRESULT Container([out, retval] IDispatch** ppDisp);
97 [id(203), propget] HRESULT Document([out, retval] IDispatch** ppDisp);
98 [id(204), propget] HRESULT TopLevelContainer([out, retval] VARIANT_BOOL* pBool);
99 [id(205), propget] HRESULT Type([out, retval] BSTR* Type);
100 [id(206), propget] HRESULT Left([out, retval] long *pl);
101 [id(206), propput] HRESULT Left([in] long Left);
102 [id(207), propget] HRESULT Top([out, retval] long *pl);
103 [id(207), propput] HRESULT Top([in] long Top);
104 [id(208), propget] HRESULT Width([out, retval] long *pl);
105 [id(208), propput] HRESULT Width([in] long Width);
106 [id(209), propget] HRESULT Height([out, retval] long *pl);
107 [id(209), propput] HRESULT Height([in] long Height);
108 [id(210), propget] HRESULT LocationName([out, retval] BSTR *LocationName);
109 [id(211), propget] HRESULT LocationURL([out, retval] BSTR *LocationURL);
110 [id(212), propget] HRESULT Busy([out, retval] VARIANT_BOOL *pBool);
111 }
112
113 /*****************************************************************************
114 * DWebBrowserEvents dispinterface
115 */
116 [
117 uuid(eab22ac2-30c1-11CF-a7eb-0000C05bae0b),
118 hidden
119 ]
120 dispinterface DWebBrowserEvents
121 {
122 properties:
123 methods:
124 [id(DISPID_BEFORENAVIGATE)]
125 void BeforeNavigate(
126 [in] BSTR URL,
127 long Flags,
128 BSTR TargetFrameName,
129 VARIANT *PostData,
130 BSTR Headers,
131 [in, out] VARIANT_BOOL *Cancel);
132
133 [id(DISPID_NAVIGATECOMPLETE)]
134 void NavigateComplete([in] BSTR URL);
135
136 [id(DISPID_STATUSTEXTCHANGE)]
137 void StatusTextChange([in] BSTR Text);
138
139 [id(DISPID_PROGRESSCHANGE)]
140 void ProgressChange([in] long Progress, [in] long ProgressMax);
141
142 [id(DISPID_DOWNLOADCOMPLETE)]
143 void DownloadComplete();
144
145 [id(DISPID_COMMANDSTATECHANGE)]
146 void CommandStateChange([in] long Command, [in]VARIANT_BOOL Enable);
147
148 [id(DISPID_DOWNLOADBEGIN)]
149 void DownloadBegin();
150
151 [id(DISPID_NEWWINDOW)]
152 void NewWindow(
153 [in] BSTR URL,
154 [in] long Flags,
155 [in] BSTR TargetFrameName,
156 [in] VARIANT *PostData,
157 [in] BSTR Headers,
158 [in,out] VARIANT_BOOL *Processed);
159
160 [id(DISPID_TITLECHANGE)]
161 void TitleChange([in] BSTR Text);
162
163 [id(DISPID_FRAMEBEFORENAVIGATE)]
164 void FrameBeforeNavigate(
165 [in] BSTR URL,
166 long Flags,
167 BSTR TargetFrameName,
168 VARIANT *PostData,
169 BSTR Headers,
170 [in, out]VARIANT_BOOL *Cancel);
171
172 [id(DISPID_FRAMENAVIGATECOMPLETE)]
173 void FrameNavigateComplete([in] BSTR URL);
174
175 [id(DISPID_FRAMENEWWINDOW)]
176 void FrameNewWindow(
177 [in] BSTR URL,
178 [in] long Flags,
179 [in] BSTR TargetFrameName,
180 [in] VARIANT *PostData,
181 [in] BSTR Headers,
182 [in,out] VARIANT_BOOL *Processed);
183
184 [id(DISPID_QUIT)]
185 void Quit([in, out] VARIANT_BOOL *Cancel);
186
187 [id(DISPID_WINDOWMOVE)]
188 void WindowMove();
189
190 [id(DISPID_WINDOWRESIZE)]
191 void WindowResize();
192
193 [id(DISPID_WINDOWACTIVATE)]
194 void WindowActivate();
195
196 [id(DISPID_PROPERTYCHANGE)]
197 void PropertyChange([in] BSTR Property);
198 }
199
200 typedef
201 [
202 uuid(34a226e0-df30-11cf-89a9-00a0c9054129)
203 ]
204 enum CommandStateChangeConstants {
205 CSC_UPDATECOMMANDS = -1,
206 CSC_NAVIGATEFORWARD = 1,
207 CSC_NAVIGATEBACK = 2
208 } CommandStateChangeConstants;
209
210 /*****************************************************************************
211 * IWebBrowserApp interface
212 */
213 [
214 object,
215 oleautomation,
216 uuid(0002df05-0000-0000-c000-000000000046),
217 hidden,
218 dual
219 ]
220 interface IWebBrowserApp : IWebBrowser
221 {
222 [id(300)] HRESULT Quit();
223 [id(301)] HRESULT ClientToWindow([in,out] int* pcx, [in,out] int* pcy);
224 [id(302)] HRESULT PutProperty([in] BSTR Property, [in] VARIANT vtValue);
225 [id(303)] HRESULT GetProperty([in] BSTR Property, [out, retval] VARIANT *pvtValue);
226 [id(0), propget] HRESULT Name([out, retval] BSTR* Name);
227 [id(DISPID_HWND), propget] HRESULT HWND([out, retval] long *pHWND);
228 [id(400), propget] HRESULT FullName([out, retval] BSTR* FullName);
229 [id(401), propget] HRESULT Path([out, retval] BSTR* Path);
230 [id(402), propget] HRESULT Visible([out, retval] VARIANT_BOOL* pBool);
231 [id(402), propput] HRESULT Visible([in] VARIANT_BOOL Value);
232 [id(403), propget] HRESULT StatusBar([out, retval] VARIANT_BOOL* pBool);
233 [id(403), propput] HRESULT StatusBar([in] VARIANT_BOOL Value);
234 [id(404), propget] HRESULT StatusText([out, retval] BSTR *StatusText);
235 [id(404), propput] HRESULT StatusText([in] BSTR StatusText);
236 [id(405), propget] HRESULT ToolBar([out, retval] int * Value);
237 [id(405), propput] HRESULT ToolBar([in] int Value);
238 [id(406), propget] HRESULT MenuBar([out, retval] VARIANT_BOOL *Value);
239 [id(406), propput] HRESULT MenuBar([in] VARIANT_BOOL Value);
240 [id(407), propget] HRESULT FullScreen([out, retval] VARIANT_BOOL *pbFullScreen);
241 [id(407), propput] HRESULT FullScreen([in] VARIANT_BOOL bFullScreen);
242 }
243
244 /*****************************************************************************
245 * IWebBrowser2 interface
246 */
247 [
248 object,
249 oleautomation,
250 uuid(d30c1661-cdaf-11d0-8a3e-00c04fc9e26e),
251 hidden,
252 dual
253 ]
254 interface IWebBrowser2 : IWebBrowserApp
255 {
256 [id(500)] HRESULT Navigate2(
257 [in] VARIANT *URL,
258 [in, optional] VARIANT *Flags,
259 [in, optional] VARIANT *TargetFrameName,
260 [in, optional] VARIANT *PostData,
261 [in, optional] VARIANT *Headers);
262
263 [id(501)] HRESULT QueryStatusWB(
264 [in] OLECMDID cmdID,
265 [out, retval] OLECMDF *pcmdf);
266
267 [id(502)] HRESULT ExecWB(
268 [in] OLECMDID cmdID,
269 [in] OLECMDEXECOPT cmdexecopt,
270 [in, optional] VARIANT *pvaIn,
271 [out, in, optional] VARIANT *pvaOut);
272
273 [id(503)] HRESULT ShowBrowserBar(
274 [in] VARIANT *pvaClsid,
275 [in, optional] VARIANT *pvarShow,
276 [in, optional] VARIANT *pvarSize);
277
278 [id(DISPID_READYSTATE), propget, bindable]
279 HRESULT ReadyState([out, retval] READYSTATE *plReadyState);
280
281 [id(550), propget] HRESULT Offline([out, retval] VARIANT_BOOL *pbOffline);
282 [id(550), propput] HRESULT Offline([in] VARIANT_BOOL bOffline);
283 [id(551), propget] HRESULT Silent([out, retval] VARIANT_BOOL *pbSilent);
284 [id(551), propput] HRESULT Silent([in] VARIANT_BOOL bSilent);
285 [id(552), propget] HRESULT RegisterAsBrowser([out, retval] VARIANT_BOOL *pbRegister);
286 [id(552), propput] HRESULT RegisterAsBrowser([in] VARIANT_BOOL bRegister);
287 [id(553), propget] HRESULT RegisterAsDropTarget([out, retval] VARIANT_BOOL *pbRegister);
288 [id(553), propput] HRESULT RegisterAsDropTarget([in] VARIANT_BOOL bRegister);
289 [id(554), propget] HRESULT TheaterMode([out, retval] VARIANT_BOOL *pbRegister);
290 [id(554), propput] HRESULT TheaterMode([in] VARIANT_BOOL bRegister);
291 [id(555), propget] HRESULT AddressBar([out, retval] VARIANT_BOOL *Value);
292 [id(555), propput] HRESULT AddressBar([in] VARIANT_BOOL Value);
293 [id(556), propget] HRESULT Resizable([out, retval] VARIANT_BOOL *Value);
294 [id(556), propput] HRESULT Resizable([in] VARIANT_BOOL Value);
295 }
296
297 typedef
298 [
299 uuid(65507be0-91a8-11d3-a845-009027220e6d)
300 ]
301 enum SecureLockIconConstants {
302 secureLockIconUnsecure = 0,
303 secureLockIconMixed = 1,
304 secureLockIconSecureUnknownBits = 2,
305 secureLockIconSecure40Bit = 3,
306 secureLockIconSecure56Bit = 4,
307 secureLockIconSecureFortezza = 5,
308 secureLockIconSecure128Bit = 6
309 } SecureLockIconConstants;
310
311 /*****************************************************************************
312 * DWebBrowserEvents2 dispinterface
313 */
314 [
315 uuid(34a715a0-6587-11d0-924a-0020afc7ac4d),
316 hidden
317 ]
318 dispinterface DWebBrowserEvents2
319 {
320 properties:
321 methods:
322 [id(DISPID_STATUSTEXTCHANGE)]
323 void StatusTextChange([in] BSTR Text);
324
325 [id(DISPID_PROGRESSCHANGE)]
326 void ProgressChange([in] long Progress, [in] long ProgressMax);
327
328 [id(DISPID_COMMANDSTATECHANGE)]
329 void CommandStateChange([in] long Command, [in] VARIANT_BOOL Enable);
330
331 [id(DISPID_DOWNLOADBEGIN)]
332 void DownloadBegin();
333
334 [id(DISPID_DOWNLOADCOMPLETE)]
335 void DownloadComplete();
336
337 [id(DISPID_TITLECHANGE)]
338 void TitleChange([in] BSTR Text);
339
340 [id(DISPID_PROPERTYCHANGE)]
341 void PropertyChange([in] BSTR szProperty);
342
343 [id(DISPID_BEFORENAVIGATE2)]
344 void BeforeNavigate2(
345 [in] IDispatch *pDisp,
346 [in] VARIANT *URL,
347 [in] VARIANT *Flags,
348 [in] VARIANT *TargetFrameName,
349 [in] VARIANT *PostData,
350 [in] VARIANT *Headers,
351 [in, out] VARIANT_BOOL *Cancel);
352
353 [id(DISPID_NEWWINDOW2)]
354 void NewWindow2([in, out] IDispatch **ppDisp, [in, out] VARIANT_BOOL *Cancel);
355
356 [id(DISPID_NAVIGATECOMPLETE2)]
357 void NavigateComplete2([in] IDispatch *pDisp, [in] VARIANT *URL);
358
359 [id(DISPID_DOCUMENTCOMPLETE)]
360 void DocumentComplete([in] IDispatch *pDisp, [in] VARIANT *URL);
361
362 [id(DISPID_ONQUIT)]
363 void OnQuit();
364
365 [id(DISPID_ONVISIBLE)]
366 void OnVisible([in] VARIANT_BOOL Visible);
367
368 [id(DISPID_ONTOOLBAR)]
369 void OnToolBar([in] VARIANT_BOOL ToolBar);
370
371 [id(DISPID_ONMENUBAR)]
372 void OnMenuBar([in] VARIANT_BOOL MenuBar);
373
374 [id(DISPID_ONSTATUSBAR)]
375 void OnStatusBar([in] VARIANT_BOOL StatusBar);
376
377 [id(DISPID_ONFULLSCREEN)]
378 void OnFullScreen([in] VARIANT_BOOL FullScreen);
379
380 [id(DISPID_ONTHEATERMODE)]
381 void OnTheaterMode([in] VARIANT_BOOL TheaterMode);
382
383 [id(DISPID_WINDOWSETRESIZABLE)]
384 void WindowSetResizable([in] VARIANT_BOOL Resizable);
385
386 [id(DISPID_WINDOWSETLEFT)]
387 void WindowSetLeft([in] long Left);
388
389 [id(DISPID_WINDOWSETTOP)]
390 void WindowSetTop([in] long Top);
391
392 [id(DISPID_WINDOWSETWIDTH)]
393 void WindowSetWidth([in] long Width);
394
395 [id(DISPID_WINDOWSETHEIGHT)]
396 void WindowSetHeight([in] long Height);
397
398 [id(DISPID_WINDOWCLOSING)]
399 void WindowClosing(
400 [in] VARIANT_BOOL IsChildWindow,
401 [in, out] VARIANT_BOOL *Cancel);
402
403 [id(DISPID_CLIENTTOHOSTWINDOW)]
404 void ClientToHostWindow(
405 [in, out] long *CX,
406 [in, out] long *CY);
407
408 [id(DISPID_SETSECURELOCKICON)]
409 void SetSecureLockIcon([in] long SecureLockIcon);
410
411 [id(DISPID_FILEDOWNLOAD)]
412 void FileDownload([in, out] VARIANT_BOOL* Cancel);
413
414 [id(DISPID_NAVIGATEERROR)]
415 void NavigateError(
416 [in] IDispatch *pDisp,
417 [in] VARIANT *URL,
418 [in] VARIANT *Frame,
419 [in] VARIANT *StatusCode,
420 [in, out] VARIANT_BOOL *Cancel);
421
422 [id(DISPID_PRINTTEMPLATEINSTANTIATION)]
423 void PrintTemplateInstantiation([in] IDispatch *pDisp);
424
425 [id(DISPID_PRINTTEMPLATETEARDOWN)]
426 void PrintTemplateTeardown([in] IDispatch *pDisp);
427
428 [id(DISPID_UPDATEPAGESTATUS)]
429 void UpdatePageStatus(
430 [in] IDispatch *pDisp,
431 [in] VARIANT *nPage,
432 [in] VARIANT *fDone);
433
434 [id(DISPID_PRIVACYIMPACTEDSTATECHANGE)]
435 void PrivacyImpactedStateChange([in] VARIANT_BOOL bImpacted);
436 }
437
438 [
439 uuid(eab22ac3-30c1-11cf-a7eb-0000c05bae0b),
440 control
441 ]
442 coclass WebBrowser_V1
443 {
444 interface IWebBrowser2;
445 [default] interface IWebBrowser;
446 [source] dispinterface DWebBrowserEvents2;
447 [default, source] dispinterface DWebBrowserEvents;
448 }
449
450 [
451 uuid(8856f961-340a-11d0-a96b-00c04fd705a2),
452 control
453 ]
454 coclass WebBrowser
455 {
456 [default] interface IWebBrowser2;
457 interface IWebBrowser;
458 [default, source] dispinterface DWebBrowserEvents2;
459 [source] dispinterface DWebBrowserEvents;
460 }
461
462 [
463 uuid(0002df01-0000-0000-c000-000000000046)
464 ]
465 coclass InternetExplorer
466 {
467 [default] interface IWebBrowser2;
468 interface IWebBrowserApp;
469 [default, source] dispinterface DWebBrowserEvents2;
470 [source] dispinterface DWebBrowserEvents;
471 }
472
473 [
474 uuid(C08AFD90-F2A1-11D1-8455-00A0C91F3880),
475 hidden
476 ]
477 coclass ShellBrowserWindow
478 {
479 [default] interface IWebBrowser2;
480 interface IWebBrowserApp;
481 [default, source] dispinterface DWebBrowserEvents2;
482 [source] dispinterface DWebBrowserEvents;
483 }
484
485 typedef
486 [
487 uuid(f41e6981-28e5-11d0-82b4-00a0c90c29c5)
488 ]
489 enum ShellWindowTypeConstants {
490 SWC_EXPLORER = 0,
491 SWC_BROWSER = 1,
492 SWC_3RDPARTY = 2,
493 SWC_CALLBACK = 4
494 } ShellWindowTypeConstants;
495
496 typedef
497 [
498 uuid(7716a370-38Ca-11d0-a48B-00a0c90a8f39)
499 ]
500 enum ShellWindowFindWindowOptions {
501 SWFO_NEEDDISPATCH = 1,
502 SWFO_INCLUDEPENDING = 2,
503 SWFO_COOKIEPASSED = 4
504 } ShellWindowFindWindowOptions;
505
506 [
507 uuid(FE4106E0-399A-11D0-A48C-00A0C90A8F39)
508 ]
509 dispinterface DShellWindowsEvents {
510 properties:
511 methods:
512 [id(DISPID_WINDOWREGISTERED)]
513 void WindowRegistered([in] long lCookie);
514
515 [id(DISPID_WINDOWREVOKED)]
516 void WindowRevoked([in] long lCookie);
517 }
518
519 [
520 object,
521 oleautomation,
522 uuid(85cb6900-4d95-11cf-960c-0080c7f4ee85),
523 dual
524 ]
525 interface IShellWindows : IDispatch
526 {
527 [propget] HRESULT Count([out, retval] long *Count);
528
529 [id(0)] HRESULT Item(
530 [in, optional] VARIANT index,
531 [out, retval] IDispatch **Folder);
532
533 [id(-4)] HRESULT _NewEnum([out, retval] IUnknown **ppunk);
534
535 [hidden] HRESULT Register(
536 [in] IDispatch *pid,
537 [in] long hWnd,
538 [in] int swClass,
539 [out] long *plCookie);
540
541 [hidden] HRESULT RegisterPending(
542 [in] long lThreadId,
543 [in] VARIANT *pvarloc,
544 [in] VARIANT *pvarlocRoot,
545 [in] int swClass,
546 [out] long *plCookie);
547
548 [hidden] HRESULT Revoke([in] long lCookie);
549 [hidden] HRESULT OnNavigate([in] long lCookie, [in] VARIANT *pvarLoc);
550 [hidden] HRESULT OnActivated([in] long lCookie, [in] VARIANT_BOOL fActive);
551 [hidden] HRESULT FindWindowSW(
552 [in] VARIANT *pvarLoc,
553 [in] VARIANT *pvarLocRoot,
554 [in] int swClass,
555 [out] long *phwnd,
556 [in] int swfwOptions,
557 [out, retval] IDispatch **ppdispOut);
558
559 [hidden] HRESULT OnCreated([in] long lCookie, [in] IUnknown *punk);
560 [hidden] HRESULT ProcessAttachDetach([in] VARIANT_BOOL fAttach);
561 }
562
563 [
564 uuid(9ba05972-f6a8-11cf-a442-00a0c90a8f39)
565 ]
566 coclass ShellWindows
567 {
568 [default] interface IShellWindows;
569 [default, source] dispinterface DShellWindowsEvents;
570 }
571
572 [
573 odl,
574 uuid(729fe2f8-1ea8-11d1-8f85-00C04fc2fbe1),
575 dual,
576 oleautomation
577 ]
578 interface IShellUIHelper : IDispatch {
579 [id(1), hidden] HRESULT ResetFirstBootMode();
580 [id(2), hidden] HRESULT ResetSafeMode();
581 [id(3), hidden] HRESULT RefreshOfflineDesktop();
582
583 [id(4)] HRESULT AddFavorite(
584 [in] BSTR URL,
585 [in, optional] VARIANT* Title);
586
587 [id(5)] HRESULT AddChannel([in] BSTR URL);
588
589 [id(6)] HRESULT AddDesktopComponent(
590 [in] BSTR URL,
591 [in] BSTR Type,
592 [in, optional] VARIANT *Left,
593 [in, optional] VARIANT *Top,
594 [in, optional] VARIANT *Width,
595 [in, optional] VARIANT *Height);
596
597 [id(7)] HRESULT IsSubscribed(
598 [in] BSTR URL,
599 [out, retval] VARIANT_BOOL *pBool);
600
601 [id(8)] HRESULT NavigateAndFind(
602 [in] BSTR URL,
603 [in] BSTR strQuery,
604 [in] VARIANT *varTargetFrame);
605
606 [id(9)] HRESULT ImportExportFavorites(
607 [in] VARIANT_BOOL fImport,
608 [in] BSTR strImpExpPath);
609
610 [id(10)] HRESULT AutoCompleteSaveForm([in, optional] VARIANT *Form);
611
612 [id(11)] HRESULT AutoScan(
613 [in] BSTR strSearch,
614 [in] BSTR strFailureUrl,
615 [in, optional] VARIANT *pvarTargetFrame);
616
617 [id(12), hidden] HRESULT AutoCompleteAttach([in, optional] VARIANT *Reserved);
618
619 [id(13)] HRESULT ShowBrowserUI(
620 [in] BSTR bstrName,
621 [in] VARIANT *pvarIn,
622 [out, retval] VARIANT *pvarOut);
623 }
624
625 [
626 uuid(64ab4bb7-111e-11d1-8f79-00c04fc2fbe1)
627 ]
628 coclass ShellUIHelper {
629 [default] interface IShellUIHelper;
630 }
631
632 [
633 uuid(55136806-b2de-11d1-b9f2-00a0c98bc547)
634 ]
635 dispinterface DShellNameSpaceEvents {
636 properties:
637 methods:
638 [id(1)] void FavoritesSelectionChange(
639 [in] long cItems,
640 [in] long hItem,
641 [in] BSTR strName,
642 [in] BSTR strUrl,
643 [in] long cVisits,
644 [in] BSTR strDate,
645 [in] long fAvailableOffline);
646
647 [id(2)] void SelectionChange();
648 [id(3)] void DoubleClick();
649 [id(4)] void Initialized();
650 }
651
652 [
653 odl,
654 uuid(55136804-b2de-11d1-b9f2-00a0c98bc547),
655 hidden,
656 dual,
657 oleautomation
658 ]
659 interface IShellFavoritesNameSpace : IDispatch {
660 [id(1)] HRESULT MoveSelectionUp();
661 [id(2)] HRESULT MoveSelectionDown();
662 [id(3)] HRESULT ResetSort();
663 [id(4)] HRESULT NewFolder();
664 [id(5)] HRESULT Synchronize();
665 [id(6)] HRESULT Import();
666 [id(7)] HRESULT Export();
667 [id(8)] HRESULT InvokeContextMenuCommand([in] BSTR strCommand);
668 [id(9)] HRESULT MoveSelectionTo();
669 [id(10), propget] HRESULT SubscriptionsEnabled([out, retval] VARIANT_BOOL *pBool);
670 [id(11)] HRESULT CreateSubscriptionForSelection([out, retval] VARIANT_BOOL *pBool);
671 [id(12)] HRESULT DeleteSubscriptionForSelection([out, retval] VARIANT_BOOL *pBool);
672 [id(13)] HRESULT SetRoot([in] BSTR bstrFullPath);
673 }
674
675 [
676 odl,
677 uuid(e572d3c9-37be-4ae2-825d-d521763e3108),
678 hidden,
679 dual,
680 oleautomation
681 ]
682 interface IShellNameSpace : IShellFavoritesNameSpace {
683 [id(14), propget] HRESULT EnumOptions([out, retval] long* pgrfEnumFlags);
684 [id(14), propput] HRESULT EnumOptions([in] long pgrfEnumFlags);
685
686 [id(15), propget] HRESULT SelectedItem([out, retval] IDispatch **pItem);
687 [id(15), propput] HRESULT SelectedItem([in] IDispatch *pItem);
688
689 [id(16), propget] HRESULT Root([out, retval] VARIANT *pvar);
690 [id(16), propput] HRESULT Root([in] VARIANT pvar);
691
692 [id(17), propget] HRESULT Depth([out, retval] int *piDepth);
693 [id(17), propput] HRESULT Depth([in] int piDepth);
694
695 [id(18), propget] HRESULT Mode([out, retval] unsigned int *puMode);
696 [id(18), propput] HRESULT Mode([in] unsigned int puMode);
697
698 [id(19), propget] HRESULT Flags([out, retval] unsigned long *pdwFlags);
699 [id(19), propput] HRESULT Flags([in] unsigned long pdwFlags);
700
701 [id(20), propput] HRESULT TVFlags([in] unsigned long dwFlags);
702 [id(20), propget] HRESULT TVFlags([out, retval] unsigned long *dwFlags);
703
704 [id(21), propget] HRESULT Columns([out, retval] BSTR *bstrColumns);
705 [id(21), propput] HRESULT Columns([in] BSTR bstrColumns);
706
707 [id(22), propget] HRESULT CountViewTypes([out, retval] int *piTypes);
708
709 [id(23)] HRESULT SetViewType([in] int iType);
710 [id(24)] HRESULT SelectedItems([out, retval] IDispatch **ppid);
711 [id(25)] HRESULT Expand([in] VARIANT var, int iDepth);
712 [id(26)] HRESULT UnselectAll();
713 }
714
715 [
716 uuid(55136805-b2de-11d1-b9f2-00a0c98bc547)
717 ]
718 coclass ShellNameSpace {
719 [default] interface IShellNameSpace;
720 [default, source] dispinterface DShellNameSpaceEvents;
721 }
722
723 [
724 uuid(2f2f1f96-2bc1-4b1c-be28-ea3774f4676a)
725 ]
726 coclass ShellShellNameSpace {
727 [default] interface IShellNameSpace;
728 [default, source] dispinterface DShellNameSpaceEvents;
729 }
730
731 [
732 odl,
733 uuid(f3470f24-15fd-11d2-bb2e-00805ff7efca),
734 hidden,
735 dual,
736 oleautomation
737 ]
738 interface IScriptErrorList : IDispatch {
739 [id(10)] HRESULT advanceError();
740 [id(11)] HRESULT retreatError();
741 [id(12)] HRESULT canAdvanceError([out, retval] long *pfCanAdvance);
742 [id(13)] HRESULT canRetreatError([out, retval] long *pfCanRetreat);
743 [id(14)] HRESULT getErrorLine([out, retval] long *plLine);
744 [id(15)] HRESULT getErrorChar([out, retval] long *plChar);
745 [id(16)] HRESULT getErrorCode([out, retval] long *plCode);
746 [id(17)] HRESULT getErrorMsg([out, retval] BSTR *pstr);
747 [id(18)] HRESULT getErrorUrl([out, retval] BSTR *pstr);
748 [id(23)] HRESULT getAlwaysShowLockState([out, retval] long *pfAlwaysShowLocked);
749 [id(19)] HRESULT getDetailsPaneOpen([out, retval] long *pfDetailsPaneOpen);
750 [id(20)] HRESULT setDetailsPaneOpen(long fDetailsPaneOpen);
751 [id(21)] HRESULT getPerErrorDisplay([out, retval] long *pfPerErrorDisplay);
752 [id(22)] HRESULT setPerErrorDisplay(long fPerErrorDisplay);
753 }
754
755 [
756 uuid(efd01300-160f-11d2-bb2e-00805ff7efca),
757 hidden
758 ]
759 coclass CScriptErrorList {
760 [default] interface IScriptErrorList;
761 }
762
763 [
764 odl,
765 uuid(ba9239a4-3dd5-11d2-bf8b-00c04fb93661),
766 hidden,
767 dual,
768 oleautomation
769 ]
770 interface ISearch : IDispatch {
771 [propget] HRESULT Title([out, retval] BSTR *pbstrTitle);
772 [propget] HRESULT Id([out, retval] BSTR *pbstrId);
773 [propget] HRESULT URL([out, retval] BSTR *pbstrUrl);
774 }
775
776 [
777 odl,
778 uuid(47c922a2-3dd5-11d2-bf8b-00c04fb93661),
779 hidden,
780 dual,
781 oleautomation
782 ]
783 interface ISearches : IDispatch {
784 [propget] HRESULT Count([out, retval] long *plCount);
785 [propget] HRESULT Default([out, retval] BSTR *pbstrDefault);
786
787 HRESULT Item(
788 [in, optional] VARIANT index,
789 [out, retval] ISearch **ppid);
790
791 [id(-4)] HRESULT _NewEnum([out, retval] IUnknown **ppunk);
792 }
793
794 [
795 odl,
796 uuid(72423e8f-8011-11d2-be79-00a0c9a83da1),
797 hidden,
798 dual,
799 oleautomation
800 ]
801 interface ISearchAssistantOC : IDispatch {
802 [id(1)] HRESULT AddNextMenuItem([in] BSTR bstrText, [in] long idItem);
803 [id(2)] HRESULT SetDefaultSearchUrl([in] BSTR bstrUrl);
804 [id(3)] HRESULT NavigateToDefaultSearch();
805
806 [id(4)] HRESULT IsRestricted(
807 [in] BSTR bstrGuid,
808 [out, retval] VARIANT_BOOL *pVal);
809
810 [id(5), propget] HRESULT ShellFeaturesEnabled([out, retval] VARIANT_BOOL *pVal);
811 [id(6), propget] HRESULT SearchAssistantDefault([out, retval] VARIANT_BOOL *pVal);
812 [id(7), propget] HRESULT Searches([out, retval] ISearches **ppid);
813 [id(8), propget] HRESULT InWebFolder([out, retval] VARIANT_BOOL *pVal);
814
815 [id(9)] HRESULT PutProperty(
816 [in] VARIANT_BOOL bPerLocale,
817 [in] BSTR bstrName,
818 [in] BSTR bstrValue);
819
820 [id(10)] HRESULT GetProperty(
821 [in] VARIANT_BOOL bPerLocale,
822 [in] BSTR bstrName,
823 [out, retval] BSTR *pbstrValue);
824
825 [id(11), propput] HRESULT EventHandled([in] VARIANT_BOOL rhs);
826 [id(12)] HRESULT ResetNextMenu();
827 [id(13)] HRESULT FindOnWeb();
828 [id(14)] HRESULT FindFilesOrFolders();
829 [id(15)] HRESULT FindComputer();
830 [id(16)] HRESULT FindPrinter();
831 [id(17)] HRESULT FindPeople();
832
833 [id(18)] HRESULT GetSearchAssistantURL(
834 [in] VARIANT_BOOL bSubstitute,
835 [in] VARIANT_BOOL bCustomize,
836 [out, retval] BSTR *pbstrValue);
837
838 [id(19)] HRESULT NotifySearchSettingsChanged();
839
840 [id(20), propput] HRESULT ASProvider([in] BSTR pProvider);
841 [id(20), propget] HRESULT ASProvider([out, retval] BSTR *pProvider);
842
843 [id(21), propput] HRESULT ASSetting([in] int pSetting);
844 [id(21), propget] HRESULT ASSetting([out, retval] int *pSetting);
845
846 [id(22)] HRESULT NETDetectNextNavigate();
847 [id(23)] HRESULT PutFindText([in] BSTR FindText);
848 [id(24), propget] HRESULT Version([out, retval] int *pVersion);
849
850 [id(25)] HRESULT EncodeString(
851 [in] BSTR bstrValue,
852 [in] BSTR bstrCharSet,
853 [in] VARIANT_BOOL bUseUTF8,
854 [out, retval] BSTR* pbstrResult);
855 }
856
857 [
858 odl,
859 uuid(72423e8f-8011-11d2-be79-00a0c9a83da2),
860 hidden,
861 dual,
862 oleautomation
863 ]
864 interface ISearchAssistantOC2 : ISearchAssistantOC {
865 [id(26), propget] HRESULT ShowFindPrinter([out, retval] VARIANT_BOOL *pbShowFindPrinter);
866 }
867
868 [
869 odl,
870 uuid(72423e8f-8011-11d2-be79-00a0c9a83da3),
871 hidden,
872 dual,
873 oleautomation
874 ]
875 interface ISearchAssistantOC3 : ISearchAssistantOC2 {
876 [id(27), propget] HRESULT SearchCompanionAvailable([out, retval] VARIANT_BOOL *pbAvailable);
877
878 [id(28), propput] HRESULT UseSearchCompanion([in] VARIANT_BOOL pbUseSC);
879 [id(28), propget] HRESULT UseSearchCompanion([out, retval] VARIANT_BOOL *pbUseSC);
880 }
881
882 [
883 uuid(1611fdda-445b-11d2-85de-00C04fa35c89),
884 hidden
885 ]
886 dispinterface _SearchAssistantEvents {
887 properties:
888 methods:
889 [id(1)] void OnNextMenuSelect([in] long idItem);
890 [id(2)] void OnNewSearch();
891 }
892
893 [
894 uuid(b45ff030-4447-11d2-85de-00C04fa35c89),
895 hidden
896 ]
897 coclass SearchAssistantOC {
898 [default] interface ISearchAssistantOC3;
899 [default, source] dispinterface _SearchAssistantEvents;
900 }
901
902 [
903 uuid(2e71fd0f-aab1-42c0-9146-6d2c4edcf07d),
904 hidden
905 ]
906 coclass ShellSearchAssistantOC {
907 [default] interface ISearchAssistantOC3;
908 [default, source] dispinterface _SearchAssistantEvents;
909 }
910
911 } /* library */