aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2019-04-24 14:24:06 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2019-04-24 14:24:09 +0200
commit8b892f71b749a623724ccecca881972a33c9d559 (patch)
tree88d7a2371481cafd559d4895efa41b6f166ed8ac /sources/pyside2
parentfff6ea0059b7394869166a01674a9afa230bc3a9 (diff)
parenta7038d87ba6ec3b2beeee166930c24f290f6478f (diff)
Merge remote-tracking branch 'origin/5.12' into 5.13
Diffstat (limited to 'sources/pyside2')
-rw-r--r--sources/pyside2/PySide2/Qt3DAnimation/typesystem_3danimation.xml2
-rw-r--r--sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml2
-rw-r--r--sources/pyside2/PySide2/Qt3DExtras/typesystem_3dextras.xml2
-rw-r--r--sources/pyside2/PySide2/Qt3DInput/typesystem_3dinput.xml2
-rw-r--r--sources/pyside2/PySide2/Qt3DLogic/typesystem_3dlogic.xml2
-rw-r--r--sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml2
-rw-r--r--sources/pyside2/PySide2/QtAxContainer/typesystem_axcontainer.xml2
-rw-r--r--sources/pyside2/PySide2/QtCharts/typesystem_charts.xml2
-rw-r--r--sources/pyside2/PySide2/QtConcurrent/typesystem_concurrent.xml2
-rw-r--r--sources/pyside2/PySide2/QtCore/typesystem_core_common.xml2
-rw-r--r--sources/pyside2/PySide2/QtCore/typesystem_core_mac.xml2
-rw-r--r--sources/pyside2/PySide2/QtCore/typesystem_core_win.xml2
-rw-r--r--sources/pyside2/PySide2/QtCore/typesystem_core_x11.xml2
-rw-r--r--sources/pyside2/PySide2/QtDataVisualization/typesystem_datavisualization.xml2
-rw-r--r--sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml25
-rw-r--r--sources/pyside2/PySide2/QtGui/typesystem_gui_mac.xml2
-rw-r--r--sources/pyside2/PySide2/QtGui/typesystem_gui_win.xml2
-rw-r--r--sources/pyside2/PySide2/QtGui/typesystem_gui_x11.xml2
-rw-r--r--sources/pyside2/PySide2/QtHelp/typesystem_help.xml2
-rw-r--r--sources/pyside2/PySide2/QtLocation/typesystem_location.xml2
-rw-r--r--sources/pyside2/PySide2/QtMacExtras/typesystem_macextras.xml2
-rw-r--r--sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia.xml2
-rw-r--r--sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_common.xml2
-rw-r--r--sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_forward_declarations.xml2
-rw-r--r--sources/pyside2/PySide2/QtMultimediaWidgets/typesystem_multimediawidgets.xml2
-rw-r--r--sources/pyside2/PySide2/QtNetwork/typesystem_network.xml2
-rw-r--r--sources/pyside2/PySide2/QtOpenGL/typesystem_opengl.xml2
-rw-r--r--sources/pyside2/PySide2/QtPositioning/typesystem_positioning.xml2
-rw-r--r--sources/pyside2/PySide2/QtPrintSupport/typesystem_printsupport_common.xml2
-rw-r--r--sources/pyside2/PySide2/QtQml/typesystem_qml.xml2
-rw-r--r--sources/pyside2/PySide2/QtQuick/typesystem_quick.xml2
-rw-r--r--sources/pyside2/PySide2/QtQuickWidgets/typesystem_quickwidgets.xml2
-rw-r--r--sources/pyside2/PySide2/QtRemoteObjects/typesystem_remoteobjects.xml2
-rw-r--r--sources/pyside2/PySide2/QtScript/typesystem_script.xml2
-rw-r--r--sources/pyside2/PySide2/QtScriptTools/typesystem_scripttools.xml2
-rw-r--r--sources/pyside2/PySide2/QtScxml/typesystem_scxml.xml2
-rw-r--r--sources/pyside2/PySide2/QtSensors/typesystem_sensors.xml2
-rw-r--r--sources/pyside2/PySide2/QtSql/typesystem_sql.xml2
-rw-r--r--sources/pyside2/PySide2/QtSvg/typesystem_svg.xml2
-rw-r--r--sources/pyside2/PySide2/QtTest/typesystem_test.xml2
-rw-r--r--sources/pyside2/PySide2/QtTextToSpeech/typesystem_texttospeech.xml2
-rw-r--r--sources/pyside2/PySide2/QtUiTools/typesystem_uitools.xml2
-rw-r--r--sources/pyside2/PySide2/QtWebChannel/typesystem_webchannel.xml2
-rw-r--r--sources/pyside2/PySide2/QtWebEngine/typesystem_webengine.xml2
-rw-r--r--sources/pyside2/PySide2/QtWebEngineCore/typesystem_webenginecore.xml2
-rw-r--r--sources/pyside2/PySide2/QtWebEngineWidgets/typesystem_webenginewidgets.xml2
-rw-r--r--sources/pyside2/PySide2/QtWebKit/typesystem_webkit.xml2
-rw-r--r--sources/pyside2/PySide2/QtWebKitWidgets/typesystem_webkitwidgets.xml2
-rw-r--r--sources/pyside2/PySide2/QtWebSockets/typesystem_websockets.xml2
-rw-r--r--sources/pyside2/PySide2/QtWidgets/typesystem_widgets_common.xml2
-rw-r--r--sources/pyside2/PySide2/QtWidgets/typesystem_widgets_mac.xml2
-rw-r--r--sources/pyside2/PySide2/QtWidgets/typesystem_widgets_win.xml2
-rw-r--r--sources/pyside2/PySide2/QtWidgets/typesystem_widgets_x11.xml2
-rw-r--r--sources/pyside2/PySide2/QtWinExtras/typesystem_winextras.xml2
-rw-r--r--sources/pyside2/PySide2/QtX11Extras/typesystem_x11extras.xml2
-rw-r--r--sources/pyside2/PySide2/QtXml/typesystem_xml.xml2
-rw-r--r--sources/pyside2/PySide2/QtXmlPatterns/typesystem_xmlpatterns.xml2
-rw-r--r--sources/pyside2/PySide2/glue/qtcore.cpp4
-rw-r--r--sources/pyside2/PySide2/glue/qtgui.cpp10
-rw-r--r--sources/pyside2/PySide2/support/generate_pyi.py6
-rw-r--r--sources/pyside2/PySide2/templates/core_common.xml2
-rw-r--r--sources/pyside2/PySide2/templates/datavisualization_common.xml2
-rw-r--r--sources/pyside2/PySide2/templates/gui_common.xml2
-rw-r--r--sources/pyside2/PySide2/templates/opengl_common.xml2
-rw-r--r--sources/pyside2/PySide2/templates/webkitwidgets_common.xml2
-rw-r--r--sources/pyside2/PySide2/templates/widgets_common.xml2
-rw-r--r--sources/pyside2/PySide2/templates/xml_common.xml2
-rw-r--r--sources/pyside2/doc/CMakeLists.txt8
-rw-r--r--sources/pyside2/doc/contents.rst1
-rw-r--r--sources/pyside2/doc/deployment-cxfreeze.rst130
-rw-r--r--sources/pyside2/doc/deployment-fbs.rst106
-rw-r--r--sources/pyside2/doc/deployment-pyinstaller.rst124
-rw-r--r--sources/pyside2/doc/deployment.rst70
-rw-r--r--sources/pyside2/doc/faq.rst4
-rw-r--r--sources/pyside2/doc/tutorials/basictutorial/clickablebutton.rst6
-rw-r--r--sources/pyside2/doc/tutorials/basictutorial/dialog.rst6
-rw-r--r--sources/pyside2/doc/tutorials/basictutorial/uifiles.rst8
-rw-r--r--sources/pyside2/doc/tutorials/examples/tabbedbrowser.rst1
-rw-r--r--sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml2
79 files changed, 555 insertions, 82 deletions
diff --git a/sources/pyside2/PySide2/Qt3DAnimation/typesystem_3danimation.xml b/sources/pyside2/PySide2/Qt3DAnimation/typesystem_3danimation.xml
index cf72b8402..567d7e25a 100644
--- a/sources/pyside2/PySide2/Qt3DAnimation/typesystem_3danimation.xml
+++ b/sources/pyside2/PySide2/Qt3DAnimation/typesystem_3danimation.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml b/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml
index 83e96abe7..b7369f4a1 100644
--- a/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml
+++ b/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/Qt3DExtras/typesystem_3dextras.xml b/sources/pyside2/PySide2/Qt3DExtras/typesystem_3dextras.xml
index 54f4df3df..25fe11a59 100644
--- a/sources/pyside2/PySide2/Qt3DExtras/typesystem_3dextras.xml
+++ b/sources/pyside2/PySide2/Qt3DExtras/typesystem_3dextras.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/Qt3DInput/typesystem_3dinput.xml b/sources/pyside2/PySide2/Qt3DInput/typesystem_3dinput.xml
index 6107f0b26..a74c3ab93 100644
--- a/sources/pyside2/PySide2/Qt3DInput/typesystem_3dinput.xml
+++ b/sources/pyside2/PySide2/Qt3DInput/typesystem_3dinput.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/Qt3DLogic/typesystem_3dlogic.xml b/sources/pyside2/PySide2/Qt3DLogic/typesystem_3dlogic.xml
index ec9ed9ef6..1583f9e29 100644
--- a/sources/pyside2/PySide2/Qt3DLogic/typesystem_3dlogic.xml
+++ b/sources/pyside2/PySide2/Qt3DLogic/typesystem_3dlogic.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml b/sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml
index 9843a4591..be06a3135 100644
--- a/sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml
+++ b/sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtAxContainer/typesystem_axcontainer.xml b/sources/pyside2/PySide2/QtAxContainer/typesystem_axcontainer.xml
index 427a6f051..27746237a 100644
--- a/sources/pyside2/PySide2/QtAxContainer/typesystem_axcontainer.xml
+++ b/sources/pyside2/PySide2/QtAxContainer/typesystem_axcontainer.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtCharts/typesystem_charts.xml b/sources/pyside2/PySide2/QtCharts/typesystem_charts.xml
index 14224751c..b8550ef2c 100644
--- a/sources/pyside2/PySide2/QtCharts/typesystem_charts.xml
+++ b/sources/pyside2/PySide2/QtCharts/typesystem_charts.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtConcurrent/typesystem_concurrent.xml b/sources/pyside2/PySide2/QtConcurrent/typesystem_concurrent.xml
index bdf4e6fa7..7e7bd9bcc 100644
--- a/sources/pyside2/PySide2/QtConcurrent/typesystem_concurrent.xml
+++ b/sources/pyside2/PySide2/QtConcurrent/typesystem_concurrent.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml
index 17773be05..ef8b1b4c5 100644
--- a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml
+++ b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtCore/typesystem_core_mac.xml b/sources/pyside2/PySide2/QtCore/typesystem_core_mac.xml
index c1a1abcb3..6e1a55557 100644
--- a/sources/pyside2/PySide2/QtCore/typesystem_core_mac.xml
+++ b/sources/pyside2/PySide2/QtCore/typesystem_core_mac.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtCore/typesystem_core_win.xml b/sources/pyside2/PySide2/QtCore/typesystem_core_win.xml
index afd733b35..8e3fa6f5e 100644
--- a/sources/pyside2/PySide2/QtCore/typesystem_core_win.xml
+++ b/sources/pyside2/PySide2/QtCore/typesystem_core_win.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtCore/typesystem_core_x11.xml b/sources/pyside2/PySide2/QtCore/typesystem_core_x11.xml
index c3cbd3666..88cbf7638 100644
--- a/sources/pyside2/PySide2/QtCore/typesystem_core_x11.xml
+++ b/sources/pyside2/PySide2/QtCore/typesystem_core_x11.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtDataVisualization/typesystem_datavisualization.xml b/sources/pyside2/PySide2/QtDataVisualization/typesystem_datavisualization.xml
index 94e6f4b88..f10aeea3e 100644
--- a/sources/pyside2/PySide2/QtDataVisualization/typesystem_datavisualization.xml
+++ b/sources/pyside2/PySide2/QtDataVisualization/typesystem_datavisualization.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml b/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml
index eaff93345..cadfc33fa 100644
--- a/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml
+++ b/sources/pyside2/PySide2/QtGui/typesystem_gui_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
@@ -2878,6 +2878,9 @@
<modify-function signature="setAttributeArray(const char*,const float*,int,int)">
<modify-argument index="2"><array/></modify-argument>
</modify-function>
+ <modify-function signature="setAttributeArray(int,const float*,int,int)">
+ <modify-argument index="2"><array/></modify-argument>
+ </modify-function>
<modify-function signature="setAttributeValue(int,const float*,int,int)">
<modify-argument index="2"><array/></modify-argument>
</modify-function>
@@ -2902,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/QtGui/typesystem_gui_mac.xml b/sources/pyside2/PySide2/QtGui/typesystem_gui_mac.xml
index 4d24d5703..8b071a18b 100644
--- a/sources/pyside2/PySide2/QtGui/typesystem_gui_mac.xml
+++ b/sources/pyside2/PySide2/QtGui/typesystem_gui_mac.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtGui/typesystem_gui_win.xml b/sources/pyside2/PySide2/QtGui/typesystem_gui_win.xml
index 66d47d330..6386cbd25 100644
--- a/sources/pyside2/PySide2/QtGui/typesystem_gui_win.xml
+++ b/sources/pyside2/PySide2/QtGui/typesystem_gui_win.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtGui/typesystem_gui_x11.xml b/sources/pyside2/PySide2/QtGui/typesystem_gui_x11.xml
index 66d47d330..6386cbd25 100644
--- a/sources/pyside2/PySide2/QtGui/typesystem_gui_x11.xml
+++ b/sources/pyside2/PySide2/QtGui/typesystem_gui_x11.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtHelp/typesystem_help.xml b/sources/pyside2/PySide2/QtHelp/typesystem_help.xml
index 922dcde5d..cd62f8afd 100644
--- a/sources/pyside2/PySide2/QtHelp/typesystem_help.xml
+++ b/sources/pyside2/PySide2/QtHelp/typesystem_help.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtLocation/typesystem_location.xml b/sources/pyside2/PySide2/QtLocation/typesystem_location.xml
index d1885756e..6792992cf 100644
--- a/sources/pyside2/PySide2/QtLocation/typesystem_location.xml
+++ b/sources/pyside2/PySide2/QtLocation/typesystem_location.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtMacExtras/typesystem_macextras.xml b/sources/pyside2/PySide2/QtMacExtras/typesystem_macextras.xml
index 0fecf0459..d62ce48b8 100644
--- a/sources/pyside2/PySide2/QtMacExtras/typesystem_macextras.xml
+++ b/sources/pyside2/PySide2/QtMacExtras/typesystem_macextras.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia.xml b/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia.xml
index ebd003bf0..323c50ba8 100644
--- a/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia.xml
+++ b/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_common.xml b/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_common.xml
index a976c42fc..2e69f98e0 100644
--- a/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_common.xml
+++ b/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_forward_declarations.xml b/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_forward_declarations.xml
index fec0e2806..733e9b262 100644
--- a/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_forward_declarations.xml
+++ b/sources/pyside2/PySide2/QtMultimedia/typesystem_multimedia_forward_declarations.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtMultimediaWidgets/typesystem_multimediawidgets.xml b/sources/pyside2/PySide2/QtMultimediaWidgets/typesystem_multimediawidgets.xml
index 550ae17eb..690220528 100644
--- a/sources/pyside2/PySide2/QtMultimediaWidgets/typesystem_multimediawidgets.xml
+++ b/sources/pyside2/PySide2/QtMultimediaWidgets/typesystem_multimediawidgets.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtNetwork/typesystem_network.xml b/sources/pyside2/PySide2/QtNetwork/typesystem_network.xml
index 897b2efbc..e128d431e 100644
--- a/sources/pyside2/PySide2/QtNetwork/typesystem_network.xml
+++ b/sources/pyside2/PySide2/QtNetwork/typesystem_network.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtOpenGL/typesystem_opengl.xml b/sources/pyside2/PySide2/QtOpenGL/typesystem_opengl.xml
index a234e95d6..27c515170 100644
--- a/sources/pyside2/PySide2/QtOpenGL/typesystem_opengl.xml
+++ b/sources/pyside2/PySide2/QtOpenGL/typesystem_opengl.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtPositioning/typesystem_positioning.xml b/sources/pyside2/PySide2/QtPositioning/typesystem_positioning.xml
index 718b0b3e1..5a7208950 100644
--- a/sources/pyside2/PySide2/QtPositioning/typesystem_positioning.xml
+++ b/sources/pyside2/PySide2/QtPositioning/typesystem_positioning.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtPrintSupport/typesystem_printsupport_common.xml b/sources/pyside2/PySide2/QtPrintSupport/typesystem_printsupport_common.xml
index 5026997c1..c11a6e046 100644
--- a/sources/pyside2/PySide2/QtPrintSupport/typesystem_printsupport_common.xml
+++ b/sources/pyside2/PySide2/QtPrintSupport/typesystem_printsupport_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtQml/typesystem_qml.xml b/sources/pyside2/PySide2/QtQml/typesystem_qml.xml
index ef370ad02..b61b28c07 100644
--- a/sources/pyside2/PySide2/QtQml/typesystem_qml.xml
+++ b/sources/pyside2/PySide2/QtQml/typesystem_qml.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtQuick/typesystem_quick.xml b/sources/pyside2/PySide2/QtQuick/typesystem_quick.xml
index 2dc90b9e0..64b4e8412 100644
--- a/sources/pyside2/PySide2/QtQuick/typesystem_quick.xml
+++ b/sources/pyside2/PySide2/QtQuick/typesystem_quick.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtQuickWidgets/typesystem_quickwidgets.xml b/sources/pyside2/PySide2/QtQuickWidgets/typesystem_quickwidgets.xml
index e44ef8e6d..b77e06573 100644
--- a/sources/pyside2/PySide2/QtQuickWidgets/typesystem_quickwidgets.xml
+++ b/sources/pyside2/PySide2/QtQuickWidgets/typesystem_quickwidgets.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtRemoteObjects/typesystem_remoteobjects.xml b/sources/pyside2/PySide2/QtRemoteObjects/typesystem_remoteobjects.xml
index 8058cb56c..d8d54b4fb 100644
--- a/sources/pyside2/PySide2/QtRemoteObjects/typesystem_remoteobjects.xml
+++ b/sources/pyside2/PySide2/QtRemoteObjects/typesystem_remoteobjects.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtScript/typesystem_script.xml b/sources/pyside2/PySide2/QtScript/typesystem_script.xml
index f87e4cfdf..1fdad5d47 100644
--- a/sources/pyside2/PySide2/QtScript/typesystem_script.xml
+++ b/sources/pyside2/PySide2/QtScript/typesystem_script.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtScriptTools/typesystem_scripttools.xml b/sources/pyside2/PySide2/QtScriptTools/typesystem_scripttools.xml
index 770a2f25f..eefa09a54 100644
--- a/sources/pyside2/PySide2/QtScriptTools/typesystem_scripttools.xml
+++ b/sources/pyside2/PySide2/QtScriptTools/typesystem_scripttools.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtScxml/typesystem_scxml.xml b/sources/pyside2/PySide2/QtScxml/typesystem_scxml.xml
index f6402f7e8..c00052c2f 100644
--- a/sources/pyside2/PySide2/QtScxml/typesystem_scxml.xml
+++ b/sources/pyside2/PySide2/QtScxml/typesystem_scxml.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtSensors/typesystem_sensors.xml b/sources/pyside2/PySide2/QtSensors/typesystem_sensors.xml
index 5c82db229..31c0d2f53 100644
--- a/sources/pyside2/PySide2/QtSensors/typesystem_sensors.xml
+++ b/sources/pyside2/PySide2/QtSensors/typesystem_sensors.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtSql/typesystem_sql.xml b/sources/pyside2/PySide2/QtSql/typesystem_sql.xml
index c8a56a213..408b5cdce 100644
--- a/sources/pyside2/PySide2/QtSql/typesystem_sql.xml
+++ b/sources/pyside2/PySide2/QtSql/typesystem_sql.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtSvg/typesystem_svg.xml b/sources/pyside2/PySide2/QtSvg/typesystem_svg.xml
index 6523ce541..079a79e96 100644
--- a/sources/pyside2/PySide2/QtSvg/typesystem_svg.xml
+++ b/sources/pyside2/PySide2/QtSvg/typesystem_svg.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtTest/typesystem_test.xml b/sources/pyside2/PySide2/QtTest/typesystem_test.xml
index ea231f2ee..f7facaf7d 100644
--- a/sources/pyside2/PySide2/QtTest/typesystem_test.xml
+++ b/sources/pyside2/PySide2/QtTest/typesystem_test.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtTextToSpeech/typesystem_texttospeech.xml b/sources/pyside2/PySide2/QtTextToSpeech/typesystem_texttospeech.xml
index fee04f444..48a5bc9f4 100644
--- a/sources/pyside2/PySide2/QtTextToSpeech/typesystem_texttospeech.xml
+++ b/sources/pyside2/PySide2/QtTextToSpeech/typesystem_texttospeech.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtUiTools/typesystem_uitools.xml b/sources/pyside2/PySide2/QtUiTools/typesystem_uitools.xml
index c3b800454..7b27e8783 100644
--- a/sources/pyside2/PySide2/QtUiTools/typesystem_uitools.xml
+++ b/sources/pyside2/PySide2/QtUiTools/typesystem_uitools.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWebChannel/typesystem_webchannel.xml b/sources/pyside2/PySide2/QtWebChannel/typesystem_webchannel.xml
index a1cfb91f2..c47d5fa08 100644
--- a/sources/pyside2/PySide2/QtWebChannel/typesystem_webchannel.xml
+++ b/sources/pyside2/PySide2/QtWebChannel/typesystem_webchannel.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWebEngine/typesystem_webengine.xml b/sources/pyside2/PySide2/QtWebEngine/typesystem_webengine.xml
index 9b38bc1e6..7d0875a2c 100644
--- a/sources/pyside2/PySide2/QtWebEngine/typesystem_webengine.xml
+++ b/sources/pyside2/PySide2/QtWebEngine/typesystem_webengine.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWebEngineCore/typesystem_webenginecore.xml b/sources/pyside2/PySide2/QtWebEngineCore/typesystem_webenginecore.xml
index 67399b54f..eb1ab3d61 100644
--- a/sources/pyside2/PySide2/QtWebEngineCore/typesystem_webenginecore.xml
+++ b/sources/pyside2/PySide2/QtWebEngineCore/typesystem_webenginecore.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWebEngineWidgets/typesystem_webenginewidgets.xml b/sources/pyside2/PySide2/QtWebEngineWidgets/typesystem_webenginewidgets.xml
index cd4cd8a91..e0821a114 100644
--- a/sources/pyside2/PySide2/QtWebEngineWidgets/typesystem_webenginewidgets.xml
+++ b/sources/pyside2/PySide2/QtWebEngineWidgets/typesystem_webenginewidgets.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWebKit/typesystem_webkit.xml b/sources/pyside2/PySide2/QtWebKit/typesystem_webkit.xml
index 5feb61343..e92417f26 100644
--- a/sources/pyside2/PySide2/QtWebKit/typesystem_webkit.xml
+++ b/sources/pyside2/PySide2/QtWebKit/typesystem_webkit.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWebKitWidgets/typesystem_webkitwidgets.xml b/sources/pyside2/PySide2/QtWebKitWidgets/typesystem_webkitwidgets.xml
index dfabff81d..7760c1c3d 100644
--- a/sources/pyside2/PySide2/QtWebKitWidgets/typesystem_webkitwidgets.xml
+++ b/sources/pyside2/PySide2/QtWebKitWidgets/typesystem_webkitwidgets.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWebSockets/typesystem_websockets.xml b/sources/pyside2/PySide2/QtWebSockets/typesystem_websockets.xml
index cd81439cb..4257a998b 100644
--- a/sources/pyside2/PySide2/QtWebSockets/typesystem_websockets.xml
+++ b/sources/pyside2/PySide2/QtWebSockets/typesystem_websockets.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_common.xml b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_common.xml
index a41a27c33..207c3e831 100644
--- a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_common.xml
+++ b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_mac.xml b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_mac.xml
index b9aec3923..af607ce1e 100644
--- a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_mac.xml
+++ b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_mac.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_win.xml b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_win.xml
index 5bacf63fb..4c51907fe 100644
--- a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_win.xml
+++ b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_win.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_x11.xml b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_x11.xml
index 5bacf63fb..4c51907fe 100644
--- a/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_x11.xml
+++ b/sources/pyside2/PySide2/QtWidgets/typesystem_widgets_x11.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtWinExtras/typesystem_winextras.xml b/sources/pyside2/PySide2/QtWinExtras/typesystem_winextras.xml
index 2ffd7905d..ec17428a1 100644
--- a/sources/pyside2/PySide2/QtWinExtras/typesystem_winextras.xml
+++ b/sources/pyside2/PySide2/QtWinExtras/typesystem_winextras.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtX11Extras/typesystem_x11extras.xml b/sources/pyside2/PySide2/QtX11Extras/typesystem_x11extras.xml
index 5958f5a99..73fc2b77c 100644
--- a/sources/pyside2/PySide2/QtX11Extras/typesystem_x11extras.xml
+++ b/sources/pyside2/PySide2/QtX11Extras/typesystem_x11extras.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtXml/typesystem_xml.xml b/sources/pyside2/PySide2/QtXml/typesystem_xml.xml
index 59343543a..e1750fb80 100644
--- a/sources/pyside2/PySide2/QtXml/typesystem_xml.xml
+++ b/sources/pyside2/PySide2/QtXml/typesystem_xml.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/QtXmlPatterns/typesystem_xmlpatterns.xml b/sources/pyside2/PySide2/QtXmlPatterns/typesystem_xmlpatterns.xml
index dedcfdd7c..1e8eec083 100644
--- a/sources/pyside2/PySide2/QtXmlPatterns/typesystem_xmlpatterns.xml
+++ b/sources/pyside2/PySide2/QtXmlPatterns/typesystem_xmlpatterns.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/glue/qtcore.cpp b/sources/pyside2/PySide2/glue/qtcore.cpp
index 6259724c3..fde016548 100644
--- a/sources/pyside2/PySide2/glue/qtcore.cpp
+++ b/sources/pyside2/PySide2/glue/qtcore.cpp
@@ -1139,11 +1139,7 @@ if (PyBytes_Check(%PYARG_1)) {
Shiboken::SbkType<QByteArray>()->tp_as_buffer = &SbkQByteArrayBufferProc;
Shiboken::SbkType<QByteArray>()->tp_flags |= Py_TPFLAGS_HAVE_NEWBUFFER;
#else
-#ifdef Py_LIMITED_API
PepType_AS_BUFFER(Shiboken::SbkType<QByteArray>()) = &SbkQByteArrayBufferProc;
-#else
-Shiboken::SbkType<QByteArray>()->tp_as_buffer = &SbkQByteArrayBufferProc;
-#endif
#endif
// @snippet qbytearray-py3
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){
diff --git a/sources/pyside2/PySide2/support/generate_pyi.py b/sources/pyside2/PySide2/support/generate_pyi.py
index 3b4b3409a..f286e34f1 100644
--- a/sources/pyside2/PySide2/support/generate_pyi.py
+++ b/sources/pyside2/PySide2/support/generate_pyi.py
@@ -256,11 +256,7 @@ def generate_pyi(import_name, outpath, options):
logger.info("Generated: {outfilepath}".format(**locals()))
if is_py3:
# Python 3: We can check the file directly if the syntax is ok.
- try:
- subprocess.check_output([sys.executable, outfilepath])
- except Exception as e:
- print("+++ Problem executing test, although it works")
- traceback.print_exc(file=sys.stdout)
+ subprocess.check_output([sys.executable, outfilepath])
return 1
diff --git a/sources/pyside2/PySide2/templates/core_common.xml b/sources/pyside2/PySide2/templates/core_common.xml
index 7c2ae3a77..4b74c6b55 100644
--- a/sources/pyside2/PySide2/templates/core_common.xml
+++ b/sources/pyside2/PySide2/templates/core_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/templates/datavisualization_common.xml b/sources/pyside2/PySide2/templates/datavisualization_common.xml
index ee040c977..d5434dc75 100644
--- a/sources/pyside2/PySide2/templates/datavisualization_common.xml
+++ b/sources/pyside2/PySide2/templates/datavisualization_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/templates/gui_common.xml b/sources/pyside2/PySide2/templates/gui_common.xml
index d25d50014..363422c8f 100644
--- a/sources/pyside2/PySide2/templates/gui_common.xml
+++ b/sources/pyside2/PySide2/templates/gui_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/templates/opengl_common.xml b/sources/pyside2/PySide2/templates/opengl_common.xml
index 46299d8d7..ee7b021dd 100644
--- a/sources/pyside2/PySide2/templates/opengl_common.xml
+++ b/sources/pyside2/PySide2/templates/opengl_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/templates/webkitwidgets_common.xml b/sources/pyside2/PySide2/templates/webkitwidgets_common.xml
index 43e560c5f..9d0c8e587 100644
--- a/sources/pyside2/PySide2/templates/webkitwidgets_common.xml
+++ b/sources/pyside2/PySide2/templates/webkitwidgets_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/templates/widgets_common.xml b/sources/pyside2/PySide2/templates/widgets_common.xml
index e63785bb2..9ce01e79a 100644
--- a/sources/pyside2/PySide2/templates/widgets_common.xml
+++ b/sources/pyside2/PySide2/templates/widgets_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/PySide2/templates/xml_common.xml b/sources/pyside2/PySide2/templates/xml_common.xml
index b13a10c25..0a6ae4906 100644
--- a/sources/pyside2/PySide2/templates/xml_common.xml
+++ b/sources/pyside2/PySide2/templates/xml_common.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
diff --git a/sources/pyside2/doc/CMakeLists.txt b/sources/pyside2/doc/CMakeLists.txt
index b5bde885a..36f770367 100644
--- a/sources/pyside2/doc/CMakeLists.txt
+++ b/sources/pyside2/doc/CMakeLists.txt
@@ -90,16 +90,12 @@ add_custom_target(qdoc
add_custom_target(apidoc
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/rst
COMMAND ${SHIBOKEN_PYTHON_INTERPRETER} ${SPHINX_BUILD} -b html ${CMAKE_CURRENT_BINARY_DIR}/rst html
- #copying shiboken2 and ApiExtractor doc htmls
- COMMENT "Copying over the Shiboken2 and ApiExtractor doc HTMLs..."
+ #copying shiboken2 (including ApiExtractor) doc htmls
+ COMMENT "Copying over the Shiboken2 doc HTMLs..."
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/html/shiboken2
- COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/html/shiboken2/ApiExtractor
COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_CURRENT_BINARY_DIR}/../../shiboken2/doc/html
${CMAKE_CURRENT_BINARY_DIR}/html/shiboken2
- COMMAND ${CMAKE_COMMAND} -E copy_directory
- ${CMAKE_CURRENT_BINARY_DIR}/../../shiboken2/ApiExtractor/doc/html
- ${CMAKE_CURRENT_BINARY_DIR}/html/shiboken2/ApiExtractor
)
# create conf.py based on conf.py.in
diff --git a/sources/pyside2/doc/contents.rst b/sources/pyside2/doc/contents.rst
index d6b7f6ffb..675a5b73a 100644
--- a/sources/pyside2/doc/contents.rst
+++ b/sources/pyside2/doc/contents.rst
@@ -8,6 +8,7 @@
faq.rst
gettingstarted.rst
tutorials/index.rst
+ deployment.rst
pysideapi2.rst
licenses.rst
diff --git a/sources/pyside2/doc/deployment-cxfreeze.rst b/sources/pyside2/doc/deployment-cxfreeze.rst
new file mode 100644
index 000000000..40b65621b
--- /dev/null
+++ b/sources/pyside2/doc/deployment-cxfreeze.rst
@@ -0,0 +1,130 @@
+=====================
+|project| & cx_Freeze
+=====================
+
+`cx_Freeze <https://anthony-tuininga.github.io/cx_Freeze/>`_ allows you to freeze your Python
+application into executables.
+The supported platforms are Linux, macOS, Windows, FreeBSD, among others.
+
+
+You can read the `official documentation <https://cx-freeze.readthedocs.io/en/latest/index.html>`_
+to clarify any further question, and remember to contribute to
+the project by `filing issues <https://sourceforge.net/projects/cx-freeze/>`_
+if you find any, or contributing to `their development <https://bitbucket.org/anthony_tuininga/cx_freeze/src>`_.
+
+Preparation
+===========
+
+Installing `cx_Freeze` can be done via **pip**::
+
+ pip install cx_freeze
+
+If you are using a virtual environment, remember to activate it before
+installing `cx_Freeze` into it.
+
+After the installation, you will have the `cxfreeze` binary to deploy
+your application.
+
+Freezing an application
+=======================
+
+There are three options to work with `cx_Freeze`:
+
+ 1. Using the `cxfreeze` script.
+ 2. Creating `setup.py` script to build the project.
+ 3. Using the module classes directly (for advanced purposes).
+
+We will cover the first two uses cases.
+
+Creating an example
+-------------------
+
+Now, consider the following simple script, named `hello.py`::
+
+ import sys
+ import random
+ from PySide2.QtWidgets import (QApplication, QLabel, QPushButton,
+ QVBoxLayout, QWidget)
+ from PySide2.QtCore import Slot, Qt
+
+ class MyWidget(QWidget):
+ def __init__(self):
+ QWidget.__init__(self)
+
+ self.hello = ["Hallo Welt", "你好,世界", "Hei maailma",
+ "Hola Mundo", "Привет мир"]
+
+ self.button = QPushButton("Click me!")
+ self.text = QLabel("Hello World")
+ self.text.setAlignment(Qt.AlignCenter)
+
+ self.layout = QVBoxLayout()
+ self.layout.addWidget(self.text)
+ self.layout.addWidget(self.button)
+ self.setLayout(self.layout)
+
+ # Connecting the signal
+ self.button.clicked.connect(self.magic)
+
+ @Slot()
+ def magic(self):
+ self.text.setText(random.choice(self.hello))
+
+ if __name__ == "__main__":
+ app = QApplication(sys.argv)
+
+ widget = MyWidget()
+ widget.resize(800, 600)
+ widget.show()
+
+ sys.exit(app.exec_())
+
+
+Using `cxfreeze` executable
+---------------------------
+
+The command line to proceed will look like this::
+
+ cxfreeze hello.py
+
+This command will create a `dist/` directory that will contain the
+executable and a `lib/` directory including all the shared libraries.
+
+To launch the application, you need to just go to the `dist/` directory
+and execute the file::
+
+ cd dist/
+ ./main
+
+
+Using a setuptools script
+-------------------------
+
+For this process, you will need an additional script called `setup.py`::
+
+ import sys
+ from cx_Freeze import setup, Executable
+
+ setup(name = "MyApp",
+ version = "0.1",
+ description = "My GUI App",
+ executables = [Executable("hello.py")])
+
+After that, you need to build the project using it::
+
+ python setup.py build
+
+This step will create a `build/` directory with the following structure::
+
+ build
+ └── exe.linux-x86_64-3.7
+ └── lib
+ └── main
+
+The first directory inside `build/` will depend on the platform
+you are using, in this case a `x86_64` Linux using Python 3.7.
+The structure is the same as previously described, and you can simply
+enter the directory and execute the file::
+
+ cd build/exe.linux-x86_64-3.7
+ ./main
diff --git a/sources/pyside2/doc/deployment-fbs.rst b/sources/pyside2/doc/deployment-fbs.rst
new file mode 100644
index 000000000..94c52a08b
--- /dev/null
+++ b/sources/pyside2/doc/deployment-fbs.rst
@@ -0,0 +1,106 @@
+===============
+|project| & fbs
+===============
+
+`fbs <https://build-system.fman.io>`_ provides a powerful environment for packaging,
+creating installers, and signing your application, but also for managing the application's updates.
+Since it is based on PyInstaller, it currently supports Linux, macOS, and Windows.
+
+You can read the `official tutorial <https://github.com/mherrmann/fbs-tutorial>`_ for more
+details on how to use `fbs`, or check the
+`documentation <https://build-system.fman.io/manual/>`_ for a complete set of features and
+options.
+
+Preparation
+===========
+
+Installing `fbs` can be done via **pip**::
+
+ pip install fbs pyinstaller==3.4
+
+If you are using a virtual environment, remember to activate it before
+installing it.
+
+After the installation, you will be able to use the `fbs` executable.
+
+Starting a new project
+======================
+
+`fbs` provides nice features that allow you to create a base
+project structure by executing the following command::
+
+ fbs startproject
+
+This process will prompt you to answer many questions to configure the details
+of your project, like:
+
+ * Application name
+ * Author name
+ * Qt bindings (PySide2 or PyQt5)
+ * Bundle indentified (for macOS)
+
+After the process finishes, you will have a `src/` directory that
+will contain the following structure::
+
+ └── src
+ ├── build
+ │ └── settings
+ └── main
+ ├── icons
+ │ ├── base
+ │ ├── linux
+ │ └── mac
+ └── python
+
+Inside the `settings` directory you can find a couple of `json` files
+that you can edit to include more information about your project.
+
+The main file will be under the `python` directory, and its content by default is::
+
+ from fbs_runtime.application_context import ApplicationContext
+ from PySide2.QtWidgets import QMainWindow
+
+ import sys
+
+ class AppContext(ApplicationContext): # 1. Subclass ApplicationContext
+ def run(self): # 2. Implement run()
+ window = QMainWindow()
+ version = self.build_settings['version']
+ window.setWindowTitle("MyApp v" + version)
+ window.resize(250, 150)
+ window.show()
+ return self.app.exec_() # 3. End run() with this line
+
+ if __name__ == '__main__':
+ appctxt = AppContext() # 4. Instantiate the subclass
+ exit_code = appctxt.run() # 5. Invoke run()
+ sys.exit(exit_code)
+
+The example will show an empty `QMainWindow`, and you can execute it by running::
+
+ fbs run
+
+Freezing the application
+========================
+
+Once you verify that the application is properly working,
+you can continue with the freezing process::
+
+ fbs freeze
+
+After the process finishes, you will get a message stating the location
+of your executable, e.g.::
+
+ Done. You can now run `target/MyApp/MyApp`. If that doesn't work, see
+ https://build-system.fman.io/troubleshooting.
+
+
+Then executing the application will result in the same window
+you saw with the `fbs run` command::
+
+ cd target/MyApp/
+ ./MyApp
+
+.. note:: This is the case for Linux. For other platforms like macOS, you will need to
+ enter the directory: `target/MyApp.app/Contents/MacOS`, and for
+ Windows you will find a `MyApp.exe` executable.
diff --git a/sources/pyside2/doc/deployment-pyinstaller.rst b/sources/pyside2/doc/deployment-pyinstaller.rst
new file mode 100644
index 000000000..8e6a76052
--- /dev/null
+++ b/sources/pyside2/doc/deployment-pyinstaller.rst
@@ -0,0 +1,124 @@
+=======================
+|project| & PyInstaller
+=======================
+
+`PyInstaller <https://www.pyinstaller.org/>`_ allows you to freeze your python
+application into a stand-alone executable.
+The supported platforms are Linux, macOS, Windows, FreeBSD, and others.
+
+One of the main goals of `PyInstaller` is to be compatible with 3rd-party
+Python modules, e.g.: |pymodname|.
+
+You can read the `official documentation <https://www.pyinstaller.org/documentation.html>`_
+to clarify any further question, and remember to contribute to
+`the project <https://github.com/pyinstaller/pyinstaller>`_
+by filing issues if you find any, or contributing to their development.
+
+Preparation
+===========
+
+Installing `PyInstaller` can be done via **pip**::
+
+ pip install pyinstaller
+
+If you are using a virtual environment, remember to activate it before
+installing `PyInstaller` into it.
+
+After the installation, the `pyinstaller` binary will be located in the `bin/`
+directory of your virtual environment, or where your Python executable is located.
+
+If that directory is not in your `PATH`, you need to include the whole path
+when executing `pyinstaller`.
+
+.. warning:: If you already have PySide2 or Shiboken2 installed in your system, PyInstaller will pick them
+ instead of your virtual environment ones.
+
+Freezing an application
+=======================
+
+`PyInstaller` has many options that you can use.
+To learn more about them you can just run `pyinstaller -h`.
+
+Two main features are the option to package the whole project
+(including the shared libraries) into one executable file (`--onefile`),
+and to prepare a directory that will contain
+an executable next to all the used libraries.
+
+Additionally, for Windows you can enable opening a console during the
+execution with the option `-c` (or equivalent `--console` or `--nowindowed`).
+Further, you can specify to not open such console window
+on macOS and Windows with the option `-w` (or equivalent `--windowed` or `--noconsole`).
+
+Creating an example
+-------------------
+
+Now, consider the following simple script, named `hello.py`::
+
+ import sys
+ import random
+ from PySide2.QtWidgets import (QApplication, QLabel, QPushButton,
+ QVBoxLayout, QWidget)
+ from PySide2.QtCore import Slot, Qt
+
+ class MyWidget(QWidget):
+ def __init__(self):
+ QWidget.__init__(self)
+
+ self.hello = ["Hallo Welt", "你好,世界", "Hei maailma",
+ "Hola Mundo", "Привет мир"]
+
+ self.button = QPushButton("Click me!")
+ self.text = QLabel("Hello World")
+ self.text.setAlignment(Qt.AlignCenter)
+
+ self.layout = QVBoxLayout()
+ self.layout.addWidget(self.text)
+ self.layout.addWidget(self.button)
+ self.setLayout(self.layout)
+
+ # Connecting the signal
+ self.button.clicked.connect(self.magic)
+
+ @Slot()
+ def magic(self):
+ self.text.setText(random.choice(self.hello))
+
+ if __name__ == "__main__":
+ app = QApplication(sys.argv)
+
+ widget = MyWidget()
+ widget.resize(800, 600)
+ widget.show()
+
+ sys.exit(app.exec_())
+
+
+Since it has a UI, we will use the `--windowed` option.
+
+The command line to proceed will look like this::
+
+ pyinstaller --name="MyApplication" --windowed hello.py
+
+This process will create a `dist/` and `build/` directory.
+The executable and all the shared libraries required by your application
+will be placed inside `dist/MyApplication`.
+
+To execute the frozen application you can go inside `dist/MyApplication` and
+execute the program::
+
+ cd dist/MyApplication/
+ ./MyApplication
+
+.. note:: The directory inside `dist/` and the executable will have the same name.
+
+If you prefer to have everything bundled into one executable, i.e.:
+no shared libraries next to the executable, you can use the option
+`--onefile`::
+
+ pyinstaller --name="MyApplication" --windowed --onefile hello.py
+
+This process will take a bit longer, but in the end you will discover
+an executable inside the `dist/` directory that you can execute::
+
+ cd dist/
+ ./MyApplication
diff --git a/sources/pyside2/doc/deployment.rst b/sources/pyside2/doc/deployment.rst
new file mode 100644
index 000000000..582e38992
--- /dev/null
+++ b/sources/pyside2/doc/deployment.rst
@@ -0,0 +1,70 @@
+==========
+Deployment
+==========
+
+Deploying or freezing an application is a crucial part of many Python projects.
+Most large projects are not based on a single Python file, so
+the distribution of these applications becomes more difficult.
+
+The options for a project are:
+ 1. Sending a normal zip-file with the application's content.
+ 2. Building a proper `Python package (wheel) <https://packaging.python.org/>`_.
+ 3. Freezing the application in a single binary file, or into a directory.
+
+For the **third** option, there are many available tools:
+ * `PyInstaller <https://www.pyinstaller.org/>`_,
+ * `cx_Freeze <https://anthony-tuininga.github.io/cx_Freeze/>`_,
+ * `py2exe <http://www.py2exe.org/>`_,
+ * `py2app <https://py2app.readthedocs.io/en/latest/>`_,
+
+Since |project| is a cross-platform framework,
+we would like to focus on solutions that at least work on
+the three major platform supported by Qt: Linux, macOS, and Windows.
+
+The following table summarizes the above mentioned tools support:
+
+=========== ======= ===== ===== =======
+Name License Linux macOS Windows
+=========== ======= ===== ===== =======
+py2exe MIT no no yes
+py2app MIT no yes no
+cx_Freeze MIT yes yes yes
+PyInstaller GPL yes yes yes
+=========== ======= ===== ===== =======
+
+From the table we can see that only *cx_Freeze* and *PyInstaller*
+meet our requirements.
+
+All tools are command-line based, and it could become
+a hard task to include more resources to your application, such as
+images, icons, and meta-information, because you will need to create
+special hooks or separate scripts to handle them.
+Additionally, since this only
+allows you to freeze your current application, you don't have
+any mechanism to update your application.
+
+To cover the update part, there is a tool built around PyInstaller
+called `PyUpdater <https://www.pyupdater.org/>`_ which enables
+a simple mechanism to ship applications updates.
+
+On top of all these features, including also a nice interface
+that allows the user to install the application step by step,
+or even better, provide templates to create new projects to easily
+freeze-them-up is something really beneficial for both developers
+and end-users.
+This is where `fbs <https://build-system.fman.io>`_ enters the
+game, being based on PyInstaller, but including all the nice features
+we previously mentioned.
+
+Here you can find a set of tutorials on how to use the previously
+described tools.
+
+.. note:: Deployment is possible only in Qt for Python 5.12.2
+
+.. toctree::
+ :name: mastertoc
+ :maxdepth: 2
+
+ deployment-pyinstaller.rst
+ deployment-cxfreeze.rst
+ deployment-fbs.rst
diff --git a/sources/pyside2/doc/faq.rst b/sources/pyside2/doc/faq.rst
index e09d98999..aabd017e9 100644
--- a/sources/pyside2/doc/faq.rst
+++ b/sources/pyside2/doc/faq.rst
@@ -29,11 +29,11 @@ Frequently Asked Questions
**Does PySide2 have support for embedded Linux (Raspberry Pi, i.MX6 etc)?**
Not at the moment.
-**There are three wheels (pyside2, shiboken2, and shiboken2_generator)
- what is the different between them?**
+**There are three wheels (pyside2, shiboken2, and shiboken2_generator), what is the different between them?**
Before the official release, everything was in one big wheel, but it made sense to split
the projects in three different wheels:
+
* **pyside2**: contains all the PySide2 modules to use the Qt framework.
Also depends on the shiboken2 module.
* **shiboken2**: contains the shiboken2 module with helper functions for PySide2.
diff --git a/sources/pyside2/doc/tutorials/basictutorial/clickablebutton.rst b/sources/pyside2/doc/tutorials/basictutorial/clickablebutton.rst
index afec6d84f..accb54aea 100644
--- a/sources/pyside2/doc/tutorials/basictutorial/clickablebutton.rst
+++ b/sources/pyside2/doc/tutorials/basictutorial/clickablebutton.rst
@@ -11,6 +11,7 @@ click it.
Let's start by importing the necessary PySide2 classes and python
`sys` module:
::
+
import sys
from PySide2.QtWidgets import QApplication, QPushButton
from PySide2.QtCore import Slot
@@ -31,12 +32,14 @@ console:
Now, as mentioned in previous examples you must create the
`QApplication` to run your PySide2 code:
::
+
# Create the Qt Application
app = QApplication(sys.argv)
Let's create the clickable button, which is a `QPushButton` instance.
To label the button, we pass a python string to the constructor:
::
+
# Create a button
button = QPushButton("Click me")
@@ -52,11 +55,13 @@ The `QPushButton` has a predefined signal called **clicked**, which
is triggered every time the button is clicked. We'll connect this
signal to the `say_hello()` function:
::
+
# Connect the button to the function
button.clicked.connect(say_hello)
Finally, we show the button and start the Qt main loop:
::
+
# Show the button
button.show()
# Run the main Qt loop
@@ -64,6 +69,7 @@ Finally, we show the button and start the Qt main loop:
Here is the complete code for this example:
::
+
#!/usr/bin/python
import sys
diff --git a/sources/pyside2/doc/tutorials/basictutorial/dialog.rst b/sources/pyside2/doc/tutorials/basictutorial/dialog.rst
index 1daa6b89d..cdb356b91 100644
--- a/sources/pyside2/doc/tutorials/basictutorial/dialog.rst
+++ b/sources/pyside2/doc/tutorials/basictutorial/dialog.rst
@@ -10,6 +10,7 @@ Let us just start with a simple stub that creates and shows
a dialog. This stub is updated during the course of this
tutorial, but you can use this stub as is if you need to:
::
+
import sys
from PySide2.QtWidgets import QApplication, QDialog, QLineEdit, QPushButton
@@ -49,6 +50,7 @@ enter their name, and a `QPushButton` that prints the contents of
the `QLineEdit`.
So, let's add the following code to the `init()` method of our Form:
::
+
# Create widgets
self.edit = QLineEdit("Write my name here..")
self.button = QPushButton("Show Greetings")
@@ -64,6 +66,7 @@ in your application. In this case, let's use `QVBoxLayout` to lay out
the widgets vertically. Add the following code to the `init()` method,
after creating the widgets:
::
+
# Create layout and add widgets
layout = QVBoxLayout()
layout.addWidget(self.edit)
@@ -82,6 +85,7 @@ Finally, we just have to add a function to our custom **Form**
and *connect* our button to it. Our function will be a part of
the Form, so you have to add it after the `init()` function:
::
+
# Greets the user
def greetings(self):
print ("Hello {}".format(self.edit.text()))
@@ -94,6 +98,7 @@ Now that we have everything, we just need to *connect* the
`QPushButton` to the `Form.greetings()` method. To do so, add the
following line to the `init()` method:
::
+
# Add button signal to greetings slot
self.button.clicked.connect(self.greetings)
@@ -105,6 +110,7 @@ Complete code
Here is the complete code for this tutorial:
::
+
import sys
from PySide2.QtWidgets import (QLineEdit, QPushButton, QApplication,
QVBoxLayout, QDialog)
diff --git a/sources/pyside2/doc/tutorials/basictutorial/uifiles.rst b/sources/pyside2/doc/tutorials/basictutorial/uifiles.rst
index 00731abc3..b00437bcb 100644
--- a/sources/pyside2/doc/tutorials/basictutorial/uifiles.rst
+++ b/sources/pyside2/doc/tutorials/basictutorial/uifiles.rst
@@ -15,6 +15,7 @@ Add a `QPushButton` to the center of the centralwidget.
Your file (mainwindow.ui) should look something like this:
::
+
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
@@ -79,11 +80,13 @@ Another option to interact with a **UI file** is to generate a Python
class from it. This is possible thanks to the `pyside2-uic` tool.
To use this tool, you need to run the following command on a console:
::
+
pyside2-uic mainwindow.ui > ui_mainwindow.py
We redirect all the output of the command to a file called `ui_mainwindow.py`,
which will be imported directly:
::
+
from ui_mainwindow import Ui_MainWindow
Now to use it, we should create a personalized class for our widget
@@ -91,6 +94,7 @@ to **setup** this generated design.
To understand the idea, let's take a look at the whole code:
::
+
import sys
from PySide2.QtWidgets import QApplication, QMainWindow
from PySide2.QtCore import QFile
@@ -115,6 +119,7 @@ examples, and our new basic class contains only two new lines
that are in charge of loading the generated python class from the UI
file:
::
+
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
@@ -127,6 +132,7 @@ Loading it directly
To load the UI file directly, we will need a class from the **QtUiTools**
module:
::
+
from PySide2.QtUiTools import QUiLoader
The `QUiLoader` lets us load the **ui file** dynamically
@@ -141,6 +147,7 @@ and use it right away:
The complete code of this example looks like this:
::
+
# File: main.py
import sys
from PySide2.QtUiTools import QUiLoader
@@ -163,4 +170,5 @@ The complete code of this example looks like this:
Then to execute it we just need to run the following on a
command prompt:
::
+
python main.py
diff --git a/sources/pyside2/doc/tutorials/examples/tabbedbrowser.rst b/sources/pyside2/doc/tutorials/examples/tabbedbrowser.rst
index d291e8399..c34c50647 100644
--- a/sources/pyside2/doc/tutorials/examples/tabbedbrowser.rst
+++ b/sources/pyside2/doc/tutorials/examples/tabbedbrowser.rst
@@ -5,6 +5,7 @@ Web Browser Example
The example demonstrates the power and simplicity offered by |project| to developers.
It uses several |pymodname| submodules to offer a fluid and modern-looking UI that
is apt for a web browser. The application offers the following features:
+
* Tab-based browsing experience using QTabWidget.
* Download manager using a QProgressBar and QWebEngineDownloadItem.
* Bookmark manager using QTreeView.
diff --git a/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml b/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml
index bf9c29386..1904f236f 100644
--- a/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml
+++ b/sources/pyside2/tests/pysidetest/typesystem_pysidetest.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<typesystem package="testbinding">
<load-typesystem name="QtWidgets/typesystem_widgets.xml" generate="no"/>
<value-type name="IntValue"/>