diff options
Diffstat (limited to 'sources')
-rw-r--r-- | sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml | 20 | ||||
-rw-r--r-- | sources/pyside2/PySide2/glue/qtgui.cpp | 10 |
2 files changed, 30 insertions, 0 deletions
diff --git a/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml b/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml index cf01b234a..cadfc33fa 100644 --- a/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml +++ b/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml @@ -2905,6 +2905,26 @@ <modify-function signature="setUniformValueArray(const char*,const unsigned int*,int)"> <modify-argument index="2"><array/></modify-argument> </modify-function> + <!-- Add explicit signatures for the setUniformValue functions --> + <modify-function signature="setUniformValue(const char*, GLfloat)" remove="all"/> + <modify-function signature="setUniformValue(const char*, GLint)" remove="all"/> + <modify-function signature="setUniformValue(const char*, GLuint)" remove="all"/> + <modify-function signature="setUniformValue(int, GLfloat)" remove="all"/> + <modify-function signature="setUniformValue(int, GLint)" remove="all"/> + <modify-function signature="setUniformValue(int, GLuint)" remove="all"/> + <!-- No need for a signature for GLuint, since Qt (internally) calls the same function: glUniform1i --> + <add-function signature="setUniformValue1f(const char*, float)" return-type="void"> + <inject-code file="../glue/qtgui.cpp" snippet="qopenglshaderprogram_setuniformvalue_float"/> + </add-function> + <add-function signature="setUniformValue1i(const char*, int)" return-type="void"> + <inject-code file="../glue/qtgui.cpp" snippet="qopenglshaderprogram_setuniformvalue_int"/> + </add-function> + <add-function signature="setUniformValue1f(int, float)" return-type="void"> + <inject-code file="../glue/qtgui.cpp" snippet="qopenglshaderprogram_setuniformvalue_float"/> + </add-function> + <add-function signature="setUniformValue1i(int, int)" return-type="void"> + <inject-code file="../glue/qtgui.cpp" snippet="qopenglshaderprogram_setuniformvalue_int"/> + </add-function> </object-type> <object-type name="QOpenGLTexture" since="5.2"> <enum-type name="BindingTarget"/> diff --git a/sources/pyside2/PySide2/glue/qtgui.cpp b/sources/pyside2/PySide2/glue/qtgui.cpp index 4ae3eef75..aef9e4b59 100644 --- a/sources/pyside2/PySide2/glue/qtgui.cpp +++ b/sources/pyside2/PySide2/glue/qtgui.cpp @@ -115,6 +115,16 @@ if (doc) { } // @snippet qtextblock-userdata +// @snippet qopenglshaderprogram_setuniformvalue_float +float value = %2; +%CPPSELF.setUniformValue(%1, value); +// @snippet qopenglshaderprogram_setuniformvalue_float + +// @snippet qopenglshaderprogram_setuniformvalue_int +int value = %2; +%CPPSELF.setUniformValue(%1, value); +// @snippet qopenglshaderprogram_setuniformvalue_int + // @snippet qpolygon-reduce PyObject *points = PyList_New(%CPPSELF.count()); for (int i = 0, i_max = %CPPSELF.count(); i < i_max; ++i){ |