summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qplatformintegration_qpa.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/kernel/qplatformintegration_qpa.h')
-rw-r--r--src/gui/kernel/qplatformintegration_qpa.h41
1 files changed, 21 insertions, 20 deletions
diff --git a/src/gui/kernel/qplatformintegration_qpa.h b/src/gui/kernel/qplatformintegration_qpa.h
index 74d2342314..3c903600f0 100644
--- a/src/gui/kernel/qplatformintegration_qpa.h
+++ b/src/gui/kernel/qplatformintegration_qpa.h
@@ -43,9 +43,8 @@
#define QPLATFORMINTEGRATION_H
#include <QtGui/qwindowdefs.h>
-#include <QtGui/private/qwindowsurface_p.h>
-#include <QtGui/private/qpixmapdata_p.h>
#include <QtGui/qplatformscreen_qpa.h>
+#include <QtGui/qsurfaceformat.h>
QT_BEGIN_HEADER
@@ -54,13 +53,16 @@ QT_BEGIN_NAMESPACE
QT_MODULE(Gui)
class QPlatformWindow;
-class QWindowSurface;
-class QBlittable;
-class QWidget;
-class QPlatformEventLoopIntegration;
+class QWindow;
+class QPlatformBackingStore;
class QPlatformFontDatabase;
class QPlatformClipboard;
class QPlatformNativeInterface;
+class QPlatformDrag;
+class QPlatformGLContext;
+class QGuiGLFormat;
+class QAbstractEventDispatcher;
+class QPlatformInputContext;
class Q_GUI_EXPORT QPlatformIntegration
{
@@ -74,30 +76,29 @@ public:
virtual bool hasCapability(Capability cap) const;
-// GraphicsSystem functions
- virtual QPixmapData *createPixmapData(QPixmapData::PixelType type) const = 0;
- virtual QPlatformWindow *createPlatformWindow(QWidget *widget, WId winId = 0) const = 0;
- virtual QWindowSurface *createWindowSurface(QWidget *widget, WId winId) const = 0;
+ virtual QPlatformPixmap *createPlatformPixmap(QPlatformPixmap::PixelType type) const;
+ virtual QPlatformWindow *createPlatformWindow(QWindow *window) const = 0;
+ virtual QPlatformBackingStore *createPlatformBackingStore(QWindow *window) const = 0;
+ virtual QPlatformGLContext *createPlatformGLContext(QGuiGLContext *context) const;
-// Window System functions
- virtual QList<QPlatformScreen *> screens() const = 0;
- virtual void moveToScreen(QWidget *window, int screen) {Q_UNUSED(window); Q_UNUSED(screen);}
- virtual bool isVirtualDesktop() { return false; }
- virtual QPixmap grabWindow(WId window, int x, int y, int width, int height) const;
+// Event dispatcher:
+ virtual QAbstractEventDispatcher *guiThreadEventDispatcher() const = 0;
//Deeper window system integrations
virtual QPlatformFontDatabase *fontDatabase() const;
#ifndef QT_NO_CLIPBOARD
virtual QPlatformClipboard *clipboard() const;
#endif
-
-// Experimental in mainthread eventloop integration
-// This should only be used if it is only possible to do window system event processing in
-// the gui thread. All of the functions in QWindowSystemInterface are thread safe.
- virtual QPlatformEventLoopIntegration *createEventLoopIntegration() const;
+#ifndef QT_NO_DRAGANDDROP
+ virtual QPlatformDrag *drag() const;
+#endif
+ virtual QPlatformInputContext *inputContext() const;
// Access native handles. The window handle is already available from Wid;
virtual QPlatformNativeInterface *nativeInterface() const;
+
+protected:
+ void screenAdded(QPlatformScreen *screen);
};
QT_END_NAMESPACE