summaryrefslogtreecommitdiff
path: root/src/opengl/qgl_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/opengl/qgl_p.h')
-rw-r--r--src/opengl/qgl_p.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/opengl/qgl_p.h b/src/opengl/qgl_p.h
index 0cb6dc2afd..f7b939281a 100644
--- a/src/opengl/qgl_p.h
+++ b/src/opengl/qgl_p.h
@@ -60,6 +60,7 @@
#include "QtCore/qthreadstorage.h"
#include "QtCore/qhash.h"
#include "private/qwidget_p.h"
+#include "private/qpixmapdata_gl_p.h"
#ifndef QT_OPENGL_ES_1_CL
#define q_vertexType float
@@ -239,6 +240,7 @@ public:
QGLFormat glFormat;
QGLFormat reqFormat;
GLuint pbo;
+ GLuint fbo;
uint valid : 1;
uint sharing : 1;
@@ -256,6 +258,7 @@ public:
GLint max_texture_size;
GLuint current_fbo;
+ QPaintEngine *active_engine;
#ifdef Q_WS_WIN
static inline QGLExtensionFuncs& qt_get_extension_funcs(const QGLContext *ctx) { return ctx->d_ptr->extensionFuncs; }
@@ -290,7 +293,7 @@ class QGLWindowSurface;
class QGLDrawable {
public:
QGLDrawable() : widget(0), buffer(0), fbo(0)
- , wsurf(0)
+ , wsurf(0), pixmapData(0)
{}
void setDevice(QPaintDevice *pdev);
void swapBuffers();
@@ -304,6 +307,8 @@ public:
QGLContext *context() const;
bool autoFillBackground() const;
+ QGLPixmapData *copyOnBegin() const;
+
private:
bool wasBound;
QGLWidget *widget;
@@ -314,6 +319,7 @@ private:
#else
QGLWindowSurface *wsurf;
#endif
+ QGLPixmapData *pixmapData;
};
// GL extension definitions