diff options
author | Rhys Weatherley <rhys.weatherley@nokia.com> | 2009-09-24 23:42:43 (GMT) |
---|---|---|
committer | Rhys Weatherley <rhys.weatherley@nokia.com> | 2009-09-24 23:42:43 (GMT) |
commit | 7421f79f57f475b9e96e53e5cbd9861c428d4ae3 (patch) | |
tree | 0fa825c9c29be98c9ba02c191fe3a2001702416e /src/opengl/qgl_qws.cpp | |
parent | f6dee67827e72a0660f37998dafb18c6ccd9834e (diff) | |
download | Qt-7421f79f57f475b9e96e53e5cbd9861c428d4ae3.zip Qt-7421f79f57f475b9e96e53e5cbd9861c428d4ae3.tar.gz Qt-7421f79f57f475b9e96e53e5cbd9861c428d4ae3.tar.bz2 |
Start to separate the EGLSurface from QEglContext in QtOpenGL
Also, move the EGL makeCurrent(), doneCurrent(), swapBuffers(),
and reset() functions into the common qgl_egl.cpp.
Reviewed-by: Sarah Smith
Diffstat (limited to 'src/opengl/qgl_qws.cpp')
-rw-r--r-- | src/opengl/qgl_qws.cpp | 51 |
1 files changed, 1 insertions, 50 deletions
diff --git a/src/opengl/qgl_qws.cpp b/src/opengl/qgl_qws.cpp index 7197776..b8a8777 100644 --- a/src/opengl/qgl_qws.cpp +++ b/src/opengl/qgl_qws.cpp @@ -228,61 +228,12 @@ bool QGLContext::chooseContext(const QGLContext* shareContext) d->eglContext = 0; return false; } + d->eglSurface = d->eglContext->surface(); return true; } -void QGLContext::reset() -{ - Q_D(QGLContext); - if (!d->valid) - return; - d->cleanup(); - doneCurrent(); - if (d->eglContext) { - delete d->eglContext; - d->eglContext = 0; - } - d->crWin = false; - d->sharing = false; - d->valid = false; - d->transpColor = QColor(); - d->initDone = false; - qgl_share_reg()->removeShare(this); -} - -void QGLContext::makeCurrent() -{ - Q_D(QGLContext); - if(!d->valid || !d->eglContext) { - qWarning("QGLContext::makeCurrent(): Cannot make invalid context current"); - return; - } - - if (d->eglContext->makeCurrent()) - QGLContextPrivate::setCurrentContext(this); -} - -void QGLContext::doneCurrent() -{ - Q_D(QGLContext); - if (d->eglContext) - d->eglContext->doneCurrent(); - - QGLContextPrivate::setCurrentContext(0); -} - - -void QGLContext::swapBuffers() const -{ - Q_D(const QGLContext); - if(!d->valid || !d->eglContext) - return; - - d->eglContext->swapBuffers(); -} - QColor QGLContext::overlayTransparentColor() const { return QColor(0, 0, 0); // Invalid color |