aboutsummaryrefslogtreecommitdiffstats
path: root/PySide/QtGui/glue/qmenubar_glue.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'PySide/QtGui/glue/qmenubar_glue.cpp')
-rw-r--r--PySide/QtGui/glue/qmenubar_glue.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/PySide/QtGui/glue/qmenubar_glue.cpp b/PySide/QtGui/glue/qmenubar_glue.cpp
new file mode 100644
index 000000000..2326a76cc
--- /dev/null
+++ b/PySide/QtGui/glue/qmenubar_glue.cpp
@@ -0,0 +1,20 @@
+inline PyObject*
+addActionWithPyObject(QMenuBar* self, const QString& text, PyObject* callback)
+{
+ QAction* act = new QAction(text, self);
+
+ self->addAction(act);
+
+ PyObject* pyAct = %CONVERTTOPYTHON[QAction*](act);
+ PyObject* result = PyObject_CallMethod(pyAct, "connect", "OsO", pyAct,
+ SIGNAL(triggered(bool)), callback);
+
+ if (result == 0 || result == Py_False) {
+ if (result)
+ Py_DECREF(result);
+ Py_DECREF(pyAct);
+ return 0;
+ }
+
+ return pyAct;
+}