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>
47 
48 #include <xmloff/XMLPageExport.hxx>
50 #include <cppuhelper/implbase.hxx>
51 #include <tools/fldunit.hxx>
52 #include <vcl/errcode.hxx>
53 
54 #include <vector>
55 #include <memory>
56 #include <o3tl/typed_flags_set.hxx>
57 
58 namespace com::sun::star::beans { class XPropertySet; }
59 namespace com::sun::star::document { class XEmbeddedObjectResolver; }
60 namespace com::sun::star::document { class XGraphicStorageHandler; }
61 namespace com::sun::star::embed { class XStorage; }
62 namespace com::sun::star::graphic { class XGraphic; }
63 namespace com::sun::star::lang { class XEventListener; }
64 namespace com::sun::star::task { class XStatusIndicator; }
65 namespace com::sun::star::uno { class XComponentContext; }
66 namespace com::sun::star::util { class XNumberFormatsSupplier; }
67 namespace com::sun::star::xml::sax { class XAttributeList; }
68 namespace com::sun::star::xml::sax { class XDocumentHandler; }
69 namespace com::sun::star::xml::sax { class XExtendedDocumentHandler; }
70 namespace com::sun::star::xml::sax { class XLocator; }
71 
72 class SvXMLNamespaceMap;
74 class SvXMLExport_Impl;
75 class ProgressBarHelper;
76 class XMLEventExport;
77 class XMLImageMapExport;
78 class XMLErrors;
79 class LanguageTag;
80 enum class SvXMLErrorFlags;
81 
82 // Shapes in Writer cannot be named via context menu (#i51726#)
84 
85 namespace com::sun::star {
86  namespace frame { class XModel; }
87  namespace lang { struct Locale; }
88 }
89 namespace comphelper { class UnoInterfaceToUniqueIdentifierMapper; }
90 
91 enum class SvXMLExportFlags {
92  NONE = 0,
93  META = 0x0001,
94  STYLES = 0x0002,
95  MASTERSTYLES = 0x0004,
96  AUTOSTYLES = 0x0008,
97  CONTENT = 0x0010,
98  SCRIPTS = 0x0020,
99  SETTINGS = 0x0040,
100  FONTDECLS = 0x0080,
101  EMBEDDED = 0x0100,
102  PRETTY = 0x0400,
103  OASIS = 0x8000,
104  ALL = 0x05ff
105 };
106 namespace o3tl
107 {
108  template<> struct typed_flags<SvXMLExportFlags> : is_typed_flags<SvXMLExportFlags, 0x85ff> {};
109 }
110 
111 class XMLOFF_DLLPUBLIC SvXMLExport : public cppu::WeakImplHelper<
112  css::document::XFilter,
113  css::lang::XServiceInfo,
114  css::document::XExporter,
115  css::lang::XInitialization,
116  css::container::XNamed,
117  css::lang::XUnoTunnel>
118 {
119  std::unique_ptr<SvXMLExport_Impl> mpImpl; // dummy
120 
121  css::uno::Reference< css::uno::XComponentContext > m_xContext;
123 
124  css::uno::Reference< css::frame::XModel > mxModel;
125  css::uno::Reference< css::xml::sax::XDocumentHandler > mxHandler; // the handlers
126  css::uno::Reference< css::xml::sax::XExtendedDocumentHandler > mxExtHandler;
127  css::uno::Reference< css::util::XNumberFormatsSupplier > mxNumberFormatsSupplier;
128  css::uno::Reference< css::document::XGraphicStorageHandler > mxGraphicStorageHandler;
129  css::uno::Reference< css::document::XEmbeddedObjectResolver > mxEmbeddedResolver;
130  css::uno::Reference< css::task::XStatusIndicator > mxStatusIndicator;
131  css::uno::Reference< css::beans::XPropertySet > mxExportInfo;
132  css::uno::Reference< css::lang::XEventListener > mxEventListener;
133 
134  rtl::Reference<SvXMLAttributeList> mxAttrList; // a common attribute list
135 
136  OUString msOrigFileName; // the original URL
137  OUString msFilterName;
138  OUString msImgFilterName;
139  std::unique_ptr<SvXMLNamespaceMap> mpNamespaceMap; // the namespace map
140  std::unique_ptr<SvtSecurityMapPersonalInfo> mpAuthorIDs; // map authors to remove personal info
141  SvXMLUnitConverter maUnitConv; // the unit converter
142  std::unique_ptr<SvXMLNumFmtExport> mpNumExport;
143  std::unique_ptr<ProgressBarHelper> mpProgressBarHelper;
144 
152  std::unique_ptr<XMLEventExport> mpEventExport;
153  std::unique_ptr<XMLImageMapExport> mpImageMapExport;
154  std::unique_ptr<XMLErrors> mpXMLErrors;
155 
157  SAL_DLLPRIVATE void InitCtor_();
158 
161 
162  const OUString msWS; // " "
163 
164  // Shapes in Writer cannot be named via context menu (#i51726#)
166  SAL_DLLPRIVATE void DetermineModelType_();
167 
168  SAL_DLLPRIVATE void ImplExportMeta(); // <office:meta>
169  SAL_DLLPRIVATE void ImplExportSettings(); // <office:settings>
170  SAL_DLLPRIVATE void ImplExportStyles(); // <office:styles>
171  SAL_DLLPRIVATE void ImplExportAutoStyles();
172  // <office:automatic-styles>
173  SAL_DLLPRIVATE void ImplExportMasterStyles();
174  // <office:master-styles>
175  SAL_DLLPRIVATE void ImplExportContent(); // <office:body>
176  virtual void SetBodyAttributes();
177  void GetViewSettingsAndViews(css::uno::Sequence<css::beans::PropertyValue>& rProps);
178 
179 protected:
180  void setExportFlags( SvXMLExportFlags nExportFlags ) { mnExportFlags = nExportFlags; }
181 
182  // Get (modifiable) namespace map
183  SvXMLNamespaceMap& GetNamespaceMap_() { return *mpNamespaceMap; }
184 
185  // get a new namespace map (used in starmath to have a default namespace)
186  void ResetNamespaceMap();
187 
190  virtual void ExportMeta_();
191 
194  virtual void ExportScripts_();
195 
199  virtual void ExportFontDecls_();
200 
204  virtual void ExportStyles_( bool bUsed );
205 
207  virtual void ExportAutoStyles_() = 0;
208 
210  virtual void ExportMasterStyles_() = 0;
211 
213  virtual void ExportContent_() = 0;
214 
215  OUString const & GetSourceShellID() const;
216  OUString const & GetDestinationShellID() const;
217 
218  // save linked sections? (may be false in global documents)
220 
221  virtual XMLTextParagraphExport* CreateTextParagraphExport();
222  virtual XMLShapeExport* CreateShapeExport();
223  virtual SvXMLAutoStylePoolP* CreateAutoStylePool();
224  SchXMLExportHelper* CreateChartExport();
225  virtual XMLPageExport* CreatePageExport();
226  virtual XMLFontAutoStylePool* CreateFontAutoStylePool();
227  xmloff::OFormLayerXMLExport* CreateFormExport();
228  virtual void GetViewSettings(css::uno::Sequence<css::beans::PropertyValue>& aProps);
229  virtual void GetConfigurationSettings(css::uno::Sequence<css::beans::PropertyValue>& aProps);
230 
232  {
234  css::uno::Sequence< css::beans::PropertyValue > aSettings;
235 
238  const css::uno::Sequence< css::beans::PropertyValue >& _rSettings )
239  :eGroupName( _eGroupName )
240  ,aSettings( _rSettings )
241  {
242  }
243  };
252  virtual sal_Int32 GetDocumentSpecificSettings( ::std::vector< SettingsGroup >& _out_rSettings );
253 
254  const css::uno::Reference< css::document::XEmbeddedObjectResolver >& GetEmbeddedResolver() const { return mxEmbeddedResolver; }
255  inline void SetEmbeddedResolver( css::uno::Reference< css::document::XEmbeddedObjectResolver > const & _xEmbeddedResolver );
256 
257  const css::uno::Reference<css::document::XGraphicStorageHandler> & GetGraphicStorageHandler() const
258  {
259  return mxGraphicStorageHandler;
260  }
261  void SetGraphicStorageHandler(css::uno::Reference<css::document::XGraphicStorageHandler> const & rxGraphicStorageHandler);
262 
263  void SetDocHandler( const css::uno::Reference< css::xml::sax::XDocumentHandler > &rHandler );
264 
266 public:
267 
268  SvXMLExport(
269  const css::uno::Reference< css::uno::XComponentContext >& xContext,
270  OUString const & implementationName,
271  sal_Int16 const eDefaultMeasureUnit /*css::util::MeasureUnit*/,
273  SvXMLExportFlags nExportFlag );
274 
275  SvXMLExport(
276  const css::uno::Reference< css::uno::XComponentContext >& xContext,
277  OUString const & implementationName,
278  const OUString& rFileName,
279  sal_Int16 const eDefaultMeasureUnit /*css::util::MeasureUnit*/,
280  const css::uno::Reference< css::xml::sax::XDocumentHandler > & rHandler);
281 
282  SvXMLExport(
283  const css::uno::Reference< css::uno::XComponentContext >& xContext,
284  OUString const & implementationName,
285  const OUString& rFileName,
286  const css::uno::Reference< css::xml::sax::XDocumentHandler > & rHandler,
287  const css::uno::Reference< css::frame::XModel > &,
288  FieldUnit const eDefaultFieldUnit,
289  SvXMLExportFlags nExportFlag );
290 
291  virtual ~SvXMLExport() override;
292 
293  virtual void collectAutoStyles();
294 
295  // XExporter
296  virtual void SAL_CALL setSourceDocument( const css::uno::Reference< css::lang::XComponent >& xDoc ) override;
297 
298  // XFilter
299  virtual sal_Bool SAL_CALL filter( const css::uno::Sequence< css::beans::PropertyValue >& aDescriptor ) override;
300  virtual void SAL_CALL cancel() override;
301 
302  // XInitialization
303  virtual void SAL_CALL initialize( const css::uno::Sequence< css::uno::Any >& aArguments ) override;
304 
305  // XNamed
306  virtual OUString SAL_CALL getName( ) override;
307  virtual void SAL_CALL setName( const OUString& aName ) override;
308 
309  // XServiceInfo
310  virtual OUString SAL_CALL getImplementationName( ) final override;
311  virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) final override;
312  virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) final override;
313 
314  // XUnoTunnel
315  UNO3_GETIMPLEMENTATION_DECL(SvXMLExport)
316 
327  OUString EnsureNamespace(OUString const & i_rNamespace );
328 
329  // Check if common attribute list is empty.
330 #ifndef DBG_UTIL
331  void CheckAttrList() { (void) this; /* avoid loplugin:staticmethods */ }
332 #else
333  void CheckAttrList();
334 #endif
335 
336  // Clear common attribute list.
337  void ClearAttrList();
338 
339  // Add an attribute to the common attribute list.
340  void AddAttributeASCII( sal_uInt16 nPrefix, const char *pName,
341  const char *pValue );
342  void AddAttribute( sal_uInt16 nPrefix, const char *pName,
343  const OUString& rValue );
344  void AddAttribute( sal_uInt16 nPrefix, const OUString& rName,
345  const OUString& rValue );
346  void AddAttribute( sal_uInt16 nPrefix,
348  const OUString& rValue );
349  void AddAttribute( sal_uInt16 nPrefix,
352  void AddAttribute( const OUString& rQName,
353  const OUString& rValue );
354  void AddAttribute( const OUString& rQName,
356 
369  void AddLanguageTagAttributes( sal_uInt16 nPrefix, sal_uInt16 nPrefixRfc,
370  const css::lang::Locale& rLocale, bool bWriteEmpty);
371 
375  void AddLanguageTagAttributes( sal_uInt16 nPrefix, sal_uInt16 nPrefixRfc,
376  const LanguageTag& rLanguageTag, bool bWriteEmpty );
377 
378  // add several attributes to the common attribute list
379  void AddAttributeList( const css::uno::Reference<
380  css::xml::sax::XAttributeList >& xAttrList );
381 
382  // Get common attribute list as implementation or interface.
383  SvXMLAttributeList &GetAttrList() { return *mxAttrList; }
384  css::uno::Reference< css::xml::sax::XAttributeList > GetXAttrList() const { return mxAttrList; }
385 
386  // Get document handler. This methods are not const, because the
387  // reference allows modifications through the handler.
388  const css::uno::Reference< css::xml::sax::XDocumentHandler > & GetDocHandler() const { return mxHandler; }
389 
390  // Get original URL.
391  const OUString& GetOrigFileName() const { return msOrigFileName; }
392 
393  // Get (const) namespace map.
394  const SvXMLNamespaceMap& GetNamespaceMap() const { return *mpNamespaceMap; }
395 
396  // Get author id to remove personal info
397  size_t GetInfoID( const OUString sPersonalInfo ) const { return mpAuthorIDs->GetInfoID(sPersonalInfo); }
398 
399  // Get unit converter
400  const SvXMLUnitConverter& GetMM100UnitConverter() const { return maUnitConv; }
401 
402  SvXMLUnitConverter& GetMM100UnitConverter() { return maUnitConv; }
403 
404  void addChaffWhenEncryptedStorage();
405 
406  // Export the document.
408 
409  void collectDataStyles(bool bFromUsedStyles);
410  virtual void addDataStyle(const sal_Int32 nNumberFormat, bool bTimeFormat = false );
411  virtual void exportDataStyles();
412  virtual void exportAutoDataStyles();
413  virtual OUString getDataStyleName(const sal_Int32 nNumberFormat, bool bTimeFormat = false ) const;
414  sal_Int32 dataStyleForceSystemLanguage(sal_Int32 nFormat) const;
415 
416  virtual void exportAnnotationMeta( const css::uno::Reference < css::drawing::XShape >& xShape);
417 
418  // Get XModel
419  const css::uno::Reference< css::frame::XModel > &
420  GetModel() const { return mxModel; }
421  // Get XNumberFormatsSupplier
422  css::uno::Reference< css::util::XNumberFormatsSupplier > & GetNumberFormatsSupplier() { return mxNumberFormatsSupplier; }
423  void SetNumberFormatsSupplier(const css::uno::Reference< css::util::XNumberFormatsSupplier >& _xNumberFormatSupplier)
424  {
425  mxNumberFormatsSupplier = _xNumberFormatSupplier;
426  if ( mxNumberFormatsSupplier.is() && mxHandler.is() )
427  mpNumExport.reset( new SvXMLNumFmtExport(*this, mxNumberFormatsSupplier) );
428  }
429 
430  // get export helper for text
431  inline rtl::Reference< XMLTextParagraphExport > const & GetTextParagraphExport();
432 
433  // get export helper for shapes
434  inline rtl::Reference< XMLShapeExport > const & GetShapeExport();
435 
436  // get auto style pool
437  inline rtl::Reference< SvXMLAutoStylePoolP > const & GetAutoStylePool();
438 
439  // get Page Export
440  inline rtl::Reference< XMLPageExport > const & GetPageExport();
441 
442  // get chart export helper
443  inline rtl::Reference< SchXMLExportHelper > const & GetChartExport();
444 
445  // get font auto style pool
446  inline rtl::Reference< XMLFontAutoStylePool > const & GetFontAutoStylePool();
447 
448  ProgressBarHelper* GetProgressBarHelper();
449 
450  // get Formlayer Export
451  inline rtl::Reference< xmloff::OFormLayerXMLExport > const & GetFormExport();
452  inline bool HasFormExport() const;
453 
454  // get XPropertySet with export information
455  const css::uno::Reference< css::beans::XPropertySet >& getExportInfo() const { return mxExportInfo; }
456 
457  const css::uno::Reference< css::task::XStatusIndicator >& GetStatusIndicator() const { return mxStatusIndicator; }
458 
461  XMLEventExport& GetEventExport();
462 
464  XMLImageMapExport& GetImageMapExport();
465 
466  OUString AddEmbeddedXGraphic(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic, OUString & rOutMimeType, OUString const & rRequestedName = OUString());
467  bool AddEmbeddedXGraphicAsBase64(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic);
468  bool GetGraphicMimeTypeFromStream(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic, OUString & rOutMimeType);
469 
470  OUString AddEmbeddedObject(
471  const OUString& rEmbeddedObjectURL );
472  bool AddEmbeddedObjectAsBase64(
473  const OUString& rEmbeddedObjectURL );
474 
475  OUString EncodeStyleName( const OUString& rName,
476  bool *pEncoded=nullptr ) const;
477 
478  // save linked sections?
479  bool IsSaveLinkedSections() const { return mbSaveLinkedSections; }
480 
481  // get export flags
482  SvXMLExportFlags getExportFlags() const { return mnExportFlags; }
483 
484  void ExportEmbeddedOwnObject(
485  css::uno::Reference<css::lang::XComponent > const & rComp );
486 
487  OUString GetRelativeReference(const OUString& rValue);
488 
489  // methods for accessing the document handler and handling SAX errors
490  void StartElement(sal_uInt16 nPrefix,
492  bool bIgnWSOutside );
493  void StartElement(const OUString& rName,
494  bool bIgnWSOutside );
495  void Characters(const OUString& rChars);
496  void EndElement(sal_uInt16 nPrefix,
498  bool bIgnWSInside );
499  void EndElement(const OUString& rName,
500  bool bIgnWSInside );
501  void IgnorableWhitespace();
502 
508  void SetError(
510  sal_Int32 nId,
512  const css::uno::Sequence< OUString> & rMsgParams,
514  const OUString& rExceptionMessage,
516  const css::uno::Reference<css::xml::sax::XLocator> & rLocator );
517 
518  void SetError(
519  sal_Int32 nId,
520  const css::uno::Sequence< OUString> & rMsgParams);
521 
522  virtual void DisposingModel();
523 
524  ::comphelper::UnoInterfaceToUniqueIdentifierMapper& getInterfaceToIdentifierMapper();
525 
526  const css::uno::Reference< css::uno::XComponentContext >& getComponentContext() const { return m_xContext;}
527 
528  // Shapes in Writer cannot be named via context menu (#i51726#)
530  {
531  return meModelType;
532  }
533 
534  // Written OpenDocument file format doesn't fit to the created text document (#i69627#)
535  bool writeOutlineStyleAsNormalListStyle() const;
536 
537  css::uno::Reference< css::embed::XStorage > const & GetTargetStorage() const;
538 
540  char const* GetODFVersionAttributeValue() const;
541 
543  SvtSaveOptions::ODFSaneDefaultVersion getSaneDefaultVersion() const;
544 
545  // FIXME: this is only for legacy stuff that has not yet been adapted
546  // to implement XMetadatable; this can write duplicate IDs!
548  void SAL_DLLPRIVATE AddAttributeIdLegacy(
549  sal_uInt16 const nLegacyPrefix, OUString const& rValue);
550 
552  void AddAttributeXmlId(css::uno::Reference<css::uno::XInterface> const & i_xIfc);
553 
555  void AddAttributesRDFa( css::uno::Reference<css::text::XTextContent> const & i_xTextContent);
556 
557  bool exportTextNumberElement() const;
558 
560  bool SetNullDateOnUnitConverter();
561 
563  OUString const & GetImageFilterName() const;
564 };
565 
567 {
568  if( !mxTextParagraphExport.is() )
569  mxTextParagraphExport = CreateTextParagraphExport();
570 
571  return mxTextParagraphExport;
572 }
573 
575 {
576  if( !mxShapeExport.is() )
577  mxShapeExport = CreateShapeExport();
578 
579  return mxShapeExport;
580 }
581 
583 {
584  if( !mxAutoStylePool.is() )
585  mxAutoStylePool = CreateAutoStylePool();
586 
587  return mxAutoStylePool;
588 }
589 
591 {
592  if( !mxChartExport.is() )
593  mxChartExport = CreateChartExport();
594 
595  return mxChartExport;
596 }
597 
599 {
600  if( !mxPageExport.is() )
601  mxPageExport = CreatePageExport();
602 
603  return mxPageExport;
604 }
605 
607 {
608  if( !mxFontAutoStylePool.is() )
609  mxFontAutoStylePool = CreateFontAutoStylePool();
610 
611  return mxFontAutoStylePool;
612 }
613 
615 {
616  if( !mxFormExport.is() )
617  mxFormExport = CreateFormExport();
618 
619  return mxFormExport;
620 }
621 
622 inline bool SvXMLExport::HasFormExport() const
623 {
624  return mxFormExport.is();
625 }
626 
628  css::uno::Reference< css::document::XEmbeddedObjectResolver > const & _xEmbeddedResolver )
629 {
630  mxEmbeddedResolver = _xEmbeddedResolver;
631 }
632 
634  css::uno::Reference<css::document::XGraphicStorageHandler> const & rxGraphicStorageHandler)
635 {
636  mxGraphicStorageHandler = rxGraphicStorageHandler;
637 }
638 
639 // Helper class to export an element.
641 {
643  OUString maElementName;
644  const bool mbIgnoreWhitespaceInside :1;
645  const bool mbDoSomething :1;
646 
647  SAL_DLLPRIVATE
648  void StartElement(
649  const sal_uInt16 nPrefix,
650  const OUString& rName,
651  const bool bIgnoreWhitespaceOutside );
652 
653 public:
654 
655  // The constructor prints a start tag that has the common attributes
656  // of the XMLExport instance attached.
657  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
658  const char *pName,
659  bool bIgnWSOutside, bool bIgnWSInside );
660  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
661  const OUString& rName,
662  bool bIgnWSOutside, bool bIgnWSInside );
663  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
665  bool bIgnWSOutside, bool bIgnWSInside );
666  SvXMLElementExport( SvXMLExport& rExp, const OUString& rQName,
667  bool bIgnWSOutside, bool bIgnWSInside );
668 
669  // These constructors do nothing if bDoSomething is not set
670  SvXMLElementExport( SvXMLExport& rExp, bool bDoSomething,
671  sal_uInt16 nPrefix,
673  bool bIgnWSOutside, bool bIgnWSInside );
674 
675  // The destructor prints an end tag.
677 };
678 
679 #endif // _XMLOFF_SVXMLEXP_HXX
680 
681 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
std::unique_ptr< SvtSecurityMapPersonalInfo > mpAuthorIDs
Definition: xmlexp.hxx:140
SvXMLExportFlags mnExportFlags
Definition: xmlexp.hxx:159
FieldUnit
OUString maElementName
Definition: xmlexp.hxx:643
rtl::Reference< XMLShapeExport > const & GetShapeExport()
Definition: xmlexp.hxx:574
the SvXMLTypeConverter converts values of various types from their internal representation to the tex...
Definition: xmluconv.hxx:82
int SetError()
size_t GetInfoID(const OUString sPersonalInfo) const
Definition: xmlexp.hxx:397
rtl::Reference< XMLTextParagraphExport > const & GetTextParagraphExport()
Definition: xmlexp.hxx:566
const SvXMLUnitConverter & GetMM100UnitConverter() const
Definition: xmlexp.hxx:400
SvXMLExportFlags
Definition: xmlexp.hxx:91
css::uno::Reference< css::beans::XPropertySet > mxExportInfo
Definition: xmlexp.hxx:131
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:1728
css::uno::Reference< css::document::XGraphicStorageHandler > mxGraphicStorageHandler
Definition: xmlexp.hxx:128
SvXMLExport & mrExport
Definition: xmlexp.hxx:642
OUString getImplementationName()
virtual XMLTextParagraphExport * CreateTextParagraphExport()
Definition: xmlexp.cxx:1718
std::unique_ptr< SvXMLNamespaceMap > mpNamespaceMap
Definition: xmlexp.hxx:139
const css::uno::Reference< css::xml::sax::XDocumentHandler > & GetDocHandler() const
Definition: xmlexp.hxx:388
OUString msFilterName
Definition: xmlexp.hxx:137
css::uno::Reference< css::document::XEmbeddedObjectResolver > mxEmbeddedResolver
Definition: xmlexp.hxx:129
rtl::Reference< XMLShapeExport > mxShapeExport
Definition: xmlexp.hxx:146
SvXMLAttributeList & GetAttrList()
Definition: xmlexp.hxx:383
const css::uno::Reference< css::frame::XModel > & GetModel() const
Definition: xmlexp.hxx:420
rtl::Reference< xmloff::OFormLayerXMLExport > mxFormExport
Definition: xmlexp.hxx:151
SchXMLExportHelper * CreateChartExport()
Definition: xmlexp.cxx:1742
exports com.sun.star. frame
xmloff::OFormLayerXMLExport * CreateFormExport()
Definition: xmlexp.cxx:1752
css::uno::Reference< css::xml::sax::XAttributeList > GetXAttrList() const
Definition: xmlexp.hxx:384
css::uno::Reference< css::task::XStatusIndicator > mxStatusIndicator
Definition: xmlexp.hxx:130
css::uno::Sequence< css::beans::PropertyValue > aSettings
Definition: xmlexp.hxx:234
void SetNumberFormatsSupplier(const css::uno::Reference< css::util::XNumberFormatsSupplier > &_xNumberFormatSupplier)
Definition: xmlexp.hxx:423
XMLTokenEnum
The enumeration of all XML tokens.
Definition: xmltoken.hxx:49
SvtModuleOptions::EFactory GetModelType() const
Definition: xmlexp.hxx:529
std::unique_ptr< SvXMLNumFmtExport > mpNumExport
Definition: xmlexp.hxx:142
bool mbAutoStylesCollected
Definition: xmlexp.hxx:265
rtl::Reference< XMLFontAutoStylePool > mxFontAutoStylePool
Definition: xmlexp.hxx:150
std::unique_ptr< ProgressBarHelper > mpProgressBarHelper
Definition: xmlexp.hxx:143
void SetEmbeddedResolver(css::uno::Reference< css::document::XEmbeddedObjectResolver > const &_xEmbeddedResolver)
Definition: xmlexp.hxx:627
rtl::Reference< SchXMLExportHelper > mxChartExport
Definition: xmlexp.hxx:148
sal_uInt16 char * pName
rtl::Reference< XMLTextParagraphExport > mxTextParagraphExport
Definition: xmlexp.hxx:145
class SAL_NO_VTABLE XPropertySet
RequestPriorityClass meClass
const css::uno::Reference< css::document::XGraphicStorageHandler > & GetGraphicStorageHandler() const
Definition: xmlexp.hxx:257
css::uno::Reference< css::xml::sax::XDocumentHandler > mxHandler
Definition: xmlexp.hxx:125
const OUString msWS
Definition: xmlexp.hxx:162
const css::uno::Reference< css::uno::XComponentContext > & getComponentContext() const
Definition: xmlexp.hxx:526
rtl::Reference< SchXMLExportHelper > const & GetChartExport()
Definition: xmlexp.hxx:590
css::uno::Reference< css::util::XNumberFormatsSupplier > & GetNumberFormatsSupplier()
Definition: xmlexp.hxx:422
OUString m_implementationName
Definition: xmlexp.hxx:122
virtual XMLPageExport * CreatePageExport()
Definition: xmlexp.cxx:1737
unsigned char sal_Bool
virtual XMLFontAutoStylePool * CreateFontAutoStylePool()
Definition: xmlexp.cxx:1747
std::unique_ptr< SvXMLExport_Impl > mpImpl
Definition: xmlexp.hxx:119
std::unique_ptr< XMLImageMapExport > mpImageMapExport
Definition: xmlexp.hxx:153
With this class you can export a element containing its data as element o...
SvXMLUnitConverter & GetMM100UnitConverter()
Definition: xmlexp.hxx:402
bool mbSaveLinkedSections
Definition: xmlexp.hxx:219
const css::uno::Reference< css::document::XEmbeddedObjectResolver > & GetEmbeddedResolver() const
Definition: xmlexp.hxx:254
const uno::Reference< uno::XComponentContext > m_xContext
const SvXMLNamespaceMap & GetNamespaceMap() const
Definition: xmlexp.hxx:394
::xmloff::token::XMLTokenEnum eGroupName
Definition: xmlexp.hxx:233
void SetGraphicStorageHandler(css::uno::Reference< css::document::XGraphicStorageHandler > const &rxGraphicStorageHandler)
Definition: xmlexp.hxx:633
const css::uno::Reference< css::beans::XPropertySet > & getExportInfo() const
Definition: xmlexp.hxx:455
OUString msImgFilterName
Definition: xmlexp.hxx:138
SvXMLUnitConverter maUnitConv
Definition: xmlexp.hxx:141
const OUString & GetOrigFileName() const
Definition: xmlexp.hxx:391
SvtModuleOptions::EFactory meModelType
Definition: xmlexp.hxx:165
rtl::Reference< XMLPageExport > mxPageExport
Definition: xmlexp.hxx:149
std::unique_ptr< XMLErrors > mpXMLErrors
Definition: xmlexp.hxx:154
SvXMLNamespaceMap & GetNamespaceMap_()
Definition: xmlexp.hxx:183
rtl::Reference< SvXMLAutoStylePoolP > const & GetAutoStylePool()
Definition: xmlexp.hxx:582
virtual XMLShapeExport * CreateShapeExport()
Definition: xmlexp.cxx:1723
rtl::Reference< XMLFontAutoStylePool > const & GetFontAutoStylePool()
Definition: xmlexp.hxx:606
exports com.sun.star. lang
rtl::Reference< SvXMLAutoStylePoolP > mxAutoStylePool
Definition: xmlexp.hxx:147
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:236
css::uno::Reference< css::lang::XEventListener > mxEventListener
Definition: xmlexp.hxx:132
css::uno::Reference< css::frame::XModel > mxModel
Definition: xmlexp.hxx:124
void setExportFlags(SvXMLExportFlags nExportFlags)
Definition: xmlexp.hxx:180
Export instances of EventsSupplier services.
rtl::Reference< XMLPageExport > const & GetPageExport()
Definition: xmlexp.hxx:598
bool IsSaveLinkedSections() const
Definition: xmlexp.hxx:479
SvXMLErrorFlags mnErrorFlags
Definition: xmlexp.hxx:160
rtl::Reference< xmloff::OFormLayerXMLExport > const & GetFormExport()
Definition: xmlexp.hxx:614
css::uno::Reference< css::util::XNumberFormatsSupplier > mxNumberFormatsSupplier
Definition: xmlexp.hxx:127
css::uno::Reference< css::xml::sax::XExtendedDocumentHandler > mxExtHandler
Definition: xmlexp.hxx:126
const css::uno::Reference< css::task::XStatusIndicator > & GetStatusIndicator() const
Definition: xmlexp.hxx:457
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:482
std::unique_ptr< XMLEventExport > mpEventExport
Definition: xmlexp.hxx:152
bool HasFormExport() const
Definition: xmlexp.hxx:622
SvXMLErrorFlags
Definition: xmlerror.hxx:78
rtl::Reference< SvXMLAttributeList > mxAttrList
Definition: xmlexp.hxx:134
css::uno::Reference< css::uno::XComponentContext > m_xContext
Definition: xmlexp.hxx:121
OUString msOrigFileName
Definition: xmlexp.hxx:136
typedef void(CALLTYPE *GetFuncDataPtr)(sal_uInt16 &nNo