| /* |
| * Defines the COM interfaces and APIs related to the IE Web browser |
| * |
| * Copyright (C) 2001 John R. Sheets (for CodeWeavers) |
| * Copyright (C) 2003 Alexandre Julliard |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| */ |
| |
| import "ocidl.idl"; |
| import "docobj.idl"; |
| |
| |
| /***************************************************************************** |
| * IWebBrowser interface |
| */ |
| [ |
| object, |
| oleautomation, |
| uuid(eab22ac1-30c1-11cf-a7eb-0000c05bae0b) |
| ] |
| interface IWebBrowser : IDispatch |
| { |
| typedef enum BrowserNavConstants |
| { |
| navOpenInNewWindow = 0x1, |
| navNoHistory = 0x2, |
| navNoReadFromCache = 0x4, |
| navNoWriteToCache = 0x8, |
| navAllowAutosearch = 0x10, |
| navBrowserBar = 0x20, |
| navHyperlink = 0x40, |
| navEnforceRestricted = 0x80 |
| } BrowserNavConstants; |
| |
| typedef enum RefreshConstants |
| { |
| REFRESH_NORMAL = 0, |
| REFRESH_IFEXPIRED = 1, |
| REFRESH_COMPLETELY = 3 |
| } RefreshConstants; |
| |
| HRESULT GoBack(); |
| HRESULT GoForward(); |
| HRESULT GoHome(); |
| HRESULT GoSearch(); |
| HRESULT Navigate( |
| [in] BSTR URL, |
| [in] VARIANT *Flags, |
| [in] VARIANT *TargetFrameName, |
| [in] VARIANT *PostData, |
| [in] VARIANT *Headers); |
| HRESULT Refresh(); |
| HRESULT Refresh2( [in] VARIANT *Level ); |
| HRESULT Stop(); |
| HRESULT get_Application([out] IDispatch** ppDisp); |
| HRESULT get_Parent([out] IDispatch** ppDisp); |
| HRESULT get_Container([out] IDispatch** ppDisp); |
| HRESULT get_Document([out] IDispatch** ppDisp); |
| HRESULT get_TopLevelContainer([out] VARIANT_BOOL* pBool); |
| HRESULT get_Type([out] BSTR* Type); |
| HRESULT get_Left([out] long *pl); |
| HRESULT put_Left([in] long Left); |
| HRESULT get_Top([out] long *pl); |
| HRESULT put_Top([in] long Top); |
| HRESULT get_Width([out] long *pl); |
| HRESULT put_Width([in] long Width); |
| HRESULT get_Height([out] long *pl); |
| HRESULT put_Height([in] long Height); |
| HRESULT get_LocationName([out] BSTR *LocationName); |
| HRESULT get_LocationURL([out] BSTR * LocationURL); |
| HRESULT get_Busy([out] VARIANT_BOOL *pBool); |
| } |
| |
| |
| /***************************************************************************** |
| * IWebBrowserApp interface |
| */ |
| [ |
| object, |
| oleautomation, |
| uuid(0002df05-0000-0000-c000-000000000046) |
| ] |
| interface IWebBrowserApp : IWebBrowser |
| { |
| HRESULT Quit(); |
| HRESULT ClientToWindow([in,out] int* pcx, [in,out] int* pcy); |
| HRESULT PutProperty([in] BSTR szProperty, [in] VARIANT vtValue); |
| HRESULT GetProperty([in] BSTR szProperty, [out] VARIANT *pvtValue); |
| HRESULT get_Name([out] BSTR* Name); |
| HRESULT get_HWND([out] long *pHWND); |
| HRESULT get_FullName([out] BSTR* FullName); |
| HRESULT get_Path([out] BSTR* Path); |
| HRESULT get_Visible([out] VARIANT_BOOL* pBool); |
| HRESULT put_Visible([in] VARIANT_BOOL Value); |
| HRESULT get_StatusBar([out] VARIANT_BOOL* pBool); |
| HRESULT put_StatusBar([in] VARIANT_BOOL Value); |
| HRESULT get_StatusText([out] BSTR *StatusText); |
| HRESULT put_StatusText([in] BSTR StatusText); |
| HRESULT get_ToolBar([out] int * Value); |
| HRESULT put_ToolBar([in] int Value); |
| HRESULT get_MenuBar([out] VARIANT_BOOL * Value); |
| HRESULT put_MenuBar([in] VARIANT_BOOL Value); |
| HRESULT get_FullScreen([out] VARIANT_BOOL * pbFullScreen); |
| HRESULT put_FullScreen([in] VARIANT_BOOL bFullScreen); |
| } |
| |
| /* FIXME */ |
| cpp_quote("DEFINE_GUID(CLSID_WebBrowser, 0x8856f961, 0x340a, 0x11d0, 0xa9, 0x6b, 0x00, 0xc0, 0x4f, 0xd7, 0x05, 0xa2);") |