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 AddAttribute( sal_uInt16 nPrefix, const OUString& rName,
341  const OUString& rValue );
342  void AddAttribute( sal_uInt16 nPrefix,
344  const OUString& rValue );
345  void AddAttribute( sal_uInt16 nPrefix,
348  void AddAttribute( const OUString& rQName,
349  const OUString& rValue );
350  void AddAttribute( const OUString& rQName,
352 
365  void AddLanguageTagAttributes( sal_uInt16 nPrefix, sal_uInt16 nPrefixRfc,
366  const css::lang::Locale& rLocale, bool bWriteEmpty);
367 
371  void AddLanguageTagAttributes( sal_uInt16 nPrefix, sal_uInt16 nPrefixRfc,
372  const LanguageTag& rLanguageTag, bool bWriteEmpty );
373 
374  // add several attributes to the common attribute list
375  void AddAttributeList( const css::uno::Reference<
376  css::xml::sax::XAttributeList >& xAttrList );
377 
378  // Get common attribute list as implementation or interface.
379  SvXMLAttributeList &GetAttrList() { return *mxAttrList; }
380  css::uno::Reference< css::xml::sax::XAttributeList > GetXAttrList() const { return mxAttrList; }
381 
382  // Get document handler. This methods are not const, because the
383  // reference allows modifications through the handler.
384  const css::uno::Reference< css::xml::sax::XDocumentHandler > & GetDocHandler() const { return mxHandler; }
385 
386  // Get original URL.
387  const OUString& GetOrigFileName() const { return msOrigFileName; }
388 
389  // Get (const) namespace map.
390  const SvXMLNamespaceMap& GetNamespaceMap() const { return *mpNamespaceMap; }
391 
392  // Get author id to remove personal info
393  size_t GetInfoID( const OUString sPersonalInfo ) const { return mpAuthorIDs->GetInfoID(sPersonalInfo); }
394 
395  // Get unit converter
396  const SvXMLUnitConverter& GetMM100UnitConverter() const { return maUnitConv; }
397 
398  SvXMLUnitConverter& GetMM100UnitConverter() { return maUnitConv; }
399 
400  void addChaffWhenEncryptedStorage();
401 
402  // Export the document.
404 
405  void collectDataStyles(bool bFromUsedStyles);
406  virtual void addDataStyle(const sal_Int32 nNumberFormat, bool bTimeFormat = false );
407  virtual void exportDataStyles();
408  virtual void exportAutoDataStyles();
409  virtual OUString getDataStyleName(const sal_Int32 nNumberFormat, bool bTimeFormat = false ) const;
410  sal_Int32 dataStyleForceSystemLanguage(sal_Int32 nFormat) const;
411 
412  virtual void exportAnnotationMeta( const css::uno::Reference < css::drawing::XShape >& xShape);
413 
414  // Get XModel
415  const css::uno::Reference< css::frame::XModel > &
416  GetModel() const { return mxModel; }
417  // Get XNumberFormatsSupplier
418  css::uno::Reference< css::util::XNumberFormatsSupplier > & GetNumberFormatsSupplier() { return mxNumberFormatsSupplier; }
419  void SetNumberFormatsSupplier(const css::uno::Reference< css::util::XNumberFormatsSupplier >& _xNumberFormatSupplier)
420  {
421  mxNumberFormatsSupplier = _xNumberFormatSupplier;
422  if ( mxNumberFormatsSupplier.is() && mxHandler.is() )
423  mpNumExport.reset( new SvXMLNumFmtExport(*this, mxNumberFormatsSupplier) );
424  }
425 
426  // get export helper for text
427  inline rtl::Reference< XMLTextParagraphExport > const & GetTextParagraphExport();
428 
429  // get export helper for shapes
430  inline rtl::Reference< XMLShapeExport > const & GetShapeExport();
431 
432  // get auto style pool
433  inline rtl::Reference< SvXMLAutoStylePoolP > const & GetAutoStylePool();
434 
435  // get Page Export
436  inline rtl::Reference< XMLPageExport > const & GetPageExport();
437 
438  // get chart export helper
439  inline rtl::Reference< SchXMLExportHelper > const & GetChartExport();
440 
441  // get font auto style pool
442  inline rtl::Reference< XMLFontAutoStylePool > const & GetFontAutoStylePool();
443 
444  ProgressBarHelper* GetProgressBarHelper();
445 
446  // get Formlayer Export
447  inline rtl::Reference< xmloff::OFormLayerXMLExport > const & GetFormExport();
448  inline bool HasFormExport() const;
449 
450  // get XPropertySet with export information
451  const css::uno::Reference< css::beans::XPropertySet >& getExportInfo() const { return mxExportInfo; }
452 
453  const css::uno::Reference< css::task::XStatusIndicator >& GetStatusIndicator() const { return mxStatusIndicator; }
454 
457  XMLEventExport& GetEventExport();
458 
460  XMLImageMapExport& GetImageMapExport();
461 
462  OUString AddEmbeddedXGraphic(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic, OUString & rOutMimeType, OUString const & rRequestedName = OUString());
463  bool AddEmbeddedXGraphicAsBase64(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic);
464  bool GetGraphicMimeTypeFromStream(css::uno::Reference<css::graphic::XGraphic> const & rxGraphic, OUString & rOutMimeType);
465 
466  OUString AddEmbeddedObject(
467  const OUString& rEmbeddedObjectURL );
468  bool AddEmbeddedObjectAsBase64(
469  const OUString& rEmbeddedObjectURL );
470 
471  OUString EncodeStyleName( const OUString& rName,
472  bool *pEncoded=nullptr ) const;
473 
474  // save linked sections?
475  bool IsSaveLinkedSections() const { return mbSaveLinkedSections; }
476 
477  // get export flags
478  SvXMLExportFlags getExportFlags() const { return mnExportFlags; }
479 
480  void ExportEmbeddedOwnObject(
481  css::uno::Reference<css::lang::XComponent > const & rComp );
482 
483  OUString GetRelativeReference(const OUString& rValue);
484 
485  // methods for accessing the document handler and handling SAX errors
486  void StartElement(sal_uInt16 nPrefix,
488  bool bIgnWSOutside );
489  void StartElement(const OUString& rName,
490  bool bIgnWSOutside );
491  void Characters(const OUString& rChars);
492  void EndElement(sal_uInt16 nPrefix,
494  bool bIgnWSInside );
495  void EndElement(const OUString& rName,
496  bool bIgnWSInside );
497  void IgnorableWhitespace();
498 
504  void SetError(
506  sal_Int32 nId,
508  const css::uno::Sequence< OUString> & rMsgParams,
510  const OUString& rExceptionMessage,
512  const css::uno::Reference<css::xml::sax::XLocator> & rLocator );
513 
514  void SetError(
515  sal_Int32 nId,
516  const css::uno::Sequence< OUString> & rMsgParams);
517 
518  virtual void DisposingModel();
519 
520  ::comphelper::UnoInterfaceToUniqueIdentifierMapper& getInterfaceToIdentifierMapper();
521 
522  const css::uno::Reference< css::uno::XComponentContext >& getComponentContext() const { return m_xContext;}
523 
524  // Shapes in Writer cannot be named via context menu (#i51726#)
526  {
527  return meModelType;
528  }
529 
530  // Written OpenDocument file format doesn't fit to the created text document (#i69627#)
531  bool writeOutlineStyleAsNormalListStyle() const;
532 
533  css::uno::Reference< css::embed::XStorage > const & GetTargetStorage() const;
534 
536  char const* GetODFVersionAttributeValue() const;
537 
539  SvtSaveOptions::ODFSaneDefaultVersion getSaneDefaultVersion() const;
540 
541  // FIXME: this is only for legacy stuff that has not yet been adapted
542  // to implement XMetadatable; this can write duplicate IDs!
544  void SAL_DLLPRIVATE AddAttributeIdLegacy(
545  sal_uInt16 const nLegacyPrefix, OUString const& rValue);
546 
548  void AddAttributeXmlId(css::uno::Reference<css::uno::XInterface> const & i_xIfc);
549 
551  void AddAttributesRDFa( css::uno::Reference<css::text::XTextContent> const & i_xTextContent);
552 
553  bool exportTextNumberElement() const;
554 
556  bool SetNullDateOnUnitConverter();
557 
559  OUString const & GetImageFilterName() const;
560 };
561 
563 {
564  if( !mxTextParagraphExport.is() )
565  mxTextParagraphExport = CreateTextParagraphExport();
566 
567  return mxTextParagraphExport;
568 }
569 
571 {
572  if( !mxShapeExport.is() )
573  mxShapeExport = CreateShapeExport();
574 
575  return mxShapeExport;
576 }
577 
579 {
580  if( !mxAutoStylePool.is() )
581  mxAutoStylePool = CreateAutoStylePool();
582 
583  return mxAutoStylePool;
584 }
585 
587 {
588  if( !mxChartExport.is() )
589  mxChartExport = CreateChartExport();
590 
591  return mxChartExport;
592 }
593 
595 {
596  if( !mxPageExport.is() )
597  mxPageExport = CreatePageExport();
598 
599  return mxPageExport;
600 }
601 
603 {
604  if( !mxFontAutoStylePool.is() )
605  mxFontAutoStylePool = CreateFontAutoStylePool();
606 
607  return mxFontAutoStylePool;
608 }
609 
611 {
612  if( !mxFormExport.is() )
613  mxFormExport = CreateFormExport();
614 
615  return mxFormExport;
616 }
617 
618 inline bool SvXMLExport::HasFormExport() const
619 {
620  return mxFormExport.is();
621 }
622 
624  css::uno::Reference< css::document::XEmbeddedObjectResolver > const & _xEmbeddedResolver )
625 {
626  mxEmbeddedResolver = _xEmbeddedResolver;
627 }
628 
630  css::uno::Reference<css::document::XGraphicStorageHandler> const & rxGraphicStorageHandler)
631 {
632  mxGraphicStorageHandler = rxGraphicStorageHandler;
633 }
634 
635 // Helper class to export an element.
637 {
639  OUString maElementName;
640  const bool mbIgnoreWhitespaceInside :1;
641  const bool mbDoSomething :1;
642 
643  SAL_DLLPRIVATE
644  void StartElement(
645  const sal_uInt16 nPrefix,
646  const OUString& rName,
647  const bool bIgnoreWhitespaceOutside );
648 
649 public:
650 
651  // The constructor prints a start tag that has the common attributes
652  // of the XMLExport instance attached.
653  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
654  const char *pName,
655  bool bIgnWSOutside, bool bIgnWSInside );
656  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
657  const OUString& rName,
658  bool bIgnWSOutside, bool bIgnWSInside );
659  SvXMLElementExport( SvXMLExport& rExp, sal_uInt16 nPrefix,
661  bool bIgnWSOutside, bool bIgnWSInside );
662  SvXMLElementExport( SvXMLExport& rExp, const OUString& rQName,
663  bool bIgnWSOutside, bool bIgnWSInside );
664 
665  // These constructors do nothing if bDoSomething is not set
666  SvXMLElementExport( SvXMLExport& rExp, bool bDoSomething,
667  sal_uInt16 nPrefix,
669  bool bIgnWSOutside, bool bIgnWSInside );
670 
671  // The destructor prints an end tag.
673 };
674 
675 #endif // _XMLOFF_SVXMLEXP_HXX
676 
677 /* 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:639
rtl::Reference< XMLShapeExport > const & GetShapeExport()
Definition: xmlexp.hxx:570
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:393
rtl::Reference< XMLTextParagraphExport > const & GetTextParagraphExport()
Definition: xmlexp.hxx:562
const SvXMLUnitConverter & GetMM100UnitConverter() const
Definition: xmlexp.hxx:396
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:1683
css::uno::Reference< css::document::XGraphicStorageHandler > mxGraphicStorageHandler
Definition: xmlexp.hxx:128
SvXMLExport & mrExport
Definition: xmlexp.hxx:638
OUString getImplementationName()
virtual XMLTextParagraphExport * CreateTextParagraphExport()
Definition: xmlexp.cxx:1673
std::unique_ptr< SvXMLNamespaceMap > mpNamespaceMap
Definition: xmlexp.hxx:139
const css::uno::Reference< css::xml::sax::XDocumentHandler > & GetDocHandler() const
Definition: xmlexp.hxx:384
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:379
const css::uno::Reference< css::frame::XModel > & GetModel() const
Definition: xmlexp.hxx:416
rtl::Reference< xmloff::OFormLayerXMLExport > mxFormExport
Definition: xmlexp.hxx:151
SchXMLExportHelper * CreateChartExport()
Definition: xmlexp.cxx:1697
exports com.sun.star. frame
xmloff::OFormLayerXMLExport * CreateFormExport()
Definition: xmlexp.cxx:1707
css::uno::Reference< css::xml::sax::XAttributeList > GetXAttrList() const
Definition: xmlexp.hxx:380
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:419
SvtModuleOptions::EFactory GetModelType() const
Definition: xmlexp.hxx:525
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:623
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:522
rtl::Reference< SchXMLExportHelper > const & GetChartExport()
Definition: xmlexp.hxx:586
css::uno::Reference< css::util::XNumberFormatsSupplier > & GetNumberFormatsSupplier()
Definition: xmlexp.hxx:418
OUString m_implementationName
Definition: xmlexp.hxx:122
virtual XMLPageExport * CreatePageExport()
Definition: xmlexp.cxx:1692
unsigned char sal_Bool
virtual XMLFontAutoStylePool * CreateFontAutoStylePool()
Definition: xmlexp.cxx:1702
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:398
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:390
::xmloff::token::XMLTokenEnum eGroupName
Definition: xmlexp.hxx:233
void SetGraphicStorageHandler(css::uno::Reference< css::document::XGraphicStorageHandler > const &rxGraphicStorageHandler)
Definition: xmlexp.hxx:629
const css::uno::Reference< css::beans::XPropertySet > & getExportInfo() const
Definition: xmlexp.hxx:451
OUString msImgFilterName
Definition: xmlexp.hxx:138
SvXMLUnitConverter maUnitConv
Definition: xmlexp.hxx:141
const OUString & GetOrigFileName() const
Definition: xmlexp.hxx:387
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:578
virtual XMLShapeExport * CreateShapeExport()
Definition: xmlexp.cxx:1678
rtl::Reference< XMLFontAutoStylePool > const & GetFontAutoStylePool()
Definition: xmlexp.hxx:602
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.
XMLTokenEnum
The enumeration of all XML tokens.
Definition: xmltoken.hxx:49
rtl::Reference< XMLPageExport > const & GetPageExport()
Definition: xmlexp.hxx:594
bool IsSaveLinkedSections() const
Definition: xmlexp.hxx:475
SvXMLErrorFlags mnErrorFlags
Definition: xmlexp.hxx:160
rtl::Reference< xmloff::OFormLayerXMLExport > const & GetFormExport()
Definition: xmlexp.hxx:610
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:453
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:478
std::unique_ptr< XMLEventExport > mpEventExport
Definition: xmlexp.hxx:152
bool HasFormExport() const
Definition: xmlexp.hxx:618
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