LibreOffice Module xmloff (master) 1
txtparae.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_TXTPARAE_HXX
21#define INCLUDED_XMLOFF_TXTPARAE_HXX
22
23#include <sal/config.h>
24#include <rtl/ref.hxx>
25#include <xmloff/dllapi.h>
26#include <rtl/ustring.hxx>
27#include <com/sun/star/uno/Reference.h>
28#include <xmloff/maptype.hxx>
29#include <xmloff/styleexp.hxx>
30#include <xmloff/xmltoken.hxx>
34#include <o3tl/span.hxx>
35#include <memory>
36#include <vector>
37
39class SvXMLExport;
47enum class XMLShapeExportFlags;
49
50namespace com::sun::star
51{
52 namespace beans { class XPropertySet; class XPropertyState;
53 class XPropertySetInfo; }
54 namespace container { class XEnumeration; class XIndexAccess; class XNameReplace; }
55 namespace drawing { class XShape; }
56 namespace text { class XTextContent; class XTextRange; class XText;
57 class XFootnote; class XTextFrame; class XTextSection;
58 class XTextField; }
59}
60
61namespace xmloff
62{
63 class OFormLayerXMLExport;
64 class BoundFrameSets;
65
66}
67
68namespace basegfx
69{
70 class B2DPoint;
71}
72
73enum class TextPNS
74{
75 ODF,
77};
78
80{
81 struct Impl;
82 std::unique_ptr<Impl> m_xImpl;
83
84// SvXMLExport& rExport;
92
93 const ::std::unique_ptr< ::xmloff::BoundFrameSets > m_pBoundFrameSets;
94 std::unique_ptr<XMLTextFieldExport> m_pFieldExport;
95 std::vector<OUString> maListElements;
97 std::unique_ptr<XMLSectionExport> m_pSectionExport;
98 std::unique_ptr<XMLIndexMarkExport> m_pIndexMarkExport;
99
101 std::unique_ptr<XMLRedlineExport> m_pRedlineExport;
102
104
106
107 // keep track of open rubies
111
113 ::std::vector< std::unique_ptr<XMLTextListsHelper> > maTextListsHelperStack;
114
115 struct DocumentListNodes;
116 std::unique_ptr<DocumentListNodes> mpDocumentListNodes;
117
120
122
123 enum class FrameType { Text, Graphic, Embedded, Shape };
124public:
125
126 enum FieldmarkType { NONE, TEXT, CHECK }; // Used for simulating fieldmarks in OpenDocument 1.n Strict (for n <= 2). CHECK currently ignored.
127
128
129 void exportTextRangeSpan(
130 const css::uno::Reference< css::text::XTextRange > & rTextRange,
131 css::uno::Reference< css::beans::XPropertySet > const & xPropSet,
132 css::uno::Reference < css::beans::XPropertySetInfo > & xPropSetInfo,
133 const bool bIsUICharStyle,
134 const bool bHasAutoStyle,
135 const OUString& sStyle,
136 bool& rPrevCharIsSpace,
137 FieldmarkType& openFieldMark);
138
139private:
140
141 // Implement Title/Description Elements UI (#i73249#)
142 static constexpr OUStringLiteral gsAnchorCharStyleName = u"AnchorCharStyleName";
143 static constexpr OUStringLiteral gsBeginNotice = u"BeginNotice";
144 static constexpr OUStringLiteral gsCategory = u"Category";
145 static constexpr OUStringLiteral gsCharStyleName = u"CharStyleName";
146 static constexpr OUStringLiteral gsCharStyleNames = u"CharStyleNames";
147 static constexpr OUStringLiteral gsEndNotice = u"EndNotice";
148 static constexpr OUStringLiteral gsFootnote = u"Footnote";
149 static constexpr OUStringLiteral gsFootnoteCounting = u"FootnoteCounting";
150 static constexpr OUStringLiteral gsNumberingType = u"NumberingType";
151 static constexpr OUStringLiteral gsPageDescName = u"PageDescName";
152 static constexpr OUStringLiteral gsPageStyleName = u"PageStyleName";
153 static constexpr OUStringLiteral gsParaStyleName = u"ParaStyleName";
154 static constexpr OUStringLiteral gsPositionEndOfDoc = u"PositionEndOfDoc";
155 static constexpr OUStringLiteral gsPrefix = u"Prefix";
156 static constexpr OUStringLiteral gsReferenceId = u"ReferenceId";
157 static constexpr OUStringLiteral gsStartAt = u"StartAt";
158 static constexpr OUStringLiteral gsSuffix = u"Suffix";
159 static constexpr OUStringLiteral gsTextEndnoteService = u"com.sun.star.text.Endnote";
160 static constexpr OUStringLiteral gsTextSection = u"TextSection";
161
162protected:
163 static constexpr OUStringLiteral gsFrameStyleName = u"FrameStyleName";
165
166 SvXMLAutoStylePoolP& GetAutoStylePool() { return m_rAutoStylePool; }
167 const SvXMLAutoStylePoolP& GetAutoStylePool() const { return m_rAutoStylePool; }
168
169public:
171 {
172 return m_xParaPropMapper;
173 }
174
176 {
177 return m_xTextPropMapper;
178 }
179
181 {
182 return m_xAutoFramePropMapper;
183 }
185 {
186 return m_xSectionPropMapper;
187 }
189 {
190 return m_xRubyPropMapper;
191 }
192
193 OUString FindTextStyle(
194 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
195 bool& rbHasCharStyle,
196 bool& rbHasAutoStyle,
197 const XMLPropertyState** pAddState = nullptr) const;
198
199 void exportTextRangeEnumeration(
200 const css::uno::Reference< css::container::XEnumeration > & rRangeEnum,
201 bool bAutoStyles, bool bProgress, bool & rPrevCharIsSpace);
202
203protected:
204
205 XMLShapeExportFlags addTextFrameAttributes(
206 const css::uno::Reference< css::beans::XPropertySet >& rPropSet,
207 bool bShape,
208 basegfx::B2DPoint* pCenter = nullptr,
209 OUString *pMinHeightValue = nullptr,
210 OUString *pMinWidthValue = nullptr );
211
212 virtual void exportStyleAttributes(
213 const css::uno::Reference< css::style::XStyle > & rStyle ) override;
214
215 void exportPageFrames( bool bProgress );
216 void exportFrameFrames( bool bAutoStyles, bool bProgress,
217 const css::uno::Reference< css::text::XTextFrame >& rParentTxtFrame );
218
219 void exportNumStyles( bool bUsed );
220
222 const css::uno::Reference <
223 css::text::XText > & rText,
224 bool bAutoStyles, bool bProgress, bool bExportParagraph, TextPNS eExtensionNS = TextPNS::ODF );
225
227 const css::uno::Reference< css::text::XText > & rText,
228 const css::uno::Reference< css::text::XTextSection > & rBaseSection,
229 bool bAutoStyles, bool bProgress, bool bExportParagraph );
230
231 void exportTextContentEnumeration(
232 const css::uno::Reference< css::container::XEnumeration > & rContentEnum,
233 bool bAutoStyles,
234 const css::uno::Reference< css::text::XTextSection > & rBaseSection,
235 bool bProgress,
236 bool bExportParagraph = true,
237 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet = nullptr,
238 TextPNS eExtensionNS = TextPNS::ODF);
239 void exportParagraph(
240 const css::uno::Reference< css::text::XTextContent > & rTextContent,
241 bool bAutoStyles, bool bProgress,
242 bool bExportParagraph,
243 MultiPropertySetHelper& rPropSetHelper,
244 TextPNS eExtensionNS);
245
246 virtual void exportTable(
247 const css::uno::Reference< css::text::XTextContent > & rTextContent,
248 bool bAutoStyles, bool bProgress );
249
251 const css::uno::Reference< css::text::XTextRange > & rTextRange,
252 bool bAutoStyles, bool bProgress, bool * pPrevCharIsSpace);
253
255 const css::uno::Reference< css::text::XTextField> & xTextField,
256 const bool bAutoStyles, const bool bProgress,
257 const bool bRecursive, bool * pPrevCharIsSpace);
258
259 void exportAnyTextFrame(
260 const css::uno::Reference< css::text::XTextContent > & rTextContent,
261 FrameType eTxpe,
262 bool bAutoStyles, bool bProgress, bool bExportContent,
263 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet );
264 void _exportTextFrame(
265 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
266 const css::uno::Reference< css::beans::XPropertySetInfo > & rPropSetInfo,
267 bool bProgress );
268 inline void exportTextFrame(
269 const css::uno::Reference< css::text::XTextContent > & rTextContent,
270 bool bAutoStyles, bool bProgress, bool bExportContent,
271 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet = nullptr );
272 inline void exportShape(
273 const css::uno::Reference< css::text::XTextContent > & rTextContent,
274 bool bAutoStyles,
275 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet = nullptr );
276
277 void exportContour(
278 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
279 const css::uno::Reference< css::beans::XPropertySetInfo > & rPropSetInfo );
280 void _exportTextGraphic(
281 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
282 const css::uno::Reference< css::beans::XPropertySetInfo > & rPropSetInfo );
283 inline void exportTextGraphic(
284 const css::uno::Reference< css::text::XTextContent > & rTextContent,
285 bool bAutoStyles,
286 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet = nullptr );
287
288 virtual void _collectTextEmbeddedAutoStyles(
289 const css::uno::Reference< css::beans::XPropertySet > & rPropSet );
290 virtual void _exportTextEmbedded(
291 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
292 const css::uno::Reference< css::beans::XPropertySetInfo > & rPropSetInfo );
293 inline void exportTextEmbedded(
294 const css::uno::Reference< css::text::XTextContent > & rTextContent,
295 bool bAutoStyles,
296 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet = nullptr );
297
299 void exportTextFootnote(
300 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
301 const OUString& sString,
302 bool bAutoStyles, bool bProgress );
303
305 void exportTextFootnoteHelper(
306 const css::uno::Reference< css::text::XFootnote > & rPropSet,
307 const css::uno::Reference< css::text::XText> & rText,
308 const OUString& sString,
309 bool bAutoStyles,
310 bool bIsEndnote, bool bProgress );
311
313 void exportTextFootnoteConfiguration();
314
315 void exportTextFootnoteConfigurationHelper(
316 const css::uno::Reference< css::beans::XPropertySet> & rFootnoteSupplier,
317 bool bIsEndnote);
318
319 void exportTextMark(
320 const css::uno::Reference< css::beans::XPropertySet> & xPropSet,
321 const OUString& rProperty,
322 const enum ::xmloff::token::XMLTokenEnum pElements[],
323 bool bAutoStyles);
324
325 void exportSoftPageBreak();
326
327 void exportTextLineBreak(const css::uno::Reference<css::beans::XPropertySet>& xPropSet);
328
329 void exportTextRange(
330 const css::uno::Reference< css::text::XTextRange > & rTextRange,
331 bool bAutoStyles,
332 bool& rPrevCharWasSpace,
333 FieldmarkType& openFieldmarkType );
334
335 void exportListChange( const XMLTextNumRuleInfo& rPrvInfo,
336 const XMLTextNumRuleInfo& rNextInfo );
337
341 css::uno::Reference< css::text::XTextSection > & rOldSection,
342 const css::uno::Reference< css::text::XTextSection > & rNewSection,
343 const XMLTextNumRuleInfo& rOldList,
344 const XMLTextNumRuleInfo& rNewList,
345 bool bAutoStyles );
346
350 css::uno::Reference< css::text::XTextSection > & rOldSection,
351 const css::uno::Reference< css::text::XTextContent > & rNewContent,
352 const XMLTextNumRuleInfo& rOldList,
353 const XMLTextNumRuleInfo& rNewList,
354 bool bAutoStyles );
356 css::uno::Reference< css::text::XTextSection > & rOldSection,
357 MultiPropertySetHelper& rPropSetHelper,
358 sal_Int16 nTextSectionId,
359 const css::uno::Reference< css::text::XTextContent > & rNewContent,
360 const XMLTextNumRuleInfo& rOldList,
361 const XMLTextNumRuleInfo& rNewList,
362 bool bAutoStyles );
363
365 void exportRuby(
366 const css::uno::Reference< css::beans::XPropertySet> & rPortionPropSet,
367 bool bAutoStyles );
368
370 void exportMeta(
371 const css::uno::Reference< css::beans::XPropertySet> & i_xPortion,
372 bool i_bAutoStyles, bool i_isProgress, bool & rPrevCharIsSpace);
373
375 void ExportContentControl(const css::uno::Reference<css::beans::XPropertySet>& xPortion,
376 bool bAutoStyles, bool isProgress, bool& rPrevCharIsSpace);
377
378 bool isAutoStylesCollected() const { return mbCollected; }
379
380 virtual void exportTableAutoStyles();
381
382public:
383
385 SvXMLExport& rExp,
387 );
388 virtual ~XMLTextParagraphExport() override;
389
391 void Add(
392 XmlStyleFamily nFamily,
393 MultiPropertySetHelper& rPropSetHelper,
394 const css::uno::Reference< css::beans::XPropertySet > & rPropSet );
395 void Add(
396 XmlStyleFamily nFamily,
397 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
398 o3tl::span<const XMLPropertyState> aAddStates = {}, bool bDontSeek = false );
399
401 OUString Find(
402 XmlStyleFamily nFamily,
403 const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
404 const OUString& rParent,
405 const o3tl::span<const XMLPropertyState> aAddStates = {} ) const;
406
407 static SvXMLExportPropertyMapper *CreateShapeExtPropMapper(
408 SvXMLExport& rExport );
409 static SvXMLExportPropertyMapper *CreateCharExtPropMapper(
410 SvXMLExport& rExport);
411 static SvXMLExportPropertyMapper *CreateParaExtPropMapper(
412 SvXMLExport& rExport);
413 static SvXMLExportPropertyMapper *CreateParaDefaultExtPropMapper(
414 SvXMLExport& rExport);
415
416 // This methods exports all (or all used) styles
417 void exportTextStyles( bool bUsed, bool bProg );
418
420 void exportTextDeclarations();
421
424 const css::uno::Reference< css::text::XText > & rText );
425
427 void exportUsedDeclarations();
428
431 void exportTrackedChanges(bool bAutoStyle);
432
435 void exportTrackedChanges(const css::uno::Reference< css::text::XText > & rText,
436 bool bAutoStyle );
437
443 void recordTrackedChangesForXText(
444 const css::uno::Reference< css::text::XText > & rText );
445
446
450 void recordTrackedChangesNoXText();
451
452
453 // This method exports the given OUString
454 void exportCharacterData(
455 const OUString& rText,
456 bool& rPrevCharWasSpace);
457
458 // This method collects all automatic styles for the given XText
460 const css::uno::Reference< css::text::XText > & rText,
461 bool bIsProgress = false,
462 bool bExportParagraph = true )
463 {
464 exportText( rText, true, bIsProgress, bExportParagraph );
465 }
466
468 const css::uno::Reference< css::text::XText > & rText,
469 const css::uno::Reference< css::text::XTextSection > & rBaseSection,
470 bool bIsProgress )
471 {
472 exportText( rText, rBaseSection, true, bIsProgress, true/*bExportParagraph*/ );
473 }
474
475 // It the model implements the xAutoStylesSupplier interface, the automatic
476 // styles can exported without iterating over the text portions
477 void collectTextAutoStylesOptimized( bool bIsProgress );
478
479 // This method exports all automatic styles that have been collected.
480 void exportTextAutoStyles();
481
482 void exportEvents( const css::uno::Reference< css::beans::XPropertySet > & rPropSet );
483
484 // Implement Title/Description Elements UI (#i73249#)
485 void exportTitleAndDescription( const css::uno::Reference< css::beans::XPropertySet > & rPropSet,
486 const css::uno::Reference< css::beans::XPropertySetInfo > & rPropSetInfo );
487
488 // This method exports the given XText
490 const css::uno::Reference< css::text::XText > & rText,
491 bool bIsProgress = false,
492 bool bExportParagraph = true, TextPNS eExtensionNS = TextPNS::ODF)
493 {
494 exportText( rText, false, bIsProgress, bExportParagraph, eExtensionNS );
495 }
496
498 const css::uno::Reference< css::text::XText > & rText,
499 const css::uno::Reference< css::text::XTextSection > & rBaseSection,
500 bool bIsProgress)
501 {
502 exportText( rText, rBaseSection, false, bIsProgress, true/*bExportParagraph*/ );
503 }
504
505 void exportFramesBoundToPage( bool bIsProgress )
506 {
507 exportPageFrames( bIsProgress );
508 }
509 inline const XMLTextListAutoStylePool& GetListAutoStylePool() const;
510
511 void SetBlockMode( bool bSet ) { m_bBlock = bSet; }
512 bool IsBlockMode() const { return m_bBlock; }
513
514
516 {
517 return m_xParaPropMapper;
518 }
519
520
532 void PreventExportOfControlsInMuteSections(
533 const css::uno::Reference< css::container::XIndexAccess> & rShapes,
535
536 SinglePropertySetInfoCache& GetCharStyleNamesPropInfoCache() { return m_aCharStyleNamesPropInfoCache; }
537
538 void PushNewTextListsHelper();
539
540 void PopTextListsHelper();
541
542private:
543 bool ShouldSkipListId(const css::uno::Reference<css::text::XTextContent>& xTextContent);
544 bool ExportListId() const;
545
547
548};
549
550inline const XMLTextListAutoStylePool&
552{
553 return maListAutoPool;
554}
555
557 const css::uno::Reference< css::text::XTextContent > & rTextContent,
558 bool bAutoStyles, bool bIsProgress, bool bExportContent,
559 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet)
560{
561 exportAnyTextFrame( rTextContent, FrameType::Text, bAutoStyles, bIsProgress,
562 bExportContent, pRangePropSet );
563}
564
566 const css::uno::Reference< css::text::XTextContent > & rTextContent,
567 bool bAutoStyles,
568 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet )
569{
570 exportAnyTextFrame( rTextContent, FrameType::Graphic, bAutoStyles, false,
571 true, pRangePropSet );
572}
573
575 const css::uno::Reference< css::text::XTextContent > & rTextContent,
576 bool bAutoStyles,
577 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet )
578{
579 exportAnyTextFrame( rTextContent, FrameType::Embedded, bAutoStyles, false,
580 true, pRangePropSet );
581}
582
584 const css::uno::Reference< css::text::XTextContent > & rTextContent,
585 bool bAutoStyles,
586 const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet )
587{
588 exportAnyTextFrame( rTextContent, FrameType::Shape, bAutoStyles, false,
589 true, pRangePropSet );
590}
591
592#endif
593
594/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
constexpr OUStringLiteral gsNumberingType(u"NumberingType")
constexpr OUStringLiteral gsCharStyleName(u"CharStyleName")
The MultiPropertySetHelper performs the following functions:
This class handles the export of index marks for table of content, alphabetical and user index.
This class handles the export of redline portions.
This class handles the export of sections and indices (which are, internally, just sections).
virtual void exportStyleAttributes(const css::uno::Reference< css::style::XStyle > &rStyle)
Definition: styleexp.cxx:74
information about list and list style for a certain paragraph
void exportText(const css::uno::Reference< css::text::XText > &rText, const css::uno::Reference< css::text::XTextSection > &rBaseSection, bool bIsProgress)
Definition: txtparae.hxx:497
void exportTrackedChanges(const css::uno::Reference< css::text::XText > &rText, bool bAutoStyle)
Export the list of change information (enclosed by <tracked-changes>) (or the necessary automatic sty...
void exportFramesBoundToPage(bool bIsProgress)
Definition: txtparae.hxx:505
SinglePropertySetInfoCache & GetCharStyleNamesPropInfoCache()
Definition: txtparae.hxx:536
std::unique_ptr< XMLRedlineExport > m_pRedlineExport
may be NULL (if no redlines should be exported; e.g. in block mode)
Definition: txtparae.hxx:101
std::vector< OUString > maListElements
Definition: txtparae.hxx:95
SvXMLAutoStylePoolP & GetAutoStylePool()
Definition: txtparae.hxx:166
void exportTextFrame(const css::uno::Reference< css::text::XTextContent > &rTextContent, bool bAutoStyles, bool bProgress, bool bExportContent, const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet=nullptr)
Definition: txtparae.hxx:556
void exportShape(const css::uno::Reference< css::text::XTextContent > &rTextContent, bool bAutoStyles, const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet=nullptr)
Definition: txtparae.hxx:583
void exportTextField(const css::uno::Reference< css::text::XTextRange > &rTextRange, bool bAutoStyles, bool bProgress, bool *pPrevCharIsSpace)
std::unique_ptr< XMLSectionExport > m_pSectionExport
Definition: txtparae.hxx:97
std::unique_ptr< XMLIndexMarkExport > m_pIndexMarkExport
Definition: txtparae.hxx:98
rtl::Reference< SvXMLExportPropertyMapper > m_xRubyPropMapper
Definition: txtparae.hxx:91
const rtl::Reference< SvXMLExportPropertyMapper > & GetTextPropMapper() const
Definition: txtparae.hxx:175
void exportTextField(const css::uno::Reference< css::text::XTextField > &xTextField, const bool bAutoStyles, const bool bProgress, const bool bRecursive, bool *pPrevCharIsSpace)
const ::std::unique_ptr< ::xmloff::BoundFrameSets > m_pBoundFrameSets
Definition: txtparae.hxx:93
rtl::Reference< SvXMLExportPropertyMapper > m_xFramePropMapper
Definition: txtparae.hxx:88
void exportText(const css::uno::Reference< css::text::XText > &rText, const css::uno::Reference< css::text::XTextSection > &rBaseSection, bool bAutoStyles, bool bProgress, bool bExportParagraph)
rtl::Reference< SvXMLExportPropertyMapper > m_xParaPropMapper
Definition: txtparae.hxx:86
const SvXMLAutoStylePoolP & GetAutoStylePool() const
Definition: txtparae.hxx:167
XMLTextListsHelper * mpTextListsHelper
Definition: txtparae.hxx:112
::std::vector< std::unique_ptr< XMLTextListsHelper > > maTextListsHelperStack
Definition: txtparae.hxx:113
void collectTextAutoStyles(const css::uno::Reference< css::text::XText > &rText, const css::uno::Reference< css::text::XTextSection > &rBaseSection, bool bIsProgress)
Definition: txtparae.hxx:467
const rtl::Reference< SvXMLExportPropertyMapper > & GetRubyPropMapper() const
Definition: txtparae.hxx:188
void exportTextGraphic(const css::uno::Reference< css::text::XTextContent > &rTextContent, bool bAutoStyles, const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet=nullptr)
Definition: txtparae.hxx:565
void SetBlockMode(bool bSet)
Definition: txtparae.hxx:511
void exportTextDeclarations(const css::uno::Reference< css::text::XText > &rText)
export the (text field) declarations for a particular XText
std::unique_ptr< DocumentListNodes > mpDocumentListNodes
Definition: txtparae.hxx:115
OUString m_sOpenRubyCharStyle
Definition: txtparae.hxx:109
void exportListAndSectionChange(css::uno::Reference< css::text::XTextSection > &rOldSection, const css::uno::Reference< css::text::XTextSection > &rNewSection, const XMLTextNumRuleInfo &rOldList, const XMLTextNumRuleInfo &rNewList, bool bAutoStyles)
check if current section or current list has changed; calls exportListChange as appropriate
void Add(XmlStyleFamily nFamily, const css::uno::Reference< css::beans::XPropertySet > &rPropSet, o3tl::span< const XMLPropertyState > aAddStates={}, bool bDontSeek=false)
void exportTextEmbedded(const css::uno::Reference< css::text::XTextContent > &rTextContent, bool bAutoStyles, const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet=nullptr)
Definition: txtparae.hxx:574
const rtl::Reference< SvXMLExportPropertyMapper > & GetParaPropMapper() const
Definition: txtparae.hxx:170
bool IsBlockMode() const
Definition: txtparae.hxx:512
std::unique_ptr< XMLTextFieldExport > m_pFieldExport
Definition: txtparae.hxx:94
rtl::Reference< SvXMLExportPropertyMapper > m_xSectionPropMapper
Definition: txtparae.hxx:90
const rtl::Reference< SvXMLExportPropertyMapper > & GetSectionPropMapper() const
Definition: txtparae.hxx:184
XMLTextListAutoStylePool maListAutoPool
Definition: txtparae.hxx:96
const XMLTextListAutoStylePool & GetListAutoStylePool() const
Definition: txtparae.hxx:551
void exportListAndSectionChange(css::uno::Reference< css::text::XTextSection > &rOldSection, MultiPropertySetHelper &rPropSetHelper, sal_Int16 nTextSectionId, const css::uno::Reference< css::text::XTextContent > &rNewContent, const XMLTextNumRuleInfo &rOldList, const XMLTextNumRuleInfo &rNewList, bool bAutoStyles)
bool isAutoStylesCollected() const
Definition: txtparae.hxx:378
o3tl::sorted_vector< css::uno::Reference< css::text::XTextFrame > > maFrameRecurseGuard
Definition: txtparae.hxx:118
rtl::Reference< SvXMLExportPropertyMapper > m_xAutoFramePropMapper
Definition: txtparae.hxx:89
void collectTextAutoStyles(const css::uno::Reference< css::text::XText > &rText, bool bIsProgress=false, bool bExportParagraph=true)
Definition: txtparae.hxx:459
const rtl::Reference< SvXMLExportPropertyMapper > & GetParagraphPropertyMapper() const
Definition: txtparae.hxx:515
o3tl::sorted_vector< css::uno::Reference< css::drawing::XShape > > maShapeRecurseGuard
Definition: txtparae.hxx:119
const rtl::Reference< SvXMLExportPropertyMapper > & GetAutoFramePropMapper() const
Definition: txtparae.hxx:180
std::unique_ptr< Impl > m_xImpl
Definition: txtparae.hxx:81
SinglePropertySetInfoCache m_aCharStyleNamesPropInfoCache
Definition: txtparae.hxx:164
void exportText(const css::uno::Reference< css::text::XText > &rText, bool bIsProgress=false, bool bExportParagraph=true, TextPNS eExtensionNS=TextPNS::ODF)
Definition: txtparae.hxx:489
void Add(XmlStyleFamily nFamily, MultiPropertySetHelper &rPropSetHelper, const css::uno::Reference< css::beans::XPropertySet > &rPropSet)
add autostyle for specified family
XMLTextParagraphExport(XMLTextParagraphExport const &)=delete
SvXMLAutoStylePoolP & m_rAutoStylePool
Definition: txtparae.hxx:85
void exportListAndSectionChange(css::uno::Reference< css::text::XTextSection > &rOldSection, const css::uno::Reference< css::text::XTextContent > &rNewContent, const XMLTextNumRuleInfo &rOldList, const XMLTextNumRuleInfo &rNewList, bool bAutoStyles)
overload for exportListAndSectionChange; takes new content rather than new section.
void exportAnyTextFrame(const css::uno::Reference< css::text::XTextContent > &rTextContent, FrameType eTxpe, bool bAutoStyles, bool bProgress, bool bExportContent, const css::uno::Reference< css::beans::XPropertySet > *pRangePropSet)
Definition: txtparae.cxx:3155
rtl::Reference< SvXMLExportPropertyMapper > m_xTextPropMapper
Definition: txtparae.hxx:87
void exportText(const css::uno::Reference< css::text::XText > &rText, bool bAutoStyles, bool bProgress, bool bExportParagraph, TextPNS eExtensionNS=TextPNS::ODF)
#define XMLOFF_DLLPUBLIC
Definition: dllapi.h:29
float u
XmlStyleFamily
Definition: families.hxx:50
def text(shape, orig_st)
void exportText(SvXMLExport &rExport, const OUString &rText, bool bConvertTabsLFs)
NONE
class SAL_NO_VTABLE XPropertySet
CHECK
XMLTokenEnum
The enumeration of all XML tokens.
Definition: xmltoken.hxx:50
XMLShapeExportFlags
Definition: shapeexport.hxx:49
Smart struct to transport an Any with an index to the appropriate property-name.
Definition: maptype.hxx:140
TEXT
@ Shape
Definition: txtimp.hxx:72
TextPNS
Definition: txtparae.hxx:74