Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qquicklabsplatformmenuitemgroup_p.h
Go to the documentation of this file.
1// Copyright (C) 2022 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// Qt-Security score:significant reason:default
4
5#ifndef QQUICKLABSPLATFORMMENUITEMGROUP_P_H
6#define QQUICKLABSPLATFORMMENUITEMGROUP_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
19#include <QtCore/qobject.h>
20#include <QtCore/qlist.h>
21#include <QtQml/qqml.h>
22#include <QtCore/private/qglobal_p.h>
23
25
27class QQuickLabsPlatformMenuItemGroupPrivate;
28
30{
31 Q_OBJECT
32 QML_NAMED_ELEMENT(MenuItemGroup)
38
39public:
42
43 bool isEnabled() const;
44 void setEnabled(bool enabled);
45
46 bool isVisible() const;
47 void setVisible(bool visible);
48
49 bool isExclusive() const;
50 void setExclusive(bool exclusive);
51
54
56
59 Q_INVOKABLE void clear();
60
64
70
71private:
72 QQuickLabsPlatformMenuItem *findCurrent() const;
73 void updateCurrent();
74 void activateItem();
75 void hoverItem();
76
77 static void items_append(QQmlListProperty<QQuickLabsPlatformMenuItem> *prop, QQuickLabsPlatformMenuItem *obj);
78 static qsizetype items_count(QQmlListProperty<QQuickLabsPlatformMenuItem> *prop);
79 static QQuickLabsPlatformMenuItem *items_at(QQmlListProperty<QQuickLabsPlatformMenuItem> *prop, qsizetype index);
80 static void items_clear(QQmlListProperty<QQuickLabsPlatformMenuItem> *prop);
81
82 bool m_enabled;
83 bool m_visible;
84 bool m_exclusive;
85 QQuickLabsPlatformMenuItem *m_checkedItem;
86 QList<QQuickLabsPlatformMenuItem*> m_items;
87};
88
89QT_END_NAMESPACE
90
91#endif // QQUICKLABSPLATFORMMENUITEMGROUP_P_H
QObject * parent
Definition qobject.h:73
\inmodule QtCore
Definition qobject.h:105
void setIcon(const QQuickLabsPlatformIcon &icon)
QQuickLabsPlatformIcon icon() const
bool operator==(const QQuickLabsPlatformIcon &other) const
Q_INVOKABLE void removeItem(QQuickLabsPlatformMenuItem *item)
\qmlmethod void Qt.labs.platform::MenuItemGroup::removeItem(MenuItem item)
Q_INVOKABLE void clear()
\qmlmethod void Qt.labs.platform::MenuItemGroup::clear()
void setCheckedItem(QQuickLabsPlatformMenuItem *item)
void hovered(QQuickLabsPlatformMenuItem *item)
bool isEnabled() const
\qmlproperty bool Qt.labs.platform::MenuItemGroup::enabled
bool isVisible() const
\qmlproperty bool Qt.labs.platform::MenuItemGroup::visible
QQuickLabsPlatformMenuItem * checkedItem() const
\qmlproperty MenuItem Qt.labs.platform::MenuItemGroup::checkedItem
Q_INVOKABLE void addItem(QQuickLabsPlatformMenuItem *item)
\qmlmethod void Qt.labs.platform::MenuItemGroup::addItem(MenuItem item)
QQmlListProperty< QQuickLabsPlatformMenuItem > items()
bool isExclusive() const
\qmlproperty bool Qt.labs.platform::MenuItemGroup::exclusive
QQuickLabsPlatformMenuItemGroup * group() const
\qmlproperty MenuItemGroup Qt.labs.platform::MenuItem::group
QFont font() const
\qmlproperty font Qt.labs.platform::MenuItem::font
QString text() const
\qmlproperty string Qt.labs.platform::MenuItem::text
QQuickLabsPlatformIconLoader * iconLoader() const
QQuickLabsPlatformMenu * subMenu() const
\readonly \qmlproperty Menu Qt.labs.platform::MenuItem::subMenu
QQuickLabsPlatformMenu * menu() const
\readonly \qmlproperty Menu Qt.labs.platform::MenuItem::menu
bool isChecked() const
\qmlproperty bool Qt.labs.platform::MenuItem::checked
void setIcon(const QQuickLabsPlatformIcon &icon)
bool isCheckable() const
\qmlproperty bool Qt.labs.platform::MenuItem::checkable
bool isEnabled() const
\qmlproperty bool Qt.labs.platform::MenuItem::enabled
void setMenu(QQuickLabsPlatformMenu *menu)
bool event(QEvent *e) override
This virtual function receives events to an object and should return true if the event e was recogniz...
void setSubMenu(QQuickLabsPlatformMenu *menu)
void componentComplete() override
Invoked after the root component that caused this instantiation has completed construction.
bool isVisible() const
\qmlproperty bool Qt.labs.platform::MenuItem::visible
QPlatformMenuItem::MenuRole role() const
\qmlproperty enumeration Qt.labs.platform::MenuItem::role
void setGroup(QQuickLabsPlatformMenuItemGroup *group)
bool isSeparator() const
\qmlproperty bool Qt.labs.platform::MenuItem::separator
QQuickLabsPlatformIcon icon() const
void classBegin() override
Invoked after class creation, but before any properties have been set.
QVariant shortcut() const
\qmlproperty keysequence Qt.labs.platform::MenuItem::shortcut
void setShortcut(const QVariant &shortcut)
QPlatformMenu * handle() const