| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Adapt CMake files, build scripts, tests and examples.
Task-number: PYSIDE-904
Change-Id: I845f7b006e9ad274fed5444ec4c1f9dbe176ff88
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QList<T> member functions taking a T parameter are no longer
seen by the code parser since they take a parameter_type which
is specialized to be T or const T & depending on T.
Declare them instead. Similar, change QPolygon::operator<<(T)
to add-function.
This fixes several PySide tests that rely on those functions
(qpolygon and others).
Task-number: PYSIDE-904
Task-number: PYSIDE-1339
Change-Id: Ic1157f384f86b796cc5c7bc06a934a63649d74be
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
| |
Usage of the enum causes deprecation warnings. In addition,
it is not clear why the type was there given that QVariant
is not exposed. Remove the converters.
Change-Id: I5b1f12ee0f869a63e6b7d82afdcb58a5d7062ce6
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|\
| |
| |
| | |
Change-Id: Iaabea628351fac9da88b5779b537f62262ff82a7
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This lays the foundation for adding further specializations
of QFuture and QFutureWatcher to dependent modules.
Task-number: PYSIDE-1202
Change-Id: I82f9940db9d50ced95d4e1388c6460c6efc0469b
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
qtbase/d4b206b246caf9b49110526585693ab629609d99 split QMutex and
QRecursiveMutex which inherited from each other in Qt 5 into
separate classes and changed QMutexLocker into a template.
This could only be represented by separate types in Python.
To work around this, reconstruct a QMutexLocker with the common API
into an invisible namespace for generating the bindings.
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: I776250f91dfed9985f2a8a5705b26f782a20bbd9
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Remove QProcess::pid(), adapt test
(qtbase/0f8848b7e25e4d8fb9265ff6e0aa31946addd741)
- Remove enum from QPrinter
- Add enum GrabTransition to QPointingDevice
- Remove deprecated functions from QByteArray, QXmlStreamAttributes
- Adapt Qml tests
- Remove fake property from QLayout
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: I98cc90723cbeda15b23c5b22d026cb2ab9a358ff
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
View types as function parameters cannot be converted in the standard
way shiboken does it:
QStringView cppArg0;
pythonToCpp(pyArg, &cppArg0);
since they reference some other data.
Introduce a new "viewOn" member to type system entry for them. It
causes the function arguments to be replaced by their viewed-on types
(stringview->string) via metatype.
Add a test in libsample and a test for QUuid::fromString(QStringView).
Test returning QStringView via QRegularExpressionMatch::capturedView().
Task-number: QTBUG-84319
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Task-number: PYSIDE-487
Change-Id: Iddb4ea268a54928d290e29012e2738772fae83f0
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Remove more math functions
- Renamed enum in QLibraryInfo
- Use float instead of qreal in QColor
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: Ic3120d1776f01943e38395a1a30d62bf6f5ccc36
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Remove QByteArray::replace()
- Remove QTextList::isEmpty()
- Adapt signature of QWidget::enterEvent()
- Adapt signature of QTextBoundaryFinder
- Remove free math functions which were changed to templates
in Qt 6.
Todo what about the free funcs...qSin(), etc.
they are now templates
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: Ic72b2853a000726aaa307bc3790a9b2824bf6b62
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
They are obsolete in Qt 6.
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: I70816b3c3270a1db65ad3b3871a09c62d31420e5
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adapt to qtbase/f03b2f7711e3a0e90fb21672273959a2a9ed1c38
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: I71ecde7cd8b6ead7d235dfe7b82be7a5a623c1b4
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: I7e4ffaeabb2ac8a5ffe165d43b3475a7e5d57447
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Removal of the statemachine framework from QtCore
- Addition of QAbstractFileIconProvider
- Adapt some signatures
- QMetaType deprecations
Change-Id: Ia51354542ad1d2f0bb5530e45ebef0d6ccdb633d
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Port the remaining XML parser code in shiboken to QStringView.
Remove the QStringRef type.
The QStringView-related refactoring of QXmlStreamAttributes
somehow exposed the value() methods of its base class (QList),
which cause compilation errors. Remove them.
Task-number: QTBUG-84319
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: If01516f962eddcc0591ccaff322843f2fc040549
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix signature of QLineF::intersects().
Amends 3e252bba6ea6b96acb412d08131953e74d2b84ee.
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: Ia299e608941d2a243e24bed780d50e5edb655d0f
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adapt to qtbase/2f9a294252ae44defd4d8ae1b3c09d8e36ee0612:
- Removal of deprecated QSettings API
- Changed signature of QLineF
- Change of QVariant constructors
- Introduction of new QIODeviceBase class
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: I834f535af3c977164def12fc86dfd87282c240aa
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Icee2cd5a37181070d8ef50e7143868d4f126cea5
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
** fix: MSVC needs extra sign bit in basewrapper_p.h! Buglet? **
The new feature selection has some tiny overhead.
It is about two dict accesses plus a slot access for every
tp_(get|set)attro call.
The introduction of an explicit `__init_feature__` call allows to
optimize this overhead very nicely, because this init is done for
each __feature__ import:
First, we can remove that tiny overhead completely by not initializing
the feature_select module at all if no __feature__ import is used.
Second, we can optimize this access further by caching the current module
dict. If the dict is unchanged, then the last select_id can be used.
This reduces the overhead of frequent calls to a single slot access.
Third, we finally cache the select id in unused SbkObjectType bits.
That removes the last structure where repeated attribute lookup is used.
The overhead is therefore quite small when something is changed.
But typically these changes are infrequent. The majority of accesses
do change nothing, and this case is now quite much optimized.
Change-Id: I7d1a4611a1c19216fd9be8f04457bb18ebd52ab1
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Manually add the comparison operators, which are inherited from
QList and not detected by the parser due to:
friend QTypeTraits::compare_eq_result<U> operator==(const QList &l, const QList &r)
After Change c58c3e5a99a4dee992fd4c7898185181ecc84ae7, the default
code will be generated for them.
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: Icc3d4e759e296303988cd00323876ab5225d8c27
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adapt to qtbase/631127126cc14e7c01cc611532b3256b58785670.
Task-number: QTBUG-84321
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: Id4fa80f77b20b795b5aeae624db5c33110233ca3
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Remove bug_632.py which was testing removed function
QLineEdit::getTextMargins()
- Enable the qshortcut test
- Remove check for QWidget::getContentsMargins() from
returnquadruplesofnumbers_test.py
- Adapt error message in qdomdocument_test.py
- QByteArray: exclude overloads of number functions added by
qtbase/66d6943478c3ae76f996c2cd2fdf04fee4fcb767.
As a drive by, remove operator[](uint).
Change-Id: I8f40dad1c1a446865e9de34a5df293cce09a1510
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I299a65f15fb6b7eb900256590bbe76ad0568f546
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes an oversight of 157e03911ba0e2e8fd74899702588296693fd4ab, causing:
typesystem_core_common.xml:1792: signature 'number(ushort,int)' for function modification in 'QByteArray' not found.
typesystem_core_common.xml:1792: signature 'number(float,char,int)' for function modification in 'QByteArray' not found.
typesystem_core_common.xml:1792: signature 'number(short,int)' for function modification in 'QByteArray' not found.
Task-number: PYSIDE-904
Change-Id: I31b22d12235398400bc7e7a01dd9520a45538446
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I08bddaf2aa407e7499ce05832c9455ca09c1757a
|
| |
| |
| |
| |
| |
| |
| |
| | |
Otherwise, overflow errors can occur.
Task-number: PYSIDE-904
Change-Id: I42486a27bcdb8e7562d411b4519d2e61f315be1d
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Test failures:
shiboken2:testmodifyfunction
pyside2:QtCore::qbytearray_test
pyside2:QtGui::bug_PYSIDE-41
pyside2:QtGui::deepcopy_test
pyside2:QtGui::qfontmetrics_test
pyside2:QtGui::qpixmapcache_test
pyside2:QtWidgets::api2_test (QTBUG-85417)
pyside2:QtWidgets::bug_632
pyside2:QtWidgets::bug_714
pyside2:QtWidgets::bug_785
pyside2:QtWidgets::qshortcut_test
pyside2:QtQml::bug_825
pyside2:QtQml::bug_1029
pyside2:QtQml::registertype
pyside2:QtQml::qqmlincubator_incubateWhile
pyside2:QtQml::signal_arguments
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Change-Id: Ia43d7ed037dfdd07def0edd76bada2243e73d335
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
| |
Change-Id: I55fe70da8adf6faba0f8099d4d127ae3963fa2c6
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
Replacing the deprecated QRegExp version in Qt 6.
Merge identical code snippets.
Task-number: PYSIDE-904
Change-Id: Id6f5c39379c65cf71fb6352531173d0fd7f2ae5e
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|\
| |
| |
| | |
Change-Id: I75984f35bcdeeeb3b6004a00670f1582ab522c1b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When terminating a thread using QThread::terminate() via
(pthread_cancel(), QThread::run() is aborted and the lock is released,
but ~GilState() is still executed for some reason.
Add a cancel handler to the thread which tells GilState to abandon
the lock.
Fixes: PYSIDE-1282
Change-Id: I70abd42b5a2afd49aaa8cc5e8be0a92ed63f49d3
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I348bb01c52482059b6f6bfebcc1d15fb68b9b142
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| | |
Change-Id: I0ef48ed4300037edcd357e167b6738d04ef5aaa4
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This implementation allows module-level and scoped QEnums
which are Python enum types. Scoped types are registered in Qt's meta
object system.
Usage of QEnum/QFlag with decorator or function call:
from enum import Enum, Flag, auto
from PySide2.QtCore import QEnum, QFlag, QObject
class Compass(QObject):
@QEnum
class Orientation(Enum):
North, East, South, West = range(4)
class Color(Flag):
RED = auto()
BLUE = auto()
GREEN = auto()
WHITE = RED | BLUE | GREEN
QFlag(Color)
Fixes: PYSIDE-957
Change-Id: Ie15f45cbd932c816b50724a96eee0c14ae1fdee8
Task-number: PYSIDE-487
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Add allow-thread for the newly added overloads in 5.15
Fixes: PYSIDE-1332
Change-Id: I1e463203ea9914ae71991262745d803fc9001b7d
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was required by the change in QSocketNotifier in 5.15.
Additionally, an alias, DescriptorType, was required to make
the constructor to work.
Fixes: PYSIDE-1317
Change-Id: Ib75e6024e467eb72f374a1179cb7416b1ea8a853
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I9c7163094bc934f481002adcea78ef4928ed26be
|
| |
| |
| |
| |
| |
| |
| |
| | |
Ensure it is 64bit for 64bit systems.
Change-Id: I0b4d54f2568bd70288e184a5a2d8f31532fed157
Fixes: PYSIDE-1303
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Change QBasicTimer to be an object type since its copy constructor
and assignment were deleted in Qt 6. It probably was never
intended to be a value type.
- Remove the hash function of QItemSelectionRange which
according to code comment is a dummy to get
QItemSelectionRange::toSet() compiled with MSVC. There is no need
for it to have it in Python
- Adapt the underlying string types for QString conversion
Task-number: PYSIDE-904
Change-Id: Idb60b95b6bc0ce3d1272862995f3247d2f191454
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After the improvement to the GIL treatment inside PySide
to avoid UI freezing issues, many functions need an entry
on the typesystem to allow thread explicitly, this was
the case of the report, where a QMutexLocker was initialized.
The initialization was done inside a QThread run method,
so the lack of allow-thread was generating a deadlock.
The nogil section of the code (from Cython)
was not related to the issue, since replacing the content with
any instruction produced the deadlock anyways.
Fixes: PYSIDE-1271
Change-Id: Ib1fd1ebd923c3f9dc9ae390228bcf40b5b878019
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In case someone manually lock/tryLock a QBasicMutex
inside a section where threads are allowed, the lack of the
attribute will end on a deadlock.
Additionally, this removes the allow-thread for unlock() in
QMutex, since is not needed.
Task-number: PYSIDE-1271
Change-Id: I3d394c77d1b876afe324d5a50eb5da11b271c30e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
| |
Add allow-thread.
Change-Id: I7feba9761a52c273cf4500a42dfbea0463d6040f
Fixes: PYSIDE-1253
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds and remove the usage of:
allow-thread="yes"
in some typesystem entries.
This also adapt the usage of the Py_BEGIN/END_ALLOW_THREAD
macro inside the snippets used by other typesystem entries.
The main reason is that in some cases not the whole snippet
requires to be inside such state, but only when calling the
C++ equivalent function.
Task-number: PYSIDE-803
Change-Id: Ifa9c8cee2713c453e4d5c624aaa862e75559180c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The class will replace timeout parameters in Qt 5.15 as
introduced by qtbase/72f57cc84244633ca69ede9a1fd510b9b1881c1d,
causing warnings like:
Stripping argument #1 of bool QThread::wait(QDeadlineTimer) due to unmatched type "QDeadlineTimer" with default expression "QDeadlineTimer(QDeadlineTimer::Forever)".
Stripping argument #2 of bool QWaitCondition::wait(QMutex*,QDeadlineTimer) due to unmatched type "QDeadlineTimer" with default expression "QDeadlineTimer(QDeadlineTimer::Forever)".
Stripping argument #2 of bool QWaitCondition::wait(QReadWriteLock*,QDeadlineTimer) due to unmatched type "QDeadlineTimer" with default expression "QDeadlineTimer(QDeadlineTimer::Forever)".
Change-Id: I51655ef19d8276b95c2a759d5ba44287a4b6d91b
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
qApp should stay almost as it is with only two cosmetic changes:
When qApp's return value has Type(Py_None), the value now reports
"noApp" instead of "None".
Also the feature of "del __builtins__.qApp" is replaced by function
qApp.shutdown() . This makes things easier to explain and avoids
refcounting hacks.
The embedding problem (Falkon browser) was too complicated.
We finally solved it by disabling qApp in embedded mode.
Change-Id: I0d99661137130684823aa3d1978b494d8ab08e59
Fixes: PYSIDE-1158
Fixes: PYSIDE-1178
Fixes: PYSIDE-1135
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Prototypically use it for QMessageLogContext, allowing to elegantly
build for Qt from version 5.12..now using a single type system file.
Fixes: PYSIDE-1191
Change-Id: Iaa7bdc10c7129d84c54e85a09a1c802a409708f9
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Nesting types by specifying "::" currently works by coincidence (as
long as no modifications or further elements apppear) since the lookup
is mostly name-based.
It might be removed in a follow-up step.
Task-number: PYSIDE-990
Task-number: PYSIDE-1074
Change-Id: I43db8a25a192e94b6a6d51f78233c3526f719406
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|\
| |
| |
| | |
Change-Id: I61c67513918f39cfb45e6c24f693bb7a78c5d797
|
| |\
| | |
| | |
| | | |
Change-Id: I7f3e2a11fe744b5c868698e63cf10882c168c53f
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
According to the documentation the object does not take
ownership of the QIODevice.
Change-Id: I1a617844fd825e6420167c4a5d848fd36e90823f
Fixes: PYSIDE-1007
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|