From 5c4de21a30e1ae06345a735c321bc66db1e004f6 Mon Sep 17 00:00:00 2001 From: Ingrid Halama Date: Tue, 6 Apr 2010 18:41:51 +0200 Subject: chartpositioning: #i100778# do only calculate inner rectangle if necessary --- .../controller/chartapiwrapper/Chart2ModelContact.cxx | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx b/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx index 69e11198095a..ffc1e95ca796 100644 --- a/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx +++ b/chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx @@ -234,10 +234,17 @@ awt::Rectangle Chart2ModelContact::GetDiagramRectangleIncludingAxes() const awt::Rectangle Chart2ModelContact::GetDiagramRectangleExcludingAxes() const { - awt::Rectangle aRect; - ExplicitValueProvider* pProvider( getExplicitValueProvider() ); - if( pProvider ) - aRect = pProvider->getDiagramRectangleExcludingAxes(); + awt::Rectangle aRect(0,0,0,0); + uno::Reference< XDiagram > xDiagram( ChartModelHelper::findDiagram( m_xChartModel ) ); + + if( DiagramPositioningMode_EXCLUDING == DiagramHelper::getDiagramPositioningMode( xDiagram ) ) + aRect = DiagramHelper::getDiagramRectangleFromModel(m_xChartModel); + else + { + ExplicitValueProvider* pProvider( getExplicitValueProvider() ); + if( pProvider ) + aRect = pProvider->getDiagramRectangleExcludingAxes(); + } return aRect; } -- cgit