Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qquicknativemenuitem_p.h
Go to the documentation of this file.
1
// Copyright (C) 2023 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
QQUICKNATIVEMENUITEM_P_H
6
#
define
QQUICKNATIVEMENUITEM_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
<
QtQuickTemplates2
/
private
/
qtquicktemplates2global_p
.
h
>
21
#
include
<
QtQuickTemplates2
/
private
/
qquickicon_p
.
h
>
22
23
QT_BEGIN_NAMESPACE
24
25
class
QQuickAction;
26
class
QQuickNativeIconLoader
;
27
class
QQuickMenu;
28
class
QQuickMenuSeparator;
29
class
QPlatformMenuItem;
30
31
class
Q_QUICKTEMPLATES2_EXPORT
QQuickNativeMenuItem
:
public
QObject
32
{
33
Q_OBJECT
34
35
public
:
36
static
QQuickNativeMenuItem *createFromNonNativeItem(
37
QQuickMenu *parentMenu, QQuickItem *nonNativeItem);
38
~QQuickNativeMenuItem();
39
40
QQuickAction *action()
const
;
41
QQuickMenu *subMenu()
const
;
42
QQuickMenuSeparator *separator()
const
;
43
QPlatformMenuItem *handle()
const
;
44
void
sync();
45
46
QQuickIcon effectiveIcon()
const
;
47
QQuickNativeIconLoader *iconLoader()
const
;
48
void
reloadIcon();
49
50
QString debugText()
const
;
51
52
private
Q_SLOTS:
53
void
updateIcon();
54
55
private
:
56
enum
class
Type {
57
Unknown,
58
// It's an Action or a MenuItem with an Action.
59
Action,
60
// It's a MenuItem without an Action.
61
MenuItem,
62
Separator,
63
SubMenu
64
};
65
66
explicit
QQuickNativeMenuItem(QQuickMenu *parentMenu, QQuickItem *nonNativeItem, Type type);
67
68
void
addShortcut();
69
void
removeShortcut();
70
71
QQuickMenu *m_parentMenu =
nullptr
;
72
QQuickItem *m_nonNativeItem =
nullptr
;
73
Type m_type = Type::Unknown;
74
mutable
QQuickNativeIconLoader *m_iconLoader =
nullptr
;
75
std::unique_ptr<QPlatformMenuItem> m_handle =
nullptr
;
76
int
m_shortcutId = -1;
77
bool
m_syncing =
false
;
78
};
79
80
QT_END_NAMESPACE
81
82
#
endif
// QQUICKNATIVEMENUITEM_P_H
QQuickMenuItemPrivate
Definition
qquickmenuitem_p_p.h:27
QQuickMenuItemPrivate::implicitTextPadding
qreal implicitTextPadding
Definition
qquickmenuitem_p_p.h:52
QQuickMenuItemPrivate::highlighted
bool highlighted
Definition
qquickmenuitem_p_p.h:48
QQuickMenuItemPrivate::defaultPalette
QPalette defaultPalette() const override
Definition
qquickmenuitem.cpp:169
QQuickMenuItemPrivate::setMenu
void setMenu(QQuickMenu *menu)
Presents an item within a Menu.
Definition
qquickmenuitem.cpp:99
QQuickMenuItemPrivate::updateEnabled
void updateEnabled()
Definition
qquickmenuitem.cpp:137
QQuickMenuItemPrivate::cancelArrow
void cancelArrow()
Definition
qquickmenuitem.cpp:145
QQuickMenuItemPrivate::setSubMenu
void setSubMenu(QQuickMenu *subMenu)
Definition
qquickmenuitem.cpp:109
QQuickMenuItemPrivate::executeArrow
void executeArrow(bool complete=false)
Definition
qquickmenuitem.cpp:151
QQuickMenuItemPrivate::menu
QQuickMenu * menu
Definition
qquickmenuitem_p_p.h:50
QQuickMenuItemPrivate::subMenu
QPointer< QQuickMenu > subMenu
Definition
qquickmenuitem_p_p.h:51
QQuickMenuItemPrivate::arrow
QQuickDeferredPointer< QQuickItem > arrow
Definition
qquickmenuitem_p_p.h:49
QQuickMenuItemPrivate::acceptKeyClick
bool acceptKeyClick(Qt::Key key) const override
Definition
qquickmenuitem.cpp:163
QQuickMenuPositioner
Definition
qquickmenu.cpp:281
QQuickMenuPositioner::QQuickMenuPositioner
QQuickMenuPositioner(QQuickMenu *menu)
Definition
qquickmenu.cpp:283
QQuickMenuPositioner::reposition
void reposition() override
Definition
qquickmenu.cpp:997
QQuickMenuPrivate
Definition
qquickmenu_p_p.h:38
QQuickMenuSeparator
Definition
qquickmenuseparator_p.h:27
QQuickMenu
Definition
qquickmenu_p.h:36
QQuickNativeIconLoader
Definition
qquicknativeiconloader_p.h:32
QQuickNativeMenuItem
A native menu item.
Definition
qquicknativemenuitem_p.h:32
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
cascadingSubMenuClosePolicy
static const QQuickPopup::ClosePolicy cascadingSubMenuClosePolicy
Menu popup that can be used as a context menu or popup menu.
Definition
qquickmenu.cpp:269
findParentMenuItem
static QQuickItem * findParentMenuItem(QQuickMenu *subMenu)
Definition
qquickmenu.cpp:1313
shouldCascade
static bool shouldCascade()
Definition
qquickmenu.cpp:271
nativeMenuItemListToString
QString nativeMenuItemListToString(const QList< QQuickNativeMenuItem * > &nativeItems)
Definition
qquickmenu.cpp:440
qtdeclarative
src
quicktemplates
qquicknativemenuitem_p.h
Generated on
for Qt by
1.18.0