X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5ed68428a8d9101c1398f0a8a4dfff82d3e0e62b..db679b8c836e69c111cdc31e62cf92cebe4f938f:/wxPython/src/webkit.i?ds=sidebyside diff --git a/wxPython/src/webkit.i b/wxPython/src/webkit.i index 4b925709ad..27037bbb46 100644 --- a/wxPython/src/webkit.i +++ b/wxPython/src/webkit.i @@ -4,13 +4,17 @@ // // Author: Robin Dunn / Kevin Ollivier // -// Created: 28-Feb-2003 +// Created: 18-Oct-2004 // RCS-ID: $Id$ -// Copyright: (c) 2001 by Total Control Software +// Copyright: (c) 2004 by Total Control Software // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// -%module webkit +%define DOCSTRING +"wx.webkit.WebKitCtrl for Mac OSX." +%enddef + +%module(package="wx", docstring=DOCSTRING) webkit %{ @@ -22,81 +26,126 @@ #define scalb scalbn #endif +#if wxUSE_WEBKIT #include "wx/html/webkit.h" +#endif %} //--------------------------------------------------------------------------- -%include typemaps.i -%include my_typemaps.i - %import core.i -%import windows.i -%import misc.i +%pythoncode { wx = _core } +%pythoncode { __docfilter__ = wx.__DocFilter(globals()) } -%include _webkit_rename.i -%pragma(python) code = "import wx" +%include _webkit_rename.i //--------------------------------------------------------------------------- -%{ - // Put some wx default wxChar* values into wxStrings. - DECLARE_DEF_STRING(PanelNameStr); -%} +// Put some wx default wxChar* values into wxStrings. +MAKE_CONST_WXSTRING_NOSWIG(EmptyString); +MAKE_CONST_WXSTRING2(WebKitNameStr, wxT("webkitctrl")) + + + %{ #if !wxUSE_WEBKIT +// a dummy class for ports that don't have wxWebKitCtrl class wxWebKitCtrl : public wxControl { public: wxWebKitCtrl(wxWindow *parent, - wxWindowID winID, - const wxString& strURL, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxT("webkitctrl")) {} + wxWindowID winID, + const wxString& strURL, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxPyWebKitNameStr) + { wxPyRaiseNotImplemented(); } + + wxWebKitCtrl() { wxPyRaiseNotImplemented(); } + bool Create(wxWindow *parent, wxWindowID winID, const wxString& strURL, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxT("webkitctrl")) {return false;} + const wxString& name = wxPyWebKitNameStr) + { return false; } void LoadURL(const wxString &url) {} - bool CanGoBack() {return false;} - bool CanGoForward() {return false;} - bool GoBack() {return false;} - bool GoForward() {return false;} + bool CanGoBack() { return false; } + bool CanGoForward() { return false; } + bool GoBack() { return false; } + bool GoForward() { return false; } void Reload() {} - void Stop(){} - bool CanGetPageSource(){return false;} - wxString GetPageSource(){return wxEmptyString;} - void SetPageSource(wxString& source, const wxString& baseUrl = wxEmptyString){} + void Stop() {} + bool CanGetPageSource() { return false; } + wxString GetPageSource() { return wxEmptyString; } + void SetPageSource(wxString& source, const wxString& baseUrl = wxEmptyString) {} + wxString GetPageURL() { return wxEmptyString; } + wxString GetPageTitle() { return wxEmptyString; } }; + + +enum { + wxWEBKIT_STATE_START = 0, + wxWEBKIT_STATE_NEGOTIATING = 0, + wxWEBKIT_STATE_REDIRECTING = 0, + wxWEBKIT_STATE_TRANSFERRING = 0, + wxWEBKIT_STATE_STOP = 0, + wxWEBKIT_STATE_FAILED = 0, + + wxEVT_WEBKIT_STATE_CHANGED = 0 +}; + +class wxWebKitStateChangedEvent : public wxCommandEvent +{ +public: + wxWebKitStateChangedEvent( wxWindow* win = NULL ) + { wxPyRaiseNotImplemented(); } + + int GetState() { return 0; } + void SetState(const int state) {} + wxString GetURL() { return wxEmptyString; } + void SetURL(const wxString& url) {} +}; + + #endif %} +// Now define it for SWIG, using either the real class or the dummy above. + +MustHaveApp(wxWebKitCtrl); + class wxWebKitCtrl : public wxControl { public: + %pythonAppend wxWebKitCtrl "self._setOORInfo(self)" + %pythonAppend wxWebKitCtrl() "" + wxWebKitCtrl(wxWindow *parent, - wxWindowID winID, - const wxString& strURL, + wxWindowID winID = -1, + const wxString& strURL = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxT("webkitctrl")); + const wxString& name = wxPyWebKitNameStr); + + %RenameCtor(PreWebKitCtrl, wxWebKitCtrl()); + + bool Create(wxWindow *parent, - wxWindowID winID, - const wxString& strURL, + wxWindowID winID = -1, + const wxString& strURL = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxT("webkitctrl")); + const wxString& name = wxPyWebKitNameStr); void LoadURL(const wxString &url); @@ -108,9 +157,49 @@ public: void Stop(); bool CanGetPageSource(); wxString GetPageSource(); - void SetPageSource(wxString& source, const wxString& baseUrl = wxEmptyString); + void SetPageSource(wxString& source, const wxString& baseUrl = wxPyEmptyString); + wxString GetPageURL(); + wxString GetPageTitle(); }; + +//--------------------------------------------------------------------------- + + +enum { + wxWEBKIT_STATE_START, + wxWEBKIT_STATE_NEGOTIATING, + wxWEBKIT_STATE_REDIRECTING, + wxWEBKIT_STATE_TRANSFERRING, + wxWEBKIT_STATE_STOP, + wxWEBKIT_STATE_FAILED, +}; + + +%constant wxEventType wxEVT_WEBKIT_STATE_CHANGED; + + +class wxWebKitStateChangedEvent : public wxCommandEvent +{ +public: + wxWebKitStateChangedEvent( wxWindow* win = NULL ); + + int GetState(); + void SetState(const int state); + wxString GetURL(); + void SetURL(const wxString& url); +}; + + +%pythoncode %{ + EVT_WEBKIT_STATE_CHANGED = wx.PyEventBinder(wxEVT_WEBKIT_STATE_CHANGED) +%} + + +//--------------------------------------------------------------------------- + %init %{ %} + +//---------------------------------------------------------------------------