aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/libpyside/dynamicqmetaobject.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix handling type with equal names in signal/slotFriedemann Kleint2025-10-011-3/+4
| | | | | | | | | | | | | | | | | | | | The decision whether to create a derived meta object class parsed from the Python type in MetaObjectBuilder was based on comparing the class name to the base meta object (the Python parsing must not be done when creating a meta object for a plain wrapped Qt type). This led to mixups when base class names were identical which is possible in Python. To fix this, split apart the code path not requiring Python type parsing (called from the wrapper code when initializing wrapped Qt classes) and expand the code for Python derived classes into initQObjectSubType(). Fixes: PYSIDE-3201 Pick-to: 6.10 Change-Id: Id62e7dc9b8af16154b161cdbf5dd0d460c55f6f1 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* MetaObjectBuilder: Handle quint64 enumerationsFriedemann Kleint2025-06-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | In the delayed creation of QMetaEnum's in MetaObjectBuilder, when parsing QEnum-decorated values, check for large quint64 values and add them correctly. For class QMetaEnum, instead of exposing the newly added functions "std::optional<quint64> value64()" and similar, inject code handling large values into the existing bindings since Python's int type is able to represent the type. Adapt to qtbase/d41b87e06742b491c4e36aeae32e03f85b078d69. [ChangeLog][PySide6] @QEnum, @QFlag and QMetaEnum now support unsigned 64 bit values for QML usage (with the exception of Qt Widgets Designer). Task-number: QTBUG-27451 Task-number: QTBUG-111926 Task-number: PYSIDE-1735 Change-Id: Ib0b26dbc350c404d354c8f53afee946e29f2adb3 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Port to Qt include styleFriedemann Kleint2025-03-271-2/+2
| | | | | | | | | Replace the Qt forwarding headers by the .h files. This brings down the dependency list by approx 6%. Pick-to: 6.9 Change-Id: Iae7640ccbdf6a8be68137922d4191522d914d790 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* MetaObjectBuilder: Export the class symbolShyamnath Premnadh2025-03-191-2/+2
| | | | | | | | | - This enables the class to be used in libpysideqml to support the `AutoQmlBridge` function. Task-number: QTBUG-134668 Change-Id: I9c639c76ce23117dc259a811a7c4257fc79179a7 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libpyside: Pass MetaObjectBuilder signature as QByteArrayFriedemann Kleint2024-07-091-3/+3
| | | | | | | | | | | | | | Change the MetaObjectBuilder::addSlot()/addSignal() functions to use a QByteArray since the underlying QMetaObjectBuilder takes QByteArray, too. Split SignalManager::registerMetaMethodGetIndex() into overloads for const char * (for the signal code path) and QByteArray (for the slot code path). Task-number: PYSIDE-2810 Change-Id: Ie79ea071a8cc111d45248c7086cf6fda34a7548f Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Replace QPair by std::pairFriedemann Kleint2023-09-291-1/+3
| | | | | | Pick-to: 6.6 6.5 Change-Id: Ic64a2a2c162c54fbbfb6ddc5004ffe1944bfd37a Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* libshiboken/libpyside: Fix some static analysis warningsFriedemann Kleint2023-09-201-1/+1
| | | | | | | | | | | | - nullptr - narrowing integer conversions - else after return - Use auto - Missing move special functions Pick-to: 6.6 6.5 Change-Id: Ib872481a46c8bb17592cdc1778ab3c4d9598c753 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Use SPDX license identifiersLucie Gérard2022-05-271-38/+2
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Task-number: QTBUG-67283 Change-Id: I065150015bdb84a3096b5b39c061cf0a20ab637d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add a __repr__ function for QMetaObjectFriedemann Kleint2022-01-061-0/+3
| | | | | | | | This is helpful for QML debugging. Task-number: PYSIDE-1709 Change-Id: If9baeb5a52999c4718e951f0ea5736783a9fcbff Reviewed-by: Christian Tismer <tismer@stackless.com>
* Replace QVector by QListFriedemann Kleint2020-11-251-4/+5
| | | | | | | | | | | | | | | | Change AbstractMetaClass::templateArguments() to return TypeEntries (const TypeEntry *) instead non-const. Remove redundant typedef OverloadData::MetaFunctionList. Use existing typedefs in some places. Add new typedefs for MetaObjectBuilder::EnumValues and AbstractMetaFunctionCList. Change-Id: Ia241b5fbe54d60ea57175fb1f6c844604e066a3d Reviewed-by: Christian Tismer <tismer@stackless.com>
* Rename PySide2 to PySide6Friedemann Kleint2020-11-021-0/+84
Adapt CMake files, build scripts, tests and examples. Task-number: PYSIDE-904 Change-Id: I845f7b006e9ad274fed5444ec4c1f9dbe176ff88 Reviewed-by: Christian Tismer <tismer@stackless.com>