28 QQmlEngine::setObjectOwnership(
this, QQmlEngine::JavaScriptOwnership);
30 m_engine = qobject_cast<QmlEngine*>(engine);
41 auto *action =
new QAction();
42 auto *qmlAction =
new QmlAction(action, m_engine,
this);
43 qmlAction->setProperties(map);
44 m_menu->addAction(action);
55 auto *newMenu =
new QMenu();
56 for (
auto it = map.cbegin(); it != map.cend(); it++) {
57 const QString key = it.key();
58 if (key ==
QSL(
"icon")) {
59 const QString iconPath = map.value(key).toString();
61 newMenu->setIcon(icon);
64 newMenu->setProperty(key.toUtf8().constData(), map.value(key));
66 m_menu->addMenu(newMenu);
67 auto *newQmlMenu =
new QmlMenu(newMenu, m_engine,
this);
77 m_menu->addSeparator();
The class exposing Action API to QML.
QString extensionPath() const
static QmlStaticData & instance()
QIcon getIcon(const QString &iconPath, const QString &pluginPath)