blob: 7f0475a2e3c868bd1a88b5d7b76723feb54b1679 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
inline PyObject*
addActionWithPyObject(QMenu *self, const QIcon& icon, const QString& text, PyObject *callback, const QKeySequence &shortcut)
{
QAction *act = new QAction(text, self);
if (!icon.isNull())
act->setIcon(icon);
if (!shortcut.isEmpty())
act->setShortcut(shortcut);
self->addAction(act);
PyObject *pyAct = Shiboken::Converter<QAction*>::toPython(act);
PyObject* result = PyObject_CallMethod(pyAct, "connect", "OsO", pyAct, SIGNAL(triggered()), callback);
if (result == 0) {
Py_DECREF(pyAct);
return 0;
}
return pyAct;
}
|