aboutsummaryrefslogtreecommitdiff
path: root/lib/python/connections.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python/connections.cpp')
-rw-r--r--lib/python/connections.cpp26
1 files changed, 23 insertions, 3 deletions
diff --git a/lib/python/connections.cpp b/lib/python/connections.cpp
index c24c9399..fd3e2a4b 100644
--- a/lib/python/connections.cpp
+++ b/lib/python/connections.cpp
@@ -1,9 +1,29 @@
#include <lib/python/connections.h>
-PSignal1<void,int> testsignal;
+PSignal::PSignal()
+{
+ m_list = PyList_New(0);
+ Py_INCREF(m_list);
+}
-void connect(Slot1<void, int> &slot, PyObject *fnc)
+PSignal::~PSignal()
{
- printf("CONNECT !\n");
+ Py_DECREF(m_list);
}
+void PSignal::callPython(ePyObject tuple)
+{
+ int size = PyList_Size(m_list);
+ int i;
+ for (i=0; i<size; ++i)
+ {
+ ePyObject b = PyList_GET_ITEM(m_list, i);
+ ePython::call(b, tuple);
+ }
+}
+
+PyObject *PSignal::get()
+{
+ Py_INCREF(m_list);
+ return m_list;
+}