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
qeglfsx11integration.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
QEGLFSX11INTEGRATION_H
6
#
define
QEGLFSX11INTEGRATION_H
7
8
#
include
"private/qeglfsdeviceintegration_p.h"
9
10
#
include
<
qpa
/
qwindowsysteminterface
.
h
>
11
#
include
<
qpa
/
qplatformwindow
.
h
>
12
13
#
include
<
xcb
/
xcb
.
h
>
14
15
QT_BEGIN_NAMESPACE
16
17
namespace
Atoms
{
18
enum
{
19
_NET_WM_NAME
= 0,
20
UTF8_STRING
,
21
WM_PROTOCOLS
,
22
WM_DELETE_WINDOW
,
23
_NET_WM_STATE
,
24
_NET_WM_STATE_FULLSCREEN
,
25
26
N_ATOMS
27
};
28
}
29
30
class
EventReader;
31
32
class
QEglFSX11Integration
:
public
QEglFSDeviceIntegration
33
{
34
public
:
35
QEglFSX11Integration
() : m_connection(
nullptr
), m_window(0), m_eventReader(
nullptr
) {}
36
37
void
platformInit
()
override
;
38
void
platformDestroy
()
override
;
39
EGLNativeDisplayType
platformDisplay
()
const
override
;
40
QSize
screenSize
()
const
override
;
41
EGLNativeWindowType
createNativeWindow
(QPlatformWindow *window,
42
const
QSize &size,
43
const
QSurfaceFormat &format)
override
;
44
void
destroyNativeWindow
(EGLNativeWindowType window)
override
;
45
bool
hasCapability
(QPlatformIntegration::Capability cap)
const
override
;
46
47
xcb_connection_t *
connection
() {
return
m_connection; }
48
const
xcb_atom_t *
atoms
()
const
{
return
m_atoms; }
49
QPlatformWindow
*
platformWindow
() {
return
m_platformWindow; }
50
51
private
:
52
void
sendConnectionEvent(xcb_atom_t a);
53
54
void
*m_display;
55
xcb_connection_t *m_connection;
56
xcb_atom_t m_atoms[
Atoms
::
N_ATOMS
];
57
xcb_window_t m_window;
58
EventReader *m_eventReader;
59
xcb_window_t m_connectionEventListener;
60
QPlatformWindow *m_platformWindow;
61
mutable
QSize m_screenSize;
62
};
63
64
QT_END_NAMESPACE
65
66
#
endif
QEglFSX11Integration
Definition
qeglfsx11integration.h:33
QEglFSX11Integration::connection
xcb_connection_t * connection()
Definition
qeglfsx11integration.h:47
QEglFSX11Integration::atoms
const xcb_atom_t * atoms() const
Definition
qeglfsx11integration.h:48
QEglFSX11Integration::platformWindow
QPlatformWindow * platformWindow()
Definition
qeglfsx11integration.h:49
QEglFSX11Integration::createNativeWindow
EGLNativeWindowType createNativeWindow(QPlatformWindow *window, const QSize &size, const QSurfaceFormat &format) override
Definition
qeglfsx11integration.cpp:130
QEglFSX11Integration::platformInit
void platformInit() override
Definition
qeglfsx11integration.cpp:72
QEglFSX11Integration::platformDestroy
void platformDestroy() override
Definition
qeglfsx11integration.cpp:95
QEglFSX11Integration::platformDisplay
EGLNativeDisplayType platformDisplay() const override
Definition
qeglfsx11integration.cpp:110
QEglFSX11Integration::screenSize
QSize screenSize() const override
Definition
qeglfsx11integration.cpp:115
QEglFSX11Integration::hasCapability
bool hasCapability(QPlatformIntegration::Capability cap) const override
Definition
qeglfsx11integration.cpp:186
QEglFSX11Integration::QEglFSX11Integration
QEglFSX11Integration()
Definition
qeglfsx11integration.h:35
QEglFSX11Integration::destroyNativeWindow
void destroyNativeWindow(EGLNativeWindowType window) override
Definition
qeglfsx11integration.cpp:181
Atoms
Definition
qeglfsx11integration.h:17
Atoms::WM_DELETE_WINDOW
@ WM_DELETE_WINDOW
Definition
qeglfsx11integration.h:22
Atoms::_NET_WM_STATE_FULLSCREEN
@ _NET_WM_STATE_FULLSCREEN
Definition
qeglfsx11integration.h:24
Atoms::UTF8_STRING
@ UTF8_STRING
Definition
qeglfsx11integration.h:20
Atoms::WM_PROTOCOLS
@ WM_PROTOCOLS
Definition
qeglfsx11integration.h:21
Atoms::N_ATOMS
@ N_ATOMS
Definition
qeglfsx11integration.h:26
Atoms::_NET_WM_NAME
@ _NET_WM_NAME
Definition
qeglfsx11integration.h:19
Atoms::_NET_WM_STATE
@ _NET_WM_STATE
Definition
qeglfsx11integration.h:23
DISPLAY
#define DISPLAY
Definition
qeglfsx11integration.cpp:70
qtbase
src
plugins
platforms
eglfs
deviceintegration
eglfs_x11
qeglfsx11integration.h
Generated on
for Qt by
1.18.0