When an area series had consecutive points on the y=0 axis,
the renderer would draw a horizontal line segment which caused
visual glitches when filled.
This change avoids filling that problematic segment on the y=0
axis, which fixes the improper fill.
Pick-to: 6.9 6.8
Fixes: QTBUG-139112
Change-Id: I4461cbf80af9b059ccfcc714234fed5039d0cd43
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io>
(cherry picked from commit 52c5d1d3ec)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
In fact, don't return the QImage at all. It's an asynchronous function,
and the rendering will take an unknown time to complete. Callers must
connect to the sliceImageChanged() anyway to get the result, so just
let them do that, instead of clumsily polling with a timer.
Update the documentation and manual tests as much as possible for
now. There are baseline tests, but no auto-tests, so hard to say if this
still works correctly. It's likely that this needs a bit more work as a
follow up, but at least we don't release any dangerous API.
Change-Id: I19d616c76746a826c4a46ed1df0aab4dc988556c
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 5a97dd4180)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Calling data() on mutable objects forces a detach, which voids the
optimization attempted by comparing data pointers of QList
specializations, such as QSurfaceDataArray or QBarDataArray. Test
with isSharedWith instead; the pointer returned by data() can only be
the same if the two lists are shared copies of each other.
Pick-to: 6.9 6.8
Change-Id: I3b4707c6e44ed9b7f08f76086ade4f08465b7653
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Sami Varanka <sami.varanka@qt.io>
(cherry picked from commit 0320e79022)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
QtQuick3D was listed as a required module in dependencies. However,
you should be able to build QtGraphs without 3D features. In that case,
it is not necessary to have Quick3D. Therefore, the Quick3D required
field should be false in the dependencies. In addition, the baseline
tests must be turned off if 3D features are unavailable, as they link
to Quick3D.
Pick-to: 6.9 6.8
Change-Id: I6c45fde93d75d54b4adf89471441d989452b0245
Reviewed-by: Sami Varanka <sami.varanka@qt.io>
(cherry picked from commit 6300f5af2f)
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Based on API review.
Rationale: Non-trivial types should not be passed by value.
Task-number: QTBUG-137478
Change-Id: I9be369facb9f214e8bd11edbd67ef03c3c331de7
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
(cherry picked from commit 60a29fd7f9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Properties hold a value, only the setter sets the value.
Change-Id: I986abb3f5424ef5d71bd44a08b643138fd1f36e3
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
(cherry picked from commit 75ec4ffe74)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Scatter3DNode is not a part of Qt before 6.10, hence
2 separate commits with different pick targets.
Fixes: QTBUG-138797
Change-Id: Iaed5d38c81847ce9f75d21fb7b492d2cc8a972f6
Reviewed-by: Sami Varanka <sami.varanka@qt.io>
(cherry picked from commit 1367d26953)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The enum from the same class can be used in member functions without
fully qualifying the type with the class name. This makes a difference
for string-based signal/slot connections, where the declaration without
the full scope makes connections also work if the full scope is not
provided in the SIGNAL and SLOT macros.
Addresses header review comment and amends
52a361988d.
As a drive-by, fix the capitalization of the setter parameter, and the
documentation of the property.
Change-Id: I1d9ca21dc8fd173852ca89ec3060dbb1da50c046
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Sami Varanka <sami.varanka@qt.io>
(cherry picked from commit 8f9c14c383)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Removes logic that caused setPieSize() and setHoleSize() to implicitly
modify each other. The setters now only affect their own respective
properties.
Pick-to: 6.9 6.8
Fixes: QTBUG-134003
Change-Id: I2d7b3e36d692248cd2de19dc6daa9d09a61c8158
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io>
(cherry picked from commit e2def3779a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
When series is created outside of graphsview and then added into
a graphsview, the app crashes while closing. This seems to be because
it ends up calling pure virtual type function from the QAbstractSeries
in the getSeriesRendererIndex. This patch adds type variable to
QAbstractSeriesPrivate. The variable is set by QAbstractSeriesPrivate
constructor. The getSeriesRendererIndex function checks the value of
that variable instead of calling the virtual type().
Pick-to: 6.8 6.9
Fixes: QTBUG-138506
Change-Id: I7aca4970c38cbf83413818b0a77e7cf5d76195b6
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io>
(cherry picked from commit 630b38b3ee)
Reviewed-by: Sami Varanka <sami.varanka@qt.io>
Doing it this way should not break unity build, unlike
the previous attempt.
Pick-to: 6.9
Change-Id: Ibe7f305ba9e41d1465bad7bbb7fb61860b225a98
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Kwanghyo Park <kwanghyo.park@qt.io>
Reviewed-by: Sami Varanka <sami.varanka@qt.io>
(cherry picked from commit 4b815129c6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This broke unity build, so it has to be reverted in this form.
This reverts commit 6ba5d8f00c.
Pick-to: 6.9
Change-Id: I58719cd79c53af764e973b47e115e0f4f02af917
Reviewed-by: Kwanghyo Park <kwanghyo.park@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
(cherry picked from commit ee46f585d9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Switching to mask mode does not seem to visually change
the labels much if at all, and it fixes the problem with approximate
OIT.
Fixes: QTBUG-138827
Change-Id: Ia222cf6c5ec6a8e764d06217b1593abe27e166e3
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
(cherry picked from commit 330273682e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Based on API review: Since the enum only has two states,
`bool` is a more fitting and efficient underlying type.
Task-number: QTBUG-137478
Change-Id: Ieceb07b275f7fcee7a25982d856518690de04b78
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Sakaria Pouke <sakaria.pouke@qt.io>
(cherry picked from commit 006758ac5f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Based on API review: support for per-item scale for scatter graph
has been moved from QScatterDataItem to QScatter3DSeries.
This change avoids adding member data to QScatterDataItem, which
would break binary compatibility.
Task-number: QTBUG-137478
Change-Id: I07668e20a358e99740ea348f4c744e05518e2fcb
Reviewed-by: Kwanghyo Park <kwanghyo.park@qt.io>
(cherry picked from commit e8ed058e22)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Based on API review: Do not introduce new APIs with QSharedPointer
Rationale: QSharedPointer's implementation is poor and requires
twice the number of atomic operations on copy than std::shared_ptr.
We want to remove the class in Qt 7.
Solution: Instead of returning shared pointer to a QQuickItemGrabResult
that is received from the QQuick3DViewport, extract the image from
the grab result and return a pointer to that instead.
Task-number: QTBUG-137478
Change-Id: I54cc9aece72cf8cf5ec4abaddc1da189d0c31b2b
Reviewed-by: Sami Varanka <sami.varanka@qt.io>
Reviewed-by: Kwanghyo Park <kwanghyo.park@qt.io>
(cherry picked from commit 544bc177fd)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The QML type is called Bars3DNode, not BarsNode. The same applies
for ScatterNode and SurfaceNode.
Change-Id: I040ab1bae22fc7e79f3b769d162d2c1b90ba1a7d
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Andreas Eliasson <andreas.eliasson@qt.io>
(cherry picked from commit 2a19994f52)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Based on API review: this change improves the clarity and semantics
of the enum by renaming SliceType to SliceCaptureType.
Enum values were also renamed to explicitly indicate the type of
slice being captured to an image.
Task-number: QTBUG-137478
Change-Id: I1c21180f064d26189ba4121e412f103017c00fd6
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
(cherry picked from commit ff599b3b56)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The QAbstractseries::graph() function returned a private type
QGraphView which was mistakenly exposed in public documentation.
Added \internal to the doc comment to hide the function from public
API docs. Fixes the documentation leak of the private class.
Pick-to: 6.9 6.8
Task-number: QTBUG-138456
Change-Id: I4f2af5e43ada043788f841e570df1911351dcdbb
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
(cherry picked from commit 16b5a594e6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>