From c45005a77890a14d20498d3a829f70ce209f3742 Mon Sep 17 00:00:00 2001 From: Sean Harmer Date: Wed, 19 Sep 2012 13:46:36 +0100 Subject: [PATCH] OpenGL: Add flags and logic for newer versions of OpenGL in QGLFormat MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: Iad57286c36c7fd205f06abc40cca5f568d572e81 Reviewed-by: Samuel Rødal --- src/opengl/qgl.cpp | 26 +++++++++++++++++++++++++- src/opengl/qgl.h | 5 ++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index 2bd10de..d17a279 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -1173,6 +1173,21 @@ QGLFormat::OpenGLVersionFlags Q_AUTOTEST_EXPORT qOpenGLVersionFlagsFromString(co QGLFormat::OpenGL_Version_3_2 | QGLFormat::OpenGL_Version_3_3 | QGLFormat::OpenGL_Version_4_0; + switch (versionString[2].toLatin1()) { + case '3': + versionFlags |= QGLFormat::OpenGL_Version_4_3; + case '2': + versionFlags |= QGLFormat::OpenGL_Version_4_2; + case '1': + versionFlags |= QGLFormat::OpenGL_Version_4_1; + case '0': + break; + default: + versionFlags |= QGLFormat::OpenGL_Version_4_1 | + QGLFormat::OpenGL_Version_4_2 | + QGLFormat::OpenGL_Version_4_3; + break; + } } else { versionFlags |= QGLFormat::OpenGL_Version_1_1 | QGLFormat::OpenGL_Version_1_2 | @@ -1185,7 +1200,10 @@ QGLFormat::OpenGLVersionFlags Q_AUTOTEST_EXPORT qOpenGLVersionFlagsFromString(co QGLFormat::OpenGL_Version_3_1 | QGLFormat::OpenGL_Version_3_2 | QGLFormat::OpenGL_Version_3_3 | - QGLFormat::OpenGL_Version_4_0; + QGLFormat::OpenGL_Version_4_0 | + QGLFormat::OpenGL_Version_4_1 | + QGLFormat::OpenGL_Version_4_2 | + QGLFormat::OpenGL_Version_4_3; } } return versionFlags; @@ -1228,6 +1246,12 @@ QGLFormat::OpenGLVersionFlags Q_AUTOTEST_EXPORT qOpenGLVersionFlagsFromString(co \value OpenGL_Version_4_0 OpenGL version 4.0 or higher is present. + \value OpenGL_Version_4_1 OpenGL version 4.1 or higher is present. + + \value OpenGL_Version_4_2 OpenGL version 4.2 or higher is present. + + \value OpenGL_Version_4_3 OpenGL version 4.3 or higher is present. + \value OpenGL_ES_CommonLite_Version_1_0 OpenGL ES version 1.0 Common Lite or higher is present. \value OpenGL_ES_Common_Version_1_0 OpenGL ES version 1.0 Common or higher is present. diff --git a/src/opengl/qgl.h b/src/opengl/qgl.h index 2f2c9ea..4a3fe20 100644 --- a/src/opengl/qgl.h +++ b/src/opengl/qgl.h @@ -228,7 +228,10 @@ public: OpenGL_Version_3_1 = 0x00002000, OpenGL_Version_3_2 = 0x00004000, OpenGL_Version_3_3 = 0x00008000, - OpenGL_Version_4_0 = 0x00010000 + OpenGL_Version_4_0 = 0x00010000, + OpenGL_Version_4_1 = 0x00020000, + OpenGL_Version_4_2 = 0x00040000, + OpenGL_Version_4_3 = 0x00080000 }; Q_DECLARE_FLAGS(OpenGLVersionFlags, OpenGLVersionFlag) -- 2.7.4