From 8e1e25a631d3e697ea795d66c8ed7e8fbbf7c6dd Mon Sep 17 00:00:00 2001 From: renatofilho Date: Fri, 22 Oct 2010 14:25:37 -0300 Subject: Fixed type translate on QProperty. Fix bug #431 Reviewer: Luciano Wolf Marcelo Lira --- libpyside/qproperty.cpp | 27 ++------------------------- 1 file changed, 2 insertions(+), 25 deletions(-) (limited to 'libpyside') diff --git a/libpyside/qproperty.cpp b/libpyside/qproperty.cpp index 0a5b1c5ea..4c9eb93c6 100644 --- a/libpyside/qproperty.cpp +++ b/libpyside/qproperty.cpp @@ -28,33 +28,10 @@ #include "qproperty_p.h" #include "dynamicqmetaobject_p.h" #include "qsignal.h" +#include "qsignal_p.h" #define QPROPERTY_CLASS_NAME "Property" -char* translateTypeName(PyObject* type) -{ - if (PyType_Check(type)) { - char* typeName = 0; - if (type->ob_type == &Shiboken::SbkBaseWrapperType_Type) { - Shiboken::SbkBaseWrapperType* objType = reinterpret_cast(type); - typeName = strdup(objType->original_name); - } else { - //tp_name return the full name - Shiboken::AutoDecRef otypeName(PyObject_GetAttrString(type, "__name__")); - typeName = strdup(PyString_AS_STRING(otypeName.object())); - } - if (Shiboken::TypeResolver::getType(typeName) == Shiboken::TypeResolver::ObjectType) { - typeName = reinterpret_cast(realloc(typeName, strlen(typeName) + 1)); - typeName = strcat(typeName, "*"); - } - return typeName; - } else if (PyString_Check(type)) { - return strdup(PyString_AS_STRING(type)); - } - return 0; -} - - extern "C" { @@ -162,7 +139,7 @@ int qpropertyTpInit(PyObject* self, PyObject* args, PyObject* kwds) if (!pData->fset && pData->fget) pData->constant = true; - pData->typeName = translateTypeName(type); + pData->typeName = PySide::getTypeName(type); return 1; } -- cgit v1.2.3