| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Py_TPFLAGS_DEFAULT in Python 3 has the
Py_TPFLAGS_HAVE_VERSION_TAG flag, which causes
the type attribute cache in _PyType_Lookup. According to
the Shiboken implementation for Python 2, this is not we expected.
So remove the Py_TPFLAGS_HAVE_VERSION_TAG flag from
Py_TPFLAGS_DEFAULT in Python 3.
Task-number: PYSIDE-60
Change-Id: Id731a59b65640eb5adea56fe06e0deb58ac4a168
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
| |
Simple test to see if the current implementation is
working in all the platforms
Task-number: PYSIDE-641
Change-Id: I85f19979b84314d42deb6686f2cdb29ba6af079c
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The used constant was encoded directly as a unicode literal.
This was the same possible in Python 2 and 3 due to
https://www.python.org/dev/peps/pep-0414/ .
Note that the emoji character creates a 1 or 2 codepoints long
constant because Python 2 can be built with UCS-4 or UCS-2.
Task-number: PYSIDE-336
Change-Id: Icc7ea664cf64f9e53ef5f7696c56c6470f7ada4a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Index assignment now only accept str/bytes, bytearray, QByteArray with
size 1;
Slice assignment only accept str/bytes, bytearray, QByteArray with
limitation, that is if the step is not 1, then the number slots and
the size of the target value must be equal.
Range delete: a[2:5] = None
Shrink: value length smaller than the slot length of the slice
Expanse: value length bigger than the slot length of the slice
Range assignment with step: a[2:5:1] = ...
Range assignment with step which bigger than 1: a[2:9:2] = ...
Range assignment with native step: a[5:2:-1]
Change-Id: Ib9b929d09a691ed18c91e0c1c6b5dde827bf8d42
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
Update of the signature registry files for 5.11 .
This works now in a single go, because the missing files
are generated as a flaky test.
Change-Id: I455eba83ae8b81ce97d5d7bcc41e7ff98c5be8bd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
It now looks like:
multi-signature count mismatch for 'QOpenGLShaderProgram.setAttributeArray'. Actual 10 [ (int,PySide2.QtGui.QVector2D,int) (int,PySide2.QtGui.QVector3D,int) (int,PySide2.QtGui.QVector4D,int) (int,float,int,int) (int,int,int,int,int) (str,PySide2.QtGui.QVector2D,int) (str,PySide2.QtGui.QVector3D,int) (str,PySide2.QtGui.QVector4D,int) (str,float,int,int) (str,int,int,int,int)] vs. expected 4 [ (int,float,int,int) (int,int,int,int,int) (str,float,int,int) (str,int,int,int,int)]')
Change-Id: I6c99e1fceeeb1647c8b3b291564190b9a2c0dd32
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
Prepend virtual methods when creating function groups
so that overriding method the most-derived class is seen first.
Task-number: PYSIDE-570
Change-Id: I791e3da09783c4c31ac293060aed8bb2bc8472d5
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
| |
Since roleNames() expects a QByteArray
we should pass the roleName as bytes,
not a Python string.
Task-number: PYSIDE-722
Change-Id: I67bf78503cd1e6acf43aab3531bf3b184e9a9159
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change introduces tracking of modules for which bindings will not
be built. This allows us to add conditions on disabled modules,
and thus disable certain tests.
Thus we disable pysidetest test when its dependencies are not met.
Due to this, we can now builtd bindings only for QtCore,
allowing faster development iteration when touching only QtCore.
Note that this only affects which module bindings will be created.
Shiboken itself still requires QtCore, QtXml and QtXmlPatterns,
as does pyside2-rcc.
Change-Id: I75084a1741e7f4c3594e43af0fd9668a0e969c56
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The test used to fail when pre-release version parts are empty
(aka there is no "beta1" or "alpha2").
Make sure to always include at least an empty string when those version
parts are not set, and adjust the test accordintly to check for a
string.
Change-Id: Ia30bb99de7f122456e132516346df4e3c0a1fa94
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|\
| |
| |
| | |
Change-Id: I7e55b4f27f77e2333b9e0f4cddc8de4b89b6043b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is only one method we really need, QtWebEngine::initialize()
which is used for all Qt Quick based WebEngine applications. Otherwise
you get a warning upon startup of a Qt Quick WebEngine application,
and this might lead to undefined behavior.
Task-number: PYSIDE-688
Change-Id: I7de2bbb58c49cb2a41b0e13ffc9de6a3161f3960
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|\|
| |
| |
| | |
Change-Id: I2de0fe8456fca242c56ea28520126f9ebbf540d8
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
By lots of editing, somehow an expression in voidptr.cpp
became incomplete.
We should improve the current test to be certain that the
VoidPtr is working.
This problem can be avoided by not doing many type
casts at once.
Doing the same in two steps is much safer because a forgotten
call would give a compile time error.
Task-number: PYSIDE-560
Change-Id: Ibb24a27f439cbda490723131f34f93978725420f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The available constructors for QByteArray are now:
bytes, bytearray, and QByteArray, unicode is not
accepted anymore.
Also the concatenation is now possible between QByteArrays.
Even though is not possible to initialize a QByteArray
with an unicode, we include the possibility to compare it with
one (Compatibility with PyQt).
The __repr__ and __str__ are now properly working.
There seemed to be a confusion regarding data types between
Shiboken, Python2 and Python3 related to bytes,
so now the structure is based on the flag SBK_BYTES_NAME,
which is define as "bytes" for Python3 and "str" for Python2.
Many tests were modified to properly handle string,
using the `py3kcompat` module.
Task-number: PYSIDE-232
Change-Id: I8b671f367c60a0870c72dcbe5662106b3225037d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If `unicode` is used in Python 2,
shiboken cannot properly translate it to `const char *`.
sbkstring did not supported a proper conversion of unicode
types in Python2, and this change includes it.
Task-number: PYSIDE-100
Change-Id: I3a70d935ad61b0e567e620c62754800370270a6b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I31a0ff26bc02e6cc2ec2a816c16d170fc334f800
|
| |
| |
| |
| |
| |
| | |
Change-Id: I3188c33414d283478a6ff6d7d354ce9231b4f106
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I0c5b60263ed642a9b6f6b5d6a1492a11f278bfd5
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-487
Change-Id: Ib8eb4a77f04ddbbe2c4b164b95f49e2f53bf44d9
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I20cf741f5b07426ad5113eb8c52f144102c331ce
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add QCameraFeedbackControl, QMediaService, QMediaServiceCameraInfoInterface,
QMediaServiceDefaultDeviceInterface, QMediaServiceFeaturesInterface,
QMediaServiceProviderHint, QMediaServiceSupportedDevicesInterface,
QMediaServiceSupportedFormatsInterface, QMediaTimeInterval,
QMediaVideoProbeControl, QMetaDataReaderControl and
QMetaDataWriterControl.
Add commented out classes QCameraFlashControl and
QCameraFocusControl with explanatory comment.
Task-number: PYSIDE-487
Change-Id: I4125ee2088bde487c36c3c13dd7b05d6667b0711
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When no arguments are passed, build an empty list
and to start a QCoreApplication, QApplication and
QGuiApplication.
This is a small effort to include the idea
of a default parameter from Python.
Change-Id: Ieedc1e7ee17de996778aa2d0bddfb88c5ef208cf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-487
Change-Id: Ib862be9c0c62be09a34c3a79740d147b9788cb34
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Just renaming PySide2 -> Qt for Python for these files
that somehow got excluded when renaming the whole project.
Change-Id: Id6dfbae1ab3bd603f1db5e0346664004102fd19f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add QIdentityProxyModel, QLockFile, QMessageAuthenticationCode,
OperatingSystemVersion and QSignalBlocker.
Task-number: PYSIDE-487
Change-Id: I680c3d175394e9d560152a38195d015fc6abb7fa
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The first argument was modified to be a socket type,
but it needs to be an int (file descriptor).
Adding a new signature solves the compatibility problem
between Python2 and 3.
A test case was added.
Task-number: PYSIDE-629
Change-Id: Id9dea37459350dfc90d0f0ab9e2e1993d03fe6e4
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|\|
| |
| |
| | |
Change-Id: Ic7aa7796dffda87ef492a99af7859c909ec607a2
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-487
Change-Id: Id9a06b83173b9a8880a256fb45e8d85fb1978d65
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I15e8a6120c249bfc5a0e2b3fa262989fafccbf57
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Removing the word 'project' from all the headers,
and changing the PySide reference from the examples
to Qt for Python:
The following line was used inside the source/ and
build_scripts/ directory:
for i in $(grep -r "the Qt for Python project" * |grep -v "pyside2-tools" | awk '{print $1}' | sed 's/:.*//g');do sed -i 's/the\ Qt\ for\ Python\ project/Qt\ for\ Python/g' $i;done
and the following line was used inside the examples/ directory:
for i in $(grep -r "of the PySide" * |grep -v "pyside2-tools" | awk '{print $1}' | sed 's/:.*//g');do sed -i 's/of\ the\ PySide/of\ the\ Qt\ for\ Python/g' $i;done
Change-Id: Ic480714686ad62ac4d81c670f87f1c2033d4ffa1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Setting owner as default to not allow Python to create a copy
of the QPixmap associated with the QLabel.
The C++ object pointer is acquired through the pixmap() method.
A test case was included.
Task-number: PYSIDE-150
Change-Id: Ie6975c39cbf49a59ebd478db0e1a0c30fc14864a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
PySide2 for Python 3 didn't support get item by slice, e.g.
```
>>> from PySide2.QtCore import QByteArray
>>> ba = QByteArray('1234567890')
>>> ba[2:4]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: sequence index must be integer, not 'slice'
```
This is because get item by slice is supported by mp_subscript.
But current PySide2 doesn't implemented it. So I added __mgetitem__ in
QByteArray. And we also need to keep __getitem__ to support iterate over
QByteArray.
Also removed the __getslice__ from QByteArray.
Task-number: PYSIDE-567
Change-Id: I01f79cc2ab8700da92155cfad96be2e98bb8b331
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When referring to the project one should use "Qt for Python"
and for the module "PySide2"
Change-Id: I36497df245c9f6dd60d6e160e2fc805e48cefcae
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since this method should not be used in any
application code, we should remove it from
PySide2.
Removing also the test registry.
https://doc.qt.io/qt-5/qthread.html#currentThreadId
Task-number: PYSIDE-275
Change-Id: I152b36ccfa4342d4d6b916d8b2fe228e4fe4a1c4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Id40dab17b02800199f70072115d7473041f683d8
|
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-487
Change-Id: Ie44d8472beb3f1a5ab75caafd1f58b512b53ccb1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For example for:
void QWebEnginePage::findText(const QString &subString, FindFlags options = FindFlags(), const QWebEngineCallback<bool> &resultCallback = QWebEngineCallback<bool>())
the resultCallback will be removed and a binding for
void QWebEnginePage::findText(const QString &subString, FindFlags options)
generated.
Task-number: PYSIDE-487
Change-Id: I6299d1735ad6c00e257daecb64d8f2f235140a98
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-487
Change-Id: Id60f3f6e70b4fbb8e4316b994cdd557ff9be7b3b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I8e1127e082abe5978a94aa8a080dfb1d8bbd5952
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Reimplementing a class must respect the closest
base class instead of falling back to QObject.
By adding a default-superclass argument one can
verify that field first when shiboken is getting
the base classes.
This problem was found by reimplementing
QGraphicsObject including methods from one of its parent
classes, QGraphicsItem.
With this change, the generated wrapper will list all the
base classes in `Sbk_QGraphicsObject_Type_bases` leaving
QObject at the end, because if not, it will match
inmediately.
A test case was included.
This change doesn't affect other existing tests.
Task-number: PYSIDE-86
Change-Id: I6b9a220497b12c8085302a502f8581cc2d3fb11b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using setHeader on a QTreeView,
the view needs to take ownership of the header object.
Task-number: PYSIDE-227
Change-Id: Ib37c00c098be422c7f0df4a32a6795c267642a41
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When new widgets were added to a QTreeWidget
the ownership was not being transferred.
This problem happened when the Widget was being
build inside the method call.
When trying to show owner-less Widgets inside the
Tree, a segfault happened.
A test case was added.
Task-number: PYSIDE-73
Change-Id: I0f1c3c065ae8ed0a336c8e39b1766f3e8870b54d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When building PySide with a debug Python, a lot more problems
become visible.
They were triggered by some malicious ordering of the shutdown code,
which must come *after* the refcounts of the variables are adjusted.
The initial issue PYSIDE-585 was caused because the shutdown code
is not only used for every created Q*Application, but also for the
module shutdown, which deletes qApp_contents too often.
Instead of special-casing that or adding some refcount, it was much
more intuitive in that context to set qApp_content's refcount to the
same value as Py_None, which also is not supposed to be garbage
collected.
Btw., the reason for the error message is that Py_None has it, too.
When we set qApp_content's type to Py_None's type, it inherits
the protection code that prevents someone from garbage collecting
Py_None.
Task-number: PYSIDE-585
Change-Id: I4af9de1192730f06054a5aca099a32e2392e367d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a class inherits from two base classes,
Shiboken sets the converter of the newly created
SbkObject to 0 (SbkObjectTypeTpNew), and handle
the multiple inheritance in a different way.
When any SbkObject try to release its ownership,
it first verify if the ownership is already on the C++ side
by checking the attribute hasOwership and also
if the converter is a ValueType.
The later fails if the converter is null,
so a default value (false) was added.
A test case using deleteLater() was included,
which uses the releaseOwnership method internally.
Task-number: PYSIDE-11
Change-Id: I34fba0d3e5d28b99b49a183ed08e977a311da632
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I379c41e209c1a2cd61c8aa04bddd35a72210f0d3
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Loop over the available printers and try to find a PDF printer or similar
which allows for setting arbitrary page margins. Failures have been
observed with some printer apparently due to invalid values.
Task-number: PYSIDE-431
Change-Id: I777e20072834ab1aa7ae3ba7d9b6c83d824aaae1
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Seems this was in QtGui at the time of Qt 4, but now it's in QtCore:
http://doc.qt.io/archives/qt-4.8/qstringlistmodel.html
http://doc.qt.io/qt-5/qstringlistmodel-members.html
Task-number: PYSIDE-614
Change-Id: I918cbffd64fb8da9e81123073ff57cd2126e5cae
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The tests were partially wrong assigned so that a minimal build
with "--module-subset=QtCore,QtGui,QtWidgets" had unnecessary
errors.
This patch re-arranges the tests accordingly.
Change-Id: I48e37875dd8856707df41f5943ce9435851f2d03
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-487
Change-Id: I67ce74f06bba2f0161bb6e49be5aa8d7cfeea793
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|