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
qiosintegration.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
QPLATFORMINTEGRATION_UIKIT_H
6
#
define
QPLATFORMINTEGRATION_UIKIT_H
7
8
#
include
<
qpa
/
qplatformintegration
.
h
>
9
#
include
<
qpa
/
qplatformnativeinterface
.
h
>
10
#
include
<
qpa
/
qwindowsysteminterface
.
h
>
11
12
#
include
<
QtCore
/
private
/
qfactoryloader_p
.
h
>
13
14
#
include
"qiosapplicationstate.h"
15
16
#
if
!
defined
(
Q_OS_TVOS
)
&&
!
defined
(
Q_OS_VISIONOS
)
17
#
include
"qiostextinputoverlay.h"
18
#
endif
19
20
#
if
defined
(
Q_OS_VISIONOS
)
21
#
include
<
swift
/
bridging
>
22
#
endif
23
24
QT_BEGIN_NAMESPACE
25
26
using
namespace
QNativeInterface;
27
28
class
QIOSServices
;
29
30
class
31
#
if
defined
(
Q_OS_VISIONOS
)
32
SWIFT_IMMORTAL_REFERENCE
33
#
endif
34
QIOSIntegration
:
public
QPlatformNativeInterface
,
public
QPlatformIntegration
35
#
if
defined
(
Q_OS_VISIONOS
)
36
,
public
QVisionOSApplication
37
#
endif
38
{
39
Q_OBJECT
40
public
:
41
QIOSIntegration
();
42
~
QIOSIntegration
();
43
44
void
initialize
()
override
;
45
46
bool
hasCapability
(Capability cap)
const
override
;
47
48
QPlatformWindow
*
createPlatformWindow
(QWindow *window)
const
override
;
49
QPlatformWindow
*
createForeignWindow
(QWindow *window, WId nativeHandle)
const
override
;
50
QPlatformBackingStore
*
createPlatformBackingStore
(QWindow *window)
const
override
;
51
52
#
if
QT_CONFIG
(
opengl
)
53
QPlatformOpenGLContext
*
createPlatformOpenGLContext
(
QOpenGLContext
*
context
)
const
override
;
54
#
endif
55
56
QPlatformOffscreenSurface
*
createPlatformOffscreenSurface
(QOffscreenSurface *surface)
const
override
;
57
58
QPlatformFontDatabase
*
fontDatabase
()
const
override
;
59
60
#
if
QT_CONFIG
(
clipboard
)
61
QPlatformClipboard
*
clipboard
()
const
override
;
62
#
endif
63
64
QPlatformInputContext
*
inputContext
()
const
override
;
65
QPlatformServices
*
services
()
const
override
;
66
67
QVariant
styleHint
(StyleHint hint)
const
override
;
68
69
QStringList
themeNames
()
const
override
;
70
QPlatformTheme
*
createPlatformTheme
(
const
QString &name)
const
override
;
71
72
QAbstractEventDispatcher
*
createEventDispatcher
()
const
override
;
73
QPlatformNativeInterface
*
nativeInterface
()
const
override
;
74
75
QPointingDevice
*
touchDevice
();
76
#
if
QT_CONFIG
(
tabletevent
)
77
QPointingDevice
*
pencilDevice
();
78
#
endif
79
#
if
QT_CONFIG
(
accessibility
)
80
QPlatformAccessibility
*
accessibility
()
const
override
;
81
#
endif
82
83
void
beep
()
const
override
;
84
85
void
setApplicationBadge
(qint64 number)
override
;
86
87
static
QIOSIntegration
*
instance
();
88
89
// -- QPlatformNativeInterface --
90
91
void
*
nativeResourceForWindow
(
const
QByteArray &resource, QWindow *window)
override
;
92
93
QFactoryLoader
*
optionalPlugins
() {
return
m_optionalPlugins; }
94
95
QIOSApplicationState
applicationState
;
96
97
#
if
defined
(
Q_OS_VISIONOS
)
98
void
openImmersiveSpace
()
override
;
99
void
dismissImmersiveSpace
()
override
;
100
101
using
CompositorLayer
=
QVisionOSApplication
::
ImmersiveSpaceCompositorLayer
;
102
void
setImmersiveSpaceCompositorLayer
(
CompositorLayer
*
layer
)
override
;
103
104
void
configureCompositorLayer
(
cp_layer_renderer_capabilities_t
,
cp_layer_renderer_configuration_t
);
105
void
renderCompositorLayer
(
cp_layer_renderer_t
);
106
void
handleSpatialEvents
(
const
char
*
jsonString
);
107
#
endif
108
109
private
:
110
QPlatformFontDatabase *m_fontDatabase;
111
#
if
QT_CONFIG
(
clipboard
)
112
QPlatformClipboard
*
m_clipboard
;
113
#
endif
114
QPlatformInputContext *m_inputContext;
115
QPointingDevice *m_touchDevice;
116
#
if
QT_CONFIG
(
tabletevent
)
117
QPointingDevice
*
m_pencilDevice
=
nullptr
;
118
#
endif
119
mutable
QIOSServices
*m_platformServices =
nullptr
;
120
mutable
QPlatformAccessibility *m_accessibility;
121
QFactoryLoader *m_optionalPlugins;
122
#
if
!
defined
(
Q_OS_TVOS
)
&&
!
defined
(
Q_OS_VISIONOS
)
123
QIOSTextInputOverlay m_textInputOverlay;
124
#
endif
125
126
#
if
defined
(
Q_OS_VISIONOS
)
127
CompositorLayer
*
m_immersiveSpaceCompositorLayer
=
nullptr
;
128
#
endif
129
};
130
131
QT_END_NAMESPACE
132
133
#
endif
QIOSIntegrationPlugin
Definition
plugin.mm:14
QIOSIntegration
Definition
qiosintegration.h:38
QIOSIntegration::applicationState
QIOSApplicationState applicationState
Definition
qiosintegration.h:95
QIOSIntegration::initialize
void initialize() override
Performs initialization steps that depend on having an event dispatcher available.
Definition
qiosintegration.mm:75
QIOSIntegration::styleHint
QVariant styleHint(StyleHint hint) const override
Definition
qiosintegration.mm:244
QIOSIntegration::createPlatformTheme
QPlatformTheme * createPlatformTheme(const QString &name) const override
Definition
qiosintegration.mm:267
QIOSIntegration::optionalPlugins
QFactoryLoader * optionalPlugins()
Definition
qiosintegration.h:93
QIOSIntegration::nativeResourceForWindow
void * nativeResourceForWindow(const QByteArray &resource, QWindow *window) override
Definition
qiosintegration.mm:361
QIOSIntegration::beep
void beep() const override
Definition
qiosintegration.mm:301
QIOSIntegration::~QIOSIntegration
~QIOSIntegration()
Definition
qiosintegration.mm:118
QIOSIntegration::instance
static QIOSIntegration * instance()
Definition
qiosintegration.mm:53
QIOSIntegration::createPlatformOffscreenSurface
QPlatformOffscreenSurface * createPlatformOffscreenSurface(QOffscreenSurface *surface) const override
Factory function for QOffscreenSurface.
Definition
qiosintegration.mm:209
QIOSIntegration::createForeignWindow
QPlatformWindow * createForeignWindow(QWindow *window, WId nativeHandle) const override
Definition
qiosintegration.mm:178
QIOSIntegration::setApplicationBadge
void setApplicationBadge(qint64 number) override
Definition
qiosintegration.mm:308
QIOSIntegration::touchDevice
QPointingDevice * touchDevice()
Definition
qiosintegration.mm:275
QIOSIntegration::createPlatformBackingStore
QPlatformBackingStore * createPlatformBackingStore(QWindow *window) const override
Factory function for QPlatformBackingStore.
Definition
qiosintegration.mm:183
QIOSIntegration::themeNames
QStringList themeNames() const override
Definition
qiosintegration.mm:262
QIOSIntegration::nativeInterface
QPlatformNativeInterface * nativeInterface() const override
Definition
qiosintegration.mm:296
QIOSIntegration::createEventDispatcher
QAbstractEventDispatcher * createEventDispatcher() const override
Factory function for the GUI event dispatcher.
Definition
qiosintegration.mm:214
QIOSIntegration::services
QPlatformServices * services() const override
Definition
qiosintegration.mm:236
QIOSIntegration::hasCapability
bool hasCapability(Capability cap) const override
Definition
qiosintegration.mm:146
QIOSIntegration::inputContext
QPlatformInputContext * inputContext() const override
Returns the platforms input context.
Definition
qiosintegration.mm:231
QIOSIntegration::fontDatabase
QPlatformFontDatabase * fontDatabase() const override
Accessor for the platform integration's fontdatabase.
Definition
qiosintegration.mm:219
QIOSIntegration::createPlatformWindow
QPlatformWindow * createPlatformWindow(QWindow *window) const override
Factory function for QPlatformWindow.
Definition
qiosintegration.mm:173
QIOSServices
Definition
qiosservices.h:14
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
qtbase
src
plugins
platforms
ios
qiosintegration.h
Generated on
for Qt by
1.18.0