diff options
author | Rafael Dominguez <venccsralph@gmail.com> | 2012-03-17 23:31:00 +0000 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2012-03-23 02:55:33 +0100 |
commit | f412f4bcedf78e38a5e762c583f754ce71cee135 (patch) | |
tree | ed011f9c3ae8dfa0b1ad0f29943fbf2b8a0a00ca /chart2 | |
parent | c57bb7b56be4eb9fc58c1de6652113d6ad15ba10 (diff) |
Create separate shape groups for each errorbar type.
Diffstat (limited to 'chart2')
-rw-r--r-- | chart2/source/view/charttypes/VSeriesPlotter.cxx | 7 | ||||
-rw-r--r-- | chart2/source/view/inc/VDataSeries.hxx | 3 | ||||
-rw-r--r-- | chart2/source/view/main/VDataSeries.cxx | 6 |
3 files changed, 11 insertions, 5 deletions
diff --git a/chart2/source/view/charttypes/VSeriesPlotter.cxx b/chart2/source/view/charttypes/VSeriesPlotter.cxx index ce4d71470c67..57d0d08ca026 100644 --- a/chart2/source/view/charttypes/VSeriesPlotter.cxx +++ b/chart2/source/view/charttypes/VSeriesPlotter.cxx @@ -368,12 +368,15 @@ uno::Reference< drawing::XShapes > VSeriesPlotter::getErrorBarsGroupShape( VData , const uno::Reference< drawing::XShapes >& xTarget , bool bYError ) { - uno::Reference< drawing::XShapes > xShapes( rDataSeries.m_xErrorBarsGroupShape ); + uno::Reference< ::com::sun::star::drawing::XShapes > &rShapeGroup = + bYError ? rDataSeries.m_xErrorYBarsGroupShape : rDataSeries.m_xErrorXBarsGroupShape; + + uno::Reference< drawing::XShapes > xShapes( rShapeGroup ); if(!xShapes.is()) { //create a group shape for this series and add to logic target: xShapes = this->createGroupShape( xTarget,rDataSeries.getErrorBarsCID(bYError) ); - rDataSeries.m_xErrorBarsGroupShape = xShapes; + rShapeGroup = xShapes; } return xShapes; diff --git a/chart2/source/view/inc/VDataSeries.hxx b/chart2/source/view/inc/VDataSeries.hxx index 8f8aeb0d3e6d..64679cd96425 100644 --- a/chart2/source/view/inc/VDataSeries.hxx +++ b/chart2/source/view/inc/VDataSeries.hxx @@ -185,7 +185,8 @@ private: //methods public: //member ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > m_xGroupShape; ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > m_xLabelsGroupShape; - ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > m_xErrorBarsGroupShape; + ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > m_xErrorXBarsGroupShape; + ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > m_xErrorYBarsGroupShape; //the following group shapes will be created as children of m_xGroupShape on demand //they can be used to assure that some parts of a series shape are always in front of others (e.g. symbols in front of lines) diff --git a/chart2/source/view/main/VDataSeries.cxx b/chart2/source/view/main/VDataSeries.cxx index de9e1d21c22e..5cad9ca7d8dc 100644 --- a/chart2/source/view/main/VDataSeries.cxx +++ b/chart2/source/view/main/VDataSeries.cxx @@ -158,7 +158,8 @@ VDataSeries::VDataSeries( const uno::Reference< XDataSeries >& xDataSeries ) , m_fLogicZPos(0.0) , m_xGroupShape(NULL) , m_xLabelsGroupShape(NULL) - , m_xErrorBarsGroupShape(NULL) + , m_xErrorXBarsGroupShape(NULL) + , m_xErrorYBarsGroupShape(NULL) , m_xFrontSubGroupShape(NULL) , m_xBackSubGroupShape(NULL) , m_xDataSeries(xDataSeries) @@ -333,7 +334,8 @@ void VDataSeries::releaseShapes() { m_xGroupShape.set(0); m_xLabelsGroupShape.set(0); - m_xErrorBarsGroupShape.set(0); + m_xErrorXBarsGroupShape.set(0); + m_xErrorYBarsGroupShape.set(0); m_xFrontSubGroupShape.set(0); m_xBackSubGroupShape.set(0); |