diff options
-rw-r--r-- | chart2/inc/ChartView.hxx | 2 | ||||
-rw-r--r-- | chart2/source/view/main/ChartView.cxx | 20 |
2 files changed, 15 insertions, 7 deletions
diff --git a/chart2/inc/ChartView.hxx b/chart2/inc/ChartView.hxx index 156bf8a93e87..ab552f9fa250 100644 --- a/chart2/inc/ChartView.hxx +++ b/chart2/inc/ChartView.hxx @@ -214,6 +214,8 @@ private: //methods void impl_updateView(); + void render(); + ::com::sun::star::awt::Rectangle impl_createDiagramAndContent( SeriesPlotterContainer& rSeriesPlotterContainer , const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes>& xDiagramPlusAxes_Shapes , const ::com::sun::star::awt::Point& rAvailablePos diff --git a/chart2/source/view/main/ChartView.cxx b/chart2/source/view/main/ChartView.cxx index a2355df294cc..f9b7d70401a7 100644 --- a/chart2/source/view/main/ChartView.cxx +++ b/chart2/source/view/main/ChartView.cxx @@ -2615,13 +2615,7 @@ void ChartView::createShapes() //cleanup: remove all empty group shapes to avoid grey border lines: lcl_removeEmptyGroupShapes( mxRootShape ); - OpenGLWindow* pWindow = mrChartModel.getOpenGLWindow(); - bool bRender = pShapeFactory->preRender(pWindow); - if(bRender) - { - pShapeFactory->render(mxRootShape); - pShapeFactory->postRender(pWindow); - } + render(); if(maTimeBased.bTimeBased && maTimeBased.nFrame % 60 == 0) { @@ -2676,6 +2670,18 @@ void ChartView::createShapes() } } +void ChartView::render() +{ + AbstractShapeFactory* pShapeFactory = AbstractShapeFactory::getOrCreateShapeFactory(m_xShapeFactory); + OpenGLWindow* pWindow = mrChartModel.getOpenGLWindow(); + bool bRender = pShapeFactory->preRender(pWindow); + if(bRender) + { + pShapeFactory->render(mxRootShape); + pShapeFactory->postRender(pWindow); + } +} + // util::XEventListener (base of XCloseListener) void SAL_CALL ChartView::disposing( const lang::EventObject& /* rSource */ ) throw(uno::RuntimeException, std::exception) |