summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2021-12-09 11:45:36 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2022-01-06 12:20:22 +0100
commit302b44125aa0c1d5216f986ecf8e341cd6e57418 (patch)
tree375fd5c0d6052f4fc8f57ed02c6d02d3b9ef2856
parent5cfa563169d7e012a6c6e77a3d379c2d183d9339 (diff)
use background XShapeGroup for bar-chart area
which means we don't have to set the Z-order, which is expensive for large charts. Shaves 5% off the load time Change-Id: I8c73df6ddc17a3cfedaa18dbe8ec3aeb768e3e42 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126607 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt96
-rw-r--r--chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt64
-rw-r--r--chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt80
-rw-r--r--chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt76
-rw-r--r--chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt76
-rw-r--r--chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt76
-rw-r--r--chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt80
-rw-r--r--chart2/source/view/charttypes/BarChart.cxx11
-rw-r--r--chart2/source/view/inc/ShapeFactory.hxx3
-rw-r--r--chart2/source/view/main/ShapeFactory.cxx11
-rw-r--r--sw/qa/extras/layout/layout2.cxx7
11 files changed, 298 insertions, 282 deletions
diff --git a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
index b3192a728377..f9ec3b65a2f8 100644
--- a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
+++ b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
@@ -7,17 +7,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
// aColumnOrBarPosition.X
-13522
+3698
// aColumnOrBarPosition.Y
-4147
+4414
// aColumnOrBarSize.Height
-3202
+2935
// aColumnOrBarSize.Width
-1169
+1170
// aColumnOrBarTransformation
-1169;0;13522;0;3202;4147;0;0;1
+1170;0;3698;0;2935;4414;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
// aColumnOrBarPosition.X
8610
@@ -29,17 +29,17 @@
1170
// aColumnOrBarTransformation
1170;0;8610;0;5403;1946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
// aColumnOrBarPosition.X
-3698
+13522
// aColumnOrBarPosition.Y
-4414
+4147
// aColumnOrBarSize.Height
-2935
+3202
// aColumnOrBarSize.Width
-1170
+1169
// aColumnOrBarTransformation
-1170;0;3698;0;2935;4414;0;0;1
+1169;0;13522;0;3202;4147;0;0;1
/// Series 1 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -47,17 +47,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
// aColumnOrBarPosition.X
-14691
+4868
// aColumnOrBarPosition.Y
-3747
+5247
// aColumnOrBarSize.Height
-3602
+2102
// aColumnOrBarSize.Width
-1170
+1169
// aColumnOrBarTransformation
-1170;0;14691;0;3602;3747;0;0;1
+1169;0;4868;0;2102;5247;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
// aColumnOrBarPosition.X
9780
@@ -69,17 +69,17 @@
1169
// aColumnOrBarTransformation
1169;0;9780;0;3002;4347;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
// aColumnOrBarPosition.X
-4868
+14691
// aColumnOrBarPosition.Y
-5247
+3747
// aColumnOrBarSize.Height
-2102
+3602
// aColumnOrBarSize.Width
-1169
+1170
// aColumnOrBarTransformation
-1169;0;4868;0;2102;5247;0;0;1
+1170;0;14691;0;3602;3747;0;0;1
/// Series 2 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -87,17 +87,17 @@
3
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
// aColumnOrBarPosition.X
-15861
+6037
// aColumnOrBarPosition.Y
-5214
+6281
// aColumnOrBarSize.Height
-2135
+1068
// aColumnOrBarSize.Width
-1169
+1170
// aColumnOrBarTransformation
-1169;0;15861;0;2135;5214;0;0;1
+1170;0;6037;0;1068;6281;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
// aColumnOrBarPosition.X
10949
@@ -109,17 +109,17 @@
1169
// aColumnOrBarTransformation
1169;0;10949;0;2935;4414;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
// aColumnOrBarPosition.X
-6037
+15861
// aColumnOrBarPosition.Y
-6281
+5214
// aColumnOrBarSize.Height
-1068
+2135
// aColumnOrBarSize.Width
-1170
+1169
// aColumnOrBarTransformation
-1170;0;6037;0;1068;6281;0;0;1
+1169;0;15861;0;2135;5214;0;0;1
/// Series 3 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -127,17 +127,17 @@
2
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
// aColumnOrBarPosition.X
-17030
+7207
// aColumnOrBarPosition.Y
-2335
+5677
// aColumnOrBarSize.Height
-5014
+1672
// aColumnOrBarSize.Width
-1170
+1169
// aColumnOrBarTransformation
-1170;0;17030;0;5014;2335;0;0;1
+1169;0;7207;0;1672;5677;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
// aColumnOrBarPosition.X
12118
@@ -149,14 +149,14 @@
1170
// aColumnOrBarTransformation
1170;0;12118;0;3343;4006;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
// aColumnOrBarPosition.X
-7207
+17030
// aColumnOrBarPosition.Y
-5677
+2335
// aColumnOrBarSize.Height
-1672
+5014
// aColumnOrBarSize.Width
-1169
+1170
// aColumnOrBarTransformation
-1169;0;7207;0;1672;5677;0;0;1
+1170;0;17030;0;5014;2335;0;0;1
diff --git a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt
index 7828d7907d69..47a0a9b0ac21 100644
--- a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt
+++ b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt
@@ -7,17 +7,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-2709
+6712
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-7071
+6482
// aColumnOrBarTransformation
-7071;0;3582;0;364;2709;0;0;1
+6482;0;3582;0;364;6712;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
// aColumnOrBarPosition.X
3582
@@ -29,17 +29,17 @@
11932
// aColumnOrBarTransformation
11932;0;3582;0;364;4710;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-6712
+2709
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-6482
+7071
// aColumnOrBarTransformation
-6482;0;3582;0;364;6712;0;0;1
+7071;0;3582;0;364;2709;0;0;1
/// Series 1 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -47,17 +47,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-2345
+6348
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-7956
+4641
// aColumnOrBarTransformation
-7956;0;3582;0;364;2345;0;0;1
+4641;0;3582;0;364;6348;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
// aColumnOrBarPosition.X
3582
@@ -69,17 +69,17 @@
6630
// aColumnOrBarTransformation
6630;0;3582;0;363;4347;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-6348
+2345
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-4641
+7956
// aColumnOrBarTransformation
-4641;0;3582;0;364;6348;0;0;1
+7956;0;3582;0;364;2345;0;0;1
/// Series 2 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -87,17 +87,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-1981
+5984
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-4714
+2357
// aColumnOrBarTransformation
-4714;0;3582;0;364;1981;0;0;1
+2357;0;3582;0;364;5984;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
// aColumnOrBarPosition.X
3582
@@ -109,17 +109,17 @@
6482
// aColumnOrBarTransformation
6482;0;3582;0;364;3983;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-5984
+1981
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-2357
+4714
// aColumnOrBarTransformation
-2357;0;3582;0;364;5984;0;0;1
+4714;0;3582;0;364;1981;0;0;1
/// Series 3 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -127,17 +127,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-1617
+5620
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-11072
+3690
// aColumnOrBarTransformation
-11072;0;3582;0;364;1617;0;0;1
+3690;0;3582;0;364;5620;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
// aColumnOrBarPosition.X
3582
@@ -149,14 +149,14 @@
7381
// aColumnOrBarTransformation
7381;0;3582;0;364;3619;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-5620
+1617
// aColumnOrBarSize.Height
364
// aColumnOrBarSize.Width
-3690
+11072
// aColumnOrBarTransformation
-3690;0;3582;0;364;5620;0;0;1
+11072;0;3582;0;364;1617;0;0;1
diff --git a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
index 3c4dad8c5aac..d3a964679852 100644
--- a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
+++ b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
@@ -7,17 +7,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
// aColumnOrBarPosition.X
-14433
+4359
// aColumnOrBarPosition.Y
-4147
+4414
// aColumnOrBarSize.Height
-3202
+2935
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;14433;0;3202;4147;0;0;1
+916;0;4359;0;2935;4414;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
// aColumnOrBarPosition.X
9396
@@ -29,17 +29,17 @@
916
// aColumnOrBarTransformation
916;0;9396;0;5403;1946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
// aColumnOrBarPosition.X
-4359
+14433
// aColumnOrBarPosition.Y
-4414
+4147
// aColumnOrBarSize.Height
-2935
+3202
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;4359;0;2935;4414;0;0;1
+916;0;14433;0;3202;4147;0;0;1
/// Series 1 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -47,17 +47,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
// aColumnOrBarPosition.X
-15349
+5275
// aColumnOrBarPosition.Y
-3747
+5247
// aColumnOrBarSize.Height
-3602
+2102
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;15349;0;3602;3747;0;0;1
+916;0;5275;0;2102;5247;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
// aColumnOrBarPosition.X
10312
@@ -69,17 +69,17 @@
916
// aColumnOrBarTransformation
916;0;10312;0;3002;4347;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
// aColumnOrBarPosition.X
-5275
+15349
// aColumnOrBarPosition.Y
-5247
+3747
// aColumnOrBarSize.Height
-2102
+3602
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;5275;0;2102;5247;0;0;1
+916;0;15349;0;3602;3747;0;0;1
/// Series 2 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -87,17 +87,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
// aColumnOrBarPosition.X
-16265
+6191
// aColumnOrBarPosition.Y
-5214
+6281
// aColumnOrBarSize.Height
-2135
+1068
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;16265;0;2135;5214;0;0;1
+916;0;6191;0;1068;6281;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
// aColumnOrBarPosition.X
11228
@@ -109,17 +109,17 @@
916
// aColumnOrBarTransformation
916;0;11228;0;2935;4414;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
// aColumnOrBarPosition.X
-6191
+16265
// aColumnOrBarPosition.Y
-6281
+5214
// aColumnOrBarSize.Height
-1068
+2135
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;6191;0;1068;6281;0;0;1
+916;0;16265;0;2135;5214;0;0;1
/// Series 3 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -127,17 +127,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
// aColumnOrBarPosition.X
-17181
+7107
// aColumnOrBarPosition.Y
-2335
+5677
// aColumnOrBarSize.Height
-5014
+1672
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;17181;0;5014;2335;0;0;1
+916;0;7107;0;1672;5677;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
// aColumnOrBarPosition.X
12144
@@ -149,14 +149,14 @@
916
// aColumnOrBarTransformation
916;0;12144;0;3343;4006;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
// aColumnOrBarPosition.X
-7107
+17181
// aColumnOrBarPosition.Y
-5677
+2335
// aColumnOrBarSize.Height
-1672
+5014
// aColumnOrBarSize.Width
916
// aColumnOrBarTransformation
-916;0;7107;0;1672;5677;0;0;1
+916;0;17181;0;5014;2335;0;0;1
diff --git a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
index 5fa9301b129f..1d53a339e405 100644
--- a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
+++ b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
@@ -7,17 +7,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-1678
+5681
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-3381
+5562
// aColumnOrBarTransformation
-3381;0;3582;0;1334;1678;0;0;1
+5562;0;3582;0;1334;5681;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
// aColumnOrBarPosition.X
3582
@@ -29,17 +29,17 @@
5422
// aColumnOrBarTransformation
5422;0;3582;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-5681
+1678
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-5562
+3381
// aColumnOrBarTransformation
-5562;0;3582;0;1334;5681;0;0;1
+3381;0;3582;0;1334;1678;0;0;1
/// Series 1 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -47,17 +47,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
// aColumnOrBarPosition.X
-6963
+9144
// aColumnOrBarPosition.Y
-1678
+5681
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-3804
+3982
// aColumnOrBarTransformation
-3804;0;6963;0;1334;1678;0;0;1
+3982;0;9144;0;1334;5681;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
// aColumnOrBarPosition.X
9004
@@ -69,17 +69,17 @@
3013
// aColumnOrBarTransformation
3013;0;9004;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
// aColumnOrBarPosition.X
-9144
+6963
// aColumnOrBarPosition.Y
-5681
+1678
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-3982
+3804
// aColumnOrBarTransformation
-3982;0;9144;0;1334;5681;0;0;1
+3804;0;6963;0;1334;1678;0;0;1
/// Series 2 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -87,17 +87,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
255
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
// aColumnOrBarPosition.X
-10767
+13126
// aColumnOrBarPosition.Y
-1678
+5681
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-2255
+2023
// aColumnOrBarTransformation
-2255;0;10767;0;1334;1678;0;0;1
+2023;0;13126;0;1334;5681;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
// aColumnOrBarPosition.X
12017
@@ -109,17 +109,17 @@
2945
// aColumnOrBarTransformation
2945;0;12017;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
// aColumnOrBarPosition.X
-13126
+10767
// aColumnOrBarPosition.Y
-5681
+1678
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-2023
+2255
// aColumnOrBarTransformation
-2023;0;13126;0;1334;5681;0;0;1
+2255;0;10767;0;1334;1678;0;0;1
/// Series 3 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -127,17 +127,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
// aColumnOrBarPosition.X
-13022
+15149
// aColumnOrBarPosition.Y
-1678
+5681
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-5295
+3168
// aColumnOrBarTransformation
-5295;0;13022;0;1334;1678;0;0;1
+3168;0;15149;0;1334;5681;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
// aColumnOrBarPosition.X
14962
@@ -149,14 +149,14 @@
3355
// aColumnOrBarTransformation
3355;0;14962;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
// aColumnOrBarPosition.X
-15149
+13022
// aColumnOrBarPosition.Y
-5681
+1678
// aColumnOrBarSize.Height
1334
// aColumnOrBarSize.Width
-3168
+5295
// aColumnOrBarTransformation
-3168;0;15149;0;1334;5681;0;0;1
+5295;0;13022;0;1334;1678;0;0;1
diff --git a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
index c183d4ea52d7..75ee4041785e 100644
--- a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
+++ b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
@@ -7,17 +7,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
-5971
+5082
// aColumnOrBarSize.Height
-1378
+2267
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;1378;5971;0;0;1
+1965;0;5055;0;2267;5082;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
// aColumnOrBarPosition.X
9967
@@ -29,17 +29,17 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;2210;5139;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
-5082
+5971
// aColumnOrBarSize.Height
-2267
+1378
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;2267;5082;0;0;1
+1965;0;14878;0;1378;5971;0;0;1
/// Series 1 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -47,17 +47,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
-4421
+3459
// aColumnOrBarSize.Height
-1550
+1623
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;1550;4421;0;0;1
+1965;0;5055;0;1623;3459;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
// aColumnOrBarPosition.X
9967
@@ -69,17 +69,17 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;1227;3912;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
-3459
+4421
// aColumnOrBarSize.Height
-1623
+1550
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;1623;3459;0;0;1
+1965;0;14878;0;1550;4421;0;0;1
/// Series 2 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -87,17 +87,17 @@
3
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
-3502
+2635
// aColumnOrBarSize.Height
-919
+824
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;919;3502;0;0;1
+1965;0;5055;0;824;2635;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
// aColumnOrBarPosition.X
9967
@@ -109,17 +109,17 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;1201;2711;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
-2635
+3502
// aColumnOrBarSize.Height
-824
+919
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;824;2635;0;0;1
+1965;0;14878;0;919;3502;0;0;1
/// Series 3 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -127,17 +127,17 @@
2
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
1345
// aColumnOrBarSize.Height
-2157
+1290
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;2157;1345;0;0;1
+1965;0;5055;0;1290;1345;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
// aColumnOrBarPosition.X
9967
@@ -149,14 +149,14 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;1366;1345;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
1345
// aColumnOrBarSize.Height
-1290
+2157
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;1290;1345;0;0;1
+1965;0;14878;0;2157;1345;0;0;1
diff --git a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt
index 228bc26b81cb..f9bf6a20b1d8 100644
--- a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt
+++ b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt
@@ -7,17 +7,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-1945
+5948
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-2828
+2592
// aColumnOrBarTransformation
-2828;0;3582;0;800;1945;0;0;1
+2592;0;3582;0;800;5948;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
// aColumnOrBarPosition.X
3582
@@ -29,17 +29,17 @@
4773
// aColumnOrBarTransformation
4773;0;3582;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
// aColumnOrBarPosition.X
3582
// aColumnOrBarPosition.Y
-5948
+1945
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-2592
+2828
// aColumnOrBarTransformation
-2592;0;3582;0;800;5948;0;0;1
+2828;0;3582;0;800;1945;0;0;1
/// Series 1 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -47,17 +47,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
// aColumnOrBarPosition.X
-6410
+6174
// aColumnOrBarPosition.Y
-1945
+5948
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-3182
+1857
// aColumnOrBarTransformation
-3182;0;6410;0;800;1945;0;0;1
+1857;0;6174;0;800;5948;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
// aColumnOrBarPosition.X
8355
@@ -69,17 +69,17 @@
2652
// aColumnOrBarTransformation
2652;0;8355;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
// aColumnOrBarPosition.X
-6174
+6410
// aColumnOrBarPosition.Y
-5948
+1945
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-1857
+3182
// aColumnOrBarTransformation
-1857;0;6174;0;800;5948;0;0;1
+3182;0;6410;0;800;1945;0;0;1
/// Series 2 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -87,17 +87,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
255
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
// aColumnOrBarPosition.X
-9592
+8031
// aColumnOrBarPosition.Y
-1945
+5948
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-1886
+943
// aColumnOrBarTransformation
-1886;0;9592;0;800;1945;0;0;1
+943;0;8031;0;800;5948;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
// aColumnOrBarPosition.X
11007
@@ -109,17 +109,17 @@
2593
// aColumnOrBarTransformation
2593;0;11007;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
// aColumnOrBarPosition.X
-8031
+9592
// aColumnOrBarPosition.Y
-5948
+1945
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-943
+1886
// aColumnOrBarTransformation
-943;0;8031;0;800;5948;0;0;1
+1886;0;9592;0;800;1945;0;0;1
/// Series 3 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -127,17 +127,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
// aColumnOrBarPosition.X
-11478
+8974
// aColumnOrBarPosition.Y
-1945
+5948
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-4429
+1476
// aColumnOrBarTransformation
-4429;0;11478;0;800;1945;0;0;1
+1476;0;8974;0;800;5948;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
// aColumnOrBarPosition.X
13600
@@ -149,14 +149,14 @@
2952
// aColumnOrBarTransformation
2952;0;13600;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
// aColumnOrBarPosition.X
-8974
+11478
// aColumnOrBarPosition.Y
-5948
+1945
// aColumnOrBarSize.Height
800
// aColumnOrBarSize.Width
-1476
+4429
// aColumnOrBarTransformation
-1476;0;8974;0;800;5948;0;0;1
+4429;0;11478;0;800;1945;0;0;1
diff --git a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
index 0326452589e0..dd34a4958480 100644
--- a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
+++ b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
@@ -7,17 +7,17 @@
1
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
-6196
+6292
// aColumnOrBarSize.Height
-1153
+1057
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;1153;6196;0;0;1
+1965;0;5055;0;1057;6292;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
// aColumnOrBarPosition.X
9967
@@ -29,17 +29,17 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;1945;5404;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
-6292
+6196
// aColumnOrBarSize.Height
-1057
+1153
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;1057;6292;0;0;1
+1965;0;14878;0;1153;6196;0;0;1
/// Series 1 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -47,17 +47,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
-4899
+5536
// aColumnOrBarSize.Height
-1297
+756
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;1297;4899;0;0;1
+1965;0;5055;0;756;5536;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
// aColumnOrBarPosition.X
9967
@@ -69,17 +69,17 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;1081;4323;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
-5536
+4899
// aColumnOrBarSize.Height
-756
+1297
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;756;5536;0;0;1
+1965;0;14878;0;1297;4899;0;0;1
/// Series 2 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -87,17 +87,17 @@
4
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
-4131
+5151
// aColumnOrBarSize.Height
-768
+385
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;768;4131;0;0;1
+1965;0;5055;0;385;5151;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
// aColumnOrBarPosition.X
9967
@@ -109,17 +109,17 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;1057;3266;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
-5151
+4131
// aColumnOrBarSize.Height
-385
+768
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;385;5151;0;0;1
+1965;0;14878;0;768;4131;0;0;1
/// Series 3 ColumnsOrBars
// nColumnOrBarCountInSeries
3
@@ -127,17 +127,17 @@
2
// static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
// aColumnOrBarPosition.X
-14878
+5055
// aColumnOrBarPosition.Y
-2326
+4550
// aColumnOrBarSize.Height
-1805
+601
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;14878;0;1805;2326;0;0;1
+1965;0;5055;0;601;4550;0;0;1
/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
// aColumnOrBarPosition.X
9967
@@ -149,14 +149,14 @@
1964
// aColumnOrBarTransformation
1964;0;9967;0;1203;2063;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
// aColumnOrBarPosition.X
-5055
+14878
// aColumnOrBarPosition.Y
-4550
+2326
// aColumnOrBarSize.Height
-601
+1805
// aColumnOrBarSize.Width
1965
// aColumnOrBarTransformation
-1965;0;5055;0;601;4550;0;0;1
+1965;0;14878;0;1805;2326;0;0;1
diff --git a/chart2/source/view/charttypes/BarChart.cxx b/chart2/source/view/charttypes/BarChart.cxx
index a06303a310b3..3709476daae0 100644
--- a/chart2/source/view/charttypes/BarChart.cxx
+++ b/chart2/source/view/charttypes/BarChart.cxx
@@ -620,12 +620,19 @@ void BarChart::createShapes()
bDrawConnectionLinesInited = true;
}
+ // Use another XShapes for background, so we can avoid needing to set the Z-order on all of them,
+ // which is expensive in bulk.
rtl::Reference<SvxShapeGroupAnyD> xSeriesGroupShape_Shapes(getSeriesGroupShape(pSeries.get(), xSeriesTarget));
- // Suspend setting rects dirty for the duration of this call
+ rtl::Reference<SvxShapeGroupAnyD> xSeriesBackgroundShape_Shapes(getSeriesGroupShape(pSeries.get(), xSeriesTarget));
aShapeSet.insert(xSeriesGroupShape_Shapes);
+ aShapeSet.insert(xSeriesBackgroundShape_Shapes);
+ // Suspend setting rects dirty for the duration of this call
E3dScene* pScene = dynamic_cast<E3dScene*>(xSeriesGroupShape_Shapes->GetSdrObject());
if (pScene)
pScene->SuspendReportingDirtyRects();
+ pScene = dynamic_cast<E3dScene*>(xSeriesBackgroundShape_Shapes->GetSdrObject());
+ if (pScene)
+ pScene->SuspendReportingDirtyRects();
//collect data point information (logic coordinates, style ):
double fUnscaledLogicX = pSeries->getXValue( nPointIndex );
@@ -863,7 +870,7 @@ void BarChart::createShapes()
if(!std::isnan(nPropVal))
xFillColor = static_cast<sal_Int32>(nPropVal);
}
- SdrPathObj* pShape = ShapeFactory::createArea2D( xSeriesGroupShape_Shapes, aPoly );
+ SdrPathObj* pShape = ShapeFactory::createArea2D( xSeriesGroupShape_Shapes, aPoly, /*bSetZOrderToZero*/false );
PropertyMapper::setPropertyNameMapForFilledSeriesProperties(pShape, xDataPointProperties, xFillColor);
//set name/classified ObjectID (CID)
diff --git a/chart2/source/view/inc/ShapeFactory.hxx b/chart2/source/view/inc/ShapeFactory.hxx
index e326b771b2e4..f198f074f519 100644
--- a/chart2/source/view/inc/ShapeFactory.hxx
+++ b/chart2/source/view/inc/ShapeFactory.hxx
@@ -157,7 +157,8 @@ public:
static SdrPathObj*
createArea2D( const rtl::Reference<SvxShapeGroupAnyD>& xTarget
- , const css::drawing::PolyPolygonShape3D& rPolyPolygon);
+ , const css::drawing::PolyPolygonShape3D& rPolyPolygon
+ , bool bSetZOrderToZero = true);
static rtl::Reference<SvxShapePolyPolygon>
createSymbol2D( const rtl::Reference<SvxShapeGroupAnyD>& xTarget
diff --git a/chart2/source/view/main/ShapeFactory.cxx b/chart2/source/view/main/ShapeFactory.cxx
index efc7f0d90787..7c3210cd1dc0 100644
--- a/chart2/source/view/main/ShapeFactory.cxx
+++ b/chart2/source/view/main/ShapeFactory.cxx
@@ -1081,18 +1081,21 @@ rtl::Reference<Svx3DExtrudeObject>
return xShape;
}
-
SdrPathObj*
ShapeFactory::createArea2D( const rtl::Reference<SvxShapeGroupAnyD>& xTarget
- , const drawing::PolyPolygonShape3D& rPolyPolygon )
+ , const drawing::PolyPolygonShape3D& rPolyPolygon
+ , bool bSetZOrderToZero )
{
if( !xTarget.is() )
return nullptr;
//create shape
SdrPathObj* pPath = new SdrPathObj(xTarget->GetSdrObject()->getSdrModelFromSdrObject(), OBJ_POLY);
- // insert at ZOrder 0, an area should always be behind other shapes
- xTarget->GetSdrObject()->GetSubList()->InsertObject(pPath, 0);
+ if (bSetZOrderToZero)
+ // insert at ZOrder 0, an area should always be behind other shapes
+ xTarget->GetSdrObject()->GetSubList()->InsertObject(pPath, 0);
+ else
+ xTarget->GetSdrObject()->GetSubList()->InsertObject(pPath);
//set properties
try
diff --git a/sw/qa/extras/layout/layout2.cxx b/sw/qa/extras/layout/layout2.cxx
index f14176251780..eea736f2bdef 100644
--- a/sw/qa/extras/layout/layout2.cxx
+++ b/sw/qa/extras/layout/layout2.cxx
@@ -657,6 +657,11 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter2, testTdf133005)
xmlDocUniquePtr pXmlDoc = dumpAndParse(dumper, *xMetaFile);
CPPUNIT_ASSERT(pXmlDoc);
+ {
+ SvFileStream aStream("/home/noel/libo/noel1.dump", StreamMode::WRITE | StreamMode::TRUNC);
+ dumper.dump(*xMetaFile, aStream);
+ aStream.Close();
+ }
sal_Int32 nXChartWall = getXPath(pXmlDoc,
"/metafile/push[1]/push[1]/push[1]/push[3]/push[1]/push[1]/"
"push[1]/push[1]/polyline[1]/point[2]",
@@ -664,7 +669,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter2, testTdf133005)
.toInt32();
sal_Int32 nXColumn = getXPath(pXmlDoc,
"/metafile/push[1]/push[1]/push[1]/push[3]/push[1]/push[1]/"
- "push[1]/push[42]/polypolygon/polygon/point[1]",
+ "push[1]/push[41]/polypolygon/polygon/point[1]",
"x")
.toInt32();