Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qquickmenubar_p.h
Go to the documentation of this file.
1// Copyright (C) 2017 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QQUICKMENUBAR_P_H
5#define QQUICKMENUBAR_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtQuickTemplates2/private/qquickcontainer_p.h>
19
21
22class QQuickMenu;
24
25class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickMenuBar : public QQuickContainer
26{
28 Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged FINAL)
29 Q_PRIVATE_PROPERTY(QQuickMenuBar::d_func(), QQmlListProperty<QQuickMenu> menus READ menus NOTIFY menusChanged FINAL)
30 Q_PRIVATE_PROPERTY(QQuickMenuBar::d_func(), QQmlListProperty<QObject> contentData READ contentData FINAL)
31 QML_NAMED_ELEMENT(MenuBar)
33
34public:
35 explicit QQuickMenuBar(QQuickItem *parent = nullptr);
36
37 QQmlComponent *delegate() const;
38 void setDelegate(QQmlComponent *delegate);
39
40 Q_INVOKABLE QQuickMenu *menuAt(int index) const;
42 Q_INVOKABLE void insertMenu(int index, QQuickMenu *menu);
43 Q_INVOKABLE void removeMenu(QQuickMenu *menu);
44 Q_INVOKABLE QQuickMenu *takeMenu(int index);
45
49
50protected:
51 bool eventFilter(QObject *object, QEvent *event) override;
52 void keyPressEvent(QKeyEvent *event) override;
53 void keyReleaseEvent(QKeyEvent *event) override;
54 void hoverLeaveEvent(QHoverEvent *event) override;
55
56 bool isContent(QQuickItem *item) const override;
58 void itemAdded(int index, QQuickItem *item) override;
59 void itemMoved(int index, QQuickItem *item) override;
60 void itemRemoved(int index, QQuickItem *item) override;
61
62 QFont defaultFont() const override;
63
64#if QT_CONFIG(accessibility)
65 QAccessible::Role accessibleRole() const override;
66#endif
67
68private:
69 Q_DISABLE_COPY(QQuickMenuBar)
70 Q_DECLARE_PRIVATE(QQuickMenuBar)
71};
72
74
76
77#endif // QQUICKMENUBAR_P_H
\inmodule QtCore
Definition qcoreevent.h:45
\reentrant
Definition qfont.h:20
\inmodule QtGui
Definition qevent.h:245
The QKeyEvent class describes a key event.
Definition qevent.h:423
\inmodule QtCore
Definition qobject.h:90
virtual bool eventFilter(QObject *watched, QEvent *event)
Filters events if this object has been installed as an event filter for the watched object.
Definition qobject.cpp:1518
The QQmlComponent class encapsulates a QML component definition.
The QQmlListProperty class allows applications to expose list-like properties of QObject-derived clas...
Definition qqmllist.h:24
virtual void itemMoved(int index, QQuickItem *item)
virtual void itemAdded(int index, QQuickItem *item)
virtual void itemRemoved(int index, QQuickItem *item)
virtual bool isContent(QQuickItem *item) const
void itemChange(ItemChange change, const ItemChangeData &data) override
Called when change occurs for this item.
virtual QFont defaultFont() const
The QQuickItem class provides the most basic of all visual items in \l {Qt Quick}.
Definition qquickitem.h:64
virtual void keyPressEvent(QKeyEvent *event)
This event handler can be reimplemented in a subclass to receive key press events for an item.
virtual void keyReleaseEvent(QKeyEvent *event)
This event handler can be reimplemented in a subclass to receive key release events for an item.
ItemChange
Used in conjunction with QQuickItem::itemChange() to notify the item about certain types of changes.
Definition qquickitem.h:143
virtual void hoverLeaveEvent(QHoverEvent *event)
This event handler can be reimplemented in a subclass to receive hover-leave events for an item.
void delegateChanged()
void menusChanged()
Combined button and popup list for selecting options.
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
GLuint index
[2]
struct _cl_event * event
#define QML_DECLARE_TYPE(TYPE)
Definition qqml.h:19
#define QML_NAMED_ELEMENT(NAME)
#define QML_ADDED_IN_VERSION(MAJOR, MINOR)
#define Q_PROPERTY(...)
#define Q_OBJECT
#define Q_INVOKABLE
#define Q_SIGNALS
#define Q_PRIVATE_PROPERTY(d, text)
QGraphicsItem * item
QMenu menu
[5]
menubar addMenu(fileMenu)
[0]
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent
\inmodule QtQuick
Definition qquickitem.h:158