| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change 2107b9c16d7be1292c5439a47ed31871906e0b1f implemented making
base class functions visible via "using" directive. However, since it
was implemented in getInheritedFunctions() based on names, it did not
work for constructors since they have a different name.
As a consequence, no tp_init function was generated for the test case
and the tp_init function was called instead, creating a base class
instance.
Add a function that adds the base constructors for the simple
case of the class having no constructor in case "using" was
specified.
Add a data member to the test to test this.
[ChangeLog][Shiboken6] Making base class constructors
visible via "using" directive has been fixed for simple cases.
Pick-to: 6.8
Task-number: PYSIDE-2966
Change-Id: I8e11cdaf0d1af0f7fad7834039a23322e146c9e0
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
| |
Pick-to: 6.8
Task-number: PYSIDE-1735
Change-Id: I5a907b536b36521eb6dd5fcdc1ad1094bb031aa8
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
| |
Add a future statement to all Python source files.
Task-number: PYSIDE-2786
Change-Id: Icd6688c7795a9e16fdcaa829686d57792df27690
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Introduce "Python override" as a special type of user-added function
which will cause a function calling a Python override into the native
wrapper. This can then be called from a virtual that has a signature
which cannot be handled in Python.
Fixes: PYSIDE-2602
Pick-to: 6.7
Change-Id: I5fc44ebe3f585078e87d3230d5e6f4faa67a4ee1
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
| |
- Remove * imports
- Remove a hidden test that was non-functional
Pick-to: 6.6 6.5
Change-Id: I34c98ef81d0ebe11b0813670149c00cfcff4eb28
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
| |
Task-number: PYSIDE-1735
Change-Id: I51e68c50872f1d1254218ae7556ba607f73c4ea9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The new Enum implementation can no longer be switched off.
Individual features can still be deselected with the
environment variable PYSIDE6_OPTION_PYTHON_ENUM which
had the name PYSIDE63_OPTION_PYTHON_ENUM before.
This change is meant for PySide 6.6 .
Task-number: PYSIDE-1735
Change-Id: Iae5b7a9d42a0d7b005dbba20201a80713ef79be9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the new forgiveness, all the "normal" uses of old enums
are working with the new enums, too.
What does not work are range violations and inheritance of enums
from other enums.
Also, the implemented trick does not work for enums which
do not belong to a class. The induced bugs are easy to find,
because they should normally break at import time.
[ChangeLog][PySide6] The new forgiveness mode of Python enums
allows to use old enum code, most of the time. Much changed
test code was reverted.
Change-Id: I9c081831309f1b2358fe86e6107b0f4d78fd48cf
Pick-to: 6.3
Task-number: PYSIDE-1735
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When implementing Python enums, the behavior of old Qt enums
was copied: Every enum was also inserted into the enclosing scope.
This patch removes that for two reasons:
- it is inconsequent to keep an old quirk when we have all
enums renewed so much
- It is more consistent compared to our competitor
- it is a prerequisite to implement efficient lazy initialization
PROBLEM: Many constants (about 110) are no longer recognized, for
instance `Qt.AlignLeft` should be `Qt.AlignmentFlag.AlignLeft`.
The question is if that can be fixed easily in C++, or if
the file mapping.py should get ~100 new fixes?
SOLUTION: We allow the old enums, but tell nobody that they continue
to work. They also are not advertized in the PYI files.
[ChangeLog][PySide6] The duplication of enum values into the
enclosing scope, allowing to write Qt.AlignLeft instead of
Qt.Alignment.AlignLeft, is still implemented but no longer
advertized in PYI files or line completion.
Task-number: PYSIDE-1735
Change-Id: I79a90d08f2a5a3a069fa551e60d609ecad718239
Pick-to: 6.3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Parse "using" declarations in the clang builder using some code
from the base class determination algorithm.
Resolve them to struct UsingMember containing the base class
and the member name in the metabuilder and check whether any
base constructors are imported via "using". Add them
as functions like the default constructor.
Change-Id: I121a70f0591c6d1e6f9daedfb653206c49c07a3f
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch does the systematic changes on all tests.
Note that there was a bug in principle:
os.path was used without importing os.path
This worked through the way how the os module initializes
itself, but you always will find the explicit import in
the python library.
But the problem is going away anyway after the transition
to pathlib.Path :)
Change-Id: I95144d7f9bb07a38376c3aa428df663f2e64bcb7
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
Adapt CMake files, build scripts, tests and examples.
Task-number: PYSIDE-904
Change-Id: I4cb5ee4c8df539546014b08202a7b1e98ed3ff07
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|