aboutsummaryrefslogtreecommitdiffstats
path: root/libpyside/signalmanager.cpp
diff options
context:
space:
mode:
authorHugo Parente Lima <hugo.lima@openbossa.org>2010-06-10 19:57:18 -0300
committerHugo Parente Lima <hugo.lima@openbossa.org>2010-06-10 20:18:59 -0300
commit1b6337d8b4a65988dfbeb0eed67bc6584b25fdee (patch)
treee6efde3e5d00d4530f321894e62801ab8eac72e8 /libpyside/signalmanager.cpp
parentd8a192b5e14e996992a98766cd39ca2028e6474e (diff)
Removed QVariant from PySide.
Reviewer: Luciano Wolf <luciano.wolf@openbossa.org> Marcelo Lira <marcelo.lira@openbossa.org>
Diffstat (limited to 'libpyside/signalmanager.cpp')
-rw-r--r--libpyside/signalmanager.cpp25
1 files changed, 7 insertions, 18 deletions
diff --git a/libpyside/signalmanager.cpp b/libpyside/signalmanager.cpp
index 80d7254b7..7ac3f3067 100644
--- a/libpyside/signalmanager.cpp
+++ b/libpyside/signalmanager.cpp
@@ -54,35 +54,22 @@
#define PYTHON_TYPE "PyObject"
-
-// Use this to wrap PyObject during the Signal/Slot handling
-struct PyObjectWrapper
-{
- PyObject* m_me;
- PyObjectWrapper(const PyObjectWrapper &other) : m_me(other.m_me) {}
- PyObjectWrapper(PyObject* me) : m_me(me) { Py_INCREF(m_me); }
- PyObjectWrapper() : m_me(Py_None) {}
- operator PyObject*() const { return m_me; }
-};
-
-Q_DECLARE_METATYPE(PyObjectWrapper)
-
namespace Shiboken {
template<>
-struct Converter<PyObjectWrapper>
+struct Converter<PySide::PyObjectWrapper>
{
- static PyObjectWrapper toCpp(PyObject* obj)
+ static PySide::PyObjectWrapper toCpp(PyObject* obj)
{
- return PyObjectWrapper(obj);
+ return PySide::PyObjectWrapper(obj);
}
static PyObject* toPython(void* obj)
{
- return toPython(*reinterpret_cast<PyObjectWrapper*>(obj));
+ return toPython(*reinterpret_cast<PySide::PyObjectWrapper*>(obj));
}
- static PyObject* toPython(const PyObjectWrapper& obj)
+ static PyObject* toPython(const PySide::PyObjectWrapper& obj)
{
return obj;
}
@@ -202,6 +189,8 @@ SignalManager::SignalManager() : m_d(new SignalManagerPrivate)
qRegisterMetaType<PyObjectWrapper>(PYTHON_TYPE);
TypeResolver::createValueTypeResolver<PyObjectWrapper>(PYTHON_TYPE);
+ TypeResolver::createValueTypeResolver<PyObjectWrapper>("object");
+ TypeResolver::createValueTypeResolver<PyObjectWrapper>("PySide::PyObjectWrapper");
}
void SignalManager::clear()