wxDECLARE_DYNAMIC_CLASS(wxWebViewIE);
};
+class WXDLLIMPEXP_WEBVIEW wxWebViewFactoryIE : public wxWebViewFactory
+{
+public:
+ virtual wxWebView* Create() { return new wxWebViewIE; }
+ virtual wxWebView* Create(wxWindow* parent,
+ wxWindowID id,
+ const wxString& url = wxWebViewDefaultURLStr,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = 0,
+ const wxString& name = wxWebViewNameStr)
+ { return new wxWebViewIE(parent, id, url, pos, size, style, name); }
+};
+
class VirtualProtocol : public wxIInternetProtocol
{
protected:
class ClassFactory : public IClassFactory
{
public:
- ClassFactory(wxSharedPtr<wxWebViewHandler> handler) : m_handler(handler) {}
+ ClassFactory(wxSharedPtr<wxWebViewHandler> handler) : m_handler(handler)
+ { AddRef(); }
+
+ wxString GetName() { return m_handler->GetName(); }
//IClassFactory
HRESULT STDMETHODCALLTYPE CreateInstance(IUnknown* pUnkOuter,
class DocHostUIHandler : public wxIDocHostUIHandler
{
public:
- DocHostUIHandler() {};
+ DocHostUIHandler(wxWebView* browser) { m_browser = browser; }
~DocHostUIHandler() {};
+
virtual HRESULT wxSTDCALL ShowContextMenu(DWORD dwID, POINT *ppt,
IUnknown *pcmdtReserved,
IDispatch *pdispReserved);
IDataObject **ppDORet);
//IUnknown
DECLARE_IUNKNOWN_METHODS;
+
+private:
+ wxWebView* m_browser;
};
class wxFindPointers