]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/webview_ie.h
Update of OpenVMS compile support
[wxWidgets.git] / include / wx / msw / webview_ie.h
index 3d91636d27c24a4988a7190ed2c0612254286e0b..99b41af17422e044b0f66ebee4a2d6f8dbb06963 100644 (file)
@@ -19,6 +19,7 @@
 #include "wx/msw/ole/automtn.h"
 #include "wx/msw/ole/activex.h"
 #include "wx/msw/ole/oleutils.h"
+#include "wx/msw/private/comptr.h"
 #include "wx/msw/wrapwin.h"
 #include "wx/msw/missing.h"
 #include "wx/sharedptr.h"
@@ -200,7 +201,7 @@ public:
 
     virtual HRESULT wxSTDCALL GetHostInfo(DOCHOSTUIINFO *pInfo) = 0;
 
-    virtual HRESULT wxSTDCALL ShowUI(DWORD dwID, 
+    virtual HRESULT wxSTDCALL ShowUI(DWORD dwID,
                                      IOleInPlaceActiveObject *pActiveObject,
                                      IOleCommandTarget *pCommandTarget,
                                      IOleInPlaceFrame *pFrame,
@@ -209,7 +210,7 @@ public:
     virtual HRESULT wxSTDCALL HideUI(void) = 0;
 
     virtual HRESULT wxSTDCALL UpdateUI(void) = 0;
-    
+
     virtual HRESULT wxSTDCALL EnableModeless(BOOL fEnable) = 0;
 
     virtual HRESULT wxSTDCALL OnDocWindowActivate(BOOL fActivate) = 0;
@@ -220,11 +221,11 @@ public:
                                            IOleInPlaceUIWindow *pUIWindow,
                                            BOOL fRameWindow) = 0;
 
-    virtual HRESULT wxSTDCALL TranslateAccelerator(LPMSG lpMsg, 
+    virtual HRESULT wxSTDCALL TranslateAccelerator(LPMSG lpMsg,
                                                    const GUID *pguidCmdGroup,
                                                    DWORD nCmdID) = 0;
 
-    virtual HRESULT wxSTDCALL GetOptionKeyPath(__out  LPOLESTR *pchKey, 
+    virtual HRESULT wxSTDCALL GetOptionKeyPath(LPOLESTR *pchKey,
                                                DWORD dw) = 0;
 
     virtual HRESULT wxSTDCALL GetDropTarget(IDropTarget *pDropTarget,
@@ -233,8 +234,8 @@ public:
     virtual HRESULT wxSTDCALL GetExternal(IDispatch **ppDispatch) = 0;
 
     virtual HRESULT wxSTDCALL TranslateUrl(DWORD dwTranslate,
-                                           __in __nullterminated  OLECHAR *pchURLIn,
-                                           __out  OLECHAR **ppchURLOut) = 0;
+                                           OLECHAR *pchURLIn,
+                                           OLECHAR **ppchURLOut) = 0;
 
     virtual HRESULT wxSTDCALL FilterDataObject(IDataObject *pDO,
                                                IDataObject **ppDORet) = 0;
@@ -302,8 +303,6 @@ public:
 
     virtual void Print();
 
-    virtual void SetPage(const wxString& html, const wxString& baseUrl);
-
     virtual wxWebViewZoom GetZoom() const;
     virtual void SetZoom(wxWebViewZoom zoom);
 
@@ -338,6 +337,8 @@ public:
     //Virtual Filesystem Support
     virtual void RegisterHandler(wxSharedPtr<wxWebViewHandler> handler);
 
+    virtual void* GetNativeBackend() const { return m_webBrowser; }
+
     // ---- IE-specific methods
 
     // FIXME: I seem to be able to access remote webpages even in offline mode...
@@ -355,12 +356,15 @@ public:
 
     DECLARE_EVENT_TABLE();
 
+protected:
+    virtual void DoSetPage(const wxString& html, const wxString& baseUrl);
+
 private:
     wxIEContainer* m_container;
     wxAutomationObject m_ie;
     IWebBrowser2* m_webBrowser;
     DWORD m_dwCookie;
-    DocHostUIHandler* m_uiHandler;
+    wxCOMPtr<DocHostUIHandler> m_uiHandler;
 
     //We store the current zoom type;
     wxWebViewZoomType m_zoomType;
@@ -383,7 +387,9 @@ private:
     //Generic helper functions for IHtmlDocument commands
     bool CanExecCommand(wxString command) const;
     void ExecCommand(wxString command);
-    IHTMLDocument2* GetDocument() const;
+    wxCOMPtr<IHTMLDocument2> GetDocument() const;
+    //Toggles control features see INTERNETFEATURELIST for values.
+    bool EnableControlFeature(long flag, bool enable = true);
 
     wxDECLARE_DYNAMIC_CLASS(wxWebViewIE);
 };
@@ -466,7 +472,7 @@ public:
     virtual HRESULT wxSTDCALL ShowContextMenu(DWORD dwID, POINT *ppt,
                                               IUnknown *pcmdtReserved,
                                               IDispatch *pdispReserved);
-    
+
     virtual HRESULT wxSTDCALL GetHostInfo(DOCHOSTUIINFO *pInfo);
 
     virtual HRESULT wxSTDCALL ShowUI(DWORD dwID,
@@ -493,7 +499,7 @@ public:
                                                    const GUID *pguidCmdGroup,
                                                    DWORD nCmdID);
 
-    virtual HRESULT wxSTDCALL GetOptionKeyPath(__out  LPOLESTR *pchKey, 
+    virtual HRESULT wxSTDCALL GetOptionKeyPath(LPOLESTR *pchKey,
                                                DWORD dw);
 
     virtual HRESULT wxSTDCALL GetDropTarget(IDropTarget *pDropTarget,
@@ -502,8 +508,8 @@ public:
     virtual HRESULT wxSTDCALL GetExternal(IDispatch **ppDispatch);
 
     virtual HRESULT wxSTDCALL TranslateUrl(DWORD dwTranslate,
-                                           __in __nullterminated  OLECHAR *pchURLIn,
-                                           __out  OLECHAR **ppchURLOut);
+                                           OLECHAR *pchURLIn,
+                                           OLECHAR **ppchURLOut);
 
     virtual HRESULT wxSTDCALL FilterDataObject(IDataObject *pDO,
                                                IDataObject **ppDORet);