Абстракция платформы Qt
Абстракция платформы Qt (QPA) — это слой абстракции платформы для Qt 5 и заменяет Qt для встроенной Linux и порты платформ из Qt 4.
Плагины QPA реализуются путём наследования различных классов QPlatform*. Существует два «корневых» класса: QPlatformIntegration для интеграции с системным окном и QPlatformTheme для более глубокой настройки и интеграции темы платформы. QStyle не является частью QPA.
Для классов QPA нет гарантий совместимости исходного кода или бинарных файлов, что означает, что плагин платформы гарантированно будет работать только с версией Qt, для которой он был разработан. Однако изменения API будут вноситься только в небольших выпусках. (5.1, 5.2 и т. д.)
В настоящее время нет подробной документации по написанию плагинов QPA. Однако в поставке Qt5 есть два примера плагинов:
qtbase/src/plugins/platforms/minimal/qtbase/src/plugins/platforms/minimalegl/
Обзор класса
- QPlatformIntegration
- QPlatformWindow
- QPlatformBackingStore
- QPlatformOpenGLContext
- QPlatformSharedGraphicsCache
- QPlatformFontDatabase
- QPlatformClipboard
- QPlatformDrag
- QAbstractEventDispatcher
- QPlatformInputContext
- QPlatformAccessibility
- QPlatformNativeInterface
- QPlatformServices
- QPlatformTheme
- QPlatformMenu
- QPlatformMenuBar
- QPlatformDialogHelper
- палитра платформы
- шрифты платформы
- подсказки темы
qtbase/src/platformsupport содержит несколько вспомогательных классов для реализации плагинов платформы в системах типа Unix.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qpa.html