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
qiosmenu.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
// Qt-Security score:significant reason:default
4
5
#
ifndef
QIOSMENU_H
6
#
define
QIOSMENU_H
7
8
#
import
<
UIKit
/
UIKit
.
h
>
9
10
#
include
<
QtCore
/
QtCore
>
11
#
include
<
qpa
/
qplatformmenu
.
h
>
12
13
#
import
"quiview.h"
14
15
#
include
<
QtCore
/
qpointer
.
h
>
16
17
class
QIOSMenu;
18
@
class
QUIMenuController;
19
@
class
QUIPickerView;
20
21
class
QIOSMenuItem
:
public
QPlatformMenuItem
22
{
23
public
:
24
QIOSMenuItem
();
25
26
void
setText
(
const
QString &text)
override
;
27
void
setIcon
(
const
QIcon &)
override
{}
28
void
setMenu
(QPlatformMenu *)
override
;
29
void
setVisible
(
bool
isVisible)
override
;
30
void
setIsSeparator
(
bool
)
override
;
31
void
setFont
(
const
QFont &)
override
{}
32
void
setRole
(MenuRole role)
override
;
33
void
setCheckable
(
bool
)
override
{}
34
void
setChecked
(
bool
)
override
{}
35
#
ifndef
QT_NO_SHORTCUT
36
void
setShortcut
(
const
QKeySequence&)
override
;
37
#
endif
38
void
setEnabled
(
bool
enabled)
override
;
39
void
setIconSize
(
int
)
override
{}
40
41
bool
m_visible
;
42
QString
m_text
;
43
MenuRole
m_role
;
44
bool
m_enabled
;
45
bool
m_separator
;
46
QIOSMenu
*
m_menu
;
47
QKeySequence
m_shortcut
;
48
};
49
50
typedef
QList
<
QIOSMenuItem
*>
QIOSMenuItemList
;
51
52
class
QIOSMenu
:
public
QPlatformMenu
53
{
54
public
:
55
QIOSMenu
();
56
~
QIOSMenu
();
57
58
void
insertMenuItem
(QPlatformMenuItem *menuItem, QPlatformMenuItem *before)
override
;
59
void
removeMenuItem
(QPlatformMenuItem *menuItem)
override
;
60
void
syncMenuItem
(QPlatformMenuItem *)
override
;
61
void
syncSeparatorsCollapsible
(
bool
)
override
{}
62
63
void
setText
(
const
QString &)
override
;
64
void
setIcon
(
const
QIcon &)
override
{}
65
void
setEnabled
(
bool
enabled)
override
;
66
void
setVisible
(
bool
visible)
override
;
67
void
setMenuType
(MenuType type)
override
;
68
69
void
showPopup
(
const
QWindow *parentWindow,
const
QRect &targetRect,
const
QPlatformMenuItem *item)
override
;
70
void
dismiss
()
override
;
71
72
QPlatformMenuItem
*
menuItemAt
(
int
position)
const
override
;
73
QPlatformMenuItem
*
menuItemForTag
(quintptr tag)
const
override
;
74
75
void
handleItemSelected
(
QIOSMenuItem
*menuItem);
76
77
static
QIOSMenu
*
currentMenu
() {
return
m_currentMenu; }
78
static
id
menuActionTarget
() {
return
m_currentMenu ? m_currentMenu->m_menuController : 0; }
79
80
protected
:
81
bool
eventFilter
(QObject *obj, QEvent *event)
override
;
82
83
private
:
84
bool
m_enabled;
85
bool
m_visible;
86
QString m_text;
87
MenuType m_menuType;
88
MenuType m_effectiveMenuType;
89
QPointer<QWindow> m_parentWindow;
90
QRect m_targetRect;
91
const
QIOSMenuItem
*m_targetItem;
92
QUIMenuController *m_menuController;
93
QUIPickerView *m_pickerView;
94
QIOSMenuItemList
m_menuItems;
95
96
static
QIOSMenu
*m_currentMenu;
97
98
void
updateVisibility();
99
void
toggleShowUsingUIMenuController(
bool
show);
100
void
toggleShowUsingUIPickerView(
bool
show);
101
QIOSMenuItemList
visibleMenuItems()
const
;
102
QIOSMenuItemList
filterFirstResponderActions(
const
QIOSMenuItemList
&menuItems);
103
void
repositionMenu();
104
};
105
106
#
endif
// QIOSMENU_H
QIOSMenuItem
Definition
qiosmenu.h:22
QIOSMenuItem::setChecked
void setChecked(bool) override
Definition
qiosmenu.h:34
QIOSMenuItem::setIcon
void setIcon(const QIcon &) override
Definition
qiosmenu.h:27
QIOSMenuItem::m_text
QString m_text
Definition
qiosmenu.h:42
QIOSMenuItem::setIconSize
void setIconSize(int) override
Definition
qiosmenu.h:39
QIOSMenuItem::setFont
void setFont(const QFont &) override
Definition
qiosmenu.h:31
QIOSMenuItem::setText
void setText(const QString &text) override
Definition
qiosmenu.mm:236
QIOSMenuItem::m_menu
QIOSMenu * m_menu
Definition
qiosmenu.h:46
QIOSMenuItem::setIsSeparator
void setIsSeparator(bool) override
Definition
qiosmenu.mm:251
QIOSMenuItem::setVisible
void setVisible(bool isVisible) override
Definition
qiosmenu.mm:246
QIOSMenuItem::m_enabled
bool m_enabled
Definition
qiosmenu.h:44
QIOSMenuItem::m_visible
bool m_visible
Definition
qiosmenu.h:41
QIOSMenuItem::setCheckable
void setCheckable(bool) override
Definition
qiosmenu.h:33
QIOSMenuItem::m_separator
bool m_separator
Definition
qiosmenu.h:45
QIOSMenuItem::QIOSMenuItem
QIOSMenuItem()
Definition
qiosmenu.mm:225
QIOSMenuItem::m_role
MenuRole m_role
Definition
qiosmenu.h:43
QIOSMenuItem::setShortcut
void setShortcut(const QKeySequence &) override
Definition
qiosmenu.mm:262
QIOSMenuItem::setRole
void setRole(MenuRole role) override
Definition
qiosmenu.mm:256
QIOSMenuItem::setEnabled
void setEnabled(bool enabled) override
Definition
qiosmenu.mm:268
QIOSMenuItem::setMenu
void setMenu(QPlatformMenu *) override
Definition
qiosmenu.mm:241
QIOSMenuItem::m_shortcut
QKeySequence m_shortcut
Definition
qiosmenu.h:47
QIOSMenu
Definition
qiosmenu.h:53
QIOSMenu::dismiss
void dismiss() override
Definition
qiosmenu.mm:391
QIOSMenu::menuItemAt
QPlatformMenuItem * menuItemAt(int position) const override
Definition
qiosmenu.mm:532
QIOSMenu::insertMenuItem
void insertMenuItem(QPlatformMenuItem *menuItem, QPlatformMenuItem *before) override
Definition
qiosmenu.mm:293
QIOSMenu::removeMenuItem
void removeMenuItem(QPlatformMenuItem *menuItem) override
Definition
qiosmenu.mm:305
QIOSMenu::setText
void setText(const QString &) override
Definition
qiosmenu.mm:327
QIOSMenu::menuItemForTag
QPlatformMenuItem * menuItemForTag(quintptr tag) const override
Definition
qiosmenu.mm:539
QIOSMenu::currentMenu
static QIOSMenu * currentMenu()
Definition
qiosmenu.h:77
QIOSMenu::setVisible
void setVisible(bool visible) override
Definition
qiosmenu.mm:337
QIOSMenu::setIcon
void setIcon(const QIcon &) override
Definition
qiosmenu.h:64
QIOSMenu::showPopup
void showPopup(const QWindow *parentWindow, const QRect &targetRect, const QPlatformMenuItem *item) override
Definition
qiosmenu.mm:358
QIOSMenu::menuActionTarget
static id menuActionTarget()
Definition
qiosmenu.h:78
QIOSMenu::eventFilter
bool eventFilter(QObject *obj, QEvent *event) override
Filters events if this object has been installed as an event filter for the watched object.
Definition
qiosmenu.mm:456
QIOSMenu::QIOSMenu
QIOSMenu()
Definition
qiosmenu.mm:274
QIOSMenu::syncMenuItem
void syncMenuItem(QPlatformMenuItem *) override
Definition
qiosmenu.mm:312
QIOSMenu::~QIOSMenu
~QIOSMenu()
Definition
qiosmenu.mm:288
QIOSMenu::syncSeparatorsCollapsible
void syncSeparatorsCollapsible(bool) override
Definition
qiosmenu.h:61
QIOSMenu::handleItemSelected
void handleItemSelected(QIOSMenuItem *menuItem)
Definition
qiosmenu.mm:347
QIOSMenu::setEnabled
void setEnabled(bool enabled) override
Definition
qiosmenu.mm:332
QIOSMenu::setMenuType
void setMenuType(MenuType type) override
Definition
qiosmenu.mm:342
std
[33]
Definition
src_corelib_tools_qhash.cpp:421
NSInteger
long NSInteger
Definition
qcocoawindow.h:33
Q_FORWARD_DECLARE_OBJC_CLASS
Q_FORWARD_DECLARE_OBJC_CLASS(NSString)
qApp
#define qApp
Definition
qcoreapplication.h:38
qGuiApp
#define qGuiApp
Definition
qguiapplication.h:35
kImePlatformDataInputAccessoryView
const char kImePlatformDataInputAccessoryView[]
Definition
qiosinputcontext.h:16
kImePlatformDataHideShortcutsBar
const char kImePlatformDataHideShortcutsBar[]
Definition
qiosinputcontext.h:17
QIOSMenuItemList
QList< QIOSMenuItem * > QIOSMenuItemList
Definition
qiosmenu.h:50
kSelectorPrefix
static NSString *const kSelectorPrefix
Definition
qiosmenu.mm:26
QmlIR::Object::id
int id
Definition
qqmlirbuilder_p.h:312
qtbase
src
plugins
platforms
ios
qiosmenu.h
Generated on
for Qt by
1.18.0