summaryrefslogtreecommitdiff
path: root/reportdesign/source
diff options
context:
space:
mode:
authorNoel <noelgrandin@gmail.com>2020-12-15 09:38:19 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2020-12-15 10:50:28 +0100
commita79e6a7cf1ce3be46e4339a54b013ddaa534dd39 (patch)
tree3de6cf2d804dfe0e929f999103fa1c2c01b9ec53 /reportdesign/source
parent15e4427e8fb56a143caa28b8a3120f3761fc77a5 (diff)
use views to parse rather than allocating OUString
Change-Id: If0a848c64ce8077d1681661873629c83307cf8b2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107736 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'reportdesign/source')
-rw-r--r--reportdesign/source/filter/xml/xmlColumn.cxx4
-rw-r--r--reportdesign/source/filter/xml/xmlComponent.cxx4
-rw-r--r--reportdesign/source/filter/xml/xmlCondPrtExpr.cxx4
-rw-r--r--reportdesign/source/filter/xml/xmlControlProperty.cxx8
-rw-r--r--reportdesign/source/filter/xml/xmlFormatCondition.cxx9
-rw-r--r--reportdesign/source/filter/xml/xmlFormattedField.cxx4
-rw-r--r--reportdesign/source/filter/xml/xmlFunction.cxx15
-rw-r--r--reportdesign/source/filter/xml/xmlGroup.cxx12
-rw-r--r--reportdesign/source/filter/xml/xmlImage.cxx12
-rw-r--r--reportdesign/source/filter/xml/xmlReport.cxx17
-rw-r--r--reportdesign/source/filter/xml/xmlReportElement.cxx7
-rw-r--r--reportdesign/source/filter/xml/xmlSection.cxx9
-rw-r--r--reportdesign/source/filter/xml/xmlTable.cxx15
13 files changed, 44 insertions, 76 deletions
diff --git a/reportdesign/source/filter/xml/xmlColumn.cxx b/reportdesign/source/filter/xml/xmlColumn.cxx
index f98f6507ffc5..9693ee3ceb0d 100644
--- a/reportdesign/source/filter/xml/xmlColumn.cxx
+++ b/reportdesign/source/filter/xml/xmlColumn.cxx
@@ -55,12 +55,10 @@ OXMLRowColumn::OXMLRowColumn( ORptFilter& rImport
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(TABLE, XML_STYLE_NAME):
- fillStyle(sValue);
+ fillStyle(aIter.toString());
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlComponent.cxx b/reportdesign/source/filter/xml/xmlComponent.cxx
index ab55e9215bf3..fc87f8da56e6 100644
--- a/reportdesign/source/filter/xml/xmlComponent.cxx
+++ b/reportdesign/source/filter/xml/xmlComponent.cxx
@@ -42,14 +42,12 @@ OXMLComponent::OXMLComponent( ORptFilter& _rImport
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
try
{
switch( aIter.getToken() )
{
case XML_ELEMENT(DRAW, XML_NAME):
- m_xComponent->setName(sValue);
+ m_xComponent->setName(aIter.toString());
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlCondPrtExpr.cxx b/reportdesign/source/filter/xml/xmlCondPrtExpr.cxx
index 35167e338095..0ef9c8d98f61 100644
--- a/reportdesign/source/filter/xml/xmlCondPrtExpr.cxx
+++ b/reportdesign/source/filter/xml/xmlCondPrtExpr.cxx
@@ -43,12 +43,10 @@ OXMLCondPrtExpr::OXMLCondPrtExpr( ORptFilter& _rImport
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_FORMULA):
- m_xComponent->setPropertyValue(PROPERTY_CONDITIONALPRINTEXPRESSION,uno::makeAny(ORptFilter::convertFormula(sValue)));
+ m_xComponent->setPropertyValue(PROPERTY_CONDITIONALPRINTEXPRESSION,uno::makeAny(ORptFilter::convertFormula(aIter.toString())));
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlControlProperty.cxx b/reportdesign/source/filter/xml/xmlControlProperty.cxx
index fce0ef4cba11..1bc323d466c1 100644
--- a/reportdesign/source/filter/xml/xmlControlProperty.cxx
+++ b/reportdesign/source/filter/xml/xmlControlProperty.cxx
@@ -64,12 +64,10 @@ OXMLControlProperty::OXMLControlProperty( ORptFilter& rImport
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(FORM, XML_LIST_PROPERTY):
- m_bIsList = sValue == "true";
+ m_bIsList = aIter.toView() == "true";
break;
case XML_ELEMENT(OOO, XML_VALUE_TYPE):
{
@@ -88,14 +86,14 @@ OXMLControlProperty::OXMLControlProperty( ORptFilter& rImport
{ GetXMLToken( XML_VOID) , cppu::UnoType<void>::get() },
};
- const std::map< OUString, css::uno::Type >::const_iterator aTypePos = s_aTypeNameMap.find(sValue);
+ const std::map< OUString, css::uno::Type >::const_iterator aTypePos = s_aTypeNameMap.find(aIter.toString());
OSL_ENSURE(s_aTypeNameMap.end() != aTypePos, "OXMLControlProperty::OXMLControlProperty: invalid type!");
if (s_aTypeNameMap.end() != aTypePos)
m_aPropType = aTypePos->second;
}
break;
case XML_ELEMENT(FORM, XML_PROPERTY_NAME):
- m_aSetting.Name = sValue;
+ m_aSetting.Name = aIter.toString();
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlFormatCondition.cxx b/reportdesign/source/filter/xml/xmlFormatCondition.cxx
index 235f6931778f..63aae9301105 100644
--- a/reportdesign/source/filter/xml/xmlFormatCondition.cxx
+++ b/reportdesign/source/filter/xml/xmlFormatCondition.cxx
@@ -42,23 +42,20 @@ OXMLFormatCondition::OXMLFormatCondition( ORptFilter& rImport,
{
OSL_ENSURE(m_xComponent.is(),"Component is NULL!");
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
try
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_ENABLED):
- m_xComponent->setEnabled(sValue == s_sTRUE);
+ m_xComponent->setEnabled(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_FORMULA):
- m_xComponent->setFormula(ORptFilter::convertFormula(sValue));
+ m_xComponent->setFormula(ORptFilter::convertFormula(aIter.toString()));
break;
case XML_ELEMENT(REPORT, XML_STYLE_NAME):
- m_sStyleName = sValue;
+ m_sStyleName = aIter.toString();
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlFormattedField.cxx b/reportdesign/source/filter/xml/xmlFormattedField.cxx
index c34f8adf2414..b453dbc4da79 100644
--- a/reportdesign/source/filter/xml/xmlFormattedField.cxx
+++ b/reportdesign/source/filter/xml/xmlFormattedField.cxx
@@ -43,12 +43,10 @@ OXMLFormattedField::OXMLFormattedField( ORptFilter& rImport
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_FORMULA):
- _xComponent->setDataField(ORptFilter::convertFormula(sValue));
+ _xComponent->setDataField(ORptFilter::convertFormula(aIter.toString()));
break;
case XML_ELEMENT(REPORT, XML_SELECT_PAGE):
_xComponent->setDataField("rpt:PageNumber()");
diff --git a/reportdesign/source/filter/xml/xmlFunction.cxx b/reportdesign/source/filter/xml/xmlFunction.cxx
index 62dcaa9256f7..cd6d072d24ac 100644
--- a/reportdesign/source/filter/xml/xmlFunction.cxx
+++ b/reportdesign/source/filter/xml/xmlFunction.cxx
@@ -45,30 +45,27 @@ OXMLFunction::OXMLFunction( ORptFilter& _rImport
OSL_ENSURE(m_xFunctions.is(),"Functions is NULL!");
m_xFunction = m_xFunctions->createFunction();
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
try
{
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_NAME):
- m_xFunction->setName(sValue);
+ m_xFunction->setName(aIter.toString());
break;
case XML_ELEMENT(REPORT, XML_FORMULA):
- m_xFunction->setFormula(ORptFilter::convertFormula(sValue));
+ m_xFunction->setFormula(ORptFilter::convertFormula(aIter.toString()));
break;
case XML_ELEMENT(REPORT, XML_PRE_EVALUATED):
- m_xFunction->setPreEvaluated(sValue == s_sTRUE);
+ m_xFunction->setPreEvaluated(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_INITIAL_FORMULA):
- if ( !sValue.isEmpty() )
- m_xFunction->setInitialFormula(beans::Optional< OUString>(true,ORptFilter::convertFormula(sValue)));
+ if ( !aIter.isEmpty() )
+ m_xFunction->setInitialFormula(beans::Optional< OUString>(true,ORptFilter::convertFormula(aIter.toString())));
break;
case XML_ELEMENT(REPORT, XML_DEEP_TRAVERSING):
- m_xFunction->setDeepTraversing(sValue == s_sTRUE);
+ m_xFunction->setDeepTraversing(IsXMLToken(aIter, XML_TRUE));
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlGroup.cxx b/reportdesign/source/filter/xml/xmlGroup.cxx
index 94f6028494ce..b8a8e10abc10 100644
--- a/reportdesign/source/filter/xml/xmlGroup.cxx
+++ b/reportdesign/source/filter/xml/xmlGroup.cxx
@@ -58,26 +58,24 @@ OXMLGroup::OXMLGroup( ORptFilter& _rImport
m_xGroup = m_xGroups->createGroup();
m_xGroup->setSortAscending(false);// the default value has to be set
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
try
{
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_START_NEW_COLUMN):
- m_xGroup->setStartNewColumn(sValue == s_sTRUE);
+ m_xGroup->setStartNewColumn(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_RESET_PAGE_NUMBER):
- m_xGroup->setResetPageNumber(sValue == s_sTRUE);
+ m_xGroup->setResetPageNumber(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_SORT_ASCENDING):
- m_xGroup->setSortAscending(sValue == s_sTRUE);
+ m_xGroup->setSortAscending(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_GROUP_EXPRESSION):
{
+ OUString sValue = aIter.toString();
sal_Int32 nLen = sValue.getLength();
if ( nLen )
{
@@ -156,7 +154,7 @@ OXMLGroup::OXMLGroup( ORptFilter& _rImport
}
break;
case XML_ELEMENT(REPORT, XML_KEEP_TOGETHER):
- m_xGroup->setKeepTogether(lcl_getKeepTogetherOption(sValue));
+ m_xGroup->setKeepTogether(lcl_getKeepTogetherOption(aIter.toString()));
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlImage.cxx b/reportdesign/source/filter/xml/xmlImage.cxx
index 9f27b6151e82..d8736f5ca032 100644
--- a/reportdesign/source/filter/xml/xmlImage.cxx
+++ b/reportdesign/source/filter/xml/xmlImage.cxx
@@ -44,44 +44,42 @@ OXMLImage::OXMLImage( ORptFilter& rImport,
{
OSL_ENSURE(m_xReportComponent.is(),"Component is NULL!");
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
try
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(FORM, XML_IMAGE_DATA):
{
SvtPathOptions aPathOptions;
+ OUString sValue = aIter.toString();
sValue = aPathOptions.SubstituteVariable(sValue);
_xComponent->setImageURL(rImport.GetAbsoluteReference( sValue ));
break;
}
case XML_ELEMENT(REPORT, XML_PRESERVE_IRI):
- _xComponent->setPreserveIRI(s_sTRUE == sValue);
+ _xComponent->setPreserveIRI(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_SCALE):
{
sal_Int16 nRet = awt::ImageScaleMode::NONE;
- if ( s_sTRUE == sValue )
+ if ( IsXMLToken(aIter, XML_TRUE) )
{
nRet = awt::ImageScaleMode::ANISOTROPIC;
}
else
{
const SvXMLEnumMapEntry<sal_Int16>* aXML_EnumMap = OXMLHelper::GetImageScaleOptions();
- bool bConvertOk = SvXMLUnitConverter::convertEnum( nRet, sValue, aXML_EnumMap );
+ bool bConvertOk = SvXMLUnitConverter::convertEnum( nRet, aIter.toString(), aXML_EnumMap );
SAL_WARN_IF(!bConvertOk, "reportdesign", "convertEnum failed");
}
_xComponent->setScaleMode( nRet );
break;
}
case XML_ELEMENT(REPORT, XML_FORMULA):
- _xComponent->setDataField(ORptFilter::convertFormula(sValue));
+ _xComponent->setDataField(ORptFilter::convertFormula(aIter.toString()));
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlReport.cxx b/reportdesign/source/filter/xml/xmlReport.cxx
index a559946fc848..01a0a2a76765 100644
--- a/reportdesign/source/filter/xml/xmlReport.cxx
+++ b/reportdesign/source/filter/xml/xmlReport.cxx
@@ -49,42 +49,39 @@ OXMLReport::OXMLReport( ORptFilter& rImport,
impl_initRuntimeDefaults();
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
try
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_COMMAND_TYPE):
{
sal_Int32 nRet = sdb::CommandType::COMMAND;
const SvXMLEnumMapEntry<sal_Int32>* aXML_EnumMap = OXMLHelper::GetCommandTypeOptions();
- bool bConvertOk = SvXMLUnitConverter::convertEnum( nRet, sValue, aXML_EnumMap );
+ bool bConvertOk = SvXMLUnitConverter::convertEnum( nRet, aIter.toString(), aXML_EnumMap );
SAL_WARN_IF(!bConvertOk, "reportdesign", "convertEnum failed");
m_xReportDefinition->setCommandType(nRet);
}
break;
case XML_ELEMENT(REPORT, XML_COMMAND):
- m_xReportDefinition->setCommand(sValue);
+ m_xReportDefinition->setCommand(aIter.toString());
break;
case XML_ELEMENT(REPORT, XML_FILTER):
- m_xReportDefinition->setFilter(sValue);
+ m_xReportDefinition->setFilter(aIter.toString());
break;
case XML_ELEMENT(REPORT, XML_CAPTION):
case XML_ELEMENT(OFFICE, XML_CAPTION):
- m_xReportDefinition->setCaption(sValue);
+ m_xReportDefinition->setCaption(aIter.toString());
break;
case XML_ELEMENT(REPORT, XML_ESCAPE_PROCESSING):
- m_xReportDefinition->setEscapeProcessing(sValue == s_sTRUE);
+ m_xReportDefinition->setEscapeProcessing(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(OFFICE, XML_MIMETYPE):
- m_xReportDefinition->setMimeType(sValue);
+ m_xReportDefinition->setMimeType(aIter.toString());
break;
case XML_ELEMENT(DRAW, XML_NAME):
- m_xReportDefinition->setName(sValue);
+ m_xReportDefinition->setName(aIter.toString());
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlReportElement.cxx b/reportdesign/source/filter/xml/xmlReportElement.cxx
index 0c49c9fb47e3..e488fb50a41c 100644
--- a/reportdesign/source/filter/xml/xmlReportElement.cxx
+++ b/reportdesign/source/filter/xml/xmlReportElement.cxx
@@ -45,20 +45,17 @@ OXMLReportElement::OXMLReportElement( ORptFilter& rImport,
OSL_ENSURE(m_xComponent.is(),"Component is NULL!");
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
try
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_PRINT_WHEN_GROUP_CHANGE):
- m_xComponent->setPrintWhenGroupChange(s_sTRUE == sValue);
+ m_xComponent->setPrintWhenGroupChange(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_PRINT_REPEATED_VALUES):
- m_xComponent->setPrintRepeatedValues(sValue == s_sTRUE);
+ m_xComponent->setPrintRepeatedValues(IsXMLToken(aIter, XML_TRUE));
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlSection.cxx b/reportdesign/source/filter/xml/xmlSection.cxx
index 6e1954ab0456..71a458947fdd 100644
--- a/reportdesign/source/filter/xml/xmlSection.cxx
+++ b/reportdesign/source/filter/xml/xmlSection.cxx
@@ -55,23 +55,20 @@ OXMLSection::OXMLSection( ORptFilter& rImport,
if (!m_xSection.is())
return;
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
try
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_PAGE_PRINT_OPTION):
if ( _bPageHeader )
- m_xSection->getReportDefinition()->setPageHeaderOption(lcl_getReportPrintOption(sValue));
+ m_xSection->getReportDefinition()->setPageHeaderOption(lcl_getReportPrintOption(aIter.toString()));
else
- m_xSection->getReportDefinition()->setPageFooterOption(lcl_getReportPrintOption(sValue));
+ m_xSection->getReportDefinition()->setPageFooterOption(lcl_getReportPrintOption(aIter.toString()));
break;
case XML_ELEMENT(REPORT, XML_REPEAT_SECTION):
- m_xSection->setRepeatSection(sValue == s_sTRUE );
+ m_xSection->setRepeatSection(IsXMLToken(aIter, XML_TRUE));
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);
diff --git a/reportdesign/source/filter/xml/xmlTable.cxx b/reportdesign/source/filter/xml/xmlTable.cxx
index 2c3bc48cbdda..f6934e2a3ae6 100644
--- a/reportdesign/source/filter/xml/xmlTable.cxx
+++ b/reportdesign/source/filter/xml/xmlTable.cxx
@@ -72,32 +72,29 @@ OXMLTable::OXMLTable( ORptFilter& rImport
if (!m_xSection.is())
return;
- static const OUString s_sTRUE = ::xmloff::token::GetXMLToken(XML_TRUE);
try
{
for (auto &aIter : sax_fastparser::castToFastAttributeList( _xAttrList ))
{
- OUString sValue = aIter.toString();
-
switch( aIter.getToken() )
{
case XML_ELEMENT(REPORT, XML_VISIBLE):
- m_xSection->setVisible(sValue == s_sTRUE);
+ m_xSection->setVisible(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(REPORT, XML_FORCE_NEW_PAGE):
- m_xSection->setForceNewPage(lcl_getForceNewPageOption(sValue));
+ m_xSection->setForceNewPage(lcl_getForceNewPageOption(aIter.toString()));
break;
case XML_ELEMENT(REPORT, XML_FORCE_NEW_COLUMN):
- m_xSection->setNewRowOrCol(lcl_getForceNewPageOption(sValue));
+ m_xSection->setNewRowOrCol(lcl_getForceNewPageOption(aIter.toString()));
break;
case XML_ELEMENT(REPORT, XML_KEEP_TOGETHER):
- m_xSection->setKeepTogether(sValue == s_sTRUE);
+ m_xSection->setKeepTogether(IsXMLToken(aIter, XML_TRUE));
break;
case XML_ELEMENT(TABLE, XML_NAME):
- m_xSection->setName(sValue);
+ m_xSection->setName(aIter.toString());
break;
case XML_ELEMENT(TABLE, XML_STYLE_NAME):
- m_sStyleName = sValue;
+ m_sStyleName = aIter.toString();
break;
default:
XMLOFF_WARN_UNKNOWN("reportdesign", aIter);