diff options
Diffstat (limited to 'src/controls/qquickmenu.cpp')
| -rw-r--r-- | src/controls/qquickmenu.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/controls/qquickmenu.cpp b/src/controls/qquickmenu.cpp index 84f7b1aad..e7cd62b5d 100644 --- a/src/controls/qquickmenu.cpp +++ b/src/controls/qquickmenu.cpp @@ -586,6 +586,20 @@ void QQuickMenu::destroyAllMenuPopups() { popup->setToBeDeletedLater(); } +QQuickMenuBar *QQuickMenu::menuBar() +{ + QObject *pi = parentMenuOrMenuBar(); + while (pi) { + if (QQuickMenuBar *menuBar = qobject_cast<QQuickMenuBar*>(pi)) + return menuBar; + else if (QQuickMenu *menu = qobject_cast<QQuickMenu*>(pi)) + pi = menu->parentMenuOrMenuBar(); + else + return 0; + } + return 0; +} + void QQuickMenu::__closeAndDestroy() { hideMenu(); |
