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)
107 void createDisplay(screen_display_t display,
bool isPrimary);
119 void createDisplays();
120 void destroyDisplays();
122 void addWindow(screen_window_t qnxWindow, QWindow *window);
123 void removeWindow(screen_window_t qnxWindow);
124 QList<screen_display_t *> sortDisplays(screen_display_t *displays,
127 screen_context_t m_screenContext;
128 QByteArray m_screenContextId;
129 QQnxScreenEventThread *m_screenEventThread;
131 QQnxAbstractVirtualKeyboard *m_virtualKeyboard;
133#if QT_CONFIG(qqnx_pps)
137 QPlatformInputContext *m_qpaInputContext;
139 QPlatformFontDatabase *m_fontDatabase;
140 mutable QAbstractEventDispatcher *m_eventDispatcher;
142 QList<QQnxScreen*> m_screens;
144#if !defined(QT_NO_CLIPBOARD)
148#if QT_CONFIG(draganddrop)
151 QQnxWindowMapper m_windowMapper;
152 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
QStringList themeNames() const override
QQnxScreen * primaryDisplay() const
QPlatformTheme * createPlatformTheme(const QString &name) const override
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()