5#ifndef QQNXINTEGRATION_H
6#define QQNXINTEGRATION_H
8#include <qpa/qplatformintegration.h>
9#include <private/qtguiglobal_p.h>
10#include <QtCore/qhash.h>
11#include <QtCore/qmutex.h>
13#include <screen/screen.h>
21class QQnxScreenEventThread;
22class QQnxFileDialogHelper;
29class QQnxAbstractVirtualKeyboard;
35#if QT_CONFIG(qqnx_pps)
36class QQnxNavigatorEventNotifier;
37class QQnxButtonEventNotifier;
40#if !defined(QT_NO_CLIPBOARD)
44using QQnxWindowMapper = QHash<screen_window_t, QWindow *>;
57 Q_DECLARE_FLAGS(Options,
Option)
63 bool hasCapability(QPlatformIntegration::Capability cap)
const override;
90#if !defined(QT_NO_CLIPBOARD)
93#if QT_CONFIG(draganddrop)
104 void createDisplay(screen_display_t display,
bool isPrimary);
116 void createDisplays();
117 void destroyDisplays();
119 void addWindow(screen_window_t qnxWindow, QWindow *window);
120 void removeWindow(screen_window_t qnxWindow);
121 QList<screen_display_t *> sortDisplays(screen_display_t *displays,
124 screen_context_t m_screenContext;
125 QByteArray m_screenContextId;
126 QQnxScreenEventThread *m_screenEventThread;
128 QQnxAbstractVirtualKeyboard *m_virtualKeyboard;
130#if QT_CONFIG(qqnx_pps)
134 QPlatformInputContext *m_qpaInputContext;
136 QPlatformFontDatabase *m_fontDatabase;
137 mutable QAbstractEventDispatcher *m_eventDispatcher;
139 QList<QQnxScreen*> m_screens;
141#if !defined(QT_NO_CLIPBOARD)
145#if QT_CONFIG(draganddrop)
148 QQnxWindowMapper m_windowMapper;
149 mutable QMutex m_windowMapperMutex;
QAbstractEventDispatcher * createEventDispatcher() const override
Factory function for the GUI event dispatcher.
bool hasCapability(QPlatformIntegration::Capability cap) const override
QPlatformFontDatabase * fontDatabase() const override
Accessor for the platform integration's fontdatabase.
QPlatformNativeInterface * nativeInterface() const override
QQnxNavigatorEventHandler * navigatorEventHandler()
@ AlwaysFlushScreenContext
QPlatformBackingStore * createPlatformBackingStore(QWindow *window) const override
Factory function for QPlatformBackingStore.
QPlatformWindow * createPlatformWindow(QWindow *window) const override
Factory function for QPlatformWindow.
static QQnxIntegration * instance()
const QList< QQnxScreen * > & screens() const
QPlatformWindow * createForeignWindow(QWindow *window, WId nativeHandle) const override
QQnxScreen * primaryDisplay() const
void removeDisplay(QQnxScreen *screen)
QVariant styleHint(StyleHint hint) const override
QPlatformServices * services() const override
void moveToScreen(QWindow *window, int screen)
QPlatformInputContext * inputContext() const override
Returns the platforms input context.
QByteArray screenContextId()
QQnxScreen * screenForNative(screen_display_t qnxScreen) const
void createDisplay(screen_display_t display, bool isPrimary)
screen_context_t screenContext()
QWindow * window(screen_window_t qnxWindow) const
QPlatformClipboard * clipboard() const override
Accessor for the platform integration's clipboard.
bool supportsNavigatorEvents() const
The QQnxWindow is the base class of the various classes used as instances of QPlatformWindow in the Q...
Combined button and popup list for selecting options.
QT_BEGIN_NAMESPACE void qqnxLgmonInit()