#include "wx/setup.h"
-#if wxUSE_WEBVIEW_WEBKIT && (defined(__WXOSX_COCOA__) \
- || defined(__WXOSX_CARBON__))
+#if wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT && (defined(__WXOSX_COCOA__) \
+ || defined(__WXOSX_CARBON__))
#include "wx/control.h"
#include "wx/webview.h"
+#include "wx/osx/core/objcid.h"
+
// ----------------------------------------------------------------------------
// Web Kit Control
// ----------------------------------------------------------------------------
-class wxMacControl;
-class wxWidgetCocoaImpl;
-
-class WXDLLIMPEXP_WEB wxWebViewWebKit : public wxWebView
+class WXDLLIMPEXP_WEBVIEW wxWebViewWebKit : public wxWebView
{
public:
wxDECLARE_DYNAMIC_CLASS(wxWebViewWebKit);
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);
virtual bool CanSetZoomType(wxWebViewZoomType type) const;
virtual bool IsBusy() const { return m_busy; }
-
+
//History functions
virtual void ClearHistory();
virtual void EnableHistory(bool enable = true);
virtual wxVector<wxSharedPtr<wxWebViewHistoryItem> > GetBackwardHistory();
virtual wxVector<wxSharedPtr<wxWebViewHistoryItem> > GetForwardHistory();
virtual void LoadHistoryItem(wxSharedPtr<wxWebViewHistoryItem> item);
-
+
//Undo / redo functionality
virtual bool CanUndo() const;
virtual bool CanRedo() const;
virtual void Undo();
virtual void Redo();
+ //Find function
+ virtual long Find(const wxString& text, int flags = wxWEB_VIEW_FIND_DEFAULT) { return wxNOT_FOUND; };
+
//Clipboard functions
virtual bool CanCut() const { return true; }
virtual bool CanCopy() const { return true; }
virtual void Cut();
virtual void Copy();
virtual void Paste();
-
+
//Editing functions
virtual void SetEditable(bool enable = true);
virtual bool IsEditable() const;
-
+
//Selection
virtual void DeleteSelection();
virtual bool HasSelection() const;
virtual wxString GetSelectedText() const;
virtual wxString GetSelectedSource() const;
virtual void ClearSelection();
-
+
void RunScript(const wxString& javascript);
-
+
//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;
bool m_busy;
protected:
+ virtual void DoSetPage(const wxString& html, const wxString& baseUrl);
+
DECLARE_EVENT_TABLE()
void MacVisibilityChanged();
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.
//TODO: look into using DECLARE_WXCOCOA_OBJC_CLASS rather than this.
};
-#endif // wxUSE_WEBKIT
+#endif // wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT
#endif // _WX_WEBKIT_H_