summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>2015-03-11 14:07:45 +0100
committerTor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>2015-03-12 10:10:07 +0000
commitd758c115e47ce17813523c6c7ecf52581791541d (patch)
tree75d519838b2af516b452cdfc06d876c017ba322c
parente92b68b1a6755cd65b4066bea038a276c3386a44 (diff)
iOS: Prepare QIOSIntegration for handling plugin options
QGuiApplication sets options passed to the plugin through -platform as properties on the QPlatformNativeInterface. To handle those we need to inherit QPlatformNativeInterface first (which is the QObject subclass), and include the Q_OBJECT macro. Change-Id: Ia496851c64cbb0036c26e7ed0683d0ecfa8319cc Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
-rw-r--r--src/plugins/platforms/ios/qiosintegration.h10
-rw-r--r--src/plugins/platforms/ios/qiosintegration.mm26
2 files changed, 23 insertions, 13 deletions
diff --git a/src/plugins/platforms/ios/qiosintegration.h b/src/plugins/platforms/ios/qiosintegration.h
index 8a27342d2f..c22c43e455 100644
--- a/src/plugins/platforms/ios/qiosintegration.h
+++ b/src/plugins/platforms/ios/qiosintegration.h
@@ -45,8 +45,10 @@ QT_BEGIN_NAMESPACE
class QIOSServices;
-class QIOSIntegration : public QPlatformIntegration, public QPlatformNativeInterface
+class QIOSIntegration : public QPlatformNativeInterface, public QPlatformIntegration
{
+ Q_OBJECT
+
public:
QIOSIntegration();
~QIOSIntegration();
@@ -72,8 +74,6 @@ public:
QAbstractEventDispatcher *createEventDispatcher() const;
QPlatformNativeInterface *nativeInterface() const;
- void *nativeResourceForWindow(const QByteArray &resource, QWindow *window);
-
QTouchDevice *touchDevice();
QPlatformAccessibility *accessibility() const Q_DECL_OVERRIDE;
@@ -83,6 +83,10 @@ public:
static QIOSIntegration *instance();
+ // -- QPlatformNativeInterface --
+
+ void *nativeResourceForWindow(const QByteArray &resource, QWindow *window);
+
private:
QPlatformFontDatabase *m_fontDatabase;
QPlatformClipboard *m_clipboard;
diff --git a/src/plugins/platforms/ios/qiosintegration.mm b/src/plugins/platforms/ios/qiosintegration.mm
index 9d29b4edf7..fcfd6c7cc8 100644
--- a/src/plugins/platforms/ios/qiosintegration.mm
+++ b/src/plugins/platforms/ios/qiosintegration.mm
@@ -215,11 +215,25 @@ QPlatformTheme *QIOSIntegration::createPlatformTheme(const QString &name) const
return QPlatformIntegration::createPlatformTheme(name);
}
+QTouchDevice *QIOSIntegration::touchDevice()
+{
+ return m_touchDevice;
+}
+
+QPlatformAccessibility *QIOSIntegration::accessibility() const
+{
+ if (!m_accessibility)
+ m_accessibility = new QIOSPlatformAccessibility;
+ return m_accessibility;
+}
+
QPlatformNativeInterface *QIOSIntegration::nativeInterface() const
{
return const_cast<QIOSIntegration *>(this);
}
+// ---------------------------------------------------------
+
void *QIOSIntegration::nativeResourceForWindow(const QByteArray &resource, QWindow *window)
{
if (!window || !window->handle())
@@ -235,16 +249,8 @@ void *QIOSIntegration::nativeResourceForWindow(const QByteArray &resource, QWind
return 0;
}
-QTouchDevice *QIOSIntegration::touchDevice()
-{
- return m_touchDevice;
-}
+// ---------------------------------------------------------
-QPlatformAccessibility *QIOSIntegration::accessibility() const
-{
- if (!m_accessibility)
- m_accessibility = new QIOSPlatformAccessibility;
- return m_accessibility;
-}
+#include "moc_qiosintegration.cpp"
QT_END_NAMESPACE