1 // Licensed under the Apache License, Version 2.0 2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license 3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option. 4 // All files in the project carrying such notice may not be copied, modified, or distributed 5 // except according to those terms. 6 //! Mappings for the contents of ExDisp.h 7 use shared::basetsd::SHANDLE_PTR; 8 use shared::wtypes::{BSTR, VARIANT_BOOL}; 9 use um::docobj::{OLECMDEXECOPT, OLECMDF, OLECMDID}; 10 use um::oaidl::{IDispatch, IDispatchVtbl, VARIANT}; 11 use um::ocidl::READYSTATE; 12 use um::winnt::{HRESULT, INT, LONG}; 13 DEFINE_GUID!{IID_IWebBrowser2, 14 0xd30c1661, 0xcdaf, 0x11d0, 0x8a, 0x3e, 0x00, 0xc0, 0x4f, 0xc9, 0xe2, 0x6e} 15 RIDL!{#[uuid(0xeab22ac1, 0x30c1, 0x11cf, 0xa7, 0xeb, 0x00, 0x00, 0xc0, 0x5b, 0xae, 0x0b)] 16 interface IWebBrowser(IWebBrowserVtbl): IDispatch(IDispatchVtbl) { 17 fn GoBack() -> HRESULT, 18 fn GoForward() -> HRESULT, 19 fn GoHome() -> HRESULT, 20 fn GoSearch() -> HRESULT, 21 fn Navigate( 22 URL: BSTR, 23 Flags: *const VARIANT, 24 TargetFrameName: *const VARIANT, 25 PostData: *const VARIANT, 26 Headers: *const VARIANT, 27 ) -> HRESULT, 28 fn Refresh() -> HRESULT, 29 fn Refresh2( 30 Level: *const VARIANT, 31 ) -> HRESULT, 32 fn Stop() -> HRESULT, 33 fn get_Application( 34 ppDisp: *mut *mut IDispatch, 35 ) -> HRESULT, 36 fn get_Parent( 37 ppDisp: *mut *mut IDispatch, 38 ) -> HRESULT, 39 fn get_Container( 40 ppDisp: *mut *mut IDispatch, 41 ) -> HRESULT, 42 fn get_Document( 43 ppDisp: *mut *mut IDispatch, 44 ) -> HRESULT, 45 fn get_TopLevelContainer( 46 pBool: *mut VARIANT_BOOL, 47 ) -> HRESULT, 48 fn get_Type( 49 Type: *mut BSTR, 50 ) -> HRESULT, 51 fn get_Left( 52 pl: *mut LONG, 53 ) -> HRESULT, 54 fn put_Left( 55 Left: LONG, 56 ) -> HRESULT, 57 fn get_Top( 58 pl: *mut LONG, 59 ) -> HRESULT, 60 fn put_Top( 61 Top: LONG, 62 ) -> HRESULT, 63 fn get_Width( 64 pl: *mut LONG, 65 ) -> HRESULT, 66 fn put_Width( 67 Width: LONG, 68 ) -> HRESULT, 69 fn get_Height( 70 pl: *mut LONG, 71 ) -> HRESULT, 72 fn put_Height( 73 Height: LONG, 74 ) -> HRESULT, 75 fn get_LocationName( 76 LocationName: *mut BSTR, 77 ) -> HRESULT, 78 fn get_LocationURL( 79 LocationURL: *mut BSTR, 80 ) -> HRESULT, 81 fn get_Busy( 82 pBool: *mut VARIANT_BOOL, 83 ) -> HRESULT, 84 }} 85 RIDL!{#[uuid(0x0002df05, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46)] 86 interface IWebBrowserApp(IWebBrowserAppVtbl): IWebBrowser(IWebBrowserVtbl) { 87 fn Quit() -> HRESULT, 88 fn ClientToWindow( 89 pcx: *mut INT, 90 pcy: *mut INT, 91 ) -> HRESULT, 92 fn PutProperty( 93 Property: BSTR, 94 vtValue: VARIANT, 95 ) -> HRESULT, 96 fn GetProperty( 97 Property: BSTR, 98 pvtValue: *mut VARIANT, 99 ) -> HRESULT, 100 fn get_Name( 101 Name: *mut BSTR, 102 ) -> HRESULT, 103 fn get_HWND( 104 pHWND: *mut SHANDLE_PTR, 105 ) -> HRESULT, 106 fn get_FullName( 107 FullName: *mut BSTR, 108 ) -> HRESULT, 109 fn get_Path( 110 Path: *mut BSTR, 111 ) -> HRESULT, 112 fn get_Visible( 113 pBool: *mut VARIANT_BOOL, 114 ) -> HRESULT, 115 fn put_Visible( 116 Value: VARIANT_BOOL, 117 ) -> HRESULT, 118 fn get_StatusBar( 119 pBool: *mut VARIANT_BOOL, 120 ) -> HRESULT, 121 fn put_StatusBar( 122 Value: VARIANT_BOOL, 123 ) -> HRESULT, 124 fn get_StatusText( 125 StatusText: *mut BSTR, 126 ) -> HRESULT, 127 fn put_StatusText( 128 StatusText: BSTR, 129 ) -> HRESULT, 130 fn get_ToolBar( 131 Value: *mut INT, 132 ) -> HRESULT, 133 fn put_ToolBar( 134 Value: INT, 135 ) -> HRESULT, 136 fn get_MenuBar( 137 Value: *mut VARIANT_BOOL, 138 ) -> HRESULT, 139 fn put_MenuBar( 140 Value: VARIANT_BOOL, 141 ) -> HRESULT, 142 fn get_FullScreen( 143 pbFullScreen: *mut VARIANT_BOOL, 144 ) -> HRESULT, 145 fn put_FullScreen( 146 bFullScreen: VARIANT_BOOL, 147 ) -> HRESULT, 148 }} 149 RIDL!{#[uuid(0xd30c1661, 0xcdaf, 0x11d0, 0x8a, 0x3e, 0x00, 0xc0, 0x4f, 0xc9, 0xe2, 0x6e)] 150 interface IWebBrowser2(IWebBrowser2Vtbl): IWebBrowserApp(IWebBrowserAppVtbl) { 151 fn Navigate2( 152 URL: *const VARIANT, 153 Flags: *const VARIANT, 154 TargetFrameName: *const VARIANT, 155 PostData: *const VARIANT, 156 Headers: *const VARIANT, 157 ) -> HRESULT, 158 fn QueryStatusWB( 159 cmdID: OLECMDID, 160 pcmdf: *mut OLECMDF, 161 ) -> HRESULT, 162 fn ExecWB( 163 cmdID: OLECMDID, 164 cmdexecopt: OLECMDEXECOPT, 165 pvaIn: *const VARIANT, 166 pvaOut: *mut VARIANT, 167 ) -> HRESULT, 168 fn ShowBrowserBar( 169 pvaClsid: *const VARIANT, 170 pvarShow: *const VARIANT, 171 pvarSize: *const VARIANT, 172 ) -> HRESULT, 173 fn get_ReadyState( 174 plReadyState: *mut READYSTATE, 175 ) -> HRESULT, 176 fn get_Offline( 177 pbOffline: *mut VARIANT_BOOL, 178 ) -> HRESULT, 179 fn put_Offline( 180 bOffline: VARIANT_BOOL, 181 ) -> HRESULT, 182 fn get_Silent( 183 pbSilent: *mut VARIANT_BOOL, 184 ) -> HRESULT, 185 fn put_Silent( 186 bSilent: VARIANT_BOOL, 187 ) -> HRESULT, 188 fn get_RegisterAsBrowser( 189 pbRegister: *mut VARIANT_BOOL, 190 ) -> HRESULT, 191 fn put_RegisterAsBrowser( 192 bRegister: VARIANT_BOOL, 193 ) -> HRESULT, 194 fn get_RegisterAsDropTarget( 195 pbRegister: *mut VARIANT_BOOL, 196 ) -> HRESULT, 197 fn put_RegisterAsDropTarget( 198 bRegister: VARIANT_BOOL, 199 ) -> HRESULT, 200 fn get_TheaterMode( 201 pbRegister: *mut VARIANT_BOOL, 202 ) -> HRESULT, 203 fn put_TheaterMode( 204 bRegister: VARIANT_BOOL, 205 ) -> HRESULT, 206 fn get_AddressBar( 207 Value: *mut VARIANT_BOOL, 208 ) -> HRESULT, 209 fn put_AddressBar( 210 Value: VARIANT_BOOL, 211 ) -> HRESULT, 212 fn get_Resizable( 213 Value: *mut VARIANT_BOOL, 214 ) -> HRESULT, 215 fn put_Resizable( 216 Value: VARIANT_BOOL, 217 ) -> HRESULT, 218 }} 219 DEFINE_GUID!{CLSID_InternetExplorer, 220 0x0002df01, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46} 221