Commit Graph

8 Commits (817e47fbcde21ab54d353efd647685159cb437a9)

Author SHA1 Message Date
Kai Köhne 9d2cc4dd76 Fix typos in docs and comments
Found by codespell

Pick-to: 6.4
Change-Id: Ie3e301a23830c773a2e9aff487c702a223d246eb
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2022-06-15 21:31:02 +02:00
Lucie Gérard 05fc3aef53 Use SPDX license identifiers
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>
2022-05-16 16:37:38 +02:00
Edward Welbourne 128942ccc9 Clean up documentation in QVector[234]D
Change-Id: I13f04c06280b998e5489eb114977ec0ed37178b7
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-02-05 15:40:01 +01:00
Edward Welbourne 7a738daa97 Make explicit that we expect co-ordinates to be finite
The various spatial-vector, line, point, region and margin types have
all long taken for granted that their co-ordinates are finite and, in
particular, not NaN. Make this expectation explicit in the
documentation. Added assertions where (chiefly) noexcept and (where
the assertion would be a simple qIsFinite() call) constexpr didn't
preclude doing so. Also assert against zero divisors that would lead
to non-finite results.

Make minor clean-ups to docs in the process. QMarginsF had several
methods whose declaration, definition and docs weren't consistent in
their parameter names.

Task-number: QTBUG-89010
Change-Id: I601a830959d13a73dcb17ce31a1202a1486c8f7f
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-02-04 17:18:51 +01:00
Edward Welbourne 0a01396e60 Purge double-spaces in qvectornd.cpp sentence-ends
Change-Id: I4b5692334a12374b8a6b4910d411d0eab240ce4b
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-12-04 15:09:47 +01:00
Topi Reinio 3789ca6c99 Doc: Fix QVector[2|3|4]D documentation
The \fn commands for friend functions need to include the class
scope for QDoc to find the declarations.

Pick-to: 6.0 6.0.0
Fixes: QTBUG-88932
Change-Id: Icbb45c12d7d657d95243231148483c00baf07c36
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-30 17:16:22 +01:00
Lars Knoll bfceaf7eb3 De-inline qFuzzyCompare for QMatrix4x4 and QVector4D
Change-Id: Ic412d5cefcc1c41e90ee5cf98814469aec3a91f6
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-11-19 12:28:45 +01:00
Giuseppe D'Angelo 5a61c88e1f Clean up QVector2D/3D/4D
In random order:

* Remove code marked for removal in Qt 6.

* Inline as much as possible. This should give us a massive
speed boost in some simple operations where the function call
overhead as much as the cost of body of the function itself
(lengthSquared, dotProduct, etc.).

* Plaster constexpr and noexcept, as much as possible; follow
Lakos' rule.

* Unexport the classes; selectively export only the symbols
still defined out of line.

* Add [[nodiscard]] to any non-trivial mathematical operation
(e.g. calculate the length).

* To avoid circular dependencies, centralize their implementation
in one file. Leave the existing headers for compatibility with
existing #include statements.

* Change all the signatures of the classes' members to take
QVectorND, QPointF, etc. objects by value, not by const ref.
Usage in other classes (e.g. QMatrix4x4) has not been adjusted.

Change-Id: Iaf5a4b5289fcdf704e77656793390b8e772e94a5
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2020-11-19 12:28:45 +01:00