Add QPA readme.
authorMorten Johan Sorvig <morten.sorvig@nokia.com>
Thu, 22 Mar 2012 10:21:32 +0000 (11:21 +0100)
committerQt by Nokia <qt-info@nokia.com>
Fri, 23 Mar 2012 08:48:04 +0000 (09:48 +0100)
Change-Id: Ibc3a95f3560af909a45d147098184c2194187932
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
src/plugins/platforms/README [new file with mode: 0644]

diff --git a/src/plugins/platforms/README b/src/plugins/platforms/README
new file mode 100644 (file)
index 0000000..b44d04f
--- /dev/null
@@ -0,0 +1,49 @@
+The Qt Platform Abstraction - QPA
+
+QPA is the platform abstraction layer for Qt 5 and replaces QWS and the
+platform ports from Qt 4.
+
+There is currently little documentation for QPA. The best approach for
+developing a new platform plugin is to look at the other plugins and
+see how they implement the APIs in question. The "minimal" plugin
+is a good starting point. The xcb, windows, cocoa, and qnx plugins
+are also actively developed and up to date.
+
+QPA plugins are implemented by subclassing various QPlatform*
+classes. There are two "root" classes: QPlatformIntegration for
+window system integration and QPlatformTheme for deeper platform
+theming and integration. QStyle is not a part of QPA.
+
+The APIs provided by QPlatformIntegration are at this point (5.0 Alpha)
+mostly stable. QPlatformTheme still has ongoing development. There
+are no source or binary compatibility guarantees for the QPA classes,
+meaning that a platform plugin is only guaranteed to work with the Qt
+version it was developed against. API changes will however only be
+made in minor releases. (5.1, 5.2, and so on.)
+
+Class Overview:
+
+QPlatformIntegration
+    QPlatformWindow
+    QPlatformBackingStore
+    QPlatformOpenGLContext
+    QPlatformSharedGraphicsCache
+    QPlatformFontDatabase
+    QPlatformClipboard
+    QPlatformDrag
+    QAbstractEventDispatcher
+    QPlatformInputContext
+    QPlatformAccessibility
+    QPlatformNativeInterface
+    QPlatformServices
+
+QPlatformTheme
+    QPlatformMenu
+    QPlatformMenuBar
+    QPlatformDialogHelper
+    platform palettes
+    platform fonts
+    theme hints
+
+src/platformsupport contains several helper classes for implementing
+platform plugins on unix-like systems.