X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b7d74e9ca32b2ffd17bd0f98fde97361b6d5ec0f..b404a8f3b072129c107c6d9a5e0f6f53cd34807b:/src/msw/webview_ie.cpp diff --git a/src/msw/webview_ie.cpp b/src/msw/webview_ie.cpp index 9f0c1168b4..868877c9ef 100644 --- a/src/msw/webview_ie.cpp +++ b/src/msw/webview_ie.cpp @@ -27,6 +27,8 @@ #include "wx/msw/missing.h" #include "wx/filesys.h" +wxIMPLEMENT_DYNAMIC_CLASS(wxWebViewIE, wxWebView); + //We link to urlmon as it is required for CoInternetGetSession #pragma comment(lib, "urlmon") @@ -663,7 +665,7 @@ void wxWebViewIE::RunScript(const wxString& javascript) document->Release(); } -void wxWebViewIE::RegisterHandler(wxWebHandler* handler) +void wxWebViewIE::RegisterHandler(wxSharedPtr handler) { ClassFactory* cf = new ClassFactory(handler); IInternetSession* session; @@ -957,7 +959,7 @@ void wxWebViewIE::onActiveXEvent(wxActiveXEvent& evt) evt.Skip(); } -VirtualProtocol::VirtualProtocol(wxWebHandler *handler) +VirtualProtocol::VirtualProtocol(wxSharedPtr handler) { m_refCount = 0; m_file = NULL; @@ -983,12 +985,6 @@ HRESULT VirtualProtocol::QueryInterface(REFIID riid, void **ppvObject) AddRef(); return S_OK; } - else if(riid == IID_IInternetProtocolInfo) - { - *ppvObject = (IInternetProtocolInfo*)this; - AddRef(); - return S_OK; - } else { *ppvObject = NULL; @@ -1076,50 +1072,6 @@ HRESULT VirtualProtocol::Read(void *pv, ULONG cb, ULONG *pcbRead) } } -HRESULT VirtualProtocol::CombineUrl(LPCWSTR pwzBaseUrl, LPCWSTR pwzRelativeUrl, - DWORD WXUNUSED(dwCombineFlags), - LPWSTR pwzResult, - DWORD cchResult, DWORD *pcchResult, - DWORD WXUNUSED(dwReserved)) -{ - - wxString newuri = m_handler->CombineURIs(pwzBaseUrl, pwzRelativeUrl); - //Check the buffer we are given can hold the new url - if(wxStrlen(newuri) > cchResult) - return S_FALSE; - - wxStrcpy(pwzResult, newuri.c_str()); - *pcchResult = wxStrlen(newuri); - return S_OK; -} - -HRESULT VirtualProtocol::ParseUrl(LPCWSTR pwzUrl, - PARSEACTION WXUNUSED(ParseAction), - DWORD WXUNUSED(dwParseFlags), - LPWSTR pwzResult, - DWORD cchResult, DWORD *pcchResult, - DWORD WXUNUSED(dwReserved)) -{ - //Check the buffer we are given can hold the new url - if(wxStrlen(pwzUrl) > cchResult) - return S_FALSE; - - wxStrcpy(pwzResult, pwzUrl); - *pcchResult = wxStrlen(pwzResult); - return S_OK; -} - -HRESULT VirtualProtocol::QueryInfo(LPCWSTR WXUNUSED(pwzUrl), - QUERYOPTION WXUNUSED(OueryOption), - DWORD WXUNUSED(dwQueryFlags), - LPVOID WXUNUSED(pBuffer), - DWORD WXUNUSED(cbBuffer), - DWORD* WXUNUSED(pcbBuf), - DWORD WXUNUSED(dwReserved)) -{ - return INET_E_DEFAULT_ACTION; -} - HRESULT ClassFactory::CreateInstance(IUnknown* pUnkOuter, REFIID riid, void ** ppvObject) {