aboutsummaryrefslogtreecommitdiffstats
path: root/sources
Commit message (Collapse)AuthorAgeFilesLines
* Fix qtattributionsscannertorst.pyFriedemann Kleint2018-05-291-37/+28
| | | | | | | | | | | | | | | The tool was originally written to handle a license embedded in a Python file. This has changed, the license now exists as a text file. Rewrite the tool to concatenate the output piece-wise instead of using fixed formats to be able to cope with missing URLs and versions. Add the copyrights, which were previously missing. Task-number: PSYIDE-363 Change-Id: I5ec0bd7a4b81e9f794f56f6b2b09062c331936ae Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Fix some oversights in the index pageFriedemann Kleint2018-05-281-2/+2
| | | | | | Task-number: PYSIDE-363 Change-Id: Ib0bc82733932eb96f9d2ca42649d28bc600d8f60 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Fix Qt11ExtrasFriedemann Kleint2018-05-281-1/+6
| | | | | | | | | | Work around the non-standard header naming of the module in the documentation generation (see also file sources/pyside2/PySide2/QtX11Extras/QtX11Extras_global.post.h.in). Task-number: PYSIDE-363 Change-Id: I3ff8bb666513a13fde4d13693fd06bdd7866e050 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Add QtMultimediaWidgetsFriedemann Kleint2018-05-282-0/+5
| | | | | | | | | They share the qdoc.conf file with QtMultimedia, which needs to be special-cased, similar to QQuickWidgets. Task-number: PYSIDE-363 Change-Id: I5abade0a715ff3245be2322eae42e7c93f643fc9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add QtScxml to the documentationFriedemann Kleint2018-05-252-1/+5
| | | | | | | | Complements 9d10897929350417f4c7b2dcf06966ff7c67c5a6. Task-number: PYSIDE-487 Change-Id: I4a01c986535c0d7ba8362760c1b8e89a2f8e9936 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove left-over documentation filesFriedemann Kleint2018-05-251-120/+0
| | | | | | | - _templates/index.html Change-Id: Idcde052a1a77e2ade1de712db79da95d5ed6c02c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix incorrect usage of findLlvmConfigAlexandru Croitor2018-05-251-2/+2
| | | | | | | | | The functions has been renamed due to PEP8 formatting. Amends 71249b93a5d12a320b44c608c05fb9d220788a18 Change-Id: I00206e1dda77f672d6883406e47debda19bc622f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Doc: Use relative path to the shiboken docsVenugopal Shivashankar2018-05-251-1/+1
| | | | | Change-Id: I63e3d87a62932e20ce28bf344636c05a61f1c6b0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add QtScxmlFriedemann Kleint2018-05-246-1/+275
| | | | | | | 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>
* Use SPDX name / ID for python licenseKai Koehne2018-05-222-2/+46
| | | | | | | | | | | | | | | | | This is the standard name of the license. See also https://spdx.org/licenses/Python-2.0.html Note that there's some deviation in the actual license text: The text refers to the exact Python version. Also, the SPDX standardized license contains additional text for some modules. Still, it's better to use the standardized name than inventing our own one. Change-Id: I64b20bc558928ca28edaf81925a049fcaeb124b6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Improve function documentation extractionFriedemann Kleint2018-05-183-34/+134
| | | | | | | | | | | | | | | The XQuery used to obtain the function description can fail due to argument type mismatches (typedefs or blank formatting). In that case, repeat the query restricting the search the argument count. If exactly one match is found, use that with a warning. Output the matches otherwise. Split out functions for the function queries and and helper function for creating the XQuery with flags. Task-number: PYSIDE-363 Change-Id: I83aaa53511896ee78a25f39a769ca907d0ac10bb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* QtXmlToSphinx::transform(): Improve XML error messageFriedemann Kleint2018-05-181-2/+4
| | | | | | | Output line and column. Change-Id: Ide890b93c47ef0fc9ebe3209356da100e0cbde4e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Skip methods added by the meta builderFriedemann Kleint2018-05-183-5/+11
| | | | | | | | | Introduce an attribute for added methods and exclude them from the documentation generation. Task-number: PYSIDE-363 Change-Id: I06d3f468bcec4d0480012d29e26dabadae51634b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* 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>
* 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>
* 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>
* 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-151-0/+8
| | | | | | | | | | | | 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>
* Change license from last filesCristian Maureira-Fredes2018-05-141-1/+1
| | | | | | | | 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* Decode qtattributionsscanner output to UTF-8Topi Reinio2018-05-031-1/+1
| | | | | | | | | Without the decode() step, the script may fail with TypeError: the JSON object must be str, not 'bytes' Task-number: PYSIDE-363 Change-Id: Ib9a8e487cc1b9f51692d0c4f20009a0c97cc770e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Doc: Pass include paths via qdocconf instead of command lineTopi Reinio2018-05-032-7/+10
| | | | | | | | | This way, the length of the command line does not exceed the maximum on Windows. Task-number: PYSIDE-651 Change-Id: Ib6cc736b8c5dda2e9b4bd3775fb18b8584837604 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Change license from all the filesCristian Maureira-Fredes2018-05-031694-1694/+1694
| | | | | | | | | | | | | | | | | 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>
* QtXmlToSphinx: Add support for more elementsFriedemann Kleint2018-05-022-2/+41
| | | | | | | | | Add support for <target> and <page> elements for the additional documentation sections. Task-number: PYSIDE-363 Change-Id: I0b04106fbe6ae1779625de333368e18bbc31b962 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>