X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3beb50e570f1b4f7a97c767677451ffc558fa22f..e33cedf4c66f02c8a075ef1471d70661ca03a316:/include/wx/msw/webview_ie.h diff --git a/include/wx/msw/webview_ie.h b/include/wx/msw/webview_ie.h index 9d4671e422..ce784c9be0 100644 --- a/include/wx/msw/webview_ie.h +++ b/include/wx/msw/webview_ie.h @@ -12,19 +12,21 @@ #include "wx/setup.h" -#if wxUSE_WEBVIEW_IE && defined(__WXMSW__) +#if wxUSE_WEBVIEW && wxUSE_WEBVIEW_IE && defined(__WXMSW__) #include "wx/control.h" #include "wx/webview.h" #include "wx/msw/ole/automtn.h" #include "wx/msw/ole/activex.h" +#include "wx/msw/missing.h" #include "wx/sharedptr.h" #include "wx/vector.h" struct IHTMLDocument2; class wxFSFile; +class ClassFactory; -class WXDLLIMPEXP_WEB wxWebViewIE : public wxWebView +class WXDLLIMPEXP_WEBVIEW wxWebViewIE : public wxWebView { public: @@ -41,6 +43,8 @@ public: Create(parent, id, url, pos, size, style, name); } + ~wxWebViewIE(); + bool Create(wxWindow* parent, wxWindowID id, const wxString& url = wxWebViewDefaultURLStr, @@ -49,13 +53,13 @@ public: long style = 0, const wxString& name = wxWebViewNameStr); - virtual void LoadUrl(const wxString& url); - virtual void LoadHistoryItem(wxSharedPtr item); - virtual wxVector > GetBackwardHistory(); - virtual wxVector > GetForwardHistory(); + virtual void LoadURL(const wxString& url); + virtual void LoadHistoryItem(wxSharedPtr item); + virtual wxVector > GetBackwardHistory(); + virtual wxVector > GetForwardHistory(); - virtual bool CanGoForward(); - virtual bool CanGoBack(); + virtual bool CanGoForward() const; + virtual bool CanGoBack() const; virtual void GoBack(); virtual void GoForward(); virtual void ClearHistory(); @@ -63,12 +67,12 @@ public: virtual void Stop(); virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT); - virtual wxString GetPageSource(); - virtual wxString GetPageText(); + virtual wxString GetPageSource() const; + virtual wxString GetPageText() const; - virtual bool IsBusy(); - virtual wxString GetCurrentURL(); - virtual wxString GetCurrentTitle(); + virtual bool IsBusy() const; + virtual wxString GetCurrentURL() const; + virtual wxString GetCurrentTitle() const; virtual void SetZoomType(wxWebViewZoomType); virtual wxWebViewZoomType GetZoomType() const; @@ -78,39 +82,39 @@ public: virtual void SetPage(const wxString& html, const wxString& baseUrl); - virtual wxWebViewZoom GetZoom(); + virtual wxWebViewZoom GetZoom() const; virtual void SetZoom(wxWebViewZoom zoom); //Clipboard functions - virtual bool CanCut(); - virtual bool CanCopy(); - virtual bool CanPaste(); + virtual bool CanCut() const; + virtual bool CanCopy() const; + virtual bool CanPaste() const; virtual void Cut(); virtual void Copy(); virtual void Paste(); //Undo / redo functionality - virtual bool CanUndo(); - virtual bool CanRedo(); + virtual bool CanUndo() const; + virtual bool CanRedo() const; virtual void Undo(); virtual void Redo(); //Editing functions virtual void SetEditable(bool enable = true); - virtual bool IsEditable(); + virtual bool IsEditable() const; //Selection virtual void SelectAll(); - virtual bool HasSelection(); + virtual bool HasSelection() const; virtual void DeleteSelection(); - virtual wxString GetSelectedText(); - virtual wxString GetSelectedSource(); + virtual wxString GetSelectedText() const; + virtual wxString GetSelectedSource() const; virtual void ClearSelection(); virtual void RunScript(const wxString& javascript); //Virtual Filesystem Support - virtual void RegisterHandler(wxSharedPtr handler); + virtual void RegisterHandler(wxSharedPtr handler); // ---- IE-specific methods @@ -118,10 +122,10 @@ public: bool IsOfflineMode(); void SetOfflineMode(bool offline); - wxWebViewZoom GetIETextZoom(); + wxWebViewZoom GetIETextZoom() const; void SetIETextZoom(wxWebViewZoom level); - wxWebViewZoom GetIEOpticalZoom(); + wxWebViewZoom GetIEOpticalZoom() const; void SetIEOpticalZoom(wxWebViewZoom level); void onActiveXEvent(wxActiveXEvent& evt); @@ -147,15 +151,16 @@ private: //which are added as documentcomplete events arrive, unless we are loading //an item from the history. The position is stored as an int, and reflects //where we are in the history list. - wxVector > m_historyList; + wxVector > m_historyList; + wxVector m_factories; int m_historyPosition; bool m_historyLoadingFromList; bool m_historyEnabled; //Generic helper functions for IHtmlDocument commands - bool CanExecCommand(wxString command); + bool CanExecCommand(wxString command) const; void ExecCommand(wxString command); - IHTMLDocument2* GetDocument(); + IHTMLDocument2* GetDocument() const; wxDECLARE_DYNAMIC_CLASS(wxWebViewIE); }; @@ -169,10 +174,10 @@ protected: VOID * fileP; wxFSFile* m_file; - wxSharedPtr m_handler; + wxSharedPtr m_handler; public: - VirtualProtocol(wxSharedPtr handler); + VirtualProtocol(wxSharedPtr handler); ~VirtualProtocol(); //IUnknown @@ -208,10 +213,8 @@ public: class ClassFactory : public IClassFactory { -private: - ULONG m_refCount; public: - ClassFactory(wxSharedPtr handler) : m_handler(handler) {} + ClassFactory(wxSharedPtr handler) : m_refCount(0), m_handler(handler) {} //IUnknown ULONG STDMETHODCALLTYPE AddRef(); HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void **ppvObject); @@ -222,9 +225,10 @@ public: REFIID riid, void** ppvObject); HRESULT STDMETHODCALLTYPE LockServer(BOOL fLock); private: - wxSharedPtr m_handler; + ULONG m_refCount; + wxSharedPtr m_handler; }; -#endif // wxUSE_WEBVIEW_IE && defined(__WXMSW__) +#endif // wxUSE_WEBVIEW && wxUSE_WEBVIEW_IE && defined(__WXMSW__) #endif // wxWebViewIE_H