summaryrefslogtreecommitdiff
path: root/include/xmloff/DocumentSettingsContext.hxx
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2020-01-21 11:17:19 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2020-01-21 14:18:46 +0100
commit996f1b9b325dcccd7b0ebfcacb45a4ffb4cba58e (patch)
tree04af03c2d0fa8a55cd5a549fc1e610c3d62583f6 /include/xmloff/DocumentSettingsContext.hxx
parent08e633d777f1d2cf11a93ccb55f231d084f3220c (diff)
Use FastParser in XMLDocumentSettingsContext
and flatten the pImpl data Change-Id: I8d817cd2af0a3855d10dbfaa580c3379119d5067 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87126 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'include/xmloff/DocumentSettingsContext.hxx')
-rw-r--r--include/xmloff/DocumentSettingsContext.hxx25
1 files changed, 17 insertions, 8 deletions
diff --git a/include/xmloff/DocumentSettingsContext.hxx b/include/xmloff/DocumentSettingsContext.hxx
index 5a63435ed31f..f09d0f919dc7 100644
--- a/include/xmloff/DocumentSettingsContext.hxx
+++ b/include/xmloff/DocumentSettingsContext.hxx
@@ -24,23 +24,32 @@
#include <xmloff/dllapi.h>
#include <xmloff/xmlictxt.hxx>
-#include <memory>
+#include <vector>
struct XMLDocumentSettingsContext_Data;
class XMLOFF_DLLPUBLIC XMLDocumentSettingsContext final : public SvXMLImportContext
{
- ::std::unique_ptr< XMLDocumentSettingsContext_Data > m_pData;
+ struct SettingsGroup
+ {
+ OUString sGroupName;
+ css::uno::Any aSettings;
+ };
+ css::uno::Any maViewProps;
+ css::uno::Any maConfigProps;
+ ::std::vector< SettingsGroup > maDocSpecificSettings;
public:
- XMLDocumentSettingsContext(SvXMLImport& rImport, sal_uInt16 nPrfx, const OUString& rLName,
- const css::uno::Reference< css::xml::sax::XAttributeList>& xAttrList);
+ XMLDocumentSettingsContext(SvXMLImport& rImport);
virtual ~XMLDocumentSettingsContext() override;
- virtual SvXMLImportContextRef 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 >& AttrList ) override;
+
+ virtual void SAL_CALL startFastElement( sal_Int32 /*nElement*/,
+ const css::uno::Reference< css::xml::sax::XFastAttributeList >& ) override {}
+
+ virtual void SAL_CALL endFastElement(sal_Int32 nElement) override;
private:
XMLDocumentSettingsContext( const XMLDocumentSettingsContext& ) = delete;