summaryrefslogtreecommitdiff
path: root/scaddins/source/pricing
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2021-07-19 13:18:49 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-08-05 09:39:11 +0200
commit14cfff500e93f0d6cbf8412065feea85c01ea81d (patch)
tree76e3fb8fbf2b0d8a12c8406d8cf994ea6a37aaff /scaddins/source/pricing
parentd924ce30e0ca260682bd2aed192b8b1b2ca3e7c0 (diff)
Pass context and resource string down to boost::locale separately
because this is often on a hot path, and we can avoid the splitting and joining of strings like this. Change-Id: Ia36047209368ca53431178c2e8723a18cfe8260a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119220 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'scaddins/source/pricing')
-rw-r--r--scaddins/source/pricing/pricing.cxx4
-rw-r--r--scaddins/source/pricing/pricing.hxx17
2 files changed, 11 insertions, 10 deletions
diff --git a/scaddins/source/pricing/pricing.cxx b/scaddins/source/pricing/pricing.cxx
index cc7c713fc7f0..83cacff87fc8 100644
--- a/scaddins/source/pricing/pricing.cxx
+++ b/scaddins/source/pricing/pricing.cxx
@@ -134,7 +134,7 @@ void ScaPricingAddIn::InitData()
pDefLocales.reset();
}
-OUString ScaPricingAddIn::GetFuncDescrStr(const char** pResId, sal_uInt16 nStrIndex)
+OUString ScaPricingAddIn::GetFuncDescrStr(const TranslateId* pResId, sal_uInt16 nStrIndex)
{
return ScaResId(pResId[nStrIndex - 1]);
}
@@ -500,7 +500,7 @@ double SAL_CALL ScaPricingAddIn::getOptProbInMoney( double spot, double vol,
RETURN_FINITE( fRet );
}
-OUString ScaPricingAddIn::ScaResId(std::string_view aResId)
+OUString ScaPricingAddIn::ScaResId(TranslateId aResId)
{
return Translate::get(aResId, aResLocale);
}
diff --git a/scaddins/source/pricing/pricing.hxx b/scaddins/source/pricing/pricing.hxx
index 42f23dcc81a6..ee362a3b3df3 100644
--- a/scaddins/source/pricing/pricing.hxx
+++ b/scaddins/source/pricing/pricing.hxx
@@ -35,6 +35,7 @@
#include <com/sun/star/sheet/XCompatibilityNames.hpp>
#include <com/sun/star/sheet/addin/XPricingFunctions.hpp>
#include <cppuhelper/implbase.hxx>
+#include <unotools/resmgr.hxx>
namespace com::sun::star::lang { class XMultiServiceFactory; }
@@ -56,8 +57,8 @@ enum class ScaCategory
struct ScaFuncDataBase
{
const char* pIntName; // internal name (get***)
- const char* pUINameID; // resource ID to UI name
- const char** pDescrID; // resource ID to description, parameter names and ~ description
+ TranslateId pUINameID; // resource ID to UI name
+ const TranslateId* pDescrID; // resource ID to description, parameter names and ~ description
// pCompName was originally meant to be able to load Excel documents that for
// some time were stored with localized function names.
// This is not relevant to this add-in, so we only supply the same
@@ -74,8 +75,8 @@ class ScaFuncData final
{
private:
OUString aIntName; // internal name (get***)
- const char* pUINameID; // resource ID to UI name
- const char** pDescrID; // leads also to parameter descriptions!
+ TranslateId pUINameID; // resource ID to UI name
+ const TranslateId* pDescrID; // leads also to parameter descriptions!
sal_uInt16 nParamCount; // num of parameters
std::vector<OUString> aCompList; // list of all valid names
ScaCategory eCat; // function category
@@ -85,8 +86,8 @@ private:
public:
ScaFuncData(const ScaFuncDataBase& rBaseData);
- const char* GetUINameID() const { return pUINameID; }
- const char** GetDescrID() const { return pDescrID; }
+ const TranslateId& GetUINameID() const { return pUINameID; }
+ const TranslateId* GetDescrID() const { return pDescrID; }
ScaCategory GetCategory() const { return eCat; }
bool IsDouble() const { return bDouble; }
@@ -134,13 +135,13 @@ private:
void InitData();
/// @throws css::uno::RuntimeException
- OUString GetFuncDescrStr(const char** pResId, sal_uInt16 nStrIndex);
+ OUString GetFuncDescrStr(const TranslateId* pResId, sal_uInt16 nStrIndex);
public:
ScaPricingAddIn();
virtual ~ScaPricingAddIn() override;
- OUString ScaResId(std::string_view aResId);
+ OUString ScaResId(TranslateId aResId);
// XAddIn
virtual OUString SAL_CALL getProgrammaticFuntionName( const OUString& aDisplayName ) override;