[PyKDE] SIP...Need help
computernet2000 at mail.bg
computernet2000 at mail.bg
Sat Jan 14 23:04:10 GMT 2006
Hi all !
We try to create binding for Ultimate++ lib
have most of widgets and non-gui classes (~70%)
without Callback system :(
We using SIP to wrap the code.
this is a simple code ...
Callback TheBack::THE_Callback(void *args)
{
typedef TheBack CLASSNAME;
PyObject *p = (PyObject *)args;
Py_INCREF(p);
return callback1(this, &CLASSNAME::py_call,(void
*)p);
}
void TheBack::py_call(void *data)
{
PyObject *p = (PyObject *)data;
PyObject *func = PyTuple_GetItem(p, 0);
PyObject *args = PyTuple_GetItem(p, 1);
PyObject *kw = PyTuple_GetItem(p, 2);
PyObject_Call(func, args, kw);
}
"return THISBACK1(py_call, (void *)p)"
This line is part from the Callback system,
take a pointer-function and return Callback object.
In Python i want wrap something like this :
def test(*args, **kw):
print "bla-bla"
module.THE_Callback(test,"some args...")
After that, call the Python function and pass her into
"module.THE_Callback(...)"
but this not work.I dont know how to implement this in SIP.
In the moment "*args" from "module.THE_Callback" is not a
valid python-function argument
Question is :
How to wrap this method "THE_Callback(void *args)" in SIP ?
-----------------------------
Някои книги в СЛОН.БГ:
· Хари Потър и нечистокръвния принц, Роулинг
· Изкуството на света на Диска, Пратчет
· Орки, Стен Никълс
http://www.slon.bg
More information about the PyQt
mailing list