summaryrefslogtreecommitdiff
path: root/scaddins/source/analysis/analysis.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'scaddins/source/analysis/analysis.cxx')
-rw-r--r--scaddins/source/analysis/analysis.cxx36
1 files changed, 24 insertions, 12 deletions
diff --git a/scaddins/source/analysis/analysis.cxx b/scaddins/source/analysis/analysis.cxx
index fe4a3f1c6fac..9c78e65abdc7 100644
--- a/scaddins/source/analysis/analysis.cxx
+++ b/scaddins/source/analysis/analysis.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: analysis.cxx,v $
*
- * $Revision: 1.23 $
+ * $Revision: 1.24 $
*
- * last change: $Author: gt $ $Date: 2001-07-18 06:44:16 $
+ * last change: $Author: gt $ $Date: 2001-07-18 09:16:23 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -1195,15 +1195,21 @@ STRING SAL_CALL AnalysisAddIn::getImlog2( const STRING& aNum ) THROWDEF_RTE_IAE
}
-STRING SAL_CALL AnalysisAddIn::getImproduct( const STRING& aNum1, const SEQ( uno::Any )& aNL ) THROWDEF_RTE_IAE
+STRING SAL_CALL AnalysisAddIn::getImproduct( const SEQSEQ( STRING )& aNum1, const SEQ( uno::Any )& aNL ) THROWDEF_RTE_IAE
{
- Complex z( aNum1 );
+ ComplexList z_list;
+
+ z_list.Append( aNum1, AH_IgnoreEmpty );
+ z_list.Append( aNL, AH_IgnoreEmpty );
- ComplexList aNumList;
+ const Complex* p = z_list.First();
- aNumList.Append( aNL );
+ if( !p )
+ return Complex( 0 ).GetString();
- for( const Complex* p = aNumList.First(); p ; p = aNumList.Next() )
+ Complex z( *p );
+
+ for( p = z_list.Next() ; p ; p = z_list.Next() )
z.Mult( *p );
return z.GetString();
@@ -1236,15 +1242,21 @@ STRING SAL_CALL AnalysisAddIn::getImsub( const STRING& aNum1, const STRING& aNum
}
-STRING SAL_CALL AnalysisAddIn::getImsum( const STRING& aNum1, const SEQ( CSS::uno::Any )& aFollowingPars ) THROWDEF_RTE_IAE
+STRING SAL_CALL AnalysisAddIn::getImsum( const SEQSEQ( STRING )& aNum1, const SEQ( CSS::uno::Any )& aFollowingPars ) THROWDEF_RTE_IAE
{
- Complex z( aNum1 );
-
ComplexList z_list;
- z_list.Append( aFollowingPars );
+ z_list.Append( aNum1, AH_IgnoreEmpty );
+ z_list.Append( aFollowingPars, AH_IgnoreEmpty );
+
+ const Complex* p = z_list.First();
+
+ if( !p )
+ return Complex( 0 ).GetString();
+
+ Complex z( *p );
- for( const Complex* p = z_list.First() ; p ; p = z_list.Next() )
+ for( p = z_list.Next() ; p ; p = z_list.Next() )
z.Add( *p );
return z.GetString();