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
qdbusplatformmenu_p.h
Go to the documentation of this file.
1
// Copyright (C) 2016 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
QDBUSPLATFORMMENU_H
5
#
define
QDBUSPLATFORMMENU_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
// W A R N I N G
19
// -------------
20
//
21
// This file is part of the DBus menu support and is not meant to be used
22
// in applications. Usage of this API may make your code
23
// source and binary incompatible with future versions of Qt.
24
//
25
26
#
include
<
qpa
/
qplatformmenu
.
h
>
27
#
include
<
QLoggingCategory
>
28
#
include
"qdbusmenutypes_p.h"
29
30
QT_BEGIN_NAMESPACE
31
Q_DECLARE_LOGGING_CATEGORY(qLcMenu)
32
33
class
QDBusPlatformMenu;
34
35
class
QDBusPlatformMenuItem
:
public
QPlatformMenuItem
36
{
37
Q_OBJECT
38
39
public
:
40
QDBusPlatformMenuItem
();
41
~
QDBusPlatformMenuItem
();
42
43
const
QString
text
()
const
{
return
m_text; }
44
void
setText
(
const
QString &text)
override
;
45
QIcon
icon
()
const
{
return
m_icon; }
46
void
setIcon
(
const
QIcon &icon)
override
;
47
const
QPlatformMenu
*
menu
()
const
{
return
m_subMenu; }
48
void
setMenu
(QPlatformMenu *menu)
override
;
49
bool
isEnabled
()
const
{
return
m_isEnabled; }
50
void
setEnabled
(
bool
enabled)
override
;
51
bool
isVisible
()
const
{
return
m_isVisible; }
52
void
setVisible
(
bool
isVisible)
override
;
53
bool
isSeparator
()
const
{
return
m_isSeparator; }
54
void
setIsSeparator
(
bool
isSeparator)
override
;
55
void
setFont
(
const
QFont &font)
override
{ Q_UNUSED(font); }
56
void
setRole
(MenuRole role)
override
;
57
bool
isCheckable
()
const
{
return
m_isCheckable; }
58
void
setCheckable
(
bool
checkable)
override
;
59
bool
isChecked
()
const
{
return
m_isChecked; }
60
void
setChecked
(
bool
isChecked)
override
;
61
bool
hasExclusiveGroup
()
const
{
return
m_hasExclusiveGroup; }
62
void
setHasExclusiveGroup
(
bool
hasExclusiveGroup)
override
;
63
#
if
QT_CONFIG
(
shortcut
)
64
QKeySequence
shortcut
()
const
{
return
m_shortcut
; }
65
void
setShortcut
(
const
QKeySequence
&
shortcut
)
override
;
66
#
endif
67
void
setIconSize
(
int
size)
override
{ Q_UNUSED(size); }
68
void
setNativeContents
(WId item)
override
{ Q_UNUSED(item); }
69
70
int
dbusID
()
const
{
return
m_dbusID; }
71
72
void
trigger
();
73
74
static
QDBusPlatformMenuItem
*
byId
(
int
id);
75
static
QList
<
const
QDBusPlatformMenuItem
*>
byIds
(
const
QList<
int
> &ids);
76
77
private
:
78
QString m_text;
79
QIcon m_icon;
80
QPlatformMenu *m_subMenu;
81
MenuRole m_role : 4;
82
bool
m_isEnabled : 1;
83
bool
m_isVisible : 1;
84
bool
m_isSeparator : 1;
85
bool
m_isCheckable : 1;
86
bool
m_isChecked : 1;
87
bool
m_hasExclusiveGroup : 1;
88
short
/*unused*/
: 6;
89
short
m_dbusID : 16;
90
#
if
QT_CONFIG
(
shortcut
)
91
QKeySequence
m_shortcut
;
92
#
endif
93
};
94
95
class
QDBusPlatformMenu
:
public
QPlatformMenu
96
{
97
Q_OBJECT
98
99
public
:
100
QDBusPlatformMenu
();
101
~
QDBusPlatformMenu
();
102
void
insertMenuItem
(QPlatformMenuItem *menuItem, QPlatformMenuItem *before)
override
;
103
void
removeMenuItem
(QPlatformMenuItem *menuItem)
override
;
104
void
syncSubMenu
(
const
QDBusPlatformMenu
*menu);
105
void
syncMenuItem
(QPlatformMenuItem *menuItem)
override
;
106
void
syncSeparatorsCollapsible
(
bool
enable)
override
{ Q_UNUSED(enable); }
107
108
const
QString
text
()
const
{
return
m_text; }
109
void
setText
(
const
QString &text)
override
;
110
QIcon
icon
()
const
{
return
m_icon; }
111
void
setIcon
(
const
QIcon &icon)
override
;
112
bool
isEnabled
()
const
override
{
return
m_isEnabled; }
113
void
setEnabled
(
bool
enabled)
override
;
114
bool
isVisible
()
const
{
return
m_isVisible; }
115
void
setVisible
(
bool
visible)
override
;
116
void
setMinimumWidth
(
int
width)
override
{ Q_UNUSED(width); }
117
void
setFont
(
const
QFont &font)
override
{ Q_UNUSED(font); }
118
void
setMenuType
(MenuType type)
override
{ Q_UNUSED(type); }
119
void
setContainingMenuItem
(
QDBusPlatformMenuItem
*item);
120
121
void
showPopup
(
const
QWindow *parentWindow,
const
QRect &targetRect,
const
QPlatformMenuItem *item)
override
;
122
123
void
dismiss
()
override
{ }
// Closes this and all its related menu popups
124
125
QPlatformMenuItem
*
menuItemAt
(
int
position)
const
override
;
126
QPlatformMenuItem
*
menuItemForTag
(quintptr tag)
const
override
;
127
const
QList
<
QDBusPlatformMenuItem
*>
items
()
const
;
128
129
QPlatformMenuItem
*
createMenuItem
()
const
override
;
130
QPlatformMenu
*
createSubMenu
()
const
override
;
131
132
uint
revision
()
const
{
return
m_revision; }
133
134
void
emitUpdated
();
135
136
signals
:
137
void
updated
(
uint
revision
,
int
dbusId
);
138
void
propertiesUpdated
(
QDBusMenuItemList
updatedProps,
QDBusMenuItemKeysList
removedProps);
139
void
popupRequested
(
int
id, uint timestamp);
140
141
private
:
142
QString m_text;
143
QIcon m_icon;
144
bool
m_isEnabled;
145
bool
m_isVisible;
146
uint m_revision;
147
QHash<quintptr, QDBusPlatformMenuItem *> m_itemsByTag;
148
QList<QDBusPlatformMenuItem *> m_items;
149
QDBusPlatformMenuItem
*m_containingMenuItem;
150
};
151
152
QT_END_NAMESPACE
153
154
#
endif
QDBusMenuEvent
Definition
qdbusmenutypes_p.h:88
QDBusMenuEvent::m_data
QDBusVariant m_data
Definition
qdbusmenutypes_p.h:92
QDBusMenuEvent::m_eventId
QString m_eventId
Definition
qdbusmenutypes_p.h:91
QDBusMenuEvent::m_timestamp
uint m_timestamp
Definition
qdbusmenutypes_p.h:93
QDBusMenuEvent::m_id
int m_id
Definition
qdbusmenutypes_p.h:90
QDBusMenuItemKeys
Definition
qdbusmenutypes_p.h:56
QDBusMenuItemKeys::id
int id
Definition
qdbusmenutypes_p.h:59
QDBusMenuItemKeys::properties
QStringList properties
Definition
qdbusmenutypes_p.h:60
QDBusMenuItem
Definition
qdbusmenutypes_p.h:35
QDBusMenuItem::m_id
int m_id
Definition
qdbusmenutypes_p.h:47
QDBusMenuItem::convertKeySequence
static QDBusMenuShortcut convertKeySequence(const QKeySequence &sequence)
Definition
qdbusmenutypes.cpp:215
QDBusMenuItem::convertMnemonic
static QString convertMnemonic(const QString &label)
Definition
qdbusmenutypes.cpp:202
QDBusMenuItem::items
static QDBusMenuItemList items(const QList< int > &ids, const QStringList &propertyNames)
Definition
qdbusmenutypes.cpp:191
QDBusMenuItem::QDBusMenuItem
QDBusMenuItem()
Definition
qdbusmenutypes_p.h:37
QDBusMenuItem::m_properties
QVariantMap m_properties
Definition
qdbusmenutypes_p.h:48
QDBusMenuItem::QDBusMenuItem
QDBusMenuItem(const QDBusPlatformMenuItem *item)
Definition
qdbusmenutypes.cpp:157
QDBusMenuItem::registerDBusTypes
static void registerDBusTypes()
Definition
qdbusmenutypes.cpp:144
QDBusMenuLayoutItem
Definition
qdbusmenutypes_p.h:70
QDBusMenuLayoutItem::populate
uint populate(int id, int depth, const QStringList &propertyNames, const QDBusPlatformMenu *topLevelMenu)
Definition
qdbusmenutypes.cpp:67
QDBusMenuLayoutItem::m_properties
QVariantMap m_properties
Definition
qdbusmenutypes_p.h:77
QDBusMenuLayoutItem::m_id
int m_id
Definition
qdbusmenutypes_p.h:76
QDBusMenuLayoutItem::populate
void populate(const QDBusPlatformMenuItem *item, int depth, const QStringList &propertyNames)
Definition
qdbusmenutypes.cpp:102
QDBusMenuLayoutItem::m_children
QList< QDBusMenuLayoutItem > m_children
Definition
qdbusmenutypes_p.h:78
QDBusMenuLayoutItem::populate
void populate(const QDBusPlatformMenu *menu, int depth, const QStringList &propertyNames)
Definition
qdbusmenutypes.cpp:92
QDBusPlatformMenuItem
Definition
qdbusplatformmenu_p.h:36
QDBusPlatformMenuItem::setNativeContents
void setNativeContents(WId item) override
Definition
qdbusplatformmenu_p.h:68
QDBusPlatformMenuItem::setText
void setText(const QString &text) override
Definition
qdbusplatformmenu.cpp:38
QDBusPlatformMenuItem::trigger
void trigger()
Definition
qdbusplatformmenu.cpp:103
QDBusPlatformMenuItem::isChecked
bool isChecked() const
Definition
qdbusplatformmenu_p.h:59
QDBusPlatformMenuItem::hasExclusiveGroup
bool hasExclusiveGroup() const
Definition
qdbusplatformmenu_p.h:61
QDBusPlatformMenuItem::setIsSeparator
void setIsSeparator(bool isSeparator) override
Definition
qdbusplatformmenu.cpp:71
QDBusPlatformMenuItem::text
const QString text() const
Definition
qdbusplatformmenu_p.h:43
QDBusPlatformMenuItem::dbusID
int dbusID() const
Definition
qdbusplatformmenu_p.h:70
QDBusPlatformMenuItem::isEnabled
bool isEnabled() const
Definition
qdbusplatformmenu_p.h:49
QDBusPlatformMenuItem::byId
static QDBusPlatformMenuItem * byId(int id)
Definition
qdbusplatformmenu.cpp:108
QDBusPlatformMenuItem::setHasExclusiveGroup
void setHasExclusiveGroup(bool hasExclusiveGroup) override
Definition
qdbusplatformmenu.cpp:91
QDBusPlatformMenuItem::setRole
void setRole(MenuRole role) override
Definition
qdbusplatformmenu.cpp:76
QDBusPlatformMenuItem::isCheckable
bool isCheckable() const
Definition
qdbusplatformmenu_p.h:57
QDBusPlatformMenuItem::setEnabled
void setEnabled(bool enabled) override
Definition
qdbusplatformmenu.cpp:61
QDBusPlatformMenuItem::setChecked
void setChecked(bool isChecked) override
Definition
qdbusplatformmenu.cpp:86
QDBusPlatformMenuItem::setVisible
void setVisible(bool isVisible) override
Definition
qdbusplatformmenu.cpp:66
QDBusPlatformMenuItem::icon
QIcon icon() const
Definition
qdbusplatformmenu_p.h:45
QDBusPlatformMenuItem::menu
const QPlatformMenu * menu() const
Definition
qdbusplatformmenu_p.h:47
QDBusPlatformMenuItem::~QDBusPlatformMenuItem
~QDBusPlatformMenuItem()
Definition
qdbusplatformmenu.cpp:31
QDBusPlatformMenuItem::setIconSize
void setIconSize(int size) override
Definition
qdbusplatformmenu_p.h:67
QDBusPlatformMenuItem::setFont
void setFont(const QFont &font) override
Definition
qdbusplatformmenu_p.h:55
QDBusPlatformMenuItem::setCheckable
void setCheckable(bool checkable) override
Definition
qdbusplatformmenu.cpp:81
QDBusPlatformMenuItem::isVisible
bool isVisible() const
Definition
qdbusplatformmenu_p.h:51
QDBusPlatformMenuItem::byIds
static QList< const QDBusPlatformMenuItem * > byIds(const QList< int > &ids)
Definition
qdbusplatformmenu.cpp:117
QDBusPlatformMenuItem::isSeparator
bool isSeparator() const
Definition
qdbusplatformmenu_p.h:53
QDBusPlatformMenuItem::setIcon
void setIcon(const QIcon &icon) override
Definition
qdbusplatformmenu.cpp:44
QDBusPlatformMenuItem::setMenu
void setMenu(QPlatformMenu *menu) override
Set a submenu under this menu item.
Definition
qdbusplatformmenu.cpp:52
QDBusPlatformMenu
Definition
qdbusplatformmenu_p.h:96
QDBusPlatformMenu::setIcon
void setIcon(const QIcon &icon) override
Definition
qdbusplatformmenu.cpp:217
QDBusPlatformMenu::showPopup
void showPopup(const QWindow *parentWindow, const QRect &targetRect, const QPlatformMenuItem *item) override
Definition
qdbusplatformmenu.cpp:237
QDBusPlatformMenu::menuItemForTag
QPlatformMenuItem * menuItemForTag(quintptr tag) const override
Definition
qdbusplatformmenu.cpp:251
QDBusPlatformMenu::popupRequested
void popupRequested(int id, uint timestamp)
QDBusPlatformMenu::createSubMenu
QPlatformMenu * createSubMenu() const override
Definition
qdbusplatformmenu.cpp:267
QDBusPlatformMenu::setEnabled
void setEnabled(bool enabled) override
Definition
qdbusplatformmenu.cpp:222
QDBusPlatformMenu::isEnabled
bool isEnabled() const override
Definition
qdbusplatformmenu_p.h:112
QDBusPlatformMenu::isVisible
bool isVisible() const
Definition
qdbusplatformmenu_p.h:114
QDBusPlatformMenu::removeMenuItem
void removeMenuItem(QPlatformMenuItem *menuItem) override
Definition
qdbusplatformmenu.cpp:158
QDBusPlatformMenu::setText
void setText(const QString &text) override
Definition
qdbusplatformmenu.cpp:212
QDBusPlatformMenu::setMinimumWidth
void setMinimumWidth(int width) override
Definition
qdbusplatformmenu_p.h:116
QDBusPlatformMenu::emitUpdated
void emitUpdated()
Definition
qdbusplatformmenu.cpp:204
QDBusPlatformMenu::icon
QIcon icon() const
Definition
qdbusplatformmenu_p.h:110
QDBusPlatformMenu::dismiss
void dismiss() override
Definition
qdbusplatformmenu_p.h:123
QDBusPlatformMenu::~QDBusPlatformMenu
~QDBusPlatformMenu()
Definition
qdbusplatformmenu.cpp:136
QDBusPlatformMenu::items
const QList< QDBusPlatformMenuItem * > items() const
Definition
qdbusplatformmenu.cpp:256
QDBusPlatformMenu::insertMenuItem
void insertMenuItem(QPlatformMenuItem *menuItem, QPlatformMenuItem *before) override
Definition
qdbusplatformmenu.cpp:142
QDBusPlatformMenu::setContainingMenuItem
void setContainingMenuItem(QDBusPlatformMenuItem *item)
Definition
qdbusplatformmenu.cpp:232
QDBusPlatformMenu::syncSeparatorsCollapsible
void syncSeparatorsCollapsible(bool enable) override
Definition
qdbusplatformmenu_p.h:106
QDBusPlatformMenu::revision
uint revision() const
Definition
qdbusplatformmenu_p.h:132
QDBusPlatformMenu::menuItemAt
QPlatformMenuItem * menuItemAt(int position) const override
Definition
qdbusplatformmenu.cpp:246
QDBusPlatformMenu::setVisible
void setVisible(bool visible) override
Definition
qdbusplatformmenu.cpp:227
QDBusPlatformMenu::setFont
void setFont(const QFont &font) override
Definition
qdbusplatformmenu_p.h:117
QDBusPlatformMenu::propertiesUpdated
void propertiesUpdated(QDBusMenuItemList updatedProps, QDBusMenuItemKeysList removedProps)
QDBusPlatformMenu::syncSubMenu
void syncSubMenu(const QDBusPlatformMenu *menu)
Definition
qdbusplatformmenu.cpp:176
QDBusPlatformMenu::syncMenuItem
void syncMenuItem(QPlatformMenuItem *menuItem) override
Definition
qdbusplatformmenu.cpp:188
QDBusPlatformMenu::text
const QString text() const
Definition
qdbusplatformmenu_p.h:108
QDBusPlatformMenu::createMenuItem
QPlatformMenuItem * createMenuItem() const override
Definition
qdbusplatformmenu.cpp:261
QDBusPlatformMenu::setMenuType
void setMenuType(MenuType type) override
Definition
qdbusplatformmenu_p.h:118
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qstandardpaths_haiku.cpp:21
operator>>
const QDBusArgument & operator>>(const QDBusArgument &arg, QDBusMenuEvent &ev)
Definition
qdbusmenutypes.cpp:253
operator<<
QDebug operator<<(QDebug d, const QDBusMenuItem &item)
Definition
qdbusmenutypes.cpp:262
operator<<
const QDBusArgument & operator<<(QDBusArgument &arg, const QDBusMenuEvent &ev)
Definition
qdbusmenutypes.cpp:245
operator>>
const QDBusArgument & operator>>(const QDBusArgument &arg, QDBusMenuItem &item)
Definition
qdbusmenutypes.cpp:43
operator<<
const QDBusArgument & operator<<(QDBusArgument &arg, const QDBusMenuItemKeys &keys)
Definition
qdbusmenutypes.cpp:51
operator<<
QDebug operator<<(QDebug d, const QDBusMenuLayoutItem &item)
Definition
qdbusmenutypes.cpp:270
operator>>
const QDBusArgument & operator>>(const QDBusArgument &arg, QDBusMenuLayoutItem &item)
Definition
qdbusmenutypes.cpp:125
operator<<
const QDBusArgument & operator<<(QDBusArgument &arg, const QDBusMenuLayoutItem &item)
Definition
qdbusmenutypes.cpp:113
operator>>
const QDBusArgument & operator>>(const QDBusArgument &arg, QDBusMenuItemKeys &keys)
Definition
qdbusmenutypes.cpp:59
Q_DECLARE_TYPEINFO
Q_DECLARE_TYPEINFO(QDBusMenuLayoutItem, Q_RELOCATABLE_TYPE)
Q_DECLARE_TYPEINFO
Q_DECLARE_TYPEINFO(QDBusMenuItemKeys, Q_RELOCATABLE_TYPE)
QDBusMenuShortcut
QList< QStringList > QDBusMenuShortcut
Definition
qdbusmenutypes_p.h:32
QDBusMenuItemKeysList
QList< QDBusMenuItemKeys > QDBusMenuItemKeysList
Definition
qdbusmenutypes_p.h:67
Q_DECLARE_TYPEINFO
Q_DECLARE_TYPEINFO(QDBusMenuEvent, Q_RELOCATABLE_TYPE)
QDBusMenuItemList
QList< QDBusMenuItem > QDBusMenuItemList
Definition
qdbusmenutypes_p.h:31
QDBusMenuLayoutItemList
QList< QDBusMenuLayoutItem > QDBusMenuLayoutItemList
Definition
qdbusmenutypes_p.h:85
Q_DECLARE_TYPEINFO
Q_DECLARE_TYPEINFO(QDBusMenuItem, Q_RELOCATABLE_TYPE)
operator<<
const QDBusArgument & operator<<(QDBusArgument &arg, const QDBusMenuItem &item)
Definition
qdbusmenutypes.cpp:35
QDBusMenuEventList
QList< QDBusMenuEvent > QDBusMenuEventList
Definition
qdbusmenutypes_p.h:101
qtbase
src
gui
platform
unix
dbusmenu
qdbusplatformmenu_p.h
Generated on Sat Sep 28 2024 00:40:13 for Qt by
1.12.0