Merge remote-tracking branch 'origin/5.12' into 5.13
Conflicts: .qmake.conf src/gui/painting/qdrawhelper.cpp src/network/ssl/qsslsocket_openssl.cpp src/widgets/styles/qstylesheetstyle.cpp Change-Id: Ibe1cd40f46a823c9e5edbe0a3cd16be1e1686b17
This commit is contained in:
commit
bd9959bde2
83
dist/changes-5.12.4
vendored
Normal file
83
dist/changes-5.12.4
vendored
Normal file
@ -0,0 +1,83 @@
|
||||
Qt 5.12.4 is a bug-fix release. It maintains both forward and backward
|
||||
compatibility (source and binary) with Qt 5.12.0 through 5.12.3.
|
||||
|
||||
For more details, refer to the online documentation included in this
|
||||
distribution. The documentation is also available online:
|
||||
|
||||
https://doc.qt.io/qt-5/index.html
|
||||
|
||||
The Qt version 5.12 series is binary compatible with the 5.11.x series.
|
||||
Applications compiled for 5.11 will continue to run with 5.12.
|
||||
|
||||
Some of the changes listed in this file include issue tracking numbers
|
||||
corresponding to tasks in the Qt Bug Tracker:
|
||||
|
||||
https://bugreports.qt.io/
|
||||
|
||||
Each of these identifiers can be entered in the bug tracker to obtain more
|
||||
information about a particular change.
|
||||
|
||||
****************************************************************************
|
||||
* Platform Specific Changes *
|
||||
****************************************************************************
|
||||
|
||||
- X11 / XCB:
|
||||
* [QTBUG-45375] QTabletEvent coordinates now come from AbsX/AbsY
|
||||
valuators in the X11 event, in more precise 32.32 fixed-point format,
|
||||
scaled to fit the virtual desktop. It's possible to revert to using
|
||||
the legacy 16.16-format event_x/event_y coordinates as in previous
|
||||
releases by setting the QT_XCB_TABLET_LEGACY_COORDINATES environment
|
||||
variable.
|
||||
|
||||
****************************************************************************
|
||||
* QtCore *
|
||||
****************************************************************************
|
||||
|
||||
- Global:
|
||||
* [QTBUG-72073] Added the QT_NO_FLOAT16_OPERATORS macro in order to work
|
||||
around a Microsoft <= VS2017 compiler bug that is exposed when using
|
||||
std::bitset along with any Qt header that includes <qfloat16.h>.
|
||||
|
||||
- QDeadlineTimer:
|
||||
* [QTBUG-69750] Fixed integer overflows leading to immediate timeouts.
|
||||
|
||||
- QFile:
|
||||
* Made QFile::copy() issue a filesystem-synchronization system call,
|
||||
which would make it less likely to result in incomplete or corrupt
|
||||
files if the system reboots or uncleanly shuts down soon after the
|
||||
function returns. New code is advised to use QSaveFile instead, which
|
||||
also allows to display a progress report while copying.
|
||||
|
||||
- QFileInfo:
|
||||
* [QTBUG-63970][QTBUG-30401][QTBUG-20791] Fixed resolving of symbolic
|
||||
links to UNC shares on NTFS file systems.
|
||||
|
||||
- QMetaObject:
|
||||
* Non-copyable lambdas can now be used with invokeMethod(). For
|
||||
consistency reasons, the functor object is now always moved.
|
||||
|
||||
****************************************************************************
|
||||
* QtGui *
|
||||
****************************************************************************
|
||||
|
||||
- [QTBUG-73231] QWindow::mapToGlobal()/mapFromGlobal() now handle windows
|
||||
spanning screens correctly.
|
||||
|
||||
- [QTBUG-75522] QBezier: Fix possible endless loop when stroking curves
|
||||
|
||||
****************************************************************************
|
||||
* QtWidgets *
|
||||
****************************************************************************
|
||||
|
||||
- QMenu:
|
||||
* Shortcuts are again shown by default in context menus, except on
|
||||
macOS. They can be forced off by setting
|
||||
AA_DontShowShortcutsInContextMenus to true.
|
||||
|
||||
****************************************************************************
|
||||
* Third-Party Code *
|
||||
****************************************************************************
|
||||
|
||||
- libpng was updated to version 1.6.37
|
||||
- Updated QLocale to CLDR v35.1
|
||||
- Updated bundled SQLite to version 3.28.0
|
@ -30,7 +30,7 @@
|
||||
\title Class Wizard Example
|
||||
\ingroup examples-dialogs
|
||||
|
||||
\brief The License Wizard example shows how to implement linear
|
||||
\brief The Class Wizard example shows how to implement linear
|
||||
wizards using QWizard.
|
||||
|
||||
\image classwizard.png Screenshot of the Class Wizard example
|
||||
|
@ -28,7 +28,10 @@ CONFIG(release, debug|release) {
|
||||
}
|
||||
|
||||
load(link_ltcg)
|
||||
QMAKE_CFLAGS *= $$QMAKE_CFLAGS_LTCG
|
||||
QMAKE_CXXFLAGS *= $$QMAKE_CXXFLAGS_LTCG
|
||||
QMAKE_LFLAGS *= $$QMAKE_LFLAGS_LTCG
|
||||
QMAKE_CFLAGS -= $$QMAKE_CFLAGS_LTCG
|
||||
QMAKE_CFLAGS += $$QMAKE_CFLAGS_LTCG
|
||||
QMAKE_CXXFLAGS -= $$QMAKE_CXXFLAGS_LTCG
|
||||
QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_LTCG
|
||||
QMAKE_LFLAGS -= $$QMAKE_LFLAGS_LTCG
|
||||
QMAKE_LFLAGS += $$QMAKE_LFLAGS_LTCG
|
||||
}
|
||||
|
@ -272,7 +272,7 @@ headersclean:!internal_module {
|
||||
hcleanFLAGS += -std=c++98
|
||||
}
|
||||
|
||||
hcleanCOMMAND = $$QMAKE_CXX -c $(CXXFLAGS) $$hcleanFLAGS $(INCPATH) $$hcleanDEFS -xc++ ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
|
||||
hcleanCOMMAND = $(CXX) -c $(CXXFLAGS) $$hcleanFLAGS $(INCPATH) $$hcleanDEFS -xc++ ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
|
||||
} else: msvc:!intel_icl {
|
||||
# 4180: qualifier applied to function type has no meaning; ignored
|
||||
# 4458: declaration of 'identifier' hides class member
|
||||
@ -284,7 +284,7 @@ headersclean:!internal_module {
|
||||
# 4577: 'noexcept' used with no exception handling mode specified; termination on exception is not guaranteed. Specify /EHsc
|
||||
greaterThan(QMAKE_MSC_VER, 18): hcleanFLAGS += -wd4577
|
||||
|
||||
hcleanCOMMAND = $$QMAKE_CXX -c $(CXXFLAGS) $$hcleanFLAGS $(INCPATH) $$hcleanDEFS -FI${QMAKE_FILE_IN} -Fo${QMAKE_FILE_OUT} \
|
||||
hcleanCOMMAND = $(CXX) -c $(CXXFLAGS) $$hcleanFLAGS $(INCPATH) $$hcleanDEFS -FI${QMAKE_FILE_IN} -Fo${QMAKE_FILE_OUT} \
|
||||
$$[QT_INSTALL_DATA/src]/mkspecs/features/data/dummy.cpp
|
||||
}
|
||||
|
||||
|
142
src/3rdparty/angle/src/libEGL/libEGL_mingw32.def
vendored
142
src/3rdparty/angle/src/libEGL/libEGL_mingw32.def
vendored
@ -1,77 +1,77 @@
|
||||
LIBRARY libEGL
|
||||
EXPORTS
|
||||
eglBindAPI @14
|
||||
eglBindTexImage @20
|
||||
eglChooseConfig @7
|
||||
eglCopyBuffers @33
|
||||
eglCreateContext @23
|
||||
eglCreatePbufferFromClientBuffer @18
|
||||
eglCreatePbufferSurface @10
|
||||
eglCreatePixmapSurface @11
|
||||
eglCreateWindowSurface @9
|
||||
eglDestroyContext @24
|
||||
eglDestroySurface @12
|
||||
eglGetConfigAttrib @8
|
||||
eglGetConfigs @6
|
||||
eglGetCurrentContext @26
|
||||
eglGetCurrentDisplay @28
|
||||
eglGetCurrentSurface @27
|
||||
eglGetDisplay @2
|
||||
eglGetError @1
|
||||
eglGetProcAddress @34
|
||||
eglInitialize @3
|
||||
eglMakeCurrent @25
|
||||
eglQueryAPI @15
|
||||
eglQueryContext @29
|
||||
eglQueryString @5
|
||||
eglQuerySurface @13
|
||||
eglReleaseTexImage @21
|
||||
eglReleaseThread @17
|
||||
eglSurfaceAttrib @19
|
||||
eglSwapBuffers @32
|
||||
eglSwapInterval @22
|
||||
eglTerminate @4
|
||||
eglWaitClient @16
|
||||
eglWaitGL @30
|
||||
eglWaitNative @31
|
||||
eglBindAPI@4 @14
|
||||
eglBindTexImage@12 @20
|
||||
eglChooseConfig@20 @7
|
||||
eglCopyBuffers@12 @33
|
||||
eglCreateContext@16 @23
|
||||
eglCreatePbufferFromClientBuffer@20 @18
|
||||
eglCreatePbufferSurface@12 @10
|
||||
eglCreatePixmapSurface@16 @11
|
||||
eglCreateWindowSurface@16 @9
|
||||
eglDestroyContext@8 @24
|
||||
eglDestroySurface@8 @12
|
||||
eglGetConfigAttrib@16 @8
|
||||
eglGetConfigs@16 @6
|
||||
eglGetCurrentContext@0 @26
|
||||
eglGetCurrentDisplay@0 @28
|
||||
eglGetCurrentSurface@4 @27
|
||||
eglGetDisplay@4 @2
|
||||
eglGetError@0 @1
|
||||
eglGetProcAddress@4 @34
|
||||
eglInitialize@12 @3
|
||||
eglMakeCurrent@16 @25
|
||||
eglQueryAPI@0 @15
|
||||
eglQueryContext@16 @29
|
||||
eglQueryString@8 @5
|
||||
eglQuerySurface@16 @13
|
||||
eglReleaseTexImage@12 @21
|
||||
eglReleaseThread@0 @17
|
||||
eglSurfaceAttrib@16 @19
|
||||
eglSwapBuffers@8 @32
|
||||
eglSwapInterval@8 @22
|
||||
eglTerminate@4 @4
|
||||
eglWaitClient@0 @16
|
||||
eglWaitGL@0 @30
|
||||
eglWaitNative@4 @31
|
||||
|
||||
; Extensions
|
||||
eglGetPlatformDisplayEXT @35
|
||||
eglQuerySurfacePointerANGLE @36
|
||||
eglPostSubBufferNV @37
|
||||
eglQueryDisplayAttribEXT @48
|
||||
eglQueryDeviceAttribEXT @49
|
||||
eglQueryDeviceStringEXT @50
|
||||
eglCreateImageKHR @51
|
||||
eglDestroyImageKHR @52
|
||||
eglCreateDeviceANGLE @53
|
||||
eglReleaseDeviceANGLE @54
|
||||
eglCreateStreamKHR @55
|
||||
eglDestroyStreamKHR @56
|
||||
eglStreamAttribKHR @57
|
||||
eglQueryStreamKHR @58
|
||||
eglQueryStreamu64KHR @59
|
||||
eglStreamConsumerGLTextureExternalKHR @60
|
||||
eglStreamConsumerAcquireKHR @61
|
||||
eglStreamConsumerReleaseKHR @62
|
||||
eglStreamConsumerGLTextureExternalAttribsNV @63
|
||||
eglCreateStreamProducerD3DTextureNV12ANGLE @64
|
||||
eglStreamPostD3DTextureNV12ANGLE @65
|
||||
eglGetSyncValuesCHROMIUM @66
|
||||
eglSwapBuffersWithDamageEXT @67
|
||||
eglProgramCacheGetAttribANGLE @68
|
||||
eglProgramCachePopulateANGLE @69
|
||||
eglProgramCacheQueryANGLE @70
|
||||
eglProgramCacheResizeANGLE @71
|
||||
eglGetPlatformDisplayEXT@12 @35
|
||||
eglQuerySurfacePointerANGLE@16 @36
|
||||
eglPostSubBufferNV@24 @37
|
||||
eglQueryDisplayAttribEXT@12 @48
|
||||
eglQueryDeviceAttribEXT@12 @49
|
||||
eglQueryDeviceStringEXT@8 @50
|
||||
eglCreateImageKHR@20 @51
|
||||
eglDestroyImageKHR@8 @52
|
||||
eglCreateDeviceANGLE@12 @53
|
||||
eglReleaseDeviceANGLE@4 @54
|
||||
eglCreateStreamKHR@8 @55
|
||||
eglDestroyStreamKHR@8 @56
|
||||
eglStreamAttribKHR@16 @57
|
||||
eglQueryStreamKHR@16 @58
|
||||
eglQueryStreamu64KHR@16 @59
|
||||
eglStreamConsumerGLTextureExternalKHR@8 @60
|
||||
eglStreamConsumerAcquireKHR@8 @61
|
||||
eglStreamConsumerReleaseKHR@8 @62
|
||||
eglStreamConsumerGLTextureExternalAttribsNV@12 @63
|
||||
eglCreateStreamProducerD3DTextureNV12ANGLE@12 @64
|
||||
eglStreamPostD3DTextureNV12ANGLE@16 @65
|
||||
eglGetSyncValuesCHROMIUM@20 @66
|
||||
eglSwapBuffersWithDamageEXT@16 @67
|
||||
eglProgramCacheGetAttribANGLE@8 @68
|
||||
eglProgramCachePopulateANGLE@20 @69
|
||||
eglProgramCacheQueryANGLE@24 @70
|
||||
eglProgramCacheResizeANGLE@12 @71
|
||||
|
||||
; 1.5 entry points
|
||||
eglCreateSync @38
|
||||
eglDestroySync @39
|
||||
eglClientWaitSync @40
|
||||
eglGetSyncAttrib @41
|
||||
eglCreateImage @42
|
||||
eglDestroyImage @43
|
||||
eglGetPlatformDisplay @44
|
||||
eglCreatePlatformWindowSurface @45
|
||||
eglCreatePlatformPixmapSurface @46
|
||||
eglWaitSync @47
|
||||
eglCreateSync@12 @38
|
||||
eglDestroySync@8 @39
|
||||
eglClientWaitSync@20 @40
|
||||
eglGetSyncAttrib@16 @41
|
||||
eglCreateImage@20 @42
|
||||
eglDestroyImage@8 @43
|
||||
eglGetPlatformDisplay@12 @44
|
||||
eglCreatePlatformWindowSurface@16 @45
|
||||
eglCreatePlatformPixmapSurface@16 @46
|
||||
eglWaitSync@12 @47
|
||||
|
142
src/3rdparty/angle/src/libEGL/libEGLd_mingw32.def
vendored
142
src/3rdparty/angle/src/libEGL/libEGLd_mingw32.def
vendored
@ -1,77 +1,77 @@
|
||||
LIBRARY libEGL
|
||||
EXPORTS
|
||||
eglBindAPI @14
|
||||
eglBindTexImage @20
|
||||
eglChooseConfig @7
|
||||
eglCopyBuffers @33
|
||||
eglCreateContext @23
|
||||
eglCreatePbufferFromClientBuffer @18
|
||||
eglCreatePbufferSurface @10
|
||||
eglCreatePixmapSurface @11
|
||||
eglCreateWindowSurface @9
|
||||
eglDestroyContext @24
|
||||
eglDestroySurface @12
|
||||
eglGetConfigAttrib @8
|
||||
eglGetConfigs @6
|
||||
eglGetCurrentContext @26
|
||||
eglGetCurrentDisplay @28
|
||||
eglGetCurrentSurface @27
|
||||
eglGetDisplay @2
|
||||
eglGetError @1
|
||||
eglGetProcAddress @34
|
||||
eglInitialize @3
|
||||
eglMakeCurrent @25
|
||||
eglQueryAPI @15
|
||||
eglQueryContext @29
|
||||
eglQueryString @5
|
||||
eglQuerySurface @13
|
||||
eglReleaseTexImage @21
|
||||
eglReleaseThread @17
|
||||
eglSurfaceAttrib @19
|
||||
eglSwapBuffers @32
|
||||
eglSwapInterval @22
|
||||
eglTerminate @4
|
||||
eglWaitClient @16
|
||||
eglWaitGL @30
|
||||
eglWaitNative @31
|
||||
eglBindAPI@4 @14
|
||||
eglBindTexImage@12 @20
|
||||
eglChooseConfig@20 @7
|
||||
eglCopyBuffers@12 @33
|
||||
eglCreateContext@16 @23
|
||||
eglCreatePbufferFromClientBuffer@20 @18
|
||||
eglCreatePbufferSurface@12 @10
|
||||
eglCreatePixmapSurface@16 @11
|
||||
eglCreateWindowSurface@16 @9
|
||||
eglDestroyContext@8 @24
|
||||
eglDestroySurface@8 @12
|
||||
eglGetConfigAttrib@16 @8
|
||||
eglGetConfigs@16 @6
|
||||
eglGetCurrentContext@0 @26
|
||||
eglGetCurrentDisplay@0 @28
|
||||
eglGetCurrentSurface@4 @27
|
||||
eglGetDisplay@4 @2
|
||||
eglGetError@0 @1
|
||||
eglGetProcAddress@4 @34
|
||||
eglInitialize@12 @3
|
||||
eglMakeCurrent@16 @25
|
||||
eglQueryAPI@0 @15
|
||||
eglQueryContext@16 @29
|
||||
eglQueryString@8 @5
|
||||
eglQuerySurface@16 @13
|
||||
eglReleaseTexImage@12 @21
|
||||
eglReleaseThread@0 @17
|
||||
eglSurfaceAttrib@16 @19
|
||||
eglSwapBuffers@8 @32
|
||||
eglSwapInterval@8 @22
|
||||
eglTerminate@4 @4
|
||||
eglWaitClient@0 @16
|
||||
eglWaitGL@0 @30
|
||||
eglWaitNative@4 @31
|
||||
|
||||
; Extensions
|
||||
eglGetPlatformDisplayEXT @35
|
||||
eglQuerySurfacePointerANGLE @36
|
||||
eglPostSubBufferNV @37
|
||||
eglQueryDisplayAttribEXT @48
|
||||
eglQueryDeviceAttribEXT @49
|
||||
eglQueryDeviceStringEXT @50
|
||||
eglCreateImageKHR @51
|
||||
eglDestroyImageKHR @52
|
||||
eglCreateDeviceANGLE @53
|
||||
eglReleaseDeviceANGLE @54
|
||||
eglCreateStreamKHR @55
|
||||
eglDestroyStreamKHR @56
|
||||
eglStreamAttribKHR @57
|
||||
eglQueryStreamKHR @58
|
||||
eglQueryStreamu64KHR @59
|
||||
eglStreamConsumerGLTextureExternalKHR @60
|
||||
eglStreamConsumerAcquireKHR @61
|
||||
eglStreamConsumerReleaseKHR @62
|
||||
eglStreamConsumerGLTextureExternalAttribsNV @63
|
||||
eglCreateStreamProducerD3DTextureNV12ANGLE @64
|
||||
eglStreamPostD3DTextureNV12ANGLE @65
|
||||
eglGetSyncValuesCHROMIUM @66
|
||||
eglSwapBuffersWithDamageEXT @67
|
||||
eglProgramCacheGetAttribANGLE @68
|
||||
eglProgramCachePopulateANGLE @69
|
||||
eglProgramCacheQueryANGLE @70
|
||||
eglProgramCacheResizeANGLE @71
|
||||
eglGetPlatformDisplayEXT@12 @35
|
||||
eglQuerySurfacePointerANGLE@16 @36
|
||||
eglPostSubBufferNV@24 @37
|
||||
eglQueryDisplayAttribEXT@12 @48
|
||||
eglQueryDeviceAttribEXT@12 @49
|
||||
eglQueryDeviceStringEXT@8 @50
|
||||
eglCreateImageKHR@20 @51
|
||||
eglDestroyImageKHR@8 @52
|
||||
eglCreateDeviceANGLE@12 @53
|
||||
eglReleaseDeviceANGLE@4 @54
|
||||
eglCreateStreamKHR@8 @55
|
||||
eglDestroyStreamKHR@8 @56
|
||||
eglStreamAttribKHR@16 @57
|
||||
eglQueryStreamKHR@16 @58
|
||||
eglQueryStreamu64KHR@16 @59
|
||||
eglStreamConsumerGLTextureExternalKHR@8 @60
|
||||
eglStreamConsumerAcquireKHR@8 @61
|
||||
eglStreamConsumerReleaseKHR@8 @62
|
||||
eglStreamConsumerGLTextureExternalAttribsNV@12 @63
|
||||
eglCreateStreamProducerD3DTextureNV12ANGLE@12 @64
|
||||
eglStreamPostD3DTextureNV12ANGLE@16 @65
|
||||
eglGetSyncValuesCHROMIUM@20 @66
|
||||
eglSwapBuffersWithDamageEXT@16 @67
|
||||
eglProgramCacheGetAttribANGLE@8 @68
|
||||
eglProgramCachePopulateANGLE@20 @69
|
||||
eglProgramCacheQueryANGLE@24 @70
|
||||
eglProgramCacheResizeANGLE@12 @71
|
||||
|
||||
; 1.5 entry points
|
||||
eglCreateSync @38
|
||||
eglDestroySync @39
|
||||
eglClientWaitSync @40
|
||||
eglGetSyncAttrib @41
|
||||
eglCreateImage @42
|
||||
eglDestroyImage @43
|
||||
eglGetPlatformDisplay @44
|
||||
eglCreatePlatformWindowSurface @45
|
||||
eglCreatePlatformPixmapSurface @46
|
||||
eglWaitSync @47
|
||||
eglCreateSync@12 @38
|
||||
eglDestroySync@8 @39
|
||||
eglClientWaitSync@20 @40
|
||||
eglGetSyncAttrib@16 @41
|
||||
eglCreateImage@20 @42
|
||||
eglDestroyImage@8 @43
|
||||
eglGetPlatformDisplay@12 @44
|
||||
eglCreatePlatformWindowSurface@16 @45
|
||||
eglCreatePlatformPixmapSurface@16 @46
|
||||
eglWaitSync@12 @47
|
||||
|
@ -1,412 +1,411 @@
|
||||
LIBRARY libGLESv2
|
||||
EXPORTS
|
||||
glActiveTexture @1
|
||||
glAttachShader @2
|
||||
glBindAttribLocation @3
|
||||
glBindBuffer @4
|
||||
glBindFramebuffer @5
|
||||
glBindRenderbuffer @6
|
||||
glBindTexture @7
|
||||
glBlendColor @8
|
||||
glBlendEquation @9
|
||||
glBlendEquationSeparate @10
|
||||
glBlendFunc @11
|
||||
glBlendFuncSeparate @12
|
||||
glBufferData @13
|
||||
glBufferSubData @14
|
||||
glCheckFramebufferStatus @15
|
||||
glClear @16
|
||||
glClearColor @17
|
||||
glClearDepthf @18
|
||||
glClearStencil @19
|
||||
glColorMask @20
|
||||
glCompileShader @21
|
||||
glCompressedTexImage2D @22
|
||||
glCompressedTexSubImage2D @23
|
||||
glCopyTexImage2D @24
|
||||
glCopyTexSubImage2D @25
|
||||
glCreateProgram @26
|
||||
glCreateShader @27
|
||||
glCullFace @28
|
||||
glDeleteBuffers @29
|
||||
glDeleteFramebuffers @30
|
||||
glDeleteProgram @32
|
||||
glDeleteRenderbuffers @33
|
||||
glDeleteShader @34
|
||||
glDeleteTextures @31
|
||||
glDepthFunc @36
|
||||
glDepthMask @37
|
||||
glDepthRangef @38
|
||||
glDetachShader @35
|
||||
glDisable @39
|
||||
glDisableVertexAttribArray @40
|
||||
glDrawArrays @41
|
||||
glDrawElements @42
|
||||
glEnable @43
|
||||
glEnableVertexAttribArray @44
|
||||
glFinish @45
|
||||
glFlush @46
|
||||
glFramebufferRenderbuffer @47
|
||||
glFramebufferTexture2D @48
|
||||
glFrontFace @49
|
||||
glGenBuffers @50
|
||||
glGenFramebuffers @52
|
||||
glGenRenderbuffers @53
|
||||
glGenTextures @54
|
||||
glGenerateMipmap @51
|
||||
glGetActiveAttrib @55
|
||||
glGetActiveUniform @56
|
||||
glGetAttachedShaders @57
|
||||
glGetAttribLocation @58
|
||||
glGetBooleanv @59
|
||||
glGetBufferParameteriv @60
|
||||
glGetError @61
|
||||
glGetFloatv @62
|
||||
glGetFramebufferAttachmentParameteriv @63
|
||||
glGetIntegerv @64
|
||||
glGetProgramInfoLog @66
|
||||
glGetProgramiv @65
|
||||
glGetRenderbufferParameteriv @67
|
||||
glGetShaderInfoLog @69
|
||||
glGetShaderPrecisionFormat @70
|
||||
glGetShaderSource @71
|
||||
glGetShaderiv @68
|
||||
glGetString @72
|
||||
glGetTexParameterfv @73
|
||||
glGetTexParameteriv @74
|
||||
glGetUniformLocation @77
|
||||
glGetUniformfv @75
|
||||
glGetUniformiv @76
|
||||
glGetVertexAttribPointerv @80
|
||||
glGetVertexAttribfv @78
|
||||
glGetVertexAttribiv @79
|
||||
glHint @81
|
||||
glIsBuffer @82
|
||||
glIsEnabled @83
|
||||
glIsFramebuffer @84
|
||||
glIsProgram @85
|
||||
glIsRenderbuffer @86
|
||||
glIsShader @87
|
||||
glIsTexture @88
|
||||
glLineWidth @89
|
||||
glLinkProgram @90
|
||||
glPixelStorei @91
|
||||
glPolygonOffset @92
|
||||
glReadPixels @93
|
||||
glReleaseShaderCompiler @94
|
||||
glRenderbufferStorage @95
|
||||
glSampleCoverage @96
|
||||
glScissor @97
|
||||
glShaderBinary @98
|
||||
glShaderSource @99
|
||||
glStencilFunc @100
|
||||
glStencilFuncSeparate @101
|
||||
glStencilMask @102
|
||||
glStencilMaskSeparate @103
|
||||
glStencilOp @104
|
||||
glStencilOpSeparate @105
|
||||
glTexImage2D @106
|
||||
glTexParameterf @107
|
||||
glTexParameterfv @108
|
||||
glTexParameteri @109
|
||||
glTexParameteriv @110
|
||||
glTexSubImage2D @111
|
||||
glUniform1f @112
|
||||
glUniform1fv @113
|
||||
glUniform1i @114
|
||||
glUniform1iv @115
|
||||
glUniform2f @116
|
||||
glUniform2fv @117
|
||||
glUniform2i @118
|
||||
glUniform2iv @119
|
||||
glUniform3f @120
|
||||
glUniform3fv @121
|
||||
glUniform3i @122
|
||||
glUniform3iv @123
|
||||
glUniform4f @124
|
||||
glUniform4fv @125
|
||||
glUniform4i @126
|
||||
glUniform4iv @127
|
||||
glUniformMatrix2fv @128
|
||||
glUniformMatrix3fv @129
|
||||
glUniformMatrix4fv @130
|
||||
glUseProgram @131
|
||||
glValidateProgram @132
|
||||
glVertexAttrib1f @133
|
||||
glVertexAttrib1fv @134
|
||||
glVertexAttrib2f @135
|
||||
glVertexAttrib2fv @136
|
||||
glVertexAttrib3f @137
|
||||
glVertexAttrib3fv @138
|
||||
glVertexAttrib4f @139
|
||||
glVertexAttrib4fv @140
|
||||
glVertexAttribPointer @141
|
||||
glViewport @142
|
||||
glActiveTexture@4 @1
|
||||
glAttachShader@8 @2
|
||||
glBindAttribLocation@12 @3
|
||||
glBindBuffer@8 @4
|
||||
glBindFramebuffer@8 @5
|
||||
glBindRenderbuffer@8 @6
|
||||
glBindTexture@8 @7
|
||||
glBlendColor@16 @8
|
||||
glBlendEquation@4 @9
|
||||
glBlendEquationSeparate@8 @10
|
||||
glBlendFunc@8 @11
|
||||
glBlendFuncSeparate@16 @12
|
||||
glBufferData@16 @13
|
||||
glBufferSubData@16 @14
|
||||
glCheckFramebufferStatus@4 @15
|
||||
glClear@4 @16
|
||||
glClearColor@16 @17
|
||||
glClearDepthf@4 @18
|
||||
glClearStencil@4 @19
|
||||
glColorMask@16 @20
|
||||
glCompileShader@4 @21
|
||||
glCompressedTexImage2D@32 @22
|
||||
glCompressedTexSubImage2D@36 @23
|
||||
glCopyTexImage2D@32 @24
|
||||
glCopyTexSubImage2D@32 @25
|
||||
glCreateProgram@0 @26
|
||||
glCreateShader@4 @27
|
||||
glCullFace@4 @28
|
||||
glDeleteBuffers@8 @29
|
||||
glDeleteFramebuffers@8 @30
|
||||
glDeleteProgram@4 @32
|
||||
glDeleteRenderbuffers@8 @33
|
||||
glDeleteShader@4 @34
|
||||
glDeleteTextures@8 @31
|
||||
glDepthFunc@4 @36
|
||||
glDepthMask@4 @37
|
||||
glDepthRangef@8 @38
|
||||
glDetachShader@8 @35
|
||||
glDisable@4 @39
|
||||
glDisableVertexAttribArray@4 @40
|
||||
glDrawArrays@12 @41
|
||||
glDrawElements@16 @42
|
||||
glEnable@4 @43
|
||||
glEnableVertexAttribArray@4 @44
|
||||
glFinish@0 @45
|
||||
glFlush@0 @46
|
||||
glFramebufferRenderbuffer@16 @47
|
||||
glFramebufferTexture2D@20 @48
|
||||
glFrontFace@4 @49
|
||||
glGenBuffers@8 @50
|
||||
glGenFramebuffers@8 @52
|
||||
glGenRenderbuffers@8 @53
|
||||
glGenTextures@8 @54
|
||||
glGenerateMipmap@4 @51
|
||||
glGetActiveAttrib@28 @55
|
||||
glGetActiveUniform@28 @56
|
||||
glGetAttachedShaders@16 @57
|
||||
glGetAttribLocation@8 @58
|
||||
glGetBooleanv@8 @59
|
||||
glGetBufferParameteriv@12 @60
|
||||
glGetError@0 @61
|
||||
glGetFloatv@8 @62
|
||||
glGetFramebufferAttachmentParameteriv@16 @63
|
||||
glGetIntegerv@8 @64
|
||||
glGetProgramInfoLog@16 @66
|
||||
glGetProgramiv@12 @65
|
||||
glGetRenderbufferParameteriv@12 @67
|
||||
glGetShaderInfoLog@16 @69
|
||||
glGetShaderPrecisionFormat@16 @70
|
||||
glGetShaderSource@16 @71
|
||||
glGetShaderiv@12 @68
|
||||
glGetString@4 @72
|
||||
glGetTexParameterfv@12 @73
|
||||
glGetTexParameteriv@12 @74
|
||||
glGetUniformLocation@8 @77
|
||||
glGetUniformfv@12 @75
|
||||
glGetUniformiv@12 @76
|
||||
glGetVertexAttribPointerv@12 @80
|
||||
glGetVertexAttribfv@12 @78
|
||||
glGetVertexAttribiv@12 @79
|
||||
glHint@8 @81
|
||||
glIsBuffer@4 @82
|
||||
glIsEnabled@4 @83
|
||||
glIsFramebuffer@4 @84
|
||||
glIsProgram@4 @85
|
||||
glIsRenderbuffer@4 @86
|
||||
glIsShader@4 @87
|
||||
glIsTexture@4 @88
|
||||
glLineWidth@4 @89
|
||||
glLinkProgram@4 @90
|
||||
glPixelStorei@8 @91
|
||||
glPolygonOffset@8 @92
|
||||
glReadPixels@28 @93
|
||||
glReleaseShaderCompiler@0 @94
|
||||
glRenderbufferStorage@16 @95
|
||||
glSampleCoverage@8 @96
|
||||
glScissor@16 @97
|
||||
glShaderBinary@20 @98
|
||||
glShaderSource@16 @99
|
||||
glStencilFunc@12 @100
|
||||
glStencilFuncSeparate@16 @101
|
||||
glStencilMask@4 @102
|
||||
glStencilMaskSeparate@8 @103
|
||||
glStencilOp@12 @104
|
||||
glStencilOpSeparate@16 @105
|
||||
glTexImage2D@36 @106
|
||||
glTexParameterf@12 @107
|
||||
glTexParameterfv@12 @108
|
||||
glTexParameteri@12 @109
|
||||
glTexParameteriv@12 @110
|
||||
glTexSubImage2D@36 @111
|
||||
glUniform1f@8 @112
|
||||
glUniform1fv@12 @113
|
||||
glUniform1i@8 @114
|
||||
glUniform1iv@12 @115
|
||||
glUniform2f@12 @116
|
||||
glUniform2fv@12 @117
|
||||
glUniform2i@12 @118
|
||||
glUniform2iv@12 @119
|
||||
glUniform3f@16 @120
|
||||
glUniform3fv@12 @121
|
||||
glUniform3i@16 @122
|
||||
glUniform3iv@12 @123
|
||||
glUniform4f@20 @124
|
||||
glUniform4fv@12 @125
|
||||
glUniform4i@20 @126
|
||||
glUniform4iv@12 @127
|
||||
glUniformMatrix2fv@16 @128
|
||||
glUniformMatrix3fv@16 @129
|
||||
glUniformMatrix4fv@16 @130
|
||||
glUseProgram@4 @131
|
||||
glValidateProgram@4 @132
|
||||
glVertexAttrib1f@8 @133
|
||||
glVertexAttrib1fv@8 @134
|
||||
glVertexAttrib2f@12 @135
|
||||
glVertexAttrib2fv@8 @136
|
||||
glVertexAttrib3f@16 @137
|
||||
glVertexAttrib3fv@8 @138
|
||||
glVertexAttrib4f@20 @139
|
||||
glVertexAttrib4fv@8 @140
|
||||
glVertexAttribPointer@24 @141
|
||||
glViewport@16 @142
|
||||
|
||||
; Extensions
|
||||
glBlitFramebufferANGLE @149
|
||||
glRenderbufferStorageMultisampleANGLE @150
|
||||
glDeleteFencesNV @151
|
||||
glFinishFenceNV @152
|
||||
glGenFencesNV @153
|
||||
glGetFenceivNV @154
|
||||
glIsFenceNV @155
|
||||
glSetFenceNV @156
|
||||
glTestFenceNV @157
|
||||
glGetTranslatedShaderSourceANGLE @159
|
||||
glTexStorage2DEXT @160
|
||||
glGetGraphicsResetStatusEXT @161
|
||||
glReadnPixelsEXT @162
|
||||
glGetnUniformfvEXT @163
|
||||
glGetnUniformivEXT @164
|
||||
glGenQueriesEXT @165
|
||||
glDeleteQueriesEXT @166
|
||||
glIsQueryEXT @167
|
||||
glBeginQueryEXT @168
|
||||
glEndQueryEXT @169
|
||||
glGetQueryivEXT @170
|
||||
glGetQueryObjectuivEXT @171
|
||||
glVertexAttribDivisorANGLE @172
|
||||
glDrawArraysInstancedANGLE @173
|
||||
glDrawElementsInstancedANGLE @174
|
||||
glProgramBinaryOES @175
|
||||
glGetProgramBinaryOES @176
|
||||
glDrawBuffersEXT @179
|
||||
glMapBufferOES @285
|
||||
glUnmapBufferOES @286
|
||||
glGetBufferPointervOES @287
|
||||
glMapBufferRangeEXT @288
|
||||
glFlushMappedBufferRangeEXT @289
|
||||
glDiscardFramebufferEXT @293
|
||||
glInsertEventMarkerEXT @294
|
||||
glPushGroupMarkerEXT @295
|
||||
glPopGroupMarkerEXT @296
|
||||
glEGLImageTargetTexture2DOES @297
|
||||
glEGLImageTargetRenderbufferStorageOES @298
|
||||
glBindVertexArrayOES @299
|
||||
glDeleteVertexArraysOES @300
|
||||
glGenVertexArraysOES @301
|
||||
glIsVertexArrayOES @302
|
||||
glDebugMessageControlKHR @303
|
||||
glDebugMessageInsertKHR @304
|
||||
glDebugMessageCallbackKHR @305
|
||||
glGetDebugMessageLogKHR @306
|
||||
glPushDebugGroupKHR @307
|
||||
glPopDebugGroupKHR @308
|
||||
glObjectLabelKHR @309
|
||||
glGetObjectLabelKHR @310
|
||||
glObjectPtrLabelKHR @311
|
||||
glGetObjectPtrLabelKHR @312
|
||||
glGetPointervKHR @313
|
||||
glQueryCounterEXT @314
|
||||
glGetQueryObjectivEXT @315
|
||||
glGetQueryObjecti64vEXT @316
|
||||
glGetQueryObjectui64vEXT @317
|
||||
glBindUniformLocationCHROMIUM @318
|
||||
glCoverageModulationCHROMIUM @319
|
||||
glBlitFramebufferANGLE@40 @149
|
||||
glRenderbufferStorageMultisampleANGLE@20 @150
|
||||
glDeleteFencesNV@8 @151
|
||||
glFinishFenceNV@4 @152
|
||||
glGenFencesNV@8 @153
|
||||
glGetFenceivNV@12 @154
|
||||
glIsFenceNV@4 @155
|
||||
glSetFenceNV@8 @156
|
||||
glTestFenceNV@4 @157
|
||||
glGetTranslatedShaderSourceANGLE@16 @159
|
||||
glTexStorage2DEXT@20 @160
|
||||
glGetGraphicsResetStatusEXT@0 @161
|
||||
glReadnPixelsEXT@32 @162
|
||||
glGetnUniformfvEXT@16 @163
|
||||
glGetnUniformivEXT@16 @164
|
||||
glGenQueriesEXT@8 @165
|
||||
glDeleteQueriesEXT@8 @166
|
||||
glIsQueryEXT@4 @167
|
||||
glBeginQueryEXT@8 @168
|
||||
glEndQueryEXT@4 @169
|
||||
glGetQueryivEXT@12 @170
|
||||
glGetQueryObjectuivEXT@12 @171
|
||||
glVertexAttribDivisorANGLE@8 @172
|
||||
glDrawArraysInstancedANGLE@16 @173
|
||||
glDrawElementsInstancedANGLE@20 @174
|
||||
glProgramBinaryOES@16 @175
|
||||
glGetProgramBinaryOES@20 @176
|
||||
glDrawBuffersEXT@8 @179
|
||||
glMapBufferOES@8 @285
|
||||
glUnmapBufferOES@4 @286
|
||||
glGetBufferPointervOES@12 @287
|
||||
glMapBufferRangeEXT@16 @288
|
||||
glFlushMappedBufferRangeEXT@12 @289
|
||||
glDiscardFramebufferEXT@12 @293
|
||||
glInsertEventMarkerEXT@8 @294
|
||||
glPushGroupMarkerEXT@8 @295
|
||||
glPopGroupMarkerEXT@0 @296
|
||||
glEGLImageTargetTexture2DOES@8 @297
|
||||
glEGLImageTargetRenderbufferStorageOES@8 @298
|
||||
glBindVertexArrayOES@4 @299
|
||||
glDeleteVertexArraysOES@8 @300
|
||||
glGenVertexArraysOES@8 @301
|
||||
glIsVertexArrayOES@4 @302
|
||||
glDebugMessageControlKHR@24 @303
|
||||
glDebugMessageInsertKHR@24 @304
|
||||
glDebugMessageCallbackKHR@8 @305
|
||||
glGetDebugMessageLogKHR@32 @306
|
||||
glPushDebugGroupKHR@16 @307
|
||||
glPopDebugGroupKHR@0 @308
|
||||
glObjectLabelKHR@16 @309
|
||||
glGetObjectLabelKHR@20 @310
|
||||
glObjectPtrLabelKHR@12 @311
|
||||
glGetObjectPtrLabelKHR@16 @312
|
||||
glGetPointervKHR@8 @313
|
||||
glQueryCounterEXT@8 @314
|
||||
glGetQueryObjectivEXT@12 @315
|
||||
glGetQueryObjecti64vEXT@12 @316
|
||||
glGetQueryObjectui64vEXT@12 @317
|
||||
glBindUniformLocationCHROMIUM@12 @318
|
||||
glCoverageModulationCHROMIUM@4 @319
|
||||
glMatrixLoadfCHROMIUM@8 @320
|
||||
glMatrixLoadIdentityCHROMIUM@4 @321
|
||||
glGenPathsCHROMIUM@4 @322
|
||||
glDeletePathsCHROMIUM@8 @323
|
||||
glIsPathCHROMIUM@4 @324
|
||||
glPathCommandsCHROMIUM@24 @325
|
||||
glPathParameterfCHROMIUM@12 @326
|
||||
glPathParameteriCHROMIUM@12 @327
|
||||
glGetPathParameterfvCHROMIUM@12 @328
|
||||
glGetPathParameterivCHROMIUM@12 @329
|
||||
glPathStencilFuncCHROMIUM@12 @330
|
||||
glStencilFillPathCHROMIUM@12 @331
|
||||
glStencilStrokePathCHROMIUM@12 @332
|
||||
glCoverFillPathCHROMIUM@8 @333
|
||||
glCoverStrokePathCHROMIUM@8 @334
|
||||
glStencilThenCoverFillPathCHROMIUM@16 @335
|
||||
glStencilThenCoverStrokePathCHROMIUM@16 @336
|
||||
glCoverFillPathInstancedCHROMIUM@28 @337
|
||||
glCoverStrokePathInstancedCHROMIUM@28 @338
|
||||
glStencilStrokePathInstancedCHROMIUM@32 @339
|
||||
glStencilFillPathInstancedCHROMIUM@32 @340
|
||||
glStencilThenCoverFillPathInstancedCHROMIUM@36 @341
|
||||
glStencilThenCoverStrokePathInstancedCHROMIUM@36 @342
|
||||
glBindFragmentInputLocationCHROMIUM@12 @343
|
||||
glProgramPathFragmentInputGenCHROMIUM@20 @344
|
||||
|
||||
glMatrixLoadfCHROMIUM @320
|
||||
glMatrixLoadIdentityCHROMIUM @321
|
||||
glGenPathsCHROMIUM @322
|
||||
glDeletePathsCHROMIUM @323
|
||||
glIsPathCHROMIUM @324
|
||||
glPathCommandsCHROMIUM @325
|
||||
glPathParameterfCHROMIUM @326
|
||||
glPathParameteriCHROMIUM @327
|
||||
glGetPathParameterfvCHROMIUM @328
|
||||
glGetPathParameterivCHROMIUM @329
|
||||
glPathStencilFuncCHROMIUM @330
|
||||
glStencilFillPathCHROMIUM @331
|
||||
glStencilStrokePathCHROMIUM @332
|
||||
glCoverFillPathCHROMIUM @333
|
||||
glCoverStrokePathCHROMIUM @334
|
||||
glStencilThenCoverFillPathCHROMIUM @335
|
||||
glStencilThenCoverStrokePathCHROMIUM @336
|
||||
glCoverFillPathInstancedCHROMIUM @337
|
||||
glCoverStrokePathInstancedCHROMIUM @338
|
||||
glStencilStrokePathInstancedCHROMIUM @339
|
||||
glStencilFillPathInstancedCHROMIUM @340
|
||||
glStencilThenCoverFillPathInstancedCHROMIUM @341
|
||||
glStencilThenCoverStrokePathInstancedCHROMIUM @342
|
||||
glBindFragmentInputLocationCHROMIUM @343
|
||||
glProgramPathFragmentInputGenCHROMIUM @344
|
||||
|
||||
glFramebufferTextureMultiviewLayeredANGLE @413
|
||||
glFramebufferTextureMultiviewSideBySideANGLE @414
|
||||
glRequestExtensionANGLE @415
|
||||
glFramebufferTextureMultiviewLayeredANGLE@24 @413
|
||||
glFramebufferTextureMultiviewSideBySideANGLE@24 @414
|
||||
glRequestExtensionANGLE@4 @415
|
||||
|
||||
; GLES 3.0 Functions
|
||||
glReadBuffer @180
|
||||
glDrawRangeElements @181
|
||||
glTexImage3D @182
|
||||
glTexSubImage3D @183
|
||||
glCopyTexSubImage3D @184
|
||||
glCompressedTexImage3D @185
|
||||
glCompressedTexSubImage3D @186
|
||||
glGenQueries @187
|
||||
glDeleteQueries @188
|
||||
glIsQuery @189
|
||||
glBeginQuery @190
|
||||
glEndQuery @191
|
||||
glGetQueryiv @192
|
||||
glGetQueryObjectuiv @193
|
||||
glUnmapBuffer @194
|
||||
glGetBufferPointerv @195
|
||||
glDrawBuffers @196
|
||||
glUniformMatrix2x3fv @197
|
||||
glUniformMatrix3x2fv @198
|
||||
glUniformMatrix2x4fv @199
|
||||
glUniformMatrix4x2fv @200
|
||||
glUniformMatrix3x4fv @201
|
||||
glUniformMatrix4x3fv @202
|
||||
glBlitFramebuffer @203
|
||||
glRenderbufferStorageMultisample @204
|
||||
glFramebufferTextureLayer @205
|
||||
glMapBufferRange @206
|
||||
glFlushMappedBufferRange @207
|
||||
glBindVertexArray @208
|
||||
glDeleteVertexArrays @209
|
||||
glGenVertexArrays @210
|
||||
glIsVertexArray @211
|
||||
glGetIntegeri_v @212
|
||||
glBeginTransformFeedback @213
|
||||
glEndTransformFeedback @214
|
||||
glBindBufferRange @215
|
||||
glBindBufferBase @216
|
||||
glTransformFeedbackVaryings @217
|
||||
glGetTransformFeedbackVarying @218
|
||||
glVertexAttribIPointer @219
|
||||
glGetVertexAttribIiv @220
|
||||
glGetVertexAttribIuiv @221
|
||||
glVertexAttribI4i @222
|
||||
glVertexAttribI4ui @223
|
||||
glVertexAttribI4iv @224
|
||||
glVertexAttribI4uiv @225
|
||||
glGetUniformuiv @226
|
||||
glGetFragDataLocation @227
|
||||
glUniform1ui @228
|
||||
glUniform2ui @229
|
||||
glUniform3ui @230
|
||||
glUniform4ui @231
|
||||
glUniform1uiv @232
|
||||
glUniform2uiv @233
|
||||
glUniform3uiv @234
|
||||
glUniform4uiv @235
|
||||
glClearBufferiv @236
|
||||
glClearBufferuiv @237
|
||||
glClearBufferfv @238
|
||||
glClearBufferfi @239
|
||||
glGetStringi @240
|
||||
glCopyBufferSubData @241
|
||||
glGetUniformIndices @242
|
||||
glGetActiveUniformsiv @243
|
||||
glGetUniformBlockIndex @244
|
||||
glGetActiveUniformBlockiv @245
|
||||
glGetActiveUniformBlockName @246
|
||||
glUniformBlockBinding @247
|
||||
glDrawArraysInstanced @248
|
||||
glDrawElementsInstanced @249
|
||||
glFenceSync @250
|
||||
glIsSync @251
|
||||
glDeleteSync @252
|
||||
glClientWaitSync @253
|
||||
glWaitSync @254
|
||||
glGetInteger64v @255
|
||||
glGetSynciv @256
|
||||
glGetInteger64i_v @257
|
||||
glGetBufferParameteri64v @258
|
||||
glGenSamplers @259
|
||||
glDeleteSamplers @260
|
||||
glIsSampler @261
|
||||
glBindSampler @262
|
||||
glSamplerParameteri @263
|
||||
glSamplerParameteriv @264
|
||||
glSamplerParameterf @265
|
||||
glSamplerParameterfv @266
|
||||
glGetSamplerParameteriv @267
|
||||
glGetSamplerParameterfv @268
|
||||
glVertexAttribDivisor @269
|
||||
glBindTransformFeedback @270
|
||||
glDeleteTransformFeedbacks @271
|
||||
glGenTransformFeedbacks @272
|
||||
glIsTransformFeedback @273
|
||||
glPauseTransformFeedback @274
|
||||
glResumeTransformFeedback @275
|
||||
glGetProgramBinary @276
|
||||
glProgramBinary @277
|
||||
glProgramParameteri @278
|
||||
glInvalidateFramebuffer @279
|
||||
glInvalidateSubFramebuffer @280
|
||||
glTexStorage2D @281
|
||||
glTexStorage3D @282
|
||||
glGetInternalformativ @283
|
||||
glReadBuffer@4 @180
|
||||
glDrawRangeElements@24 @181
|
||||
glTexImage3D@40 @182
|
||||
glTexSubImage3D@44 @183
|
||||
glCopyTexSubImage3D@36 @184
|
||||
glCompressedTexImage3D@36 @185
|
||||
glCompressedTexSubImage3D@44 @186
|
||||
glGenQueries@8 @187
|
||||
glDeleteQueries@8 @188
|
||||
glIsQuery@4 @189
|
||||
glBeginQuery@8 @190
|
||||
glEndQuery@4 @191
|
||||
glGetQueryiv@12 @192
|
||||
glGetQueryObjectuiv@12 @193
|
||||
glUnmapBuffer@4 @194
|
||||
glGetBufferPointerv@12 @195
|
||||
glDrawBuffers@8 @196
|
||||
glUniformMatrix2x3fv@16 @197
|
||||
glUniformMatrix3x2fv@16 @198
|
||||
glUniformMatrix2x4fv@16 @199
|
||||
glUniformMatrix4x2fv@16 @200
|
||||
glUniformMatrix3x4fv@16 @201
|
||||
glUniformMatrix4x3fv@16 @202
|
||||
glBlitFramebuffer@40 @203
|
||||
glRenderbufferStorageMultisample@20 @204
|
||||
glFramebufferTextureLayer@20 @205
|
||||
glMapBufferRange@16 @206
|
||||
glFlushMappedBufferRange@12 @207
|
||||
glBindVertexArray@4 @208
|
||||
glDeleteVertexArrays@8 @209
|
||||
glGenVertexArrays@8 @210
|
||||
glIsVertexArray@4 @211
|
||||
glGetIntegeri_v@12 @212
|
||||
glBeginTransformFeedback@4 @213
|
||||
glEndTransformFeedback@0 @214
|
||||
glBindBufferRange@20 @215
|
||||
glBindBufferBase@12 @216
|
||||
glTransformFeedbackVaryings@16 @217
|
||||
glGetTransformFeedbackVarying@28 @218
|
||||
glVertexAttribIPointer@20 @219
|
||||
glGetVertexAttribIiv@12 @220
|
||||
glGetVertexAttribIuiv@12 @221
|
||||
glVertexAttribI4i@20 @222
|
||||
glVertexAttribI4ui@20 @223
|
||||
glVertexAttribI4iv@8 @224
|
||||
glVertexAttribI4uiv@8 @225
|
||||
glGetUniformuiv@12 @226
|
||||
glGetFragDataLocation@8 @227
|
||||
glUniform1ui@8 @228
|
||||
glUniform2ui@12 @229
|
||||
glUniform3ui@16 @230
|
||||
glUniform4ui@20 @231
|
||||
glUniform1uiv@12 @232
|
||||
glUniform2uiv@12 @233
|
||||
glUniform3uiv@12 @234
|
||||
glUniform4uiv@12 @235
|
||||
glClearBufferiv@12 @236
|
||||
glClearBufferuiv@12 @237
|
||||
glClearBufferfv@12 @238
|
||||
glClearBufferfi@16 @239
|
||||
glGetStringi@8 @240
|
||||
glCopyBufferSubData@20 @241
|
||||
glGetUniformIndices@16 @242
|
||||
glGetActiveUniformsiv@20 @243
|
||||
glGetUniformBlockIndex@8 @244
|
||||
glGetActiveUniformBlockiv@16 @245
|
||||
glGetActiveUniformBlockName@20 @246
|
||||
glUniformBlockBinding@12 @247
|
||||
glDrawArraysInstanced@16 @248
|
||||
glDrawElementsInstanced@20 @249
|
||||
glFenceSync@8 @250
|
||||
glIsSync@4 @251
|
||||
glDeleteSync@4 @252
|
||||
glClientWaitSync@16 @253
|
||||
glWaitSync@16 @254
|
||||
glGetInteger64v@8 @255
|
||||
glGetSynciv@20 @256
|
||||
glGetInteger64i_v@12 @257
|
||||
glGetBufferParameteri64v@12 @258
|
||||
glGenSamplers@8 @259
|
||||
glDeleteSamplers@8 @260
|
||||
glIsSampler@4 @261
|
||||
glBindSampler@8 @262
|
||||
glSamplerParameteri@12 @263
|
||||
glSamplerParameteriv@12 @264
|
||||
glSamplerParameterf@12 @265
|
||||
glSamplerParameterfv@12 @266
|
||||
glGetSamplerParameteriv@12 @267
|
||||
glGetSamplerParameterfv@12 @268
|
||||
glVertexAttribDivisor@8 @269
|
||||
glBindTransformFeedback@8 @270
|
||||
glDeleteTransformFeedbacks@8 @271
|
||||
glGenTransformFeedbacks@8 @272
|
||||
glIsTransformFeedback@4 @273
|
||||
glPauseTransformFeedback@0 @274
|
||||
glResumeTransformFeedback@0 @275
|
||||
glGetProgramBinary@20 @276
|
||||
glProgramBinary@16 @277
|
||||
glProgramParameteri@12 @278
|
||||
glInvalidateFramebuffer@12 @279
|
||||
glInvalidateSubFramebuffer@28 @280
|
||||
glTexStorage2D@20 @281
|
||||
glTexStorage3D@24 @282
|
||||
glGetInternalformativ@20 @283
|
||||
|
||||
; GLES 3.1 Functions
|
||||
glDispatchCompute @345
|
||||
glDispatchComputeIndirect @346
|
||||
glDrawArraysIndirect @347
|
||||
glDrawElementsIndirect @348
|
||||
glFramebufferParameteri @349
|
||||
glGetFramebufferParameteriv @350
|
||||
glGetProgramInterfaceiv @351
|
||||
glGetProgramResourceIndex @352
|
||||
glGetProgramResourceName @353
|
||||
glGetProgramResourceiv @354
|
||||
glGetProgramResourceLocation @355
|
||||
glUseProgramStages @356
|
||||
glActiveShaderProgram @357
|
||||
glCreateShaderProgramv @358
|
||||
glBindProgramPipeline @359
|
||||
glDeleteProgramPipelines @360
|
||||
glGenProgramPipelines @361
|
||||
glIsProgramPipeline @362
|
||||
glGetProgramPipelineiv @363
|
||||
glProgramUniform1i @364
|
||||
glProgramUniform2i @365
|
||||
glProgramUniform3i @366
|
||||
glProgramUniform4i @367
|
||||
glProgramUniform1ui @368
|
||||
glProgramUniform2ui @369
|
||||
glProgramUniform3ui @370
|
||||
glProgramUniform4ui @371
|
||||
glProgramUniform1f @372
|
||||
glProgramUniform2f @373
|
||||
glProgramUniform3f @374
|
||||
glProgramUniform4f @375
|
||||
glProgramUniform1iv @376
|
||||
glProgramUniform2iv @377
|
||||
glProgramUniform3iv @378
|
||||
glProgramUniform4iv @379
|
||||
glProgramUniform1uiv @380
|
||||
glProgramUniform2uiv @381
|
||||
glProgramUniform3uiv @382
|
||||
glProgramUniform4uiv @383
|
||||
glProgramUniform1fv @384
|
||||
glProgramUniform2fv @385
|
||||
glProgramUniform3fv @386
|
||||
glProgramUniform4fv @387
|
||||
glProgramUniformMatrix2fv @388
|
||||
glProgramUniformMatrix3fv @389
|
||||
glProgramUniformMatrix4fv @390
|
||||
glProgramUniformMatrix2x3fv @391
|
||||
glProgramUniformMatrix3x2fv @392
|
||||
glProgramUniformMatrix2x4fv @393
|
||||
glProgramUniformMatrix4x2fv @394
|
||||
glProgramUniformMatrix3x4fv @395
|
||||
glProgramUniformMatrix4x3fv @396
|
||||
glValidateProgramPipeline @397
|
||||
glGetProgramPipelineInfoLog @398
|
||||
glBindImageTexture @399
|
||||
glGetBooleani_v @400
|
||||
glMemoryBarrier @401
|
||||
glMemoryBarrierByRegion @402
|
||||
glTexStorage2DMultisample @403
|
||||
glGetMultisamplefv @404
|
||||
glSampleMaski @405
|
||||
glGetTexLevelParameteriv @406
|
||||
glGetTexLevelParameterfv @407
|
||||
glBindVertexBuffer @408
|
||||
glVertexAttribFormat @409
|
||||
glVertexAttribIFormat @410
|
||||
glVertexAttribBinding @411
|
||||
glVertexBindingDivisor @412
|
||||
glDispatchCompute@12 @345
|
||||
glDispatchComputeIndirect@4 @346
|
||||
glDrawArraysIndirect@8 @347
|
||||
glDrawElementsIndirect@12 @348
|
||||
glFramebufferParameteri@12 @349
|
||||
glGetFramebufferParameteriv@12 @350
|
||||
glGetProgramInterfaceiv@16 @351
|
||||
glGetProgramResourceIndex@12 @352
|
||||
glGetProgramResourceName@24 @353
|
||||
glGetProgramResourceiv@32 @354
|
||||
glGetProgramResourceLocation@12 @355
|
||||
glUseProgramStages@12 @356
|
||||
glActiveShaderProgram@8 @357
|
||||
glCreateShaderProgramv@12 @358
|
||||
glBindProgramPipeline@4 @359
|
||||
glDeleteProgramPipelines@8 @360
|
||||
glGenProgramPipelines@8 @361
|
||||
glIsProgramPipeline@4 @362
|
||||
glGetProgramPipelineiv@12 @363
|
||||
glProgramUniform1i@12 @364
|
||||
glProgramUniform2i@16 @365
|
||||
glProgramUniform3i@20 @366
|
||||
glProgramUniform4i@24 @367
|
||||
glProgramUniform1ui@12 @368
|
||||
glProgramUniform2ui@16 @369
|
||||
glProgramUniform3ui@20 @370
|
||||
glProgramUniform4ui@24 @371
|
||||
glProgramUniform1f@12 @372
|
||||
glProgramUniform2f@16 @373
|
||||
glProgramUniform3f@20 @374
|
||||
glProgramUniform4f@24 @375
|
||||
glProgramUniform1iv@16 @376
|
||||
glProgramUniform2iv@16 @377
|
||||
glProgramUniform3iv@16 @378
|
||||
glProgramUniform4iv@16 @379
|
||||
glProgramUniform1uiv@16 @380
|
||||
glProgramUniform2uiv@16 @381
|
||||
glProgramUniform3uiv@16 @382
|
||||
glProgramUniform4uiv@16 @383
|
||||
glProgramUniform1fv@16 @384
|
||||
glProgramUniform2fv@16 @385
|
||||
glProgramUniform3fv@16 @386
|
||||
glProgramUniform4fv@16 @387
|
||||
glProgramUniformMatrix2fv@20 @388
|
||||
glProgramUniformMatrix3fv@20 @389
|
||||
glProgramUniformMatrix4fv@20 @390
|
||||
glProgramUniformMatrix2x3fv@20 @391
|
||||
glProgramUniformMatrix3x2fv@20 @392
|
||||
glProgramUniformMatrix2x4fv@20 @393
|
||||
glProgramUniformMatrix4x2fv@20 @394
|
||||
glProgramUniformMatrix3x4fv@20 @395
|
||||
glProgramUniformMatrix4x3fv@20 @396
|
||||
glValidateProgramPipeline@4 @397
|
||||
glGetProgramPipelineInfoLog@16 @398
|
||||
glBindImageTexture@28 @399
|
||||
glGetBooleani_v@12 @400
|
||||
glMemoryBarrier@4 @401
|
||||
glMemoryBarrierByRegion@4 @402
|
||||
glTexStorage2DMultisample@24 @403
|
||||
glGetMultisamplefv@12 @404
|
||||
glSampleMaski@8 @405
|
||||
glGetTexLevelParameteriv@16 @406
|
||||
glGetTexLevelParameterfv@16 @407
|
||||
glBindVertexBuffer@16 @408
|
||||
glVertexAttribFormat@20 @409
|
||||
glVertexAttribIFormat@16 @410
|
||||
glVertexAttribBinding@8 @411
|
||||
glVertexBindingDivisor@8 @412
|
||||
|
@ -1,412 +1,411 @@
|
||||
LIBRARY libGLESv2
|
||||
EXPORTS
|
||||
glActiveTexture @1
|
||||
glAttachShader @2
|
||||
glBindAttribLocation @3
|
||||
glBindBuffer @4
|
||||
glBindFramebuffer @5
|
||||
glBindRenderbuffer @6
|
||||
glBindTexture @7
|
||||
glBlendColor @8
|
||||
glBlendEquation @9
|
||||
glBlendEquationSeparate @10
|
||||
glBlendFunc @11
|
||||
glBlendFuncSeparate @12
|
||||
glBufferData @13
|
||||
glBufferSubData @14
|
||||
glCheckFramebufferStatus @15
|
||||
glClear @16
|
||||
glClearColor @17
|
||||
glClearDepthf @18
|
||||
glClearStencil @19
|
||||
glColorMask @20
|
||||
glCompileShader @21
|
||||
glCompressedTexImage2D @22
|
||||
glCompressedTexSubImage2D @23
|
||||
glCopyTexImage2D @24
|
||||
glCopyTexSubImage2D @25
|
||||
glCreateProgram @26
|
||||
glCreateShader @27
|
||||
glCullFace @28
|
||||
glDeleteBuffers @29
|
||||
glDeleteFramebuffers @30
|
||||
glDeleteProgram @32
|
||||
glDeleteRenderbuffers @33
|
||||
glDeleteShader @34
|
||||
glDeleteTextures @31
|
||||
glDepthFunc @36
|
||||
glDepthMask @37
|
||||
glDepthRangef @38
|
||||
glDetachShader @35
|
||||
glDisable @39
|
||||
glDisableVertexAttribArray @40
|
||||
glDrawArrays @41
|
||||
glDrawElements @42
|
||||
glEnable @43
|
||||
glEnableVertexAttribArray @44
|
||||
glFinish @45
|
||||
glFlush @46
|
||||
glFramebufferRenderbuffer @47
|
||||
glFramebufferTexture2D @48
|
||||
glFrontFace @49
|
||||
glGenBuffers @50
|
||||
glGenFramebuffers @52
|
||||
glGenRenderbuffers @53
|
||||
glGenTextures @54
|
||||
glGenerateMipmap @51
|
||||
glGetActiveAttrib @55
|
||||
glGetActiveUniform @56
|
||||
glGetAttachedShaders @57
|
||||
glGetAttribLocation @58
|
||||
glGetBooleanv @59
|
||||
glGetBufferParameteriv @60
|
||||
glGetError @61
|
||||
glGetFloatv @62
|
||||
glGetFramebufferAttachmentParameteriv @63
|
||||
glGetIntegerv @64
|
||||
glGetProgramInfoLog @66
|
||||
glGetProgramiv @65
|
||||
glGetRenderbufferParameteriv @67
|
||||
glGetShaderInfoLog @69
|
||||
glGetShaderPrecisionFormat @70
|
||||
glGetShaderSource @71
|
||||
glGetShaderiv @68
|
||||
glGetString @72
|
||||
glGetTexParameterfv @73
|
||||
glGetTexParameteriv @74
|
||||
glGetUniformLocation @77
|
||||
glGetUniformfv @75
|
||||
glGetUniformiv @76
|
||||
glGetVertexAttribPointerv @80
|
||||
glGetVertexAttribfv @78
|
||||
glGetVertexAttribiv @79
|
||||
glHint @81
|
||||
glIsBuffer @82
|
||||
glIsEnabled @83
|
||||
glIsFramebuffer @84
|
||||
glIsProgram @85
|
||||
glIsRenderbuffer @86
|
||||
glIsShader @87
|
||||
glIsTexture @88
|
||||
glLineWidth @89
|
||||
glLinkProgram @90
|
||||
glPixelStorei @91
|
||||
glPolygonOffset @92
|
||||
glReadPixels @93
|
||||
glReleaseShaderCompiler @94
|
||||
glRenderbufferStorage @95
|
||||
glSampleCoverage @96
|
||||
glScissor @97
|
||||
glShaderBinary @98
|
||||
glShaderSource @99
|
||||
glStencilFunc @100
|
||||
glStencilFuncSeparate @101
|
||||
glStencilMask @102
|
||||
glStencilMaskSeparate @103
|
||||
glStencilOp @104
|
||||
glStencilOpSeparate @105
|
||||
glTexImage2D @106
|
||||
glTexParameterf @107
|
||||
glTexParameterfv @108
|
||||
glTexParameteri @109
|
||||
glTexParameteriv @110
|
||||
glTexSubImage2D @111
|
||||
glUniform1f @112
|
||||
glUniform1fv @113
|
||||
glUniform1i @114
|
||||
glUniform1iv @115
|
||||
glUniform2f @116
|
||||
glUniform2fv @117
|
||||
glUniform2i @118
|
||||
glUniform2iv @119
|
||||
glUniform3f @120
|
||||
glUniform3fv @121
|
||||
glUniform3i @122
|
||||
glUniform3iv @123
|
||||
glUniform4f @124
|
||||
glUniform4fv @125
|
||||
glUniform4i @126
|
||||
glUniform4iv @127
|
||||
glUniformMatrix2fv @128
|
||||
glUniformMatrix3fv @129
|
||||
glUniformMatrix4fv @130
|
||||
glUseProgram @131
|
||||
glValidateProgram @132
|
||||
glVertexAttrib1f @133
|
||||
glVertexAttrib1fv @134
|
||||
glVertexAttrib2f @135
|
||||
glVertexAttrib2fv @136
|
||||
glVertexAttrib3f @137
|
||||
glVertexAttrib3fv @138
|
||||
glVertexAttrib4f @139
|
||||
glVertexAttrib4fv @140
|
||||
glVertexAttribPointer @141
|
||||
glViewport @142
|
||||
glActiveTexture@4 @1
|
||||
glAttachShader@8 @2
|
||||
glBindAttribLocation@12 @3
|
||||
glBindBuffer@8 @4
|
||||
glBindFramebuffer@8 @5
|
||||
glBindRenderbuffer@8 @6
|
||||
glBindTexture@8 @7
|
||||
glBlendColor@16 @8
|
||||
glBlendEquation@4 @9
|
||||
glBlendEquationSeparate@8 @10
|
||||
glBlendFunc@8 @11
|
||||
glBlendFuncSeparate@16 @12
|
||||
glBufferData@16 @13
|
||||
glBufferSubData@16 @14
|
||||
glCheckFramebufferStatus@4 @15
|
||||
glClear@4 @16
|
||||
glClearColor@16 @17
|
||||
glClearDepthf@4 @18
|
||||
glClearStencil@4 @19
|
||||
glColorMask@16 @20
|
||||
glCompileShader@4 @21
|
||||
glCompressedTexImage2D@32 @22
|
||||
glCompressedTexSubImage2D@36 @23
|
||||
glCopyTexImage2D@32 @24
|
||||
glCopyTexSubImage2D@32 @25
|
||||
glCreateProgram@0 @26
|
||||
glCreateShader@4 @27
|
||||
glCullFace@4 @28
|
||||
glDeleteBuffers@8 @29
|
||||
glDeleteFramebuffers@8 @30
|
||||
glDeleteProgram@4 @32
|
||||
glDeleteRenderbuffers@8 @33
|
||||
glDeleteShader@4 @34
|
||||
glDeleteTextures@8 @31
|
||||
glDepthFunc@4 @36
|
||||
glDepthMask@4 @37
|
||||
glDepthRangef@8 @38
|
||||
glDetachShader@8 @35
|
||||
glDisable@4 @39
|
||||
glDisableVertexAttribArray@4 @40
|
||||
glDrawArrays@12 @41
|
||||
glDrawElements@16 @42
|
||||
glEnable@4 @43
|
||||
glEnableVertexAttribArray@4 @44
|
||||
glFinish@0 @45
|
||||
glFlush@0 @46
|
||||
glFramebufferRenderbuffer@16 @47
|
||||
glFramebufferTexture2D@20 @48
|
||||
glFrontFace@4 @49
|
||||
glGenBuffers@8 @50
|
||||
glGenFramebuffers@8 @52
|
||||
glGenRenderbuffers@8 @53
|
||||
glGenTextures@8 @54
|
||||
glGenerateMipmap@4 @51
|
||||
glGetActiveAttrib@28 @55
|
||||
glGetActiveUniform@28 @56
|
||||
glGetAttachedShaders@16 @57
|
||||
glGetAttribLocation@8 @58
|
||||
glGetBooleanv@8 @59
|
||||
glGetBufferParameteriv@12 @60
|
||||
glGetError@0 @61
|
||||
glGetFloatv@8 @62
|
||||
glGetFramebufferAttachmentParameteriv@16 @63
|
||||
glGetIntegerv@8 @64
|
||||
glGetProgramInfoLog@16 @66
|
||||
glGetProgramiv@12 @65
|
||||
glGetRenderbufferParameteriv@12 @67
|
||||
glGetShaderInfoLog@16 @69
|
||||
glGetShaderPrecisionFormat@16 @70
|
||||
glGetShaderSource@16 @71
|
||||
glGetShaderiv@12 @68
|
||||
glGetString@4 @72
|
||||
glGetTexParameterfv@12 @73
|
||||
glGetTexParameteriv@12 @74
|
||||
glGetUniformLocation@8 @77
|
||||
glGetUniformfv@12 @75
|
||||
glGetUniformiv@12 @76
|
||||
glGetVertexAttribPointerv@12 @80
|
||||
glGetVertexAttribfv@12 @78
|
||||
glGetVertexAttribiv@12 @79
|
||||
glHint@8 @81
|
||||
glIsBuffer@4 @82
|
||||
glIsEnabled@4 @83
|
||||
glIsFramebuffer@4 @84
|
||||
glIsProgram@4 @85
|
||||
glIsRenderbuffer@4 @86
|
||||
glIsShader@4 @87
|
||||
glIsTexture@4 @88
|
||||
glLineWidth@4 @89
|
||||
glLinkProgram@4 @90
|
||||
glPixelStorei@8 @91
|
||||
glPolygonOffset@8 @92
|
||||
glReadPixels@28 @93
|
||||
glReleaseShaderCompiler@0 @94
|
||||
glRenderbufferStorage@16 @95
|
||||
glSampleCoverage@8 @96
|
||||
glScissor@16 @97
|
||||
glShaderBinary@20 @98
|
||||
glShaderSource@16 @99
|
||||
glStencilFunc@12 @100
|
||||
glStencilFuncSeparate@16 @101
|
||||
glStencilMask@4 @102
|
||||
glStencilMaskSeparate@8 @103
|
||||
glStencilOp@12 @104
|
||||
glStencilOpSeparate@16 @105
|
||||
glTexImage2D@36 @106
|
||||
glTexParameterf@12 @107
|
||||
glTexParameterfv@12 @108
|
||||
glTexParameteri@12 @109
|
||||
glTexParameteriv@12 @110
|
||||
glTexSubImage2D@36 @111
|
||||
glUniform1f@8 @112
|
||||
glUniform1fv@12 @113
|
||||
glUniform1i@8 @114
|
||||
glUniform1iv@12 @115
|
||||
glUniform2f@12 @116
|
||||
glUniform2fv@12 @117
|
||||
glUniform2i@12 @118
|
||||
glUniform2iv@12 @119
|
||||
glUniform3f@16 @120
|
||||
glUniform3fv@12 @121
|
||||
glUniform3i@16 @122
|
||||
glUniform3iv@12 @123
|
||||
glUniform4f@20 @124
|
||||
glUniform4fv@12 @125
|
||||
glUniform4i@20 @126
|
||||
glUniform4iv@12 @127
|
||||
glUniformMatrix2fv@16 @128
|
||||
glUniformMatrix3fv@16 @129
|
||||
glUniformMatrix4fv@16 @130
|
||||
glUseProgram@4 @131
|
||||
glValidateProgram@4 @132
|
||||
glVertexAttrib1f@8 @133
|
||||
glVertexAttrib1fv@8 @134
|
||||
glVertexAttrib2f@12 @135
|
||||
glVertexAttrib2fv@8 @136
|
||||
glVertexAttrib3f@16 @137
|
||||
glVertexAttrib3fv@8 @138
|
||||
glVertexAttrib4f@20 @139
|
||||
glVertexAttrib4fv@8 @140
|
||||
glVertexAttribPointer@24 @141
|
||||
glViewport@16 @142
|
||||
|
||||
; Extensions
|
||||
glBlitFramebufferANGLE @149
|
||||
glRenderbufferStorageMultisampleANGLE @150
|
||||
glDeleteFencesNV @151
|
||||
glFinishFenceNV @152
|
||||
glGenFencesNV @153
|
||||
glGetFenceivNV @154
|
||||
glIsFenceNV @155
|
||||
glSetFenceNV @156
|
||||
glTestFenceNV @157
|
||||
glGetTranslatedShaderSourceANGLE @159
|
||||
glTexStorage2DEXT @160
|
||||
glGetGraphicsResetStatusEXT @161
|
||||
glReadnPixelsEXT @162
|
||||
glGetnUniformfvEXT @163
|
||||
glGetnUniformivEXT @164
|
||||
glGenQueriesEXT @165
|
||||
glDeleteQueriesEXT @166
|
||||
glIsQueryEXT @167
|
||||
glBeginQueryEXT @168
|
||||
glEndQueryEXT @169
|
||||
glGetQueryivEXT @170
|
||||
glGetQueryObjectuivEXT @171
|
||||
glVertexAttribDivisorANGLE @172
|
||||
glDrawArraysInstancedANGLE @173
|
||||
glDrawElementsInstancedANGLE @174
|
||||
glProgramBinaryOES @175
|
||||
glGetProgramBinaryOES @176
|
||||
glDrawBuffersEXT @179
|
||||
glMapBufferOES @285
|
||||
glUnmapBufferOES @286
|
||||
glGetBufferPointervOES @287
|
||||
glMapBufferRangeEXT @288
|
||||
glFlushMappedBufferRangeEXT @289
|
||||
glDiscardFramebufferEXT @293
|
||||
glInsertEventMarkerEXT @294
|
||||
glPushGroupMarkerEXT @295
|
||||
glPopGroupMarkerEXT @296
|
||||
glEGLImageTargetTexture2DOES @297
|
||||
glEGLImageTargetRenderbufferStorageOES @298
|
||||
glBindVertexArrayOES @299
|
||||
glDeleteVertexArraysOES @300
|
||||
glGenVertexArraysOES @301
|
||||
glIsVertexArrayOES @302
|
||||
glDebugMessageControlKHR @303
|
||||
glDebugMessageInsertKHR @304
|
||||
glDebugMessageCallbackKHR @305
|
||||
glGetDebugMessageLogKHR @306
|
||||
glPushDebugGroupKHR @307
|
||||
glPopDebugGroupKHR @308
|
||||
glObjectLabelKHR @309
|
||||
glGetObjectLabelKHR @310
|
||||
glObjectPtrLabelKHR @311
|
||||
glGetObjectPtrLabelKHR @312
|
||||
glGetPointervKHR @313
|
||||
glQueryCounterEXT @314
|
||||
glGetQueryObjectivEXT @315
|
||||
glGetQueryObjecti64vEXT @316
|
||||
glGetQueryObjectui64vEXT @317
|
||||
glBindUniformLocationCHROMIUM @318
|
||||
glCoverageModulationCHROMIUM @319
|
||||
glBlitFramebufferANGLE@40 @149
|
||||
glRenderbufferStorageMultisampleANGLE@20 @150
|
||||
glDeleteFencesNV@8 @151
|
||||
glFinishFenceNV@4 @152
|
||||
glGenFencesNV@8 @153
|
||||
glGetFenceivNV@12 @154
|
||||
glIsFenceNV@4 @155
|
||||
glSetFenceNV@8 @156
|
||||
glTestFenceNV@4 @157
|
||||
glGetTranslatedShaderSourceANGLE@16 @159
|
||||
glTexStorage2DEXT@20 @160
|
||||
glGetGraphicsResetStatusEXT@0 @161
|
||||
glReadnPixelsEXT@32 @162
|
||||
glGetnUniformfvEXT@16 @163
|
||||
glGetnUniformivEXT@16 @164
|
||||
glGenQueriesEXT@8 @165
|
||||
glDeleteQueriesEXT@8 @166
|
||||
glIsQueryEXT@4 @167
|
||||
glBeginQueryEXT@8 @168
|
||||
glEndQueryEXT@4 @169
|
||||
glGetQueryivEXT@12 @170
|
||||
glGetQueryObjectuivEXT@12 @171
|
||||
glVertexAttribDivisorANGLE@8 @172
|
||||
glDrawArraysInstancedANGLE@16 @173
|
||||
glDrawElementsInstancedANGLE@20 @174
|
||||
glProgramBinaryOES@16 @175
|
||||
glGetProgramBinaryOES@20 @176
|
||||
glDrawBuffersEXT@8 @179
|
||||
glMapBufferOES@8 @285
|
||||
glUnmapBufferOES@4 @286
|
||||
glGetBufferPointervOES@12 @287
|
||||
glMapBufferRangeEXT@16 @288
|
||||
glFlushMappedBufferRangeEXT@12 @289
|
||||
glDiscardFramebufferEXT@12 @293
|
||||
glInsertEventMarkerEXT@8 @294
|
||||
glPushGroupMarkerEXT@8 @295
|
||||
glPopGroupMarkerEXT@0 @296
|
||||
glEGLImageTargetTexture2DOES@8 @297
|
||||
glEGLImageTargetRenderbufferStorageOES@8 @298
|
||||
glBindVertexArrayOES@4 @299
|
||||
glDeleteVertexArraysOES@8 @300
|
||||
glGenVertexArraysOES@8 @301
|
||||
glIsVertexArrayOES@4 @302
|
||||
glDebugMessageControlKHR@24 @303
|
||||
glDebugMessageInsertKHR@24 @304
|
||||
glDebugMessageCallbackKHR@8 @305
|
||||
glGetDebugMessageLogKHR@32 @306
|
||||
glPushDebugGroupKHR@16 @307
|
||||
glPopDebugGroupKHR@0 @308
|
||||
glObjectLabelKHR@16 @309
|
||||
glGetObjectLabelKHR@20 @310
|
||||
glObjectPtrLabelKHR@12 @311
|
||||
glGetObjectPtrLabelKHR@16 @312
|
||||
glGetPointervKHR@8 @313
|
||||
glQueryCounterEXT@8 @314
|
||||
glGetQueryObjectivEXT@12 @315
|
||||
glGetQueryObjecti64vEXT@12 @316
|
||||
glGetQueryObjectui64vEXT@12 @317
|
||||
glBindUniformLocationCHROMIUM@12 @318
|
||||
glCoverageModulationCHROMIUM@4 @319
|
||||
glMatrixLoadfCHROMIUM@8 @320
|
||||
glMatrixLoadIdentityCHROMIUM@4 @321
|
||||
glGenPathsCHROMIUM@4 @322
|
||||
glDeletePathsCHROMIUM@8 @323
|
||||
glIsPathCHROMIUM@4 @324
|
||||
glPathCommandsCHROMIUM@24 @325
|
||||
glPathParameterfCHROMIUM@12 @326
|
||||
glPathParameteriCHROMIUM@12 @327
|
||||
glGetPathParameterfvCHROMIUM@12 @328
|
||||
glGetPathParameterivCHROMIUM@12 @329
|
||||
glPathStencilFuncCHROMIUM@12 @330
|
||||
glStencilFillPathCHROMIUM@12 @331
|
||||
glStencilStrokePathCHROMIUM@12 @332
|
||||
glCoverFillPathCHROMIUM@8 @333
|
||||
glCoverStrokePathCHROMIUM@8 @334
|
||||
glStencilThenCoverFillPathCHROMIUM@16 @335
|
||||
glStencilThenCoverStrokePathCHROMIUM@16 @336
|
||||
glCoverFillPathInstancedCHROMIUM@28 @337
|
||||
glCoverStrokePathInstancedCHROMIUM@28 @338
|
||||
glStencilStrokePathInstancedCHROMIUM@32 @339
|
||||
glStencilFillPathInstancedCHROMIUM@32 @340
|
||||
glStencilThenCoverFillPathInstancedCHROMIUM@36 @341
|
||||
glStencilThenCoverStrokePathInstancedCHROMIUM@36 @342
|
||||
glBindFragmentInputLocationCHROMIUM@12 @343
|
||||
glProgramPathFragmentInputGenCHROMIUM@20 @344
|
||||
|
||||
glMatrixLoadfCHROMIUM @320
|
||||
glMatrixLoadIdentityCHROMIUM @321
|
||||
glGenPathsCHROMIUM @322
|
||||
glDeletePathsCHROMIUM @323
|
||||
glIsPathCHROMIUM @324
|
||||
glPathCommandsCHROMIUM @325
|
||||
glPathParameterfCHROMIUM @326
|
||||
glPathParameteriCHROMIUM @327
|
||||
glGetPathParameterfvCHROMIUM @328
|
||||
glGetPathParameterivCHROMIUM @329
|
||||
glPathStencilFuncCHROMIUM @330
|
||||
glStencilFillPathCHROMIUM @331
|
||||
glStencilStrokePathCHROMIUM @332
|
||||
glCoverFillPathCHROMIUM @333
|
||||
glCoverStrokePathCHROMIUM @334
|
||||
glStencilThenCoverFillPathCHROMIUM @335
|
||||
glStencilThenCoverStrokePathCHROMIUM @336
|
||||
glCoverFillPathInstancedCHROMIUM @337
|
||||
glCoverStrokePathInstancedCHROMIUM @338
|
||||
glStencilStrokePathInstancedCHROMIUM @339
|
||||
glStencilFillPathInstancedCHROMIUM @340
|
||||
glStencilThenCoverFillPathInstancedCHROMIUM @341
|
||||
glStencilThenCoverStrokePathInstancedCHROMIUM @342
|
||||
glBindFragmentInputLocationCHROMIUM @343
|
||||
glProgramPathFragmentInputGenCHROMIUM @344
|
||||
|
||||
glFramebufferTextureMultiviewLayeredANGLE @413
|
||||
glFramebufferTextureMultiviewSideBySideANGLE @414
|
||||
glRequestExtensionANGLE @415
|
||||
glFramebufferTextureMultiviewLayeredANGLE@24 @413
|
||||
glFramebufferTextureMultiviewSideBySideANGLE@24 @414
|
||||
glRequestExtensionANGLE@4 @415
|
||||
|
||||
; GLES 3.0 Functions
|
||||
glReadBuffer @180
|
||||
glDrawRangeElements @181
|
||||
glTexImage3D @182
|
||||
glTexSubImage3D @183
|
||||
glCopyTexSubImage3D @184
|
||||
glCompressedTexImage3D @185
|
||||
glCompressedTexSubImage3D @186
|
||||
glGenQueries @187
|
||||
glDeleteQueries @188
|
||||
glIsQuery @189
|
||||
glBeginQuery @190
|
||||
glEndQuery @191
|
||||
glGetQueryiv @192
|
||||
glGetQueryObjectuiv @193
|
||||
glUnmapBuffer @194
|
||||
glGetBufferPointerv @195
|
||||
glDrawBuffers @196
|
||||
glUniformMatrix2x3fv @197
|
||||
glUniformMatrix3x2fv @198
|
||||
glUniformMatrix2x4fv @199
|
||||
glUniformMatrix4x2fv @200
|
||||
glUniformMatrix3x4fv @201
|
||||
glUniformMatrix4x3fv @202
|
||||
glBlitFramebuffer @203
|
||||
glRenderbufferStorageMultisample @204
|
||||
glFramebufferTextureLayer @205
|
||||
glMapBufferRange @206
|
||||
glFlushMappedBufferRange @207
|
||||
glBindVertexArray @208
|
||||
glDeleteVertexArrays @209
|
||||
glGenVertexArrays @210
|
||||
glIsVertexArray @211
|
||||
glGetIntegeri_v @212
|
||||
glBeginTransformFeedback @213
|
||||
glEndTransformFeedback @214
|
||||
glBindBufferRange @215
|
||||
glBindBufferBase @216
|
||||
glTransformFeedbackVaryings @217
|
||||
glGetTransformFeedbackVarying @218
|
||||
glVertexAttribIPointer @219
|
||||
glGetVertexAttribIiv @220
|
||||
glGetVertexAttribIuiv @221
|
||||
glVertexAttribI4i @222
|
||||
glVertexAttribI4ui @223
|
||||
glVertexAttribI4iv @224
|
||||
glVertexAttribI4uiv @225
|
||||
glGetUniformuiv @226
|
||||
glGetFragDataLocation @227
|
||||
glUniform1ui @228
|
||||
glUniform2ui @229
|
||||
glUniform3ui @230
|
||||
glUniform4ui @231
|
||||
glUniform1uiv @232
|
||||
glUniform2uiv @233
|
||||
glUniform3uiv @234
|
||||
glUniform4uiv @235
|
||||
glClearBufferiv @236
|
||||
glClearBufferuiv @237
|
||||
glClearBufferfv @238
|
||||
glClearBufferfi @239
|
||||
glGetStringi @240
|
||||
glCopyBufferSubData @241
|
||||
glGetUniformIndices @242
|
||||
glGetActiveUniformsiv @243
|
||||
glGetUniformBlockIndex @244
|
||||
glGetActiveUniformBlockiv @245
|
||||
glGetActiveUniformBlockName @246
|
||||
glUniformBlockBinding @247
|
||||
glDrawArraysInstanced @248
|
||||
glDrawElementsInstanced @249
|
||||
glFenceSync @250
|
||||
glIsSync @251
|
||||
glDeleteSync @252
|
||||
glClientWaitSync @253
|
||||
glWaitSync @254
|
||||
glGetInteger64v @255
|
||||
glGetSynciv @256
|
||||
glGetInteger64i_v @257
|
||||
glGetBufferParameteri64v @258
|
||||
glGenSamplers @259
|
||||
glDeleteSamplers @260
|
||||
glIsSampler @261
|
||||
glBindSampler @262
|
||||
glSamplerParameteri @263
|
||||
glSamplerParameteriv @264
|
||||
glSamplerParameterf @265
|
||||
glSamplerParameterfv @266
|
||||
glGetSamplerParameteriv @267
|
||||
glGetSamplerParameterfv @268
|
||||
glVertexAttribDivisor @269
|
||||
glBindTransformFeedback @270
|
||||
glDeleteTransformFeedbacks @271
|
||||
glGenTransformFeedbacks @272
|
||||
glIsTransformFeedback @273
|
||||
glPauseTransformFeedback @274
|
||||
glResumeTransformFeedback @275
|
||||
glGetProgramBinary @276
|
||||
glProgramBinary @277
|
||||
glProgramParameteri @278
|
||||
glInvalidateFramebuffer @279
|
||||
glInvalidateSubFramebuffer @280
|
||||
glTexStorage2D @281
|
||||
glTexStorage3D @282
|
||||
glGetInternalformativ @283
|
||||
glReadBuffer@4 @180
|
||||
glDrawRangeElements@24 @181
|
||||
glTexImage3D@40 @182
|
||||
glTexSubImage3D@44 @183
|
||||
glCopyTexSubImage3D@36 @184
|
||||
glCompressedTexImage3D@36 @185
|
||||
glCompressedTexSubImage3D@44 @186
|
||||
glGenQueries@8 @187
|
||||
glDeleteQueries@8 @188
|
||||
glIsQuery@4 @189
|
||||
glBeginQuery@8 @190
|
||||
glEndQuery@4 @191
|
||||
glGetQueryiv@12 @192
|
||||
glGetQueryObjectuiv@12 @193
|
||||
glUnmapBuffer@4 @194
|
||||
glGetBufferPointerv@12 @195
|
||||
glDrawBuffers@8 @196
|
||||
glUniformMatrix2x3fv@16 @197
|
||||
glUniformMatrix3x2fv@16 @198
|
||||
glUniformMatrix2x4fv@16 @199
|
||||
glUniformMatrix4x2fv@16 @200
|
||||
glUniformMatrix3x4fv@16 @201
|
||||
glUniformMatrix4x3fv@16 @202
|
||||
glBlitFramebuffer@40 @203
|
||||
glRenderbufferStorageMultisample@20 @204
|
||||
glFramebufferTextureLayer@20 @205
|
||||
glMapBufferRange@16 @206
|
||||
glFlushMappedBufferRange@12 @207
|
||||
glBindVertexArray@4 @208
|
||||
glDeleteVertexArrays@8 @209
|
||||
glGenVertexArrays@8 @210
|
||||
glIsVertexArray@4 @211
|
||||
glGetIntegeri_v@12 @212
|
||||
glBeginTransformFeedback@4 @213
|
||||
glEndTransformFeedback@0 @214
|
||||
glBindBufferRange@20 @215
|
||||
glBindBufferBase@12 @216
|
||||
glTransformFeedbackVaryings@16 @217
|
||||
glGetTransformFeedbackVarying@28 @218
|
||||
glVertexAttribIPointer@20 @219
|
||||
glGetVertexAttribIiv@12 @220
|
||||
glGetVertexAttribIuiv@12 @221
|
||||
glVertexAttribI4i@20 @222
|
||||
glVertexAttribI4ui@20 @223
|
||||
glVertexAttribI4iv@8 @224
|
||||
glVertexAttribI4uiv@8 @225
|
||||
glGetUniformuiv@12 @226
|
||||
glGetFragDataLocation@8 @227
|
||||
glUniform1ui@8 @228
|
||||
glUniform2ui@12 @229
|
||||
glUniform3ui@16 @230
|
||||
glUniform4ui@20 @231
|
||||
glUniform1uiv@12 @232
|
||||
glUniform2uiv@12 @233
|
||||
glUniform3uiv@12 @234
|
||||
glUniform4uiv@12 @235
|
||||
glClearBufferiv@12 @236
|
||||
glClearBufferuiv@12 @237
|
||||
glClearBufferfv@12 @238
|
||||
glClearBufferfi@16 @239
|
||||
glGetStringi@8 @240
|
||||
glCopyBufferSubData@20 @241
|
||||
glGetUniformIndices@16 @242
|
||||
glGetActiveUniformsiv@20 @243
|
||||
glGetUniformBlockIndex@8 @244
|
||||
glGetActiveUniformBlockiv@16 @245
|
||||
glGetActiveUniformBlockName@20 @246
|
||||
glUniformBlockBinding@12 @247
|
||||
glDrawArraysInstanced@16 @248
|
||||
glDrawElementsInstanced@20 @249
|
||||
glFenceSync@8 @250
|
||||
glIsSync@4 @251
|
||||
glDeleteSync@4 @252
|
||||
glClientWaitSync@16 @253
|
||||
glWaitSync@16 @254
|
||||
glGetInteger64v@8 @255
|
||||
glGetSynciv@20 @256
|
||||
glGetInteger64i_v@12 @257
|
||||
glGetBufferParameteri64v@12 @258
|
||||
glGenSamplers@8 @259
|
||||
glDeleteSamplers@8 @260
|
||||
glIsSampler@4 @261
|
||||
glBindSampler@8 @262
|
||||
glSamplerParameteri@12 @263
|
||||
glSamplerParameteriv@12 @264
|
||||
glSamplerParameterf@12 @265
|
||||
glSamplerParameterfv@12 @266
|
||||
glGetSamplerParameteriv@12 @267
|
||||
glGetSamplerParameterfv@12 @268
|
||||
glVertexAttribDivisor@8 @269
|
||||
glBindTransformFeedback@8 @270
|
||||
glDeleteTransformFeedbacks@8 @271
|
||||
glGenTransformFeedbacks@8 @272
|
||||
glIsTransformFeedback@4 @273
|
||||
glPauseTransformFeedback@0 @274
|
||||
glResumeTransformFeedback@0 @275
|
||||
glGetProgramBinary@20 @276
|
||||
glProgramBinary@16 @277
|
||||
glProgramParameteri@12 @278
|
||||
glInvalidateFramebuffer@12 @279
|
||||
glInvalidateSubFramebuffer@28 @280
|
||||
glTexStorage2D@20 @281
|
||||
glTexStorage3D@24 @282
|
||||
glGetInternalformativ@20 @283
|
||||
|
||||
; GLES 3.1 Functions
|
||||
glDispatchCompute @345
|
||||
glDispatchComputeIndirect @346
|
||||
glDrawArraysIndirect @347
|
||||
glDrawElementsIndirect @348
|
||||
glFramebufferParameteri @349
|
||||
glGetFramebufferParameteriv @350
|
||||
glGetProgramInterfaceiv @351
|
||||
glGetProgramResourceIndex @352
|
||||
glGetProgramResourceName @353
|
||||
glGetProgramResourceiv @354
|
||||
glGetProgramResourceLocation @355
|
||||
glUseProgramStages @356
|
||||
glActiveShaderProgram @357
|
||||
glCreateShaderProgramv @358
|
||||
glBindProgramPipeline @359
|
||||
glDeleteProgramPipelines @360
|
||||
glGenProgramPipelines @361
|
||||
glIsProgramPipeline @362
|
||||
glGetProgramPipelineiv @363
|
||||
glProgramUniform1i @364
|
||||
glProgramUniform2i @365
|
||||
glProgramUniform3i @366
|
||||
glProgramUniform4i @367
|
||||
glProgramUniform1ui @368
|
||||
glProgramUniform2ui @369
|
||||
glProgramUniform3ui @370
|
||||
glProgramUniform4ui @371
|
||||
glProgramUniform1f @372
|
||||
glProgramUniform2f @373
|
||||
glProgramUniform3f @374
|
||||
glProgramUniform4f @375
|
||||
glProgramUniform1iv @376
|
||||
glProgramUniform2iv @377
|
||||
glProgramUniform3iv @378
|
||||
glProgramUniform4iv @379
|
||||
glProgramUniform1uiv @380
|
||||
glProgramUniform2uiv @381
|
||||
glProgramUniform3uiv @382
|
||||
glProgramUniform4uiv @383
|
||||
glProgramUniform1fv @384
|
||||
glProgramUniform2fv @385
|
||||
glProgramUniform3fv @386
|
||||
glProgramUniform4fv @387
|
||||
glProgramUniformMatrix2fv @388
|
||||
glProgramUniformMatrix3fv @389
|
||||
glProgramUniformMatrix4fv @390
|
||||
glProgramUniformMatrix2x3fv @391
|
||||
glProgramUniformMatrix3x2fv @392
|
||||
glProgramUniformMatrix2x4fv @393
|
||||
glProgramUniformMatrix4x2fv @394
|
||||
glProgramUniformMatrix3x4fv @395
|
||||
glProgramUniformMatrix4x3fv @396
|
||||
glValidateProgramPipeline @397
|
||||
glGetProgramPipelineInfoLog @398
|
||||
glBindImageTexture @399
|
||||
glGetBooleani_v @400
|
||||
glMemoryBarrier @401
|
||||
glMemoryBarrierByRegion @402
|
||||
glTexStorage2DMultisample @403
|
||||
glGetMultisamplefv @404
|
||||
glSampleMaski @405
|
||||
glGetTexLevelParameteriv @406
|
||||
glGetTexLevelParameterfv @407
|
||||
glBindVertexBuffer @408
|
||||
glVertexAttribFormat @409
|
||||
glVertexAttribIFormat @410
|
||||
glVertexAttribBinding @411
|
||||
glVertexBindingDivisor @412
|
||||
glDispatchCompute@12 @345
|
||||
glDispatchComputeIndirect@4 @346
|
||||
glDrawArraysIndirect@8 @347
|
||||
glDrawElementsIndirect@12 @348
|
||||
glFramebufferParameteri@12 @349
|
||||
glGetFramebufferParameteriv@12 @350
|
||||
glGetProgramInterfaceiv@16 @351
|
||||
glGetProgramResourceIndex@12 @352
|
||||
glGetProgramResourceName@24 @353
|
||||
glGetProgramResourceiv@32 @354
|
||||
glGetProgramResourceLocation@12 @355
|
||||
glUseProgramStages@12 @356
|
||||
glActiveShaderProgram@8 @357
|
||||
glCreateShaderProgramv@12 @358
|
||||
glBindProgramPipeline@4 @359
|
||||
glDeleteProgramPipelines@8 @360
|
||||
glGenProgramPipelines@8 @361
|
||||
glIsProgramPipeline@4 @362
|
||||
glGetProgramPipelineiv@12 @363
|
||||
glProgramUniform1i@12 @364
|
||||
glProgramUniform2i@16 @365
|
||||
glProgramUniform3i@20 @366
|
||||
glProgramUniform4i@24 @367
|
||||
glProgramUniform1ui@12 @368
|
||||
glProgramUniform2ui@16 @369
|
||||
glProgramUniform3ui@20 @370
|
||||
glProgramUniform4ui@24 @371
|
||||
glProgramUniform1f@12 @372
|
||||
glProgramUniform2f@16 @373
|
||||
glProgramUniform3f@20 @374
|
||||
glProgramUniform4f@24 @375
|
||||
glProgramUniform1iv@16 @376
|
||||
glProgramUniform2iv@16 @377
|
||||
glProgramUniform3iv@16 @378
|
||||
glProgramUniform4iv@16 @379
|
||||
glProgramUniform1uiv@16 @380
|
||||
glProgramUniform2uiv@16 @381
|
||||
glProgramUniform3uiv@16 @382
|
||||
glProgramUniform4uiv@16 @383
|
||||
glProgramUniform1fv@16 @384
|
||||
glProgramUniform2fv@16 @385
|
||||
glProgramUniform3fv@16 @386
|
||||
glProgramUniform4fv@16 @387
|
||||
glProgramUniformMatrix2fv@20 @388
|
||||
glProgramUniformMatrix3fv@20 @389
|
||||
glProgramUniformMatrix4fv@20 @390
|
||||
glProgramUniformMatrix2x3fv@20 @391
|
||||
glProgramUniformMatrix3x2fv@20 @392
|
||||
glProgramUniformMatrix2x4fv@20 @393
|
||||
glProgramUniformMatrix4x2fv@20 @394
|
||||
glProgramUniformMatrix3x4fv@20 @395
|
||||
glProgramUniformMatrix4x3fv@20 @396
|
||||
glValidateProgramPipeline@4 @397
|
||||
glGetProgramPipelineInfoLog@16 @398
|
||||
glBindImageTexture@28 @399
|
||||
glGetBooleani_v@12 @400
|
||||
glMemoryBarrier@4 @401
|
||||
glMemoryBarrierByRegion@4 @402
|
||||
glTexStorage2DMultisample@24 @403
|
||||
glGetMultisamplefv@12 @404
|
||||
glSampleMaski@8 @405
|
||||
glGetTexLevelParameteriv@16 @406
|
||||
glGetTexLevelParameterfv@16 @407
|
||||
glBindVertexBuffer@16 @408
|
||||
glVertexAttribFormat@20 @409
|
||||
glVertexAttribIFormat@16 @410
|
||||
glVertexAttribBinding@8 @411
|
||||
glVertexBindingDivisor@8 @412
|
||||
|
@ -138,10 +138,10 @@
|
||||
T is the same type as the return value of \a function. Non-void return
|
||||
values can be accessed via the QFuture::result() function.
|
||||
|
||||
Note that the QFuture returned by QtConcurrent::run() does not support
|
||||
canceling, pausing, or progress reporting. The QFuture returned can only
|
||||
be used to query for the running/finished status and the return value of
|
||||
the function.
|
||||
\note The QFuture returned can only be used to query for the
|
||||
running/finished status and the return value of the function. In particular,
|
||||
canceling or pausing can be issued only if the computations behind the future
|
||||
has not been started.
|
||||
|
||||
\sa {Concurrent Run}
|
||||
*/
|
||||
@ -157,10 +157,10 @@
|
||||
T is the same type as the return value of \a function. Non-void return
|
||||
values can be accessed via the QFuture::result() function.
|
||||
|
||||
Note that the QFuture returned by QtConcurrent::run() does not support
|
||||
canceling, pausing, or progress reporting. The QFuture returned can only
|
||||
be used to query for the running/finished status and the return value of
|
||||
the function.
|
||||
\note The QFuture returned can only be used to query for the
|
||||
running/finished status and the return value of the function. In particular,
|
||||
canceling or pausing can be issued only if the computations behind the future
|
||||
has not been started.
|
||||
|
||||
\sa {Concurrent Run}
|
||||
*/
|
||||
|
@ -984,7 +984,11 @@ void QCoreApplication::setAttribute(Qt::ApplicationAttribute attribute, bool on)
|
||||
QCoreApplicationPrivate::attribs |= 1 << attribute;
|
||||
else
|
||||
QCoreApplicationPrivate::attribs &= ~(1 << attribute);
|
||||
#if defined(QT_NO_QOBJECT)
|
||||
if (Q_UNLIKELY(qApp)) {
|
||||
#else
|
||||
if (Q_UNLIKELY(QCoreApplicationPrivate::is_app_running)) {
|
||||
#endif
|
||||
switch (attribute) {
|
||||
case Qt::AA_EnableHighDpiScaling:
|
||||
case Qt::AA_DisableHighDpiScaling:
|
||||
|
@ -55,8 +55,8 @@
|
||||
instance, the computation can be canceled with the cancel() function. To
|
||||
pause the computation, use the setPaused() function or one of the pause(),
|
||||
resume(), or togglePaused() convenience functions. Be aware that not all
|
||||
asynchronous computations can be canceled or paused. For example, the
|
||||
future returned by QtConcurrent::run() cannot be canceled; but the
|
||||
running asynchronous computations can be canceled or paused. For example,
|
||||
the future returned by QtConcurrent::run() cannot be canceled; but the
|
||||
future returned by QtConcurrent::mappedReduced() can.
|
||||
|
||||
Progress information is provided by the progressValue(),
|
||||
@ -133,8 +133,8 @@
|
||||
Any QFutureWatcher object that is watching this future will not deliver
|
||||
progress and result ready signals on a canceled future.
|
||||
|
||||
Be aware that not all asynchronous computations can be canceled. For
|
||||
example, the future returned by QtConcurrent::run() cannot be canceled;
|
||||
Be aware that not all running asynchronous computations can be canceled.
|
||||
For example, the future returned by QtConcurrent::run() cannot be canceled;
|
||||
but the future returned by QtConcurrent::mappedReduced() can.
|
||||
*/
|
||||
|
||||
|
@ -84,8 +84,8 @@ QT_BEGIN_NAMESPACE
|
||||
|
||||
\snippet code/src_corelib_thread_qfuturewatcher.cpp 0
|
||||
|
||||
Be aware that not all asynchronous computations can be canceled or paused.
|
||||
For example, the future returned by QtConcurrent::run() cannot be
|
||||
Be aware that not all running asynchronous computations can be canceled or
|
||||
paused. For example, the future returned by QtConcurrent::run() cannot be
|
||||
canceled; but the future returned by QtConcurrent::mappedReduced() can.
|
||||
|
||||
QFutureWatcher<void> is specialized to not contain any of the result
|
||||
@ -124,9 +124,9 @@ QFutureWatcherBase::QFutureWatcherBase(QObject *parent)
|
||||
progressRangeChanged(), progressTextChanged(), resultReadyAt(), and
|
||||
resultsReadyAt() signals.
|
||||
|
||||
Be aware that not all asynchronous computations can be canceled. For
|
||||
example, the QFuture returned by QtConcurrent::run() cannot be canceled;
|
||||
but the QFuture returned by QtConcurrent::mappedReduced() can.
|
||||
Be aware that not all running asynchronous computations can be canceled.
|
||||
For example, the QFuture returned by QtConcurrent::run() cannot be
|
||||
canceled; but the QFuture returned by QtConcurrent::mappedReduced() can.
|
||||
*/
|
||||
void QFutureWatcherBase::cancel()
|
||||
{
|
||||
|
@ -725,6 +725,12 @@ void QThread::start(Priority priority)
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef Q_OS_INTEGRITY
|
||||
if (Q_LIKELY(objectName().isEmpty()))
|
||||
pthread_attr_setthreadname(&attr, metaObject()->className());
|
||||
else
|
||||
pthread_attr_setthreadname(&attr, objectName().toLocal8Bit());
|
||||
#endif
|
||||
pthread_t threadId;
|
||||
int code = pthread_create(&threadId, &attr, QThreadPrivate::start, this);
|
||||
if (code == EPERM) {
|
||||
|
@ -350,6 +350,7 @@ Q_LOGGING_CATEGORY(lcAccessibilityCore, "qt.accessibility.core");
|
||||
\value MenuItem An item in a menu or menu bar.
|
||||
\value NoRole The object has no role. This usually indicates an invalid object.
|
||||
\value Note A section whose content is parenthetic or ancillary to the main content of the resource.
|
||||
\value Notification An object that represents a notification (e.g. in the system tray). This role only has an effect on Linux.
|
||||
\value PageTab A page tab that the user can select to switch to a different page in a dialog.
|
||||
\value PageTabList A list of page tabs.
|
||||
\value Paragraph A paragraph of text (usually found in documents).
|
||||
|
@ -299,6 +299,7 @@ public:
|
||||
Paragraph = 0x00000083,
|
||||
WebDocument = 0x00000084,
|
||||
Section = 0x00000085,
|
||||
Notification = 0x00000086,
|
||||
|
||||
// IAccessible2 roles
|
||||
// IA2_ROLE_CANVAS = 0x401, ### Qt 6 use this one instead of Canvas above
|
||||
|
@ -1319,10 +1319,12 @@ bool QImageReader::read(QImage *image)
|
||||
}
|
||||
}
|
||||
|
||||
// successful read; check for "@2x" file name suffix and set device pixel ratio.
|
||||
static bool disable2xImageLoading = !qEnvironmentVariableIsEmpty("QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING");
|
||||
if (!disable2xImageLoading && QFileInfo(fileName()).baseName().endsWith(QLatin1String("@2x"))) {
|
||||
image->setDevicePixelRatio(2.0);
|
||||
// successful read; check for "@Nx" file name suffix and set device pixel ratio.
|
||||
static bool disableNxImageLoading = !qEnvironmentVariableIsEmpty("QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING");
|
||||
if (!disableNxImageLoading) {
|
||||
const QByteArray suffix = QFileInfo(fileName()).baseName().right(3).toLatin1();
|
||||
if (suffix.length() == 3 && suffix[0] == '@' && suffix[1] >= '2' && suffix[1] <= '9' && suffix[2] == 'x')
|
||||
image->setDevicePixelRatio(suffix[1] - '0');
|
||||
}
|
||||
if (autoTransform())
|
||||
qt_imageTransform(*image, transformation());
|
||||
|
@ -400,7 +400,7 @@ QPoint QHighDpiScaling::mapPositionToGlobal(const QPoint &pos, const QPoint &win
|
||||
QPoint QHighDpiScaling::mapPositionFromGlobal(const QPoint &pos, const QPoint &windowGlobalPosition, const QWindow *window)
|
||||
{
|
||||
QPoint windowPosCandidate = pos - windowGlobalPosition;
|
||||
if (QGuiApplicationPrivate::screen_list.size() <= 1)
|
||||
if (QGuiApplicationPrivate::screen_list.size() <= 1 || window->handle() == nullptr)
|
||||
return windowPosCandidate;
|
||||
|
||||
// Device independent global (screen) space may discontiguous when high-dpi scaling
|
||||
|
@ -108,208 +108,114 @@ private:
|
||||
|
||||
namespace QHighDpi {
|
||||
|
||||
inline QPointF fromNative(const QPointF &pos, qreal scaleFactor, const QPointF &origin)
|
||||
template <typename T>
|
||||
inline T scale(const T &value, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return (pos - origin) / scaleFactor + origin;
|
||||
Q_UNUSED(origin)
|
||||
return value * scaleFactor;
|
||||
}
|
||||
|
||||
inline QPointF toNative(const QPointF &pos, qreal scaleFactor, const QPointF &origin)
|
||||
inline QPointF scale(const QPointF &pos, qreal scaleFactor, QPointF origin = QPointF(0, 0))
|
||||
{
|
||||
return (pos - origin) * scaleFactor + origin;
|
||||
}
|
||||
|
||||
inline QPoint fromNative(const QPoint &pos, qreal scaleFactor, const QPoint &origin)
|
||||
{
|
||||
return (pos - origin) / scaleFactor + origin;
|
||||
}
|
||||
|
||||
inline QPoint toNative(const QPoint &pos, qreal scaleFactor, const QPoint &origin)
|
||||
inline QPoint scale(const QPoint &pos, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return (pos - origin) * scaleFactor + origin;
|
||||
}
|
||||
|
||||
inline QPoint fromNative(const QPoint &pos, qreal scaleFactor)
|
||||
inline QRect scale(const QRect &rect, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return pos / scaleFactor;
|
||||
return QRect(scale(rect.topLeft(), scaleFactor, origin), scale(rect.size(), scaleFactor));
|
||||
}
|
||||
|
||||
inline QPoint toNative(const QPoint &pos, qreal scaleFactor)
|
||||
inline QRectF scale(const QRectF &rect, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return pos * scaleFactor;
|
||||
return QRectF(scale(rect.topLeft(), scaleFactor, origin), scale(rect.size(), scaleFactor));
|
||||
}
|
||||
|
||||
inline QSize fromNative(const QSize &size, qreal scaleFactor)
|
||||
inline QMargins scale(const QMargins &margins, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return size / scaleFactor; // TODO: should we round up?
|
||||
Q_UNUSED(origin)
|
||||
return QMargins(qRound(qreal(margins.left()) * scaleFactor), qRound(qreal(margins.top()) * scaleFactor),
|
||||
qRound(qreal(margins.right()) * scaleFactor), qRound(qreal(margins.bottom()) * scaleFactor));
|
||||
}
|
||||
|
||||
inline QSize toNative(const QSize &size, qreal scaleFactor)
|
||||
template <typename T>
|
||||
QVector<T> scale(const QVector<T> &vector, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return size * scaleFactor;
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return vector;
|
||||
|
||||
QVector<T> scaled;
|
||||
scaled.reserve(vector.size());
|
||||
for (const T &item : vector)
|
||||
scaled.append(scale(item, scaleFactor, origin));
|
||||
return scaled;
|
||||
}
|
||||
|
||||
inline QSizeF fromNative(const QSizeF &size, qreal scaleFactor)
|
||||
inline QRegion scale(const QRegion ®ion, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return size / scaleFactor;
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return region;
|
||||
|
||||
QRegion scaled;
|
||||
for (const QRect &rect : region)
|
||||
scaled += scale(rect, scaleFactor, origin);
|
||||
return scaled;
|
||||
}
|
||||
|
||||
inline QSizeF toNative(const QSizeF &size, qreal scaleFactor)
|
||||
template <typename T, typename C>
|
||||
T fromNativePixels(const T &value, const C *context)
|
||||
{
|
||||
return size * scaleFactor;
|
||||
return scale(value, qreal(1) / QHighDpiScaling::factor(context), QHighDpiScaling::origin(context));
|
||||
}
|
||||
|
||||
inline QRect fromNative(const QRect &rect, qreal scaleFactor, const QPoint &origin)
|
||||
template <typename T, typename C>
|
||||
T toNativePixels(const T &value, const C *context)
|
||||
{
|
||||
return QRect(fromNative(rect.topLeft(), scaleFactor, origin), fromNative(rect.size(), scaleFactor));
|
||||
return scale(value, QHighDpiScaling::factor(context), QHighDpiScaling::origin(context));
|
||||
}
|
||||
|
||||
inline QRect toNative(const QRect &rect, qreal scaleFactor, const QPoint &origin)
|
||||
template <typename T, typename C>
|
||||
T fromNativeLocalPosition(const T &value, const C *context)
|
||||
{
|
||||
return QRect(toNative(rect.topLeft(), scaleFactor, origin), toNative(rect.size(), scaleFactor));
|
||||
return scale(value, qreal(1) / QHighDpiScaling::factor(context));
|
||||
}
|
||||
|
||||
template <typename T, typename C>
|
||||
T toNativeLocalPosition(const T &value, const C *context)
|
||||
{
|
||||
return scale(value, QHighDpiScaling::factor(context));
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
inline T fromNative(const T &value, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return scale(value, qreal(1) / scaleFactor, origin);
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
inline T toNative(const T &value, qreal scaleFactor, QPoint origin = QPoint(0, 0))
|
||||
{
|
||||
return scale(value, scaleFactor, origin);
|
||||
}
|
||||
|
||||
inline QRect fromNative(const QRect &rect, const QScreen *screen, const QPoint &screenOrigin)
|
||||
{
|
||||
return fromNative(rect, QHighDpiScaling::factor(screen), screenOrigin);
|
||||
return scale(rect, qreal(1) / QHighDpiScaling::factor(screen), screenOrigin);
|
||||
}
|
||||
|
||||
inline QRect fromNativeScreenGeometry(const QRect &nativeScreenGeometry, const QScreen *screen)
|
||||
{
|
||||
return QRect(nativeScreenGeometry.topLeft(),
|
||||
fromNative(nativeScreenGeometry.size(), QHighDpiScaling::factor(screen)));
|
||||
}
|
||||
|
||||
inline QPoint fromNativeLocalPosition(const QPoint &pos, const QWindow *window)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
return pos / scaleFactor;
|
||||
}
|
||||
|
||||
inline QPoint toNativeLocalPosition(const QPoint &pos, const QWindow *window)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
return pos * scaleFactor;
|
||||
}
|
||||
|
||||
inline QPointF fromNativeLocalPosition(const QPointF &pos, const QWindow *window)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
return pos / scaleFactor;
|
||||
}
|
||||
|
||||
inline QPointF toNativeLocalPosition(const QPointF &pos, const QWindow *window)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
return pos * scaleFactor;
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QRect fromNativePixels(const QRect &pixelRect, const C *context)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(context);
|
||||
const QPoint origin = QHighDpiScaling::origin(context);
|
||||
return QRect(fromNative(pixelRect.topLeft(), scaleFactor, origin),
|
||||
fromNative(pixelRect.size(), scaleFactor));
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QRect toNativePixels(const QRect &pointRect, const C *context)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(context);
|
||||
const QPoint origin = QHighDpiScaling::origin(context);
|
||||
return QRect(toNative(pointRect.topLeft(), scaleFactor, origin),
|
||||
toNative(pointRect.size(), scaleFactor));
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QRectF toNativePixels(const QRectF &pointRect, const C *context)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(context);
|
||||
const QPoint origin = QHighDpiScaling::origin(context);
|
||||
return QRectF(toNative(pointRect.topLeft(), scaleFactor, origin),
|
||||
toNative(pointRect.size(), scaleFactor));
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QRectF fromNativePixels(const QRectF &pixelRect, const C *context)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(context);
|
||||
const QPoint origin = QHighDpiScaling::origin(context);
|
||||
return QRectF(fromNative(pixelRect.topLeft(), scaleFactor, origin),
|
||||
fromNative(pixelRect.size(), scaleFactor));
|
||||
}
|
||||
|
||||
inline QSize fromNativePixels(const QSize &pixelSize, const QWindow *window)
|
||||
{
|
||||
return pixelSize / QHighDpiScaling::factor(window);
|
||||
}
|
||||
|
||||
inline QSize toNativePixels(const QSize &pointSize, const QWindow *window)
|
||||
{
|
||||
return pointSize * QHighDpiScaling::factor(window);
|
||||
}
|
||||
|
||||
inline QSizeF fromNativePixels(const QSizeF &pixelSize, const QWindow *window)
|
||||
{
|
||||
return pixelSize / QHighDpiScaling::factor(window);
|
||||
}
|
||||
|
||||
inline QSizeF toNativePixels(const QSizeF &pointSize, const QWindow *window)
|
||||
{
|
||||
return pointSize * QHighDpiScaling::factor(window);
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QPoint fromNativePixels(const QPoint &pixelPoint, const C *context)
|
||||
{
|
||||
return fromNative(pixelPoint, QHighDpiScaling::factor(context), QHighDpiScaling::origin(context));
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QPoint toNativePixels(const QPoint &pointPoint, const C *context)
|
||||
{
|
||||
return toNative(pointPoint, QHighDpiScaling::factor(context), QHighDpiScaling::origin(context));
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QPointF fromNativePixels(const QPointF &pixelPoint, const C *context)
|
||||
{
|
||||
return fromNative(pixelPoint, QHighDpiScaling::factor(context), QHighDpiScaling::origin(context));
|
||||
}
|
||||
|
||||
template <typename C>
|
||||
inline QPointF toNativePixels(const QPointF &pointPoint, const C *context)
|
||||
{
|
||||
return toNative(pointPoint, QHighDpiScaling::factor(context), QHighDpiScaling::origin(context));
|
||||
}
|
||||
|
||||
inline QMargins fromNativePixels(const QMargins &pixelMargins, const QWindow *window)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
return QMargins(pixelMargins.left() / scaleFactor, pixelMargins.top() / scaleFactor,
|
||||
pixelMargins.right() / scaleFactor, pixelMargins.bottom() / scaleFactor);
|
||||
}
|
||||
|
||||
inline QMargins toNativePixels(const QMargins &pointMargins, const QWindow *window)
|
||||
{
|
||||
const qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
return QMargins(pointMargins.left() * scaleFactor, pointMargins.top() * scaleFactor,
|
||||
pointMargins.right() * scaleFactor, pointMargins.bottom() * scaleFactor);
|
||||
scale(nativeScreenGeometry.size(), qreal(1) / QHighDpiScaling::factor(screen)));
|
||||
}
|
||||
|
||||
inline QRegion fromNativeLocalRegion(const QRegion &pixelRegion, const QWindow *window)
|
||||
{
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return pixelRegion;
|
||||
|
||||
qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
QRegion pointRegion;
|
||||
for (const QRect &rect : pixelRegion) {
|
||||
pointRegion += QRect(fromNative(rect.topLeft(), scaleFactor),
|
||||
fromNative(rect.size(), scaleFactor));
|
||||
}
|
||||
return pointRegion;
|
||||
return scale(pixelRegion, qreal(1) / QHighDpiScaling::factor(window));
|
||||
}
|
||||
|
||||
// When mapping expose events to Qt rects: round top/left towards the origin and
|
||||
@ -333,67 +239,7 @@ inline QRegion fromNativeLocalExposedRegion(const QRegion &pixelRegion, const QW
|
||||
|
||||
inline QRegion toNativeLocalRegion(const QRegion &pointRegion, const QWindow *window)
|
||||
{
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return pointRegion;
|
||||
|
||||
qreal scaleFactor = QHighDpiScaling::factor(window);
|
||||
QRegion pixelRegon;
|
||||
for (const QRect &rect : pointRegion) {
|
||||
pixelRegon += QRect(toNative(rect.topLeft(), scaleFactor),
|
||||
toNative(rect.size(), scaleFactor));
|
||||
}
|
||||
return pixelRegon;
|
||||
}
|
||||
|
||||
// Any T that has operator/()
|
||||
template <typename T, typename C>
|
||||
T fromNativePixels(const T &pixelValue, const C *context)
|
||||
{
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return pixelValue;
|
||||
|
||||
return pixelValue / QHighDpiScaling::factor(context);
|
||||
|
||||
}
|
||||
|
||||
// Any T that has operator*()
|
||||
template <typename T, typename C>
|
||||
T toNativePixels(const T &pointValue, const C *context)
|
||||
{
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return pointValue;
|
||||
|
||||
return pointValue * QHighDpiScaling::factor(context);
|
||||
}
|
||||
|
||||
// Any QVector<T> where T has operator/()
|
||||
template <typename T>
|
||||
QVector<T> fromNativePixels(const QVector<T> &pixelValues, const QWindow *window)
|
||||
{
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return pixelValues;
|
||||
|
||||
QVector<T> pointValues;
|
||||
pointValues.reserve(pixelValues.size());
|
||||
const auto factor = QHighDpiScaling::factor(window);
|
||||
for (const T &pixelValue : pixelValues)
|
||||
pointValues.append(pixelValue / factor);
|
||||
return pointValues;
|
||||
}
|
||||
|
||||
// Any QVector<T> where T has operator*()
|
||||
template <typename T>
|
||||
QVector<T> toNativePixels(const QVector<T> &pointValues, const QWindow *window)
|
||||
{
|
||||
if (!QHighDpiScaling::isActive())
|
||||
return pointValues;
|
||||
|
||||
QVector<T> pixelValues;
|
||||
pixelValues.reserve(pointValues.size());
|
||||
const auto factor = QHighDpiScaling::factor(window);
|
||||
for (const T &pointValue : pointValues)
|
||||
pixelValues.append(pointValue * factor);
|
||||
return pixelValues;
|
||||
return scale(pointRegion, QHighDpiScaling::factor(window));
|
||||
}
|
||||
|
||||
} // namespace QHighDpi
|
||||
|
@ -514,7 +514,7 @@ float QVector3D::distanceToPlane
|
||||
/*!
|
||||
\overload
|
||||
|
||||
Returns the distance from this vertex a plane defined by
|
||||
Returns the distance from this vertex to a plane defined by
|
||||
the vertices \a plane1, \a plane2 and \a plane3.
|
||||
|
||||
The return value will be negative if the vertex is below the plane,
|
||||
|
@ -4510,7 +4510,9 @@ static void blend_color_rgb16(int count, const QSpan *spans, void *userData)
|
||||
if (mode == QPainter::CompositionMode_Source) {
|
||||
// inline for performance
|
||||
ushort c = data->solidColor.toRgb16();
|
||||
while (count--) {
|
||||
for (; count--; spans++) {
|
||||
if (!spans->len)
|
||||
continue;
|
||||
ushort *target = ((ushort *)data->rasterBuffer->scanLine(spans->y)) + spans->x;
|
||||
if (spans->coverage == 255) {
|
||||
qt_memfill(target, c, spans->len);
|
||||
@ -4523,13 +4525,14 @@ static void blend_color_rgb16(int count, const QSpan *spans, void *userData)
|
||||
++target;
|
||||
}
|
||||
}
|
||||
++spans;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == QPainter::CompositionMode_SourceOver) {
|
||||
while (count--) {
|
||||
for (; count--; spans++) {
|
||||
if (!spans->len)
|
||||
continue;
|
||||
uint color = BYTE_MUL(data->solidColor.toArgb32(), spans->coverage);
|
||||
int ialpha = qAlpha(~color);
|
||||
ushort c = qConvertRgb32To16(color);
|
||||
@ -4561,7 +4564,6 @@ static void blend_color_rgb16(int count, const QSpan *spans, void *userData)
|
||||
// one last pixel beyond a full word
|
||||
*target = c + BYTE_MUL_RGB16(*target, ialpha);
|
||||
}
|
||||
++spans;
|
||||
}
|
||||
return;
|
||||
}
|
||||
@ -4578,6 +4580,11 @@ void handleSpans(int count, const QSpan *spans, const QSpanData *data, T &handle
|
||||
|
||||
int coverage = 0;
|
||||
while (count) {
|
||||
if (!spans->len) {
|
||||
++spans;
|
||||
--count;
|
||||
continue;
|
||||
}
|
||||
int x = spans->x;
|
||||
const int y = spans->y;
|
||||
int right = x + spans->len;
|
||||
@ -4730,7 +4737,9 @@ static void blend_untransformed_generic(int count, const QSpan *spans, void *use
|
||||
int xoff = -qRound(-data->dx);
|
||||
int yoff = -qRound(-data->dy);
|
||||
|
||||
while (count--) {
|
||||
for (; count--; spans++) {
|
||||
if (!spans->len)
|
||||
continue;
|
||||
int x = spans->x;
|
||||
int length = spans->len;
|
||||
int sx = xoff + x;
|
||||
@ -4758,7 +4767,6 @@ static void blend_untransformed_generic(int count, const QSpan *spans, void *use
|
||||
}
|
||||
}
|
||||
}
|
||||
++spans;
|
||||
}
|
||||
}
|
||||
|
||||
@ -4779,7 +4787,9 @@ static void blend_untransformed_generic_rgb64(int count, const QSpan *spans, voi
|
||||
int xoff = -qRound(-data->dx);
|
||||
int yoff = -qRound(-data->dy);
|
||||
|
||||
while (count--) {
|
||||
for (; count--; spans++) {
|
||||
if (!spans->len)
|
||||
continue;
|
||||
int x = spans->x;
|
||||
int length = spans->len;
|
||||
int sx = xoff + x;
|
||||
@ -4807,7 +4817,6 @@ static void blend_untransformed_generic_rgb64(int count, const QSpan *spans, voi
|
||||
}
|
||||
}
|
||||
}
|
||||
++spans;
|
||||
}
|
||||
}
|
||||
|
||||
@ -4827,7 +4836,9 @@ static void blend_untransformed_argb(int count, const QSpan *spans, void *userDa
|
||||
int xoff = -qRound(-data->dx);
|
||||
int yoff = -qRound(-data->dy);
|
||||
|
||||
while (count--) {
|
||||
for (; count--; spans++) {
|
||||
if (!spans->len)
|
||||
continue;
|
||||
int x = spans->x;
|
||||
int length = spans->len;
|
||||
int sx = xoff + x;
|
||||
@ -4847,7 +4858,6 @@ static void blend_untransformed_argb(int count, const QSpan *spans, void *userDa
|
||||
op.func(dest, src, length, coverage);
|
||||
}
|
||||
}
|
||||
++spans;
|
||||
}
|
||||
}
|
||||
|
||||
@ -4920,7 +4930,12 @@ static void blend_untransformed_rgb565(int count, const QSpan *spans, void *user
|
||||
int xoff = -qRound(-data->dx);
|
||||
int yoff = -qRound(-data->dy);
|
||||
|
||||
while (count--) {
|
||||
const QSpan *end = spans + count;
|
||||
while (spans < end) {
|
||||
if (!spans->len) {
|
||||
++spans;
|
||||
continue;
|
||||
}
|
||||
const quint8 coverage = (data->texture.const_alpha * spans->coverage) >> 8;
|
||||
if (coverage == 0) {
|
||||
++spans;
|
||||
|
@ -4183,7 +4183,7 @@ static void qt_span_fill_clipped(int spanCount, const QSpan *spans, void *userDa
|
||||
Clip spans to \a{clip}-rectangle.
|
||||
Returns number of unclipped spans
|
||||
*/
|
||||
static int qt_intersect_spans(QT_FT_Span *spans, int numSpans,
|
||||
static int qt_intersect_spans(QT_FT_Span *&spans, int numSpans,
|
||||
const QRect &clip)
|
||||
{
|
||||
const short minx = clip.left();
|
||||
@ -4191,29 +4191,32 @@ static int qt_intersect_spans(QT_FT_Span *spans, int numSpans,
|
||||
const short maxx = clip.right();
|
||||
const short maxy = clip.bottom();
|
||||
|
||||
int n = 0;
|
||||
for (int i = 0; i < numSpans; ++i) {
|
||||
if (spans[i].y > maxy)
|
||||
QT_FT_Span *end = spans + numSpans;
|
||||
while (spans < end) {
|
||||
if (spans->y >= miny)
|
||||
break;
|
||||
if (spans[i].y < miny
|
||||
|| spans[i].x > maxx
|
||||
|| spans[i].x + spans[i].len <= minx) {
|
||||
continue;
|
||||
}
|
||||
if (spans[i].x < minx) {
|
||||
spans[n].len = qMin(spans[i].len - (minx - spans[i].x), maxx - minx + 1);
|
||||
spans[n].x = minx;
|
||||
} else {
|
||||
spans[n].x = spans[i].x;
|
||||
spans[n].len = qMin(spans[i].len, ushort(maxx - spans[n].x + 1));
|
||||
}
|
||||
if (spans[n].len == 0)
|
||||
continue;
|
||||
spans[n].y = spans[i].y;
|
||||
spans[n].coverage = spans[i].coverage;
|
||||
++n;
|
||||
++spans;
|
||||
}
|
||||
return n;
|
||||
|
||||
QT_FT_Span *s = spans;
|
||||
while (s < end) {
|
||||
if (s->y > maxy)
|
||||
break;
|
||||
if (s->x > maxx || s->x + s->len <= minx) {
|
||||
s->len = 0;
|
||||
++s;
|
||||
continue;
|
||||
}
|
||||
if (s->x < minx) {
|
||||
s->len = qMin(s->len - (minx - s->x), maxx - minx + 1);
|
||||
s->x = minx;
|
||||
} else {
|
||||
s->len = qMin(s->len, ushort(maxx - s->x + 1));
|
||||
}
|
||||
++s;
|
||||
}
|
||||
|
||||
return s - spans;
|
||||
}
|
||||
|
||||
|
||||
@ -4226,11 +4229,12 @@ static void qt_span_fill_clipRect(int count, const QSpan *spans,
|
||||
Q_ASSERT(fillData->clip);
|
||||
Q_ASSERT(!fillData->clip->clipRect.isEmpty());
|
||||
|
||||
QSpan *s = const_cast<QSpan *>(spans);
|
||||
// hw: check if this const_cast<> is safe!!!
|
||||
count = qt_intersect_spans(const_cast<QSpan*>(spans), count,
|
||||
count = qt_intersect_spans(s, count,
|
||||
fillData->clip->clipRect);
|
||||
if (count > 0)
|
||||
fillData->unclipped_blend(count, spans, fillData);
|
||||
fillData->unclipped_blend(count, s, fillData);
|
||||
}
|
||||
|
||||
static void qt_span_clip(int count, const QSpan *spans, void *userData)
|
||||
@ -4843,7 +4847,8 @@ static inline void drawEllipsePoints(int x, int y, int length,
|
||||
if (length == 0)
|
||||
return;
|
||||
|
||||
QT_FT_Span outline[4];
|
||||
QT_FT_Span _outline[4];
|
||||
QT_FT_Span *outline = _outline;
|
||||
const int midx = rect.x() + (rect.width() + 1) / 2;
|
||||
const int midy = rect.y() + (rect.height() + 1) / 2;
|
||||
|
||||
@ -4875,7 +4880,8 @@ static inline void drawEllipsePoints(int x, int y, int length,
|
||||
outline[3].coverage = 255;
|
||||
|
||||
if (brush_func && outline[0].x + outline[0].len < outline[1].x) {
|
||||
QT_FT_Span fill[2];
|
||||
QT_FT_Span _fill[2];
|
||||
QT_FT_Span *fill = _fill;
|
||||
|
||||
// top fill
|
||||
fill[0].x = outline[0].x + outline[0].len - 1;
|
||||
|
@ -525,7 +525,7 @@ void QStroker::joinPoints(qfixed focal_x, qfixed focal_y, const QLineF &nextLine
|
||||
|
||||
QLineF shortCut(prevLine.p2(), nextLine.p1());
|
||||
qreal angle = shortCut.angleTo(prevLine);
|
||||
if (type == QLineF::BoundedIntersection || (angle > 90 && !qFuzzyCompare(angle, (qreal)90))) {
|
||||
if ((type == QLineF::BoundedIntersection || (angle > qreal(90.01))) && nextLine.length() > offset) {
|
||||
emitLineTo(focal_x, focal_y);
|
||||
emitLineTo(qt_real_to_fixed(nextLine.x1()), qt_real_to_fixed(nextLine.y1()));
|
||||
return;
|
||||
|
@ -233,19 +233,20 @@ QNetworkConfigurationManager::QNetworkConfigurationManager(QObject *parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
QNetworkConfigurationManagerPrivate *priv = qNetworkConfigurationManagerPrivate();
|
||||
if (priv) {
|
||||
connect(priv, SIGNAL(configurationAdded(QNetworkConfiguration)),
|
||||
this, SIGNAL(configurationAdded(QNetworkConfiguration)));
|
||||
connect(priv, SIGNAL(configurationRemoved(QNetworkConfiguration)),
|
||||
this, SIGNAL(configurationRemoved(QNetworkConfiguration)));
|
||||
connect(priv, SIGNAL(configurationChanged(QNetworkConfiguration)),
|
||||
this, SIGNAL(configurationChanged(QNetworkConfiguration)));
|
||||
connect(priv, SIGNAL(onlineStateChanged(bool)),
|
||||
this, SIGNAL(onlineStateChanged(bool)));
|
||||
connect(priv, SIGNAL(configurationUpdateComplete()),
|
||||
this, SIGNAL(updateCompleted()));
|
||||
|
||||
connect(priv, SIGNAL(configurationAdded(QNetworkConfiguration)),
|
||||
this, SIGNAL(configurationAdded(QNetworkConfiguration)));
|
||||
connect(priv, SIGNAL(configurationRemoved(QNetworkConfiguration)),
|
||||
this, SIGNAL(configurationRemoved(QNetworkConfiguration)));
|
||||
connect(priv, SIGNAL(configurationChanged(QNetworkConfiguration)),
|
||||
this, SIGNAL(configurationChanged(QNetworkConfiguration)));
|
||||
connect(priv, SIGNAL(onlineStateChanged(bool)),
|
||||
this, SIGNAL(onlineStateChanged(bool)));
|
||||
connect(priv, SIGNAL(configurationUpdateComplete()),
|
||||
this, SIGNAL(updateCompleted()));
|
||||
|
||||
priv->enablePolling();
|
||||
priv->enablePolling();
|
||||
}
|
||||
}
|
||||
|
||||
/*!
|
||||
|
@ -258,7 +258,8 @@ QNetworkSession::QNetworkSession(const QNetworkConfiguration &connectionConfig,
|
||||
|
||||
// invalid configuration
|
||||
if (!connectionConfig.identifier().isEmpty()) {
|
||||
const auto engines = qNetworkConfigurationManagerPrivate()->engines();
|
||||
auto priv = qNetworkConfigurationManagerPrivate();
|
||||
const auto engines = priv ? priv->engines() : QList<QBearerEngine *>();
|
||||
for (QBearerEngine *engine : engines) {
|
||||
if (engine->hasIdentifier(connectionConfig.identifier())) {
|
||||
d = engine->createSessionBackend();
|
||||
|
@ -265,6 +265,8 @@ static RoleMapping map[] = {
|
||||
//: Role of an accessible object
|
||||
{ QAccessible::Desktop, ATSPI_ROLE_DESKTOP_FRAME, QT_TRANSLATE_NOOP("QSpiAccessibleBridge", "desktop") },
|
||||
//: Role of an accessible object
|
||||
{ QAccessible::Notification, ATSPI_ROLE_NOTIFICATION, QT_TRANSLATE_NOOP("QSpiAccessibleBridge", "notification") },
|
||||
//: Role of an accessible object
|
||||
{ QAccessible::UserRole, ATSPI_ROLE_UNKNOWN, QT_TRANSLATE_NOOP("QSpiAccessibleBridge", "unknown") }
|
||||
};
|
||||
|
||||
|
@ -56,12 +56,13 @@ QT_BEGIN_NAMESPACE
|
||||
static QBearerEngineImpl *getEngineFromId(const QString &id)
|
||||
{
|
||||
QNetworkConfigurationManagerPrivate *priv = qNetworkConfigurationManagerPrivate();
|
||||
|
||||
const auto engines = priv->engines();
|
||||
for (QBearerEngine *engine : engines) {
|
||||
QBearerEngineImpl *engineImpl = qobject_cast<QBearerEngineImpl *>(engine);
|
||||
if (engineImpl && engineImpl->hasIdentifier(id))
|
||||
return engineImpl;
|
||||
if (priv) {
|
||||
const auto engines = priv->engines();
|
||||
for (QBearerEngine *engine : engines) {
|
||||
QBearerEngineImpl *engineImpl = qobject_cast<QBearerEngineImpl *>(engine);
|
||||
if (engineImpl && engineImpl->hasIdentifier(id))
|
||||
return engineImpl;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -151,6 +151,9 @@ private slots:
|
||||
private:
|
||||
void sendInputMethodEvent(QInputMethodEvent *event);
|
||||
QSharedPointer<QInputMethodQueryEvent> focusObjectInputMethodQuery(Qt::InputMethodQueries queries = Qt::ImQueryAll);
|
||||
bool focusObjectIsComposing() const;
|
||||
void focusObjectStartComposing();
|
||||
bool focusObjectStopComposing();
|
||||
|
||||
private:
|
||||
ExtractedText m_extractedText;
|
||||
@ -158,9 +161,8 @@ private:
|
||||
int m_composingTextStart;
|
||||
int m_composingCursor;
|
||||
QMetaObject::Connection m_updateCursorPosConnection;
|
||||
bool m_blockUpdateSelection;
|
||||
HandleModes m_handleMode;
|
||||
QAtomicInt m_batchEditNestingLevel;
|
||||
int m_batchEditNestingLevel;
|
||||
QObject *m_focusObject;
|
||||
QTimer m_hideCursorHandleTimer;
|
||||
};
|
||||
|
@ -55,6 +55,7 @@ public:
|
||||
QNSWindowBackingStore(QWindow *window);
|
||||
~QNSWindowBackingStore();
|
||||
|
||||
void resize(const QSize &size, const QRegion &staticContents) override;
|
||||
void flush(QWindow *, const QRegion &, const QPoint &) override;
|
||||
|
||||
private:
|
||||
|
@ -71,6 +71,24 @@ QImage::Format QNSWindowBackingStore::format() const
|
||||
return QRasterBackingStore::format();
|
||||
}
|
||||
|
||||
void QNSWindowBackingStore::resize(const QSize &size, const QRegion &staticContents)
|
||||
{
|
||||
qCDebug(lcQpaBackingStore) << "Resize requested to" << size;
|
||||
QRasterBackingStore::resize(size, staticContents);
|
||||
|
||||
// The window shadow rendered by AppKit is based on the shape/content of the
|
||||
// NSWindow surface. Technically any flush of the backingstore can result in
|
||||
// a potentially new shape of the window, and would need a shadow invalidation,
|
||||
// but this is likely too expensive to do at every flush for the few cases where
|
||||
// clients change the shape dynamically. One case where we do know that the shadow
|
||||
// likely needs invalidation, if the window has partially transparent content,
|
||||
// is after a resize, where AppKit's default shadow may be based on the previous
|
||||
// window content.
|
||||
QCocoaWindow *cocoaWindow = static_cast<QCocoaWindow *>(window()->handle());
|
||||
if (cocoaWindow->isContentView() && !cocoaWindow->isOpaque())
|
||||
cocoaWindow->m_needsInvalidateShadow = true;
|
||||
}
|
||||
|
||||
/*!
|
||||
Flushes the given \a region from the specified \a window onto the
|
||||
screen.
|
||||
@ -217,6 +235,7 @@ void QNSWindowBackingStore::flush(QWindow *window, const QRegion ®ion, const
|
||||
|
||||
QCocoaWindow *topLevelCocoaWindow = static_cast<QCocoaWindow *>(topLevelWindow->handle());
|
||||
if (Q_UNLIKELY(topLevelCocoaWindow->m_needsInvalidateShadow)) {
|
||||
qCDebug(lcQpaBackingStore) << "Invalidating window shadow for" << topLevelCocoaWindow;
|
||||
[topLevelView.window invalidateShadow];
|
||||
topLevelCocoaWindow->m_needsInvalidateShadow = false;
|
||||
}
|
||||
@ -382,10 +401,11 @@ void QCALayerBackingStore::ensureBackBuffer()
|
||||
|
||||
bool QCALayerBackingStore::recreateBackBufferIfNeeded()
|
||||
{
|
||||
const qreal devicePixelRatio = window()->devicePixelRatio();
|
||||
const QCocoaWindow *platformWindow = static_cast<QCocoaWindow *>(window()->handle());
|
||||
const qreal devicePixelRatio = platformWindow->devicePixelRatio();
|
||||
QSize requestedBufferSize = m_requestedSize * devicePixelRatio;
|
||||
|
||||
const NSView *backingStoreView = static_cast<QCocoaWindow *>(window()->handle())->view();
|
||||
const NSView *backingStoreView = platformWindow->view();
|
||||
Q_UNUSED(backingStoreView);
|
||||
|
||||
auto bufferSizeMismatch = [&](const QSize requested, const QSize actual) {
|
||||
|
@ -191,6 +191,7 @@ public:
|
||||
static void waitingObserverCallback(CFRunLoopObserverRef observer,
|
||||
CFRunLoopActivity activity, void *info);
|
||||
static void firstLoopEntry(CFRunLoopObserverRef ref, CFRunLoopActivity activity, void *info);
|
||||
bool sendQueuedUserInputEvents();
|
||||
void processPostedEvents();
|
||||
};
|
||||
|
||||
|
@ -377,16 +377,9 @@ bool QCocoaEventDispatcher::processEvents(QEventLoop::ProcessEventsFlags flags)
|
||||
NSEvent* event = nil;
|
||||
|
||||
// First, send all previously excluded input events, if any:
|
||||
if (!excludeUserEvents) {
|
||||
while (!d->queuedUserInputEvents.isEmpty()) {
|
||||
event = static_cast<NSEvent *>(d->queuedUserInputEvents.takeFirst());
|
||||
if (!filterNativeEvent("NSEvent", event, nullptr)) {
|
||||
[NSApp sendEvent:event];
|
||||
retVal = true;
|
||||
}
|
||||
[event release];
|
||||
}
|
||||
}
|
||||
if (d->sendQueuedUserInputEvents())
|
||||
retVal = true;
|
||||
|
||||
|
||||
// If Qt is used as a plugin, or as an extension in a native cocoa
|
||||
// application, we should not run or stop NSApplication; This will be
|
||||
@ -843,6 +836,23 @@ void QCocoaEventDispatcherPrivate::waitingObserverCallback(CFRunLoopObserverRef,
|
||||
emit static_cast<QCocoaEventDispatcher*>(info)->awake();
|
||||
}
|
||||
|
||||
bool QCocoaEventDispatcherPrivate::sendQueuedUserInputEvents()
|
||||
{
|
||||
Q_Q(QCocoaEventDispatcher);
|
||||
if (processEventsFlags & QEventLoop::ExcludeUserInputEvents)
|
||||
return false;
|
||||
bool didSendEvent = false;
|
||||
while (!queuedUserInputEvents.isEmpty()) {
|
||||
NSEvent *event = static_cast<NSEvent *>(queuedUserInputEvents.takeFirst());
|
||||
if (!q->filterNativeEvent("NSEvent", event, nullptr)) {
|
||||
[NSApp sendEvent:event];
|
||||
didSendEvent = true;
|
||||
}
|
||||
[event release];
|
||||
}
|
||||
return didSendEvent;
|
||||
}
|
||||
|
||||
void QCocoaEventDispatcherPrivate::processPostedEvents()
|
||||
{
|
||||
if (blockSendPostedEvents) {
|
||||
@ -896,6 +906,7 @@ void QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void *info)
|
||||
d->maybeCancelWaitForMoreEvents();
|
||||
return;
|
||||
}
|
||||
d->sendQueuedUserInputEvents();
|
||||
d->processPostedEvents();
|
||||
d->maybeCancelWaitForMoreEvents();
|
||||
}
|
||||
|
@ -1011,16 +1011,16 @@ void QCocoaWindow::setMask(const QRegion ®ion)
|
||||
} else {
|
||||
m_view.layer.mask = nil;
|
||||
}
|
||||
}
|
||||
|
||||
if (isContentView()) {
|
||||
// Setting the mask requires invalidating the NSWindow shadow, but that needs
|
||||
// to happen after the backingstore has been redrawn, so that AppKit can pick
|
||||
// up the new window shape based on the backingstore content. Doing a display
|
||||
// directly here is not an option, as the window might not be exposed at this
|
||||
// time, and so would not result in an updated backingstore.
|
||||
m_needsInvalidateShadow = true;
|
||||
[m_view setNeedsDisplay:YES];
|
||||
} else {
|
||||
if (isContentView()) {
|
||||
// Setting the mask requires invalidating the NSWindow shadow, but that needs
|
||||
// to happen after the backingstore has been redrawn, so that AppKit can pick
|
||||
// up the new window shape based on the backingstore content. Doing a display
|
||||
// directly here is not an option, as the window might not be exposed at this
|
||||
// time, and so would not result in an updated backingstore.
|
||||
m_needsInvalidateShadow = true;
|
||||
[m_view setNeedsDisplay:YES];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -101,6 +101,8 @@
|
||||
- (id)accessibilityElementAtIndex:(NSInteger)index
|
||||
{
|
||||
[self initAccessibility];
|
||||
if (index >= [m_accessibleElements count])
|
||||
return nil;
|
||||
return m_accessibleElements[index];
|
||||
}
|
||||
|
||||
@ -110,4 +112,10 @@
|
||||
return [m_accessibleElements indexOfObject:element];
|
||||
}
|
||||
|
||||
- (NSArray *)accessibilityElements
|
||||
{
|
||||
[self initAccessibility];
|
||||
return m_accessibleElements;
|
||||
}
|
||||
|
||||
@end
|
||||
|
@ -77,6 +77,7 @@
|
||||
#include <QtCore/qoperatingsystemversion.h>
|
||||
#include <QtCore/qsysinfo.h>
|
||||
#include <QtCore/qscopedpointer.h>
|
||||
#include <QtCore/quuid.h>
|
||||
#include <QtCore/private/qsystemlibrary_p.h>
|
||||
|
||||
#include <QtEventDispatcherSupport/private/qwindowsguieventdispatcher_p.h>
|
||||
@ -544,7 +545,7 @@ QString QWindowsContext::registerWindowClass(QString cname,
|
||||
// each one has to have window class names with a unique name
|
||||
// The first instance gets the unmodified name; if the class
|
||||
// has already been registered by another instance of Qt then
|
||||
// add an instance-specific ID, the address of the window proc.
|
||||
// add a UUID.
|
||||
static int classExists = -1;
|
||||
|
||||
const HINSTANCE appInstance = static_cast<HINSTANCE>(GetModuleHandle(nullptr));
|
||||
@ -555,7 +556,7 @@ QString QWindowsContext::registerWindowClass(QString cname,
|
||||
}
|
||||
|
||||
if (classExists)
|
||||
cname += QString::number(reinterpret_cast<quintptr>(proc));
|
||||
cname += QUuid::createUuid().toString();
|
||||
|
||||
if (d->m_registeredWindowClassNames.contains(cname)) // already registered in our list
|
||||
return cname;
|
||||
|
@ -204,7 +204,6 @@ QGLXContext::QGLXContext(QXcbScreen *screen, const QSurfaceFormat &format, QPlat
|
||||
, m_shareContext(0)
|
||||
, m_format(format)
|
||||
, m_isPBufferCurrent(false)
|
||||
, m_swapInterval(-1)
|
||||
, m_ownsContext(nativeHandle.isNull())
|
||||
, m_getGraphicsResetStatus(0)
|
||||
, m_lost(false)
|
||||
@ -567,9 +566,9 @@ bool QGLXContext::makeCurrent(QPlatformSurface *surface)
|
||||
|
||||
if (success && surfaceClass == QSurface::Window) {
|
||||
int interval = surface->format().swapInterval();
|
||||
QXcbWindow *window = static_cast<QXcbWindow *>(surface);
|
||||
QXcbScreen *screen = screenForPlatformSurface(surface);
|
||||
if (interval >= 0 && m_swapInterval != interval && screen) {
|
||||
m_swapInterval = interval;
|
||||
if (interval >= 0 && interval != window->swapInterval() && screen) {
|
||||
typedef void (*qt_glXSwapIntervalEXT)(Display *, GLXDrawable, int);
|
||||
typedef void (*qt_glXSwapIntervalMESA)(unsigned int);
|
||||
static qt_glXSwapIntervalEXT glXSwapIntervalEXT = 0;
|
||||
@ -588,6 +587,7 @@ bool QGLXContext::makeCurrent(QPlatformSurface *surface)
|
||||
glXSwapIntervalEXT(m_display, glxDrawable, interval);
|
||||
else if (glXSwapIntervalMESA)
|
||||
glXSwapIntervalMESA(interval);
|
||||
window->setSwapInterval(interval);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -87,7 +87,6 @@ private:
|
||||
GLXContext m_shareContext;
|
||||
QSurfaceFormat m_format;
|
||||
bool m_isPBufferCurrent;
|
||||
int m_swapInterval;
|
||||
bool m_ownsContext;
|
||||
GLenum (APIENTRY * m_getGraphicsResetStatus)();
|
||||
bool m_lost;
|
||||
|
@ -184,6 +184,9 @@ public:
|
||||
static void setWindowTitle(const QXcbConnection *conn, xcb_window_t window, const QString &title);
|
||||
static QString windowTitle(const QXcbConnection *conn, xcb_window_t window);
|
||||
|
||||
int swapInterval() const { return m_swapInterval; }
|
||||
void setSwapInterval(int swapInterval) { m_swapInterval = swapInterval; }
|
||||
|
||||
public Q_SLOTS:
|
||||
void updateSyncRequestCounter();
|
||||
|
||||
@ -276,6 +279,7 @@ protected:
|
||||
SyncState m_syncState = NoSyncNeeded;
|
||||
|
||||
QXcbSyncWindowRequest *m_pendingSyncRequest = nullptr;
|
||||
int m_swapInterval = -1;
|
||||
};
|
||||
|
||||
class QXcbForeignWindow : public QXcbWindow
|
||||
|
@ -2555,11 +2555,12 @@ int QMacStyle::pixelMetric(PixelMetric metric, const QStyleOption *opt, const QW
|
||||
|
||||
QPalette QMacStyle::standardPalette() const
|
||||
{
|
||||
QPalette pal = QCommonStyle::standardPalette();
|
||||
pal.setColor(QPalette::Disabled, QPalette::Dark, QColor(191, 191, 191));
|
||||
pal.setColor(QPalette::Active, QPalette::Dark, QColor(191, 191, 191));
|
||||
pal.setColor(QPalette::Inactive, QPalette::Dark, QColor(191, 191, 191));
|
||||
return pal;
|
||||
auto platformTheme = QGuiApplicationPrivate::platformTheme();
|
||||
auto styleNames = platformTheme->themeHint(QPlatformTheme::StyleNames);
|
||||
if (styleNames.toStringList().contains("macintosh"))
|
||||
return *platformTheme->palette();
|
||||
else
|
||||
return QStyle::standardPalette();
|
||||
}
|
||||
|
||||
int QMacStyle::styleHint(StyleHint sh, const QStyleOption *opt, const QWidget *w,
|
||||
|
@ -3706,17 +3706,6 @@ void QStyleSheetStyle::drawControl(ControlElement ce, const QStyleOption *opt, Q
|
||||
bool dis = !(opt->state & QStyle::State_Enabled),
|
||||
act = opt->state & QStyle::State_Selected;
|
||||
|
||||
int checkableOffset = 0;
|
||||
if (checkable) {
|
||||
QRenderRule subSubRule = renderRule(w, opt, PseudoElement_MenuCheckMark);
|
||||
QStyleOptionMenuItem newMi = mi;
|
||||
newMi.rect = positionRect(w, subRule, subSubRule, PseudoElement_MenuCheckMark, opt->rect, opt->direction);
|
||||
// align with icons if there are some
|
||||
checkableOffset = std::max(m->maxIconWidth, newMi.rect.width());
|
||||
if (subSubRule.hasDrawable() || checked)
|
||||
drawPrimitive(PE_IndicatorMenuCheckMark, &newMi, p, w);
|
||||
}
|
||||
|
||||
if (!mi.icon.isNull()) {
|
||||
QIcon::Mode mode = dis ? QIcon::Disabled : QIcon::Normal;
|
||||
if (act && !dis)
|
||||
@ -3733,24 +3722,28 @@ void QStyleSheetStyle::drawControl(ControlElement ce, const QStyleOption *opt, Q
|
||||
}
|
||||
QRect iconRect = positionRect(w, subRule, iconRule, PseudoElement_MenuIcon, opt->rect, opt->direction);
|
||||
if (opt->direction == Qt::LeftToRight)
|
||||
iconRect.moveLeft(iconRect.left() + checkableOffset);
|
||||
iconRect.moveLeft(iconRect.left());
|
||||
else
|
||||
iconRect.moveRight(iconRect.right() - checkableOffset);
|
||||
iconRect.moveRight(iconRect.right());
|
||||
iconRule.drawRule(p, iconRect);
|
||||
QRect pmr(0, 0, pixw, pixh);
|
||||
pmr.moveCenter(iconRect.center());
|
||||
p->drawPixmap(pmr.topLeft(), pixmap);
|
||||
} else if (checkable) {
|
||||
QRenderRule subSubRule = renderRule(w, opt, PseudoElement_MenuCheckMark);
|
||||
if (subSubRule.hasDrawable() || checked) {
|
||||
QStyleOptionMenuItem newMi = mi;
|
||||
if (!dis)
|
||||
newMi.state |= State_Enabled;
|
||||
if (act)
|
||||
newMi.state |= State_On;
|
||||
newMi.rect = positionRect(w, subRule, subSubRule, PseudoElement_MenuCheckMark, opt->rect, opt->direction);
|
||||
drawPrimitive(PE_IndicatorMenuCheckMark, &newMi, p, w);
|
||||
}
|
||||
}
|
||||
|
||||
int textOffset = 0;
|
||||
// padding overrules it all
|
||||
if (!subRule.hasBox() || subRule.box()->paddings[LeftEdge] == 0) {
|
||||
textOffset = checkableOffset;
|
||||
if (!m->icon.isNull() || !checkable)
|
||||
textOffset += m->maxIconWidth;
|
||||
}
|
||||
QRect textRect = subRule.contentsRect(opt->rect);
|
||||
textRect.setLeft(textRect.left() + textOffset);
|
||||
textRect.setLeft(textRect.left() + m->maxIconWidth);
|
||||
textRect.setWidth(textRect.width() - mi.tabWidth);
|
||||
const QRect vTextRect = visualRect(opt->direction, m->rect, textRect);
|
||||
|
||||
@ -5101,27 +5094,20 @@ QSize QStyleSheetStyle::sizeFromContents(ContentsType ct, const QStyleOption *op
|
||||
if (mi->text.contains(QLatin1Char('\t')))
|
||||
sz.rwidth() += 12; //as in QCommonStyle
|
||||
bool checkable = mi->checkType != QStyleOptionMenuItem::NotCheckable;
|
||||
int checkableWidth = 0;
|
||||
if (checkable) {
|
||||
if (!mi->icon.isNull()) {
|
||||
const int pmSmall = pixelMetric(PM_SmallIconSize);
|
||||
const QSize pmSize = mi->icon.actualSize(QSize(pmSmall, pmSmall));
|
||||
sz.rwidth() += pmSize.width() + 4;
|
||||
} else if (checkable) {
|
||||
QRenderRule subSubRule = renderRule(w, opt, PseudoElement_MenuCheckMark);
|
||||
QRect checkmarkRect = positionRect(w, subRule, subSubRule, PseudoElement_MenuCheckMark, opt->rect, opt->direction);
|
||||
checkableWidth = std::max(mi->maxIconWidth, checkmarkRect.width());
|
||||
}
|
||||
if (!mi->icon.isNull()) {
|
||||
QPixmap pixmap = mi->icon.pixmap(pixelMetric(PM_SmallIconSize));
|
||||
sz.rwidth() += pixmap.width();
|
||||
sz.rwidth() += std::max(mi->maxIconWidth, checkmarkRect.width()) + 4;
|
||||
}
|
||||
if (subRule.hasFont) {
|
||||
QFontMetrics fm(subRule.font);
|
||||
const QRect r = fm.boundingRect(QRect(), Qt::TextSingleLine | Qt::TextShowMnemonic, mi->text);
|
||||
sz = sz.expandedTo(r.size());
|
||||
}
|
||||
// padding overrules it all
|
||||
if (!subRule.hasBox() || subRule.box()->paddings[LeftEdge] == 0) {
|
||||
sz.rwidth() += checkableWidth;
|
||||
if (!mi->icon.isNull() || !checkable)
|
||||
sz.rwidth() += mi->maxIconWidth;
|
||||
}
|
||||
return subRule.boxSize(subRule.adjustSize(sz));
|
||||
}
|
||||
}
|
||||
|
BIN
tests/auto/gui/image/qimagereader/images/qticon16.png
Normal file
BIN
tests/auto/gui/image/qimagereader/images/qticon16.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
BIN
tests/auto/gui/image/qimagereader/images/qticon16@2x.png
Normal file
BIN
tests/auto/gui/image/qimagereader/images/qticon16@2x.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.1 KiB |
BIN
tests/auto/gui/image/qimagereader/images/qticon16@3x.png
Normal file
BIN
tests/auto/gui/image/qimagereader/images/qticon16@3x.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.2 KiB |
@ -164,6 +164,9 @@ private slots:
|
||||
void preserveTexts_data();
|
||||
void preserveTexts();
|
||||
|
||||
void devicePixelRatio_data();
|
||||
void devicePixelRatio();
|
||||
|
||||
private:
|
||||
QString prefix;
|
||||
QTemporaryDir m_temporaryDir;
|
||||
@ -1976,6 +1979,28 @@ void tst_QImageReader::preserveTexts()
|
||||
QCOMPARE(r.text(key3), text3.simplified());
|
||||
}
|
||||
|
||||
void tst_QImageReader::devicePixelRatio_data()
|
||||
{
|
||||
QTest::addColumn<QString>("fileName");
|
||||
QTest::addColumn<QSize>("size");
|
||||
QTest::addColumn<qreal>("dpr");
|
||||
|
||||
QTest::newRow("1x") << "qticon16.png" << QSize(16, 16) << 1.0;
|
||||
QTest::newRow("2x") << "qticon16@2x.png" << QSize(32, 32) << 2.0;
|
||||
QTest::newRow("3x") << "qticon16@3x.png" << QSize(48, 48) << 3.0;
|
||||
}
|
||||
|
||||
void tst_QImageReader::devicePixelRatio()
|
||||
{
|
||||
QFETCH(QString, fileName);
|
||||
QFETCH(QSize, size);
|
||||
QFETCH(qreal, dpr);
|
||||
|
||||
QImageReader r(":/images/" + fileName);
|
||||
QImage img = r.read();
|
||||
QCOMPARE(img.size(), size);
|
||||
QCOMPARE(img.devicePixelRatio(), dpr);
|
||||
}
|
||||
|
||||
QTEST_MAIN(tst_QImageReader)
|
||||
#include "tst_qimagereader.moc"
|
||||
|
@ -2342,7 +2342,7 @@ void tst_QFtp::loginURL()
|
||||
|
||||
ftp = newFtp();
|
||||
addCommand(QFtp::ConnectToHost,
|
||||
ftp->connectToHost(QHostInfo::localHostName(), port));
|
||||
ftp->connectToHost("127.0.0.1", port));
|
||||
addCommand(QFtp::Login, ftp->login(user, password));
|
||||
|
||||
QTestEventLoop::instance().enterLoop(5);
|
||||
@ -2350,7 +2350,7 @@ void tst_QFtp::loginURL()
|
||||
ftp = nullptr;
|
||||
server.stopServer();
|
||||
if (QTestEventLoop::instance().timeout())
|
||||
QFAIL(msgTimedOut(QHostInfo::localHostName(), port));
|
||||
QFAIL(msgTimedOut("127.0.0.1", port));
|
||||
|
||||
QCOMPARE(server.getRawUser(), rawUser);
|
||||
QCOMPARE(server.getRawPassword(), rawPass);
|
||||
|
@ -34,3 +34,14 @@ setPen blue 40 solidline roundcap
|
||||
drawPath revbez
|
||||
setPen red 0
|
||||
drawPath revbez
|
||||
|
||||
resetMatrix
|
||||
path_lineTo tightJoin 60 10
|
||||
path_cubicTo tightJoin 50 0 100 0 100 50
|
||||
|
||||
translate 50 500
|
||||
|
||||
setPen green 40 solidline roundcap roundjoin
|
||||
drawPath tightJoin
|
||||
setPen red 0
|
||||
drawPath tightJoin
|
||||
|
Loading…
x
Reference in New Issue
Block a user