summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2013-03-21 14:33:32 +0200
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2013-03-21 14:38:26 +0200
commit7ed67b83fa6cf94ab5b72fc4237a7b7add3d025b (patch)
tree99ad225ac7fb7859ea34f9b3b303bd61efd4786c
parenta5b974d85d04ebb54ae4bb998abcc866f92c8319 (diff)
Fix area series fill problem when component series have points visible
Line series points are drawn by adding ellipses to line series path, which in turn is used by area series. QPainterPath fill algorithm cannot handle this case, as there would be fill required on both sides of the path. Task-number: QTRD-1941 Reviewed-by: Mika Salmela
-rw-r--r--src/areachart/areachartitem_p.h3
-rw-r--r--src/linechart/linechartitem_p.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/src/areachart/areachartitem_p.h b/src/areachart/areachartitem_p.h
index e08c4b06..0c09bade 100644
--- a/src/areachart/areachartitem_p.h
+++ b/src/areachart/areachartitem_p.h
@@ -94,6 +94,9 @@ public:
void updateGeometry()
{
+ // Turn off points drawing from component line chart item, as that
+ // messes up the fill for area series.
+ suppressPoints();
LineChartItem::updateGeometry();
m_item->updatePath();
}
diff --git a/src/linechart/linechartitem_p.h b/src/linechart/linechartitem_p.h
index 24488fdf..6db4ccfb 100644
--- a/src/linechart/linechartitem_p.h
+++ b/src/linechart/linechartitem_p.h
@@ -62,6 +62,7 @@ protected:
void mousePressEvent(QGraphicsSceneMouseEvent *event);
void hoverEnterEvent(QGraphicsSceneHoverEvent *event);
void hoverLeaveEvent(QGraphicsSceneHoverEvent *event);
+ void suppressPoints() { m_pointsVisible = false; }
private:
QLineSeries *m_series;