summaryrefslogtreecommitdiffstats
path: root/src/gui/opengl/qopenglext.h
Commit message (Collapse)AuthorAgeFilesLines
* Never include windows.h directly in Qt codeLars Knoll2020-05-271-1/+1
| | | | | | | Please use qt_windows.h instead, so we avoid having min/max defined. Change-Id: Ic1b29666c427bf24556da5494af45ee5953ae827 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Update qopenglext.h to the latest Khronos versionPaul Olav Tvete2019-03-051-17/+538
| | | | | | | | | | Source: https://www.khronos.org/registry/OpenGL/api/GL/glext.h This change keeps the type definitions from the previous version, to avoid having to include KHR/khrplatform.h Change-Id: Idc1bee7b1e37b15a3dfd90a92381cd87392d22f7 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Change qopenglext to match official Khronos headersAllan Sandfeld Jensen2018-11-151-3/+8
| | | | | | | | | | Otherwise we can hit issues when other versions are included, as ptrdiff_t while having the same length is not the same type as signed long long on MSVC. Change-Id: Id42049b1052e528a663125ee5426b068ee46db72 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Remove references to obsolete platformsJake Petroules2017-11-051-4/+0
| | | | | | | | | | | | | | ultrix and reliant have not seen a release since 1995. dgux not since 2001. bsdi not since 2003. irix not since 2006. osf not since 2010. dynix... unclear, but no later than 2002. symbian needs no mention. All considered obsolete, all gone. sco and unixware are effectively obsolete. Remove them until someone expresses a real need. Change-Id: Ia3d9d370016adce9213ae5ad0ef965ef8de2a3ff Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update qopenglext.hLaszlo Agocs2017-04-221-74/+713
| | | | | | Change-Id: Ifb1d20855f0c0b9459d7ff2e01fbda1f713bff35 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Use stdint.h in qopengl headers on MSVC toov5.5.0-beta1Laszlo Agocs2015-05-021-1/+1
| | | | | | | Task-number: QTBUG-45774 Change-Id: I1505b4ebeb99371ec2099657c9ce05418dd54224 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Update qopenglext.h and qopengles2ext.hLaszlo Agocs2014-08-141-10831/+9307
| | | | | | | | | | | | | The current one is from 2012 and is based on the obsolete spec files. Replace it with the new one generated from the XML specs. At the same time fix the callback function signature for QOpenGLDebugLogger since it would not build otherwise. The user parameter is const GLvoid * according to the specification. Task-number: QTBUG-39773 Change-Id: If2153198373eeebc587c41b2dbf6bed5bcb26761 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Whitespace cleanup: remove trailing whitespaceAxel Waggershauser2013-03-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove all trailing whitespace from the following list of files: *.cpp *.h *.conf *.qdoc *.pro *.pri *.mm *.rc *.pl *.qps *.xpm *.txt *README excluding 3rdparty, test-data and auto generated code. Note A): the only non 3rdparty c++-files that still have trailing whitespace after this change are: * src/corelib/codecs/cp949codetbl_p.h * src/corelib/codecs/qjpunicode.cpp * src/corelib/codecs/qbig5codec.cpp * src/corelib/xml/qxmlstream_p.h * src/tools/qdoc/qmlparser/qqmljsgrammar.cpp * src/tools/uic/ui4.cpp * tests/auto/other/qtokenautomaton/tokenizers/* * tests/benchmarks/corelib/tools/qstring/data.cpp * util/lexgen/tokenizer.cpp Note B): in about 30 files some overlapping 'leading tab' and 'TAB character in non-leading whitespace' issues have been fixed to make the sanity bot happy. Plus some general ws-fixes here and there as asked for during review. Change-Id: Ia713113c34d82442d6ce4d93d8b1cf545075d11d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Mark all qtbase headers that aren't cleanThiago Macieira2013-03-031-0/+1
| | | | | | | | | | | | | | | | QtCore has a few headers that, though public, aren't meant to be included directly. Those are the atomic headers, the three _impl.h headers and qt_windows.h. QtGui includes two OpenGL headers that don't compile on their own. Other libraries should not have headers like that (but they do, something we need to fix eventually). Change-Id: I55e4eb057748f47df927ee618f9409acbc189cc1 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update qopenglext.h with the latest version from KhronosGiuseppe D'Angelo2013-02-251-32/+434
| | | | | | Change-Id: I84b051b30623fda67c89d4d6b0b7756681cb9011 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update qopenglext.h to latest glext.h from Khronos.orgSean Harmer2013-02-221-99/+1016
| | | | | | | | This now includes support for OpenGL 4.3 Change-Id: I964284843dffe806280e7f67cde67f17e84dc6df Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Fix warnings from syncqt.Friedemann Kleint2012-10-131-0/+1
| | | | | | | | Stop processing in internal headers, use correct include syntax. Change-Id: I9dcf1f6f89907986b7b58658be514083f213a3e6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* OpenGL: Use official glext.h and gl2ext.h headersSean Harmer2012-08-201-0/+11827
The Khronos group makes the glext.h (Desktop OpenGL) and gl2ext.h (OpenGL ES2) headers officially available nowadays. Most (all?) Linux systems ship this by default. On Windows platforms the glext.h file needs to be downloaded from http://www.opengl.org/registry/api/glext.h and placed alongside the system OpenGL header. Making use of the official header reduces the maintenance overhead for OpenGL support in Qt by removing the need to copy and paste definitions into the Qt sources. As the Khronos-provided headers are standardised and backwards and forwards compatible we can utilise these for all platforms rather than just for Windows. This means that all definitions required by Qt will be present even if the system ships out-dated equivalents. Mac OS X needs special handling in that we should always use the system-provided headers there. This is because Apple controls the OpenGL driver and the headers that go along with it. As such there is no possibility that the driver exposes additional functionality compared with the system-provided OpenGL headers. Apple has also decided to make different decisions about some OpenGL typedefs compared to other implementations. For example, Apple typdefs GLhandleARB to void* whereas other platforms use unsigned int. The alternative, which is to use the system provided glext.h (or gl2ext.h) header means that Qt code would need to check for the availability of such definitions wherever it is not guaranteed to be provided by core OpenGL/ES just to compile. The proposed approach means that Qt can compile regardless of the system's OpenGL extension support. We just need to be rigourous in runtime checking of support for extensions but that is already a requirement (and is missing in a few places, see TODO's added in this commit). The official Khronos headers are added to Qt as qopenglext.h - Desktop OpenGL qopengles2ext.h - OpenGL ES2 They need to be public but not part of QtGui module include, hence the headers have been modified by adding #if 0 #pragma qt_no_master_include #endif to them. This has been tested on: Gentoo Linux with GCC 4.6.3 Windows 7 with MSVC 2010 Mac OSX 10.8 with Apple clang 4.0 (based on LLVM 3.1svn) QNX with qcc (based on GCC 4.4) A small change is needed to QtDeclarative when building for OpenGL ES 2 after applying this commit. See https://codereview.qt-project.org/#change,31794 Change-Id: I4b3d2b1680baf4c78be9a87b4d8de076d23e8f82 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>