aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2/PySide2
Commit message (Collapse)AuthorAgeFilesLines
* Move inject-code snippets to separate filesCristian Maureira-Fredes2018-11-2247-3027/+3924
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When code must be modified or added to certain functions, we currently have two options: * Write a template and include it into the typesystem, * inject code directly at a certain place of the function entry. The problem with injecting raw code is that since it is an XML file, one need to escape protected symbols, like "<" and "&". Thanks to a couple of complementary commits, now we can place this code snippets on a separate file without triggering a whole module compiling process, since the typesystem itself will not be alterered. All the injected code from the typesystem was removed and placed into a single file per module inside a top-level directory called glue. Some small fixes were included mainly regarding styling of the code. Task-number: PYSIDE-834 Change-Id: I823e92d241a528d75d5940090008db9bf297f49e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Pyside2: Fix crash invoking QScxmlStateMachine::submitEvent(QScxmlEvent*)Friedemann Kleint2018-11-201-1/+7
| | | | | | | | | Specify C++ ownership for the event (as is done for QCoreApplication::postEvent() and similar). Fixes: PYSIDE-850 Change-Id: I8d34842823d80779716d407e4fa6268533c5d080 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Signature: Implement Nested Classes and Functions for ShibokenChristian Tismer2018-11-155-13/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch again contains a complete overhaul of the signature module. The code was re-implemented to properly support nested classes. Also, the code was reduced by AutoDecRef and by adopting a concise C++ style. Note.. We will add a shiboken signature test and complete mapping.py after the split into three projects is done. The split changes a lot and is needed right now! Signatures were quite complete for PySide, but the support for Shiboken was under-developed. Since we are planning to generally enhance error messages by using the Signature module, we should be able to rely on them to always produce a signature. Therefore, a general overhaul was needed to resolve all cornes cases for Python 2 and 3. Nested classes are supported, as well as plain module functions. The usage of the typing module might improve over time, but the Signature implementation is now considered complete. The loader will respect now the path settings which might not be the package dir but the build dir. This is more consistens with COIN testing. Task-number: PYSIDE-795 Change-Id: I246449d4df895dadf2bcb4d997eaa13d78463d9b Reviewed-by: Simo Fält <simo.falt@qt.io>
* Remove createIndex method that uses PyObject*Cristian Maureira-Fredes2018-11-132-41/+0
| | | | | | | | | | | | | | | | We have a proper `void*` treatment, so the extra function does not seems to be necessary. The injected code used for the interalPointer method was also removed since is better to leave on shiboken hands the conversion between void* and python types. A couple of test were adapted since wrongly used ModelIndex with Python objects. Change-Id: I082637c7d1dd1bb0f50a3c453513e5d722f4b783 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12Friedemann Kleint2018-11-012-7/+5
|\ | | | | | | Change-Id: I5a8f41a2236601b7c5466586dd1cfc92c1afc391
| * QIODevice bindings: Fix invalid reads in read() functionsFriedemann Kleint2018-10-312-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running test in debug mode on Windows, failures occurred: File "sources/pyside2/tests/QtCore/qfileread_test.py", line 41, in readData return super(FileChild2, self).readData(maxlen) UnicodeDecodeError 'utf-8' codec can't decode byte 0xcd in position 21: invalid continuation byte File "C:/dev/pyside/pyside-setup511d/sources/pyside2/tests/QtCore/qfile_test.py", line 57, in testBasic self.assertFalse(obj.getChar()[0]) UnicodeDecodeError 'utf-8' codec can't decode byte 0xcc in position 0: unexpected end of data This is caused by missing initializers and terminating \0 characters in the QByteArrays introduced by ca806b438e8a27dc4562ac806d189765e93e09e5, unearthed by MSVC helpfully filling unitinialized data with random values. Fix by using a QByteArray of size n + 1 filled with 0. Initialize the character variable in the fix_char* template. Task-number: PYSIDE-40 Change-Id: Ia604841a89f1b1b9564c16d2f23cd9f7c20f5628 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | PySide2: Pass on the result from native event filtersFriedemann Kleint2018-10-301-0/+2
| | | | | | | | | | | | | | | | | | | | Add missing conversion of the long *result variable. Amends f4a6d74852b0ba6711195a9c3fc9356e677a3409. Task-number: PYSIDE-790 Change-Id: I2db9ffd80b569f68b714b21e2adaa3e34949af83 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Friedemann Kleint2018-10-292-2/+6
|\| | | | | | | Change-Id: I3bb491686968e81382c135ab737da259d9796f52
| * Fix Memory Leak Caused By Wrong Limited API DefaultChristian Tismer2018-10-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a type has nullptr as tp_dealloc, there apply different defaults. Static types had object_dealloc as default, while new heaptypes created with type_new have subtype_dealloc as default. A problem was now that PyType_FromSpec also has subtype_dealloc as default. But that is wrong, because a type that was written with the static type approach is already written with object_dealloc in mind and takes somehow care about further issues with that type. When we now convert this type and suddenly use subtype_dealloc instead of object_dealloc, things get pretty wrong. Finding that out was pretty hard and took quite long to understand. The fix was then very easy and is the best proof: Replacing our former (wrong) solution of supplying an SbkDummyDealloc with a function object_dealloc works perfectly, and the leakage completely vanished. The documentation now is also corrected. Task-number: PYSIDE-832 Change-Id: Ifc20c28172eb5663cd5e60dac52e0a43acfb626c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Add qCompress/qUncompress bindingsCristian Maureira-Fredes2018-10-221-0/+4
| | | | | | | | | | | | Task-number: PYSIDE-838 Change-Id: I88a8c90b53757f05668782bc407e8529f6fbb3c6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | PySide2: Re-enable native event filtersFriedemann Kleint2018-10-265-8/+77
| | | | | | | | | | | | | | | | | | | | | | Add QAbstractNativeEventFilter. Re-add the native event filter functions on QWindow and QWidget, modified to return a tuple bool/long, using a modification from PySide. Task-number: PYSIDE-790 Change-Id: I86fef1a0c168e69fb3391cd882ea05190985384d Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Qt3DInput: add more classes and ownership transferCristian Maureira-Fredes2018-10-251-2/+15
| | | | | | | | | | | | | | Task-number: PYSIDE-487 Change-Id: Ibd984747f091ccb355881f869ed327a9dbbf5dbb Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Qt3DCore: add more classes and ownership rulesCristian Maureira-Fredes2018-10-241-3/+30
| | | | | | | | | | | | Task-number: PYSIDE-487 Change-Id: I62c7b117d662f3111b47aa9b840b39f67ef71cac Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | libpyside: Port DynamicQMetaObject to QMetaObjectBuilderFriedemann Kleint2018-10-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt 5 introduces a new class QMetaObjectBuilder for generating dynamic meta objects for use cases like QML. It provides an API to add methods, properties and info and a factory method toMetaObject() to obtain a QMetaObject snapshot reflecting the changes. Replace the DynamicQMetaObject aggregated by TypeUserData by a class MetaObjectBuilder wrapping a QMetaObjectBuilder with dirty-handling. The code to create the binary data of the QMetaObject can then be removed. For plain Qt objects, the wrapped base meta object will be returned (which fixes the bug). Task-number: PYSIDE-784 Change-Id: Id8a54570aff36c75fe0f3bf2d297a12d02cd773a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Fix build on 32bit WindowsFriedemann Kleint2018-10-191-0/+5
| | | | | | | | | | | | | | | | | | Fix the exclusion of QCborStreamReader::readStringChunk(char*,qsizetype) for 32/64bit depending on qsizetype. Change-Id: I7cd16fc83508c4ad04c2bb5e8b433c4933fef13c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | libpyside: Introduce helper functions for accessing TypeUserData and meta ↵Friedemann Kleint2018-10-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | objects Add helpers with overloads to reduce reinterpret_cast<> and increase type safety. Task-number: PYSIDE-784 Change-Id: I334fd7d149a6730094b062dd0371b9a29379d725 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Fix crash when garbage collecting in a non-GUI threadFriedemann Kleint2018-10-153-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a GUI class happens to be detected unreferenced when garbage collecting in a non-GUI thread and is subsequently deleted, crashes can occur for QWidgets and similar classes. The hitherto unimplemented delete-in-main-thread" attribute should be used. Add the missing implementation. Add the field to shiboken's type entry and SbkObjectTypePrivate class and pass it via newly introduced flags to introduceWrapperType(). Defer the deletion when invoked from the background thread and store the list of destructors in a list in binding manager run by Py_AddPendingCall(). Task-number: PYSIDE-743 Task-number: PYSIDE-810 Change-Id: Id4668a6a1e32392be9dcf1229e1e10c492b2a5f5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Allow building shiboken2 and PySide2 as separate wheelsAlexandru Croitor2018-10-122-15/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Actually this creates 3 wheel packages: - shiboken2 (the python module and libshiboken shared library) - shiboken2-generator (contains the generator executable, libclang and dependent Qt libraries) - PySide2 (the PySide2 modules and Qt shared libraries, and tools like rcc, uic) Calling the setup.py script will not do the actual build now (in the sense of calling CMake, make, etc.). Instead it will spawn new processes (via subprocess.call) calling the same setup.py script, but with different arguments. These "sub-invocations" will do the actual building. Thus, the "top-level invocation" will decide which packages to build and delegate that to the "sub-invocations" of setup.py. A new optional command line argument is introduced called "--build-type" which defaults to "all", and can also be set to "shiboken2", "shiboken2-generator" and "pyside2". A user can choose which packages to build using this option. The "top-level invocation" uses this option to decide how many "sub-invocations" to execute. A new command line argument called "--internal-build-type" takes the same values as the one above. It defines which package will actually be built in the new spawned "sub-invocation" process. The "top-level invocation" sets this automatically for each "sub-invocation" depending on the value of "--build-type". This option is also useful for developers that may want to debug the python building code in the "sub-invocation". Developers can set this manually via the command line, and thus avoid the process spawning indirection. A new class Config is introduced to facilitate storage of the various state needed for building a single package. A new class SetupRunner is introduced that takes care of the "--build-type" and "--internal-build-type" argument handling and delegation of "sub-invocations". A new class Options is introduced to 'hopefully', in the future, streamline the mess of option handling that we currently have. setup.py now is now simplified to mostly just call SetupRunner.run_setup(). Certain refactorings were done to facilitate further clean-up of the build code, the current code is definitely not the end all be all. Various other changes that were needed to implement the wheel separation: - a new cmake_helpers directory is added to share common cmake code between packages. - the custom popenasync.py file is removed in favor of using subprocess.call in as many places as possible, and thus avoid 10 different functions for process creation. - Manifest.in is removed, because copying to the setuptools build dir is now done directly by prepare_packages functions. - because prepare_packages copies directly to the setuptools build dir, avoiding the pyside_package dir, we do less copying of big Qt files now. - versioning of PySide2 and shiboken2 packages is now separate. shiboken2 and shiboken2-generator share the same versions for now though. - shiboken2 is now listed as a required package for PySide2, to facilitate pip requirements.txt dependencies. - coin_build_instructions currently needs to install an unreleased version of wheel, due to a bug that breaks installation of generated wheel files. - added separate command line options to pyside2_config.py for shiboken2-module and shiboken2-generator. - adapted samplebinding and scriptableapplication projects due to shiboken being a separate package. - adapted pyside2-tool and shiboken2-tool python scripts for setup tools entry points. - made some optimizations not to invoke cmake for shiboken2-generator when doing a top-level "all" build. - fixed unnecessary rpaths not to be included on Linux (mainly the Qt rpaths). Task-nubmer: PYSIDE-749 Change-Id: I0336043955624c1d12ed254802c442608cced5fb Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Implement Different Signature LayoutsChristian Tismer2018-10-114-53/+246
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With the extended signature API, it is now possible to create different layouts, depending on the usecase. The "layout" module defines the layouts which we will need and also implements the variable signature generation. Task-number: PYSIDE-510 Task-number: PYSIDE-795 Change-Id: I5b9f88d9feb92cc4c8dc0e212860b6eb4fc16484 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Prepare the Signature Module For More ApplicationsChristian Tismer2018-10-119-28/+253
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the preparation for a number of planned applications and extensions using the signature module. This general overhaul contains: - Extraction of signature enumerations into enum_sigs.py, - a list of current keyword errors in arguments which are unsolved in shiboken, but temporarily fixed in parser.py (too many for XML), - fix spurious duplications in multiple signatures - corrections for keyword errors in function names which cannot be fixed by Python (quite few), - fixing "..." arguments into "*args", - supporting the "slot wrapper" type. This is necessary for methods like "__add__", "__mul__" etc. - Create an extra function "get_signature" that has a parameter to modify the appearance, i.e. without self, without returntype, etc. Task-number: PYSIDE-510 Change-Id: If16f7bf02c6e7cbbdc970058bb630ea4db2b854a Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | PySide2: Replace macro check_qt_class by the Qt configure systemFriedemann Kleint2018-10-013-29/+62
| | | | | | | | | | | | | | | | | | | | | | | | Query the feature properties of the configure system to check whether a class is present instead of running a compile test in QtGui and QtNetwork. Remove the macro invocation from QtWigets since the results (QtWidgets_OPTIONAL_SRC, QtWidgets_DROPPED_ENTRIES) were not used. Change-Id: I06e03fe1eef85f2340ab4cdb130b8b31b08f7f14 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Add forgotten version numbers to typedefs for QCborStringResultEike Ziller2018-09-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Fixes qt.shiboken: (qtcreator) Error: .....typesystem_core_common.xml:691:104: Unable to resolve typedef "QCborStreamReader::StringResult<QString>" and compilation of the scriptable application. Task-number: PYSIDE-814 Change-Id: Id6203f60e77d966933aaf28e46a0279933122eaa Reviewed-by: Christian Tismer <tismer@stackless.com>
* | PySide2: Base the QMatrix<R>x<C> on QGenericMatrixFriedemann Kleint2018-09-142-329/+41
| | | | | | | | | | | | | | | | | | | | After fixing non-type templates, QGenericMatrix can be specified as their base class. The inherited functions can then be used instead adding templates. Change-Id: I5ec435cf04d8443626a86a78643e2ad5d29f4a5e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | shiboken: Refactor Generator::minimalConstructor(AbstractMetaClass)Friedemann Kleint2018-09-131-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add some convenience functions returning the status of default expressions to AbstractMetaArgument. Rewrite the function to only insert suitable candidates into an ordered multimap instead of looping twice over all candidates. This unearthed a bug in the old algorithm trying to find the maximum number of arguments: When no candidates were found, maxArgs was left at 0, which caused it to assume default constructible. This triggered for the QMatrixNxN classes inheriting QGenericMatrix<int, int, Type> with (unsupported) non-type template parameters. For these, the default constructor needs to be specified now. Task-number: PYSIDE-62 Change-Id: I5ce2bed43001780553048d8af0addaba2b22410b Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Merge remote-tracking branch 'origin/5.11' into devFriedemann Kleint2018-09-121-0/+16
|\| | | | | | | Change-Id: Ie346fe7d7ac85ce0b82806904044680713375bf0
| * Add explanation to findChild/findChildren methodsCristian Maureira-Fredes2018-09-121-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | The error message when use these methods was not explaining that the first argument needed to be the parent's type. This adds a small phrase a code snippet that clarify the situation. Task-number: PYSIDE-776 Task-number: PYSIDE-691 Change-Id: I0af57d65065b6d87f195d5f42fd1140a864c5edf Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | PySide2: Silence warnings about not finding functions for modificationFriedemann Kleint2018-09-122-43/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - codecForHtml(), mightBeRichText(), convertFromPlainText() are now in qtextdocument.h - QSortFilterProxyModel: using QObject::parent; is not seen by Clang - QCoreApplication::"winEventFilter() is a left-over from Qt 4 - Member template QMetaEnum fromType() is ignored by Clang - QGraphicsScene::drawItems() is removed a few lines above the failing modification Fixes: signature 'winEventFilter(MSG*,long*)' for function modification in 'QCoreApplication' not found. signature 'fromType()' for function modification in 'QMetaEnum' not found. signature 'parent()const' for function modification in 'QSortFilterProxyModel' not found. signature 'codecForHtml(QByteArray)' (specified as 'codecForHtml(const QByteArray&)') for function modification in 'Qt' not found. signature 'mightBeRichText(QString)' (specified as 'mightBeRichText(const QString&)') for function modification in 'Qt' not found. signature 'convertFromPlainText(QString,Qt::WhiteSpaceMode)' (specified as 'convertFromPlainText(const QString&,Qt::WhiteSpaceMode)') for function modification in 'Qt' not found. signature 'drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*,QWidget*)' for function modification in 'QGraphicsScene' not found. Change-Id: I7fcae940999890b490d0793d160c722924dea6ec Reviewed-by: Christian Tismer <tismer@stackless.com>
* | shiboken: Line-wrap message about not find function for modificationFriedemann Kleint2018-09-121-4/+4
| | | | | | | | | | | | | | | | Put each candidate on a new line and limit the number of member functions in the output. Change-Id: Ia628e61009997b37e0f3c2129fba5ccfa29f763e Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Add bindings for 5.12Friedemann Kleint2018-09-106-0/+58
| | | | | | | | | | | | | | Task-number: PYSIDE-487 Change-Id: Ib37efc4e480a978f920d3bc40756fe7abd59cb19 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | PySide2: Fix warnings about not finding function for modification in 5.12Friedemann Kleint2018-09-071-7/+1
| | | | | | | | | | | | | | | | | | (3dinput) signature 'QKeyEvent(Qt3DInput::QKeyEvent)' (specified as 'QKeyEvent(const Qt3DInput::QKeyEvent&)') for function modification in 'Qt3DInput::QKeyEvent' not found. (3dinput) signature 'QMouseEvent(Qt3DInput::QMouseEvent)' (specified as 'QMouseEvent(const Qt3DInput::QMouseEvent&)') for function modification in 'Qt3DInput::QMouseEvent' not found. (3dinput) signature 'QWheelEvent(Qt3DInput::QWheelEvent)' (specified as 'QWheelEvent(const Qt3DInput::QWheelEvent&)') for function modification in 'Qt3DInput::QWheelEvent' not found. Change-Id: I7c473e96a4b556d5f65fbb7091abf7ddb9ca47a4 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.11' into devFriedemann Kleint2018-09-077-65/+64
|\| | | | | | | Change-Id: I81270510e3a27915781a50769bb627e666970142
| * PySide2: Fix warnings about not finding function for modificationFriedemann Kleint2018-09-073-62/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove some functions that are no longer present. In QtDataVisualization, remove a rejection that did not have any effect since the type was not qualified by namespace and qualify the modifications by namespace and resolve typedefs, amending 966fa464d1f91292c91bede88bfaf1741acdce6e. Fixes warnings: (qml) signature 'QQmlImageProviderBase()' for function modification in 'QQmlImageProviderBase' not found. (datavisualization) signature 'addAxis(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DScatter' not found. (datavisualization) signature 'releaseAxis(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DScatter' not found. (datavisualization) signature 'setAxisX(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DScatter' not found. (datavisualization) signature 'setAxisY(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DScatter' not found. (datavisualization) signature 'setAxisZ(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DScatter' not found. (datavisualization) signature 'resetArray(QScatterDataArray*)' for function modification in 'QtDataVisualization::QScatterDataProxy' not found. (datavisualization) signature 'addItem(QScatterDataItem)' (specified as 'addItem(const QScatterDataItem&)') for function modification in 'QtDataVisualization::QScatterDataProxy' not found. (datavisualization) signature 'addItems(QScatterDataArray)' (specified as 'addItems(const QScatterDataArray&)') for function modification in 'QtDataVisualization::QScatterDataProxy' not found. (datavisualization) signature 'insertItem(int,QScatterDataItem)' (specified as 'insertItem(int, const QScatterDataItem&)') for function modification in 'QtDataVisualization::QScatterDataProxy' not found. (datavisualization) signature 'insertItems(int,QScatterDataArray)' (specified as 'insertItems(int, const QScatterDataArray&)') for function modification in 'QtDataVisualization::QScatterDataProxy' not found. (datavisualization) signature 'setItem(int,const QScatterDataIteItem;)' (specified as 'setItem(int, const QScatterDataIteItem;)') for function modification in 'QtDataVisualization::QScatterDataProxy' not found. (datavisualization) signature 'setItems(int,QScatterDataArray)' (specified as 'setItems(int, const QScatterDataArray&)') for function modification in 'QtDataVisualization::QScatterDataProxy' not found. (datavisualization) signature 'addAxis(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DSurface' not found. (datavisualization) signature 'releaseAxis(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DSurface' not found. (datavisualization) signature 'setAxisX(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DSurface' not found. (datavisualization) signature 'setAxisY(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DSurface' not found. (datavisualization) signature 'setAxisZ(QValue3DAxis*)' for function modification in 'QtDataVisualization::Q3DSurface' not found. (datavisualization) signature 'QSurface3DSeries(QSurfaceDataProxy*,QObject*)' for function modification in 'QtDataVisualization::QSurface3DSeries' not found. (datavisualization) signature 'setDataProxy(QSurfaceDataProxy*)' for function modification in 'QtDataVisualization::QSurface3DSeries' not found. (datavisualization) signature 'populateCopy(QValue3DAxisFormatter&)' for function modification in 'QtDataVisualization::QValue3DAxisFormatter' not found. (datavisualization) signature 'addRow(QSurfaceDataRow*)' for function modification in 'QtDataVisualization::QSurfaceDataProxy' not found. (datavisualization) signature 'insertRow(int,QSurfaceDataRow*)' (specified as 'insertRow(int, QSurfaceDataRow*)') for function modification in 'QtDataVisualization::QSurfaceDataProxy' not found. (datavisualization) signature 'setRow(int,QSurfaceDataRow*)' (specified as 'setRow(int, QSurfaceDataRow*)') for function modification in 'QtDataVisualization::QSurfaceDataProxy' not found. (datavisualization) signature 'resetArray(QSurfaceDataArray*)' for function modification in 'QtDataVisualization::QSurfaceDataProxy' not found. (datavisualization) signature 'setDataProxy(QBarDataProxy*)' for function modification in 'QtDataVisualization::QBar3DSeries' not found. (datavisualization) signature 'setDataProxy(QBarDataProxy*)' for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'resetArray(QBarDataArray*)' for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'resetArray(QBarDataArray*,QStringList&QStringList)' (specified as 'resetArray(QBarDataArray*,const QStringList&const QStringList&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'addRow(QBarDataRow*)' for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'addRow(QBarDataRow*,QString)' (specified as 'addRow(QBarDataRow*, const QString&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'addRows(QBarDataArray&)' for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'addRows(QBarDataArray&,QString)' (specified as 'addRows(QBarDataArray&, const QString&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'insertRow(int,QBarDataRow*)' (specified as 'insertRow(int, QBarDataRow*)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'insertRow(int,QBarDataRow*,QString)' (specified as 'insertRow(int, QBarDataRow*, const QString&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'insertRows(int,QBarDataArray&)' (specified as 'insertRows(int, QBarDataArray&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'insertRows(int,QBarDataArray&,QString)' (specified as 'insertRows(int, QBarDataArray&, const QString&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'setRow(int,QBarDataRow*)' (specified as 'setRow(int, QBarDataRow*)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'setRow(int,QBarDataRow*,QString)' (specified as 'setRow(int, QBarDataRow*, const QString&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'setRows(int,QBarDataArray&)' (specified as 'setRows(int, QBarDataArray&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'setRows(int,QBarDataArray&,QString)' (specified as 'setRows(int, QBarDataArray&, const QString&)') for function modification in 'QtDataVisualization::QBarDataProxy' not found. (datavisualization) signature 'setDataProxy(QScatterDataProxy*)' for function modification in 'QtDataVisualization::QScatter3DSeries' not found. (datavisualization) signature 'addCustomItem(QCustom3DItem*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'addInputHandler(QAbstract3DInputHandler*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'addTheme(Q3DTheme*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'releaseCustomItem(QCustom3DItem*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'releaseInputHandler(QAbstract3DInputHandler*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'releaseTheme(Q3DTheme*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'setActiveInputHandler(QAbstract3DInputHandler*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'setActiveTheme(Q3DTheme*)' for function modification in 'QtDataVisualization::QAbstract3DGraph' not found. (datavisualization) signature 'addAxis(QAbstract3DAxis*)' for function modification in 'QtDataVisualization::Q3DBars' not found. (datavisualization) signature 'releaseAxis(QAbstract3DAxis*)' for function modification in 'QtDataVisualization::Q3DBars' not found. (datavisualization) signature 'setColumnAxis(QCategory3DAxis*)' for function modification in 'QtDataVisualization::Q3DBars' not found. (datavisualization) signature 'setRowAxis(QCategory3DAxis*)' for function modification in 'QtDataVisualization::Q3DBars' not found. (3drender) signature 'attenuation()const' (specified as 'attenuation() const') for function modification in 'Qt3DRender::QSpotLight' not found. Task-number: PYSIDE-487 Change-Id: I61ebc2e29aa2a04c749f5c522fb7f06e35e1b172 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * PySide2: Add some enumerations that were overlooked beforeFriedemann Kleint2018-09-065-3/+11
| | | | | | | | | | | | Change-Id: I038ac183e70c27929837ff93b5921c2dbe00f48b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | shiboken: Improve error messages about rejected enumsFriedemann Kleint2018-09-062-2/+2
| | | | | | | | | | | | | | | | | | | | | | Use different messages for type entry not found and conflicting types. Spell out values of anonymous enums and indicate scoped enums and associated classes. Change-Id: Id60eb70c28790019b29ebae174369e6963909587 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.11' into devFriedemann Kleint2018-09-042-0/+13
|\| | | | | | | Change-Id: Ie8025300580981c5349b31d4846a7f659481991d
| * Support for QAbstractVideoSurface in QMediaPlayerCristian Maureira-Fredes2018-08-291-0/+11
| | | | | | | | | | | | | | | | | | | | The method setVideoOutput did not have support for an QAbstractVideoSurface argument, so I included one with the same idea of the other signatures. Task-number: PYSIDE-794 Change-Id: I50c82eeb1c2c3157c21dc4eb6cff7b0c2b91f31f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * PySide2: Fix compilation with a with custom namespace specified for QtFriedemann Kleint2018-08-291-0/+2
| | | | | | | | | | | | | | | | | | | | | | Add missing QT_BEGIN/END_NAMESPACE macros. Patch as provided on bug report. Task-number: PYSIDE-635 Change-Id: I7ddb447f1aafeb8da72e7e192905bafe3809797d Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | libshiboken: Replace AutoDecRef::operator= by a reset() methodFriedemann Kleint2018-08-312-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The operators cause compiler warnings about multiple versions and missing return types. Replace them by a reset() method (modeled after std::unique_ptr, QScopedPointer). This implies some changes in the templates. Change-Id: I21a8fb9b84ecdfecf9671fa113f1bb3c6483166f Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | libpyside: Fix clang-tidy warnings about class definitionsFriedemann Kleint2018-08-311-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add override - Use = default for trivial constructors/destructors - Add Q_DISABLE_COPY where applicable - Use member initialization and remove constructors from simple structs - Use explicit where applicable (which requires adapting code snippets constructing a QVariant from PyObjectWrapper) - Fix some parameter to take a const ref or pass by value and use std::move in constructors Change-Id: I5e0d2c4ef92d20397a7daba2f8a64b507e678510 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.11' into devFriedemann Kleint2018-08-295-17/+39
|\| | | | | | | Change-Id: I302543eef74bc1f3dc6340cdfab7510a66ea1b6a
| * Fix help display of backport_inspect (python 2.7)Christian Tismer2018-08-282-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Python 2.7 has no signatures in its inspect module. We therefore add the missing stuff for the signature package using 'backport_inspect.py'. The resulting module is a bit unusual because it is assembled from different modules at runtime. When trying the code >>> from PySide2.support.signature import inspect >>> help(inspect) in Python2, we got only very little information because of some heuristics in the pydoc module that checks the module identity and finds only objects from the new one. It turned out that this heuristics can be circumvented when the "__all__" property is provided. pydoc then believes everything. We now have complete help info if the above module is used. The original inspect module is not changed at all. Change-Id: I3f24ada3b9ae9c79ec69a6280ddf3ea78735467b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Add ownership transfer to setGraphicsEffectCristian Maureira-Fredes2018-08-271-0/+5
| | | | | | | | | | | | Task-number: PYSIDE-66 Change-Id: Ifec85a5305bc196b261818bbc1b9af16fc07c927 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Make signature module unconditionalChristian Tismer2018-08-273-17/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | After the signature module has been around for quite a while, there is no longer a reason to leave it optional. At the same time, we set the minimum Python 3 version to 3.5 . Some comments are reworked as well, but nothing real changed. Task-number: PYSIDE-510 Change-Id: I9e960f390d507d24bb45f7028838755fe23e751d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devFriedemann Kleint2018-08-241-1/+1
|\| | | | | | | Change-Id: Ide71a89ef173d6f3e1fa6960f7b15f1fd6cc1bf1
| * Enforce pure PyDict to be associated to VariantMapCristian Maureira-Fredes2018-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Classes that implement the dictionary protocol needs to be treated as PyObject and not plain dictionaries, then we can properly transform PyDicts to Variant Maps. The reason behind this is that it seems that the PyDict_Check is too permisive and allow objects that are not proper dictionaries. The default case by any other Sequence-like object will be a PyObject. Task-number: PYSIDE-82 Change-Id: I86e8a29e5b8740f69c9c6f315e9d337e599bd333 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | shiboken: Reduce generated include statementsFriedemann Kleint2018-08-221-0/+1
| | | | | | | | | | | | | | | | Remove shiboken.h from the wrappers and some unneeded headers from the module header. Change-Id: Ib05433e77686e544e3dcae27f5256ae1bbf146e1 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.11' into devFriedemann Kleint2018-08-206-26/+344
|\| | | | | | | Change-Id: I5dd997d995feae2ddf207eb213fb08233dece77c
| * Remove wrong ownership transferCristian Maureira-Fredes2018-08-161-5/+0
| | | | | | | | | | | | Task-number: PYSIDE-781 Change-Id: Ifd2ecbfe869e8739bfe91d17349a80c36b2823a5 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
| * QtLocation: add missing enumsCristian Maureira-Fredes2018-08-101-2/+6
| | | | | | | | | | | | | | Task-number: PYSIDE-487 Change-Id: I182156694d085c9a021a982b2d71ae1f25fbb9a8 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
| * QtDataVisualization: add ownership transfersCristian Maureira-Fredes2018-08-091-10/+302
| | | | | | | | | | | | Task-number: PYSIDE-487 Change-Id: Icfb707a3f50a7a2040946714049fa2aa178f0f0f Reviewed-by: Christian Tismer <tismer@stackless.com>