blob: 0636dfab08685b55aff5fce9bdc5122196d23788 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
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 = %CONVERTTOPYTHON[QAction*](act);
Shiboken::AutoDecRef result(PyObject_CallMethod(pyAct, "connect", "OsO", pyAct, SIGNAL(triggered()), callback));
if (result.isNull()) {
Py_DECREF(pyAct);
return 0;
}
return pyAct;
}
|