diff options
author | Tünde Tóth <tundeth@gmail.com> | 2019-11-27 10:24:50 +0100 |
---|---|---|
committer | Balazs Varga <balazs.varga991@gmail.com> | 2020-04-28 08:02:59 +0200 |
commit | cbe6c4929c9da28ce5553ce31782027d5111ed16 (patch) | |
tree | eecf79a698de01d502f9ad4d23698a775bda83d5 /oox | |
parent | f94caa1ad48a0aad061cf3aa41ba45c5348ecfe4 (diff) |
tdf#127811 tdf#127813 Introduce compatibility key for the data series
order of filled net and normal area charts.
The data series of filled net and normal area charts are drawn in
reversed order in LibreOffice but not in Microsoft Office.
Default value is true to keep current behavior.
Change-Id: I07adac814597b756878d74610d028f07327f7214
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/83897
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga991@gmail.com>
Diffstat (limited to 'oox')
-rw-r--r-- | oox/inc/drawingml/chart/typegroupconverter.hxx | 1 | ||||
-rw-r--r-- | oox/source/drawingml/chart/typegroupconverter.cxx | 34 |
2 files changed, 15 insertions, 20 deletions
diff --git a/oox/inc/drawingml/chart/typegroupconverter.hxx b/oox/inc/drawingml/chart/typegroupconverter.hxx index 65ac44313936..c57c7eaa8fd0 100644 --- a/oox/inc/drawingml/chart/typegroupconverter.hxx +++ b/oox/inc/drawingml/chart/typegroupconverter.hxx @@ -86,7 +86,6 @@ struct TypeGroupInfo bool mbCategoryAxis; /// True = X axis contains categories. bool mbSwappedAxesSet; /// True = X axis and Y axis are swapped. bool mbSupportsStacking; /// True = data points can be stacked on each other. - bool mbReverseSeries; /// True = insert unstacked series in reverse order. bool mbPictureOptions; /// True = bitmaps support options from c:pictureOptions. }; diff --git a/oox/source/drawingml/chart/typegroupconverter.cxx b/oox/source/drawingml/chart/typegroupconverter.cxx index 4667afdeae02..621d768caa26 100644 --- a/oox/source/drawingml/chart/typegroupconverter.cxx +++ b/oox/source/drawingml/chart/typegroupconverter.cxx @@ -69,24 +69,24 @@ namespace csscd = ::com::sun::star::chart::DataLabelPlacement; static const TypeGroupInfo spTypeInfos[] = { - // type-id type-category service varied-point-color default label pos polar area2d 1stvis xcateg swap stack revers picopt - { TYPEID_BAR, TYPECATEGORY_BAR, SERVICE_CHART2_COLUMN, VARPOINTMODE_SINGLE, csscd::OUTSIDE, false, true, false, true, false, true, false, true }, - { TYPEID_HORBAR, TYPECATEGORY_BAR, SERVICE_CHART2_COLUMN, VARPOINTMODE_SINGLE, csscd::OUTSIDE, false, true, false, true, true, true, false, true }, - { TYPEID_LINE, TYPECATEGORY_LINE, SERVICE_CHART2_LINE, VARPOINTMODE_SINGLE, csscd::RIGHT, false, false, false, true, false, true, false, false }, - { TYPEID_AREA, TYPECATEGORY_LINE, SERVICE_CHART2_AREA, VARPOINTMODE_NONE, csscd::CENTER, false, true, false, true, false, true, true, false }, - { TYPEID_STOCK, TYPECATEGORY_LINE, SERVICE_CHART2_CANDLE, VARPOINTMODE_NONE, csscd::RIGHT, false, false, false, true, false, true, false, false }, - { TYPEID_RADARLINE, TYPECATEGORY_RADAR, SERVICE_CHART2_NET, VARPOINTMODE_SINGLE, csscd::OUTSIDE, true, false, false, true, false, false, false, false }, - { TYPEID_RADARAREA, TYPECATEGORY_RADAR, SERVICE_CHART2_FILLEDNET, VARPOINTMODE_NONE, csscd::OUTSIDE, true, true, false, true, false, false, true, false }, - { TYPEID_PIE, TYPECATEGORY_PIE, SERVICE_CHART2_PIE, VARPOINTMODE_MULTI, csscd::AVOID_OVERLAP, true, true, true, true, false, false, false, false }, - { TYPEID_DOUGHNUT, TYPECATEGORY_PIE, SERVICE_CHART2_PIE, VARPOINTMODE_MULTI, csscd::AVOID_OVERLAP, true, true, false, true, false, false, false, false }, - { TYPEID_OFPIE, TYPECATEGORY_PIE, SERVICE_CHART2_PIE, VARPOINTMODE_MULTI, csscd::AVOID_OVERLAP, true, true, true, true, false, false, false, false }, - { TYPEID_SCATTER, TYPECATEGORY_SCATTER, SERVICE_CHART2_SCATTER, VARPOINTMODE_SINGLE, csscd::RIGHT, false, false, false, false, false, false, false, false }, - { TYPEID_BUBBLE, TYPECATEGORY_SCATTER, SERVICE_CHART2_BUBBLE, VARPOINTMODE_SINGLE, csscd::RIGHT, false, true, false, false, false, false, false, false }, - { TYPEID_SURFACE, TYPECATEGORY_SURFACE, SERVICE_CHART2_SURFACE, VARPOINTMODE_NONE, csscd::RIGHT, false, true, false, true, false, false, false, false } + // type-id type-category service varied-point-color default label pos polar area2d 1stvis xcateg swap stack picopt + { TYPEID_BAR, TYPECATEGORY_BAR, SERVICE_CHART2_COLUMN, VARPOINTMODE_SINGLE, csscd::OUTSIDE, false, true, false, true, false, true, true }, + { TYPEID_HORBAR, TYPECATEGORY_BAR, SERVICE_CHART2_COLUMN, VARPOINTMODE_SINGLE, csscd::OUTSIDE, false, true, false, true, true, true, true }, + { TYPEID_LINE, TYPECATEGORY_LINE, SERVICE_CHART2_LINE, VARPOINTMODE_SINGLE, csscd::RIGHT, false, false, false, true, false, true, false }, + { TYPEID_AREA, TYPECATEGORY_LINE, SERVICE_CHART2_AREA, VARPOINTMODE_NONE, csscd::CENTER, false, true, false, true, false, true, false }, + { TYPEID_STOCK, TYPECATEGORY_LINE, SERVICE_CHART2_CANDLE, VARPOINTMODE_NONE, csscd::RIGHT, false, false, false, true, false, true, false }, + { TYPEID_RADARLINE, TYPECATEGORY_RADAR, SERVICE_CHART2_NET, VARPOINTMODE_SINGLE, csscd::OUTSIDE, true, false, false, true, false, false, false }, + { TYPEID_RADARAREA, TYPECATEGORY_RADAR, SERVICE_CHART2_FILLEDNET, VARPOINTMODE_NONE, csscd::OUTSIDE, true, true, false, true, false, false, false }, + { TYPEID_PIE, TYPECATEGORY_PIE, SERVICE_CHART2_PIE, VARPOINTMODE_MULTI, csscd::AVOID_OVERLAP, true, true, true, true, false, false, false }, + { TYPEID_DOUGHNUT, TYPECATEGORY_PIE, SERVICE_CHART2_PIE, VARPOINTMODE_MULTI, csscd::AVOID_OVERLAP, true, true, false, true, false, false, false }, + { TYPEID_OFPIE, TYPECATEGORY_PIE, SERVICE_CHART2_PIE, VARPOINTMODE_MULTI, csscd::AVOID_OVERLAP, true, true, true, true, false, false, false }, + { TYPEID_SCATTER, TYPECATEGORY_SCATTER, SERVICE_CHART2_SCATTER, VARPOINTMODE_SINGLE, csscd::RIGHT, false, false, false, false, false, false, false }, + { TYPEID_BUBBLE, TYPECATEGORY_SCATTER, SERVICE_CHART2_BUBBLE, VARPOINTMODE_SINGLE, csscd::RIGHT, false, true, false, false, false, false, false }, + { TYPEID_SURFACE, TYPECATEGORY_SURFACE, SERVICE_CHART2_SURFACE, VARPOINTMODE_NONE, csscd::RIGHT, false, true, false, true, false, false, false } }; static const TypeGroupInfo saUnknownTypeInfo = - { TYPEID_UNKNOWN, TYPECATEGORY_BAR, SERVICE_CHART2_COLUMN, VARPOINTMODE_SINGLE, csscd::OUTSIDE, false, true, false, true, false, true, false, true }; + { TYPEID_UNKNOWN, TYPECATEGORY_BAR, SERVICE_CHART2_COLUMN, VARPOINTMODE_SINGLE, csscd::OUTSIDE, false, true, false, true, false, true, true }; const TypeGroupInfo& lclGetTypeInfoFromTypeId( TypeId eTypeId ) { @@ -348,10 +348,6 @@ void TypeGroupConverter::convertFromModel( const Reference< XDiagram >& rxDiagra for (auto const& elemSeries : mrModel.maSeries) aSeries.push_back( std::make_shared<SeriesConverter>(*this, *elemSeries) ); - // reverse series order for some unstacked 2D chart types - if( maTypeInfo.mbReverseSeries && !mb3dChart && !isStacked() && !isPercent() ) - ::std::reverse( aSeries.begin(), aSeries.end() ); - // decide whether to use varying colors for each data point bool bVaryColorsByPoint = bSupportsVaryColorsByPoint && mrModel.mbVaryColors; switch( maTypeInfo.meVarPointMode ) |