diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-07-19 13:18:49 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-08-05 09:39:11 +0200 |
commit | 14cfff500e93f0d6cbf8412065feea85c01ea81d (patch) | |
tree | 76e3fb8fbf2b0d8a12c8406d8cf994ea6a37aaff /svtools | |
parent | d924ce30e0ca260682bd2aed192b8b1b2ca3e7c0 (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.hrc | 4 | ||||
-rw-r--r-- | svtools/inc/errtxt.hrc | 14 | ||||
-rw-r--r-- | svtools/inc/langtab.hrc | 4 | ||||
-rw-r--r-- | svtools/source/dialogs/insdlg.cxx | 4 | ||||
-rw-r--r-- | svtools/source/dialogs/prnsetup.cxx | 2 | ||||
-rw-r--r-- | svtools/source/misc/ehdl.cxx | 2 | ||||
-rw-r--r-- | svtools/source/misc/imagemgr.cxx | 40 | ||||
-rw-r--r-- | svtools/source/misc/svtresid.cxx | 3 |
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: */ |