LibreOffice Module xmloff (master)  1
xmlexp.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 
20 #ifndef INCLUDED_XMLOFF_XMLEXP_HXX
21 #define INCLUDED_XMLOFF_XMLEXP_HXX
22 
23 #include <sal/config.h>
24 #include <xmloff/dllapi.h>
25 #include <sal/types.h>
26 
27 #include <com/sun/star/lang/XUnoTunnel.hpp>
28 #include <rtl/ustring.hxx>
29 #include <xmloff/attrlist.hxx>
30 #include <xmloff/txtparae.hxx>
32 #include <xmloff/xmlnumfe.hxx>
33 #include <xmloff/xmlaustp.hxx>
34 #include <xmloff/shapeexport.hxx>
35 #include <xmloff/xmltoken.hxx>
38 #include <xmloff/xmluconv.hxx>
39 #include <com/sun/star/document/XFilter.hpp>
40 #include <com/sun/star/lang/XServiceInfo.hpp>
41 #include <com/sun/star/document/XExporter.hpp>
42 #include <com/sun/star/lang/XInitialization.hpp>
43 #include <com/sun/star/container/XNamed.hpp>
44 
45 #include <unotools/saveopt.hxx>
46 
47 #include <xmloff/XMLPageExport.hxx>
49 #include <cppuhelper/implbase.hxx>
50 #include <tools/fldunit.hxx>
51 #include <vcl/errcode.hxx>
52 
53 #include <vector>
54 #include <memory>
55 #include <o3tl/typed_flags_set.hxx>
56 
57 namespace com::sun::star::beans { class XPropertySet; }
58 namespace com::sun::star::document { class XEmbeddedObjectResolver; }
59 namespace com::sun::star::document { class XGraphicStorageHandler; }
60 namespace com::sun::star::embed { class XStorage; }
61 namespace com::sun::star::graphic { class XGraphic; }
62 namespace com::sun::star::lang { class XEventListener; }
63 namespace com::sun::star::task { class XStatusIndicator; }
64 namespace com::sun::star::uno { class XComponentContext; }
65 namespace com::sun::star::util { class XNumberFormatsSupplier; }
66 namespace com::sun::star::xml::sax { class XAttributeList; }
67 namespace com::sun::star::xml::sax { class XDocumentHandler; }
68 namespace com::sun::star::xml::sax { class XExtendedDocumentHandler; }
69 namespace com::sun::star::xml::sax { class XLocator; }
70 
71 class SvXMLNamespaceMap;
72 class SvXMLExport_Impl;
73 class ProgressBarHelper;
74 class XMLEventExport;
75 class XMLImageMapExport;
76 class XMLErrors;
77 class LanguageTag;
78 enum class SvXMLErrorFlags;
79 
80 // Shapes in Writer cannot be named via context menu (#i51726#)
82 
83 namespace com::sun::star {
84  namespace frame { class XModel; }
85  namespace lang { struct Locale; }
86 }
87 namespace comphelper { class UnoInterfaceToUniqueIdentifierMapper; }
88 
89 enum class SvXMLExportFlags {
90  NONE = 0,
91  META = 0x0001,
92  STYLES = 0x0002,
93  MASTERSTYLES = 0x0004,
94  AUTOSTYLES = 0x0008,
95  CONTENT = 0x0010,
96  SCRIPTS = 0x0020,
97  SETTINGS = 0x0040,
98  FONTDECLS = 0x0080,
99  EMBEDDED = 0x0100,
100  PRETTY = 0x0400,
101  SAVEBACKWARDCOMPATIBLE = 0x0800,
102  OASIS = 0x8000,
103  ALL = 0x0dff
104 };
105 namespace o3tl
106 {
107  template<> struct typed_flags<SvXMLExportFlags> : is_typed_flags<SvXMLExportFlags, 0x8dff> {};
108 }
109 
110 class XMLOFF_DLLPUBLIC SvXMLExport : public cppu::WeakImplHelper<
111  css::document::XFilter,
112  css::lang::XServiceInfo,
113  css::document::XExporter,
114  css::lang::XInitialization,
115  css::container::XNamed,
116  css::lang::XUnoTunnel>
117 {
118  std::unique_ptr<SvXMLExport_Impl> mpImpl; // dummy
119 
120  css::uno::Reference< css::uno::XComponentContext > m_xContext;
122 
123  css::uno::Reference< css::frame::XModel > mxModel;
124  css::uno::Reference< css::xml::sax::XDocumentHandler > mxHandler; // the handlers
125  css::uno::Reference< css::xml::sax::XExtendedDocumentHandler > mxExtHandler;
126  css::uno::Reference< css::util::XNumberFormatsSupplier > mxNumberFormatsSupplier;
127  css::uno::Reference< css::document::XGraphicStorageHandler > mxGraphicStorageHandler;
128  css::uno::Reference< css::document::XEmbeddedObjectResolver > mxEmbeddedResolver;
129  css::uno::Reference< css::task::XStatusIndicator > mxStatusIndicator;
130  css::uno::Reference< css::beans::XPropertySet > mxExportInfo;
131  css::uno::Reference< css::lang::XEventListener > mxEventListener;
132 
133  rtl::Reference<SvXMLAttributeList> mxAttrList; // a common attribute list
134 
135  OUString msOrigFileName; // the original URL
136  OUString msFilterName;
137  OUString msImgFilterName;
138  std::unique_ptr<SvXMLNamespaceMap> mpNamespaceMap; // the namepspace map
139  SvXMLUnitConverter maUnitConv; // the unit converter
140  std::unique_ptr<SvXMLNumFmtExport> mpNumExport;
141  std::unique_ptr<ProgressBarHelper> mpProgressBarHelper;
142 
150  std::unique_ptr<XMLEventExport> mpEventExport;
151  std::unique_ptr<XMLImageMapExport> mpImageMapExport;
152  std::unique_ptr<XMLErrors> mpXMLErrors;
153 
155  SAL_DLLPRIVATE void InitCtor_();
156 
159 
160  const OUString msWS; // " "
161 
162  // Shapes in Writer cannot be named via context menu (#i51726#)
164  SAL_DLLPRIVATE void DetermineModelType_();
165 
166  SAL_DLLPRIVATE void ImplExportMeta(); // <office:meta>
167  SAL_DLLPRIVATE void ImplExportSettings(); // <office:settings>
168  SAL_DLLPRIVATE void ImplExportStyles(); // <office:styles>
169  SAL_DLLPRIVATE void ImplExportAutoStyles();
170  // <office:automatic-styles>
171  SAL_DLLPRIVATE void ImplExportMasterStyles();
172  // <office:master-styles>
173  SAL_DLLPRIVATE void ImplExportContent(); // <office:body>
174  virtual void SetBodyAttributes();
175  void GetViewSettingsAndViews(css::uno::Sequence<css::beans::PropertyValue>& rProps);
176 
177 protected:
178  void setExportFlags( SvXMLExportFlags nExportFlags ) { mnExportFlags = nExportFlags; }
179 
180  // Get (modifiable) namespace map
181  SvXMLNamespaceMap& GetNamespaceMap_() { return *mpNamespaceMap; }
182 
183  // get a new namespace map (used in starmath to have a default namespace)
184  void ResetNamespaceMap();
185 
188  virtual void ExportMeta_();
189 
192  virtual void ExportScripts_();
193 
197  virtual void ExportFontDecls_();
198 
202  virtual void ExportStyles_( bool bUsed );
203 
205  virtual void ExportAutoStyles_() = 0;
206 
208  virtual void ExportMasterStyles_() = 0;
209 
211  virtual void ExportContent_() = 0;
212 
213  OUString const & GetSourceShellID() const;
214  OUString const & GetDestinationShellID() const;
215 
216  // save linked sections? (may be false in global documents)
218 
219  virtual XMLTextParagraphExport* CreateTextParagraphExport();
220  virtual XMLShapeExport* CreateShapeExport();
221  virtual SvXMLAutoStylePoolP* CreateAutoStylePool();
222  SchXMLExportHelper* CreateChartExport();
223  virtual XMLPageExport* CreatePageExport();
224  virtual XMLFontAutoStylePool* CreateFontAutoStylePool();
225  xmloff::OFormLayerXMLExport* CreateFormExport();
226  virtual void GetViewSettings(css::uno::Sequence<css::beans::PropertyValue>& aProps);
227  virtual void GetConfigurationSettings(css::uno::Sequence<css::beans::PropertyValue>& aProps);
228 
230  {
232  css::uno::Sequence< css::beans::PropertyValue > aSettings;
233 
236  const css::uno::Sequence< css::beans::PropertyValue >& _rSettings )
237  :eGroupName( _eGroupName )
238  ,aSettings( _rSettings )
239  {
240  }
241  };
250  virtual sal_Int32 GetDocumentSpecificSettings( ::std::vector< SettingsGroup >& _out_rSettings );
251 
252  const css::uno::Reference< css::document::XEmbeddedObjectResolver >& GetEmbeddedResolver() const { return mxEmbeddedResolver; }
253  inline void SetEmbeddedResolver( css::uno::Reference< css::document::XEmbeddedObjectResolver > const & _xEmbeddedResolver );
254 
255  const css::uno::Reference<css::document::XGraphicStorageHandler> & GetGraphicStorageHandler() const
256  {
257  return mxGraphicStorageHandler;
258  }
259  void SetGraphicStorageHandler(css::uno::Reference<css::document::XGraphicStorageHandler> const & rxGraphicStorageHandler);
260 
261  void SetDocHandler( const css::uno::Reference< css::xml::sax::XDocumentHandler > &rHandler );
262 
264 public:
265 
266  SvXMLExport(
267  sal_Int16 const eDefaultMeasureUnit /*css::util::MeasureUnit*/,
268  const css::uno::Reference< css::uno::XComponentContext >& xContext,
269  OUString const & implementationName,
271  SvXMLExportFlags nExportFlag );
272 
273  SvXMLExport(
274  const css::uno::Reference< css::uno::XComponentContext >& xContext,
275  OUString const & implementationName,
276  const OUString& rFileName,
277  sal_Int16 const eDefaultMeasureUnit /*css::util::MeasureUnit*/,
278  const css::uno::Reference< css::xml::sax::XDocumentHandler > & rHandler);
279 
280  SvXMLExport(
281  const css::uno::Reference< css::uno::XComponentContext >& xContext,
282  OUString const & implementationName,
283  const OUString& rFileName,
284  const css::uno::Reference< css::xml::sax::XDocumentHandler > & rHandler,
285  const css::uno::Reference< css::frame::XModel > &,
286  FieldUnit const eDefaultFieldUnit,
287  SvXMLExportFlags nExportFlag );
288 
289  virtual ~SvXMLExport() override;
290 
291  virtual void collectAutoStyles();
292 
293  // XExporter
294  virtual void SAL_CALL setSourceDocument( const css::uno::Reference< css::lang::XComponent >& xDoc ) override;
295 
296  // XFilter
297  virtual sal_Bool SAL_CALL filter( const css::uno::Sequence< css::beans::PropertyValue >& aDescriptor ) override;
298  virtual void SAL_CALL cancel() override;
299 
300  // XInitialization
301  virtual void SAL_CALL initialize( const css::uno::Sequence< css::uno::Any >& aArguments ) override;
302 
303  // XNamed
304  virtual OUString SAL_CALL getName( ) override;
305  virtual void SAL_CALL setName( const OUString& aName ) override;
306 
307  // XServiceInfo
308  virtual OUString SAL_CALL getImplementationName( ) final override;
309  virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) final override;
310  virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) final override;
311 
312  // XUnoTunnel
313  UNO3_GETIMPLEMENTATION_DECL(SvXMLExport)
314 
325  OUString EnsureNamespace(OUString const & i_rNamespace );
326 
327  // Check if common attribute list is empty.
328 #ifndef DBG_UTIL
329  void CheckAttrList() { (void) this; /* avoid loplugin:staticmethods */ }
330 #else
331  void CheckAttrList();
332 #endif
333 
334  // Clear common attribute list.
335  void ClearAttrList();
336 
337  // Add an attribute to the common attribute list.
338  void AddAttributeASCII( sal_uInt16 nPrefix, const char *pName,
339  const char *pValue );
340  void AddAttribute( sal_uInt16 nPrefix, const char *pName,
341  const OUString& rValue );
342  void AddAttribute( sal_uInt16 nPrefix, const OUString& rName,
343  const OUString& rValue );
344  void AddAttribute( sal_uInt16 nPrefix,
346  const OUString& rValue );
347  void AddAttribute( sal_uInt16 nPrefix,
350  void AddAttribute( const OUString& rQName,
351  const OUString& rValue );
352  void AddAttribute( const OUString& rQName,
354 
367  void AddLanguageTagAttributes( sal_uInt16 nPrefix, sal_uInt16 nPrefixRfc,
368  const css::lang::Locale& rLocale, bool bWriteEmpty);
369 
373  void AddLanguageTagAttributes( sal_uInt16 nPrefix, sal_uInt16 nPrefixRfc,
374  const LanguageTag& rLanguageTag, bool bWriteEmpty );
375 
376  // add several attributes to the common attribute list
377  void AddAttributeList( const css::uno::Reference<
378  css::xml::sax::XAttributeList >& xAttrList );
379 
380  // Get common attribute list as implementation or interface.
381  SvXMLAttributeList &GetAttrList() { return *mxAttrList; }
382  css::uno::Reference< css::xml::sax::XAttributeList > GetXAttrList() { return mxAttrList.get(); }
383 
384  // Get document handler. This methods are not const, because the
385  // reference allows modifications through the handler.
386  const css::uno::Reference< css::xml::sax::XDocumentHandler > & GetDocHandler() const { return mxHandler; }
387 
388  // Get original URL.
389  const OUString& GetOrigFileName() const { return msOrigFileName; }
390 
391  // Get (const) namespace map.
392  const SvXMLNamespaceMap& GetNamespaceMap() const { return *mpNamespaceMap; }
393 
394  // Get unit converter
395  const SvXMLUnitConverter& GetMM100UnitConverter() const { return maUnitConv; }
396 
397  SvXMLUnitConverter& GetMM100UnitConverter() { return maUnitConv; }
398 
399  void addChaffWhenEncryptedStorage();
400 
401  // Export the document.
403 
404  void collectDataStyles(bool bFromUsedStyles);
405  virtual void addDataStyle(const sal_Int32 nNumberFormat, bool bTimeFormat = false );
406  virtual void exportDataStyles();
407  virtual void exportAutoDataStyles();
408  virtual OUString getDataStyleName(const sal_Int32 nNumberFormat, bool bTimeFormat = false ) const;
409  sal_Int32 dataStyleForceSystemLanguage(sal_Int32 nFormat) const;
410 
411  virtual void exportAnnotationMeta( const css::uno::Reference < css::drawing::XShape >& xShape);
412 
413  // Get XModel
414  const css::uno::Reference< css::frame::XModel > &
415  GetModel() const { return mxModel; }
416  // Get XNumberFormatsSupplier
417  css::uno::Reference< css::util::XNumberFormatsSupplier > & GetNumberFormatsSupplier() { return mxNumberFormatsSupplier; }
418  void SetNumberFormatsSupplier(const css::uno::Reference< css::util::XNumberFormatsSupplier >& _xNumberFormatSupplier)
419  {
420  mxNumberFormatsSupplier = _xNumberFormatSupplier;
421  if ( mxNumberFormatsSupplier.is() && mxHandler.is() )
422  mpNumExport.reset( new SvXMLNumFmtExport(*this, mxNumberFormatsSupplier) );
423  }
424 
425  // get export helper for text
426  inline rtl::Reference< XMLTextParagraphExport > const & GetTextParagraphExport();
427 
428  // get export helper for shapes
429  inline rtl::Reference< XMLShapeExport > const & GetShapeExport();
430 
431  // get auto style pool
432  inline rtl::Reference< SvXMLAutoStylePoolP > const & GetAutoStylePool();
433 
434  // get Page Export
435  inline rtl::Reference< XMLPageExport > const & GetPageExport();
436 
437  // get chart export helper
438  inline rtl::Reference< SchXMLExportHelper > const & GetChartExport();
439 
440  // get font auto style pool
441  inline rtl::Reference< XMLFontAutoStylePool > const & GetFontAutoStylePool();
442 
443  ProgressBarHelper* GetProgressBarHelper();
444 
445  // get Formlayer Export
446  inline rtl::Reference< xmloff::OFormLayerXMLExport > const & GetFormExport();
447  inline bool HasFormExport() const;
448 
449  // get XPropertySet with export information
450  const css::uno::Reference< css::beans::XPropertySet >& getExportInfo() const { return mxExportInfo; }
451 
452  const css::uno::Reference< css::task::XStatusIndicator >& GetStatusIndicator() const { return mxStatusIndicator; }
453 
456  XMLEventExport& GetEventExport();
457 
459  XMLImageMapExport& GetImageMapExport();
460 
461  OUString AddEmbeddedXGraphic(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic, OUString & rOutMimeType, OUString const & rRequestedName = OUString());
462  bool AddEmbeddedXGraphicAsBase64(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic);
463  bool GetGraphicMimeTypeFromStream(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic, OUString & rOutMimeType);
464 
465  OUString AddEmbeddedObject(
466  const OUString& rEmbeddedObjectURL );
467  bool AddEmbeddedObjectAsBase64(
468  const OUString& rEmbeddedObjectURL );
469 
470  OUString EncodeStyleName( const OUString& rName,
471  bool *pEncoded=nullptr ) const;
472 
473  // save linked sections?
474  bool IsSaveLinkedSections() const { return mbSaveLinkedSections; }
475 
476  // get export flags
477  SvXMLExportFlags getExportFlags() const { return mnExportFlags; }
478 
479  void ExportEmbeddedOwnObject(
480  css::uno::Reference<css::lang::XComponent > const & rComp );
481 
482  OUString GetRelativeReference(const OUString& rValue);
483 
484  // methods for accessing the document handler and handling SAX errors
485  void StartElement(sal_uInt16 nPrefix,
487  bool bIgnWSOutside );
488  void StartElement(const OUString& rName,
489  bool bIgnWSOutside );
490  void Characters(const OUString& rChars);
491  void EndElement(sal_uInt16 nPrefix,
493  bool bIgnWSInside );
494  void EndElement(const OUString& rName,
495  bool bIgnWSInside );
496  void IgnorableWhitespace();
497 
503  void SetError(
505  sal_Int32 nId,
507  const css::uno::Sequence< OUString> & rMsgParams,
509  const OUString& rExceptionMessage,
511  const css::uno::Reference<css::xml::sax::XLocator> & rLocator );
512 
513  void SetError(
514  sal_Int32 nId,
515  const css::uno::Sequence< OUString> & rMsgParams);
516 
517  virtual void DisposingModel();
518 
519  ::comphelper::UnoInterfaceToUniqueIdentifierMapper& getInterfaceToIdentifierMapper();
520 
521  const css::uno::Reference< css::uno::XComponentContext >& getComponentContext() const { return m_xContext;}
522 
523  // Shapes in Writer cannot be named via context menu (#i51726#)
525  {
526  return meModelType;
527  }
528 
529  // Written OpenDocument file format doesn't fit to the created text document (#i69627#)
530  bool writeOutlineStyleAsNormalListStyle() const;
531 
532  css::uno::Reference< css::embed::XStorage > const & GetTargetStorage() const;
533 
535  SvtSaveOptions::ODFDefaultVersion getDefaultVersion() const;
536 
538  SvtSaveOptions::ODFSaneDefaultVersion getSaneDefaultVersion() const;
539 
540  // FIXME: this is only for legacy stuff that has not yet been adapted
541  // to implement XMetadatable; this can write duplicate IDs!
543  void SAL_DLLPRIVATE AddAttributeIdLegacy(
544  sal_uInt16 const nLegacyPrefix, OUString const& rValue);
545 
547  void AddAttributeXmlId(css::uno::Reference<css::uno::XInterface> const & i_xIfc);
548 
550  void AddAttributesRDFa( css::uno::Reference<css::text::XTextContent> const & i_xTextContent);
551 
552  bool exportTextNumberElement() const;
553 
555  bool SetNullDateOnUnitConverter();
556 
558  OUString const & GetImageFilterName() const;
559 };
560 
562 {
563  if( !mxTextParagraphExport.is() )
564  mxTextParagraphExport = CreateTextParagraphExport();
565 
566  return mxTextParagraphExport;
567 }
568 
570 {
571  if( !mxShapeExport.is() )
572  mxShapeExport = CreateShapeExport();
573 
574  return mxShapeExport;
575 }
576 
578 {
579  if( !mxAutoStylePool.is() )
580  mxAutoStylePool = CreateAutoStylePool();
581 
582  return mxAutoStylePool;
583 }
584 
586 {
587  if( !mxChartExport.is() )
588  mxChartExport = CreateChartExport();
589 
590  return mxChartExport;
591 }
592 
594 {
595  if( !mxPageExport.is() )
596  mxPageExport = CreatePageExport();
597 
598  return mxPageExport;
599 }
600 
602 {
603  if( !mxFontAutoStylePool.is() )
604  mxFontAutoStylePool = CreateFontAutoStylePool();
605 
606  return mxFontAutoStylePool;
607 }
608 
610 {
611  if( !mxFormExport.is() )
612  mxFormExport = CreateFormExport();
613 
614  return mxFormExport;
615 }
616 
617 inline bool SvXMLExport::HasFormExport() const
618 {
619  return mxFormExport.is();
620 }
621 
623  css::uno::Reference< css::document::XEmbeddedObjectResolver > const & _xEmbeddedResolver )
624 {
625  mxEmbeddedResolver = _xEmbeddedResolver;
626 }
627 
629  css::uno::Reference<css::document::XGraphicStorageHandler> const & rxGraphicStorageHandler)
630 {
631  mxGraphicStorageHandler = rxGraphicStorageHandler;
632 }
633 
634 // Helper class to export an element.
636 {
638  OUString maElementName;
639  const bool mbIgnoreWhitespaceInside :1;
640  const bool mbDoSomething :1;
641 
642  SAL_DLLPRIVATE
643  void StartElement(
644  const sal_uInt16 nPrefix,
645  const OUString& rName,
646  const bool bIgnoreWhitespaceOutside );
647 
648 public:
649 
650  // The constructor prints a start tag that has the common attributes
651  // of the XMLExport instance attached.
652  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
653  const char *pName,
654  bool bIgnWSOutside, bool bIgnWSInside );
655  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
656  const OUString& rName,
657  bool bIgnWSOutside, bool bIgnWSInside );
658  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
660  bool bIgnWSOutside, bool bIgnWSInside );
661  SvXMLElementExport( SvXMLExport& rExp, const OUString& rQName,
662  bool bIgnWSOutside, bool bIgnWSInside );
663 
664  // These constructors do nothing if bDoSomething is not set
665  SvXMLElementExport( SvXMLExport& rExp, bool bDoSomething,
666  sal_uInt16 nPrefix,
668  bool bIgnWSOutside, bool bIgnWSInside );
669 
670  // The destructor prints an end tag.
672 };
673 
674 #endif // _XMLOFF_SVXMLEXP_HXX
675 
676 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SvXMLExportFlags mnExportFlags
Definition: xmlexp.hxx:157
FieldUnit
OUString maElementName
Definition: xmlexp.hxx:638
rtl::Reference< XMLShapeExport > const & GetShapeExport()
Definition: xmlexp.hxx:569
the SvXMLTypeConverter converts values of various types from their internal representation to the tex...
Definition: xmluconv.hxx:77
int SetError()
rtl::Reference< XMLTextParagraphExport > const & GetTextParagraphExport()
Definition: xmlexp.hxx:561
const SvXMLUnitConverter & GetMM100UnitConverter() const
Definition: xmlexp.hxx:395
SvXMLExportFlags
Definition: xmlexp.hxx:89
css::uno::Reference< css::beans::XPropertySet > mxExportInfo
Definition: xmlexp.hxx:130
The XMLErrors is used to collect all errors and warnings that occur for appropriate processing...
Definition: xmlerror.hxx:102
virtual SvXMLAutoStylePoolP * CreateAutoStylePool()
Definition: xmlexp.cxx:1710
css::uno::Reference< css::document::XGraphicStorageHandler > mxGraphicStorageHandler
Definition: xmlexp.hxx:127
SvXMLExport & mrExport
Definition: xmlexp.hxx:637
css::uno::Reference< css::xml::sax::XAttributeList > GetXAttrList()
Definition: xmlexp.hxx:382
OUString getImplementationName()
virtual XMLTextParagraphExport * CreateTextParagraphExport()
Definition: xmlexp.cxx:1700
std::unique_ptr< SvXMLNamespaceMap > mpNamespaceMap
Definition: xmlexp.hxx:138
const css::uno::Reference< css::xml::sax::XDocumentHandler > & GetDocHandler() const
Definition: xmlexp.hxx:386
OUString msFilterName
Definition: xmlexp.hxx:136
css::uno::Reference< css::document::XEmbeddedObjectResolver > mxEmbeddedResolver
Definition: xmlexp.hxx:128
rtl::Reference< XMLShapeExport > mxShapeExport
Definition: xmlexp.hxx:144
css::uno::Any const & rValue
Definition: ImageStyle.hxx:38
SvXMLAttributeList & GetAttrList()
Definition: xmlexp.hxx:381
const css::uno::Reference< css::frame::XModel > & GetModel() const
Definition: xmlexp.hxx:415
rtl::Reference< xmloff::OFormLayerXMLExport > mxFormExport
Definition: xmlexp.hxx:149
SchXMLExportHelper * CreateChartExport()
Definition: xmlexp.cxx:1724
xmloff::OFormLayerXMLExport * CreateFormExport()
Definition: xmlexp.cxx:1734
css::uno::Reference< css::task::XStatusIndicator > mxStatusIndicator
Definition: xmlexp.hxx:129
css::uno::Sequence< css::beans::PropertyValue > aSettings
Definition: xmlexp.hxx:232
void SetNumberFormatsSupplier(const css::uno::Reference< css::util::XNumberFormatsSupplier > &_xNumberFormatSupplier)
Definition: xmlexp.hxx:418
XMLTokenEnum
The enumeration of all XML tokens.
Definition: xmltoken.hxx:47
SvtModuleOptions::EFactory GetModelType() const
Definition: xmlexp.hxx:524
std::unique_ptr< SvXMLNumFmtExport > mpNumExport
Definition: xmlexp.hxx:140
bool mbAutoStylesCollected
Definition: xmlexp.hxx:263
rtl::Reference< XMLFontAutoStylePool > mxFontAutoStylePool
Definition: xmlexp.hxx:148
std::unique_ptr< ProgressBarHelper > mpProgressBarHelper
Definition: xmlexp.hxx:141
void SetEmbeddedResolver(css::uno::Reference< css::document::XEmbeddedObjectResolver > const &_xEmbeddedResolver)
Definition: xmlexp.hxx:622
rtl::Reference< SchXMLExportHelper > mxChartExport
Definition: xmlexp.hxx:146
sal_uInt16 char * pName
rtl::Reference< XMLTextParagraphExport > mxTextParagraphExport
Definition: xmlexp.hxx:143
class SAL_NO_VTABLE XPropertySet
RequestPriorityClass meClass
const css::uno::Reference< css::document::XGraphicStorageHandler > & GetGraphicStorageHandler() const
Definition: xmlexp.hxx:255
css::uno::Reference< css::xml::sax::XDocumentHandler > mxHandler
Definition: xmlexp.hxx:124
const OUString msWS
Definition: xmlexp.hxx:160
const css::uno::Reference< css::uno::XComponentContext > & getComponentContext() const
Definition: xmlexp.hxx:521
rtl::Reference< SchXMLExportHelper > const & GetChartExport()
Definition: xmlexp.hxx:585
css::uno::Reference< css::util::XNumberFormatsSupplier > & GetNumberFormatsSupplier()
Definition: xmlexp.hxx:417
OUString m_implementationName
Definition: xmlexp.hxx:121
virtual XMLPageExport * CreatePageExport()
Definition: xmlexp.cxx:1719
unsigned char sal_Bool
virtual XMLFontAutoStylePool * CreateFontAutoStylePool()
Definition: xmlexp.cxx:1729
std::unique_ptr< SvXMLExport_Impl > mpImpl
Definition: xmlexp.hxx:118
std::unique_ptr< XMLImageMapExport > mpImageMapExport
Definition: xmlexp.hxx:151
With this class you can export a element containing its data as element o...
SvXMLUnitConverter & GetMM100UnitConverter()
Definition: xmlexp.hxx:397
bool mbSaveLinkedSections
Definition: xmlexp.hxx:217
const css::uno::Reference< css::document::XEmbeddedObjectResolver > & GetEmbeddedResolver() const
Definition: xmlexp.hxx:252
const uno::Reference< uno::XComponentContext > m_xContext
const SvXMLNamespaceMap & GetNamespaceMap() const
Definition: xmlexp.hxx:392
::xmloff::token::XMLTokenEnum eGroupName
Definition: xmlexp.hxx:231
void SetGraphicStorageHandler(css::uno::Reference< css::document::XGraphicStorageHandler > const &rxGraphicStorageHandler)
Definition: xmlexp.hxx:628
const css::uno::Reference< css::beans::XPropertySet > & getExportInfo() const
Definition: xmlexp.hxx:450
OUString msImgFilterName
Definition: xmlexp.hxx:137
SvXMLUnitConverter maUnitConv
Definition: xmlexp.hxx:139
const OUString & GetOrigFileName() const
Definition: xmlexp.hxx:389
SvtModuleOptions::EFactory meModelType
Definition: xmlexp.hxx:163
rtl::Reference< XMLPageExport > mxPageExport
Definition: xmlexp.hxx:147
std::unique_ptr< XMLErrors > mpXMLErrors
Definition: xmlexp.hxx:152
SvXMLNamespaceMap & GetNamespaceMap_()
Definition: xmlexp.hxx:181
rtl::Reference< SvXMLAutoStylePoolP > const & GetAutoStylePool()
Definition: xmlexp.hxx:577
virtual XMLShapeExport * CreateShapeExport()
Definition: xmlexp.cxx:1705
rtl::Reference< XMLFontAutoStylePool > const & GetFontAutoStylePool()
Definition: xmlexp.hxx:601
rtl::Reference< SvXMLAutoStylePoolP > mxAutoStylePool
Definition: xmlexp.hxx:145
provides functionality for exporting a complete form layer.
SettingsGroup(const ::xmloff::token::XMLTokenEnum _eGroupName, const css::uno::Sequence< css::beans::PropertyValue > &_rSettings)
Definition: xmlexp.hxx:234
css::uno::Reference< css::lang::XEventListener > mxEventListener
Definition: xmlexp.hxx:131
css::uno::Reference< css::frame::XModel > mxModel
Definition: xmlexp.hxx:123
void setExportFlags(SvXMLExportFlags nExportFlags)
Definition: xmlexp.hxx:178
Export instances of EventsSupplier services.
rtl::Reference< XMLPageExport > const & GetPageExport()
Definition: xmlexp.hxx:593
bool IsSaveLinkedSections() const
Definition: xmlexp.hxx:474
SvXMLErrorFlags mnErrorFlags
Definition: xmlexp.hxx:158
rtl::Reference< xmloff::OFormLayerXMLExport > const & GetFormExport()
Definition: xmlexp.hxx:609
css::uno::Reference< css::util::XNumberFormatsSupplier > mxNumberFormatsSupplier
Definition: xmlexp.hxx:126
css::uno::Reference< css::xml::sax::XExtendedDocumentHandler > mxExtHandler
Definition: xmlexp.hxx:125
const css::uno::Reference< css::task::XStatusIndicator > & GetStatusIndicator() const
Definition: xmlexp.hxx:452
Export an ImageMap as defined by service com.sun.star.image.ImageMap to XML.
#define XMLOFF_DLLPUBLIC
Definition: dllapi.h:29
SvXMLExportFlags getExportFlags() const
Definition: xmlexp.hxx:477
std::unique_ptr< XMLEventExport > mpEventExport
Definition: xmlexp.hxx:150
bool HasFormExport() const
Definition: xmlexp.hxx:617
SvXMLErrorFlags
Definition: xmlerror.hxx:78
rtl::Reference< SvXMLAttributeList > mxAttrList
Definition: xmlexp.hxx:133
css::uno::Reference< css::uno::XComponentContext > m_xContext
Definition: xmlexp.hxx:120
OUString msOrigFileName
Definition: xmlexp.hxx:135
typedef void(CALLTYPE *GetFuncDataPtr)(sal_uInt16 &nNo