diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-07-09 03:09:25 +0200 |
---|---|---|
committer | Edward Welbourne <edward.welbourne@qt.io> | 2019-07-11 13:54:15 +0200 |
commit | 4be9ca2a74a3c23c68b33cd18b7fbee61aa790fe (patch) | |
tree | b8fb5ca9899ba4e78c363b155444f6f5963a492a | |
parent | e55da30217bd39909bd6618cf52e23eacf6c7b37 (diff) | |
parent | beb856b0b003768e918313407d299c925cf029a9 (diff) |
Merge "Merge remote-tracking branch 'origin/5.12' into 5.13"
-rw-r--r-- | dist/changes-5.12.4 | 25 | ||||
-rw-r--r-- | src/charts/areachart/areachartitem.cpp | 7 | ||||
-rw-r--r-- | src/charts/linechart/linechartitem.cpp | 12 | ||||
-rw-r--r-- | src/charts/scatterchart/scatterchartitem.cpp | 7 | ||||
-rw-r--r-- | src/charts/splinechart/splinechartitem.cpp | 7 |
5 files changed, 51 insertions, 7 deletions
diff --git a/dist/changes-5.12.4 b/dist/changes-5.12.4 new file mode 100644 index 00000000..48916147 --- /dev/null +++ b/dist/changes-5.12.4 @@ -0,0 +1,25 @@ +Qt 5.12.4 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.12.0 through 5.12.3. + +For more details, refer to the online documentation included in this +distribution. The documentation is also available online: + +https://doc.qt.io/qt-5/index.html + +The Qt version 5.12 series is binary compatible with the 5.11.x series. +Applications compiled for 5.11 will continue to run with 5.12. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + +https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + + **************************************************************************** +* Bug Fixes * +**************************************************************************** + +- QCandlestickSeries: remove sets on destroy to prevent leaks +- [QTBUG-70987] Fix crash on ChartView component destroy diff --git a/src/charts/areachart/areachartitem.cpp b/src/charts/areachart/areachartitem.cpp index e4ebf80a..0c61e0fe 100644 --- a/src/charts/areachart/areachartitem.cpp +++ b/src/charts/areachart/areachartitem.cpp @@ -198,8 +198,13 @@ void AreaChartItem::handleUpdated() m_pointLabelsVisible = m_series->pointLabelsVisible(); m_pointLabelsFont = m_series->pointLabelsFont(); m_pointLabelsColor = m_series->pointLabelsColor(); + bool labelClippingChanged = m_pointLabelsClipping != m_series->pointLabelsClipping(); m_pointLabelsClipping = m_series->pointLabelsClipping(); - update(); + // Update whole chart in case label clipping changed as labels can be outside series area + if (labelClippingChanged) + m_series->chart()->update(); + else + update(); } void AreaChartItem::handleDomainUpdated() diff --git a/src/charts/linechart/linechartitem.cpp b/src/charts/linechart/linechartitem.cpp index b96d263a..99e16d29 100644 --- a/src/charts/linechart/linechartitem.cpp +++ b/src/charts/linechart/linechartitem.cpp @@ -354,12 +354,18 @@ void LineChartItem::handleUpdated() m_pointLabelsVisible = m_series->pointLabelsVisible(); m_pointLabelsFont = m_series->pointLabelsFont(); m_pointLabelsColor = m_series->pointLabelsColor(); + bool labelClippingChanged = m_pointLabelsClipping != m_series->pointLabelsClipping(); m_pointLabelsClipping = m_series->pointLabelsClipping(); if (doGeometryUpdate) updateGeometry(); else if (m_series->useOpenGL() && visibleChanged) refreshGlChart(); - update(); + + // Update whole chart in case label clipping changed as labels can be outside series area + if (labelClippingChanged) + m_series->chart()->update(); + else + update(); } void LineChartItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) @@ -406,9 +412,7 @@ void LineChartItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *opt painter->drawPath(m_linePath); } else { painter->setBrush(QBrush(Qt::NoBrush)); - if (m_linePen.style() != Qt::SolidLine - || painter->renderHints().testFlag(QPainter::Antialiasing) - || alwaysUsePath) { + if (m_linePen.style() != Qt::SolidLine || alwaysUsePath) { // If pen style is not solid line, always fall back to path painting // to ensure proper continuity of the pattern painter->drawPath(m_linePath); diff --git a/src/charts/scatterchart/scatterchartitem.cpp b/src/charts/scatterchart/scatterchartitem.cpp index 1558cc60..a358e4f2 100644 --- a/src/charts/scatterchart/scatterchartitem.cpp +++ b/src/charts/scatterchart/scatterchartitem.cpp @@ -273,6 +273,7 @@ void ScatterChartItem::handleUpdated() m_pointLabelsVisible = m_series->pointLabelsVisible(); m_pointLabelsFont = m_series->pointLabelsFont(); m_pointLabelsColor = m_series->pointLabelsColor(); + bool labelClippingChanged = m_pointLabelsClipping != m_series->pointLabelsClipping(); m_pointLabelsClipping = m_series->pointLabelsClipping(); if (recreate) { @@ -285,7 +286,11 @@ void ScatterChartItem::handleUpdated() setPen(m_series->pen()); setBrush(m_series->brush()); - update(); + // Update whole chart in case label clipping changed as labels can be outside series area + if (labelClippingChanged) + m_series->chart()->update(); + else + update(); } QT_CHARTS_END_NAMESPACE diff --git a/src/charts/splinechart/splinechartitem.cpp b/src/charts/splinechart/splinechartitem.cpp index f873fd10..776842fd 100644 --- a/src/charts/splinechart/splinechartitem.cpp +++ b/src/charts/splinechart/splinechartitem.cpp @@ -427,8 +427,13 @@ void SplineChartItem::handleUpdated() m_pointLabelsVisible = m_series->pointLabelsVisible(); m_pointLabelsFont = m_series->pointLabelsFont(); m_pointLabelsColor = m_series->pointLabelsColor(); + bool labelClippingChanged = m_pointLabelsClipping != m_series->pointLabelsClipping(); m_pointLabelsClipping = m_series->pointLabelsClipping(); - update(); + // Update whole chart in case label clipping changed as labels can be outside series area + if (labelClippingChanged) + m_series->chart()->update(); + else + update(); } //painter |