[Libreoffice-commits] core.git: sc/source
Julien Nabet
serval2412 at yahoo.fr
Fri Nov 10 06:05:22 UTC 2017
sc/source/filter/excel/xecontent.cxx | 19 ++++------
sc/source/filter/oox/excelvbaproject.cxx | 10 ++---
sc/source/filter/oox/worksheethelper.cxx | 57 +++++++++++++++----------------
3 files changed, 42 insertions(+), 44 deletions(-)
New commits:
commit 65e578640f0258768a9253389356dbc63c845b7e
Author: Julien Nabet <serval2412 at yahoo.fr>
Date: Thu Nov 9 21:21:54 2017 +0100
Replace some lists by vectors in sc/source/filter
Change-Id: I85396e3192ca09aba8f97c564f8d80058b362d91
Reviewed-on: https://gerrit.libreoffice.org/44564
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Julien Nabet <serval2412 at yahoo.fr>
diff --git a/sc/source/filter/excel/xecontent.cxx b/sc/source/filter/excel/xecontent.cxx
index 2237811b32f4..8939aadf6113 100644
--- a/sc/source/filter/excel/xecontent.cxx
+++ b/sc/source/filter/excel/xecontent.cxx
@@ -20,7 +20,7 @@
#include <memory>
#include <xecontent.hxx>
-#include <list>
+#include <vector>
#include <algorithm>
#include <com/sun/star/sheet/XAreaLinks.hpp>
#include <com/sun/star/sheet/XAreaLink.hpp>
@@ -92,11 +92,10 @@ public:
void SaveXml( XclExpXmlStream& rStrm );
private:
- typedef ::std::list< XclExpStringRef > XclExpStringList;
typedef ::std::vector< XclExpHashEntry > XclExpHashVec;
typedef ::std::vector< XclExpHashVec > XclExpHashTab;
- XclExpStringList maStringList; /// List of unique strings (in SST ID order).
+ std::vector< XclExpStringRef > maStringVector; /// List of unique strings (in SST ID order).
XclExpHashTab maHashTab; /// Hashed table that manages string pointers.
sal_uInt32 mnTotal; /// Total count of strings (including doubles).
sal_uInt32 mnSize; /// Size of the SST (count of unique strings).
@@ -130,7 +129,7 @@ sal_uInt32 XclExpSstImpl::Insert( XclExpStringRef xString )
if( (aIt == rVec.end()) || (*aIt->mpString != *xString) )
{
nSstIndex = mnSize;
- maStringList.push_back( xString );
+ maStringVector.push_back( xString );
rVec.insert( aIt, aEntry );
++mnSize;
}
@@ -144,7 +143,7 @@ sal_uInt32 XclExpSstImpl::Insert( XclExpStringRef xString )
void XclExpSstImpl::Save( XclExpStream& rStrm )
{
- if( maStringList.empty() )
+ if( maStringVector.empty() )
return;
SvMemoryStream aExtSst( 8192 );
@@ -161,7 +160,7 @@ void XclExpSstImpl::Save( XclExpStream& rStrm )
rStrm.StartRecord( EXC_ID_SST, 8 );
rStrm << mnTotal << mnSize;
- for( XclExpStringList::const_iterator aIt = maStringList.begin(), aEnd = maStringList.end(); aIt != aEnd; ++aIt )
+ for (auto const& elem : maStringVector)
{
if( !nBucketIndex )
{
@@ -173,7 +172,7 @@ void XclExpSstImpl::Save( XclExpStream& rStrm )
.WriteUInt16( 0 ); // reserved
}
- rStrm << **aIt;
+ rStrm << *elem;
if( ++nBucketIndex == nPerBucket )
nBucketIndex = 0;
@@ -195,7 +194,7 @@ void XclExpSstImpl::Save( XclExpStream& rStrm )
void XclExpSstImpl::SaveXml( XclExpXmlStream& rStrm )
{
- if( maStringList.empty() )
+ if( maStringVector.empty() )
return;
sax_fastparser::FSHelperPtr pSst = rStrm.CreateOutputStream(
@@ -212,10 +211,10 @@ void XclExpSstImpl::SaveXml( XclExpXmlStream& rStrm )
XML_uniqueCount, OString::number( mnSize ).getStr(),
FSEND );
- for( XclExpStringList::const_iterator aIt = maStringList.begin(), aEnd = maStringList.end(); aIt != aEnd; ++aIt )
+ for (auto const& elem : maStringVector)
{
pSst->startElement( XML_si, FSEND );
- (*aIt)->WriteXml( rStrm );
+ elem->WriteXml( rStrm );
pSst->endElement( XML_si );
}
diff --git a/sc/source/filter/oox/excelvbaproject.cxx b/sc/source/filter/oox/excelvbaproject.cxx
index dd617ef6e6ce..1f8c24807597 100644
--- a/sc/source/filter/oox/excelvbaproject.cxx
+++ b/sc/source/filter/oox/excelvbaproject.cxx
@@ -19,7 +19,7 @@
#include <excelvbaproject.hxx>
-#include <list>
+#include <vector>
#include <set>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XEnumeration.hpp>
@@ -72,7 +72,7 @@ void ExcelVbaProject::prepareImport()
::std::set< OUString > aUsedCodeNames;
// collect sheets without codenames
- ::std::list< SheetCodeNameInfo > aCodeNameInfos;
+ ::std::vector< SheetCodeNameInfo > aCodeNameInfos;
// iterate over all imported sheets
Reference< XEnumerationAccess > xSheetsEA( mxDocument->getSheets(), UNO_QUERY_THROW );
@@ -98,20 +98,20 @@ void ExcelVbaProject::prepareImport()
}
// create new codenames if sheets do not have one
- for( ::std::list< SheetCodeNameInfo >::iterator aIt = aCodeNameInfos.begin(), aEnd = aCodeNameInfos.end(); aIt != aEnd; ++aIt )
+ for (auto & codeName : aCodeNameInfos)
{
// search for an unused codename
sal_Int32 nCounter = 1;
OUString aCodeName;
do
{
- aCodeName = aIt->maPrefix + OUString::number( nCounter++ );
+ aCodeName = codeName.maPrefix + OUString::number( nCounter++ );
}
while( aUsedCodeNames.count( aCodeName ) > 0 );
aUsedCodeNames.insert( aCodeName );
// set codename at sheet
- aIt->maSheetProps.setProperty( PROP_CodeName, aCodeName );
+ codeName.maSheetProps.setProperty( PROP_CodeName, aCodeName );
// tell base class to create a dummy module
addDummyModule( aCodeName, ModuleType::DOCUMENT );
diff --git a/sc/source/filter/oox/worksheethelper.cxx b/sc/source/filter/oox/worksheethelper.cxx
index e59d76350aef..a9d996d968e8 100644
--- a/sc/source/filter/oox/worksheethelper.cxx
+++ b/sc/source/filter/oox/worksheethelper.cxx
@@ -327,7 +327,6 @@ private:
typedef ::std::map< sal_Int32, ColumnModelRange > ColumnModelRangeMap;
typedef ::std::pair< RowModel, sal_Int32 > RowModelRange;
typedef ::std::map< sal_Int32, RowModelRange > RowModelRangeMap;
- typedef ::std::list< HyperlinkModel > HyperlinkModelList;
typedef ::std::list< ValidationModel > ValidationModelList;
/** Inserts all imported hyperlinks into their cell ranges. */
@@ -371,8 +370,8 @@ private:
ColumnModelRangeMap maColModels; /// Ranges of columns sorted by first column index.
RowModel maDefRowModel; /// Default row formatting.
RowModelRangeMap maRowModels; /// Ranges of rows sorted by first row index.
- HyperlinkModelList maHyperlinks; /// Cell ranges containing hyperlinks.
- ValidationModelList maValidations; /// Cell ranges containing data validation settings.
+ std::vector< HyperlinkModel > maHyperlinks; /// Cell ranges containing hyperlinks.
+ std::vector< ValidationModel > maValidations; /// Cell ranges containing data validation settings.
SheetDataBuffer maSheetData; /// Buffer for cell contents and cell formatting.
CondFormatBuffer maCondFormats; /// Buffer for conditional formatting.
CommentsBuffer maComments; /// Buffer for all cell comments in this sheet.
@@ -946,13 +945,13 @@ void WorksheetGlobals::finalizeDrawingImport()
void WorksheetGlobals::finalizeHyperlinkRanges()
{
- for( HyperlinkModelList::const_iterator aIt = maHyperlinks.begin(), aEnd = maHyperlinks.end(); aIt != aEnd; ++aIt )
+ for (auto const& link : maHyperlinks)
{
- OUString aUrl = getHyperlinkUrl( *aIt );
+ OUString aUrl = getHyperlinkUrl(link);
// try to insert URL into each cell of the range
if( !aUrl.isEmpty() )
- for( ScAddress aAddress( aIt->maRange.aStart.Col(), aIt->maRange.aStart.Row(), getSheetIndex() ); aAddress.Row() <= aIt->maRange.aEnd.Row(); aAddress.IncRow() )
- for( aAddress.SetCol(aIt->maRange.aStart.Col()); aAddress.Col() <= aIt->maRange.aEnd.Col(); aAddress.IncCol() )
+ for( ScAddress aAddress(link.maRange.aStart.Col(), link.maRange.aStart.Row(), getSheetIndex() ); aAddress.Row() <= link.maRange.aEnd.Row(); aAddress.IncRow() )
+ for( aAddress.SetCol(link.maRange.aStart.Col()); aAddress.Col() <= link.maRange.aEnd.Col(); aAddress.IncCol() )
insertHyperlink( aAddress, aUrl );
}
}
@@ -1030,9 +1029,9 @@ void WorksheetGlobals::insertHyperlink( const ScAddress& rAddress, const OUStrin
void WorksheetGlobals::finalizeValidationRanges() const
{
- for( ValidationModelList::const_iterator aIt = maValidations.begin(), aEnd = maValidations.end(); aIt != aEnd; ++aIt )
+ for (auto const& validation : maValidations)
{
- PropertySet aPropSet( getCellRangeList( aIt->maRanges ) );
+ PropertySet aPropSet( getCellRangeList(validation.maRanges) );
Reference< XPropertySet > xValidation( aPropSet.getAnyProperty( PROP_Validation ), UNO_QUERY );
if( xValidation.is() )
@@ -1042,7 +1041,7 @@ void WorksheetGlobals::finalizeValidationRanges() const
try
{
sal_Int32 nIndex = 0;
- OUString aToken = aIt->msRef.getToken( 0, ' ', nIndex );
+ OUString aToken = validation.msRef.getToken( 0, ' ', nIndex );
Reference<XSpreadsheet> xSheet = getSheetFromDoc( getCurrentSheetIndex() );
Reference<XCellRange> xDBCellRange;
@@ -1061,7 +1060,7 @@ void WorksheetGlobals::finalizeValidationRanges() const
// convert validation type to API enum
ValidationType eType = ValidationType_ANY;
- switch( aIt->mnType )
+ switch( validation.mnType )
{
case XML_custom: eType = ValidationType_CUSTOM; break;
case XML_date: eType = ValidationType_DATE; break;
@@ -1077,7 +1076,7 @@ void WorksheetGlobals::finalizeValidationRanges() const
// convert error alert style to API enum
ValidationAlertStyle eAlertStyle = ValidationAlertStyle_STOP;
- switch( aIt->mnErrorStyle )
+ switch( validation.mnErrorStyle )
{
case XML_information: eAlertStyle = ValidationAlertStyle_INFO; break;
case XML_stop: eAlertStyle = ValidationAlertStyle_STOP; break;
@@ -1087,30 +1086,30 @@ void WorksheetGlobals::finalizeValidationRanges() const
aValProps.setProperty( PROP_ErrorAlertStyle, eAlertStyle );
// convert dropdown style to API visibility constants
- sal_Int16 nVisibility = aIt->mbNoDropDown ? TableValidationVisibility::INVISIBLE : TableValidationVisibility::UNSORTED;
+ sal_Int16 nVisibility = validation.mbNoDropDown ? TableValidationVisibility::INVISIBLE : TableValidationVisibility::UNSORTED;
aValProps.setProperty( PROP_ShowList, nVisibility );
// messages
- aValProps.setProperty( PROP_ShowInputMessage, aIt->mbShowInputMsg );
- aValProps.setProperty( PROP_InputTitle, aIt->maInputTitle );
- aValProps.setProperty( PROP_InputMessage, aIt->maInputMessage );
- aValProps.setProperty( PROP_ShowErrorMessage, aIt->mbShowErrorMsg );
- aValProps.setProperty( PROP_ErrorTitle, aIt->maErrorTitle );
- aValProps.setProperty( PROP_ErrorMessage, aIt->maErrorMessage );
+ aValProps.setProperty( PROP_ShowInputMessage, validation.mbShowInputMsg );
+ aValProps.setProperty( PROP_InputTitle, validation.maInputTitle );
+ aValProps.setProperty( PROP_InputMessage, validation.maInputMessage );
+ aValProps.setProperty( PROP_ShowErrorMessage, validation.mbShowErrorMsg );
+ aValProps.setProperty( PROP_ErrorTitle, validation.maErrorTitle );
+ aValProps.setProperty( PROP_ErrorMessage, validation.maErrorMessage );
// allow blank cells
- aValProps.setProperty( PROP_IgnoreBlankCells, aIt->mbAllowBlank );
+ aValProps.setProperty( PROP_IgnoreBlankCells, validation.mbAllowBlank );
try
{
// condition operator
Reference< XSheetCondition2 > xSheetCond( xValidation, UNO_QUERY_THROW );
- xSheetCond->setConditionOperator( CondFormatBuffer::convertToApiOperator( aIt->mnOperator ) );
+ xSheetCond->setConditionOperator( CondFormatBuffer::convertToApiOperator( validation.mnOperator ) );
// condition formulas
Reference< XMultiFormulaTokens > xTokens( xValidation, UNO_QUERY_THROW );
- xTokens->setTokens( 0, aIt->maTokens1 );
- xTokens->setTokens( 1, aIt->maTokens2 );
+ xTokens->setTokens( 0, validation.maTokens1 );
+ xTokens->setTokens( 1, validation.maTokens2 );
}
catch( Exception& )
{
@@ -1129,15 +1128,15 @@ void WorksheetGlobals::convertColumns()
// stores first grouped column index for each level
OutlineLevelVec aColLevels;
- for( ColumnModelRangeMap::iterator aIt = maColModels.begin(), aEnd = maColModels.end(); aIt != aEnd; ++aIt )
+ for (auto const& colModel : maColModels)
{
// column indexes are stored 0-based in maColModels
- ValueRange aColRange( ::std::max( aIt->first, nNextCol ), ::std::min( aIt->second.second, nMaxCol ) );
+ ValueRange aColRange( ::std::max( colModel.first, nNextCol ), ::std::min( colModel.second.second, nMaxCol ) );
// process gap between two column models, use default column model
if( nNextCol < aColRange.mnFirst )
convertColumns( aColLevels, ValueRange( nNextCol, aColRange.mnFirst - 1 ), maDefColModel );
// process the column model
- convertColumns( aColLevels, aColRange, aIt->second.first );
+ convertColumns( aColLevels, aColRange, colModel.second.first );
// cache next column to be processed
nNextCol = aColRange.mnLast + 1;
}
@@ -1188,15 +1187,15 @@ void WorksheetGlobals::convertRows()
// stores first grouped row index for each level
OutlineLevelVec aRowLevels;
- for( RowModelRangeMap::iterator aIt = maRowModels.begin(), aEnd = maRowModels.end(); aIt != aEnd; ++aIt )
+ for (auto const& rowModel : maRowModels)
{
// row indexes are stored 0-based in maRowModels
- ValueRange aRowRange( ::std::max( aIt->first, nNextRow ), ::std::min( aIt->second.second, nMaxRow ) );
+ ValueRange aRowRange( ::std::max( rowModel.first, nNextRow ), ::std::min( rowModel.second.second, nMaxRow ) );
// process gap between two row models, use default row model
if( nNextRow < aRowRange.mnFirst )
convertRows( aRowLevels, ValueRange( nNextRow, aRowRange.mnFirst - 1 ), maDefRowModel );
// process the row model
- convertRows( aRowLevels, aRowRange, aIt->second.first, maDefRowModel.mfHeight );
+ convertRows( aRowLevels, aRowRange, rowModel.second.first, maDefRowModel.mfHeight );
// cache next row to be processed
nNextRow = aRowRange.mnLast + 1;
}
More information about the Libreoffice-commits
mailing list