From ac31338c19c1d4843ffb66bac41feaad97d6e988 Mon Sep 17 00:00:00 2001 From: Mike Kaganski Date: Fri, 29 Oct 2021 10:25:38 +0300 Subject: Prepare for removal of non-const operator[] from Sequence in winaccessibility Change-Id: Ib689146520a99bbdaa7020583a4f34603c26ca19 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124412 Tested-by: Jenkins Reviewed-by: Mike Kaganski --- winaccessibility/source/UAccCOM/AccEditableText.cxx | 16 +++++++++------- winaccessibility/source/UAccCOM/AccTextBase.cxx | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) (limited to 'winaccessibility/source/UAccCOM') diff --git a/winaccessibility/source/UAccCOM/AccEditableText.cxx b/winaccessibility/source/UAccCOM/AccEditableText.cxx index 6c2962074e37..a953eacf1334 100644 --- a/winaccessibility/source/UAccCOM/AccEditableText.cxx +++ b/winaccessibility/source/UAccCOM/AccEditableText.cxx @@ -232,6 +232,7 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::setAttributes(long startOffs vecAttr.push_back(ouStr.getToken(0, ';', nIndex)); Sequence< PropertyValue > beanSeq(vecAttr.size()); + auto beanSeqRange = asNonConstRange(beanSeq); for(std::vector::size_type i = 0; i < vecAttr.size(); i ++) { OUString attr = vecAttr[i]; @@ -240,8 +241,8 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::setAttributes(long startOffs { OUString attrName = attr.copy(0, nPos); OUString attrValue = attr.copy(nPos + 1); - beanSeq[i].Name = attrName; - get_AnyFromOLECHAR(attrName, attrValue, beanSeq[i].Value); + beanSeqRange[i].Name = attrName; + get_AnyFromOLECHAR(attrName, attrValue, beanSeqRange[i].Value); } } @@ -398,22 +399,23 @@ void CAccEditableText::get_AnyFromOLECHAR(std::u16string_view ouName, const OUSt // Dump into Sequence. int iSeqLen = (vecTabStop.size() == 0) ? 1 : vecTabStop.size(); Sequence< css::style::TabStop > seqTabStop(iSeqLen); + auto pseqTabStop = seqTabStop.getArray(); if(vecTabStop.size() != 0) { // Dump every element. for(int i = 0; i < iSeqLen; i ++) { - seqTabStop[i] = vecTabStop[i]; + pseqTabStop[i] = vecTabStop[i]; } } else { // Create default value. - seqTabStop[0].Position = 0; - seqTabStop[0].Alignment = css::style::TabAlign_DEFAULT; - seqTabStop[0].DecimalChar = '.'; - seqTabStop[0].FillChar = ' '; + pseqTabStop[0].Position = 0; + pseqTabStop[0].Alignment = css::style::TabAlign_DEFAULT; + pseqTabStop[0].DecimalChar = '.'; + pseqTabStop[0].FillChar = ' '; } // Assign to Any object. diff --git a/winaccessibility/source/UAccCOM/AccTextBase.cxx b/winaccessibility/source/UAccCOM/AccTextBase.cxx index 5fb59edb494d..47225cb46f25 100644 --- a/winaccessibility/source/UAccCOM/AccTextBase.cxx +++ b/winaccessibility/source/UAccCOM/AccTextBase.cxx @@ -157,7 +157,7 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CAccTextBase::get_attributes(long offset, long for(int i =0; i