X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9af51222022db4e276fb52118cd57fb532a713ce..6f41c10973643552837c6bd38b23779e65a2eaa3:/include/wx/webview.h diff --git a/include/wx/webview.h b/include/wx/webview.h index bede4d2ef9..b69aa96214 100644 --- a/include/wx/webview.h +++ b/include/wx/webview.h @@ -10,9 +10,9 @@ #ifndef _WX_WEB_VIEW_H_ #define _WX_WEB_VIEW_H_ -#include "wx/setup.h" +#include "wx/defs.h" -#if wxUSE_WEB +#if wxUSE_WEBVIEW #include "wx/control.h" #include "wx/event.h" @@ -20,9 +20,15 @@ #include "wx/sharedptr.h" #include "wx/vector.h" -#include "wx/osx/webviewhistoryitem_webkit.h" -#include "wx/gtk/webviewhistoryitem_webkit.h" -#include "wx/msw/webviewhistoryitem_ie.h" +#if defined(__WXOSX__) + #include "wx/osx/webviewhistoryitem_webkit.h" +#elif defined(__WXGTK__) + #include "wx/gtk/webviewhistoryitem_webkit.h" +#elif defined(__WXMSW__) + #include "wx/msw/webviewhistoryitem_ie.h" +#else + #error "wxWebView not implemented on this platform." +#endif class wxFSFile; class wxFileSystem; @@ -59,7 +65,7 @@ enum wxWebViewReloadFlags { //Default, may access cache wxWEB_VIEW_RELOAD_DEFAULT, - wxWEB_VIEW_RELOAD_NO_CACHE + wxWEB_VIEW_RELOAD_NO_CACHE }; enum wxWebViewBackend @@ -70,30 +76,32 @@ enum wxWebViewBackend }; //Base class for custom scheme handlers -class WXDLLIMPEXP_WEB wxWebViewHandler +class WXDLLIMPEXP_WEBVIEW wxWebViewHandler { public: wxWebViewHandler(const wxString& scheme) : m_scheme(scheme) {} + virtual ~wxWebViewHandler() {} virtual wxString GetName() const { return m_scheme; } virtual wxFSFile* GetFile(const wxString &uri) = 0; private: wxString m_scheme; }; -extern WXDLLIMPEXP_DATA_WEB(const char) wxWebViewNameStr[]; -extern WXDLLIMPEXP_DATA_WEB(const char) wxWebViewDefaultURLStr[]; +extern WXDLLIMPEXP_DATA_WEBVIEW(const char) wxWebViewNameStr[]; +extern WXDLLIMPEXP_DATA_WEBVIEW(const char) wxWebViewDefaultURLStr[]; -class WXDLLIMPEXP_WEB wxWebView : public wxControl +class WXDLLIMPEXP_WEBVIEW wxWebView : public wxControl { public: + virtual ~wxWebView() {} virtual bool Create(wxWindow* parent, wxWindowID id, - const wxString& url, - const wxPoint& pos, - const wxSize& size, - long style, - const wxString& name) = 0; + const wxString& url = wxWebViewDefaultURLStr, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxWebViewNameStr) = 0; static wxWebView* New(wxWebViewBackend backend = wxWEB_VIEW_BACKEND_DEFAULT); static wxWebView* New(wxWindow* parent, @@ -113,7 +121,7 @@ public: virtual wxString GetPageText() const = 0; virtual bool IsBusy() const = 0; virtual bool IsEditable() const = 0; - virtual void LoadUrl(const wxString& url) = 0; + virtual void LoadURL(const wxString& url) = 0; virtual void Print() = 0; virtual void RegisterHandler(wxSharedPtr handler) = 0; virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT) = 0; @@ -171,46 +179,33 @@ public: wxDECLARE_ABSTRACT_CLASS(wxWebView); }; -class WXDLLIMPEXP_WEB wxWebViewEvent : public wxCommandEvent +class WXDLLIMPEXP_WEBVIEW wxWebViewEvent : public wxNotifyEvent { public: wxWebViewEvent() {} wxWebViewEvent(wxEventType type, int id, const wxString url, - const wxString target, bool canVeto) - : wxCommandEvent(type, id) - { - m_url = url; - m_target = target; - m_vetoed = false; - m_canVeto = canVeto; - } + const wxString target) + : wxNotifyEvent(type, id), m_url(url), m_target(target) + {} const wxString& GetURL() const { return m_url; } const wxString& GetTarget() const { return m_target; } virtual wxEvent* Clone() const { return new wxWebViewEvent(*this); } - - bool CanVeto() const { return m_canVeto; } - bool IsVetoed() const { return m_vetoed; } - - void Veto() { wxASSERT(m_canVeto); m_vetoed = true; } - private: wxString m_url; wxString m_target; - bool m_canVeto; - bool m_vetoed; wxDECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxWebViewEvent); }; -wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEB, wxEVT_COMMAND_WEB_VIEW_NAVIGATING, wxWebViewEvent ); -wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEB, wxEVT_COMMAND_WEB_VIEW_NAVIGATED, wxWebViewEvent ); -wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEB, wxEVT_COMMAND_WEB_VIEW_LOADED, wxWebViewEvent ); -wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEB, wxEVT_COMMAND_WEB_VIEW_ERROR, wxWebViewEvent ); -wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEB, wxEVT_COMMAND_WEB_VIEW_NEWWINDOW, wxWebViewEvent ); -wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEB, wxEVT_COMMAND_WEB_VIEW_TITLE_CHANGED, wxWebViewEvent ); +wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEBVIEW, wxEVT_COMMAND_WEB_VIEW_NAVIGATING, wxWebViewEvent ); +wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEBVIEW, wxEVT_COMMAND_WEB_VIEW_NAVIGATED, wxWebViewEvent ); +wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEBVIEW, wxEVT_COMMAND_WEB_VIEW_LOADED, wxWebViewEvent ); +wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEBVIEW, wxEVT_COMMAND_WEB_VIEW_ERROR, wxWebViewEvent ); +wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEBVIEW, wxEVT_COMMAND_WEB_VIEW_NEWWINDOW, wxWebViewEvent ); +wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_WEBVIEW, wxEVT_COMMAND_WEB_VIEW_TITLE_CHANGED, wxWebViewEvent ); typedef void (wxEvtHandler::*wxWebViewEventFunction) (wxWebViewEvent&); @@ -230,7 +225,7 @@ typedef void (wxEvtHandler::*wxWebViewEventFunction) wx__DECLARE_EVT1(wxEVT_COMMAND_WEB_VIEW_LOADED, id, \ wxWebViewEventHandler(fn)) -#define EVT_WEB_VIEW_ERRROR(id, fn) \ +#define EVT_WEB_VIEW_ERROR(id, fn) \ wx__DECLARE_EVT1(wxEVT_COMMAND_WEB_VIEW_ERROR, id, \ wxWebViewEventHandler(fn)) @@ -242,6 +237,6 @@ typedef void (wxEvtHandler::*wxWebViewEventFunction) wx__DECLARE_EVT1(wxEVT_COMMAND_WEB_VIEW_TITLE_CHANGED, id, \ wxWebViewEventHandler(fn)) -#endif // wxUSE_WEB +#endif // wxUSE_WEBVIEW #endif // _WX_WEB_VIEW_H_