Add QPA readme.

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>
This commit is contained in:
Morten Johan Sorvig 2012-03-22 11:21:32 +01:00 committed by Qt by Nokia
parent 70a8833151
commit 96e89ddbf9

View File

@ -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.