Added IWebBrowse2 interface.
[wine/testsucceed.git] / include / exdisp.idl
blob4438e67de6b6d52ae2e793e59d8bf528a5624ccf
1 /*
2 * Defines the COM interfaces and APIs related to the IE Web browser
4 * Copyright (C) 2001 John R. Sheets (for CodeWeavers)
5 * Copyright (C) 2003 Alexandre Julliard
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 import "ocidl.idl";
23 import "docobj.idl";
26 /*****************************************************************************
27 * IWebBrowser interface
30 object,
31 oleautomation,
32 uuid(eab22ac1-30c1-11cf-a7eb-0000c05bae0b)
34 interface IWebBrowser : IDispatch
36 typedef enum BrowserNavConstants
38 navOpenInNewWindow = 0x1,
39 navNoHistory = 0x2,
40 navNoReadFromCache = 0x4,
41 navNoWriteToCache = 0x8,
42 navAllowAutosearch = 0x10,
43 navBrowserBar = 0x20,
44 navHyperlink = 0x40,
45 navEnforceRestricted = 0x80
46 } BrowserNavConstants;
48 typedef enum RefreshConstants
50 REFRESH_NORMAL = 0,
51 REFRESH_IFEXPIRED = 1,
52 REFRESH_COMPLETELY = 3
53 } RefreshConstants;
55 HRESULT GoBack();
56 HRESULT GoForward();
57 HRESULT GoHome();
58 HRESULT GoSearch();
59 HRESULT Navigate(
60 [in] BSTR URL,
61 [in] VARIANT *Flags,
62 [in] VARIANT *TargetFrameName,
63 [in] VARIANT *PostData,
64 [in] VARIANT *Headers);
65 HRESULT Refresh();
66 HRESULT Refresh2( [in] VARIANT *Level );
67 HRESULT Stop();
68 [propget] HRESULT Application([out] IDispatch** ppDisp);
69 [propget] HRESULT Parent([out] IDispatch** ppDisp);
70 [propget] HRESULT Container([out] IDispatch** ppDisp);
71 [propget] HRESULT Document([out] IDispatch** ppDisp);
72 [propget] HRESULT TopLevelContainer([out] VARIANT_BOOL* pBool);
73 [propget] HRESULT Type([out] BSTR* Type);
74 [propget] HRESULT Left([out] long *pl);
75 [propput] HRESULT Left([in] long Left);
76 [propget] HRESULT Top([out] long *pl);
77 [propput] HRESULT Top([in] long Top);
78 [propget] HRESULT Width([out] long *pl);
79 [propput] HRESULT Width([in] long Width);
80 [propget] HRESULT Height([out] long *pl);
81 [propput] HRESULT Height([in] long Height);
82 [propget] HRESULT LocationName([out] BSTR *LocationName);
83 [propget] HRESULT LocationURL([out] BSTR * LocationURL);
84 [propget] HRESULT Busy([out] VARIANT_BOOL *pBool);
88 /*****************************************************************************
89 * IWebBrowserApp interface
92 object,
93 oleautomation,
94 uuid(0002df05-0000-0000-c000-000000000046)
96 interface IWebBrowserApp : IWebBrowser
98 HRESULT Quit();
99 HRESULT ClientToWindow([in,out] int* pcx, [in,out] int* pcy);
100 HRESULT PutProperty([in] BSTR szProperty, [in] VARIANT vtValue);
101 HRESULT GetProperty([in] BSTR szProperty, [out] VARIANT *pvtValue);
102 [propget] HRESULT Name([out] BSTR* Name);
103 [propget] HRESULT HWND([out] long *pHWND);
104 [propget] HRESULT FullName([out] BSTR* FullName);
105 [propget] HRESULT Path([out] BSTR* Path);
106 [propget] HRESULT Visible([out] VARIANT_BOOL* pBool);
107 [propput] HRESULT Visible([in] VARIANT_BOOL Value);
108 [propget] HRESULT StatusBar([out] VARIANT_BOOL* pBool);
109 [propput] HRESULT StatusBar([in] VARIANT_BOOL Value);
110 [propget] HRESULT StatusText([out] BSTR *StatusText);
111 [propput] HRESULT StatusText([in] BSTR StatusText);
112 [propget] HRESULT ToolBar([out] int * Value);
113 [propput] HRESULT ToolBar([in] int Value);
114 [propget] HRESULT MenuBar([out] VARIANT_BOOL * Value);
115 [propput] HRESULT MenuBar([in] VARIANT_BOOL Value);
116 [propget] HRESULT FullScreen([out] VARIANT_BOOL * pbFullScreen);
117 [propput] HRESULT FullScreen([in] VARIANT_BOOL bFullScreen);
120 /*****************************************************************************
121 * IWebBrowser2 interface
124 object,
125 oleautomation,
126 uuid(d30c1661-cdaf-11d0-8a3e-00c04fc9e26e)
128 interface IWebBrowser2 : IWebBrowserApp
130 HRESULT Navigate2(
131 [in] VARIANT *URL,
132 [in] VARIANT *Flags,
133 [in] VARIANT *TargetFrameName,
134 [in] VARIANT *PostData,
135 [in] VARIANT *Headers);
136 HRESULT QueryStatusWB([in] OLECMDID cmdID, [out] OLECMDF *pcmdf);
137 HRESULT ExecWB([in] OLECMDID cmdID, [in] OLECMDEXECOPT cmdexecopt, [in] VARIANT *pvaIn, [out, in] VARIANT *pvaOut);
138 HRESULT ShowBrowserBar([in] VARIANT *pvaClsid, [in] VARIANT *pvarShow, [in] VARIANT *pvarSize);
140 [propget] HRESULT ReadyState([out] READYSTATE *plReadyState);
141 [propget] HRESULT Offline([out] VARIANT_BOOL *pbOffline);
142 [propput] HRESULT Offline([in] VARIANT_BOOL bOffline);
143 [propget] HRESULT Silent([out] VARIANT_BOOL *pbSilent);
144 [propput] HRESULT Silent([in] VARIANT_BOOL bSilent);
145 [propget] HRESULT RegisterAsBrowser([out] VARIANT_BOOL *pbRegister);
146 [propput] HRESULT RegisterAsBrowser([in] VARIANT_BOOL bRegister);
147 [propget] HRESULT RegisterAsDropTarget([out] VARIANT_BOOL *pbRegister);
148 [propput] HRESULT RegisterAsDropTarget([in] VARIANT_BOOL bRegister);
149 [propget] HRESULT TheaterMode([out] VARIANT_BOOL *pbRegister);
150 [propput] HRESULT TheaterMode([in] VARIANT_BOOL bRegister);
151 [propget] HRESULT AddressBar([out] VARIANT_BOOL *Value);
152 [propput] HRESULT AddressBar([in] VARIANT_BOOL Value);
153 [propget] HRESULT Resizable([out] VARIANT_BOOL *Value);
154 [propput] HRESULT Resizable([in] VARIANT_BOOL Value);
158 object,
159 oleautomation,
160 uuid(85cb6900-4d95-11cf-960c-0080c7f4ee85)
162 interface IShellWindows : IDispatch
164 [propget] HRESULT Count( [out] long *Count );
165 HRESULT Item( [in] VARIANT index, [out] IDispatch **Folder );
166 HRESULT _NewEnum( [out] IUnknown **ppunk );
167 HRESULT Register( [in] IDispatch *pid, [in] long hWnd, [in] int swClass,
168 [out] long *plCookie );
169 HRESULT RegisterPending( [in] long lThread, [in] VARIANT *pvarloc,
170 [in] VARIANT *varlocRoot, [in] int swClass, [out] long *plCookie );
171 HRESULT Revoke( [in] long Cookie );
172 HRESULT OnNavigate( [in] long Cookie, [out] VARIANT *pvarLoc );
173 HRESULT OnActivated( [in] long Cookie, [in] VARIANT fActive );
174 HRESULT FindWindowSW( [in] VARIANT *pvarLoc, [in] VARIANT *pvarLocRoot,
175 [in] int swClass, [out] long *phwnd, int swfwOptions,
176 IDispatch **ppdispOut );
177 HRESULT OnCreated( [in] long lCookie, [in] IUnknown *punk );
178 HRESULT ProcessAttachDetach( [in] VARIANT_BOOL fAttach );
181 /* FIXME */
182 cpp_quote("DEFINE_GUID(CLSID_WebBrowser, 0x8856f961, 0x340a, 0x11d0, 0xa9, 0x6b, 0x00, 0xc0, 0x4f, 0xd7, 0x05, 0xa2);")