aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Documentation: Fix failure extracting docs for functions with QVariant::TypeFriedemann Kleint2018-05-171-3/+0
| | | | | | | | | QVariant::Type is a primitive type, yet the fully qualified name should be used. Remove check for primitive types and always use the qualified name for building the doc XQuery. Change-Id: I8d12cf7d3095ce9e7baa2b6436cc90385bdedc22 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Be more verbose about which Qt CMake dirs were foundAlexandru Croitor2018-05-171-5/+6
| | | | | | | | | | | | Sometimes users might have stale cmake files installed into the same location due to building multiple Qt versions (e.g. 5.9.3 and 5.9.5), and find_package might bail out trying to use the older version. Make sure to print which cmake dir is used for each module, if the dir is available. Change-Id: I376ef95c682196c7f79d3c0e604d8225d1d2ff30 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Select correct Python environment when cross compilingSimo Fält2018-05-173-5/+17
| | | | | | | | | To be able to create 32 bit wheel in 64 bit Windows, we must use correct Python version. Task-number: PYSIDE-646 Change-Id: I72c05e9c5b6f37f16c118e36c3c7ea8f90ee7dff Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Docs: Point to Qt online documentation for QML typesFriedemann Kleint2018-05-171-6/+30
| | | | | | | | | If a -qmlmodule.webxml file exists, insert a link to the Qt online documentation. Task-number: PYSIDE-363 Change-Id: I49a46ed097e8f7136b39f38e2206a2229dd08e41 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove unused license filesKai Koehne2018-05-173-1375/+0
| | | | | | | These are legacy files replaced by the respective versions without 'v'. Change-Id: I3f53548058704688874589a31be6adaf33935c60 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken: Improve error messages for rejected functionsFriedemann Kleint2018-05-161-11/+29
| | | | | | | | | Add a warning explaining that a rejected abstract function will cause compilation errors later on. Change-Id: Ibcad7d79df719b0ffbaf59a0ef9eec6f22aea2ed Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Update Logo to the "Qt for Python" logo, 400x94Friedemann Kleint2018-05-162-1/+1
| | | | | | | | | Adapt the layout template accordingly. Task-number: PYSIDE-363 Change-Id: Iea3b50770acf908f04fcfbd39d178de33c247c01 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtMultimedia classesFriedemann Kleint2018-05-165-3/+41
| | | | | | | | | | | | | | | | 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>
* Fix building PySide2 with ninjaAlexandru Croitor2018-05-161-1/+5
| | | | | | | | | | | | | | | | When building PySide2 with the ninja generator, ninja prints an error: "ninja: error: build.ninja:18549: multiple rules generate ./sources/pyside2/pyside_version.py [-w dupbuild=err]" This seems like an interaction error between CMake and ninja, where file dependency paths are not canonicalized. In our case this happens due to usage of pyside_version.py's relative path. Fix is to use an absolute path. Task-number: PYSIDE-663 Change-Id: Iee2ae5ea483e59ee67e53e3a2059108bf8a34fbe Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Make it possible to specify a target directory for additional documentationFriedemann Kleint2018-05-162-27/+46
| | | | | | | | | Introduce a simple [] notation for target directories. Task-number: PYSIDE-363 Change-Id: I3a0cd255faf84f564a64992cba88244ae14c2452 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix wrongly generated code for enums passed by const-refFriedemann Kleint2018-05-164-6/+22
| | | | | | | | | | | | | | First encountered in: QtScxmlEvent::setEventType(const EventType &); The metatype was wrongly detected as NativePointerPattern in AbstractMetaType::determineUsagePattern(). Introduce a helper for detecting plain const-ref and use that consistently. Change-Id: I6b105bc99ae63e4737c5d628e79f23b7acbcca3d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add an example that demonstrates bindings to a custom C++ libraryAlexandru Croitor2018-05-1613-22/+1162
| | | | | | | | | | | | | | | | | | | | | A CMake project is included that builds two shared libraries: 1) libuniverse - a hypothetical C++ library for which bindings need to be created. 2) Universe - a Python module containing bindings to the above library. The example showcases the following concepts: * primitive type bindings (bool, std::string) * types with object and value semantics (pass by pointer VS pass by copy) * inheritance and overriding virtual methods * ownership of heap-allocated C++ objects * constructors with default parameters * general structure of CMakeLists.txt file for generating bindings Task-number: PYSIDE-597 Change-Id: I7b0f203e2844e815aa611af3de2b50a9aa9b5bfc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Clarify and fix the path to openssl libs for Coin Windows buildAlexandru Croitor2018-05-162-6/+8
| | | | | | | | | | | | When the --openssl option is given, it should point to the openssl bin directory, and not to the openssl.exe file itself. Clarify this in the setup.py comments, and fix it in coin_build_instructions.py. Task-number: PYSIDE-660 Change-Id: I5b20a8c5a445c9f628c5abc258c43271c490e08c Reviewed-by: Simo Fält <simo.falt@qt.io>
* QtGui: Remove duplicate entry for QAccessible, take 2Friedemann Kleint2018-05-151-12/+3
| | | | | | | | | Join the remaining entries. Amends e8291778cd1bab2679033cecf3f756bb2d2935ab. Change-Id: I5bb0b129fc92158a16470fcab1826f7a6ea02203 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Add option --skip-modulesCristian Maureira-Fredes2018-05-154-0/+21
| | | | | | | | | | | | Allow the user to skip a set of modules when building the module. An example of using this option: --skip-modules=WebEngineCore,WebEngineWidgets,Multimedia Change-Id: I4b7a25acd60d068a886c1e716ddb7b226814b96f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add default parameter to Q*ApplicationsCristian Maureira-Fredes2018-05-159-0/+147
| | | | | | | | | | | 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>
* Add QProxyStyleFriedemann Kleint2018-05-143-1/+33
| | | | | | Task-number: PYSIDE-487 Change-Id: Ib862be9c0c62be09a34c3a79740d147b9788cb34 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Reduce generated package size by removing unnecessary filesAlexandru Croitor2018-05-142-9/+51
| | | | | | | | | | 1) Don't copy pdb files for QML plugins on Windows 2) Don't copy debug variants of EGL library on Windows 3) Don't copy debug variants of shared libraries on macOS Task-number: PYSIDE-661 Change-Id: I37c701f3b12f3ad08fbdd24ab70587132ddc0c95 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Remove misplaced test filesCristian Maureira-Fredes2018-05-142-148/+0
| | | | | | | | These were accidentally added to the root of the repo when cherry-picking across branches. Change-Id: I10a48ee67806dbc201eae4c0f861b26ad1ba1319 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Change license from last filesCristian Maureira-Fredes2018-05-143-3/+3
| | | | | | | | 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>
* QtGui: Remove duplicate entry for QAccessibleFriedemann Kleint2018-05-141-1/+0
| | | | | | | Amends e8291778cd1bab2679033cecf3f756bb2d2935ab. Change-Id: I6aa0b153575cb1eac1912e5e1970d71a0a388501 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtWidget classesFriedemann Kleint2018-05-142-0/+15
| | | | | | | | Add QScroller, QScrollerProperties, QAccessibleWidget Task-number: PYSIDE-487 Change-Id: Ia0322715bd494c5f4102ed1180eb92eb49b441f7 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* ShibokenGenerator::buildAbstractMetaTypeFromString(): Handle QFlagsFriedemann Kleint2018-05-141-3/+23
| | | | | | | | | | | | | | | | | | | | The function would fail for a QFlags type defined in a dependent typesystem file with errors like: Can't write the C++ to Python conversion function for container type 'QPair': Could not find type '::QFlags<QAccessible::RelationFlag>' for use in 'toPython' conversion. for example caused by QAccessibleWidget::relation() where the flag is defined in class QAccessible in QtGui. The underlying reason is that there is no type entry for the class QFlags. To work around this, detect it by looking at the instantiated types and create a flags type accordingly. Task-number: PYSIDE-487 Change-Id: Ib3c962aeedf8deb1a6b11976bd91316d39738310 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Improve error handling when writing type conversion functionsFriedemann Kleint2018-05-142-22/+48
| | | | | | | | | | Add an errorMessage parameter to ShibokenGenerator::buildAbstractMetaTypeFromString() and output the message in ShibokenGenerator::replaceConverterTypeSystemVariable(). Change-Id: I249778b3efe89c265590a7d4977cf2a4e76063f9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix typo in coin instruction scriptsSimo Fält2018-05-142-2/+2
| | | | | Change-Id: I2d17a2334d59ffa7ceff35de56b53a5ec443f449 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Doc: Add a link to the shiboken docsVenugopal Shivashankar2018-05-143-17/+12
| | | | | | | | Also reorganized the toctree structure by removing the sections. Change-Id: I6d3bbc363b86d07cc05fd3b7391b3f8b0de3605c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* setup.py: Document option --module-subsetFriedemann Kleint2018-05-111-0/+2
| | | | | Change-Id: I1603aca6a2fda955c60e1c208db268e16341391e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtGui classesFriedemann Kleint2018-05-112-3/+61
| | | | | | | | | | | | | | Add QAccessible, acccessibility events and interfaces. Fix the polymorphic-id-expression of the acccessibility events; they no longer inherit QEvent in Qt 5. Add QInputMethod, QInputMethodQueryEvent, QNativeGestureEvent, QScrollEvent, QScrollPrepareEvent, QOpenGLTextureBlitter and QPointingDeviceUniqueId. Task-number: PYSIDE-487 Change-Id: I609ece08cbab78d2fe75eaf6cb0b10531aac9b25 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Increase Python minimal accepted versionCristian Maureira-Fredes2018-05-112-4/+4
| | | | | | | | 2.6 -> 2.7 Task-number: PYSIDE-653 Change-Id: Id62717f12e17c50732c796d3d84686fd47597ab0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtCore classesFriedemann Kleint2018-05-118-1/+176
| | | | | | | | | Add QIdentityProxyModel, QLockFile, QMessageAuthenticationCode, OperatingSystemVersion and QSignalBlocker. Task-number: PYSIDE-487 Change-Id: I680c3d175394e9d560152a38195d015fc6abb7fa Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Move setup call from CI to wrapper scriptSimo Fält2018-05-113-2/+208
| | | | | | | | | It can be pretty long lasting process to get updates to Qt CI. To speed up pyside specific changes we move some of the logic to pyside repository. Change-Id: I7d60bf96324d5990fb408d69c00aa4d7e8e81a2f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Disable WebKitCristian Maureira-Fredes2018-05-091-1/+4
| | | | | | | Removing WebKit support by default. Change-Id: I8cbf94891dc29f940926167414de7bdd35478732 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix QSocketNotifier constructorCristian Maureira-Fredes2018-05-093-21/+81
| | | | | | | | | | | | | | 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>
* Add more bindings for QtNetworkFriedemann Kleint2018-05-097-9/+120
| | | | | | | 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>
* build_scripts/main.py: Fix EngrishAlexandru Croitor2018-05-081-2/+2
| | | | | Change-Id: I794e0b094c7be96853c9c5024ede49ea54731506 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix a few scriptableapplication bugsAlexandru Croitor2018-05-085-89/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Remove LIBPATH because that causes linker warnings on macOS, and its usage is deprecated on Windows. 2) Remove all qmake clang related code, as well as clang code from pyside2_config.py. It used to be needed on Windows because we didn't deploy libclang.dll to the PySide2 dir. Now that we do, the code is unnecessary. 3) Remove README.txt reference. 4) Add clarifying comments in README.md. 5) Remove NO_DEFAULT_PATH from find_library because that causes a failure to find the python library on Ubuntu (makes sense because the specified libdir is /usr/lib, but the actual library is under /usr/lib/[arch], and disabling the option forces CMake not to look under the arch dir. 6) Fix rpath to PySide2 dir not being embedded on Linux (presumably because the link flags style changed to absolute paths, not sure). 7) Fix README to be more precise about how MSBuild needs to be invoked, and how to run the executable. 8) Improve the error handling in the project files. 9) Refactor pyside2_config.py usage. Change-Id: I402d5c42ef7e01e94d3827682564e95ee280b40b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Make sure copied libclang file has write permissionsAlexandru Croitor2018-05-082-2/+15
| | | | | | | | | | | | | | When doing a standalone rebuild on macOS, if the libclang library copied over has no write permissions set, the install procedure will fail with permission denied error. Make sure to make the file owner writable, so that any subsequent rebuilds don't cause a failure. Change-Id: I54bb3f6e8bd8db7f8ed2de17892fcedec09b6c32 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix copying of libclang for standalone buildsAlexandru Croitor2018-05-081-15/+9
| | | | | | | | | | Instead of copying a multitude of symlinks, resolve the path and copy just the libclang library which CMake detected, and thus linked against for the shiboken executable. Change-Id: I02887eb4027d29255a32127fb39aff7a1d127f57 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Improve libclang extra include headers detectionAlexandru Croitor2018-05-081-2/+21
| | | | | | | | | | | | | | On certain distros (e.g. ArchLinux) there may be additional files in the path where we GLOB for clang version include folders (e.g. /usr/lib/llvm/lib/clang/6.0.0 and /usr/lib/llvm/lib/clang/ccc-analyzer). Filter the files out, and only consider folders starting with a number (e.g. 6.0.0). Change-Id: I85052e45610090f399ec92200f7a666c4872f78d Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Improve libclang detection on LinuxAlexandru Croitor2018-05-081-5/+32
| | | | | | | | | | | | | | | This change essentially allows usage of the distro-specific libclang libraries for building shiboken. This required changes to the name of the library that CMake looked for (looking at you Debian). The change also adds an additional compile test to check for the availability of the libclang headers which shiboken uses. This should prevent a failure at build time, and transform it into a nice error message at cmake configure time. Change-Id: I37e019fd5923379436a67d77f92c30efd77620d2 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* QtXmlToSphinx: Refactor link handlingFriedemann Kleint2018-05-072-46/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Forward declare QtXmlToSphinx::LinkContext as a public struct and move the definition to the source file. Replace the linkTag/linkTagEnding strings by an enumeration for the type and flags for storing the bold/italic state. Move the formatting to an operator<<(QTextStream,LinkContext) for clarity. Streamline the code checking the link text against the reference in handleLinkText(), avoiding some unnecessary tests. Add an 'External' type for external pages which do not have a role keyword. This fixes: - Undoes a breakage introduced by c5582d3120249a902681454b2319df765ffa2cd8 converting all link refs to RST labels, clobbering the '~' used for some function references. This is now limited to page type links. - Broken handling of links within italic/bold: The assignment to the linkTag variable by type would clobber the previously assigned italic/bold markers - Enable external links without role Task-number: PYSIDE-363 Change-Id: I2e9a8cd80df93a77f3c6c9f8593243b35eeeb56e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix Qt OpenGL entry in index.rstFriedemann Kleint2018-05-071-1/+1
| | | | | Change-Id: I40af60a2af1e54ffa5ede91e3fc071d14a9e510d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Update missing_bindings scriptCristian Maureira-Fredes2018-05-071-6/+17
| | | | | | | | | | | Removed deprecated modules, and included new ones based on: http://doc-snapshots.qt.io/qt5-5.11/qtmodules.html Moved QtWidgets to follow the order of the website. Change-Id: I6de85fe0402d98db57058eda6dbb1aae2e1c5aec Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add option to skip docs generationCristian Maureira-Fredes2018-05-073-11/+18
| | | | | | | Adding option to avoid building the documentation. Change-Id: Ia5595e6686c6e7d31e94818c1efb28238a3fbfc7 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix CMake usage of utils.pyAlexandru Croitor2018-05-071-1/+1
| | | | | | | The file was moved, but the path was not adjusted. Change-Id: I80ea28e4238f9cf9d43db2f9e669d84d5eafaea6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Update scriptableapplication exampleCristian Maureira-Fredes2018-05-047-75/+198
| | | | | | | | | | | | | Absolute paths are used to link the PySide2 libraries on Linux, since it's not possible to ship symbolic links inside a wheel. The README.txt was renamed to README.md to allow syntax highlight on modern editors and also to be compatible with online platforms. The README.CMake.txt was merge to the README.md to include the instruction on the same file. Change-Id: Ie0fcb8cda770ff552576f6014b5822f8d278bfe6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Use PyLong instead of PyInt for QVariantCristian Maureira-Fredes2018-05-042-2/+7
| | | | | | | | | | | | | | | | | | | Python 3 uses PyLong for integer manipulation, and since it is a valid type in Python 2 we can use it instead to have better compatibility, and avoid integer overflows. We keep the PyInt entry to avoid breaking other sections of the code when this type is required. Added a couple of PyInt_* alias to use PyLong_* ones instead. Task-number: PYSIDE-648 Change-Id: Id6af66050c5ab81fc51c1c07b1c9422a954b81c0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Blacklist QtCore/qfileread_test, Qt3DExtras/qt3dextras_test.py on macOSFriedemann Kleint2018-05-041-0/+3
| | | | | | Task-number: PYSIDE-431 Change-Id: I31deef0dc12a4b3ce11a6300c8594598d78c4712 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Update ApiExtractor documentationCristian Maureira-Fredes2018-05-046-13/+11
| | | | | | | | | Changed a few old references and links. Ran aspell on the rst files. Task-number: PYSIDE-622 Change-Id: I3e096df96bfe80ead53afa8568b7de42e8a25766 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Doc: Add license page to TOCFriedemann Kleint2018-05-031-0/+1
| | | | | | | Task-number: PYSIDE-363 Change-Id: Ic4784303a6e3f81ddc1576d6af7ced997aadfe33 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>