diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2020-08-25 09:24:22 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2020-08-25 12:57:43 +0200 |
commit | 041fd5a6b8c1f0002cfc693ef66daf28a86df371 (patch) | |
tree | f0110af172eea7cb8e4757929afb478b32ebaadf /include/xmloff | |
parent | d27a41606bc1d860b1d7b07d9f3e004a52947ac6 (diff) |
use more fastparser in PageStyleContext
Change-Id: I1de96a68881e5f035c34136cd3ad89fa7cad29ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101310
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'include/xmloff')
-rw-r--r-- | include/xmloff/xmlimppr.hxx | 13 | ||||
-rw-r--r-- | include/xmloff/xmlprcon.hxx | 11 |
2 files changed, 24 insertions, 0 deletions
diff --git a/include/xmloff/xmlimppr.hxx b/include/xmloff/xmlimppr.hxx index 5f5a72d17cb3..3694219d353b 100644 --- a/include/xmloff/xmlimppr.hxx +++ b/include/xmloff/xmlimppr.hxx @@ -37,6 +37,7 @@ namespace com::sun::star::uno { class Any; } namespace com::sun::star::uno { template <typename > class Reference; } namespace com::sun::star::uno { template <typename > class Sequence; } namespace com::sun::star::xml::sax { class XAttributeList; } +namespace com::sun::star::xml::sax { class XFastAttributeList; } struct XMLPropertyState; class XMLPropertySetMapper; @@ -96,6 +97,18 @@ public: sal_uInt32 nPropType, sal_Int32 nStartIdx, sal_Int32 nEndIdx ) const; + /** fills the given itemset with the attributes in the given list + * the map is only searched within the range + * [nStartIdx, nEndIdx[ + */ + void importXML( + ::std::vector< XMLPropertyState >& rProperties, + const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList, + const SvXMLUnitConverter& rUnitConverter, + const SvXMLNamespaceMap& rNamespaceMap, + sal_uInt32 nPropType, + sal_Int32 nStartIdx, sal_Int32 nEndIdx ) const; + /** this method is called for every item that has the MID_FLAG_SPECIAL_ITEM_IMPORT flag set */ virtual bool handleSpecialItem( XMLPropertyState& rProperty, diff --git a/include/xmloff/xmlprcon.hxx b/include/xmloff/xmlprcon.hxx index a0219b3742d9..97d9487716dc 100644 --- a/include/xmloff/xmlprcon.hxx +++ b/include/xmloff/xmlprcon.hxx @@ -47,8 +47,19 @@ public: const rtl::Reference < SvXMLImportPropertyMapper > &rMap, sal_Int32 nStartIdx = -1, sal_Int32 nEndIdx = -1 ); + SvXMLPropertySetContext( + SvXMLImport& rImport, sal_Int32 nElement, + const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList, + sal_uInt32 nFamily, + ::std::vector< XMLPropertyState > &rProps, + const rtl::Reference < SvXMLImportPropertyMapper > &rMap, + sal_Int32 nStartIdx = -1, sal_Int32 nEndIdx = -1 ); + virtual ~SvXMLPropertySetContext() override; + virtual void SAL_CALL startFastElement( sal_Int32 /*nElement*/, + const css::uno::Reference< css::xml::sax::XFastAttributeList >& ) override {} + virtual SvXMLImportContextRef CreateChildContext( sal_uInt16 nPrefix, const OUString& rLocalName, const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList ) override; |