ooo-build r15010 - in trunk: . patches/dev300



Author: kyoshida
Date: Wed Jan  7 06:29:01 2009
New Revision: 15010
URL: http://svn.gnome.org/viewvc/ooo-build?rev=15010&view=rev

Log:
2009-01-07  Kohei Yoshida  <kyoshida novell com>

	* patches/dev300/chart-axis-multi-chart-types-chart2.diff: handle 
	unknown property exception locally to prevent them from going wild!  
	This was the reason why x-y charts were broken. (n#461263)
	
	* patches/dev300/chart-odf-always-calc-a1.diff: a couple of more places
	to hard-code the Calc A1 address convention, to make xls chart import 
	and export to work. (n#461263, n#463305)


Modified:
   trunk/ChangeLog
   trunk/patches/dev300/chart-axis-multi-chart-types-chart2.diff
   trunk/patches/dev300/chart-odf-always-calc-a1.diff

Modified: trunk/patches/dev300/chart-axis-multi-chart-types-chart2.diff
==============================================================================
--- trunk/patches/dev300/chart-axis-multi-chart-types-chart2.diff	(original)
+++ trunk/patches/dev300/chart-axis-multi-chart-types-chart2.diff	Wed Jan  7 06:29:01 2009
@@ -69,7 +69,7 @@
  
  void lcl_AddDefaultsToMap(
 diff --git chart2/source/view/axes/ScaleAutomatism.cxx chart2/source/view/axes/ScaleAutomatism.cxx
-index 711a911..f750acc 100644
+index 3e412c4..c151ce0 100644
 --- chart2/source/view/axes/ScaleAutomatism.cxx
 +++ chart2/source/view/axes/ScaleAutomatism.cxx
 @@ -132,7 +132,15 @@ void ScaleAutomatism::calculateExplicitScaleAndIncrement(
@@ -105,22 +105,30 @@
              rExplicitScale.Maximum = 10.0;  //@todo get Maximum from scaling or from plotter????
          else
 diff --git chart2/source/view/charttypes/AreaChart.cxx chart2/source/view/charttypes/AreaChart.cxx
-index 84710f0..1f036c1 100644
+index 1ed2c6d..0ab9969 100644
 --- chart2/source/view/charttypes/AreaChart.cxx
 +++ chart2/source/view/charttypes/AreaChart.cxx
-@@ -598,6 +598,11 @@ struct FormerPoint
+@@ -600,6 +600,19 @@ struct FormerPoint
  
  void AreaChart::createShapes()
  {
 +    sal_Bool bPercent = sal_False;
 +    uno::Reference< beans::XPropertySet > xPropSet(m_xChartTypeModel, uno::UNO_QUERY);
 +    if (xPropSet.is())
-+        xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++    {
++        try
++        {
++            xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++        }
++        catch (const beans::UnknownPropertyException&)
++        {
++        }
++    }
 +
      if( m_aZSlots.begin() == m_aZSlots.end() ) //no series
          return;
  
-@@ -734,9 +739,30 @@ void AreaChart::createShapes()
+@@ -753,9 +766,30 @@ void AreaChart::createShapes()
                      if( m_nDimension==3 && m_bArea && pSeriesList->size()!=1 )
                          fLogicY = fabs( fLogicY );
  
@@ -154,33 +162,49 @@
  
                      if(    ::rtl::math::isNan(fLogicX) || ::rtl::math::isInf(fLogicX)
 diff --git chart2/source/view/charttypes/BarChart.cxx chart2/source/view/charttypes/BarChart.cxx
-index 7def5fa..49bb776 100644
+index 88d2461..feadf90 100644
 --- chart2/source/view/charttypes/BarChart.cxx
 +++ chart2/source/view/charttypes/BarChart.cxx
-@@ -454,6 +454,11 @@ void BarChart::adaptOverlapAndGapwidthForGroupBarsPerAxis()
+@@ -456,6 +456,19 @@ void BarChart::adaptOverlapAndGapwidthForGroupBarsPerAxis()
  
  void BarChart::createShapes()
  {
 +    uno::Reference< beans::XPropertySet > xPropSet(m_xChartTypeModel, uno::UNO_QUERY);
 +    sal_Bool bPercent = sal_False;
 +    if (xPropSet.is())
-+        xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++    {
++        try
++        {
++            xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++        }
++        catch (const beans::UnknownPropertyException&)
++        {
++        }
++    }
 +
      if( m_aZSlots.begin() == m_aZSlots.end() ) //no series
          return;
  
 diff --git chart2/source/view/charttypes/VSeriesPlotter.cxx chart2/source/view/charttypes/VSeriesPlotter.cxx
-index c0cedb1..1e651ca 100644
+index 159866c..fe790b9 100644
 --- chart2/source/view/charttypes/VSeriesPlotter.cxx
 +++ chart2/source/view/charttypes/VSeriesPlotter.cxx
-@@ -1154,6 +1154,15 @@ double VSeriesPlotter::getMaximumX()
+@@ -1154,6 +1154,23 @@ double VSeriesPlotter::getMaximumX()
  
  double VSeriesPlotter::getMinimumYInRange( double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex )
  {
 +    sal_Bool bPercent = sal_False;
 +    uno::Reference< beans::XPropertySet > xPropSet(m_xChartTypeModel, uno::UNO_QUERY);
 +    if (xPropSet.is())
-+        xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++    {
++        try
++        {
++            xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++        }
++        catch (const beans::UnknownPropertyException&)
++        {
++        }
++    }
 +
 +    if (bPercent)
 +        // This plotter is percent-stacked.
@@ -189,14 +213,22 @@
      if( !m_bCategoryXAxis )
      {
          double fMinY, fMaxY;
-@@ -1188,6 +1197,15 @@ double VSeriesPlotter::getMinimumYInRange( double fMinimumX, double fMaximumX, s
+@@ -1188,6 +1205,23 @@ double VSeriesPlotter::getMinimumYInRange( double fMinimumX, double fMaximumX, s
  
  double VSeriesPlotter::getMaximumYInRange( double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex )
  {
 +    sal_Bool bPercent = sal_False;
 +    uno::Reference< beans::XPropertySet > xPropSet(m_xChartTypeModel, uno::UNO_QUERY);
 +    if (xPropSet.is())
-+        xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++    {
++        try
++        {
++            xPropSet->getPropertyValue(C2U("Percent")) >>= bPercent;
++        }
++        catch (const beans::UnknownPropertyException&)
++        {
++        }
++    }
 +
 +    if (bPercent)
 +        // This plotter is percent-stacked.
@@ -206,10 +238,10 @@
      {
          double fMinY, fMaxY;
 diff --git chart2/source/view/main/ChartView.cxx chart2/source/view/main/ChartView.cxx
-index 63075dc..189cc7d 100644
+index 0433596..1a74dbe 100644
 --- chart2/source/view/main/ChartView.cxx
 +++ chart2/source/view/main/ChartView.cxx
-@@ -1448,7 +1448,15 @@ sal_Int32 ExplicitValueProvider::getExplicitNumberFormatKeyForAxis(
+@@ -1723,7 +1723,15 @@ sal_Int32 ExplicitValueProvider::getExplicitNumberFormatKeyForAxis(
                      if( nDimensionIndex == 0 )
                          aRoleToMatch = C2U("values-x");
                      Sequence< Reference< XChartType > > aChartTypes( xCTCnt->getChartTypes());

Modified: trunk/patches/dev300/chart-odf-always-calc-a1.diff
==============================================================================
--- trunk/patches/dev300/chart-odf-always-calc-a1.diff	(original)
+++ trunk/patches/dev300/chart-odf-always-calc-a1.diff	Wed Jan  7 06:29:01 2009
@@ -410,7 +410,7 @@
  	rString = sRangeListStr;
  }
 diff --git sc/source/filter/excel/xechart.cxx sc/source/filter/excel/xechart.cxx
-index d986b48..7ca9458 100644
+index d986b48..1ddc45e 100644
 --- sc/source/filter/excel/xechart.cxx
 +++ sc/source/filter/excel/xechart.cxx
 @@ -679,7 +679,8 @@ sal_uInt16 XclExpChSourceLink::ConvertDataSequence( Reference< XDataSequence > x
@@ -419,12 +419,12 @@
          ScRangeList aScRanges;
 -        if( ScRangeStringConverter::GetRangeListFromString( aScRanges, aRangeRepr, GetDocPtr(), ';' ) )
 +        ScDocument* pDoc = GetDocPtr();
-+        if( ScRangeStringConverter::GetRangeListFromString( aScRanges, aRangeRepr, pDoc, pDoc->GetAddressConvention(), ';' ) )
++        if( ScRangeStringConverter::GetRangeListFromString( aScRanges, aRangeRepr, pDoc, ScAddress::CONV_OOO, ';' ) )
          {
              // split 3-dimensional ranges into single sheets
              ScRangeList aNewScRanges;
 diff --git sc/source/filter/excel/xichart.cxx sc/source/filter/excel/xichart.cxx
-index 473d1b0..e7d60d3 100644
+index 473d1b0..255c7e7 100644
 --- sc/source/filter/excel/xichart.cxx
 +++ sc/source/filter/excel/xichart.cxx
 @@ -695,7 +695,8 @@ Reference< XDataSequence > XclImpChSourceLink::CreateDataSequence( const OUStrin
@@ -433,7 +433,7 @@
          OUString aRangeRep;
 -        ScRangeStringConverter::GetStringFromRangeList( aRangeRep, &maScRanges, GetDocPtr(), ';' );
 +        ScDocument* pDoc = GetDocPtr();
-+        ScRangeStringConverter::GetStringFromRangeList( aRangeRep, &maScRanges, pDoc, pDoc->GetAddressConvention(), ';' );
++        ScRangeStringConverter::GetStringFromRangeList( aRangeRep, &maScRanges, pDoc, ScAddress::CONV_OOO, ';' );
  
          // create the data sequence
          try
@@ -891,7 +891,7 @@
  			}
  		}
 diff --git sc/source/ui/unoobj/chart2uno.cxx sc/source/ui/unoobj/chart2uno.cxx
-index 2ab864a..f375b9b 100644
+index 763cc1a..534cdd5 100644
 --- sc/source/ui/unoobj/chart2uno.cxx
 +++ sc/source/ui/unoobj/chart2uno.cxx
 @@ -1008,7 +1008,7 @@ uno::Reference< chart2::data::XDataSequence > SAL_CALL
@@ -899,7 +899,7 @@
  
  	ScRangeListRef aRangeList = new ScRangeList();
 -    if (ScRangeStringConverter::GetRangeListFromString( *aRangeList, aRangeRepresentation, m_pDocument, ';' ))
-+    if (ScRangeStringConverter::GetRangeListFromString( *aRangeList, aRangeRepresentation, m_pDocument, m_pDocument->GetAddressConvention(), ';' ))
++    if (ScRangeStringConverter::GetRangeListFromString( *aRangeList, aRangeRepresentation, m_pDocument, ScAddress::CONV_OOO, ';' ))
          xResult.set(new ScChart2DataSequence(m_pDocument, this, aRangeList));
  
      return xResult;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]