aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/PySide6
Commit message (Collapse)AuthorAgeFilesLines
...
* pathlib: support QQmlApplicationEngine loadCristián Maureira-Fredes2021-07-131-1/+6
| | | | | | Task-number: PYSIDE-1499 Change-Id: Ic0cec066fdf25c765c0216a80248790b9c7ea6ec Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Remove QVector conversion templatesFriedemann Kleint2021-07-131-30/+0
| | | | | | Pick-to: 6.1 Change-Id: I7c56bf26d7b501e4c7a906fe87d48002c316d25b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add fallback case for QSettings.valueCristián Maureira-Fredes2021-07-131-2/+8
| | | | | | | | | | | | | | | | This includes a case where the passed type is not a Python type, so we fallback to a QVariant type as Qt/C++ does. A 'TypeError' is raised if the Python type used is not considered. Added a couple of tests too. Pick-to: 6.1 5.15 Fixes: PYSIDE-1619 Change-Id: I5f2e277bb6ccbf9c3a1b23e79717c11ff7635ce5 Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Avoid unnecessary copies in container conversionsFriedemann Kleint2021-07-121-3/+3
| | | | | | | | Use const-ref instead of a value. Pick-to: 6.1 Change-Id: I21a55a6c759e7c5897aade6dec09710a93a7a3b9 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Fix leak in QML ListProperty typeBrett Stottlemyer2021-07-121-0/+3
| | | | | | | | | | Even if propListTpFree() is called, the memory isn't associated with userData unless tpInit() succeeds. Pick-to: 6.1 Task-number: PYSIDE-1617 Change-Id: I825eb7393088633938e6fe5697308a2e05380e5c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add QtNetworkAuthFriedemann Kleint2021-07-122-0/+175
| | | | | | | | | | Ported redditclient example. [ChangeLog][PySide6] The QtNetworkAuth module has been added. Task-number: PYSIDE-1570 Change-Id: I8a057870bf5a59cab227c271c412eb5b9ec4a7b8 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add QtDBus moduleCristián Maureira-Fredes2021-07-124-0/+281
| | | | | | | | | | | | | - List Names example ported. - pingpong example ported. [ChangeLog][PySide6] The QtDBus module has been added. Task-number: PYSIDE-1570 Done-with: Friedemann Kleint <Friedemann.Kleint@qt.io> Change-Id: I8500662fe51754bedf63b7b3b3c3d5ef4890a755 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* ApiExtractor: add classmethod attribute to add-function for tr()Christian Tismer2021-07-092-9/+4
| | | | | | | | | | | | | | | | | | [ChangeLog][PySide6] The tr() translation method of QObject has been changed to be a class method. This makes it possible to use tr() on a class without instantiation. The tr() method of QObject should be a class method. - Build class method support into apiextraktor. - Use the new functionality in the tr() method. Listing of tr() in QtCore.pyi will be solved in an extra check-in. Task-number: PYSIDE-131 Task-number: PYSIDE-1252 Change-Id: Iecb6535b13074f042e34ce04b6672baa266d29f3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6/QtWebEngine: Add further classesFriedemann Kleint2021-07-074-2/+37
| | | | | | Task-number: PYSIDE-1570 Change-Id: If6d97e75a983793085b33622cd99c3715db6df3d Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* pathlib: support all cases which are found in the examplesChristian Tismer2021-07-064-13/+24
| | | | | | | | | | | | Wherever possible/useful, os.fspath was removed and the according pathlike modification inserted. This is still not the awaited end of the conversion, but a good step forward. Task-number: PYSIDE-1499 Pick-to: 6.1 Change-Id: I0a22ddeec06ada05dc4a97ed104d06f5f1bbf472 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Add QtWebEngineQuickFriedemann Kleint2021-07-062-0/+76
| | | | | | Task-number: PYSIDE-1570 Change-Id: Ic10a8f29439d5171487dfa5954c3b37be116a2b3 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Fix logging level being set when importing PySide6Friedemann Kleint2021-07-051-7/+8
| | | | | | | | | | | Move the global variables and initialization into main in generate_pyi.py and set is_ci on the options object. Do the same for consistency in pyi_generator.py. Pick-to: 6.1 Fixes: PYSIDE-1614 Change-Id: I5cb69b58816e5253b3842f135f51fbcbded7b348 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Return QMetaObject.Connection from QObject.connect()Friedemann Kleint2021-07-022-28/+35
| | | | | | | | | | | | | | | [ChangeLog][PySide6] QObject.connect() now returns an instance of QMetaObject.Connection which can be used to disconnect instead of a bool. Change the code to return QMetaObject::Connection and add an overload for Signal.disconnect() taking a connection. Fixes: PYSIDE-1334 Change-Id: I0413888828b2e82bad49812b4918c1d6a8133c5c Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* pathlib: extend QUrl.fromFilePath to support os.PathLikeChristian Tismer2021-07-021-0/+6
| | | | | | | | | | | [ChangeLog][PySide6] The function QUrl.fromFilePath supports now the os.PathLike structure in addition to string arguments. The new interface was applied, everywhere. Change-Id: I2d888383c54b7f964e448d210264c7e902759f43 Pick-to: 6.1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Add QSharedMemoryFriedemann Kleint2021-06-303-1/+26
| | | | | | | | | | | | | Return a buffer from data()/constData(), from which a memoryview can be constructed. [ChangeLog][PySide6] QSharedMemory was added. Pick-to: 6.1 Fixes: PYSIDE-1370 Task-number: PYSIDE-1482 Change-Id: I089801c55ed696d3dd59ef64da0e52e538e9b54d Reviewed-by: Christian Tismer <tismer@stackless.com>
* Unicode: renew implementation and remove Python 2 versionChristian Tismer2021-06-301-15/+13
| | | | | | | | | | | | | | | | | | [ChangeLog][PySide6] The Python Unicode API was updated to the newest version when not in limited API mode, too. The unicode interface that we use in non-limited API mode is deprecated since Python 3.3. - Remove the Python 2 branch - Use the more efficient direct access mode. The annoying message became visible while working on PyPy support, which cannot use the limited API. Change-Id: If83921000f7fbcec79e8d572a0598d50fa6508a5 Pick-to: 6.1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6/QtSensors: Adapt to sensor removalFriedemann Kleint2021-06-302-18/+0
| | | | | | | | qtsensors/d40c4d0b3766043cf4fbaa87acd76b11bf733369 removed QAltimeter, QDistanceSensor and QHolsterSensor. Change-Id: Ic68a68d3461e5ad02cebbb135c89bfc89518339e Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Add further classes and functionsFriedemann Kleint2021-06-294-1/+6
| | | | | | | Pick-to: 6.1 Task-number: PYSIDE-1570 Change-Id: I33fd7887eb4df115e82ec0940f261cb134e1883d Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Fix crashes in QObject.findChild()Friedemann Kleint2021-06-291-18/+27
| | | | | | | | | | | | | | | | | | | For all objects encountered in findChild(), a wrapper was created just to be able to retrieve its type object and check against it. As there is a name lookup involved, it happens that non-QObject wrappers are created for this (in the specific case, an enum wrapper), which leads to crashes later on. Refactor the code, extracting a helper function to PySide which finds the best-matching type object for a QObject to check on that. Rearrange the check so that the name is checked first. Pick-to: 6.1 5.15 Fixes: PYSIDE-1609 Change-Id: I026854201f3f6eca9e5905105127f0a4b4588fa9 Reviewed-by: Christian Tismer <tismer@stackless.com>
* translate: Fix translation for derived typesChristian Tismer2021-06-291-12/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][PySide6] The `tr` function now works also for PySide derived Python class instances with the right context. Qt has a translation feature that works fine on strings that are directly parsed from a Python class. For derived classes, the correct context could not be found. This problem could have been solved by obtaining the calling function name from the frame stack, walking the mro and examining in which class dict the calling function can be found, but this works for Python functions, only. For any function, simply probing the translation result is even easier and always works. We walk the mro, too, but simply use each class name in turn as context and probe by comparison if a translation was done. Change-Id: Ibca9dc0098a3aa26a674b3d5e24ea14e651fe6de Fixes: PYSIDE-131 Pick-to: 6.1 Pick-to: 5.15 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Add missing API of QQuickFramebufferObject.RendererFriedemann Kleint2021-06-284-4/+14
| | | | | | | | | | | The virtuals taking and returning a QOpenGLFramebufferObject were missing since QOpenGLFramebufferObject was moved from Qt Gui to Qt OpenGL. Add the dependency to fix this. Pick-to: 6.1 Fixes: PYSIDE-1611 Change-Id: Idfc234ce79b0619d5c2d8a8901f43733e210eafd Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Fix specification of qPixelFormatCmyk()Friedemann Kleint2021-06-251-1/+1
| | | | | | | | | | | | | Fix warning: Global function 'qPixelFormatCmyk(uchar,uchar,QPixelFormat::AlphaUsage,QPixelFormat::AlphaPosition position,QPixelFormat::TypeInterpretation)' is specified in typesystem, but not defined. This could potentially lead to compilation errors. Amends 6938ca19e7a2b200ee83fdddce3c5908199c1f75. Task-number: PYSIDE-1482 Pick-to: 6.1 Change-Id: Iaa943dc25e06f5937e4ba8379beca82d523ca704 Reviewed-by: Christian Tismer <tismer@stackless.com>
* QtWebEngineWidgets: Add missing dependencyFriedemann Kleint2021-06-251-1/+1
| | | | | | | | Amends ced7d7b9e1a0cd771be36651558332e0010028bb Task-number: PYSIDE-1570 Change-Id: I7b4bfa4792f3b60cb05d6bf450c5edd893a19ac5 Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Remove dependency of QtQml on QtGuiFriedemann Kleint2021-06-232-5/+1
| | | | | | | | QtQml is the base language, it does not need QtGui. Pick-to: 6.1 Change-Id: I9bd8886700bb3c20b32f7c2f0f118030a3b1fc16 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Re-add QtWebEngine, initial stepFriedemann Kleint2021-06-236-167/+99
| | | | | | | | | | | Remove module QtWebEngine. Move most API from QtWebEngineWidgets to QtWebEngineCore. Adapt imports in tests and examples. The new module QtWebEngineQuick will be added in a follow-up step. This is not functional yet as examples crash in the underlying 6.2 Alpha. Task-number: PYSIDE-1570 Change-Id: I00907e5542404560967e6ae07d102193f1f1e154 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6/QtMultiMedia: Adapt to API recent changesFriedemann Kleint2021-06-232-34/+22
| | | | | | | | | | | | | | | | | | | | | | Build against qtmultimedia/a6e014eb088cb9b7bf55bf87c814e75cd4037dc2: - Re-add QAudioInput, QAudioOutput, qtmultimedia/9fd208f11a218d8a8b07fc525258eea3b3596d62 - Rename QCameraImageCapture to QImageCapture, qtmultimedia/83a031c56b74d68fe6d349f78c48a1681e40374e - Remove QImageEncoderSettings, qtmultimedia/d58d93b8e45b2bf62221b104914df771849c007c - Remove QMediaEncoderSettings, qtmultimedia/9c309ede2feb598908b1476062b79d0d23759bf3 - Changes around QMediaEncoder, qtmultimedia/fde5d6f7cce6118cac4ce7b92cd056225737917f qtmultimedia/994bcb23af8399485ddfdd16d2ba34c20326b432 - Comment out QMediaPlaylist, qtmultimedia/5773f7214c7430a98dea3974c0597cb3ee0ea7f5 Pick-to: 6.1 Change-Id: I9beb96c34ebe6132ad68e3628fcbbf0bc48127ef Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Add QKey support for the setShortcut methodCristian Maureira-Fredes2021-06-183-1/+12
| | | | | | | | | | | | | | | | | | When this method is used in Qt/C++, the argument gets internally cast to a QKeyCombination if it is a QKey, but in Python land this is not automatically covered. A workaround was for the users to manually cast the QKey, but this adds an extra step to achieve the same. This patch adds a new method to QAction and QAbstractButton to use setShortcut with a QKey as an argument. Pick-to: 6.1 Change-Id: I9e9ebe16a65cb5aeb26a367faecbbbd414d80e03 Fixes: PYSIDE-907 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* PySide6: Add further global functionsFriedemann Kleint2021-06-184-0/+25
| | | | | | | Task-number: PYSIDE-1482 Pick-to: 6.1 Change-Id: I337f8c817bc4d612a02a5482a63a94303e11c300 Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Add more non-template QML functionsFriedemann Kleint2021-06-171-0/+19
| | | | | | | | | | [ChangeLog][PySide6] A number of free functions from QtQml have been added. Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: I51842df17d9f1c1f9f07d6e3f324d0bf273b476a Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Fix some shiboken warningsFriedemann Kleint2021-06-173-5/+0
| | | | | | | | | | | sources/pyside6/PySide6/QtCore/typesystem_core_common.xml:3019: enum 'QJsonDocument::DataValidation' is specified in typesystem, but not declared. sources/pyside6/PySide6/QtCore/typesystem_core_common.xml:2353: signature 'lock()' for function modification in 'QMutex' not found. sources/pyside6/PySide6/QtGui/typesystem_gui_common.xml:504: signature 'operator<<(QPointF)' for function modification in 'QPolygonF' not found. sources/pyside6/PySide6/QtQuick/typesystem_quick.xml:108: enum 'QQuickWindow::NativeObjectType' is specified in typesystem, but not declared. Pick-to: 6.1 Change-Id: I2d36246c2b3df4b7a7a5678dd3eedf73601a85ef Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Fix some shiboken warnings related to Pathlib supportFriedemann Kleint2021-06-171-6/+2
| | | | | | | | | | | | qt.shiboken: (core) sources/pyside6/PySide6/QtCore/typesystem_core_common.xml:916: signature 'QDir(QString,QString,SortFlags=SortFlags(Name|IgnoreCase),Filters=AllEntries)' (specified as 'QDir(const QString &,const QString &,SortFlags=SortFlags(Name|IgnoreCase),Filters=AllEntries)') for function modification in 'QDir' not found. qt.shiboken: (core) sources/pyside6/PySide6/QtCore/typesystem_core_common.xml:2185: signature 'fromFilesystemPath(QString)' (specified as 'fromFilesystemPath(const QString &)') for function modification in 'QFile' not found. qt.shiboken: (core)/sources/pyside6/PySide6/QtCore/typesystem_core_common.xml:2185: signature 'setPermissions(QString,Permissions)' (specified as 'setPermissions(const QString &,Permissions)') for function modification in 'QFile' not found. Amends 5276f9bf787eadd5a336f5f6eb6bcf19865de198. Task-number: PYSIDE-1499 Change-Id: I3bfd8f0026993fd080b0b74769958c2084e0eb9e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Add classes QChannel, QChannelComponentFriedemann Kleint2021-06-172-4/+2
| | | | | | | | | | | The required fix in Qt3D should be in now. Amends 886ed33f84453a05ca04c50ed39240fbfd8e1a9b. Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: I6f211112296713eeeba7b908d5390e30fbc06b8c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Expose QHostInfo.lookupHost()Friedemann Kleint2021-06-172-1/+21
| | | | | | | | Pick-to: 6.1 Fixes: PYSIDE-1160 Change-Id: If8fa16d965fcadaf622beee9ee45e207dc7195d8 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* PySide6/QSignalSpy: Add constructor taking a signalFriedemann Kleint2021-06-163-0/+71
| | | | | | | Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: Ifb9061af1828e7348de3ad5407c830aeb7d4f386 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* pathlib: remove return-type from modify-functionCristian Maureira-Fredes2021-06-161-16/+16
| | | | | | | | | return-type is not a valid element for modify-function, and it was generating many warnings. Pick-to: 6.1 Change-Id: I82b37d6af274fae784188cd2f7be3ed4d1953a6b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Add BluetoothServiceInfo::Alternative, SequenceFriedemann Kleint2021-06-162-2/+4
| | | | | | | Fixes: PYSIDE-1571 Change-Id: I0da6014b46222531738ad6d4981a29ba3d8235dc Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Fix signature of CoreApplication.instance()Friedemann Kleint2021-06-161-0/+1
| | | | | | | | Use the newly added pyi-type attribute to add Optional. Fixes: PYSIDE-1467 Change-Id: I19f203448cef7d14f49668ce296700099dcadda5 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Fix signature of QObject.tr()Friedemann Kleint2021-06-161-1/+2
| | | | | | | | | Use the newly added pyi-type attribute to specify str instead of bytes. Fixes: PYSIDE-1329 Change-Id: Ia2c78715851671056ba1fbaac9bc85e39f9ec4ce Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Add Qt::FindChildOptions to QObject::findChild(ren)Friedemann Kleint2021-06-142-12/+22
| | | | | | | | Pick-to: 6.1 Fixes: PYSIDE-905 Change-Id: Iae343d15fb0db1d37f95ab2d443596777d2dfac6 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
* build support for pathlib.Path, baselineChristian Tismer2021-06-122-0/+87
| | | | | | | | | | | | | [ChangeLog][PySide6] pathlib.Path gets additionally accepted for all function arguments which have a std::filesystem::path type. This is a first part that implements those modifications which have a std::filesystem::path entry. In a later patch, all the possible other Path insertions will be made. Task-number: PYSIDE-1499 Change-Id: I2dec04dbdb2aaff6ca56c39b28f60281262fe078 Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Refactor qvariant conversion codeFriedemann Kleint2021-06-111-8/+18
| | | | | | | | | | | | Use a switch on the meta type id instead of string comparison and catch None-cases in qvariant conversion early on (QMetaType::Nullptr and QMetaType::VoidStar with 0). Pick-to: 6.1 Task-number: PYSIDE-1585 Change-Id: I05da179b8eef6f9a9b86a66e1c40762b655bd724 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Add QSignalSpyFriedemann Kleint2021-06-112-1/+7
| | | | | | | Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: I7a413a5ca3e64e9270026d4ea5d73d28df20ca5c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Fix qcalendar_test.py on Windows/debugFriedemann Kleint2021-06-091-0/+4
| | | | | | | | | | | | | | | | | | | | | There is apparently some clash between QCalendar(QCalendar::System)/ QCalendar(size_t) on Windows, causing: ====================================================================== ERROR: testCalendar (__main__.TestQCalendar) ---------------------------------------------------------------------- Traceback (most recent call last): File "sources/pyside6/tests/QtCore/qcalendar_test.py", line 47, in testCalendar calendar = QCalendar(QCalendar.System.Gregorian) TypeError: Invalid type for unsigned long long conversion Reorder the overloads manually to prevent this. Note this is only in debug mode. Pick-to: 6.1 Change-Id: I1de706d9bf8456a27ae68f995c6d744ce29ae23c Reviewed-by: Christian Tismer <tismer@stackless.com>
* Use conditional processing in the type systemFriedemann Kleint2021-06-098-102/+20
| | | | | | | | | | | In CMake, remove the AUTO_OS variable from the check_os() macro. Fold the macOS/X11 type system files of Qt Core into the common type system file. Task-number: PYSIDE-802 Task-number: PYSIDE-1568 Change-Id: Ib751f40fbf7eca8fe4d08270db4fbc1e938323c5 Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Adapt to latest changes in QtMultimediaFriedemann Kleint2021-06-092-4/+5
| | | | | | | | | | Rename QCameraInfo/QAudioDeviceInfo to QCamera/AudioDevice, adapting to qtmultimedia/1c4dd0c23c0a7bdefaeecbae491a12f49a6b9ce5. Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: I1a2972300aa0a8119e4c90919ed464124a7a6419 Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Add missing enumerations and network classesFriedemann Kleint2021-06-093-2/+6
| | | | | | | | | Amends e72dc6d88f85fea451338523058e0407e8c8f0b5. Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: I4eea6fc9949ef2307d3b30e18cf2801e8b56d6bb Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken6: Fix increment/decrement operatorsFriedemann Kleint2021-06-091-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | For classes that have increment/decrement operators (++/--), shiboken6 generated operators +=/-= ( __iadd__/__isub__) by calling them n times. This was mainly intended for iterators. However, when both operator++/-- and operator+=/-= were present (as introduced by qtdeclarative/f8f31dd0e1f9425ba272691c79e719ebc4bcfb94 for QJSPrimitiveValue), duplicate code and errors were generated. This requires filtering of the operator functions. Introduce a separate function type for increment/decrement operators and remove them if operators +=/-= were found. Also, when both prefix and postfix version of the increment/decrement operators are found, remove one. Extend existing class IntWrapper from libsample for testing. Add explanatory comment and use prefix increment. Pick-to: 6.1 Change-Id: I0f8a0c79a6f74974ba327d21f35fff74962ffd3a Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken6: Disable construction of abstract classes when C++ wrapper is disabledFriedemann Kleint2021-06-081-2/+0
| | | | | | | | | | | | This removes the need to remove the constructors in the typesystem. Amends 1d044f467070a040713c9566a8a8de3a56c571e7. Task-number: PYSIDE-1568 Pick-to: 6.1 Change-Id: I2e2312b01c160b420c637a0eb7ddb049a7f596af Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Add more classes from QtQml/QtQuickFriedemann Kleint2021-06-074-19/+50
| | | | | | | | | | | [ChangeLog][PySide6] A number of missing classes from the qtdeclarative repository have been added. Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: Ic6a74cca926338fef5dcf0a5d60a9aa540c6602e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Adapt to latest changes in QtMultimediaFriedemann Kleint2021-06-072-4/+4
| | | | | | | | | | Rename QAudioOutput to QAudioSink and QAudioInput to QAudioSource, following qtmultimedia/3350275e25c96b391e31d2c9c472b4f0aa58b8f7, qtmultimedia/aa1f073a32147d147e4e9a0fee9dde8ccc30531e. Pick-to: 6.1 Change-Id: I78bca6f8e9c43ef42753b3a81921440afe4ad387 Reviewed-by: Christian Tismer <tismer@stackless.com>