X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6f1e19f76c41927828c07d7f38404a732de3651..170acdc90e9f92f8b8120fa6c04acdbf45c89582:/wxPython/src/webkit.i diff --git a/wxPython/src/webkit.i b/wxPython/src/webkit.i index de96d9fb42..86e38e37ae 100644 --- a/wxPython/src/webkit.i +++ b/wxPython/src/webkit.i @@ -10,7 +10,11 @@ // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// -%module webkit +%define DOCSTRING +"wx.webkit.WebKitCtrl for Mac OSX." +%enddef + +%module(package="wx", docstring=DOCSTRING) webkit %{ @@ -34,8 +38,6 @@ %pythoncode { __docfilter__ = wx.__DocFilter(globals()) } -%include _webkit_rename.i - //--------------------------------------------------------------------------- // Put some wx default wxChar* values into wxStrings. @@ -82,28 +84,103 @@ public: bool CanGetPageSource() { return false; } wxString GetPageSource() { return wxEmptyString; } void SetPageSource(wxString& source, const wxString& baseUrl = wxEmptyString) {} + wxString GetPageURL() { return wxEmptyString; } + wxString GetPageTitle() { return wxEmptyString; } + + wxString GetSelection() { return wxEmptyString; } + + bool CanIncreaseTextSize() { return false; } + void IncreaseTextSize() { } + bool CanDecreaseTextSize() { return false; } + void DecreaseTextSize() { } + + void Print(bool showPrompt=false) { } + + void MakeEditable(bool enable=true) { } + bool IsEditable() { return false; } + + wxString RunScript(const wxString& javascript) { return wxEmptyString; } + + void SetScrollPos(int pos) { } + int GetScrollPos() { return 0; } + +}; + + +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, + wxEVT_WEBKIT_BEFORE_LOAD = 0 +}; + +enum { + wxWEBKIT_NAV_LINK_CLICKED = 0, + wxWEBKIT_NAV_BACK_NEXT = 0, + wxWEBKIT_NAV_FORM_SUBMITTED = 0, + wxWEBKIT_NAV_RELOAD = 0, + wxWEBKIT_NAV_FORM_RESUBMITTED = 0, + wxWEBKIT_NAV_OTHER = 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) {} +}; + +class wxWebKitBeforeLoadEvent : public wxCommandEvent +{ +public: + bool IsCancelled() { return false; } + void Cancel(bool cancel = true) { } + wxString GetURL() { return wxEmptyString; } + void SetURL(const wxString& url) { } + void SetNavigationType(int navType) { } + int GetNavigationType() { return 0; } + + wxWebKitBeforeLoadEvent( wxWindow* win = (wxWindow*) NULL ) { wxPyRaiseNotImplemented(); } }; + #endif %} -// Now define it for SWIG. +// 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 = wxPyWebKitNameStr); - %name(PreWebKitCtrl)wxWebKitCtrl(); + %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, @@ -120,9 +197,102 @@ public: bool CanGetPageSource(); wxString GetPageSource(); void SetPageSource(wxString& source, const wxString& baseUrl = wxPyEmptyString); + wxString GetPageURL(); + wxString GetPageTitle(); + + wxString GetSelection(); + + bool CanIncreaseTextSize(); + void IncreaseTextSize(); + bool CanDecreaseTextSize(); + void DecreaseTextSize(); + + void Print(bool showPrompt=false); + + void MakeEditable(bool enable=true); + bool IsEditable(); + + wxString RunScript(const wxString& javascript); + + void SetScrollPos(int pos); + int GetScrollPos(); + + + %property(PageSource, GetPageSource, SetPageSource, doc="See `GetPageSource` and `SetPageSource`"); + %property(PageTitle, GetPageTitle, doc="See `GetPageTitle`"); + %property(PageURL, GetPageURL, doc="See `GetPageURL`"); + %property(ScrollPos, GetScrollPos, SetScrollPos, doc="See `GetScrollPos and SetScrollPos`"); + %property(Selection, GetSelection, doc="See `GetSelection`"); +}; + + +//--------------------------------------------------------------------------- + + +enum { + wxWEBKIT_STATE_START, + wxWEBKIT_STATE_NEGOTIATING, + wxWEBKIT_STATE_REDIRECTING, + wxWEBKIT_STATE_TRANSFERRING, + wxWEBKIT_STATE_STOP, + wxWEBKIT_STATE_FAILED, +}; + +enum { + wxWEBKIT_NAV_LINK_CLICKED, + wxWEBKIT_NAV_BACK_NEXT, + wxWEBKIT_NAV_FORM_SUBMITTED, + wxWEBKIT_NAV_RELOAD, + wxWEBKIT_NAV_FORM_RESUBMITTED, + wxWEBKIT_NAV_OTHER + +}; + +%constant wxEventType wxEVT_WEBKIT_STATE_CHANGED; +%constant wxEventType wxEVT_WEBKIT_BEFORE_LOAD; + +class wxWebKitBeforeLoadEvent : public wxCommandEvent +{ +public: + bool IsCancelled(); + void Cancel(bool cancel = true); + wxString GetURL(); + void SetURL(const wxString& url); + void SetNavigationType(int navType); + int GetNavigationType(); + + wxWebKitBeforeLoadEvent( wxWindow* win = (wxWindow*) NULL ); + + %property(NavigationType, GetNavigationType, SetNavigationType, doc="See `GetNavigationType` and `SetNavigationType`"); + %property(URL, GetURL, SetURL, doc="See `GetURL` and `SetURL`"); }; +class wxWebKitStateChangedEvent : public wxCommandEvent +{ +public: + wxWebKitStateChangedEvent( wxWindow* win = NULL ); + + int GetState(); + void SetState(const int state); + wxString GetURL(); + void SetURL(const wxString& url); + + %property(State, GetState, SetState, doc="See `GetState` and `SetState`"); + %property(URL, GetURL, SetURL, doc="See `GetURL` and `SetURL`"); +}; + + +%pythoncode %{ + EVT_WEBKIT_STATE_CHANGED = wx.PyEventBinder(wxEVT_WEBKIT_STATE_CHANGED) + EVT_WEBKIT_BEFORE_LOAD = wx.PyEventBinder(wxEVT_WEBKIT_BEFORE_LOAD) +%} + + +//--------------------------------------------------------------------------- + %init %{ %} + +//---------------------------------------------------------------------------