X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e669ddde233a87d1e80ce2b102d0a18ce9daedfe..a7689c49fe02c0c065facf736ab28b19f5997b7c:/include/wx/gtk/webview_webkit.h diff --git a/include/wx/gtk/webview_webkit.h b/include/wx/gtk/webview_webkit.h index 1a8f3a825f..2246303c50 100644 --- a/include/wx/gtk/webview_webkit.h +++ b/include/wx/gtk/webview_webkit.h @@ -10,22 +10,23 @@ #ifndef _WX_GTK_WEBKITCTRL_H_ #define _WX_GTK_WEBKITCTRL_H_ -#include "wx/setup.h" +#include "wx/defs.h" -#if wxUSE_WEBVIEW_WEBKIT && defined(__WXGTK__) +#if wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT && defined(__WXGTK__) -#include "webkit/webkit.h" #include "wx/sharedptr.h" #include "wx/webview.h" +typedef struct _WebKitWebView WebKitWebView; + //----------------------------------------------------------------------------- // wxWebViewWebKit //----------------------------------------------------------------------------- -class WXDLLIMPEXP_WEB wxWebViewWebKit : public wxWebView +class WXDLLIMPEXP_WEBVIEW wxWebViewWebKit : public wxWebView { public: - wxWebViewWebKit() { Init(); } + wxWebViewWebKit(); wxWebViewWebKit(wxWindow *parent, wxWindowID id = wxID_ANY, @@ -34,8 +35,6 @@ public: const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = wxWebViewNameStr) { - Init(); - Create(parent, id, url, pos, size, style, name); } @@ -46,6 +45,8 @@ public: const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = wxWebViewNameStr); + virtual ~wxWebViewWebKit(); + virtual bool Enable( bool enable = true ); // implementation @@ -54,19 +55,8 @@ public: static wxVisualAttributes GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); - // helper to allow access to protected member from GTK callback - void MoveWindow(int x, int y, int width, int height) - { - DoMoveWindow(x, y, width, height); - } - - void ZoomIn(); - void ZoomOut(); - void SetWebkitZoom(float level); - float GetWebkitZoom() const; - virtual void Stop(); - virtual void LoadUrl(const wxString& url); + virtual void LoadURL(const wxString& url); virtual void GoBack(); virtual void GoForward(); virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT); @@ -81,9 +71,6 @@ public: virtual wxString GetCurrentTitle() const; virtual wxString GetPageSource() const; virtual wxString GetPageText() const; - //We do not want to hide the other overloads - using wxWebView::SetPage; - virtual void SetPage(const wxString& html, const wxString& baseUrl); virtual void Print(); virtual bool IsBusy() const; @@ -107,6 +94,9 @@ public: virtual void Undo(); virtual void Redo(); + //Find function + virtual long Find(const wxString& text, int flags = wxWEB_VIEW_FIND_DEFAULT); + //Editing functions virtual void SetEditable(bool enable = true); virtual bool IsEditable() const; @@ -120,14 +110,12 @@ public: virtual void ClearSelection(); virtual void RunScript(const wxString& javascript); - + //Virtual Filesystem Support virtual void RegisterHandler(wxSharedPtr handler); virtual wxVector > GetHandlers() { return m_handlerList; } - /** FIXME: hack to work around signals being received too early */ - bool m_ready; - + virtual void* GetNativeBackend() const { return m_web_view; } /** TODO: check if this can be made private * The native control has a getter to check for busy state, but except in @@ -144,22 +132,37 @@ public: bool m_guard; protected: + virtual void DoSetPage(const wxString& html, const wxString& baseUrl); virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const; private: + void ZoomIn(); + void ZoomOut(); + void SetWebkitZoom(float level); + float GetWebkitZoom() const; + + //Find helper function + void FindClear(); + // focus event handler: calls GTKUpdateBitmap() void GTKOnFocus(wxFocusEvent& event); - GtkWidget *web_view; - gint m_historyLimit; + WebKitWebView *m_web_view; + int m_historyLimit; wxVector > m_handlerList; + //variables used for Find() + int m_findFlags; + wxString m_findText; + int m_findPosition; + int m_findCount; + wxDECLARE_DYNAMIC_CLASS(wxWebViewWebKit); }; -#endif // wxUSE_WEBVIEW_WEBKIT && defined(__WXGTK__) +#endif // wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT && defined(__WXGTK__) #endif