]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/osx/webview_webkit.h
guarding agains NULL
[wxWidgets.git] / include / wx / osx / webview_webkit.h
index 7ece4240316d3c9a4dc805e6ac901d7832d7c795..3edc601c84f9b5a2d53f8c4319dc8d812a5fdd03 100644 (file)
 
 #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);
@@ -77,14 +76,14 @@ public:
     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;
@@ -92,17 +91,17 @@ public:
     virtual void Redo();
 
     //Clipboard functions
-    virtual bool CanCut() const { return false; }
-    virtual bool CanCopy() const { return false; }
-    virtual bool CanPaste() const { return false; }
+    virtual bool CanCut() const { return true; }
+    virtual bool CanCopy() const { return true; }
+    virtual bool CanPaste() 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;
@@ -110,9 +109,9 @@ public:
     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);
 
@@ -152,7 +151,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.
@@ -161,6 +160,6 @@ private:
     //TODO: look into using DECLARE_WXCOCOA_OBJC_CLASS rather than this.
 };
 
-#endif // wxUSE_WEBKIT
+#endif // wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT
 
 #endif // _WX_WEBKIT_H_