diff options
author | Julien Nabet <serval2412@yahoo.fr> | 2022-09-08 21:02:31 +0200 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2022-09-09 06:32:44 +0200 |
commit | 5f86f491701dc9f6f52129cf87644167e95ab40a (patch) | |
tree | f930b3714f2646443faaac4d8a63c37bfa907b68 /winaccessibility | |
parent | 506af0e65e8d0896e3e9f8e2d47aa65799276137 (diff) |
Simplify by using replaceAll in a loop (winaccessibility/AccTextBase)
Change-Id: I68c895033d26c81c76e680d2042aac941d56d213
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139707
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'winaccessibility')
-rw-r--r-- | winaccessibility/source/UAccCOM/AccTextBase.cxx | 35 |
1 files changed, 6 insertions, 29 deletions
diff --git a/winaccessibility/source/UAccCOM/AccTextBase.cxx b/winaccessibility/source/UAccCOM/AccTextBase.cxx index a1f371a47ec9..40620bb5b64f 100644 --- a/winaccessibility/source/UAccCOM/AccTextBase.cxx +++ b/winaccessibility/source/UAccCOM/AccTextBase.cxx @@ -74,8 +74,6 @@ sal_Int16 lcl_matchIA2TextBoundaryType(IA2TextBoundaryType boundaryType) // Construction/Destruction -static OUString ReplaceFourChar(OUString const & oldOUString); - CAccTextBase::CAccTextBase() {} @@ -182,7 +180,12 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CAccTextBase::get_attributes(long offset, long if (bHaveNumberingLevel && bHaveNumberingRules && bHaveNumberingPrefixAttr) { strAttrs.append(';'); - numberingPrefix = ReplaceFourChar(numberingPrefix); + numberingPrefix = numberingPrefix.replaceAll(u"\\", u"\\\\") + .replaceAll(u";", u"\\;") + .replaceAll(u"=", u"\\=") + .replaceAll(u",", u"\\,") + .replaceAll(u":", u"\\:"); + strAttrs.append(CMAccessible::get_String4Numbering(anyNumRule,numberingLevel,numberingPrefix)); bHaveNumberingLevel = false; bHaveNumberingRules = false; @@ -882,30 +885,4 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CAccTextBase::put_XInterface(hyper pXInterface } catch(...) { return E_FAIL; } } -static OUString ReplaceOneChar(OUString const & oldOUString, sal_Unicode replacedChar, std::u16string_view replaceStr) -{ - auto s = oldOUString; - int iReplace = s.lastIndexOf(replacedChar); - if (iReplace > -1) - { - for(;iReplace>-1;) - { - s = s.replaceAt(iReplace,1, replaceStr); - iReplace=s.lastIndexOf(replacedChar,iReplace); - } - } - return s; -} - -static OUString ReplaceFourChar(OUString const & oldOUString) -{ - auto s = oldOUString; - s = ReplaceOneChar(s, '\\', u"\\\\"); - s = ReplaceOneChar(s, ';', u"\\;"); - s = ReplaceOneChar(s, '=', u"\\="); - s = ReplaceOneChar(s, ',', u"\\,"); - s = ReplaceOneChar(s, ':', u"\\:"); - return s; -} - /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |