summaryrefslogtreecommitdiff
path: root/scaddins/source/pricing/pricing.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'scaddins/source/pricing/pricing.cxx')
-rw-r--r--scaddins/source/pricing/pricing.cxx51
1 files changed, 14 insertions, 37 deletions
diff --git a/scaddins/source/pricing/pricing.cxx b/scaddins/source/pricing/pricing.cxx
index 466c0e78fd44..3df3fe78a061 100644
--- a/scaddins/source/pricing/pricing.cxx
+++ b/scaddins/source/pricing/pricing.cxx
@@ -25,6 +25,7 @@
#include "pricing.hxx"
#include "black_scholes.hxx"
#include "pricing.hrc"
+#include "strings.hrc"
#include <cppuhelper/factory.hxx>
#include <cppuhelper/supportsservice.hxx>
@@ -32,7 +33,6 @@
#include <algorithm>
#include <rtl/math.hxx>
#include <rtl/ustrbuf.hxx>
-#include <tools/rcid.h>
#include <tools/resmgr.hxx>
using namespace ::com::sun::star;
@@ -43,11 +43,6 @@ using namespace sca::pricing;
#define MY_SERVICE "com.sun.star.sheet.addin.PricingFunctions"
#define MY_IMPLNAME "com.sun.star.sheet.addin.PricingFunctionsImpl"
-ScaResId::ScaResId( sal_uInt16 nId, ResMgr& rResMgr ) :
- ResId( nId, rResMgr )
-{
-}
-
#define UNIQUE false // function name does not exist in Calc
#define STDPAR false // all parameters are described
@@ -67,8 +62,8 @@ const ScaFuncDataBase pFuncDataArr[] =
ScaFuncData::ScaFuncData( const ScaFuncDataBase& rBaseData ) :
aIntName( OUString::createFromAscii( rBaseData.pIntName ) ),
- nUINameID( rBaseData.nUINameID ),
- nDescrID( rBaseData.nDescrID ),
+ pUINameID( rBaseData.pUINameID ),
+ pDescrID( rBaseData.pDescrID ),
nParamCount( rBaseData.nParamCount ),
eCat( rBaseData.eCat ),
bDouble( rBaseData.bDouble ),
@@ -132,7 +127,6 @@ SAL_DLLPUBLIC_EXPORT void * SAL_CALL pricing_component_getFactory(
// "normal" service implementation
ScaPricingAddIn::ScaPricingAddIn() :
pDefLocales( nullptr ),
- pResMgr( nullptr ),
pFuncDataList( nullptr )
{
}
@@ -140,7 +134,6 @@ ScaPricingAddIn::ScaPricingAddIn() :
ScaPricingAddIn::~ScaPricingAddIn()
{
delete pFuncDataList;
- delete pResMgr;
delete[] pDefLocales;
}
@@ -167,32 +160,13 @@ const lang::Locale& ScaPricingAddIn::GetLocale( sal_uInt32 nIndex )
return (nIndex < sizeof( pLang )) ? pDefLocales[ nIndex ] : aFuncLoc;
}
-ResMgr& ScaPricingAddIn::GetResMgr()
-{
- if( !pResMgr )
- {
- InitData(); // try to get resource manager
- if( !pResMgr )
- throw uno::RuntimeException();
- }
- return *pResMgr;
-}
-
void ScaPricingAddIn::InitData()
{
- delete pResMgr;
- pResMgr = ResMgr::CreateResMgr("pricing", LanguageTag( aFuncLoc) );
+ aResLocale = Translate::Create("sca", LanguageTag(aFuncLoc));
delete pFuncDataList;
- if(pResMgr)
- {
- pFuncDataList = new ScaFuncDataList;
- InitScaFuncDataList(*pFuncDataList);
- }
- else
- {
- pFuncDataList = nullptr;
- }
+ pFuncDataList = new ScaFuncDataList;
+ InitScaFuncDataList(*pFuncDataList);
if( pDefLocales )
{
@@ -201,10 +175,9 @@ void ScaPricingAddIn::InitData()
}
}
-OUString ScaPricingAddIn::GetFuncDescrStr( sal_uInt16 nResId, sal_uInt16 nStrIndex )
+OUString ScaPricingAddIn::GetFuncDescrStr(const char** pResId, sal_uInt16 nStrIndex)
{
- ResStringArray aArr(ScaResId(nResId, GetResMgr()));
- return aArr.GetString(nStrIndex - 1);
+ return ScaResId(pResId[nStrIndex - 1]);
}
OUString ScaPricingAddIn::getImplementationName_Static()
@@ -271,9 +244,9 @@ OUString SAL_CALL ScaPricingAddIn::getDisplayFunctionName( const OUString& aProg
auto fDataIt = std::find_if(pFuncDataList->begin(), pFuncDataList->end(),
FindScaFuncData( aProgrammaticName ) );
- if(fDataIt != pFuncDataList->end() )
+ if (fDataIt != pFuncDataList->end() )
{
- aRet = ScaResId(fDataIt->GetUINameID(), GetResMgr());
+ aRet = ScaResId(fDataIt->GetUINameID());
if( fDataIt->IsDouble() )
aRet += "_ADD";
}
@@ -583,5 +556,9 @@ double SAL_CALL ScaPricingAddIn::getOptProbInMoney( double spot, double vol,
RETURN_FINITE( fRet );
}
+OUString ScaPricingAddIn::ScaResId(const char* pResId)
+{
+ return Translate::get(pResId, aResLocale);
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */