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
qdirectfbinput.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 QDIRECTFBINPUT_H
6#define QDIRECTFBINPUT_H
7
8#include <QThread>
9#include <QHash>
10#include <QPoint>
11#include <QEvent>
12
13#include <QtGui/qwindowdefs.h>
14
16
18
19class QDirectFbInput : public QThread
20{
22public:
24 void addWindow(IDirectFBWindow *window, QWindow *platformWindow);
25 void removeWindow(IDirectFBWindow *window);
26
27 void stopInputEventLoop();
28
29protected:
30 void run() override;
31
32private:
33 void handleEvents();
34 void handleMouseEvents(const DFBEvent &event);
35 void handleWheelEvent(const DFBEvent &event);
36 void handleKeyEvents(const DFBEvent &event);
37 void handleEnterLeaveEvents(const DFBEvent &event);
38 void handleGotFocusEvent(const DFBEvent &event);
39 void handleCloseEvent(const DFBEvent& event);
40 void handleGeometryEvent(const DFBEvent& event);
41
42
43 IDirectFB *m_dfbInterface;
44 IDirectFBDisplayLayer *m_dfbDisplayLayer;
45 QDirectFBPointer<IDirectFBEventBuffer> m_eventBuffer;
46
47 bool m_shouldStop;
48 QHash<DFBWindowID,QWindow *>m_tlwMap;
49};
50
51QT_END_NAMESPACE
52
53#endif // QDIRECTFBINPUT_H
void removeWindow(IDirectFBWindow *window)
void run() override
void addWindow(IDirectFBWindow *window, QWindow *platformWindow)
QScopedPointer< QDirectFbInput > m_input
bool hasCapability(Capability cap) const override
QPlatformInputContext * inputContext() const override
Returns the platforms input context.
QScopedPointer< QDirectFbScreen > m_primaryScreen
QAbstractEventDispatcher * createEventDispatcher() const override
Factory function for the GUI event dispatcher.
QPlatformInputContext * m_inputContext
QPlatformServices * services() const override
QScopedPointer< QThread > m_inputRunner
QPlatformPixmap * createPlatformPixmap(QPlatformPixmap::PixelType type) const override
Factory function for QPlatformPixmap.
QPlatformFontDatabase * fontDatabase() const override
Accessor for the platform integration's fontdatabase.
QPlatformWindow * createPlatformWindow(QWindow *window) const override
Factory function for QPlatformWindow.
QPlatformBackingStore * createPlatformBackingStore(QWindow *window) const override
Factory function for QPlatformBackingStore.
QScopedPointer< QPlatformFontDatabase > m_fontDb
QDirectFBPointer< IDirectFB > m_dfb
QPlatformNativeInterface * nativeInterface() const override
QScopedPointer< QPlatformServices > m_services
#define QT_EGL_BACKEND_CREATE(system, out)
Definition main.cpp:20