summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qtriangulator.cpp
Commit message (Collapse)AuthorAgeFilesLines
* QtGui: Fix some macro clashesAmir Masoud Abdol2023-02-071-0/+2
| | | | | | | | | | Macro Q_FIXED_POINT_SCALE in qpathssimplifier.cpp clashes with the macro with similar name in qtriangulator Pick-to: 6.5 Task-number: QTBUG-109394 Change-Id: I02732ae62238e8b7fae0630764fdd33b6203afe3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Use SPDX license identifiersLucie Gérard2022-05-161-38/+2
| | | | | | | | | | | | | 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: Id880c92784c40f3bbde861c0d93f58151c18b9f1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Triangulator: Ensure all members are initializedEirik Aavitsland2021-03-181-5/+8
| | | | | | | Increases robustness and fixes a number of static analysis reports. Change-Id: I2062e3fbb69a78831ef8c937e36cb318abf3529e Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Another round of 0->nullptr cleanupAllan Sandfeld Jensen2020-07-311-3/+3
| | | | | Change-Id: Ic8db7dc252f8fea46eb5a4f334726d6c7f4645a6 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Use QList instead of QVector in gui implementationJarek Kobus2020-07-071-4/+4
| | | | | | | Task-number: QTBUG-84469 Change-Id: I366e845249203d80d640355a7780ac2f91a762f1 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix coverity warnings about uninitialized data membersVolker Hilsheimer2020-05-121-1/+1
| | | | | | | | | | | | | | | | | | | Coverity alerts about uninitialized members. While this might be ok in the code here (ie TreeNode::splitLeft is never used for leaf nodes) it can easily result in undefined behavior and other hard-to-debug issues. Initializing the struct with initializer syntax; compiler explorer indicates that the compile will be able to optimze the calls to avoid duplicate initialization of data members. Change-Id: I0eb5d26e34f466d8c659c1945f02601aef511fbf Fixes: QTBUG-84160 Fixes: QTBUG-84156 Coverity-Id: 218601 Coverity-Id: 11398 Pick-to: 5.15 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Tidy nullptr usageAllan Sandfeld Jensen2019-12-061-14/+14
| | | | | | | | | | | Move away from using 0 as pointer literal. Done using clang-tidy. This is not complete as run-clang-tidy can't handle all of qtbase in one go. Change-Id: I1076a21f32aac0dab078af6f175f7508145eece0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* qtriangulator: Remove a bunch of dead codeIvan Komissarov2018-10-221-22/+8
| | | | | | | | | | There is no sense in testing the 'm_array' pointer against null, as the memory was allocated using the 'new' operator. The exception will be generated in the case of memory allocation error. Task-number: QTBUG-71156 Change-Id: Ib76d16d38d2b0b0c4c9fae3d8d5bdd86af0d08ff Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove OpenGL dependency from qTriangulateLaszlo Agocs2017-01-181-26/+14
| | | | | | | | | | | | | | | | | | | The original implementation is only suitable as long as the only client is the GL paint engine which will call the function with the GL context current. In other cases this cannot be ensured. For instance, doing triangulation on the gui thread in a Quick application using the threaded render loop will have to deal with not having a current context on that thread at all. Doing triangulation on worker threads has the same problem as well. In addition, in modern Qt versions a -no-opengl build does not imply no accelerated graphics API. Therefore, drop the ElementIndexUint check from qtriangulator.cpp and leave it up to the caller to tell if uint indices are supported or not. Change-Id: I7491d84981ee22d05c5fde08994dbb3a4e2432e9 Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* Support C++17 fallthrough attributeAllan Sandfeld Jensen2016-08-191-3/+3
| | | | | | | | | Replaces our mix of comments for annotating intended absence of break in switches with the C++17 attribute [[fallthrough]], or its earlier a clang extension counterpart. Change-Id: I4b2d0b9b5e4425819c7f1bf01608093c536b6d14 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Move QTriangulator and QTriangulatingStroker classes to paintingAndy Nichols2016-08-151-0/+2382
Previously the private APIs for QTriangulator and QTriangulatingStroker were located in src/gui/opengl because they were used by the OpenGL paint engine. These API's are not actually specific to OpenGL however, and were not being built when QT_NO_OPENGL was defined. It makes more sense for these classes to belong in the painting subgroup. Aside from the OpenGL paint engine, these private APIs are used by QtLocation to triangulate polylines to be rendered by QtQuick. Change-Id: Idb4d1e5b2a51394d4c6bcdf9ab1ece99de23d4de Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>