diff --git a/webkit/webkit-1.1.defs b/webkit/webkit-1.1.defs index c6247c3..713b3a5 100644 --- a/webkit/webkit-1.1.defs +++ b/webkit/webkit-1.1.defs @@ -244,6 +244,25 @@ ;; from webkit/webkitwebframe.h +(define-method get_xml_http_request + (of-object "WebKitWebFrame") + (c-name "webkit_web_frame_get_xml_http_request") + (return-type "gpointer") +) + +(define-method get_dom_window + (of-object "WebKitWebFrame") + (c-name "webkit_web_frame_get_dom_window") + (return-type "gpointer") +) + +(define-method get_dom_document + (of-object "WebKitWebFrame") + (c-name "webkit_web_frame_get_dom_document") + (return-type "gpointer") +) + + (define-method load_uri (of-object "WebKitWebFrame") (c-name "webkit_web_frame_load_uri") diff --git a/webkit/webkit.override b/webkit/webkit.override index 644d488..90340dd 100644 --- a/webkit/webkit.override +++ b/webkit/webkit.override @@ -30,6 +30,12 @@ headers #include #include "javascriptcore/javascriptcore_types.h" + +#include "pywebkit.h" + +extern struct pyjoinapi pywebkit_api_fns; + + %% body static PyObject * @@ -310,3 +316,34 @@ _wrap_webkit_web_data_source_get_data(PyGObject *self) } +%% +override webkit_web_frame_get_dom_document noargs +static PyObject * +_wrap_webkit_web_frame_get_dom_document(PyGObject *self) +{ + gpointer ptr; + ptr = webkit_web_frame_get_dom_document(WEBKIT_WEB_FRAME(self->obj)); + return pywebkit_api_fns.doc(ptr); +} + +%% +override webkit_web_frame_get_xml_http_request noargs +static PyObject * +_wrap_webkit_web_frame_get_xml_http_request(PyGObject *self) +{ + gpointer ptr; + ptr = webkit_web_frame_get_xml_http_request(WEBKIT_WEB_FRAME(self->obj)); + return pywebkit_api_fns.xhr(ptr); +} + +%% +override webkit_web_frame_get_dom_window noargs +static PyObject * +_wrap_webkit_web_frame_get_dom_window(PyGObject *self) +{ + gpointer ptr; + ptr = webkit_web_frame_get_dom_window(WEBKIT_WEB_FRAME(self->obj)); + return pywebkit_api_fns.win(ptr); +} + + diff --git a/webkit/webkitmodule.c b/webkit/webkitmodule.c index 4003a83..7f8dbf4 100644 --- a/webkit/webkitmodule.c +++ b/webkit/webkitmodule.c @@ -27,11 +27,18 @@ #include #include +#include "pywebkit.h" + extern PyMethodDef pywebkit_functions[]; void pywebkit_register_classes (PyObject *d); void pywebkit_add_constants(PyObject *module, const gchar *strip_prefix); +void webkit_init_pywebkit(PyObject *m, struct pyjoinapi *api_fns); + +struct pyjoinapi pywebkit_api_fns; + + DL_EXPORT(void) initwebkit(void) { @@ -49,9 +56,11 @@ initwebkit(void) d = PyModule_GetDict (m); pywebkit_register_classes (d); pywebkit_add_constants (m, "WEBKIT_"); + webkit_init_pywebkit(m, &pywebkit_api_fns); if (PyErr_Occurred ()) { PyErr_Print(); Py_FatalError ("can't initialise module webkit"); } } +

AltStyle によって変換されたページ (->オリジナル) /