diff options
author | Assam Boudjelthia <assam.boudjelthia@qt.io> | 2020-08-25 11:32:58 +0300 |
---|---|---|
committer | Assam Boudjelthia <assam.boudjelthia@qt.io> | 2020-08-27 23:35:16 +0300 |
commit | fc4a73aa544bf03d881ddb7e2eb8ebd47d7da7b8 (patch) | |
tree | 6e0a334fa3b9535541d546ecffc890cbb4307a6a /src/gui/kernel/qoffscreensurface.h | |
parent | 15db957585828af7a83896963fade95c3ddcc7e3 (diff) |
Add QOffScreenSurface platform API abstraction
This follows the work done in 6ff79478a44fce12ca18832a56db4a370a9ff417.
The API is available by including qoffscreensurface.h, scoped in
the QPlatformInterface namespace. The namespace
exposes platform specific type-safe interfaces that provide:
a) Factory functions for adopting native contexts, e.g.
QAndroidPlatformOffscreenSurface::fromNative(ANativeWindow);
b) Access to underlying native handles, e.g.
surface->platformInterface<QAndroidPlatformOffscreenSurface>()
->nativeSurface()
Fixes: QTBUG-85874
Change-Id: I29c459866e0355a52320d5d473e8b147e050acb3
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/gui/kernel/qoffscreensurface.h')
-rw-r--r-- | src/gui/kernel/qoffscreensurface.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gui/kernel/qoffscreensurface.h b/src/gui/kernel/qoffscreensurface.h index 1a3c476244..fe8db44633 100644 --- a/src/gui/kernel/qoffscreensurface.h +++ b/src/gui/kernel/qoffscreensurface.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the QtGui module of the Qt Toolkit. @@ -79,8 +79,8 @@ public: QPlatformOffscreenSurface *handle() const; - void *nativeHandle() const; - void setNativeHandle(void *handle); + template <typename T> + T *platformInterface() const; Q_SIGNALS: void screenChanged(QScreen *screen); @@ -97,4 +97,6 @@ private: QT_END_NAMESPACE +#include <QtGui/qoffscreensurface_platform.h> + #endif // QOFFSCREENSURFACE_H |