LibreOffice Module sw (master)  1
DocumentSettingManager.cxx
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 #include <libxml/xmlwriter.h>
21 
23 #include <doc.hxx>
25 #include <IDocumentState.hxx>
27 #include <comphelper/lok.hxx>
30 #include <osl/diagnose.h>
31 #include <svx/svdmodel.hxx>
32 #include <svl/asiancfg.hxx>
34 #include <unotools/configmgr.hxx>
35 #include <drawdoc.hxx>
36 #include <swmodule.hxx>
37 #include <linkenum.hxx>
38 #include <rootfrm.hxx>
39 #include <breakit.hxx>
40 #include <docary.hxx>
41 
42 /* IDocumentSettingAccess */
43 
45  :m_rDoc(rDoc),
46  mnLinkUpdMode( GLOBALSETTING ),
47  meFieldUpdMode( AUTOUPD_GLOBALSETTING ),
48  meChrCmprType( CharCompressType::NONE ),
49  mn32DummyCompatibilityOptions1(0),
50  mn32DummyCompatibilityOptions2(0),
51  mbHTMLMode(false),
52  mbIsGlobalDoc(false),
53  mbGlblDocSaveLinks(false),
54  mbIsLabelDoc(false),
55  mbPurgeOLE(true),
56  mbKernAsianPunctuation(false),
57 
58  // COMPATIBILITY FLAGS START
59 
60  mbAddFlyOffsets(false),
61  mbAddVerticalFlyOffsets(false),
62  mbUseHiResolutionVirtualDevice(true),
63  mbMathBaselineAlignment(false), // default for *old* documents is 'off'
64  mbStylesNoDefault(false),
65  mbFloattableNomargins(false),
66  mEmbedFonts(false),
67  mEmbedUsedFonts(false),
68  mEmbedLatinScriptFonts(true),
69  mEmbedAsianScriptFonts(true),
70  mEmbedComplexScriptFonts(true),
71  mEmbedSystemFonts(false),
72  mbOldNumbering(false),
73  mbIgnoreFirstLineIndentInNumbering(false),
74  mbDoNotResetParaAttrsForNumFont(false),
75  mbTableRowKeep(false),
76  mbIgnoreTabsAndBlanksForLineCalculation(false),
77  mbDoNotCaptureDrawObjsOnPage(false),
78  mbClipAsCharacterAnchoredWriterFlyFrames(false),
79  mbUnixForceZeroExtLeading(false),
80  mbTabRelativeToIndent(true),
81  mbProtectForm(false), // i#78591#
82  mbMsWordCompTrailingBlanks(false), // tdf#104349 tdf#104668
83  mbMsWordCompMinLineHeightByFly(false),
84  mbInvertBorderSpacing (false),
85  mbCollapseEmptyCellPara(true),
86  mbTabAtLeftIndentForParagraphsInList(false), //#i89181#
87  mbSmallCapsPercentage66(false),
88  mbTabOverflow(true),
89  mbUnbreakableNumberings(false),
90  mbClippedPictures(false),
91  mbBackgroundParaOverDrawings(false),
92  mbTabOverMargin(false),
93  mbTabOverSpacing(false),
94  mbTreatSingleColumnBreakAsPageBreak(false),
95  mbSurroundTextWrapSmall(false),
96  mbPropLineSpacingShrinksFirstLine(true),
97  mbSubtractFlys(false),
98  mApplyParagraphMarkFormatToNumbering(false),
99  mbLastBrowseMode( false ),
100  mbDisableOffPagePositioning ( false ),
101  mbProtectBookmarks(false),
102  mbProtectFields(false),
103  mbHeaderSpacingBelowLastPara(false),
104  mbFrameAutowidthWithMorePara(false),
105  mbGutterAtTop(false),
106  mbFootnoteInColumnToPageEnd(false),
107  mnImagePreferredDPI(0),
108  mbAutoFirstLineIndentDisregardLineSpace(true),
109  mbWrapAsCharFlysLikeInOOXML(false)
110 
111  // COMPATIBILITY FLAGS END
112 {
113  // COMPATIBILITY FLAGS START
114 
115  // Note: Any non-hidden compatibility flag should obtain its default
116  // by asking SvtCompatibilityOptions, see below.
117 
119  {
120  const SvtCompatibilityOptions aOptions;
138  }
139  else
140  {
141  mbParaSpaceMax = false;
142  mbParaSpaceMaxAtPages = false;
143  mbTabCompat = true;
144  mbUseVirtualDevice = true;
145  mbAddExternalLeading = true;
146  mbOldLineSpacing = false;
149  mbUseFormerObjectPos = false;
150  mbUseFormerTextWrapping = false;
151  mbConsiderWrapOnObjPos = false;
153  mbProtectForm = false;
155  mbSubtractFlys = false;
157  }
158 
159  // COMPATIBILITY FLAGS END
160 
161 }
162 
163 
165 {
166 }
167 
168 /* IDocumentSettingAccess */
170 {
171  switch (id)
172  {
173  // COMPATIBILITY FLAGS START
174  case DocumentSettingId::PARA_SPACE_MAX: return mbParaSpaceMax; //(n8Dummy1 & DUMMY_PARASPACEMAX);
175  case DocumentSettingId::PARA_SPACE_MAX_AT_PAGES: return mbParaSpaceMaxAtPages; //(n8Dummy1 & DUMMY_PARASPACEMAX_AT_PAGES);
176  case DocumentSettingId::TAB_COMPAT: return mbTabCompat; //(n8Dummy1 & DUMMY_TAB_COMPAT);
177  case DocumentSettingId::ADD_FLY_OFFSETS: return mbAddFlyOffsets; //(n8Dummy2 & DUMMY_ADD_FLY_OFFSETS);
178  case DocumentSettingId::ADD_VERTICAL_FLY_OFFSETS: return mbAddVerticalFlyOffsets;
179  case DocumentSettingId::ADD_EXT_LEADING: return mbAddExternalLeading; //(n8Dummy2 & DUMMY_ADD_EXTERNAL_LEADING);
180  case DocumentSettingId::USE_VIRTUAL_DEVICE: return mbUseVirtualDevice; //(n8Dummy1 & DUMMY_USE_VIRTUAL_DEVICE);
181  case DocumentSettingId::USE_HIRES_VIRTUAL_DEVICE: return mbUseHiResolutionVirtualDevice; //(n8Dummy2 & DUMMY_USE_HIRES_VIR_DEV);
182  case DocumentSettingId::OLD_NUMBERING: return mbOldNumbering;
183  case DocumentSettingId::OLD_LINE_SPACING: return mbOldLineSpacing;
184  case DocumentSettingId::ADD_PARA_SPACING_TO_TABLE_CELLS: return mbAddParaSpacingToTableCells;
185  case DocumentSettingId::ADD_PARA_LINE_SPACING_TO_TABLE_CELLS: return mbAddParaLineSpacingToTableCells;
186  case DocumentSettingId::USE_FORMER_OBJECT_POS: return mbUseFormerObjectPos;
187  case DocumentSettingId::USE_FORMER_TEXT_WRAPPING: return mbUseFormerTextWrapping;
188  case DocumentSettingId::CONSIDER_WRAP_ON_OBJECT_POSITION: return mbConsiderWrapOnObjPos;
189  case DocumentSettingId::DO_NOT_JUSTIFY_LINES_WITH_MANUAL_BREAK: return mbDoNotJustifyLinesWithManualBreak;
190  case DocumentSettingId::IGNORE_FIRST_LINE_INDENT_IN_NUMBERING: return mbIgnoreFirstLineIndentInNumbering;
191  case DocumentSettingId::TABLE_ROW_KEEP: return mbTableRowKeep;
192  case DocumentSettingId::IGNORE_TABS_AND_BLANKS_FOR_LINE_CALCULATION: return mbIgnoreTabsAndBlanksForLineCalculation;
193  case DocumentSettingId::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE: return mbDoNotCaptureDrawObjsOnPage;
194  // #i68949#
195  case DocumentSettingId::CLIP_AS_CHARACTER_ANCHORED_WRITER_FLY_FRAME: return mbClipAsCharacterAnchoredWriterFlyFrames;
196  case DocumentSettingId::UNIX_FORCE_ZERO_EXT_LEADING: return mbUnixForceZeroExtLeading;
197  case DocumentSettingId::TABS_RELATIVE_TO_INDENT : return mbTabRelativeToIndent;
198  case DocumentSettingId::PROTECT_FORM: return mbProtectForm;
199  // tdf#104349 tdf#104668
200  case DocumentSettingId::MS_WORD_COMP_TRAILING_BLANKS: return mbMsWordCompTrailingBlanks;
201  case DocumentSettingId::MS_WORD_COMP_MIN_LINE_HEIGHT_BY_FLY: return mbMsWordCompMinLineHeightByFly;
202  // #i89181#
203  case DocumentSettingId::TAB_AT_LEFT_INDENT_FOR_PARA_IN_LIST: return mbTabAtLeftIndentForParagraphsInList;
204  case DocumentSettingId::INVERT_BORDER_SPACING: return mbInvertBorderSpacing;
205  case DocumentSettingId::COLLAPSE_EMPTY_CELL_PARA: return mbCollapseEmptyCellPara;
206  case DocumentSettingId::SMALL_CAPS_PERCENTAGE_66: return mbSmallCapsPercentage66;
207  case DocumentSettingId::TAB_OVERFLOW: return mbTabOverflow;
208  case DocumentSettingId::UNBREAKABLE_NUMBERINGS: return mbUnbreakableNumberings;
209  case DocumentSettingId::CLIPPED_PICTURES: return mbClippedPictures;
210  case DocumentSettingId::BACKGROUND_PARA_OVER_DRAWINGS: return mbBackgroundParaOverDrawings;
211  case DocumentSettingId::TAB_OVER_MARGIN: return mbTabOverMargin;
212  case DocumentSettingId::TAB_OVER_SPACING: return mbTabOverSpacing;
213  case DocumentSettingId::TREAT_SINGLE_COLUMN_BREAK_AS_PAGE_BREAK: return mbTreatSingleColumnBreakAsPageBreak;
214  case DocumentSettingId::SURROUND_TEXT_WRAP_SMALL: return mbSurroundTextWrapSmall;
215  case DocumentSettingId::PROP_LINE_SPACING_SHRINKS_FIRST_LINE: return mbPropLineSpacingShrinksFirstLine;
216  case DocumentSettingId::SUBTRACT_FLYS: return mbSubtractFlys;
217 
218  case DocumentSettingId::BROWSE_MODE: return mbLastBrowseMode; // Attention: normally the SwViewShell has to be asked!
219  case DocumentSettingId::HTML_MODE: return mbHTMLMode;
220  case DocumentSettingId::GLOBAL_DOCUMENT: return mbIsGlobalDoc;
221  case DocumentSettingId::GLOBAL_DOCUMENT_SAVE_LINKS: return mbGlblDocSaveLinks;
222  case DocumentSettingId::LABEL_DOCUMENT: return mbIsLabelDoc;
223  case DocumentSettingId::PURGE_OLE: return mbPurgeOLE;
224  case DocumentSettingId::KERN_ASIAN_PUNCTUATION: return mbKernAsianPunctuation;
225  case DocumentSettingId::DO_NOT_RESET_PARA_ATTRS_FOR_NUM_FONT: return mbDoNotResetParaAttrsForNumFont;
226  case DocumentSettingId::MATH_BASELINE_ALIGNMENT: return mbMathBaselineAlignment;
227  case DocumentSettingId::STYLES_NODEFAULT: return mbStylesNoDefault;
228  case DocumentSettingId::FLOATTABLE_NOMARGINS: return mbFloattableNomargins;
229  case DocumentSettingId::EMBED_FONTS: return mEmbedFonts;
230  case DocumentSettingId::EMBED_USED_FONTS: return mEmbedUsedFonts;
231  case DocumentSettingId::EMBED_LATIN_SCRIPT_FONTS: return mEmbedLatinScriptFonts;
232  case DocumentSettingId::EMBED_ASIAN_SCRIPT_FONTS: return mEmbedAsianScriptFonts;
233  case DocumentSettingId::EMBED_COMPLEX_SCRIPT_FONTS: return mEmbedComplexScriptFonts;
234  case DocumentSettingId::EMBED_SYSTEM_FONTS: return mEmbedSystemFonts;
235  case DocumentSettingId::APPLY_PARAGRAPH_MARK_FORMAT_TO_NUMBERING: return mApplyParagraphMarkFormatToNumbering;
236  case DocumentSettingId::DISABLE_OFF_PAGE_POSITIONING: return mbDisableOffPagePositioning;
237  case DocumentSettingId::EMPTY_DB_FIELD_HIDES_PARA: return mbEmptyDbFieldHidesPara;
238  case DocumentSettingId::CONTINUOUS_ENDNOTES: return mbContinuousEndnotes;
239  case DocumentSettingId::PROTECT_BOOKMARKS: return mbProtectBookmarks;
240  case DocumentSettingId::PROTECT_FIELDS: return mbProtectFields;
241  case DocumentSettingId::HEADER_SPACING_BELOW_LAST_PARA: return mbHeaderSpacingBelowLastPara;
242  case DocumentSettingId::FRAME_AUTOWIDTH_WITH_MORE_PARA: return mbFrameAutowidthWithMorePara;
244  return mbGutterAtTop;
245  case DocumentSettingId::FOOTNOTE_IN_COLUMN_TO_PAGEEND: return mbFootnoteInColumnToPageEnd;
247  return mbAutoFirstLineIndentDisregardLineSpace;
248  case DocumentSettingId::WRAP_AS_CHAR_FLYS_LIKE_IN_OOXML: return mbWrapAsCharFlysLikeInOOXML;
249  default:
250  OSL_FAIL("Invalid setting id");
251  }
252  return false;
253 }
254 
255 void sw::DocumentSettingManager::set(/*[in]*/ DocumentSettingId id, /*[in]*/ bool value)
256 {
257  switch (id)
258  {
259  // COMPATIBILITY FLAGS START
261  mbParaSpaceMax = value;
262  break;
264  mbParaSpaceMaxAtPages = value;
265  break;
267  mbTabCompat = value;
268  break;
270  mbAddFlyOffsets = value;
271  break;
273  mbAddVerticalFlyOffsets = value;
274  break;
276  mbAddExternalLeading = value;
277  break;
279  mbUseVirtualDevice = value;
280  break;
282  mbUseHiResolutionVirtualDevice = value;
283  break;
285  if (mbOldNumbering != value)
286  {
287  mbOldNumbering = value;
288 
289  const SwNumRuleTable& rNmTable = m_rDoc.GetNumRuleTable();
290  for( SwNumRuleTable::size_type n = 0; n < rNmTable.size(); ++n )
291  rNmTable[n]->SetInvalidRule(true);
292 
294 
295  SwNumRule *pOutlineRule = m_rDoc.GetOutlineNumRule();
296  if (pOutlineRule)
297  {
298  pOutlineRule->Validate(m_rDoc);
299  // counting of phantoms depends on <IsOldNumbering()>
300  pOutlineRule->SetCountPhantoms( !mbOldNumbering );
301  }
302  }
303  break;
305  mbOldLineSpacing = value;
306  break;
308  mbAddParaSpacingToTableCells = value;
309  break;
311  mbAddParaLineSpacingToTableCells = value;
312  break;
314  mbUseFormerObjectPos = value;
315  break;
317  mbUseFormerTextWrapping = value;
318  break;
320  mbConsiderWrapOnObjPos = value;
321  break;
323  mbDoNotJustifyLinesWithManualBreak = value;
324  break;
326  mbIgnoreFirstLineIndentInNumbering = value;
327  break;
328 
330  mbTableRowKeep = value;
331  break;
332 
334  mbIgnoreTabsAndBlanksForLineCalculation = value;
335  break;
336 
338  mbDoNotCaptureDrawObjsOnPage = value;
339  break;
340 
341  // #i68949#
343  mbClipAsCharacterAnchoredWriterFlyFrames = value;
344  break;
345 
347  mbUnixForceZeroExtLeading = value;
348  break;
349 
351  mbProtectForm = value;
352  break;
353 
354  // tdf#140349
356  mbMsWordCompTrailingBlanks = value;
357  break;
358 
360  mbMsWordCompMinLineHeightByFly = value;
361  break;
362 
364  mbTabRelativeToIndent = value;
365  break;
366  // #i89181#
368  mbTabAtLeftIndentForParagraphsInList = value;
369  break;
370 
372  mbInvertBorderSpacing = value;
373  break;
374 
376  mbCollapseEmptyCellPara = value;
377  break;
378 
380  mbSmallCapsPercentage66 = value;
381  break;
382 
384  mbTabOverflow = value;
385  break;
386 
388  mbUnbreakableNumberings = value;
389  break;
390 
392  mbClippedPictures = value;
393  break;
394 
396  mbBackgroundParaOverDrawings = value;
397  break;
398 
400  mbTabOverMargin = value;
401  break;
402 
404  mbTabOverSpacing = value;
405  break;
406 
408  mbTreatSingleColumnBreakAsPageBreak = value;
409  break;
410 
412  mbSurroundTextWrapSmall = value;
413  break;
414 
416  mbPropLineSpacingShrinksFirstLine = value;
417  break;
418 
420  mbSubtractFlys = value;
421  break;
422 
424  mbAutoFirstLineIndentDisregardLineSpace = value;
425  break;
426 
428  mbWrapAsCharFlysLikeInOOXML = value;
429  break;
430 
431  // COMPATIBILITY FLAGS END
432 
433  case DocumentSettingId::BROWSE_MODE: //can be used temporary (load/save) when no SwViewShell is available
434  // Can't render in webview successfully.
436  mbLastBrowseMode = false;
437  else
438  mbLastBrowseMode = value;
439  break;
440 
442  mbHTMLMode = value;
443  break;
444 
446  mbIsGlobalDoc = value;
447  break;
448 
450  mbGlblDocSaveLinks = value;
451  break;
452 
454  mbIsLabelDoc = value;
455  break;
456 
458  mbPurgeOLE = value;
459  break;
460 
462  mbKernAsianPunctuation = value;
463  break;
464 
466  mbDoNotResetParaAttrsForNumFont = value;
467  break;
469  mbMathBaselineAlignment = value;
470  break;
472  mbStylesNoDefault = value;
473  break;
475  mbFloattableNomargins = value;
476  break;
478  mEmbedFonts = value;
479  break;
481  mEmbedUsedFonts = value;
482  break;
484  mEmbedLatinScriptFonts = value;
485  break;
487  mEmbedAsianScriptFonts = value;
488  break;
490  mEmbedComplexScriptFonts = value;
491  break;
493  mEmbedSystemFonts = value;
494  break;
496  mApplyParagraphMarkFormatToNumbering = value;
497  break;
499  mbDisableOffPagePositioning = value;
500  break;
502  mbEmptyDbFieldHidesPara = value;
503  break;
505  mbContinuousEndnotes = value;
506  break;
508  mbProtectBookmarks = value;
509  break;
511  mbProtectFields = value;
512  break;
514  mbHeaderSpacingBelowLastPara = value;
515  break;
517  mbFrameAutowidthWithMorePara = value;
518  break;
520  mbGutterAtTop = value;
521  break;
523  mbFootnoteInColumnToPageEnd = value;
524  break;
525  default:
526  OSL_FAIL("Invalid setting id");
527  }
528 }
529 
530 const css::i18n::ForbiddenCharacters*
531  sw::DocumentSettingManager::getForbiddenCharacters(/*[in]*/ LanguageType nLang, /*[in]*/ bool bLocaleData ) const
532 {
533  const css::i18n::ForbiddenCharacters* pRet = nullptr;
534  if (mxForbiddenCharsTable)
535  pRet = mxForbiddenCharsTable->GetForbiddenCharacters( nLang, false );
536  if( bLocaleData && !pRet && g_pBreakIt )
537  pRet = &g_pBreakIt->GetForbidden( nLang );
538  return pRet;
539 }
540 
542  /*[in]*/ const css::i18n::ForbiddenCharacters& rFChars )
543 {
544  if (!mxForbiddenCharsTable)
546  mxForbiddenCharsTable->SetForbiddenCharacters( nLang, rFChars );
547 
549  if( pDrawModel )
550  {
551  pDrawModel->SetForbiddenCharsTable(mxForbiddenCharsTable);
552  if( !m_rDoc.IsInReading() )
553  pDrawModel->ReformatAllTextObjects();
554  }
555 
557  if( pTmpRoot && !m_rDoc.IsInReading() )
558  {
559  pTmpRoot->StartAllAction();
560  for(SwRootFrame* aLayout : m_rDoc.GetAllLayouts())
561  aLayout->InvalidateAllContent(SwInvalidateFlags::Size);
562  pTmpRoot->EndAllAction();
563  }
565 }
566 
567 std::shared_ptr<SvxForbiddenCharactersTable>& sw::DocumentSettingManager::getForbiddenCharacterTable()
568 {
569  if (!mxForbiddenCharsTable)
571  return mxForbiddenCharsTable;
572 }
573 
574 const std::shared_ptr<SvxForbiddenCharactersTable>& sw::DocumentSettingManager::getForbiddenCharacterTable() const
575 {
576  return mxForbiddenCharsTable;
577 }
578 
579 sal_uInt16 sw::DocumentSettingManager::getLinkUpdateMode( /*[in]*/bool bGlobalSettings ) const
580 {
581  sal_uInt16 nRet = mnLinkUpdMode;
582  if( bGlobalSettings && GLOBALSETTING == nRet )
583  nRet = SW_MOD()->GetLinkUpdMode();
584  return nRet;
585 }
586 
587 void sw::DocumentSettingManager::setLinkUpdateMode( /*[in]*/sal_uInt16 eMode )
588 {
589  mnLinkUpdMode = eMode;
590 }
591 
593 {
594  SwFieldUpdateFlags eRet = meFieldUpdMode;
595  if( bGlobalSettings && AUTOUPD_GLOBALSETTING == eRet )
596  eRet = SW_MOD()->GetFieldUpdateFlags();
597  return eRet;
598 }
599 
601 {
602  meFieldUpdMode = eMode;
603 }
604 
606 {
607  return meChrCmprType;
608 }
609 
611 {
612  if( meChrCmprType == n )
613  return;
614 
615  meChrCmprType = n;
616 
618  if( pDrawModel )
619  {
620  pDrawModel->SetCharCompressType( n );
621  if( !m_rDoc.IsInReading() )
622  pDrawModel->ReformatAllTextObjects();
623  }
624 
626  if( pTmpRoot && !m_rDoc.IsInReading() )
627  {
628  pTmpRoot->StartAllAction();
629  for( auto aLayout : m_rDoc.GetAllLayouts() )
630  aLayout->InvalidateAllContent(SwInvalidateFlags::Size);
631  pTmpRoot->EndAllAction();
632  }
634 }
635 
636 
638 {
639  Setn32DummyCompatibilityOptions1( rSource.Getn32DummyCompatibilityOptions1() );
640  Setn32DummyCompatibilityOptions2( rSource.Getn32DummyCompatibilityOptions2() );
641 
642  // No mbHTMLMode: this is the subset of mbLastBrowseMode, which can be temporarily enabled even
643  // for non-SwWebDocShells.
644  // No mbIsGlobalDoc: this is true for SwGlobalDocShells.
645  mbGlblDocSaveLinks = rSource.mbGlblDocSaveLinks;
646  mbIsLabelDoc = rSource.mbIsLabelDoc;
647  mbPurgeOLE = rSource.mbPurgeOLE;
648  mbKernAsianPunctuation = rSource.mbKernAsianPunctuation;
649  mbParaSpaceMax = rSource.mbParaSpaceMax;
650  mbParaSpaceMaxAtPages = rSource.mbParaSpaceMaxAtPages;
651  mbTabCompat = rSource.mbTabCompat;
652  mbUseVirtualDevice = rSource.mbUseVirtualDevice;
653  mbAddFlyOffsets = rSource.mbAddFlyOffsets;
654  mbAddVerticalFlyOffsets = rSource.mbAddVerticalFlyOffsets;
655  mbAddExternalLeading = rSource.mbAddExternalLeading;
656  mbUseHiResolutionVirtualDevice = rSource.mbUseHiResolutionVirtualDevice;
657  mbOldLineSpacing = rSource.mbOldLineSpacing;
658  mbAddParaSpacingToTableCells = rSource.mbAddParaSpacingToTableCells;
659  mbAddParaLineSpacingToTableCells = rSource.mbAddParaLineSpacingToTableCells;
660  mbUseFormerObjectPos = rSource.mbUseFormerObjectPos;
661  mbUseFormerTextWrapping = rSource.mbUseFormerTextWrapping;
662  mbConsiderWrapOnObjPos = rSource.mbConsiderWrapOnObjPos;
663  mbMathBaselineAlignment = rSource.mbMathBaselineAlignment;
664  mbStylesNoDefault = rSource.mbStylesNoDefault;
665  mbFloattableNomargins = rSource.mbFloattableNomargins;
666  mbOldNumbering = rSource.mbOldNumbering;
667  mbIgnoreFirstLineIndentInNumbering = rSource.mbIgnoreFirstLineIndentInNumbering;
668  mbDoNotJustifyLinesWithManualBreak = rSource.mbDoNotJustifyLinesWithManualBreak;
669  mbDoNotResetParaAttrsForNumFont = rSource.mbDoNotResetParaAttrsForNumFont;
670  mbTableRowKeep = rSource.mbTableRowKeep;
671  mbIgnoreTabsAndBlanksForLineCalculation = rSource.mbIgnoreTabsAndBlanksForLineCalculation;
672  mbDoNotCaptureDrawObjsOnPage = rSource.mbDoNotCaptureDrawObjsOnPage;
673  mbClipAsCharacterAnchoredWriterFlyFrames = rSource.mbClipAsCharacterAnchoredWriterFlyFrames;
674  mbUnixForceZeroExtLeading = rSource.mbUnixForceZeroExtLeading;
675  mbTabRelativeToIndent = rSource.mbTabRelativeToIndent;
676  mbProtectForm = rSource.mbProtectForm;
677  mbMsWordCompTrailingBlanks = rSource.mbMsWordCompTrailingBlanks;
678  mbMsWordCompMinLineHeightByFly = rSource.mbMsWordCompMinLineHeightByFly;
679  mbInvertBorderSpacing = rSource.mbInvertBorderSpacing;
680  mbCollapseEmptyCellPara = rSource.mbCollapseEmptyCellPara;
681  mbTabAtLeftIndentForParagraphsInList = rSource.mbTabAtLeftIndentForParagraphsInList;
682  mbSmallCapsPercentage66 = rSource.mbSmallCapsPercentage66;
683  mbTabOverflow = rSource.mbTabOverflow;
684  mbUnbreakableNumberings = rSource.mbUnbreakableNumberings;
685  mbClippedPictures = rSource.mbClippedPictures;
686  mbBackgroundParaOverDrawings = rSource.mbBackgroundParaOverDrawings;
687  mbTabOverMargin = rSource.mbTabOverMargin;
688  mbTabOverSpacing = rSource.mbTabOverSpacing;
689  mbTreatSingleColumnBreakAsPageBreak = rSource.mbTreatSingleColumnBreakAsPageBreak;
690  mbSurroundTextWrapSmall = rSource.mbSurroundTextWrapSmall;
691  mbPropLineSpacingShrinksFirstLine = rSource.mbPropLineSpacingShrinksFirstLine;
692  mbSubtractFlys = rSource.mbSubtractFlys;
693  // No mbLastBrowseMode: this is false by default everywhere
694  mbDisableOffPagePositioning = rSource.mbDisableOffPagePositioning;
695  mbEmptyDbFieldHidesPara = rSource.mbEmptyDbFieldHidesPara;
696  mbContinuousEndnotes = rSource.mbContinuousEndnotes;
697  // No mbProtectBookmarks: this is false by default everywhere
698  // No mbProtectFields: this is false by default everywhere
699  mbHeaderSpacingBelowLastPara = rSource.mbHeaderSpacingBelowLastPara;
700  mbFrameAutowidthWithMorePara = rSource.mbFrameAutowidthWithMorePara;
701  mbFootnoteInColumnToPageEnd = rSource.mbFootnoteInColumnToPageEnd;
702 }
703 
705 {
706  return mn32DummyCompatibilityOptions1;
707 }
708 
709 void sw::DocumentSettingManager::Setn32DummyCompatibilityOptions1( const sal_uInt32 CompatibilityOptions1 )
710 {
711  mn32DummyCompatibilityOptions1 = CompatibilityOptions1;
712 }
713 
715 {
716  return mn32DummyCompatibilityOptions2;
717 }
718 
719 void sw::DocumentSettingManager::Setn32DummyCompatibilityOptions2( const sal_uInt32 CompatibilityOptions2 )
720 {
721  mn32DummyCompatibilityOptions2 = CompatibilityOptions2;
722 }
723 
725 {
726  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("DocumentSettingManager"));
727 
728  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbHTMLMode"));
729  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
730  BAD_CAST(OString::boolean(mbHTMLMode).getStr()));
731  (void)xmlTextWriterEndElement(pWriter);
732 
733  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbIsGlobalDoc"));
734  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
735  BAD_CAST(OString::boolean(mbIsGlobalDoc).getStr()));
736  (void)xmlTextWriterEndElement(pWriter);
737 
738  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbGlblDocSaveLinks"));
739  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
740  BAD_CAST(OString::boolean(mbGlblDocSaveLinks).getStr()));
741  (void)xmlTextWriterEndElement(pWriter);
742 
743  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbIsLabelDoc"));
744  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
745  BAD_CAST(OString::boolean(mbIsLabelDoc).getStr()));
746  (void)xmlTextWriterEndElement(pWriter);
747 
748  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbPurgeOLE"));
749  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
750  BAD_CAST(OString::boolean(mbPurgeOLE).getStr()));
751  (void)xmlTextWriterEndElement(pWriter);
752 
753  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbKernAsianPunctuation"));
754  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
755  BAD_CAST(OString::boolean(mbKernAsianPunctuation).getStr()));
756  (void)xmlTextWriterEndElement(pWriter);
757 
758  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbParaSpaceMax"));
759  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
760  BAD_CAST(OString::boolean(mbParaSpaceMax).getStr()));
761  (void)xmlTextWriterEndElement(pWriter);
762 
763  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbParaSpaceMaxAtPages"));
764  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
765  BAD_CAST(OString::boolean(mbParaSpaceMaxAtPages).getStr()));
766  (void)xmlTextWriterEndElement(pWriter);
767 
768  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTabCompat"));
769  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
770  BAD_CAST(OString::boolean(mbTabCompat).getStr()));
771  (void)xmlTextWriterEndElement(pWriter);
772 
773  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbUseVirtualDevice"));
774  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
775  BAD_CAST(OString::boolean(mbUseVirtualDevice).getStr()));
776  (void)xmlTextWriterEndElement(pWriter);
777 
778  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbAddFlyOffsets"));
779  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
780  BAD_CAST(OString::boolean(mbAddFlyOffsets).getStr()));
781  (void)xmlTextWriterEndElement(pWriter);
782 
783  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbAddVerticalFlyOffsets"));
784  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
785  BAD_CAST(OString::boolean(mbAddVerticalFlyOffsets).getStr()));
786  (void)xmlTextWriterEndElement(pWriter);
787 
788  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbAddExternalLeading"));
789  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
790  BAD_CAST(OString::boolean(mbAddExternalLeading).getStr()));
791  (void)xmlTextWriterEndElement(pWriter);
792 
793  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbUseHiResolutionVirtualDevice"));
794  (void)xmlTextWriterWriteAttribute(
795  pWriter, BAD_CAST("value"),
796  BAD_CAST(OString::boolean(mbUseHiResolutionVirtualDevice).getStr()));
797  (void)xmlTextWriterEndElement(pWriter);
798 
799  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbOldLineSpacing"));
800  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
801  BAD_CAST(OString::boolean(mbOldLineSpacing).getStr()));
802  (void)xmlTextWriterEndElement(pWriter);
803 
804  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbAddParaSpacingToTableCells"));
805  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
806  BAD_CAST(OString::boolean(mbAddParaSpacingToTableCells).getStr()));
807  (void)xmlTextWriterEndElement(pWriter);
808  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbAddParaLineSpacingToTableCells"));
809  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
810  BAD_CAST(OString::boolean(mbAddParaLineSpacingToTableCells).getStr()));
811  (void)xmlTextWriterEndElement(pWriter);
812 
813  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbUseFormerObjectPos"));
814  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
815  BAD_CAST(OString::boolean(mbUseFormerObjectPos).getStr()));
816  (void)xmlTextWriterEndElement(pWriter);
817 
818  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbUseFormerTextWrapping"));
819  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
820  BAD_CAST(OString::boolean(mbUseFormerTextWrapping).getStr()));
821  (void)xmlTextWriterEndElement(pWriter);
822 
823  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbConsiderWrapOnObjPos"));
824  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
825  BAD_CAST(OString::boolean(mbConsiderWrapOnObjPos).getStr()));
826  (void)xmlTextWriterEndElement(pWriter);
827 
828  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbMathBaselineAlignment"));
829  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
830  BAD_CAST(OString::boolean(mbMathBaselineAlignment).getStr()));
831  (void)xmlTextWriterEndElement(pWriter);
832 
833  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbStylesNoDefault"));
834  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
835  BAD_CAST(OString::boolean(mbStylesNoDefault).getStr()));
836  (void)xmlTextWriterEndElement(pWriter);
837 
838  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbFloattableNomargins"));
839  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
840  BAD_CAST(OString::boolean(mbFloattableNomargins).getStr()));
841  (void)xmlTextWriterEndElement(pWriter);
842 
843  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbOldNumbering"));
844  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
845  BAD_CAST(OString::boolean(mbOldNumbering).getStr()));
846  (void)xmlTextWriterEndElement(pWriter);
847 
848  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbIgnoreFirstLineIndentInNumbering"));
849  (void)xmlTextWriterWriteAttribute(
850  pWriter, BAD_CAST("value"),
851  BAD_CAST(OString::boolean(mbIgnoreFirstLineIndentInNumbering).getStr()));
852  (void)xmlTextWriterEndElement(pWriter);
853 
854  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbDoNotJustifyLinesWithManualBreak"));
855  (void)xmlTextWriterWriteAttribute(
856  pWriter, BAD_CAST("value"),
857  BAD_CAST(OString::boolean(mbDoNotJustifyLinesWithManualBreak).getStr()));
858  (void)xmlTextWriterEndElement(pWriter);
859 
860  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbDoNotResetParaAttrsForNumFont"));
861  (void)xmlTextWriterWriteAttribute(
862  pWriter, BAD_CAST("value"),
863  BAD_CAST(OString::boolean(mbDoNotResetParaAttrsForNumFont).getStr()));
864  (void)xmlTextWriterEndElement(pWriter);
865 
866  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTableRowKeep"));
867  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
868  BAD_CAST(OString::boolean(mbTableRowKeep).getStr()));
869  (void)xmlTextWriterEndElement(pWriter);
870 
871  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbIgnoreTabsAndBlanksForLineCalculation"));
872  (void)xmlTextWriterWriteAttribute(
873  pWriter, BAD_CAST("value"),
874  BAD_CAST(OString::boolean(mbIgnoreTabsAndBlanksForLineCalculation).getStr()));
875  (void)xmlTextWriterEndElement(pWriter);
876 
877  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbDoNotCaptureDrawObjsOnPage"));
878  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
879  BAD_CAST(OString::boolean(mbDoNotCaptureDrawObjsOnPage).getStr()));
880  (void)xmlTextWriterEndElement(pWriter);
881 
882  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbClipAsCharacterAnchoredWriterFlyFrames"));
883  (void)xmlTextWriterWriteAttribute(
884  pWriter, BAD_CAST("value"),
885  BAD_CAST(OString::boolean(mbClipAsCharacterAnchoredWriterFlyFrames).getStr()));
886  (void)xmlTextWriterEndElement(pWriter);
887 
888  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbUnixForceZeroExtLeading"));
889  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
890  BAD_CAST(OString::boolean(mbUnixForceZeroExtLeading).getStr()));
891  (void)xmlTextWriterEndElement(pWriter);
892 
893  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTabRelativeToIndent"));
894  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
895  BAD_CAST(OString::boolean(mbTabRelativeToIndent).getStr()));
896  (void)xmlTextWriterEndElement(pWriter);
897 
898  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbProtectForm"));
899  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
900  BAD_CAST(OString::boolean(mbProtectForm).getStr()));
901  (void)xmlTextWriterEndElement(pWriter);
902 
903  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbMsWordCompTrailingBlanks"));
904  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
905  BAD_CAST(OString::boolean(mbMsWordCompTrailingBlanks).getStr()));
906  (void)xmlTextWriterEndElement(pWriter);
907 
908  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbMsWordCompMinLineHeightByFly"));
909  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
910  BAD_CAST(OString::boolean(mbMsWordCompMinLineHeightByFly).getStr()));
911  (void)xmlTextWriterEndElement(pWriter);
912 
913  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbInvertBorderSpacing"));
914  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
915  BAD_CAST(OString::boolean(mbInvertBorderSpacing).getStr()));
916  (void)xmlTextWriterEndElement(pWriter);
917 
918  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbCollapseEmptyCellPara"));
919  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
920  BAD_CAST(OString::boolean(mbCollapseEmptyCellPara).getStr()));
921  (void)xmlTextWriterEndElement(pWriter);
922 
923  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTabAtLeftIndentForParagraphsInList"));
924  (void)xmlTextWriterWriteAttribute(
925  pWriter, BAD_CAST("value"),
926  BAD_CAST(OString::boolean(mbTabAtLeftIndentForParagraphsInList).getStr()));
927  (void)xmlTextWriterEndElement(pWriter);
928 
929  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbSmallCapsPercentage66"));
930  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
931  BAD_CAST(OString::boolean(mbSmallCapsPercentage66).getStr()));
932  (void)xmlTextWriterEndElement(pWriter);
933 
934  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTabOverflow"));
935  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
936  BAD_CAST(OString::boolean(mbTabOverflow).getStr()));
937  (void)xmlTextWriterEndElement(pWriter);
938 
939  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbUnbreakableNumberings"));
940  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
941  BAD_CAST(OString::boolean(mbUnbreakableNumberings).getStr()));
942  (void)xmlTextWriterEndElement(pWriter);
943 
944  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbClippedPictures"));
945  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
946  BAD_CAST(OString::boolean(mbClippedPictures).getStr()));
947  (void)xmlTextWriterEndElement(pWriter);
948 
949  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbBackgroundParaOverDrawings"));
950  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
951  BAD_CAST(OString::boolean(mbBackgroundParaOverDrawings).getStr()));
952  (void)xmlTextWriterEndElement(pWriter);
953 
954  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTabOverMargin"));
955  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
956  BAD_CAST(OString::boolean(mbTabOverMargin).getStr()));
957  (void)xmlTextWriterEndElement(pWriter);
958 
959  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTabOverSpacing"));
960  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
961  BAD_CAST(OString::boolean(mbTabOverSpacing).getStr()));
962  (void)xmlTextWriterEndElement(pWriter);
963 
964  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbTreatSingleColumnBreakAsPageBreak"));
965  (void)xmlTextWriterWriteAttribute(
966  pWriter, BAD_CAST("value"),
967  BAD_CAST(OString::boolean(mbTreatSingleColumnBreakAsPageBreak).getStr()));
968  (void)xmlTextWriterEndElement(pWriter);
969 
970  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbSurroundTextWrapSmall"));
971  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
972  BAD_CAST(OString::boolean(mbSurroundTextWrapSmall).getStr()));
973  (void)xmlTextWriterEndElement(pWriter);
974 
975  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbPropLineSpacingShrinksFirstLine"));
976  (void)xmlTextWriterWriteAttribute(
977  pWriter, BAD_CAST("value"),
978  BAD_CAST(OString::boolean(mbPropLineSpacingShrinksFirstLine).getStr()));
979  (void)xmlTextWriterEndElement(pWriter);
980 
981  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbSubtractFlys"));
982  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
983  BAD_CAST(OString::boolean(mbSubtractFlys).getStr()));
984  (void)xmlTextWriterEndElement(pWriter);
985 
986  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbLastBrowseMode"));
987  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
988  BAD_CAST(OString::boolean(mbLastBrowseMode).getStr()));
989  (void)xmlTextWriterEndElement(pWriter);
990 
991  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbDisableOffPagePositioning"));
992  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
993  BAD_CAST(OString::boolean(mbDisableOffPagePositioning).getStr()));
994  (void)xmlTextWriterEndElement(pWriter);
995 
996  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbEmptyDbFieldHidesPara"));
997  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
998  BAD_CAST(OString::boolean(mbEmptyDbFieldHidesPara).getStr()));
999  (void)xmlTextWriterEndElement(pWriter);
1000 
1001  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbContinuousEndnotes"));
1002  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
1003  BAD_CAST(OString::boolean(mbContinuousEndnotes).getStr()));
1004  (void)xmlTextWriterEndElement(pWriter);
1005 
1006  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbHeaderSpacingBelowLastPara"));
1007  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
1008  BAD_CAST(OString::boolean(mbHeaderSpacingBelowLastPara).getStr()));
1009  (void)xmlTextWriterEndElement(pWriter);
1010 
1011  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbFrameAutowidthWithMorePara"));
1012  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
1013  BAD_CAST(OString::boolean(mbFrameAutowidthWithMorePara).getStr()));
1014  (void)xmlTextWriterEndElement(pWriter);
1015 
1016  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbGutterAtTop"));
1017  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
1018  BAD_CAST(OString::boolean(mbGutterAtTop).getStr()));
1019  (void)xmlTextWriterEndElement(pWriter);
1020 
1021  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mbFootnoteInColumnToPageEnd"));
1022  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
1023  BAD_CAST(OString::boolean(mbFootnoteInColumnToPageEnd).getStr()));
1024 
1025  (void)xmlTextWriterStartElement(pWriter, BAD_CAST("mnImagePreferredDPI"));
1026  (void)xmlTextWriterWriteAttribute(pWriter, BAD_CAST("value"),
1027  BAD_CAST(OString::number(mnImagePreferredDPI).getStr()));
1028 
1029  (void)xmlTextWriterEndElement(pWriter);
1030 
1031  (void)xmlTextWriterEndElement(pWriter);
1032 }
1033 
1034 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
virtual const css::i18n::ForbiddenCharacters * getForbiddenCharacters(LanguageType nLang, bool bLocaleData) const override
Return the forbidden characters.
bool GetDefault(SvtCompatibilityEntry::Index rIdx) const
SwFieldUpdateFlags
Definition: fldupde.hxx:22
virtual const SwRootFrame * GetCurrentLayout() const =0
virtual bool get(DocumentSettingId id) const override
Return the specified document setting.
void SetForbiddenCharsTable(const std::shared_ptr< SvxForbiddenCharactersTable > &xForbiddenChars)
virtual void SetModified()=0
Must be called manually at changes of format.
sal_Int64 n
void dumpAsXml(xmlTextWriterPtr pWriter) const
Definition: doc.hxx:187
virtual CharCompressType getCharacterCompressionType() const override
Get the character compression type for Asian characters.
virtual void set(DocumentSettingId id, bool value) override
Set the specified document setting.
void SetCharCompressType(CharCompressType nType)
void Validate(const SwDoc &rDoc)
Definition: number.cxx:1071
void Setn32DummyCompatibilityOptions1(const sal_uInt32 CompatibilityOptions1) override
Set the n32DummyCompatibilityOptions1.
The root element of a Writer document layout.
Definition: rootfrm.hxx:81
static LanguageType nLang
Definition: srtdlg.cxx:51
IDocumentDrawModelAccess const & getIDocumentDrawModelAccess() const
Definition: doc.cxx:155
SwDoc & m_rDoc
Definition: docbm.cxx:1201
void ReformatAllTextObjects()
SwBreakIt * g_pBreakIt
Definition: breakit.cxx:33
static bool IsFuzzing()
static std::shared_ptr< SvxForbiddenCharactersTable > makeForbiddenCharactersTable(const css::uno::Reference< css::uno::XComponentContext > &rxContext)
o3tl::sorted_vector< SwRootFrame * > GetAllLayouts()
Definition: doclay.cxx:1668
virtual void setLinkUpdateMode(sal_uInt16 nMode) override
Set the current link update mode.
void ReplaceCompatibilityOptions(const DocumentSettingManager &rSource)
virtual void setFieldUpdateFlags(SwFieldUpdateFlags eMode) override
Set the current field update mode.
#define SW_MOD()
Definition: swmodule.hxx:255
CharCompressType
std::vector< SwNumRule * >::size_type size_type
Definition: docary.hxx:66
virtual std::shared_ptr< SvxForbiddenCharactersTable > & getForbiddenCharacterTable() override
Get the forbidden character table and creates one if necessary.
void Setn32DummyCompatibilityOptions2(const sal_uInt32 CompatibilityOptions2) override
Set the n32DummyCompatibilityOptions2.
virtual const SwDrawModel * GetDrawModel() const =0
Draw Model and id accessors.
void UpdateNumRule()
Definition: docnum.cxx:2647
size_t size() const
Definition: docary.hxx:87
IDocumentState const & getIDocumentState() const
Definition: doc.cxx:394
void SetCountPhantoms(bool bCountPhantoms)
Definition: number.cxx:1084
virtual void setCharacterCompressionType(CharCompressType nType) override
Set the character compression type for Asian characters.
bool IsInReading() const
Definition: doc.hxx:953
sal_uInt32 Getn32DummyCompatibilityOptions2() const override
Get the n32DummyCompatibilityOptions2.
IDocumentLayoutAccess const & getIDocumentLayoutAccess() const
Definition: doc.cxx:405
virtual SwFieldUpdateFlags getFieldUpdateFlags(bool bGlobalSettings) const override
Get the current field update mode.
const SwNumRuleTable & GetNumRuleTable() const
Definition: doc.hxx:1065
virtual void setForbiddenCharacters(LanguageType nLang, const css::i18n::ForbiddenCharacters &rForbiddenCharacters) override
Set the forbidden characters.
virtual sal_uInt16 getLinkUpdateMode(bool bGlobalSettings) const override
Get the current link update mode.
sal_uInt32 Getn32DummyCompatibilityOptions1() const override
Get the n32DummyCompatibilityOptions1.
Reference< XComponentContext > getProcessComponentContext()
virtual ~DocumentSettingManager() override
struct _xmlTextWriter * xmlTextWriterPtr
void StartAllAction()
Set up Start-/EndAction for all Shells on an as high as possible (Shell section) level.
Definition: pagechg.cxx:1905
void EndAllAction(bool bVirDev=false)
Definition: pagechg.cxx:1917
const css::i18n::ForbiddenCharacters & GetForbidden(const LanguageType aLang)
Definition: breakit.hxx:103
SwNumRule * GetOutlineNumRule() const
Definition: doc.hxx:1023
bool m_bDetectedRangeSegmentation false
typedef void(CALLTYPE *GetFuncDataPtr)(sal_uInt16 &nNo