diff options
| -rw-r--r-- | sources/pyside2/libpyside/pysideqflags.cpp | 8 | ||||
| -rw-r--r-- | sources/shiboken2/generator/shiboken2/cppgenerator.cpp | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/sources/pyside2/libpyside/pysideqflags.cpp b/sources/pyside2/libpyside/pysideqflags.cpp index 33351440a..8cf9aa7b2 100644 --- a/sources/pyside2/libpyside/pysideqflags.cpp +++ b/sources/pyside2/libpyside/pysideqflags.cpp @@ -86,6 +86,11 @@ extern "C" { return PyLong_AsLong(number); } + static PyObject *qflag_int(PyObject *self) + { + return PyLong_FromLong(reinterpret_cast<PySideQFlagsObject*>(self)->ob_value); + } + PyObject *PySideQFlagsRichCompare(PyObject *self, PyObject *other, int op) { int result = 0; @@ -146,7 +151,8 @@ namespace QFlags {Py_nb_and, 0}, {Py_nb_xor, 0}, {Py_nb_or, 0}, - {Py_nb_int, 0}, + {Py_nb_int, reinterpret_cast<void*>(qflag_int)}, + {Py_nb_index, reinterpret_cast<void*>(qflag_int)}, #ifndef IS_PY3K {Py_nb_long, 0}, #endif diff --git a/sources/shiboken2/generator/shiboken2/cppgenerator.cpp b/sources/shiboken2/generator/shiboken2/cppgenerator.cpp index 765657099..8dbf999e2 100644 --- a/sources/shiboken2/generator/shiboken2/cppgenerator.cpp +++ b/sources/shiboken2/generator/shiboken2/cppgenerator.cpp @@ -4836,6 +4836,7 @@ void CppGenerator::writeFlagsNumberMethodsDefinition(QTextStream &s, const Abstr s << INDENT << "{Py_nb_xor, (void *)" << cpythonName << "___xor__}," << endl; s << INDENT << "{Py_nb_or, (void *)" << cpythonName << "___or__}," << endl; s << INDENT << "{Py_nb_int, (void *)" << cpythonName << "_long}," << endl; + s << INDENT << "{Py_nb_index, (void *)" << cpythonName << "_long}," << endl; s << "#ifndef IS_PY3K" << endl; s << INDENT << "{Py_nb_long, (void *)" << cpythonName << "_long}," << endl; s << "#endif" << endl; |
