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
qquickmenuitemiconlabel_p_p.h
Go to the documentation of this file.
1// Copyright (C) 2026 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 QQUICKMENUITEMICONLABEL_P_P_H
6#define QQUICKMENUITEMICONLABEL_P_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 <QtQuickControls2Impl/private/qquickiconlabel_p_p.h>
20#include <QtQuickControls2Impl/private/qquickmenuitemiconlabel_p.h>
21#if QT_CONFIG(shortcut)
22# include <QtGui/qkeysequence.h>
23#endif
24
26
27class QQuickMenuItem;
28class QQuickText;
29
30class Q_AUTOTEST_EXPORT QQuickMenuItemIconLabelPrivate : public QQuickIconLabelPrivate
31{
32 Q_DECLARE_PUBLIC(QQuickMenuItemIconLabel)
33
34public:
35 ~QQuickMenuItemIconLabelPrivate() override;
36
37 bool hasShortcut() const;
38#if QT_CONFIG(shortcut)
39 QKeySequence shortcut() const;
40#endif
41 bool createShortcutLabel();
42 bool updateShortcutLabel();
43 void syncShortcutLabel();
44 bool destroyShortcutLabel();
45 void updateOrSyncShortcutLabel();
46
47 void updateImplicitSize() override;
48 void layout() override;
49 void itemDestroyed(QQuickItem *item) override;
50
51 void textChange() override;
52 void displayChange() override;
53
54 QQuickMenuItem *menuItem = nullptr;
55 QQuickText *shortcutLabel = nullptr;
56};
57
58QT_END_NAMESPACE
59
60#endif // QQUICKMENUITEMICONLABEL_P_P_H
Combined button and popup list for selecting options.