[Libreoffice-commits] core.git: sw/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Sat Nov 3 15:01:00 UTC 2018
sw/source/filter/html/htmlflywriter.cxx | 6 -
sw/source/filter/html/htmltabw.cxx | 10 +--
sw/source/filter/html/swhtml.cxx | 5 -
sw/source/filter/writer/writer.cxx | 5 -
sw/source/filter/ww8/WW8FFData.cxx | 9 --
sw/source/filter/ww8/WW8TableInfo.cxx | 20 +-----
sw/source/filter/ww8/docxattributeoutput.cxx | 13 ++--
sw/source/filter/ww8/docxexport.cxx | 10 ---
sw/source/filter/ww8/docxsdrexport.cxx | 21 ++----
sw/source/filter/ww8/writerhelper.cxx | 6 -
sw/source/filter/ww8/wrtw8esh.cxx | 77 ++++++++++--------------
sw/source/filter/ww8/wrtw8nds.cxx | 54 +++++-----------
sw/source/filter/ww8/wrtw8sty.cxx | 10 +--
sw/source/filter/ww8/wrtww8.cxx | 61 ++++++++-----------
sw/source/filter/ww8/wrtww8gr.cxx | 14 +---
sw/source/filter/ww8/ww8graf2.cxx | 21 +-----
sw/source/filter/ww8/ww8par.cxx | 50 +++++----------
sw/source/filter/ww8/ww8par5.cxx | 23 ++-----
sw/source/filter/ww8/ww8par6.cxx | 10 +--
sw/source/filter/ww8/ww8toolbar.cxx | 54 +++++++---------
sw/source/filter/xml/XMLRedlineImportHelper.cxx | 5 -
sw/source/filter/xml/xmlfmte.cxx | 13 +---
sw/source/filter/xml/xmltble.cxx | 2
sw/source/filter/xml/xmltbli.cxx | 42 +++++++------
sw/source/filter/xml/xmltexti.cxx | 9 --
25 files changed, 219 insertions(+), 331 deletions(-)
New commits:
commit 4284f618557992fdf12574f8fd014be76ec9fffc
Author: Arkadiy Illarionov <qarkai at gmail.com>
AuthorDate: Sat Nov 3 15:10:04 2018 +0300
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Sat Nov 3 16:00:36 2018 +0100
Simplify containers iterations in sw/source/filter
Use range-based loop or replace with STL functions.
Change-Id: Ifffb7ba08b3a9950ee076558ec4048b0788a38c8
Reviewed-on: https://gerrit.libreoffice.org/62806
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/sw/source/filter/html/htmlflywriter.cxx b/sw/source/filter/html/htmlflywriter.cxx
index efbb9cce6837..4993f21176a7 100644
--- a/sw/source/filter/html/htmlflywriter.cxx
+++ b/sw/source/filter/html/htmlflywriter.cxx
@@ -295,9 +295,9 @@ void SwHTMLWriter::CollectFlyFrames()
SwPosFlyFrames aFlyPos(m_pDoc->GetAllFlyFormats(m_bWriteAll ? nullptr : m_pCurrentPam, true));
- for(SwPosFlyFrames::const_iterator aIter(aFlyPos.begin()); aIter != aFlyPos.end(); ++aIter)
+ for(const auto& rpItem : aFlyPos)
{
- const SwFrameFormat& rFrameFormat = (*aIter)->GetFormat();
+ const SwFrameFormat& rFrameFormat = rpItem->GetFormat();
const SdrObject *pSdrObj = nullptr;
const SwPosition *pAPos;
const SwContentNode *pACNd;
@@ -347,7 +347,7 @@ void SwHTMLWriter::CollectFlyFrames()
if( !m_pHTMLPosFlyFrames )
m_pHTMLPosFlyFrames.reset(new SwHTMLPosFlyFrames);
- m_pHTMLPosFlyFrames->insert( o3tl::make_unique<SwHTMLPosFlyFrame>(**aIter, pSdrObj, nMode) );
+ m_pHTMLPosFlyFrames->insert( o3tl::make_unique<SwHTMLPosFlyFrame>(*rpItem, pSdrObj, nMode) );
}
}
diff --git a/sw/source/filter/html/htmltabw.cxx b/sw/source/filter/html/htmltabw.cxx
index a2e93d6bd9f8..600d27c5dc72 100644
--- a/sw/source/filter/html/htmltabw.cxx
+++ b/sw/source/filter/html/htmltabw.cxx
@@ -196,10 +196,9 @@ static bool lcl_TableBox_HasTabBorders( const SwTableBox* pBox, bool *pBorders )
if( !pBox->GetSttNd() )
{
- for( SwTableLines::const_iterator it = pBox->GetTabLines().begin();
- it != pBox->GetTabLines().end(); ++it)
+ for( const auto& rpLine : pBox->GetTabLines() )
{
- if ( lcl_TableLine_HasTabBorders( *it, pBorders ) )
+ if ( lcl_TableLine_HasTabBorders( rpLine, pBorders ) )
break;
}
}
@@ -220,10 +219,9 @@ static bool lcl_TableLine_HasTabBorders( const SwTableLine* pLine, bool *pBorder
if( *pBorders )
return false;
- for( SwTableBoxes::const_iterator it = pLine->GetTabBoxes().begin();
- it != pLine->GetTabBoxes().end(); ++it)
+ for( const auto& rpBox : pLine->GetTabBoxes() )
{
- if ( lcl_TableBox_HasTabBorders( *it, pBorders ) )
+ if ( lcl_TableBox_HasTabBorders( rpBox, pBorders ) )
break;
}
return !*pBorders;
diff --git a/sw/source/filter/html/swhtml.cxx b/sw/source/filter/html/swhtml.cxx
index 879a95e0db9b..042ab0d1563d 100644
--- a/sw/source/filter/html/swhtml.cxx
+++ b/sw/source/filter/html/swhtml.cxx
@@ -472,9 +472,8 @@ SwHTMLParser::~SwHTMLParser()
if( !m_aSetAttrTab.empty() )
{
OSL_ENSURE( m_aSetAttrTab.empty(),"There are still attributes on the stack" );
- for ( HTMLAttrs::const_iterator it = m_aSetAttrTab.begin();
- it != m_aSetAttrTab.end(); ++it )
- delete *it;
+ for ( auto& rpAttr : m_aSetAttrTab )
+ delete rpAttr;
m_aSetAttrTab.clear();
}
diff --git a/sw/source/filter/writer/writer.cxx b/sw/source/filter/writer/writer.cxx
index e0a92c344d8b..05d72841b81e 100644
--- a/sw/source/filter/writer/writer.cxx
+++ b/sw/source/filter/writer/writer.cxx
@@ -84,10 +84,9 @@ Writer_Impl::Writer_Impl()
void Writer_Impl::RemoveFontList( SwDoc& rDoc )
{
- for( std::vector<const SvxFontItem*>::const_iterator it = aFontRemoveLst.begin();
- it != aFontRemoveLst.end(); ++it )
+ for( const auto& rpFontItem : aFontRemoveLst )
{
- rDoc.GetAttrPool().Remove( **it );
+ rDoc.GetAttrPool().Remove( *rpFontItem );
}
}
diff --git a/sw/source/filter/ww8/WW8FFData.cxx b/sw/source/filter/ww8/WW8FFData.cxx
index 8a2392d643ab..7b5c4efb7467 100644
--- a/sw/source/filter/ww8/WW8FFData.cxx
+++ b/sw/source/filter/ww8/WW8FFData.cxx
@@ -146,15 +146,8 @@ void WW8FFData::Write(SvStream * pDataStrm)
sal_uInt32 nListboxEntries = msListEntries.size();
pDataStrm->WriteUInt32( nListboxEntries );
- std::vector< OUString >::const_iterator aIt = msListEntries.begin();
-
- while (aIt != msListEntries.end())
- {
- const OUString & rEntry = *aIt;
+ for (const OUString & rEntry : msListEntries)
WriteOUString(pDataStrm, rEntry, false);
-
- ++aIt;
- }
}
SwWW8Writer::WriteLong( *pDataStrm, nDataStt,
diff --git a/sw/source/filter/ww8/WW8TableInfo.cxx b/sw/source/filter/ww8/WW8TableInfo.cxx
index ae6596f43b52..0ecda9170a19 100644
--- a/sw/source/filter/ww8/WW8TableInfo.cxx
+++ b/sw/source/filter/ww8/WW8TableInfo.cxx
@@ -208,12 +208,9 @@ GridColsPtr WW8TableNodeInfoInner::getGridColsOfRow(AttributeOutputBase & rBase,
rBase.GetTablePageSize( this, nPageSize, bRelBoxSize );
SwTwips nSz = 0;
- Widths::const_iterator aWidthsEnd = pWidths->end();
- for ( Widths::const_iterator aIt = pWidths->begin();
- aIt != aWidthsEnd;
- ++aIt)
+ for (const auto& rWidth : *pWidths)
{
- nSz += *aIt;
+ nSz += rWidth;
SwTwips nCalc = nSz;
if ( bRelBoxSize )
nCalc = ( nCalc * nPageSize ) / nTableSz;
@@ -267,10 +264,8 @@ WidthsPtr WW8TableNodeInfoInner::getColumnWidthsBasedOnAllRows()
// column separators
pWidths = std::make_shared<Widths>();
sal_uInt32 nPreviousWidth = 0;
- Widths::const_iterator aItEnd2 = pSeparators->end();
- for (Widths::const_iterator aIt2 = pSeparators->begin(); aIt2 != aItEnd2; ++aIt2)
+ for (const sal_uInt32 nCurrentWidth : *pSeparators)
{
- sal_uInt32 nCurrentWidth = *aIt2;
pWidths->push_back(nCurrentWidth - nPreviousWidth);
nPreviousWidth = nCurrentWidth;
}
@@ -393,15 +388,10 @@ std::string WW8TableNodeInfo::toString() const
std::string sResult(buffer);
- Inners_t::const_iterator aIt(mInners.begin());
- Inners_t::const_iterator aEnd(mInners.end());
-
- while (aIt != aEnd)
+ for (const auto& rInner : mInners)
{
- WW8TableNodeInfoInner::Pointer_t pInner = aIt->second;
+ WW8TableNodeInfoInner::Pointer_t pInner = rInner.second;
sResult += pInner->toString();
-
- ++aIt;
}
sResult += dbg_out(*mpNode);
sResult += "</tableNodeInfo>";
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index 1681f03e629d..47022173a6ea 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -1357,12 +1357,12 @@ void DocxAttributeOutput::EndRun(const SwTextNode* pNode, sal_Int32 nPos, bool /
// XML_r node should be surrounded with permission-begin and permission-end nodes if it has permission.
DoWritePermissionsEnd();
- for (std::vector<const SwOLENode*>::iterator it = m_aPostponedMaths.begin(); it != m_aPostponedMaths.end(); ++it)
- WritePostponedMath(*it);
+ for (const auto& rpMath : m_aPostponedMaths)
+ WritePostponedMath(rpMath);
m_aPostponedMaths.clear();
- for (std::vector<const SdrObject*>::iterator it = m_aPostponedFormControls.begin(); it != m_aPostponedFormControls.end(); ++it)
- WritePostponedFormControl(*it);
+ for (const auto& rpControl : m_aPostponedFormControls)
+ WritePostponedFormControl(rpControl);
m_aPostponedFormControls.clear();
WritePostponedActiveXControl(false);
@@ -7436,13 +7436,13 @@ void DocxAttributeOutput::FootnotesEndnotes( bool bFootnotes )
// if new special ones are added, update also WriteFootnoteEndnotePr()
// footnotes/endnotes themselves
- for ( FootnotesVector::const_iterator i = rVector.begin(); i != rVector.end(); ++i, ++nIndex )
+ for ( const auto& rpItem : rVector )
{
m_pSerializer->startElementNS( XML_w, nItem,
FSNS( XML_w, XML_id ), OString::number( nIndex ).getStr(),
FSEND );
- const SwNodeIndex* pIndex = (*i)->GetTextFootnote()->GetStartNode();
+ const SwNodeIndex* pIndex = rpItem->GetTextFootnote()->GetStartNode();
// tag required at the start of each footnote/endnote
m_footnoteEndnoteRefTag = bFootnotes ? XML_footnoteRef : XML_endnoteRef;
@@ -7451,6 +7451,7 @@ void DocxAttributeOutput::FootnotesEndnotes( bool bFootnotes )
bFootnotes? TXT_FTN: TXT_EDN );
m_pSerializer->endElementNS( XML_w, nItem );
+ ++nIndex;
}
m_pSerializer->endElementNS( XML_w, nBody );
diff --git a/sw/source/filter/ww8/docxexport.cxx b/sw/source/filter/ww8/docxexport.cxx
index 5410759ee570..91e485eaa980 100644
--- a/sw/source/filter/ww8/docxexport.cxx
+++ b/sw/source/filter/ww8/docxexport.cxx
@@ -152,11 +152,8 @@ void DocxExport::AppendBookmarks( const SwTextNode& rNode, sal_Int32 nCurrentPos
IMarkVector aMarks;
if ( GetBookmarks( rNode, nCurrentPos, nCurrentPos + nLen, aMarks ) )
{
- for ( IMarkVector::const_iterator it = aMarks.begin(), end = aMarks.end();
- it != end; ++it )
+ for ( IMark* pMark : aMarks )
{
- IMark* pMark = (*it);
-
const sal_Int32 nStart = pMark->GetMarkStart().nContent.GetIndex();
const sal_Int32 nEnd = pMark->GetMarkEnd().nContent.GetIndex();
@@ -196,11 +193,8 @@ void DocxExport::AppendAnnotationMarks( const SwTextNode& rNode, sal_Int32 nCurr
IMarkVector aMarks;
if ( GetAnnotationMarks( rNode, nCurrentPos, nCurrentPos + nLen, aMarks ) )
{
- for ( IMarkVector::const_iterator it = aMarks.begin(), end = aMarks.end();
- it != end; ++it )
+ for ( IMark* pMark : aMarks )
{
- IMark* pMark = (*it);
-
const sal_Int32 nStart = pMark->GetMarkStart().nContent.GetIndex();
const sal_Int32 nEnd = pMark->GetMarkEnd().nContent.GetIndex();
diff --git a/sw/source/filter/ww8/docxsdrexport.cxx b/sw/source/filter/ww8/docxsdrexport.cxx
index d1f9f489c74a..b8372d5e13c1 100644
--- a/sw/source/filter/ww8/docxsdrexport.cxx
+++ b/sw/source/filter/ww8/docxsdrexport.cxx
@@ -1522,28 +1522,25 @@ void DocxSdrExport::writeDMLTextFrame(ww8::Frame const* pParentFrame, int nAncho
}
//first, loop through ALL of the chained textboxes to identify a unique ID for each chain, and sequence number for each textbox in that chain.
- std::map<OUString, MSWordExportBase::LinkedTextboxInfo>::iterator linkedTextboxesIter;
if (!m_pImpl->m_rExport.m_bLinkedTextboxesHelperInitialized)
{
sal_Int32 nSeq = 0;
- linkedTextboxesIter = m_pImpl->m_rExport.m_aLinkedTextboxesHelper.begin();
- while (linkedTextboxesIter != m_pImpl->m_rExport.m_aLinkedTextboxesHelper.end())
+ for (auto& rEntry : m_pImpl->m_rExport.m_aLinkedTextboxesHelper)
{
//find the start of a textbox chain: has no PREVIOUS link, but does have NEXT link
- if (linkedTextboxesIter->second.sPrevChain.isEmpty()
- && !linkedTextboxesIter->second.sNextChain.isEmpty())
+ if (rEntry.second.sPrevChain.isEmpty() && !rEntry.second.sNextChain.isEmpty())
{
//assign this chain a unique ID and start a new sequence
nSeq = 0;
- linkedTextboxesIter->second.nId = ++m_pImpl->m_rExport.m_nLinkedTextboxesChainId;
- linkedTextboxesIter->second.nSeq = nSeq;
+ rEntry.second.nId = ++m_pImpl->m_rExport.m_nLinkedTextboxesChainId;
+ rEntry.second.nSeq = nSeq;
- OUString sCheckForBrokenChains = linkedTextboxesIter->first;
+ OUString sCheckForBrokenChains = rEntry.first;
//follow the chain and assign the same id, and incremental sequence numbers.
std::map<OUString, MSWordExportBase::LinkedTextboxInfo>::iterator followChainIter;
- followChainIter = m_pImpl->m_rExport.m_aLinkedTextboxesHelper.find(
- linkedTextboxesIter->second.sNextChain);
+ followChainIter
+ = m_pImpl->m_rExport.m_aLinkedTextboxesHelper.find(rEntry.second.sNextChain);
while (followChainIter != m_pImpl->m_rExport.m_aLinkedTextboxesHelper.end())
{
//verify that the NEXT textbox also points to me as the PREVIOUS.
@@ -1563,7 +1560,6 @@ void DocxSdrExport::writeDMLTextFrame(ww8::Frame const* pParentFrame, int nAncho
followChainIter->second.sNextChain);
}
}
- ++linkedTextboxesIter;
}
m_pImpl->m_rExport.m_bLinkedTextboxesHelperInitialized = true;
}
@@ -1582,7 +1578,8 @@ void DocxSdrExport::writeDMLTextFrame(ww8::Frame const* pParentFrame, int nAncho
}
// second, check if THIS textbox is linked and then decide whether to write the tag txbx or linkedTxbx
- linkedTextboxesIter = m_pImpl->m_rExport.m_aLinkedTextboxesHelper.find(sLinkChainName);
+ std::map<OUString, MSWordExportBase::LinkedTextboxInfo>::iterator linkedTextboxesIter
+ = m_pImpl->m_rExport.m_aLinkedTextboxesHelper.find(sLinkChainName);
if (linkedTextboxesIter != m_pImpl->m_rExport.m_aLinkedTextboxesHelper.end())
{
if ((linkedTextboxesIter->second.nId != 0) && (linkedTextboxesIter->second.nSeq != 0))
diff --git a/sw/source/filter/ww8/writerhelper.cxx b/sw/source/filter/ww8/writerhelper.cxx
index 8f61cab73603..d396a04ad632 100644
--- a/sw/source/filter/ww8/writerhelper.cxx
+++ b/sw/source/filter/ww8/writerhelper.cxx
@@ -108,9 +108,9 @@ namespace
{
ww8::Frames aRet;
- for(SwPosFlyFrames::const_iterator aIter(rFlys.begin()); aIter != rFlys.end(); ++aIter)
+ for(const auto& rpFly : rFlys)
{
- const SwFrameFormat &rEntry = (*aIter)->GetFormat();
+ const SwFrameFormat &rEntry = rpFly->GetFormat();
if (const SwPosition* pAnchor = rEntry.GetAnchor().GetContentAnchor())
{
@@ -122,7 +122,7 @@ namespace
}
else
{
- SwPosition aPos((*aIter)->GetNdIndex());
+ SwPosition aPos(rpFly->GetNdIndex());
if (SwTextNode* pTextNd = aPos.nNode.GetNode().GetTextNode())
{
diff --git a/sw/source/filter/ww8/wrtw8esh.cxx b/sw/source/filter/ww8/wrtw8esh.cxx
index 99f8c902aab5..e3910364b03e 100644
--- a/sw/source/filter/ww8/wrtw8esh.cxx
+++ b/sw/source/filter/ww8/wrtw8esh.cxx
@@ -1031,20 +1031,20 @@ rtl_TextEncoding MSWord_SdrAttrIter::GetNextCharSet() const
sal_Int32 MSWord_SdrAttrIter::SearchNext( sal_Int32 nStartPos )
{
sal_Int32 nMinPos = SAL_MAX_INT32;
- for(std::vector<EECharAttrib>::const_iterator i = aTextAtrArr.begin(); i < aTextAtrArr.end(); ++i)
+ for(const auto& rTextAtr : aTextAtrArr)
{
- sal_Int32 nPos = i->nStart; // first character attribute
+ sal_Int32 nPos = rTextAtr.nStart; // first character attribute
if( nPos >= nStartPos && nPos <= nMinPos )
{
nMinPos = nPos;
- SetCharSet(*i, true);
+ SetCharSet(rTextAtr, true);
}
- nPos = i->nEnd; // last character attribute + 1
+ nPos = rTextAtr.nEnd; // last character attribute + 1
if( nPos >= nStartPos && nPos < nMinPos )
{
nMinPos = nPos;
- SetCharSet(*i, false);
+ SetCharSet(rTextAtr, false);
}
}
return nMinPos;
@@ -1104,15 +1104,15 @@ void MSWord_SdrAttrIter::OutAttr( sal_Int32 nSwPos )
std::set<sal_uInt16> aUsedRunWhichs;
if (!aTextAtrArr.empty())
{
- for(std::vector<EECharAttrib>::const_iterator i = aTextAtrArr.begin(); i < aTextAtrArr.end(); ++i)
+ for(const auto& rTextAtr : aTextAtrArr)
{
- if (nSwPos >= i->nStart && nSwPos < i->nEnd)
+ if (nSwPos >= rTextAtr.nStart && nSwPos < rTextAtr.nEnd)
{
- sal_uInt16 nWhich = i->pAttr->Which();
+ sal_uInt16 nWhich = rTextAtr.pAttr->Which();
aUsedRunWhichs.insert(nWhich);
}
- if( nSwPos < i->nStart )
+ if( nSwPos < rTextAtr.nStart )
break;
}
}
@@ -1130,14 +1130,14 @@ void MSWord_SdrAttrIter::OutAttr( sal_Int32 nSwPos )
nTmpSwPos = nSwPos;
// Did we already produce a <w:sz> element?
m_rExport.m_bFontSizeWritten = false;
- for(std::vector<EECharAttrib>::const_iterator i = aTextAtrArr.begin(); i < aTextAtrArr.end(); ++i)
+ for(const auto& rTextAtr : aTextAtrArr)
{
- if (nSwPos >= i->nStart && nSwPos < i->nEnd)
+ if (nSwPos >= rTextAtr.nStart && nSwPos < rTextAtr.nEnd)
{
- sal_uInt16 nWhich = i->pAttr->Which();
+ sal_uInt16 nWhich = rTextAtr.pAttr->Which();
if (nWhich == EE_FEATURE_FIELD)
{
- OutEEField(*(i->pAttr));
+ OutEEField(*(rTextAtr.pAttr));
continue;
}
if (nWhich == EE_FEATURE_TAB)
@@ -1155,7 +1155,7 @@ void MSWord_SdrAttrIter::OutAttr( sal_Int32 nSwPos )
m_rExport.CollapseScriptsforWordOk(nScript,nWhich))
{
// use always the SW-Which Id !
- std::unique_ptr<SfxPoolItem> pI(i->pAttr->Clone());
+ std::unique_ptr<SfxPoolItem> pI(rTextAtr.pAttr->Clone());
pI->SetWhich( nWhich );
// Will this item produce a <w:sz> element?
bool bFontSizeItem = nWhich == RES_CHRATR_FONTSIZE || nWhich == RES_CHRATR_CJK_FONTSIZE;
@@ -1167,7 +1167,7 @@ void MSWord_SdrAttrIter::OutAttr( sal_Int32 nSwPos )
}
}
- if( nSwPos < i->nStart )
+ if( nSwPos < rTextAtr.nStart )
break;
}
m_rExport.m_bFontSizeWritten = false;
@@ -1179,16 +1179,13 @@ void MSWord_SdrAttrIter::OutAttr( sal_Int32 nSwPos )
bool MSWord_SdrAttrIter::IsTextAttr(sal_Int32 nSwPos)
{
- for (std::vector<EECharAttrib>::const_iterator i = aTextAtrArr.begin(); i < aTextAtrArr.end(); ++i)
- {
- if (nSwPos >= i->nStart && nSwPos < i->nEnd)
- {
- if (i->pAttr->Which() == EE_FEATURE_FIELD ||
- i->pAttr->Which() == EE_FEATURE_TAB)
- return true;
+ return std::any_of(aTextAtrArr.begin(), aTextAtrArr.end(),
+ [nSwPos](const EECharAttrib& rTextAtr) {
+ return (nSwPos >= rTextAtr.nStart && nSwPos < rTextAtr.nEnd) &&
+ (rTextAtr.pAttr->Which() == EE_FEATURE_FIELD ||
+ rTextAtr.pAttr->Which() == EE_FEATURE_TAB);
}
- }
- return false;
+ );
}
// HasItem is used for the consolidation of the double attribute Underline and
@@ -1202,11 +1199,11 @@ const SfxPoolItem* MSWord_SdrAttrIter::HasTextItem(sal_uInt16 nWhich) const
m_rExport.m_pDoc->GetAttrPool(), nWhich);
if (nWhich)
{
- for (std::vector<EECharAttrib>::const_iterator i = aTextAtrArr.begin(); i < aTextAtrArr.end(); ++i)
+ for (const auto& rTextAtr : aTextAtrArr)
{
- if (nWhich == i->pAttr->Which() && nTmpSwPos >= i->nStart && nTmpSwPos < i->nEnd)
- return i->pAttr; // Found
- if (nTmpSwPos < i->nStart)
+ if (nWhich == rTextAtr.pAttr->Which() && nTmpSwPos >= rTextAtr.nStart && nTmpSwPos < rTextAtr.nEnd)
+ return rTextAtr.pAttr; // Found
+ if (nTmpSwPos < rTextAtr.nStart)
return nullptr;
}
}
@@ -2839,21 +2836,15 @@ sal_Int32 SwEscherEx::WriteFlyFrame(const DrawObj &rObj, sal_uInt32 &rShapeId,
static sal_uInt16 FindPos(const SwFrameFormat &rFormat, unsigned int nHdFtIndex,
DrawObjPointerVector &rPVec)
{
- auto aEnd = rPVec.end();
- for (auto aIter = rPVec.begin(); aIter != aEnd; ++aIter)
- {
- const DrawObj *pObj = (*aIter);
- OSL_ENSURE(pObj, "Impossible");
- if (!pObj)
- continue;
- if (
- nHdFtIndex == pObj->mnHdFtIndex &&
- &rFormat == (&pObj->maContent.GetFrameFormat())
- )
- {
- return static_cast< sal_uInt16 >(aIter - rPVec.begin());
- }
- }
+ auto aIter = std::find_if(rPVec.begin(), rPVec.end(),
+ [&rFormat, nHdFtIndex](const DrawObj* pObj) {
+ OSL_ENSURE(pObj, "Impossible");
+ return pObj &&
+ nHdFtIndex == pObj->mnHdFtIndex &&
+ &rFormat == (&pObj->maContent.GetFrameFormat());
+ });
+ if (aIter != rPVec.end())
+ return static_cast< sal_uInt16 >(aIter - rPVec.begin());
return USHRT_MAX;
}
diff --git a/sw/source/filter/ww8/wrtw8nds.cxx b/sw/source/filter/ww8/wrtw8nds.cxx
index 36555f31f96e..2b59e5ec84e2 100644
--- a/sw/source/filter/ww8/wrtw8nds.cxx
+++ b/sw/source/filter/ww8/wrtw8nds.cxx
@@ -747,15 +747,8 @@ bool SwWW8AttrIter::IsDropCap( int nSwPos )
bool SwWW8AttrIter::RequiresImplicitBookmark()
{
- std::vector<aBookmarkPair>::iterator bkmkIterEnd = m_rExport.m_aImplicitBookmarks.end();
- for ( std::vector<aBookmarkPair>::iterator aIter = m_rExport.m_aImplicitBookmarks.begin(); aIter != bkmkIterEnd; ++aIter )
- {
- sal_uLong sample = aIter->second;
-
- if ( sample == rNd.GetIndex() )
- return true;
- }
- return false;
+ return std::any_of(m_rExport.m_aImplicitBookmarks.begin(), m_rExport.m_aImplicitBookmarks.end(),
+ [this](const aBookmarkPair& rBookmarkPair) { return rBookmarkPair.second == rNd.GetIndex(); });
}
//HasItem is for the summary of the double attributes: Underline and WordlineMode as TextItems.
@@ -940,12 +933,11 @@ bool AttributeOutputBase::AnalyzeURL( const OUString& rUrl, const OUString& /*rT
if ( sRefType == "outline" )
{
OUString sLink = sMark.copy(0, nPos);
- std::vector<aBookmarkPair>::iterator bkmkIterEnd = GetExport().m_aImplicitBookmarks.end();
- for ( std::vector<aBookmarkPair>::iterator aIter = GetExport().m_aImplicitBookmarks.begin(); aIter != bkmkIterEnd; ++aIter )
+ for ( const auto& rBookmarkPair : GetExport().m_aImplicitBookmarks )
{
- if ( aIter->first == sLink )
+ if ( rBookmarkPair.first == sLink )
{
- sMark = "_toc" + OUString::number( aIter->second );
+ sMark = "_toc" + OUString::number( rBookmarkPair.second );
}
}
}
@@ -1187,21 +1179,17 @@ void SwWW8AttrIter::OutSwFormatRefMark(const SwFormatRefMark& rAttr)
void SwWW8AttrIter::SplitRun( sal_Int32 nSplitEndPos )
{
- for(auto aIter = maCharRuns.begin(); aIter != maCharRuns.end(); ++aIter)
- {
- if(aIter->mnEndPos == nSplitEndPos)
- return;
- else if (aIter->mnEndPos > nSplitEndPos)
- {
- CharRunEntry aNewEntry = *aIter;
- aIter->mnEndPos = nSplitEndPos;
- maCharRuns.insert( ++aIter, aNewEntry);
- maCharRunIter = maCharRuns.begin();
- IterToCurrent();
- nCurrentSwPos = SearchNext(1);
- break;
- }
- }
+ auto aIter = std::find_if(maCharRuns.begin(), maCharRuns.end(),
+ [nSplitEndPos](const CharRunEntry& rCharRun) { return rCharRun.mnEndPos >= nSplitEndPos; });
+ if (aIter == maCharRuns.end() || aIter->mnEndPos == nSplitEndPos)
+ return;
+
+ CharRunEntry aNewEntry = *aIter;
+ aIter->mnEndPos = nSplitEndPos;
+ maCharRuns.insert( ++aIter, aNewEntry);
+ maCharRunIter = maCharRuns.begin();
+ IterToCurrent();
+ nCurrentSwPos = SearchNext(1);
}
void WW8AttributeOutput::FieldVanish( const OUString& rText, ww::eField /*eType*/ )
@@ -2024,11 +2012,8 @@ void MSWordExportBase::GetSortedAnnotationMarks( const SwTextNode& rNode, sal_In
{
IMarkVector aSortedEnd;
IMarkVector aSortedStart;
- for ( IMarkVector::const_iterator it = aMarksStart.begin(), end = aMarksStart.end();
- it != end; ++it )
+ for ( IMark* pMark : aMarksStart )
{
- IMark* pMark = (*it);
-
// Remove the positions equal to the current pos
const sal_Int32 nStart = pMark->GetMarkStart().nContent.GetIndex();
const sal_Int32 nEnd = pMark->GetMarkEnd().nContent.GetIndex();
@@ -2060,11 +2045,8 @@ void MSWordExportBase::GetSortedBookmarks( const SwTextNode& rNode, sal_Int32 nC
{
IMarkVector aSortedEnd;
IMarkVector aSortedStart;
- for ( IMarkVector::const_iterator it = aMarksStart.begin(), end = aMarksStart.end();
- it != end; ++it )
+ for ( IMark* pMark : aMarksStart )
{
- IMark* pMark = (*it);
-
// Remove the positions equal to the current pos
const sal_Int32 nStart = pMark->GetMarkStart().nContent.GetIndex();
const sal_Int32 nEnd = pMark->GetMarkEnd().nContent.GetIndex();
diff --git a/sw/source/filter/ww8/wrtw8sty.cxx b/sw/source/filter/ww8/wrtw8sty.cxx
index ca1ae82deee6..09740c9eb718 100644
--- a/sw/source/filter/ww8/wrtw8sty.cxx
+++ b/sw/source/filter/ww8/wrtw8sty.cxx
@@ -953,10 +953,9 @@ void WW8_WrPlc0::Append( sal_uLong nStartCpOrFc )
void WW8_WrPlc0::Write( SvStream& rStrm )
{
- std::vector<sal_uLong>::const_iterator iter;
- for( iter = aPos.begin(); iter != aPos.end(); ++iter )
+ for( const auto& rPos : aPos )
{
- rStrm.WriteUInt32(*iter);
+ rStrm.WriteUInt32(rPos);
}
}
@@ -1258,10 +1257,9 @@ void MSWordSections::CheckForFacinPg( WW8Export& rWrt ) const
// 2 values getting set
// Dop.fFacingPages == Header and Footer different
// Dop.fSwapBordersFacingPgs == mirrored borders
- std::vector<WW8_SepInfo>::const_iterator iter = aSects.begin();
- for( sal_uInt16 nEnde = 0; iter != aSects.end(); ++iter )
+ sal_uInt16 nEnde = 0;
+ for( const WW8_SepInfo& rSepInfo : aSects )
{
- const WW8_SepInfo& rSepInfo = *iter;
if( !rSepInfo.pSectionFormat )
{
const SwPageDesc* pPd = rSepInfo.pPageDesc;
diff --git a/sw/source/filter/ww8/wrtww8.cxx b/sw/source/filter/ww8/wrtww8.cxx
index f1fd65a86873..8cf84557772f 100644
--- a/sw/source/filter/ww8/wrtww8.cxx
+++ b/sw/source/filter/ww8/wrtww8.cxx
@@ -216,13 +216,12 @@ WW8_WrtBookmarks::WW8_WrtBookmarks()
WW8_WrtBookmarks::~WW8_WrtBookmarks()
{
- CPItr aEnd = aSttCps.end();
- for (CPItr aItr = aSttCps.begin();aItr!=aEnd;++aItr)
+ for (auto& rEntry : aSttCps)
{
- if (aItr->second)
+ if (rEntry.second)
{
- delete aItr->second;
- aItr->second = nullptr;
+ delete rEntry.second;
+ rEntry.second = nullptr;
}
}
}
@@ -257,31 +256,32 @@ void WW8_WrtBookmarks::Write( WW8Export& rWrt)
{
if (aSttCps.empty())
return;
- CPItr aItr;
long n;
std::vector<OUString> aNames;
SvMemoryStream aTempStrm1(65535,65535);
SvMemoryStream aTempStrm2(65535,65535);
BKMKCPs aEndCps;
- for (aItr = aSttCps.begin();aItr!=aSttCps.end();++aItr)
+ for (const auto& rEntry : aSttCps)
{
- if (aItr->second)
+ if (rEntry.second)
{
- aEndCps.insert(std::pair<long,BKMKCP*>(aItr->second->first,aItr->second));
- aNames.push_back(aItr->second->second.second);
- SwWW8Writer::WriteLong( aTempStrm1, aItr->first);
+ aEndCps.insert(std::pair<long,BKMKCP*>(rEntry.second->first, rEntry.second));
+ aNames.push_back(rEntry.second->second.second);
+ SwWW8Writer::WriteLong(aTempStrm1, rEntry.first);
}
}
aTempStrm1.Seek(0);
- for (aItr = aEndCps.begin(), n = 0;aItr != aEndCps.end();++aItr,++n)
+ n = 0;
+ for (const auto& rEntry : aEndCps)
{
- if (aItr->second)
+ if (rEntry.second)
{
- aItr->second->first = n;
- SwWW8Writer::WriteLong( aTempStrm2, aItr->first);
+ rEntry.second->first = n;
+ SwWW8Writer::WriteLong( aTempStrm2, rEntry.first);
}
+ ++n;
}
aTempStrm2.Seek(0);
@@ -290,11 +290,11 @@ void WW8_WrtBookmarks::Write( WW8Export& rWrt)
rWrt.pFib->m_fcPlcfbkf = rStrm.Tell();
rStrm.WriteStream( aTempStrm1 );
SwWW8Writer::WriteLong(rStrm, rWrt.pFib->m_ccpText + rWrt.pFib->m_ccpTxbx);
- for (aItr = aSttCps.begin();aItr!=aSttCps.end();++aItr)
+ for (const auto& rEntry : aSttCps)
{
- if (aItr->second)
+ if (rEntry.second)
{
- SwWW8Writer::WriteLong(rStrm, aItr->second->first);
+ SwWW8Writer::WriteLong(rStrm, rEntry.second->first);
}
}
rWrt.pFib->m_lcbPlcfbkf = rStrm.Tell() - rWrt.pFib->m_fcPlcfbkf;
@@ -1488,9 +1488,8 @@ void WW8Export::AppendAnnotationMarks(const SwTextNode& rNode, sal_Int32 nCurren
IMarkVector aMarks;
if (GetAnnotationMarks(rNode, nCurrentPos, nCurrentPos + nLen, aMarks))
{
- for (IMarkVector::const_iterator it = aMarks.begin(), end = aMarks.end(); it != end; ++it)
+ for (const sw::mark::IMark* pMark : aMarks)
{
- sw::mark::IMark* pMark = (*it);
const sal_Int32 nStart = pMark->GetMarkStart().nContent.GetIndex();
if (nStart == nCurrentPos)
{
@@ -2391,23 +2390,19 @@ void WW8AttributeOutput::TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t
m_rWW8Export.InsUInt16( nTableOffset );
ww8::GridColsPtr pGridCols = GetGridCols( pTableTextNodeInfoInner );
- for ( ww8::GridCols::const_iterator it = pGridCols->begin(),
- end = pGridCols->end(); it != end; ++it )
+ for ( const auto nCol : *pGridCols )
{
- m_rWW8Export.InsUInt16( static_cast<sal_uInt16>( *it ) + nTableOffset );
+ m_rWW8Export.InsUInt16( static_cast<sal_uInt16>(nCol) + nTableOffset );
}
/* TCs */
ww8::RowSpansPtr pRowSpans = pTableTextNodeInfoInner->getRowSpansOfRow();
ww8::RowSpans::const_iterator aItRowSpans = pRowSpans->begin();
- ww8::TableBoxVector::const_iterator aIt;
- ww8::TableBoxVector::const_iterator aItEnd = pTableBoxes->end();
- for (aIt = pTableBoxes->begin(); aIt != aItEnd; ++aIt, ++aItRowSpans)
+ for (const SwTableBox * pTabBox1 : *pTableBoxes)
{
sal_uInt16 npOCount = m_rWW8Export.pO->size();
- const SwTableBox * pTabBox1 = *aIt;
const SwFrameFormat * pBoxFormat = nullptr;
if (pTabBox1 != nullptr)
pBoxFormat = pTabBox1->GetFrameFormat();
@@ -2429,6 +2424,7 @@ void WW8AttributeOutput::TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t
WW8Export::Out_SwFormatTableBox( *m_rWW8Export.pO, nullptr); // 8/16 Byte
SAL_INFO( "sw.ww8.level2", "<tclength>" << ( m_rWW8Export.pO->size() - npOCount ) << "</tclength>" );
+ ++aItRowSpans;
}
int nWidthPercent = pFormat->GetFrameSize().GetWidthPercent();
@@ -4106,14 +4102,11 @@ void MSWordExportBase::OutputEndNode( const SwEndNode &rNode )
SAL_INFO( "sw.ww8", pNodeInfo->toString());
#endif
const ww8::WW8TableNodeInfo::Inners_t aInners = pNodeInfo->getInners();
- ww8::WW8TableNodeInfo::Inners_t::const_iterator aIt(aInners.begin());
- ww8::WW8TableNodeInfo::Inners_t::const_iterator aEnd(aInners.end());
- while (aIt != aEnd)
- {
- ww8::WW8TableNodeInfoInner::Pointer_t pInner = aIt->second;
+ for (const auto& rEntry : aInners)
+ {
+ ww8::WW8TableNodeInfoInner::Pointer_t pInner = rEntry.second;
AttrOutput().TableNodeInfoInner(pInner);
- ++aIt;
- }
+ }
}
SAL_INFO( "sw.ww8", "</OutWW8_SwEndNode>" );
}
diff --git a/sw/source/filter/ww8/wrtww8gr.cxx b/sw/source/filter/ww8/wrtww8gr.cxx
index 3bb894d99ad2..251588a83837 100644
--- a/sw/source/filter/ww8/wrtww8gr.cxx
+++ b/sw/source/filter/ww8/wrtww8gr.cxx
@@ -886,18 +886,12 @@ void SwWW8WrGrf::Write()
if( nPos & 0x3 )
SwWW8Writer::FillCount( rStrm, 4 - ( nPos & 0x3 ) );
- bool bDuplicated = false;
- for (auto aIter2 = maDetails.begin(); aIter2 != aIter; ++aIter2)
+ auto aIter2 = std::find(maDetails.begin(), aIter, *aIter);
+ if (aIter2 != aIter)
{
- if (*aIter2 == *aIter)
- {
- aIter->mnPos = aIter2->mnPos;
- bDuplicated = true;
- break;
- }
+ aIter->mnPos = aIter2->mnPos;
}
-
- if (!bDuplicated)
+ else
{
aIter->mnPos = rStrm.Tell();
WriteGraphicNode(rStrm, *aIter);
diff --git a/sw/source/filter/ww8/ww8graf2.cxx b/sw/source/filter/ww8/ww8graf2.cxx
index d2d39f37d526..db8837c82849 100644
--- a/sw/source/filter/ww8/ww8graf2.cxx
+++ b/sw/source/filter/ww8/ww8graf2.cxx
@@ -18,6 +18,7 @@
*/
#include <iterator>
+#include <numeric>
#include <hintids.hxx>
#include <svl/urihelper.hxx>
#include <svx/svdpage.hxx>
@@ -83,15 +84,8 @@ void wwZOrderer::InsertEscherObject( SdrObject* pObject,
wwZOrderer::myeiter wwZOrderer::MapEscherIdxToIter(sal_uLong nIdx)
{
- myeiter aIter = maEscherLayer.begin();
- myeiter aEnd = maEscherLayer.end();
- while (aIter != aEnd)
- {
- if (aIter->mnEscherShapeOrder == nIdx)
- break;
- ++aIter;
- }
- return aIter;
+ return std::find_if(maEscherLayer.begin(), maEscherLayer.end(),
+ [nIdx](const EscherShape& rShape) { return rShape.mnEscherShapeOrder == nIdx; });
}
sal_uInt16 wwZOrderer::GetEscherObjectIdx(sal_uLong nSpId)
@@ -187,13 +181,8 @@ void wwZOrderer::InsertTextLayerObject(SdrObject* pObject)
sal_uInt16 nIdx = maIndexes.top();
myeiter aEnd = MapEscherIdxToIter(nIdx);
- sal_uLong nInsertPos=0;
- myeiter aIter = maEscherLayer.begin();
- while (aIter != aEnd)
- {
- nInsertPos += aIter->mnNoInlines+1;
- ++aIter;
- }
+ sal_uLong nInsertPos = std::accumulate(maEscherLayer.begin(), aEnd, sal_uLong(0),
+ [](const sal_uLong nPos, const EscherShape& rShape) { return nPos + rShape.mnNoInlines + 1; });
OSL_ENSURE(aEnd != maEscherLayer.end(), "Something very wrong here");
if (aEnd != maEscherLayer.end())
diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx
index 6914ca7ccdc8..19171a4c8c6a 100644
--- a/sw/source/filter/ww8/ww8par.cxx
+++ b/sw/source/filter/ww8/ww8par.cxx
@@ -3909,18 +3909,15 @@ bool SwWW8ImplReader::IsParaEndInCPs(sal_Int32 nStart, sal_Int32 nEnd,bool bSdOD
if (nStart == -1 || nEnd == -1 || nEnd < nStart )
return false;
- for (cp_vector::const_reverse_iterator aItr = m_aEndParaPos.rbegin(); aItr!= m_aEndParaPos.rend(); ++aItr)
- {
- //Revised 2012.8.16,to the 0x0D,the attribute will have two situations
- //*********within***********exact******
- //*********but also sample with only left and the position of 0x0d is the edge of the right side***********
- if ( bSdOD && ( (nStart < *aItr && nEnd > *aItr) || ( nStart == nEnd && *aItr == nStart)) )
- return true;
- else if ( !bSdOD && (nStart < *aItr && nEnd >= *aItr) )
- return true;
- }
-
- return false;
+ return std::any_of(m_aEndParaPos.rbegin(), m_aEndParaPos.rend(),
+ [=](const WW8_CP& rPos) {
+ //Revised 2012.8.16,to the 0x0D,the attribute will have two situations
+ //*********within***********exact******
+ //*********but also sample with only left and the position of 0x0d is the edge of the right side***********
+ return (bSdOD && ((nStart < rPos && nEnd > rPos) || (nStart == nEnd && rPos == nStart))) ||
+ (!bSdOD && (nStart < rPos && nEnd >= rPos));
+ }
+ );
}
//Clear the para end position recorded in reader intermittently for the least impact on loading performance
@@ -5936,16 +5933,12 @@ void SwWW8ImplReader::SetOutlineStyles()
}
int nCurrentMaxCount = 0;
- std::map<const SwNumRule*, int>::iterator aCountIterEnd
- = aWW8ListStyleCounts.end();
- for (std::map<const SwNumRule*, int>::iterator aIter
- = aWW8ListStyleCounts.begin();
- aIter != aCountIterEnd; ++aIter)
+ for (const auto& rEntry : aWW8ListStyleCounts)
{
- if (aIter->second > nCurrentMaxCount)
+ if (rEntry.second > nCurrentMaxCount)
{
- nCurrentMaxCount = aIter->second;
- pChosenWW8ListStyle = aIter->first;
+ nCurrentMaxCount = rEntry.second;
+ pChosenWW8ListStyle = rEntry.first;
}
}
}
@@ -5962,14 +5955,8 @@ void SwWW8ImplReader::SetOutlineStyles()
// its default outline level is applied.
SwNumRule aOutlineRule(*m_rDoc.GetOutlineNumRule());
bool bAppliedChangedOutlineStyle = false;
- std::vector<SwWW8StyInf*>::iterator aStylesIterEnd
- = aWW8BuiltInHeadingStyles.end();
- for (std::vector<SwWW8StyInf*>::iterator aStyleIter
- = aWW8BuiltInHeadingStyles.begin();
- aStyleIter != aStylesIterEnd; ++aStyleIter)
+ for (const SwWW8StyInf* pStyleInf : aWW8BuiltInHeadingStyles)
{
- SwWW8StyInf* pStyleInf = (*aStyleIter);
-
if (!pStyleInf->m_bColl) //Character Style
continue;
@@ -6084,11 +6071,10 @@ void SwWW8ImplReader::GetSmartTagInfo(SwFltRDFMark& rMark)
// Check if the smart tag bookmark refers to a valid factoid type.
const MSOPropertyBag& rPropertyBag = m_pSmartTagData->m_aPropBags[rMark.GetHandle()];
- auto itPropertyBag = m_pSmartTagData->m_aPropBagStore.m_aFactoidTypes.begin();
- for (; itPropertyBag != m_pSmartTagData->m_aPropBagStore.m_aFactoidTypes.end(); ++itPropertyBag)
- if (itPropertyBag->m_nId == rPropertyBag.m_nId)
- break;
- if (itPropertyBag == m_pSmartTagData->m_aPropBagStore.m_aFactoidTypes.end())
+ auto& rFactoidTypes = m_pSmartTagData->m_aPropBagStore.m_aFactoidTypes;
+ auto itPropertyBag = std::find_if(rFactoidTypes.begin(), rFactoidTypes.end(),
+ [&rPropertyBag](const MSOFactoidType& rType) { return rType.m_nId == rPropertyBag.m_nId; });
+ if (itPropertyBag == rFactoidTypes.end())
return;
// Check if the factoid is an RDF one.
diff --git a/sw/source/filter/ww8/ww8par5.cxx b/sw/source/filter/ww8/ww8par5.cxx
index 527b9fcba0c5..51f6ca542053 100644
--- a/sw/source/filter/ww8/ww8par5.cxx
+++ b/sw/source/filter/ww8/ww8par5.cxx
@@ -2725,21 +2725,18 @@ void SwWW8ImplReader::Read_SubF_Ruby( WW8ReadFieldParams& rReadParam)
sal_uInt16 nScript = g_pBreakIt->GetBreakIter()->getScriptType(sRuby, 0);
//Check to see if we already have a ruby charstyle that this fits
- std::vector<const SwCharFormat*>::const_iterator aEnd =
- m_aRubyCharFormats.end();
- for(std::vector<const SwCharFormat*>::const_iterator aIter
- = m_aRubyCharFormats.begin(); aIter != aEnd; ++aIter)
+ for(const auto& rpCharFormat : m_aRubyCharFormats)
{
const SvxFontHeightItem &rFH =
- ItemGet<SvxFontHeightItem>(*(*aIter),
+ ItemGet<SvxFontHeightItem>(*rpCharFormat,
GetWhichOfScript(RES_CHRATR_FONTSIZE,nScript));
if (rFH.GetHeight() == nFontSize*10)
{
- const SvxFontItem &rF = ItemGet<SvxFontItem>(*(*aIter),
+ const SvxFontItem &rF = ItemGet<SvxFontItem>(*rpCharFormat,
GetWhichOfScript(RES_CHRATR_FONT,nScript));
if (rF.GetFamilyName() == sFontName)
{
- pCharFormat=*aIter;
+ pCharFormat = rpCharFormat;
break;
}
}
@@ -3244,14 +3241,10 @@ eF_ResT SwWW8ImplReader::Read_F_Tox( WW8FieldDesc* pF, OUString& rStr )
}
else
{
- for (SwFormTokens::iterator aItr = aPattern.begin();aItr!= aPattern.end();++aItr)
- {
- if (aItr->eTokenType == TOKEN_PAGE_NUMS)
- {
- aPattern.insert(aItr,aLinkStart);
- break;
- }
- }
+ auto aItr = std::find_if(aPattern.begin(), aPattern.end(),
+ [](const SwFormToken& rToken) { return rToken.eTokenType == TOKEN_PAGE_NUMS; });
+ if (aItr != aPattern.end())
+ aPattern.insert(aItr, aLinkStart);
}
aPattern.push_back(aLinkEnd);
aForm.SetPattern(nLevel, aPattern);
diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx
index f240b8ffe969..b422202e14e3 100644
--- a/sw/source/filter/ww8/ww8par6.cxx
+++ b/sw/source/filter/ww8/ww8par6.cxx
@@ -663,12 +663,10 @@ SwSectionFormat *wwSectionManager::InsertSection(
return nullptr;
SwPageDesc *pPage = nullptr;
- auto aEnd = maSegments.rend();
- for (auto aIter = maSegments.rbegin(); aIter != aEnd; ++aIter)
- {
- if (nullptr != (pPage = aIter->mpPage))
- break;
- }
+ auto aIter = std::find_if(maSegments.rbegin(), maSegments.rend(),
+ [](const wwSection& rSegment) { return rSegment.mpPage != nullptr; });
+ if (aIter != maSegments.rend())
+ pPage = aIter->mpPage;
OSL_ENSURE(pPage, "no page outside this section!");
diff --git a/sw/source/filter/ww8/ww8toolbar.cxx b/sw/source/filter/ww8/ww8toolbar.cxx
index 2487cbb0f9f9..eeb6f4212601 100644
--- a/sw/source/filter/ww8/ww8toolbar.cxx
+++ b/sw/source/filter/ww8/ww8toolbar.cxx
@@ -96,16 +96,14 @@ Customization* SwCTBWrapper::GetCustomizaton( sal_Int16 index )
SwCTB* SwCTBWrapper::GetCustomizationData( const OUString& sTBName )
{
- SwCTB* pCTB = nullptr;
- for ( std::vector< Customization >::iterator it = rCustomizations.begin(); it != rCustomizations.end(); ++it )
- {
- if ( it->GetCustomizationData() && it->GetCustomizationData()->GetName() == sTBName )
- {
- pCTB = it->GetCustomizationData();
- break;
- }
- }
- return pCTB;
+ auto it = std::find_if(rCustomizations.begin(), rCustomizations.end(),
+ [&sTBName](Customization& rCustomization) {
+ SwCTB* pCTB = rCustomization.GetCustomizationData();
+ return pCTB && pCTB->GetName() == sTBName;
+ });
+ if (it != rCustomizations.end())
+ return it->GetCustomizationData();
+ return nullptr;
}
bool SwCTBWrapper::Read( SvStream& rS )
@@ -161,29 +159,27 @@ bool SwCTBWrapper::Read( SvStream& rS )
rCustomizations.push_back( aCust );
}
}
- std::vector< sal_Int16 >::iterator it_end = dropDownMenuIndices.end();
- for ( std::vector< sal_Int16 >::iterator it = dropDownMenuIndices.begin(); it != it_end; ++it )
+ for ( const auto& rIndex : dropDownMenuIndices )
{
- if (*it < 0 || static_cast<size_t>(*it) >= rCustomizations.size())
+ if (rIndex < 0 || static_cast<size_t>(rIndex) >= rCustomizations.size())
continue;
- rCustomizations[*it].bIsDroppedMenuTB = true;
+ rCustomizations[rIndex].bIsDroppedMenuTB = true;
}
return rS.good();
}
SwTBC* SwCTBWrapper::GetTBCAtOffset( sal_uInt32 nStreamOffset )
{
- for ( std::vector< SwTBC >::iterator it = rtbdc.begin(); it != rtbdc.end(); ++it )
- {
- if ( (*it).GetOffset() == nStreamOffset )
- return &(*it);
- }
+ auto it = std::find_if(rtbdc.begin(), rtbdc.end(),
+ [&nStreamOffset](SwTBC& rItem) { return rItem.GetOffset() == nStreamOffset; });
+ if ( it != rtbdc.end() )
+ return &(*it);
return nullptr;
}
bool SwCTBWrapper::ImportCustomToolBar( SfxObjectShell& rDocSh )
{
- for ( std::vector< Customization >::iterator it = rCustomizations.begin(); it != rCustomizations.end(); ++it )
+ for ( auto& rCustomization : rCustomizations )
{
try
{
@@ -197,7 +193,7 @@ bool SwCTBWrapper::ImportCustomToolBar( SfxObjectShell& rDocSh )
CustomToolBarImportHelper helper(rDocSh, xCfgMgr);
helper.setMSOCommandMap( new MSOWordCommandConvertor() );
- if ( !(*it).ImportCustomToolBar( *this, helper ) )
+ if ( !rCustomization.ImportCustomToolBar( *this, helper ) )
return false;
}
catch (...)
@@ -256,20 +252,20 @@ bool Customization::ImportMenu( SwCTBWrapper& rWrapper, CustomToolBarImportHelpe
{
if ( tbidForTBD == 0x25 ) // we can handle in a limited way additions the built-in menu bar
{
- for ( std::vector< TBDelta >::iterator it = customizationDataTBDelta.begin(); it != customizationDataTBDelta.end(); ++it )
+ for ( auto& rTBDelta : customizationDataTBDelta )
{
// for each new menu ( control that drops a toolbar )
// import a toolbar
- if ( it->ControlIsInserted() && it->ControlDropsToolBar() )
+ if ( rTBDelta.ControlIsInserted() && rTBDelta.ControlDropsToolBar() )
{
- Customization* pCust = pWrapper->GetCustomizaton( it->CustomizationIndex() );
+ Customization* pCust = pWrapper->GetCustomizaton( rTBDelta.CustomizationIndex() );
if ( pCust )
{
// currently only support built-in menu
const OUString sMenuBar( "private:resource/menubar/menubar" );
// Get menu name
- SwTBC* pTBC = pWrapper->GetTBCAtOffset( it->TBCStreamOffset() );
+ SwTBC* pTBC = pWrapper->GetTBCAtOffset( rTBDelta.TBCStreamOffset() );
if ( !pTBC )
return false;
const OUString sMenuName = pTBC->GetCustomText().replace('&','~');
@@ -442,10 +438,10 @@ bool SwCTB::ImportCustomToolBar( SwCTBWrapper& rWrapper, CustomToolBarImportHelp
xProps->setPropertyValue( "UIName", uno::makeAny( name.getString() ) );
const OUString sToolBarName = "private:resource/toolbar/custom_" + name.getString();
- for ( std::vector< SwTBC >::iterator it = rTBC.begin(); it != rTBC.end(); ++it )
+ for ( auto& rItem : rTBC )
{
// createToolBar item for control
- if ( !it->ImportToolBarControl( rWrapper, xIndexContainer, helper, IsMenuToolbar() ) )
+ if ( !rItem.ImportToolBarControl( rWrapper, xIndexContainer, helper, IsMenuToolbar() ) )
return false;
}
@@ -472,10 +468,10 @@ bool SwCTB::ImportCustomToolBar( SwCTBWrapper& rWrapper, CustomToolBarImportHelp
bool SwCTB::ImportMenuTB( SwCTBWrapper& rWrapper, const css::uno::Reference< css::container::XIndexContainer >& xIndexContainer, CustomToolBarImportHelper& rHelper )
{
- for ( std::vector< SwTBC >::iterator it = rTBC.begin(); it != rTBC.end(); ++it )
+ for ( auto& rItem : rTBC )
{
// createToolBar item for control
- if ( !it->ImportToolBarControl( rWrapper, xIndexContainer, rHelper, true ) )
+ if ( !rItem.ImportToolBarControl( rWrapper, xIndexContainer, rHelper, true ) )
return false;
}
return true;
diff --git a/sw/source/filter/xml/XMLRedlineImportHelper.cxx b/sw/source/filter/xml/XMLRedlineImportHelper.cxx
index ade99db16295..ce3573b7b946 100644
--- a/sw/source/filter/xml/XMLRedlineImportHelper.cxx
+++ b/sw/source/filter/xml/XMLRedlineImportHelper.cxx
@@ -286,10 +286,9 @@ XMLRedlineImportHelper::XMLRedlineImportHelper(
XMLRedlineImportHelper::~XMLRedlineImportHelper()
{
// delete all left over (and obviously incomplete) RedlineInfos (and map)
- RedlineMapType::iterator aFind = aRedlineMap.begin();
- for( ; aRedlineMap.end() != aFind; ++aFind )
+ for( auto& rEntry : aRedlineMap )
{
- RedlineInfo* pInfo = aFind->second;
+ RedlineInfo* pInfo = rEntry.second;
// left-over redlines. Insert them if possible (but assert),
// and delete the incomplete ones. Finally, delete it.
diff --git a/sw/source/filter/xml/xmlfmte.cxx b/sw/source/filter/xml/xmlfmte.cxx
index d099a91c9e12..bbc59643506b 100644
--- a/sw/source/filter/xml/xmlfmte.cxx
+++ b/sw/source/filter/xml/xmlfmte.cxx
@@ -290,20 +290,17 @@ void SwXMLAutoStylePoolP::exportStyleAttributes(
if( XML_STYLE_FAMILY_TEXT_PARAGRAPH == nFamily )
{
- for( std::vector< XMLPropertyState >::const_iterator
- aProperty = rProperties.begin();
- aProperty != rProperties.end();
- ++aProperty )
+ for( const auto& rProperty : rProperties )
{
- if (aProperty->mnIndex != -1) // #i26762#
+ if (rProperty.mnIndex != -1) // #i26762#
{
switch( rPropExp.getPropertySetMapper()->
- GetEntryContextId( aProperty->mnIndex ) )
+ GetEntryContextId( rProperty.mnIndex ) )
{
case CTF_NUMBERINGSTYLENAME:
{
OUString sStyleName;
- aProperty->maValue >>= sStyleName;
+ rProperty.maValue >>= sStyleName;
// #i70748# - export also empty list styles
if( !sStyleName.isEmpty() )
{
@@ -319,7 +316,7 @@ void SwXMLAutoStylePoolP::exportStyleAttributes(
case CTF_PAGEDESCNAME:
{
OUString sStyleName;
- aProperty->maValue >>= sStyleName;
+ rProperty.maValue >>= sStyleName;
GetExport().AddAttribute( XML_NAMESPACE_STYLE,
sMasterPageName,
GetExport().EncodeStyleName( sStyleName ) );
diff --git a/sw/source/filter/xml/xmltble.cxx b/sw/source/filter/xml/xmltble.cxx
index 90501aab95b7..58ef026cf7e1 100644
--- a/sw/source/filter/xml/xmltble.cxx
+++ b/sw/source/filter/xml/xmltble.cxx
@@ -339,7 +339,7 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( SwFrameFormat& rFrameFormat,
return false;
// order is: -/-/-/num,
- // -/-/box/-, --/-/box/num,
+ // -/-/box/-, -/-/box/num,
// -/brush/-/-, -/brush/-/num, -/brush/box/-, -/brush/box/num,
// vert/-/-/-, vert/-/-/num, vert/-/box/-, ver/-/box/num,
// vert/brush/-/-, vert/brush/-/num, vert/brush/box/-,
diff --git a/sw/source/filter/xml/xmltbli.cxx b/sw/source/filter/xml/xmltbli.cxx
index 8517963383f8..2207d929a9c4 100644
--- a/sw/source/filter/xml/xmltbli.cxx
+++ b/sw/source/filter/xml/xmltbli.cxx
@@ -2378,20 +2378,20 @@ void SwXMLTableContext::MakeTable_( SwTableBox *pBox )
sal_Int32 nRelWidth = 0;
sal_Int32 nMinRelColWidth = 0;
sal_uInt32 nRelCols = 0;
- for( colIter = m_aColumnWidths.begin(); colIter < m_aColumnWidths.end(); ++colIter)
+ for( const auto& rCol : m_aColumnWidths)
{
- if( colIter->isRelative )
+ if( rCol.isRelative )
{
- nRelWidth += colIter->width;
- if( 0 == nMinRelColWidth || colIter->width < nMinRelColWidth )
- nMinRelColWidth = colIter->width;
+ nRelWidth += rCol.width;
+ if( 0 == nMinRelColWidth || rCol.width < nMinRelColWidth )
+ nMinRelColWidth = rCol.width;
nRelCols++;
}
else
{
- nAbsWidth += colIter->width;
- if( 0 == nMinAbsColWidth || colIter->width < nMinAbsColWidth )
- nMinAbsColWidth = colIter->width;
+ nAbsWidth += rCol.width;
+ if( 0 == nMinAbsColWidth || rCol.width < nMinAbsColWidth )
+ nMinAbsColWidth = rCol.width;
}
}
sal_uInt32 nAbsCols = nCols - nRelCols;
@@ -2410,20 +2410,22 @@ void SwXMLTableContext::MakeTable_( SwTableBox *pBox )
if( 0 == nMinRelColWidth )
nMinRelColWidth = nMinAbsColWidth;
- for( colIter = m_aColumnWidths.begin(); nAbsCols > 0 && colIter < m_aColumnWidths.end(); ++colIter)
+ for( auto& rCol : m_aColumnWidths)
{
- if( !colIter->isRelative )
+ if( !rCol.isRelative )
{
if (nMinAbsColWidth == 0)
throw o3tl::divide_by_zero();
sal_Int32 nVal;
- if (o3tl::checked_multiply<sal_Int32>(colIter->width, nMinRelColWidth, nVal))
+ if (o3tl::checked_multiply<sal_Int32>(rCol.width, nMinRelColWidth, nVal))
throw std::overflow_error("overflow in multiply");
sal_Int32 nRelCol = nVal / nMinAbsColWidth;
- colIter->width = nRelCol;
- colIter->isRelative = true;
+ rCol.width = nRelCol;
+ rCol.isRelative = true;
nRelWidth += nRelCol;
nAbsCols--;
+ if (nAbsCols <= 0)
+ break;
}
}
}
@@ -2494,9 +2496,9 @@ void SwXMLTableContext::MakeTable_( SwTableBox *pBox )
// Otherwise, if there is enough space for every column, every
// column gets this space.
- for( colIter = m_aColumnWidths.begin(); nRelCols > 0 && colIter < m_aColumnWidths.end(); ++colIter )
+ for( auto& rCol : m_aColumnWidths )
{
- if( colIter->isRelative )
+ if( rCol.isRelative )
{
sal_Int32 nAbsCol;
if( 1 == nRelCols )
@@ -2513,20 +2515,22 @@ void SwXMLTableContext::MakeTable_( SwTableBox *pBox )
}
else if( bMinExtra )
{
- sal_Int32 nExtraRelCol = colIter->width - nMinRelColWidth;
+ sal_Int32 nExtraRelCol = rCol.width - nMinRelColWidth;
nAbsCol = MINLAY + (nExtraRelCol * nExtraAbs) /
nExtraRel;
}
else
{
- nAbsCol = ( colIter->width * nAbsForRelWidth) / nRelWidth;
+ nAbsCol = ( rCol.width * nAbsForRelWidth) / nRelWidth;
}
}
- colIter->width = nAbsCol;
- colIter->isRelative = false;
+ rCol.width = nAbsCol;
+ rCol.isRelative = false;
nAbsForRelWidth -= nAbsCol;
nAbsWidth += nAbsCol;
nRelCols--;
+ if (nRelCols <= 0)
+ break;
}
}
}
diff --git a/sw/source/filter/xml/xmltexti.cxx b/sw/source/filter/xml/xmltexti.cxx
index d1b1253b66e5..02851e8e6a48 100644
--- a/sw/source/filter/xml/xmltexti.cxx
+++ b/sw/source/filter/xml/xmltexti.cxx
@@ -932,16 +932,13 @@ void SwXMLTextImportHelper::endAppletOrPlugin(
const sal_Int32 nCount = rParamMap.size();
uno::Sequence< beans::PropertyValue > aCommandSequence( nCount );
- std::map < const OUString, OUString > ::iterator aIter = rParamMap.begin();
- std::map < const OUString, OUString > ::iterator aEnd = rParamMap.end();
sal_Int32 nIndex=0;
- while (aIter != aEnd )
+ for (const auto& rParam : rParamMap )
{
- aCommandSequence[nIndex].Name = (*aIter).first;
+ aCommandSequence[nIndex].Name = rParam.first;
aCommandSequence[nIndex].Handle = -1;
- aCommandSequence[nIndex].Value <<= (*aIter).second;
+ aCommandSequence[nIndex].Value <<= rParam.second;
aCommandSequence[nIndex].State = beans::PropertyState_DIRECT_VALUE;
- ++aIter;
++nIndex;
}
More information about the Libreoffice-commits
mailing list