// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
-%module webkit
+%define DOCSTRING
+"wx.webkit.WebKitCtrl for Mac OSX."
+%enddef
+
+%module(package="wx", docstring=DOCSTRING) webkit
%{
%pythoncode { __docfilter__ = wx.__DocFilter(globals()) }
-%include _webkit_rename.i
-
//---------------------------------------------------------------------------
// Put some wx default wxChar* values into wxStrings.
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,
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 %{
%}
+
+//---------------------------------------------------------------------------