Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qqnxscreeneventhandler.h
Go to the documentation of this file.
1// Copyright (C) 2013 BlackBerry Limited. All rights reserved.
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 QQNXSCREENEVENTHANDLER_H
5#define QQNXSCREENEVENTHANDLER_H
6
7#include <qpa/qwindowsysteminterface.h>
8
9#include <screen/screen.h>
10
12
13class QQnxIntegration;
16
18{
20public:
21 explicit QQnxScreenEventHandler(QQnxIntegration *integration);
22
25
26 bool handleEvent(screen_event_t event);
27 bool handleEvent(screen_event_t event, int qnxType);
28
29 static void injectKeyboardEvent(int flags, int sym, int mod, int scan, int cap);
30
32
35 void windowClosed(void *window);
36
37protected:
38 void timerEvent(QTimerEvent *event) override;
39
40private Q_SLOTS:
41 void processEvents();
42
43private:
44 void handleKeyboardEvent(screen_event_t event);
45 void handlePointerEvent(screen_event_t event);
46 void handleTouchEvent(screen_event_t event, int qnxType);
47 void handleCloseEvent(screen_event_t event);
48 void handleCreateEvent(screen_event_t event);
49 void handleDisplayEvent(screen_event_t event);
50 void handlePropertyEvent(screen_event_t event);
51 void handleKeyboardFocusPropertyEvent(screen_window_t window);
52 void handleGeometryPropertyEvent(screen_window_t window);
53
54private:
55 enum {
56 MaximumTouchPoints = 10
57 };
58
59 QQnxIntegration *m_qnxIntegration;
60 QPoint m_lastGlobalMousePoint;
61 QPoint m_lastLocalMousePoint;
62 Qt::MouseButtons m_lastButtonState;
63 screen_window_t m_lastMouseWindow;
64 QPointingDevice *m_touchDevice;
65 QPointingDevice *m_mouseDevice;
66 QWindowSystemInterface::TouchPoint m_touchPoints[MaximumTouchPoints];
67 QList<QQnxScreenEventFilter*> m_eventFilters;
68 QQnxScreenEventThread *m_eventThread;
69 int m_focusLostTimer;
70};
71
73
74#endif // QQNXSCREENEVENTHANDLER_H
Definition qlist.h:74
\inmodule QtCore
Definition qobject.h:90
\inmodule QtCore\reentrant
Definition qpoint.h:23
The QPointingDevice class describes a device from which mouse, touch or tablet events originate.
void removeScreenEventFilter(QQnxScreenEventFilter *filter)
void windowClosed(void *window)
void setScreenEventThread(QQnxScreenEventThread *eventThread)
void newWindowCreated(void *window)
void timerEvent(QTimerEvent *event) override
This event handler can be reimplemented in a subclass to receive timer events for the object.
bool handleEvent(screen_event_t event)
static void injectKeyboardEvent(int flags, int sym, int mod, int scan, int cap)
void addScreenEventFilter(QQnxScreenEventFilter *filter)
\inmodule QtCore
Definition qcoreevent.h:359
Combined button and popup list for selecting options.
GLbitfield flags
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
struct _cl_event * event
GLenum cap
#define Q_OBJECT
#define Q_SLOTS
#define Q_SIGNALS
aWidget window() -> setWindowTitle("New Window Title")
[2]