diff options
author | Mohammed Abdul Azeem <azeemmysore@gmail.com> | 2017-07-28 23:00:25 +0530 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2017-07-28 22:15:01 +0200 |
commit | 81164892e16f7f014e32403f63ed78ba41950aec (patch) | |
tree | 6e5ce2b6a67f451d03980c26323993ca01a85b9e | |
parent | f6fa7427858e3c9a5ac12ac30dbc99afdc066dfc (diff) |
Moving legacy contexts to FastContexts:
ScXMLDDELinkContext
ScXMLDDESourceContext
ScXMLDDETableContext
ScXMLDDEColumnContext
ScXMLDDERowContext
ScXMLDDECellContext
Change-Id: I8f272ea395e125316268d2ec77e4be44389e5542
Reviewed-on: https://gerrit.libreoffice.org/40540
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
-rw-r--r-- | sc/source/filter/xml/XMLConsolidationContext.cxx | 8 | ||||
-rw-r--r-- | sc/source/filter/xml/XMLConsolidationContext.hxx | 5 | ||||
-rw-r--r-- | sc/source/filter/xml/XMLDDELinksContext.cxx | 302 | ||||
-rw-r--r-- | sc/source/filter/xml/XMLDDELinksContext.hxx | 74 |
4 files changed, 143 insertions, 246 deletions
diff --git a/sc/source/filter/xml/XMLConsolidationContext.cxx b/sc/source/filter/xml/XMLConsolidationContext.cxx index 30b863395e81..cf4c16e4a9ae 100644 --- a/sc/source/filter/xml/XMLConsolidationContext.cxx +++ b/sc/source/filter/xml/XMLConsolidationContext.cxx @@ -77,14 +77,6 @@ ScXMLConsolidationContext::~ScXMLConsolidationContext() GetScImport().UnlockSolarMutex(); } -SvXMLImportContext *ScXMLConsolidationContext::CreateChildContext( - sal_uInt16 nPrefix, - const OUString& rLName, - const uno::Reference< xml::sax::XAttributeList>& /* xAttrList */ ) -{ - return new SvXMLImportContext( GetImport(), nPrefix, rLName ); -} - void SAL_CALL ScXMLConsolidationContext::endFastElement( sal_Int32 /*nElement*/ ) { if (bTargetAddr) diff --git a/sc/source/filter/xml/XMLConsolidationContext.hxx b/sc/source/filter/xml/XMLConsolidationContext.hxx index 3a7ebf272331..cfc0097182d4 100644 --- a/sc/source/filter/xml/XMLConsolidationContext.hxx +++ b/sc/source/filter/xml/XMLConsolidationContext.hxx @@ -45,11 +45,6 @@ public: ); virtual ~ScXMLConsolidationContext() override; - virtual SvXMLImportContext* CreateChildContext( - sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList - ) override; virtual void SAL_CALL endFastElement( sal_Int32 nElement ) override; }; diff --git a/sc/source/filter/xml/XMLDDELinksContext.cxx b/sc/source/filter/xml/XMLDDELinksContext.cxx index dc179e1c1451..59b9fbb5df66 100644 --- a/sc/source/filter/xml/XMLDDELinksContext.cxx +++ b/sc/source/filter/xml/XMLDDELinksContext.cxx @@ -45,26 +45,24 @@ ScXMLDDELinksContext::~ScXMLDDELinksContext() GetScImport().UnlockSolarMutex(); } -SvXMLImportContext *ScXMLDDELinksContext::CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) +uno::Reference< xml::sax::XFastContextHandler > SAL_CALL ScXMLDDELinksContext::createFastChildContext( + sal_Int32 nElement, const uno::Reference< xml::sax::XFastAttributeList >& xAttrList ) { SvXMLImportContext *pContext = nullptr; - if ((nPrefix == XML_NAMESPACE_TABLE) && IsXMLToken(rLName, XML_DDE_LINK)) - pContext = new ScXMLDDELinkContext(GetScImport(), nPrefix, rLName, xAttrList); + if ( nElement == XML_ELEMENT( TABLE, XML_DDE_LINK) ) + pContext = new ScXMLDDELinkContext(GetScImport(), nElement, xAttrList); if( !pContext ) - pContext = new SvXMLImportContext( GetImport(), nPrefix, rLName ); + pContext = new SvXMLImportContext( GetImport() ); return pContext; } ScXMLDDELinkContext::ScXMLDDELinkContext( ScXMLImport& rImport, - sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& /* xAttrList */ ) : - ScXMLImportContext( rImport, nPrfx, rLName ), + sal_Int32 /*nElement*/, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& /* xAttrList */ ) : + ScXMLImportContext( rImport ), aDDELinkTable(), aDDELinkRow(), sApplication(), @@ -82,19 +80,23 @@ ScXMLDDELinkContext::~ScXMLDDELinkContext() { } -SvXMLImportContext *ScXMLDDELinkContext::CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) +uno::Reference< xml::sax::XFastContextHandler > SAL_CALL ScXMLDDELinkContext::createFastChildContext( + sal_Int32 nElement, const uno::Reference< xml::sax::XFastAttributeList >& xAttrList ) { SvXMLImportContext *pContext = nullptr; - if ((nPrefix == XML_NAMESPACE_OFFICE) && IsXMLToken(rLName, XML_DDE_SOURCE)) - pContext = new ScXMLDDESourceContext(GetScImport(), nPrefix, rLName, xAttrList, this); - else if ((nPrefix == XML_NAMESPACE_TABLE) && IsXMLToken(rLName, XML_TABLE)) - pContext = new ScXMLDDETableContext(GetScImport(), nPrefix, rLName, xAttrList, this); + switch (nElement) + { + case XML_ELEMENT( OFFICE, XML_DDE_SOURCE ): + pContext = new ScXMLDDESourceContext(GetScImport(), nElement, xAttrList, this); + break; + case XML_ELEMENT( TABLE, XML_TABLE ): + pContext = new ScXMLDDETableContext(GetScImport(), nElement, xAttrList, this); + break; + } if( !pContext ) - pContext = new SvXMLImportContext( GetImport(), nPrefix, rLName ); + pContext = new SvXMLImportContext( GetImport() ); return pContext; } @@ -130,7 +132,7 @@ void ScXMLDDELinkContext::AddRowsToTable(const sal_Int32 nRowsP) aDDELinkRow.clear(); } -void ScXMLDDELinkContext::EndElement() +void SAL_CALL ScXMLDDELinkContext::endFastElement( sal_Int32 /*nElement*/ ) { ScDocument* pDoc = GetScImport().GetDocument(); if (nPosition > -1 && nColumns && nRows) @@ -184,41 +186,39 @@ void ScXMLDDELinkContext::EndElement() } ScXMLDDESourceContext::ScXMLDDESourceContext( ScXMLImport& rImport, - sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + sal_Int32 /*nElement*/, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pTempDDELink) : - ScXMLImportContext( rImport, nPrfx, rLName ), + ScXMLImportContext( rImport ), pDDELink(pTempDDELink) { - if( !xAttrList.is() ) return; - - sal_Int16 nAttrCount = xAttrList->getLength(); - - for( sal_Int16 nIndex = 0; nIndex < nAttrCount; ++nIndex ) + if ( xAttrList.is() ) { - const OUString& sAttrName (xAttrList->getNameByIndex( nIndex )); - const OUString& sValue (xAttrList->getValueByIndex( nIndex )); - OUString aLocalName; - sal_uInt16 nPrefix = GetScImport().GetNamespaceMap().GetKeyByAttrName( sAttrName, &aLocalName ); + sax_fastparser::FastAttributeList *pAttribList = + sax_fastparser::FastAttributeList::castToFastAttributeList( xAttrList ); - if (nPrefix == XML_NAMESPACE_OFFICE) + for (auto &aIter : *pAttribList) { - if (IsXMLToken(aLocalName, XML_DDE_APPLICATION)) - pDDELink->SetApplication(sValue); - else if (IsXMLToken(aLocalName, XML_DDE_TOPIC)) - pDDELink->SetTopic(sValue); - else if (IsXMLToken(aLocalName, XML_DDE_ITEM)) - pDDELink->SetItem(sValue); - } - else if ((nPrefix == XML_NAMESPACE_TABLE) && IsXMLToken(aLocalName, XML_CONVERSION_MODE)) - { - if (IsXMLToken(sValue, XML_INTO_ENGLISH_NUMBER)) - pDDELink->SetMode(SC_DDE_ENGLISH); - else if (IsXMLToken(sValue, XML_KEEP_TEXT)) - pDDELink->SetMode(SC_DDE_TEXT); - else - pDDELink->SetMode(SC_DDE_DEFAULT); + switch (aIter.getToken()) + { + case XML_ELEMENT( OFFICE, XML_DDE_APPLICATION ): + pDDELink->SetApplication(aIter.toString()); + break; + case XML_ELEMENT( OFFICE, XML_DDE_TOPIC ): + pDDELink->SetTopic(aIter.toString()); + break; + case XML_ELEMENT( OFFICE, XML_DDE_ITEM ): + pDDELink->SetItem(aIter.toString()); + break; + case XML_ELEMENT( TABLE, XML_CONVERSION_MODE ): + if (IsXMLToken(aIter, XML_INTO_ENGLISH_NUMBER)) + pDDELink->SetMode(SC_DDE_ENGLISH); + else if (IsXMLToken(aIter, XML_KEEP_TEXT)) + pDDELink->SetMode(SC_DDE_TEXT); + else + pDDELink->SetMode(SC_DDE_DEFAULT); + break; + } } } } @@ -227,26 +227,16 @@ ScXMLDDESourceContext::~ScXMLDDESourceContext() { } -SvXMLImportContext *ScXMLDDESourceContext::CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& /* xAttrList */ ) -{ - SvXMLImportContext *pContext = new SvXMLImportContext( GetImport(), nPrefix, rLName ); - - return pContext; -} - -void ScXMLDDESourceContext::EndElement() +void SAL_CALL ScXMLDDESourceContext::endFastElement( sal_Int32 /*nElement*/ ) { pDDELink->CreateDDELink(); } ScXMLDDETableContext::ScXMLDDETableContext( ScXMLImport& rImport, - sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& /* xAttrList */, + sal_Int32 /*nElement*/, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& /* xAttrList */, ScXMLDDELinkContext* pTempDDELink) : - ScXMLImportContext( rImport, nPrfx, rLName ), + ScXMLImportContext( rImport ), pDDELink(pTempDDELink) { // here are no attributes @@ -256,136 +246,101 @@ ScXMLDDETableContext::~ScXMLDDETableContext() { } -SvXMLImportContext *ScXMLDDETableContext::CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) +uno::Reference< xml::sax::XFastContextHandler > SAL_CALL ScXMLDDETableContext::createFastChildContext( + sal_Int32 nElement, const uno::Reference< xml::sax::XFastAttributeList >& xAttrList ) { SvXMLImportContext *pContext = nullptr; - if (nPrefix == XML_NAMESPACE_TABLE) + switch (nElement) { - if (IsXMLToken(rLName, XML_TABLE_COLUMN)) - pContext = new ScXMLDDEColumnContext(GetScImport(), nPrefix, rLName, xAttrList, pDDELink); - else if (IsXMLToken(rLName, XML_TABLE_ROW)) - pContext = new ScXMLDDERowContext(GetScImport(), nPrefix, rLName, xAttrList, pDDELink); + case XML_ELEMENT( TABLE, XML_TABLE_COLUMN ): + pContext = new ScXMLDDEColumnContext(GetScImport(), nElement, xAttrList, pDDELink); + break; + case XML_ELEMENT( TABLE, XML_TABLE_ROW ): + pContext = new ScXMLDDERowContext(GetScImport(), nElement, xAttrList, pDDELink); + break; } if (!pContext) - pContext = new SvXMLImportContext( GetImport(), nPrefix, rLName ); + pContext = new SvXMLImportContext( GetImport() ); return pContext; } -void ScXMLDDETableContext::EndElement() -{ -} - ScXMLDDEColumnContext::ScXMLDDEColumnContext( ScXMLImport& rImport, - sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + sal_Int32 /*nElement*/, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pTempDDELink) : - ScXMLImportContext( rImport, nPrfx, rLName ), + ScXMLImportContext( rImport ), pDDELink(pTempDDELink) { - if( !xAttrList.is() ) return; - sal_Int32 nCols(1); - - sal_Int16 nAttrCount = xAttrList->getLength(); - - for( sal_Int16 nIndex = 0; nIndex < nAttrCount; ++nIndex ) + if ( xAttrList.is() ) { - const OUString& sAttrName (xAttrList->getNameByIndex( nIndex )); - const OUString& sValue (xAttrList->getValueByIndex( nIndex )); - OUString aLocalName; - sal_uInt16 nPrefix = GetScImport().GetNamespaceMap().GetKeyByAttrName( sAttrName, &aLocalName ); + sal_Int32 nCols(1); + sax_fastparser::FastAttributeList *pAttribList = + sax_fastparser::FastAttributeList::castToFastAttributeList( xAttrList ); - if (nPrefix == XML_NAMESPACE_TABLE) - if (IsXMLToken(aLocalName, XML_NUMBER_COLUMNS_REPEATED)) - { - ::sax::Converter::convertNumber(nCols, sValue); - } + auto &aIter( pAttribList->find( XML_ELEMENT( TABLE, XML_NUMBER_COLUMNS_REPEATED ) ) ); + if (aIter != pAttribList->end()) + nCols = aIter.toInt32(); + + pDDELink->AddColumns(nCols); } - pDDELink->AddColumns(nCols); } ScXMLDDEColumnContext::~ScXMLDDEColumnContext() { } -SvXMLImportContext *ScXMLDDEColumnContext::CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& /* xAttrList */ ) -{ - SvXMLImportContext *pContext = new SvXMLImportContext( GetImport(), nPrefix, rLName ); - - return pContext; -} - -void ScXMLDDEColumnContext::EndElement() -{ -} - ScXMLDDERowContext::ScXMLDDERowContext( ScXMLImport& rImport, - sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + sal_Int32 /*nElement*/, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pTempDDELink) : - ScXMLImportContext( rImport, nPrfx, rLName ), + ScXMLImportContext( rImport ), pDDELink(pTempDDELink), nRows(1) { - if( !xAttrList.is() ) return; - - sal_Int16 nAttrCount = xAttrList->getLength(); - - for( sal_Int16 nIndex = 0; nIndex < nAttrCount; ++nIndex ) + if ( xAttrList.is() ) { - const OUString& sAttrName (xAttrList->getNameByIndex( nIndex )); - const OUString& sValue (xAttrList->getValueByIndex( nIndex )); - OUString aLocalName; - sal_uInt16 nPrefix = GetScImport().GetNamespaceMap().GetKeyByAttrName( sAttrName, &aLocalName ); + sax_fastparser::FastAttributeList *pAttribList = + sax_fastparser::FastAttributeList::castToFastAttributeList( xAttrList ); - if (nPrefix == XML_NAMESPACE_TABLE) - if (IsXMLToken(aLocalName, XML_NUMBER_ROWS_REPEATED)) - { - ::sax::Converter::convertNumber(nRows, sValue); - } + auto &aIter( pAttribList->find( XML_ELEMENT( TABLE, XML_NUMBER_ROWS_REPEATED ) ) ); + if (aIter != pAttribList->end()) + nRows = aIter.toInt32(); + + pDDELink->AddRows(nRows); } - pDDELink->AddRows(nRows); } ScXMLDDERowContext::~ScXMLDDERowContext() { } -SvXMLImportContext *ScXMLDDERowContext::CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) +uno::Reference< xml::sax::XFastContextHandler > SAL_CALL ScXMLDDERowContext::createFastChildContext( + sal_Int32 nElement, const uno::Reference< xml::sax::XFastAttributeList >& xAttrList ) { SvXMLImportContext *pContext = nullptr; - if (nPrefix == XML_NAMESPACE_TABLE) - if (IsXMLToken(rLName, XML_TABLE_CELL)) - pContext = new ScXMLDDECellContext(GetScImport(), nPrefix, rLName, xAttrList, pDDELink); + if (nElement == XML_ELEMENT( TABLE, XML_TABLE_CELL )) + pContext = new ScXMLDDECellContext(GetScImport(), nElement, xAttrList, pDDELink); if (!pContext) - pContext = new SvXMLImportContext( GetImport(), nPrefix, rLName ); + pContext = new SvXMLImportContext( GetImport() ); return pContext; } -void ScXMLDDERowContext::EndElement() +void SAL_CALL ScXMLDDERowContext::endFastElement( sal_Int32 /*nElement*/ ) { pDDELink->AddRowsToTable(nRows); } ScXMLDDECellContext::ScXMLDDECellContext( ScXMLImport& rImport, - sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + sal_Int32 /*nElement*/, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pTempDDELink) : - ScXMLImportContext( rImport, nPrfx, rLName ), + ScXMLImportContext( rImport ), sValue(), fValue(), nCells(1), @@ -394,44 +349,34 @@ ScXMLDDECellContext::ScXMLDDECellContext( ScXMLImport& rImport, bEmpty(true), pDDELink(pTempDDELink) { - if( !xAttrList.is() ) return; - - sal_Int16 nAttrCount = xAttrList->getLength(); - - for( sal_Int16 nIndex = 0; nIndex < nAttrCount; ++nIndex ) + if ( xAttrList.is() ) { - const OUString& sAttrName (xAttrList->getNameByIndex( nIndex )); - const OUString& sTempValue (xAttrList->getValueByIndex( nIndex )); - OUString aLocalName; - sal_uInt16 nPrefix = GetScImport().GetNamespaceMap().GetKeyByAttrName( sAttrName, &aLocalName ); + sax_fastparser::FastAttributeList *pAttribList = + sax_fastparser::FastAttributeList::castToFastAttributeList( xAttrList ); - if (nPrefix == XML_NAMESPACE_OFFICE) - { - if (IsXMLToken(aLocalName, XML_VALUE_TYPE)) - { - if (IsXMLToken(sTempValue, XML_STRING)) - bString = true; - else - bString = false; - } - else if (IsXMLToken(aLocalName, XML_STRING_VALUE)) - { - sValue = sTempValue; - bEmpty = false; - bString2 = true; - } - else if (IsXMLToken(aLocalName, XML_VALUE)) - { - ::sax::Converter::convertDouble(fValue, sTempValue); - bEmpty = false; - bString2 = false; - } - } - else if (nPrefix == XML_NAMESPACE_TABLE) + for (auto &aIter : *pAttribList) { - if (IsXMLToken(aLocalName, XML_NUMBER_COLUMNS_REPEATED)) + switch (aIter.getToken()) { - ::sax::Converter::convertNumber(nCells, sTempValue); + case XML_ELEMENT( OFFICE, XML_VALUE_TYPE ): + if (IsXMLToken(aIter, XML_STRING)) + bString = true; + else + bString = false; + break; + case XML_ELEMENT( OFFICE, XML_STRING_VALUE ): + sValue = aIter.toString(); + bEmpty = false; + bString2 = true; + break; + case XML_ELEMENT( OFFICE, XML_VALUE ): + ::sax::Converter::convertDouble(fValue, aIter.toString()); + bEmpty = false; + bString2 = false; + break; + case XML_ELEMENT( TABLE, XML_NUMBER_COLUMNS_REPEATED ): + nCells = aIter.toInt32(); + break; } } } @@ -441,16 +386,7 @@ ScXMLDDECellContext::~ScXMLDDECellContext() { } -SvXMLImportContext *ScXMLDDECellContext::CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& /* xAttrList */ ) -{ - SvXMLImportContext *pContext = new SvXMLImportContext( GetImport(), nPrefix, rLName ); - - return pContext; -} - -void ScXMLDDECellContext::EndElement() +void SAL_CALL ScXMLDDECellContext::endFastElement( sal_Int32 /*nElement*/ ) { OSL_ENSURE(bString == bString2, "something wrong with this type"); ScDDELinkCell aCell; diff --git a/sc/source/filter/xml/XMLDDELinksContext.hxx b/sc/source/filter/xml/XMLDDELinksContext.hxx index 79ec32644e7d..a08040677daf 100644 --- a/sc/source/filter/xml/XMLDDELinksContext.hxx +++ b/sc/source/filter/xml/XMLDDELinksContext.hxx @@ -33,9 +33,8 @@ public: virtual ~ScXMLDDELinksContext() override; - virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) override; + virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext( + sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override; }; struct ScDDELinkCell @@ -61,15 +60,13 @@ class ScXMLDDELinkContext : public ScXMLImportContext sal_uInt8 nMode; public: - ScXMLDDELinkContext( ScXMLImport& rImport, sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList); + ScXMLDDELinkContext( ScXMLImport& rImport, sal_Int32 nElement, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList); virtual ~ScXMLDDELinkContext() override; - virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) override; + virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext( + sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override; void SetApplication(const OUString& sValue) { sApplication = sValue; } void SetTopic(const OUString& sValue) { sTopic = sValue; } @@ -81,7 +78,7 @@ public: void AddCellToRow(const ScDDELinkCell& aCell); void AddRowsToTable(const sal_Int32 nRows); - virtual void EndElement() override; + virtual void SAL_CALL endFastElement( sal_Int32 nElement ) override; }; class ScXMLDDESourceContext : public ScXMLImportContext @@ -89,18 +86,13 @@ class ScXMLDDESourceContext : public ScXMLImportContext ScXMLDDELinkContext* pDDELink; public: - ScXMLDDESourceContext( ScXMLImport& rImport, sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + ScXMLDDESourceContext( ScXMLImport& rImport, sal_Int32 nElement, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pDDELink); virtual ~ScXMLDDESourceContext() override; - virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) override; - - virtual void EndElement() override; + virtual void SAL_CALL endFastElement( sal_Int32 nElement ) override; }; class ScXMLDDETableContext : public ScXMLImportContext @@ -108,18 +100,14 @@ class ScXMLDDETableContext : public ScXMLImportContext ScXMLDDELinkContext* pDDELink; public: - ScXMLDDETableContext( ScXMLImport& rImport, sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + ScXMLDDETableContext( ScXMLImport& rImport, sal_Int32 nElement, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pDDELink); virtual ~ScXMLDDETableContext() override; - virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) override; - - virtual void EndElement() override; + virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext( + sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override; }; class ScXMLDDEColumnContext : public ScXMLImportContext @@ -127,18 +115,11 @@ class ScXMLDDEColumnContext : public ScXMLImportContext ScXMLDDELinkContext* pDDELink; public: - ScXMLDDEColumnContext( ScXMLImport& rImport, sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + ScXMLDDEColumnContext( ScXMLImport& rImport, sal_Int32 nElement, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pDDELink); virtual ~ScXMLDDEColumnContext() override; - - virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) override; - - virtual void EndElement() override; }; class ScXMLDDERowContext : public ScXMLImportContext @@ -147,18 +128,16 @@ class ScXMLDDERowContext : public ScXMLImportContext sal_Int32 nRows; public: - ScXMLDDERowContext( ScXMLImport& rImport, sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + ScXMLDDERowContext( ScXMLImport& rImport, sal_Int32 nElement, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pDDELink); virtual ~ScXMLDDERowContext() override; - virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) override; + virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext( + sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override; - virtual void EndElement() override; + virtual void SAL_CALL endFastElement( sal_Int32 nElement ) override; }; class ScXMLDDECellContext : public ScXMLImportContext @@ -173,18 +152,13 @@ class ScXMLDDECellContext : public ScXMLImportContext ScXMLDDELinkContext* pDDELink; public: - ScXMLDDECellContext( ScXMLImport& rImport, sal_uInt16 nPrfx, - const OUString& rLName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList, + ScXMLDDECellContext( ScXMLImport& rImport, sal_Int32 nElement, + const css::uno::Reference<css::xml::sax::XFastAttributeList>& xAttrList, ScXMLDDELinkContext* pDDELink); virtual ~ScXMLDDECellContext() override; - virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, - const OUString& rLocalName, - const css::uno::Reference<css::xml::sax::XAttributeList>& xAttrList ) override; - - virtual void EndElement() override; + virtual void SAL_CALL endFastElement( sal_Int32 nElement ) override; }; #endif |