summaryrefslogtreecommitdiff
path: root/svtools
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 /svtools
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 'svtools')
-rw-r--r--svtools/inc/borderline.hrc4
-rw-r--r--svtools/inc/errtxt.hrc14
-rw-r--r--svtools/inc/langtab.hrc4
-rw-r--r--svtools/source/dialogs/insdlg.cxx4
-rw-r--r--svtools/source/dialogs/prnsetup.cxx2
-rw-r--r--svtools/source/misc/ehdl.cxx2
-rw-r--r--svtools/source/misc/imagemgr.cxx40
-rw-r--r--svtools/source/misc/svtresid.cxx3
8 files changed, 36 insertions, 37 deletions
diff --git a/svtools/inc/borderline.hrc b/svtools/inc/borderline.hrc
index 05bb3c78f729..84ab7cc98fda 100644
--- a/svtools/inc/borderline.hrc
+++ b/svtools/inc/borderline.hrc
@@ -10,9 +10,9 @@
#include <editeng/borderline.hxx>
-#define NC_(Context, String) reinterpret_cast<char const *>(Context "\004" u8##String)
+#define NC_(Context, String) TranslateId(Context, reinterpret_cast<char const *>(u8##String))
-const std::pair<const char*, SvxBorderLineStyle> RID_SVXSTR_BORDERLINE[] =
+const std::pair<TranslateId, SvxBorderLineStyle> RID_SVXSTR_BORDERLINE[] =
{
{ NC_("RID_SVXSTR_BORDERLINE", "None"), SvxBorderLineStyle::NONE },
{ NC_("RID_SVXSTR_BORDERLINE", "Solid"), SvxBorderLineStyle::SOLID },
diff --git a/svtools/inc/errtxt.hrc b/svtools/inc/errtxt.hrc
index 009badd70b54..a5dce85f3092 100644
--- a/svtools/inc/errtxt.hrc
+++ b/svtools/inc/errtxt.hrc
@@ -22,7 +22,7 @@
#include <svtools/sfxecode.hxx>
#include <svtools/soerr.hxx>
-#define NC_(Context, String) reinterpret_cast<char const *>(Context "\004" u8##String)
+#define NC_(Context, String) TranslateId(Context, reinterpret_cast<char const *>(u8##String))
const ErrMsgCode RID_ERRCTX[] =
{
@@ -41,10 +41,10 @@ const ErrMsgCode RID_ERRCTX[] =
{ NC_("RID_ERRCTX", "$(ERR) expanding entry") , ErrCode(ERRCTX_SFX_CREATEOBJSH) },
{ NC_("RID_ERRCTX", "$(ERR) loading BASIC of document $(ARG1)") , ErrCode(ERRCTX_SFX_LOADBASIC) },
{ NC_("RID_ERRCTX", "$(ERR) searching for an address"), ErrCode(ERRCTX_SFX_SEARCHADDRESS) },
- { nullptr, ERRCODE_NONE }
+ { {}, ERRCODE_NONE }
};
-const std::pair<const char*, ErrCodeClass> RID_ERRHDL_CLASS[] =
+const std::pair<TranslateId, ErrCodeClass> RID_ERRHDL_CLASS[] =
{
{ NC_("RID_ERRHDL", "Abort") , ErrCodeClass::Abort },
{ NC_("RID_ERRHDL", "Nonexistent object") , ErrCodeClass::NotExists },
@@ -65,7 +65,7 @@ const std::pair<const char*, ErrCodeClass> RID_ERRHDL_CLASS[] =
{ NC_("RID_ERRHDL", "Inadmissible value or data type") , ErrCodeClass::Sbx },
{ NC_("RID_ERRHDL", "BASIC runtime error") , ErrCodeClass::Runtime },
{ NC_("RID_ERRHDL", "BASIC syntax error") , ErrCodeClass::Compiler },
- { nullptr, ErrCodeClass::NONE }
+ { {}, ErrCodeClass::NONE }
};
const ErrMsgCode RID_ERRHDL[] =
@@ -132,7 +132,7 @@ const ErrMsgCode RID_ERRHDL[] =
{ NC_("RID_ERRHDL", "The password of a shared spreadsheet cannot be set or changed.\nDeactivate sharing mode first."), ERRCODE_SFX_SHARED_NOPASSWORDCHANGE },
{ NC_("RID_ERRHDL", "File format error found at $(ARG1)(row,col)."), ERRCODE_SFX_FORMAT_ROWCOL },
{ NC_("RID_ERRHDL", "The filter for this file format is disabled in configuration. Please contact your systems administrator."), ERRCODE_IO_FILTERDISABLED },
- { nullptr, ERRCODE_NONE }
+ { {}, ERRCODE_NONE }
};
const ErrMsgCode RID_SO_ERROR_HANDLER[] =
@@ -145,13 +145,13 @@ const ErrMsgCode RID_SO_ERROR_HANDLER[] =
ERRCODE_SO_NOVERBS },
{ NC_("RID_ERRHDL", "Object does not support this action."),
ERRCODE_SO_NOTIMPL },
- { nullptr, ERRCODE_NONE }
+ { {}, ERRCODE_NONE }
};
const ErrMsgCode RID_SO_ERRCTX[] =
{
{ NC_("RID_ERRHDL", "$(ERR) activating object") , ErrCode(ERRCTX_SO_DOVERB) },
- { nullptr, ERRCODE_NONE }
+ { {}, ERRCODE_NONE }
};
diff --git a/svtools/inc/langtab.hrc b/svtools/inc/langtab.hrc
index e66375e115ac..d44b38294f5a 100644
--- a/svtools/inc/langtab.hrc
+++ b/svtools/inc/langtab.hrc
@@ -21,9 +21,9 @@
#include <i18nlangtag/lang.h>
-#define NC_(Context, String) reinterpret_cast<char const *>(Context "\004" u8##String)
+#define NC_(Context, String) TranslateId(Context, reinterpret_cast<char const *>(u8##String))
-const std::pair<const char*, LanguageType> STR_ARR_SVT_LANGUAGE_TABLE[] =
+const std::pair<TranslateId, LanguageType> STR_ARR_SVT_LANGUAGE_TABLE[] =
{
{ NC_("STR_ARR_SVT_LANGUAGE_TABLE", "[None]") , LANGUAGE_NONE },
{ NC_("STR_ARR_SVT_LANGUAGE_TABLE", "Unknown") , LANGUAGE_DONTKNOW },
diff --git a/svtools/source/dialogs/insdlg.cxx b/svtools/source/dialogs/insdlg.cxx
index 91a9822c3248..adaa1b905275 100644
--- a/svtools/source/dialogs/insdlg.cxx
+++ b/svtools/source/dialogs/insdlg.cxx
@@ -200,7 +200,7 @@ OUString SvPasteObjectHelper::GetSotFormatUIName( SotClipboardFormatId nId )
struct SotResourcePair
{
SotClipboardFormatId mnSotId;
- const char* mpResId;
+ TranslateId mpResId;
};
static const SotResourcePair aSotResourcePairs[] =
@@ -276,7 +276,7 @@ OUString SvPasteObjectHelper::GetSotFormatUIName( SotClipboardFormatId nId )
{ SotClipboardFormatId::PNG, STR_FORMAT_ID_PNG_BITMAP },
};
- const char* pResId = nullptr;
+ TranslateId pResId;
sal_uInt32 const nCount = SAL_N_ELEMENTS( aSotResourcePairs );
for (sal_uInt32 i = 0; ( i < nCount ) && !pResId; ++i)
diff --git a/svtools/source/dialogs/prnsetup.cxx b/svtools/source/dialogs/prnsetup.cxx
index 054a7b0f077d..fd7fca5ba098 100644
--- a/svtools/source/dialogs/prnsetup.cxx
+++ b/svtools/source/dialogs/prnsetup.cxx
@@ -134,7 +134,7 @@ static OUString ImplPrnDlgAddString(const OUString& rStr, std::u16string_view rA
}
-static OUString ImplPrnDlgAddResString(const OUString& rStr, const char* pResId)
+static OUString ImplPrnDlgAddResString(const OUString& rStr, TranslateId pResId)
{
return ImplPrnDlgAddString(rStr, SvtResId(pResId));
}
diff --git a/svtools/source/misc/ehdl.cxx b/svtools/source/misc/ehdl.cxx
index 1dcfbc9909d6..dab1544eeffd 100644
--- a/svtools/source/misc/ehdl.cxx
+++ b/svtools/source/misc/ehdl.cxx
@@ -193,7 +193,7 @@ void SfxErrorHandler::GetClassString(ErrCodeClass lClassId, OUString &rStr)
*/
{
- for (const std::pair<const char*, ErrCodeClass>* pItem = RID_ERRHDL_CLASS; pItem->first; ++pItem)
+ for (const std::pair<TranslateId, ErrCodeClass>* pItem = RID_ERRHDL_CLASS; pItem->first; ++pItem)
{
if (pItem->second == lClassId)
{
diff --git a/svtools/source/misc/imagemgr.cxx b/svtools/source/misc/imagemgr.cxx
index ff7fe554d869..58cba39f574f 100644
--- a/svtools/source/misc/imagemgr.cxx
+++ b/svtools/source/misc/imagemgr.cxx
@@ -50,7 +50,7 @@ struct SvtExtensionResIdMapping_Impl
{
const char* _pExt;
bool _bExt;
- const char* pStrId;
+ TranslateId pStrId;
SvImageId _nImgId;
};
@@ -91,7 +91,7 @@ SvtExtensionResIdMapping_Impl const ExtensionMap_Impl[] =
{ "jpg", true, STR_DESCRIPTION_GRAPHIC_DOC, SvImageId::JPG },
{ "lha", true, STR_DESCRIPTION_ARCHIVFILE, SvImageId::NONE },
#ifdef _WIN32
- { "lnk", false, nullptr, SvImageId::NONE },
+ { "lnk", false, {}, SvImageId::NONE },
#endif
{ "log", true, STR_DESCRIPTION_LOGFILE, SvImageId::NONE },
{ "lst", true, STR_DESCRIPTION_LOGFILE, SvImageId::NONE },
@@ -118,20 +118,20 @@ SvtExtensionResIdMapping_Impl const ExtensionMap_Impl[] =
{ "png", true, STR_DESCRIPTION_GRAPHIC_DOC, SvImageId::PNG },
{ "rar", true, STR_DESCRIPTION_ARCHIVFILE, SvImageId::NONE },
{ "rtf", false, STR_DESCRIPTION_WORD_DOC, SvImageId::Writer },
- { "sbl", false, nullptr, SvImageId::NONE },
- { "sch", false, nullptr, SvImageId::NONE },
- { "sda", false, STR_DESCRIPTION_SDRAW_DOC, SvImageId::Draw },
+ { "sbl", false, {}, SvImageId::NONE },
+ { "sch", false, {}, SvImageId::NONE },
+ { "sda", false, { nullptr, STR_DESCRIPTION_SDRAW_DOC}, SvImageId::Draw },
{ "sdb", false, STR_DESCRIPTION_SDATABASE_DOC, SvImageId::Database },
- { "sdc", false, STR_DESCRIPTION_SCALC_DOC, SvImageId::Calc },
- { "sdd", false, STR_DESCRIPTION_SIMPRESS_DOC, SvImageId::Impress },
- { "sdp", false, STR_DESCRIPTION_SIMPRESS_DOC, SvImageId::NONE },
- { "sds", false, STR_DESCRIPTION_SCHART_DOC, SvImageId::NONE },
- { "sdw", false, STR_DESCRIPTION_SWRITER_DOC, SvImageId::Writer },
- { "sga", false, nullptr, SvImageId::NONE },
+ { "sdc", false, { nullptr, STR_DESCRIPTION_SCALC_DOC}, SvImageId::Calc },
+ { "sdd", false, { nullptr, STR_DESCRIPTION_SIMPRESS_DOC}, SvImageId::Impress },
+ { "sdp", false, { nullptr, STR_DESCRIPTION_SIMPRESS_DOC}, SvImageId::NONE },
+ { "sds", false, { nullptr, STR_DESCRIPTION_SCHART_DOC}, SvImageId::NONE },
+ { "sdw", false, { nullptr, STR_DESCRIPTION_SWRITER_DOC}, SvImageId::Writer },
+ { "sga", false, {}, SvImageId::NONE },
{ "sgl", false, STR_DESCRIPTION_GLOBALDOC, SvImageId::GlobalDoc },
{ "shtml", false, STR_DESCRIPTION_HTMLFILE, SvImageId::HTML },
{ "sim", false, STR_DESCRIPTION_SIMAGE_DOC, SvImageId::SIM },
- { "smf", false, STR_DESCRIPTION_SMATH_DOC, SvImageId::Math },
+ { "smf", false, { nullptr, STR_DESCRIPTION_SMATH_DOC}, SvImageId::Math },
{ "src", true, STR_DESCRIPTION_SOURCEFILE, SvImageId::NONE },
{ "svh", false, STR_DESCRIPTION_HELP_DOC, SvImageId::NONE },
{ "svm", true, STR_DESCRIPTION_GRAPHIC_DOC, SvImageId::SVM },
@@ -168,7 +168,7 @@ SvtExtensionResIdMapping_Impl const ExtensionMap_Impl[] =
{ "pps", false, STR_DESCRIPTION_POWERPOINT_SHOW, SvImageId::Impress },
{ "pptx", false, STR_DESCRIPTION_POWERPOINT, SvImageId::Impress },
{ "oxt", false, STR_DESCRIPTION_EXTENSION, SvImageId::Extension },
- { nullptr, false, nullptr, SvImageId::NONE }
+ { nullptr, false, {}, SvImageId::NONE }
};
namespace {
@@ -431,9 +431,9 @@ static SvImageId GetImageId_Impl(
return nImage;
}
-static const char* GetDescriptionId_Impl( const OUString& rExtension, bool& rbShowExt )
+static TranslateId GetDescriptionId_Impl( const OUString& rExtension, bool& rbShowExt )
{
- const char* pId = nullptr;
+ TranslateId pId;
sal_Int32 nIndex = GetIndexOfExtension_Impl( rExtension );
if ( nIndex != NO_INDEX )
{
@@ -446,7 +446,7 @@ static const char* GetDescriptionId_Impl( const OUString& rExtension, bool& rbSh
static OUString GetDescriptionByFactory_Impl( const OUString& rFactory )
{
- const char* pResId = nullptr;
+ TranslateId pResId;
if ( rFactory.startsWithIgnoreAsciiCase( "swriter" ) )
pResId = STR_DESCRIPTION_FACTORY_WRITER;
else if ( rFactory.startsWithIgnoreAsciiCase( "scalc" ) )
@@ -471,9 +471,9 @@ static OUString GetDescriptionByFactory_Impl( const OUString& rFactory )
return OUString();
}
-static const char* GetFolderDescriptionId_Impl( const OUString& rURL )
+static TranslateId GetFolderDescriptionId_Impl( const OUString& rURL )
{
- const char* pRet = STR_DESCRIPTION_FOLDER;
+ TranslateId pRet = STR_DESCRIPTION_FOLDER;
try
{
::ucbhelper::Content aCnt( rURL, css::uno::Reference< css::ucb::XCommandEnvironment >(), comphelper::getProcessComponentContext() );
@@ -742,7 +742,7 @@ OUString SvFileInformationManager::GetDescription_Impl( const INetURLObject& rOb
{
OUString sExtension(rObject.getExtension());
OUString sDescription, sURL( rObject.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
- const char* pResId = nullptr;
+ TranslateId pResId;
bool bShowExt = false, bOnlyFile = false;
bool bFolder = bDetectFolder && CONTENT_HELPER::IsFolder( sURL );
if ( !bFolder )
@@ -866,7 +866,7 @@ OUString SvFileInformationManager::GetFileDescription( const INetURLObject& rObj
OUString SvFileInformationManager::GetFolderDescription( const svtools::VolumeInfo& rInfo )
{
- const char* pResId = STR_DESCRIPTION_FOLDER;
+ TranslateId pResId = STR_DESCRIPTION_FOLDER;
if ( rInfo.m_bIsRemote )
pResId = STR_DESCRIPTION_REMOTE_VOLUME;
else if ( rInfo.m_bIsFloppy )
diff --git a/svtools/source/misc/svtresid.cxx b/svtools/source/misc/svtresid.cxx
index e6dd8d45677f..5d886a01bfee 100644
--- a/svtools/source/misc/svtresid.cxx
+++ b/svtools/source/misc/svtresid.cxx
@@ -17,11 +17,10 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <unotools/resmgr.hxx>
#include <svtools/svtresid.hxx>
std::locale SvtResLocale() { return Translate::Create("svt"); }
-OUString SvtResId(std::string_view aId) { return Translate::get(aId, SvtResLocale()); }
+OUString SvtResId(TranslateId aId) { return Translate::get(aId, SvtResLocale()); }
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */