diff options
author | Christian Kamm <christian.d.kamm@nokia.com> | 2010-08-06 10:35:47 (GMT) |
---|---|---|
committer | Christian Kamm <christian.d.kamm@nokia.com> | 2010-08-06 10:35:47 (GMT) |
commit | a8530e5db7ae25ea0ab5df4681308374abf8b6ba (patch) | |
tree | f78ee517e8f160aeaed1915854b3ff7c41612ee5 /src/opengl | |
parent | a1f0a650578b71fddae9db05435715338b15ba35 (diff) | |
download | Qt-a8530e5db7ae25ea0ab5df4681308374abf8b6ba.zip Qt-a8530e5db7ae25ea0ab5df4681308374abf8b6ba.tar.gz Qt-a8530e5db7ae25ea0ab5df4681308374abf8b6ba.tar.bz2 |
Allow customizing the default fbo from the QPlatformGLContext.
Reviewed-by: Jørgen Lind
Diffstat (limited to 'src/opengl')
-rw-r--r-- | src/opengl/qgl_qpa.cpp | 1 | ||||
-rw-r--r-- | src/opengl/qglpaintdevice.cpp | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/opengl/qgl_qpa.cpp b/src/opengl/qgl_qpa.cpp index 5f0bca3..b05df64 100644 --- a/src/opengl/qgl_qpa.cpp +++ b/src/opengl/qgl_qpa.cpp @@ -139,6 +139,7 @@ bool QGLContext::chooseContext(const QGLContext* shareContext) } d->platformContext = widget->platformWindow()->glContext(); Q_ASSERT(d->platformContext); + d->default_fbo = d->platformContext->defaultFBO(); d->glFormat = qt_platformwindowformat_to_glformat(d->platformContext->platformWindowFormat()); d->valid =(bool) d->platformContext; } diff --git a/src/opengl/qglpaintdevice.cpp b/src/opengl/qglpaintdevice.cpp index e1dcbfd..e12fdae 100644 --- a/src/opengl/qglpaintdevice.cpp +++ b/src/opengl/qglpaintdevice.cpp @@ -166,6 +166,12 @@ void QGLWidgetGLPaintDevice::setWidget(QGLWidget* w) void QGLWidgetGLPaintDevice::beginPaint() { + // ### This should be in setWidget(), but the context of the QGLWidget + // hasn't been set there yet. +#ifdef Q_WS_QPA + m_thisFBO = context()->d_ptr->platformContext->defaultFBO(); +#endif + QGLPaintDevice::beginPaint(); if (!glWidget->d_func()->disable_clear_on_painter_begin && glWidget->autoFillBackground()) { if (glWidget->testAttribute(Qt::WA_TranslucentBackground)) |