fixed Converter<QString>::isConvertible() method to consider all the cases;

also changed Converter<QString>::toCpp last return option to use a more
straightforward way to get the C++ object
This commit is contained in:
Marcelo Lira 2009-11-05 11:33:36 -03:00
commit e78792932d

View file

@ -1,6 +1,10 @@
inline bool Converter< QString >::isConvertible(PyObject* pyobj) inline bool Converter< QString >::isConvertible(PyObject* pyobj)
{ {
return PyUnicode_Check(pyobj) || PyString_Check(pyobj); return PyString_Check(pyobj)
|| PyUnicode_Check(pyobj)
|| PyQByteArray_Check(pyobj)
|| PyQLatin1String_Check(pyobj)
|| PyQChar_Check(pyobj);
} }
inline PyObject* Converter< QString >::createWrapper(const QString* cppobj) inline PyObject* Converter< QString >::createWrapper(const QString* cppobj)
@ -35,5 +39,5 @@ inline QString Converter< QString >::toCpp(PyObject* pyobj)
#endif #endif
} else if (PyString_Check(pyobj)) } else if (PyString_Check(pyobj))
return QString(Converter< char * >::toCpp(pyobj)); return QString(Converter< char * >::toCpp(pyobj));
return *Converter< QString* >::toCpp(pyobj); return *PyQString_cptr(pyobj);
} }