aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* shiboken6/Type system parser: Use a QHash for element type lookupsFriedemann Kleint2022-01-241-9/+52
| | | | | | | | | | | This allows for the reverse lookup, helping with error messages and debugging. Task-number: PYSIDE-1766 Change-Id: I8d2a9db246e306042af34522c245fb11c151e892 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 60a797c9959a6ae3e18b68b7ff06ffad0a2c6f5e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: Add __repr__ to QEventsFriedemann Kleint2022-01-214-11/+119
| | | | | | | | | | | | | | | Add a basic __repr__ function to QEvent that shows the type enumeration value. For QtGui, use the debug operator from qevent.h for the relevant events. Add a generic template for using QDebug with module name. [ChangeLog][PySide6] __repr__ functions for some QEvent-derived classes were added. Task-number: PYSIDE-1788 Change-Id: I02aca4c98cf3ebd69558103c7d23660d1eb840fb Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 3706622525261e10c4f8eaeecd977de7e455b8f5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* examples: Fix examples/widgets/richtext/textedit/textedit.pyChristian Tismer2022-01-211-4/+4
| | | | | | | | | | | | | | | The function setUnifiedTitleAndToolBarOnMac is called without self prefix. Several imports were missing. This is probably a macOS code path which was untested. Change-Id: Idf96aea668f3822377e4deda74b53b18db150038 Task-number: PYSIDE-535 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 71e5e26e4e3379f5560ff3299122c9109a661cce) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* examples: Fix state-machine/rogue/rogue.pyChristian Tismer2022-01-211-1/+1
| | | | | | | | | | A variable "database" had to be "QFontDatabase". Task-number: PYSIDE-535 Change-Id: I7ccc6c51bdc071cdcfba7cb77fa93773a059f14c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 093ee507f5ea71d76fd762bec6cbced93d29399d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Examples: Remove remaining qmlRegisterType()Friedemann Kleint2022-01-219-21/+52
| | | | | | | | Task-number: PYSIDE-841 Change-Id: I2c3f9b22a3c1fdc6ddbdd7f08db38db613274cfd Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit d898e002380e2b8808592b6e0e05c689e1b37bd8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* examples: Fix widgets/screenshot.pyChristian Tismer2022-01-201-1/+2
| | | | | | | | | | | This example contained the ":=" operator which is not allowed in Python 3.7 . Task-number: PYSIDE-535 Change-Id: I848c16456807a7a56bdfd80f7cf74e3a86e24e94 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 935ccfefad7f78d56d61d3791ecb0a8491f72052) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Safe distinction of Nuitka compiled methodsShyamnath Premnadh2022-01-2010-10/+82
| | | | | | | | | | | | | | | | | | Adds an extra check to see if __code__ is present. As mentioned in PYSIDE-1755, Mocks are callable objects without __code__ attribute, unlike Python Method or Functions. However, a Mock also has im_func and im_self attributes. We made the assumption __code__ would be present if im_func and im_self are present, and this makes it fall under the category of a compiled method. This patch makes an extra check to see if __code__ is present. If it is not, then the Slot (here Mock) is considered as a callable method. Task-number: PYSIDE-1755 Change-Id: If7e8f52dfb2409cd856eec0d0b41891d751d8a69 (cherry picked from commit 56f66f128566bd08f027fee46bb42a6c4f57a26e) Reviewed-by: Christian Tismer <tismer@stackless.com>
* examples: Fix conversion omission in settingseditor.pyChristian Tismer2022-01-191-1/+1
| | | | | | | | | | | | | A list entry was used as-is in a join expression without converting it to a string. This was found while testing examples with PyPy. Task-number: PYSIDE-535 Change-Id: I4fa2f1cc10f3eb8027966a1946a940458d1526d4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 26774f8b2c07b0475dba18b14eca382715cd9789) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* examples: Fix f-string in corelib/mimetypesbrowser.pyChristian Tismer2022-01-191-1/+1
| | | | | | | | | | This was found while testing the examples with PyPy. Task-number: PYSIDE-535 Change-Id: I75296f314c4411427cfd8bc509f242cd754dde91 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit e536b0469ffc9e834dbb6bc116feb570f930367b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Adapt to new Multimedia-APIFriedemann Kleint2022-01-191-0/+3
| | | | | | | | | | | | | | | | | | | - Add enum Loops to QMediaPlayer (qtmultimedia/23333fb4be2293ceaf129fec134ea687a30596d9) - Add enum RotationAngle to QVideoFrame (qtmultimedia/7fa8e82f1dcef6e983fbf25d7c07a1bc86957fea) - Add enum AudioChannelPosition to QAudioFormat (qtmultimedia/83e9c2d8c3b278bae81a6060cc1657a95250f1ee) Since the changes appear in 6.2, too (due to Multimedia being a tech-preview), add a pick-to. Task-number: QTBUG-95010 Change-Id: Ie91250de143e8a77c2251aa25ab4c7665e4e8843 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit d7dcd28764ab0a52f82a6ab09dd9e5337a915148) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: Enable checking by patch versionFriedemann Kleint2022-01-191-1/+1
| | | | | | | | | | | | The multimedia module in 6.2 still receives new API (due to Multimedia being a tech-preview). This requires checking by patch version. Change-Id: I49e2ae746fdae10893ab4155e464a25ae8fcef6c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 7ac3b61a28c6b8decf681ce1975e7afa1f42e692) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6/Type system parser: Purge empty code snippetsFriedemann Kleint2022-01-193-0/+34
| | | | | | | | | | | | Newline characters in conjunction with <insert-template> cause empty snippets to be added. Add functions to purge them. Task-number: PYSIDE-1766 Change-Id: I534de369b45c4e785a643f6539a5c7fb395909f2 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 26a1b40e4fa878a11995528dcf04158b44477477) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6/Type system parser: Handle native-to-target and vv in argument ↵Friedemann Kleint2022-01-192-34/+80
| | | | | | | | | | | | | | | conversion rules Introduce new parser states and handle it accordingly in </native-to-target> and </target-to-native>. Use it in the sample tests. Fixes: PYSIDE-1766 Change-Id: Id00dd3ad65799c497b008499c02fbf7ee2e5f856 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit c1e64f5e5583ba6e9e36bf54327747018a2541bc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Fix handling of value types with protected constructorsFriedemann Kleint2022-01-196-4/+17
| | | | | | | | | | | | | | | | | | | Value types with some protected constructors (like QOperatingSystemVersionBase in 6.3) caused compile errors on Windows where the protected hack is disabled since non-accessible constructors were used. The check for isValueTypeWithCopyConstructorOnly() needs to be fixed to exclude protected constructors in case AvoidProtectedHack is set. Similarly, the visibility of the minimal default constructor needs to be checked. Add the AvoidProtectedHack setting to ApiExtractorResult for this purpose since it influences the API in a way. Change-Id: Ifeab320b9391aa21c5b1de4d21d2d8276fe44d3f Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit ef2223f3d712e5f66c4654f7bce2011869ef958a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Pass more generator options to the api extractorFriedemann Kleint2022-01-1811-26/+79
| | | | | | | | | | | | Introduce flags representing generator options and pass AvoidProtectedHack besides UsePySideExtensions. Move AvoidProtectedHack to the Generator base class for this purpose. Change-Id: I170b5ace30057c4074d73afce3f88d086eb54775 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 676c6641d1bda430876e49c92d7814b60b35f885) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6/Type system parser: Introduce a helper for the code snippetsFriedemann Kleint2022-01-152-69/+107
| | | | | | | | | | | | | | | | | | | | Introduce a helper returning a parser state depending on the element stack and building on that, a helper which returns the code snippet to append to. This is used for character handling and <insert-template>. It also allows for removing StackElement::InjectCodeInFunction, which was a fake element for remembering that the code injection targets a function. Also, add all type entry code snippets directly to the type entry instead of temporarily storing them in StackElementContext::codeSnips. Use the latter for conversions only and rename it accordingly. Task-number: PYSIDE-1766 Change-Id: I291ec2db58687fdf63c124ddde26165f8eb09856 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit b4ffbed19625bbf468c660a6dcc35a1101b8791b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6/Type system parser: Simplify codeFriedemann Kleint2022-01-153-11/+10
| | | | | | | | | | | Returning a reference from TypeEntry::codeSnips() allows for some simplification. Task-number: PYSIDE-1766 Change-Id: I85bdd57ef3523083a95dbbafb36d8caf84282e03 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 2b7da99972845e11fc9506b0fe2832b65d4b3ab6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Documentation: Mention that .ui/.qml files should be passed to lupdateFriedemann Kleint2022-01-151-0/+10
| | | | | | | | | Task-number: PYSIDE-1774 Task-number: PYSIDE-1717 Change-Id: I7aa2a39e3d768fcbbec953720c8e89824df9f916 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit bb46bd69207e7ad3479d0b89750385a294144174) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add a tool to regenerate the ui files of the PySide examplesFriedemann Kleint2022-01-151-0/+73
| | | | | | | | | | Similar to ebf0259817956bf8932fb8f25e7ac90e6a7d7501. Task-number: PYSIDE-1773 Change-Id: I93f36fc3203936d0617aa25085f3513df79ac97b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 0647cc71285d7245ceb803dfed4af24d9642277e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Regenerate the example ui filesFriedemann Kleint2022-01-158-33/+57
| | | | | | | | | | Remove some star imports. Task-number: PYSIDE-1773 Change-Id: I42e3034ae91bdc5779b6ed632fe4f5d234f060b0 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 2511282c895d048f7eadb633219dea6f4d4d5b14) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6/Type system parser: Remove class StackElementFriedemann Kleint2022-01-142-212/+211
| | | | | | | | | | | | | | Change the ElementType enum to be a global enum class and replace the linked list of StackElement in the parser by a stack of the enum. Fix a broken parent check for inject documentation. Task-number: PYSIDE-1766 Change-Id: I0d80713bcff3f6a7077998aae91841bb0785a7e5 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 197dc883975b46742cb0dc8a0e2b2028f66ceefa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6/Type system parser: Remove m_currentDroppedEntry pointerFriedemann Kleint2022-01-142-13/+6
| | | | | | | | | | It is not needed since the parent pointer is preserved in m_current. Task-number: PYSIDE-1766 Change-Id: Iafe1f55e413f04b59b77c3c337dd913e14d22f86 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit a4618cc05784019760800e80e816f2c70acc0ce5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6/Type system parser: Move type entry from StackElement into ↵Friedemann Kleint2022-01-142-104/+114
| | | | | | | | | | | | | | | | | | | | StackElementContext The type system parser currently has 2 stacks (StackElement (per XML element)/Context stack (per type entry, for most types except function and smart pointer)). Aiming to change StackElement into a simple stack of XML element enum values, move the type entry member into the StackElementContext. This requires some changes ensuring a StackElementContext element is pushed for all type entries. As a drive-by, use a QSharedPointer for the context stack, removing the need to delete entries. Task-number: PYSIDE-1766 Change-Id: I2dce728184c1f51e4ee17bef1d77083deabccfde Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 611971d74349d1f9355f8934f079e9b54c360f5a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Fix debug operators for code snipsFriedemann Kleint2022-01-132-9/+27
| | | | | | | | | | | | Declare the operator and output conversion rules of argument modifications. Output code snip fragments and template names. Task-number: PYSIDE-1766 Change-Id: I56de33a2a56eee2fa357c5dda89cc391c99b76f9 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit f01e3e2bcc78222144c0279a8bfac274f8054d2f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Move TemplateInstance/TemplateEntry members into type system parserFriedemann Kleint2022-01-132-29/+20
| | | | | | | | | | | These type system elements cannot be nested, so, there is no need to have them in a stack. Task-number: PYSIDE-1766 Change-Id: I4c51a4a9d5dc20eb528086a7fa6108fada6b0a9b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit ebd6f9fca7d7fd3390f48159b6c4c860ac823381) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add QXYSeries PointConfiguration enumCristián Maureira-Fredes2022-01-131-0/+1
| | | | | | | | | | | The 'PointConfiguration' enum was missing, disabling the generation of all the methods that were using it. Fixes: PYSIDE-1770 Change-Id: Id64889e8058dfdf2d5b7734c767d24bad1fa8d08 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 921c72d47add58014b5d37797cff361b2dda4581) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Documentation Update: conversion-rule tagShyamnath Premnadh2022-01-131-0/+11
| | | | | | | | | | - The 'class' attribute of the tag is made explicit on what each value it takes mean. Task-number: PYSIDE-1766 Change-Id: Ib7ebe1cde81df09e40eafccca7bdf4d70307b90d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 4f92f707796f61466b208d2278e74c8a520d3c92) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Rename type system parser enumeration value for clarityFriedemann Kleint2022-01-122-11/+11
| | | | | | | | | | Rename TemplateInstanceEnum to InsertTemplate. Task-number: PYSIDE-1766 Change-Id: I3876833c56c0cda067d187444b2bd761411fce8e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit bd0e0bdec184ae9f8e82a2c5e5101faf9be1db83) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Remove code for unimplemented elements "custom-constructor", ↵Friedemann Kleint2022-01-116-123/+31
| | | | | | | | | | | | | | "custom-destructor" As a drive-by, remove the union from the internal StackElement class. Add an Unimplemented value to the Element type enumeration. which requires making it 64bit. Task-number: PYSIDE-1766 Change-Id: Ib869558a80b362b582427bc7cd1679bcd55d3433 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 18c5fc884ae5a93df197e9ec2abd9e949f0d2300) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: Fix crashes in WebEngine signal emissionsFriedemann Kleint2022-01-111-3/+3
| | | | | | | | | | | | | | There seems to be a problem with signals with object type parameters. Change QWebEngineCertificateError and QWebEngineFullScreenRequest (gadgets) to be value types. Fixes: PYSIDE-1768 Fixes: PYSIDE-1769 Change-Id: I9863f9e26a9a7bf7751369057fcad6eb10798817 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit ec07828d7734f0cb8c957824c998de1b67d89a03) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Python example for QRegularExpressionShyamnath Premnadh2022-01-115-0/+565
| | | | | | | | | | | - Analogous example in C++ - https://doc.qt.io/qt-6/qtwidgets-tools-regularexpression-example.html Task-number: PYSIDE-841 Change-Id: Id88824d444b2429bc2325832c4c92fb7a2d107f6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit a9469c1c245943dfd4f14ae55e1f2282756d31fb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add reserve()/capacity() to contiguous opaque containersFriedemann Kleint2022-01-064-0/+64
| | | | | | | | | | | | | | Generate bindings for reserve()/capacity() if the container supports it. [ChangeLog][shiboken6] Bindings for reserve()/capacity() were added to contiguous opaque containers. Task-number: PYSIDE-1605 Change-Id: I82dd2efc4a1831600aa2fae9427e5d13a67cdd11 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 683314b3491dea17f0205baa2976e71595ccb05d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix some doc warnings in the debugging tutorialFriedemann Kleint2022-01-062-4/+4
| | | | | | | | | | | | | | | | | | | Fix: - sources/pyside6/doc/tutorials/debugging/qtcreator/qtcreator.rst:2: WARNING: Title underline too short. - sources/pyside6/doc/tutorials/debugging/qtcreator/qtcreator.rst:21: WARNING: Inline interpreted text or phrase reference start-string without end-string. Change the syntax highlighting to javascript, since json does not like the embedded comments of the MS-extended jsonc, fixing: sources/pyside6/doc/tutorials/debugging/vscode/vscode.rst:21: WARNING: Could not lex literal_block as "json". Highlighting skipped. sources/pyside6/doc/tutorials/debugging/vscode/vscode.rst:47: WARNING: Could not lex literal_block as "json". Highlighting skipped. Amends d727a69e2f58be167845b8179edf1735df6ccf1e. Task-number: PYSIDE-841 Change-Id: I171c57e4a7f787559022fbbb14a7eb7bb9f1a91c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 4a8b8e3dc45f1067a7f75e5f7ce95d8e639d530a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* build_scripts: Ensure cmake process terminatesFriedemann Kleint2022-01-051-6/+5
| | | | | | | | | | | | Use a context manager to fix warning: c:\Python310\lib\subprocess.py:1067: ResourceWarning: subprocess 7844 is still running _warn("subprocess %s is still running" % self.pid, ResourceWarning: Enable tracemalloc to get the object allocation traceback Change-Id: I6e3ebf584974f8a2d3776847b13fe092d3d4be4a Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 5925ccb54b818e9dfc0766480683d232f95e6965) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* build_scripts: Avoid a racing condition in installChristian Tismer2022-01-051-0/+5
| | | | | | | | | | | | | | | | | | | On macOS and a custom Python built, the "install" option crashes with an import error. This is a timing problem, because an import is triggered when it is already being processed. The problem is hidden by the use of virtualenv. [ChangeLog][PySide6] The move from distutils to setuptools caused a racing condition with certain Python builds. Change-Id: I4dcda2b083234e88c272a1794388f6d0e7b8f0e5 Fixes: PYSIDE-1760 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 981ffb345928cf740a5b751aaef43a266d077d13) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* __feature__: Fix a bug in true_propertyChristian Tismer2022-01-031-2/+2
| | | | | | | | | | | This was a wrong condition that checked for the true_property flag, but not the actual existence. Change-Id: I9fa4c7a9c907f23fd15405fe5d747060dddfc6d0 Fixes: PYSIDE-1757 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 159adca779f67afcbe669d298572fb0ea57a4236) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* AudioSource Example + Binding for QAudioFormat.normalizedSampleValue(data: ↵Shyamnath Premnadh2021-12-285-0/+264
| | | | | | | | | | | | | | | | | | | | | bytes) In order to make the AudioSource example available in Python, the following functions were properly exposed to Python. - normalizedSampleSource(const void* data) const in QAudioFormat Previously, Shiboken took care of exposing these functions on its own. The fix here is to use PyBuffer as the counterpart for const char* in the Python side. The patch also consists of the working AudioSource example. Currently only the Push Mode works. Inorder to make the pull mode work, the function writeData(const char* data, qint64 len) should be properly exposed from C++ to Python through typestem, without code duplication. Task-number: PYSIDE-841 Task-number: PYSIDE-1743 Change-Id: I1cd2c28136836c9bdf1021693f74e59eb98f390b Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 0c62b3c2fc974d0c652d905a1268f3d0f74a330e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix Tetrix example errorDaniel J Brown2021-12-241-2/+2
| | | | | | | | | | | | | | | Previously, the Tetrix example used the old camelCase style method names. The `.setShape()` method in the code was not changed to reflect the swap to snake_case which caused errors. `.setShape()` has now been swapped for `.set_shape()` Fixes: PYSIDE-1732 Change-Id: I9876ceb53043cbce2e452326fe8fdb4f47e87e79 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 68fc31e0304c3cdf33aef5ad3e13786362496c59) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add borderlayout exampleJaime Resano2021-12-244-0/+298
| | | | | | | | | | Border layout example ported from C++ to Python Task-number: PYSIDE-841 Change-Id: I66df4041183ae1eced6fe75d52c21ce381c3d3eb Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 14a03a7a55307b41d8664f05216ca9ea1f3c9be7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add Debugging TutorialShyamnath Premnadh2021-12-2312-0/+309
| | | | | | | | | | | | | Add tutorial to debug C++ counterpart of PySide application. This commit provides general instructions to setup everything for debugging and debugging using either QtCreator/VSCode. Task-number: PYSIDE-841 Change-Id: I6a95ab64507a304fc19a2cdcdf6d29b6c96cca03 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit d727a69e2f58be167845b8179edf1735df6ccf1e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* signal: Fix a segfault when signal is applied to non-QObjectChristian Tismer2021-12-231-29/+28
| | | | | | | | | | | | | | | | | | When a signal is created on a normal Python type, this should be recognized on initialization and rejected. Instead, this creates a segfault. To simplify matters, cosmetic changes to pysidesignal.cpp from other check-ins are included as well. [ChangeLog][PySide6] A crash when inserting a signal into a non-QObject was fixed. Task-number: PYSIDE-229 Task-number: PYSIDE-1675 Change-Id: I7fe1d5482ddfbf09ec1e4708c47693f2ce47c744 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 17ff0bc4c5fed1ecd2191be90b5e5f2161160879)
* Add mimetypesexampleShyamnath Premnadh2021-12-216-0/+446
| | | | | | | | | | - port of corelib/mimetypes/mimetypebrowser example from Qt6 Task-number: PYSIDE-841 Change-Id: Ib2f1637935662f969b264315bbf8ba036bb9420b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 73bf0e9732cf4945bdd7158d04d29779da55a29b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: Speed up test qqmlnetwork_test.pyFriedemann Kleint2021-12-171-2/+5
| | | | | | | | | | | Instead of relying on TimedQApplication to tear down the test, wait until the network request is started and start a timer to close the window. Change-Id: Ib68f97d8fb57503b7e1a228fbd54755e986a8605 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 945f962bd34e2c02d7c31f68428627c5fee6a1e9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: build multiple inheritance pass-through for SignalsChristian Tismer2021-12-165-14/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | Signals always had support for calling a method that is sitting at the same place as a signal with the same name. This is done by letting the signal act as a proxy for the hidden method. Lately, the equality check of signal instances was corrected (PYSIDE-1431) which had the side effect that now some method lookups failed in multiple inheritance. This patch extends the search for homonymous methods to look not only in the signal attribute, but extends the lookup along the whole tp_mro. The related tests were slightly re-arranged to keep them together. [ChangeLog][PySide6] Signal instances allow pass-through of methods with the same name, explicitly and with multiple inheritance. Change-Id: I92828855ada7aa8d98517918008b93fc79629d8e Fixes: PYSIDE-1730 Task-number: PYSIDE-1431 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 85799120d09e251a761699ff71547b7dc80a741b) Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Build system: Remove regeneration of the example resourcesFriedemann Kleint2021-12-153-31/+1
| | | | | | | | | | | | | | With the growing nummber of examples, this started to slow down the build process and produced warnings about the linguist example. It has been replaced by the tools/regenerate_example_resources.py script. Change-Id: Ia00ad35d8b3c0ecea62a497e1665b5b7ceb25e7b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit fa7695ec63dd61a03fb491f80c3cf5dcb9f0dd76) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: Fix QQmlApplicationEngine.load(str) to not construct a QUrlFriedemann Kleint2021-12-154-2/+116
| | | | | | | | | | | | | | | Specify the overload number so that string is checked first. Add a test since QQmlApplicationEngine is not yet tested. Amends 2cc81fd5e63bf931d8c9d1c8c2c66ac9e16ef087. Fixes: PYSIDE-1736 Task-number: PYSIDE-1499 Change-Id: I1736928f1acf17fda5671bd11d16c5017141f1ff Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 3efe0b3e66450aa98fd8600bc0ac356bcbe5ad54) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Regenerate the example resource filesFriedemann Kleint2021-12-1517-3553/+3553
| | | | | | | Change-Id: I6e92728d6208aad0c0d8871ef362da30a61e358e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit eff6361beec0f3251134a77350d24cf8ee25a2d7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Documentation: Skip functions using RValue referencesFriedemann Kleint2021-12-131-1/+8
| | | | | | | Change-Id: I7a4990e8d389d493ddd6155d12a1c2cc36b0e450 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit b2008ac1e4441d92788ee986baa2a1df62be85e7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix documentation generationFriedemann Kleint2021-12-104-57/+154
| | | | | | | | | | | | | | | | | | | | | | | | | The fuzzy checking introduced by 87efa57c6ddc1a8364b2ea4d9f909372d0af5cfc actually produced ambiguous matches like QStandardItemModel::insertRow(QStandardItem *), QStandardItemModel::insertRow(constd QList<QStandardItem *> &). Change this to be a 3 step process: First, try an exact type match. If that fails and there are arguments using const ref qualifications, try a fuzzy match. Check whether this produces a single match. Finally, try matching by argument count. As a drive-by, format qualifiers of template parameters like QList<QStandardItem *> correctly. Change the messages to report "Fallback used" instead of "Cannot find" if a fallback is found to make it easier to spot failures. Amends 87efa57c6ddc1a8364b2ea4d9f909372d0af5cfc. Change-Id: I5b133274ae0f056e6901b0a66d385a270cabb9c9 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 133b91abb330f8e496f3a82920e000ab079f358e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update example documentation of samplebinding / scriptableapplicationFriedemann Kleint2021-12-104-21/+43
| | | | | | | | | Update versions and build information. Change-Id: I82eb4b36e2357145f89bb640f2674deda6fe2253 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 15a5cea299c01669095aba071afca0521107b487) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>