*/
/*!
- \fn QAbstractEventDispatcher *createEventDispatcher() const
- Factory function for the event dispatcher. The platform plugin
- must create and and return a QAbstractEventDispatcher subclass when
- this function is called.
+ \fn QAbstractEventDispatcher *guiThreadEventDispatcher() const = 0
+
+ Accessor function for the event dispatcher. The platform plugin should create
+ an instance of the QAbstractEventDispatcher in its constructor and set it
+ on the application using QGuiApplicationPrivate::instance()->setEventDispatcher().
+ The event dispatcher is owned by QGuiApplication, the accessor should return
+ a flat pointer.
+ \sa QGuiApplicationPrivate
*/
bool QPlatformIntegration::hasCapability(Capability cap) const
#endif
#include <QtGui/private/qpixmap_raster_p.h>
+#include <QtGui/private/qguiapplication_p.h>
#include <QtGui/QPlatformWindow>
-QMinimalIntegration::QMinimalIntegration()
+QT_BEGIN_NAMESPACE
+
+QMinimalIntegration::QMinimalIntegration() :
+#ifdef Q_OS_WIN
+ m_eventDispatcher(new QEventDispatcherWin32())
+#else
+ m_eventDispatcher(createUnixEventDispatcher())
+#endif
{
+ QGuiApplicationPrivate::instance()->setEventDispatcher(m_eventDispatcher);
QMinimalScreen *mPrimaryScreen = new QMinimalScreen();
mPrimaryScreen->mGeometry = QRect(0, 0, 240, 320);
return new QMinimalBackingStore(window);
}
-QAbstractEventDispatcher *QMinimalIntegration::createEventDispatcher() const
+QAbstractEventDispatcher *QMinimalIntegration::guiThreadEventDispatcher() const
{
-#ifndef Q_OS_WIN
- return createUnixEventDispatcher();
-#else
- return new QEventDispatcherWin32();
-#endif
+ return m_eventDispatcher;
}
+QT_END_NAMESPACE
QPlatformWindow *createPlatformWindow(QWindow *window) const;
QPlatformBackingStore *createPlatformBackingStore(QWindow *window) const;
+ QAbstractEventDispatcher *guiThreadEventDispatcher() const;
- QAbstractEventDispatcher *createEventDispatcher() const;
+private:
+ QAbstractEventDispatcher *m_eventDispatcher;
};
QT_END_NAMESPACE