]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/osx/webview_webkit.h
Don't create multiple parent-less top level frames in layout sample.
[wxWidgets.git] / include / wx / osx / webview_webkit.h
index aa937a93db39166ba693a016d9a13a843b7838d9..8733618c08a35c0076325133fc1b176a487558fc 100644 (file)
@@ -21,6 +21,8 @@
 #include "wx/control.h"
 #include "wx/webview.h"
 
+#include "wx/osx/core/objcid.h"
+
 // ----------------------------------------------------------------------------
 // Web Kit Control
 // ----------------------------------------------------------------------------
@@ -52,15 +54,11 @@ public:
     virtual bool CanGoForward() const;
     virtual void GoBack();
     virtual void GoForward();
-    virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT);
+    virtual void Reload(wxWebViewReloadFlags flags = wxWEBVIEW_RELOAD_DEFAULT);
     virtual void Stop();
     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 void LoadURL(const wxString& url);
@@ -88,6 +86,14 @@ public:
     virtual void Undo();
     virtual void Redo();
 
+    //Find function
+    virtual long Find(const wxString& text, int flags = wxWEBVIEW_FIND_DEFAULT) 
+    { 
+        wxUnusedVar(text);
+        wxUnusedVar(flags);
+        return wxNOT_FOUND; 
+    }
+
     //Clipboard functions
     virtual bool CanCut() const { return true; }
     virtual bool CanCopy() const { return true; }
@@ -113,6 +119,8 @@ public:
     //Virtual Filesystem Support
     virtual void RegisterHandler(wxSharedPtr<wxWebViewHandler> handler);
 
+    virtual void* GetNativeBackend() const { return m_webView; }
+
     // ---- methods not from the parent (common) interface
     bool  CanGetPageSource() const;
 
@@ -141,6 +149,8 @@ public:
     bool m_busy;
 
 protected:
+    virtual void DoSetPage(const wxString& html, const wxString& baseUrl);
+
     DECLARE_EVENT_TABLE()
     void MacVisibilityChanged();
 
@@ -149,7 +159,7 @@ private:
     wxWindowID m_windowID;
     wxString m_pageTitle;
 
-    struct objc_object *m_webView;
+    wxObjCID m_webView;
 
     // we may use this later to setup our own mouse events,
     // so leave it in for now.
@@ -158,6 +168,20 @@ private:
     //TODO: look into using DECLARE_WXCOCOA_OBJC_CLASS rather than this.
 };
 
+class WXDLLIMPEXP_WEBVIEW wxWebViewFactoryWebKit : public wxWebViewFactory
+{
+public:
+    virtual wxWebView* Create() { return new wxWebViewWebKit; }
+    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 wxWebViewWebKit(parent, id, url, pos, size, style, name); }
+};
+
 #endif // wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT
 
 #endif // _WX_WEBKIT_H_