104QQuickMenuBarItem::QQuickMenuBarItem(QQuickItem *parent)
105 : QQuickAbstractButton(*(
new QQuickMenuBarItemPrivate), parent)
107 setFocusPolicy(Qt::NoFocus);
108 d_func()->setSizePolicy(QLayoutPolicy::Fixed, QLayoutPolicy::Fixed);
136void QQuickMenuBarItem::setMenu(QQuickMenu *menu)
138 Q_D(QQuickMenuBarItem);
143 disconnect(d->menu, &QQuickMenu::titleChanged,
this, &QQuickAbstractButton::setText);
146 setText(menu->title());
147 menu->setY(height());
148 menu->setParentItem(
this);
149 menu->setClosePolicy(QQuickPopup::CloseOnEscape | QQuickPopup::CloseOnPressOutsideParent | QQuickPopup::CloseOnReleaseOutsideParent);
150 connect(menu, &QQuickMenu::titleChanged,
this, &QQuickAbstractButton::setText);
182bool QQuickMenuBarItem::event(QEvent *event)
184#if QT_CONFIG(shortcut)
185 Q_D(QQuickMenuBarItem);
186 if (event->type() == QEvent::Shortcut) {
187 auto *shortcutEvent =
static_cast<QShortcutEvent *>(event);
188 if (shortcutEvent->shortcutId() == d->shortcutId) {
195 return QQuickControl::event(event);