LibreOffice Module sw (master)  1
IDocumentSettingAccess.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_SW_INC_IDOCUMENTSETTINGACCESS_HXX
21 #define INCLUDED_SW_INC_IDOCUMENTSETTINGACCESS_HXX
22 
23 #include <sal/types.h>
24 #include "fldupde.hxx"
25 #include <i18nlangtag/lang.h>
26 #include <memory>
27 
29 namespace com::sun::star::i18n
30 {
31 struct ForbiddenCharacters;
32 }
33 enum class CharCompressType;
34 
36 {
37  // COMPATIBILITY FLAGS START
40 
41  TAB_COMPAT,
42 
45 
47 
57 
62 
67 
68  // tdf#104349 tdf#104668
70  // tdf#128197 MS Word in some modes can have line height based on shape height, not on font
75  // #i89181#
86  // MS Word still wraps text around objects with less space than LO would.
90  // tdf#112443 disable off-page content positioning
93  // tdf#129448: Auto first-line indent should not be effected by line space
95  // COMPATIBILITY FLAGS END
97  HTML_MODE,
101  PURGE_OLE,
106  EMBED_FONTS,
119  // footnoteContainer default position is the page end instead of the column end
120  // only if "evenly distributed" is set, and "collected at the end" is not set
122  // AsChar anchored flys wrapped differently in ooxml than normally so in case of
123  // docx enable this flag. For details see ticket tdf#100680.
125 };
126 
130 {
131 public:
141  virtual bool get(/*[in]*/ DocumentSettingId id) const = 0;
142 
152  virtual void set(/*[in]*/ DocumentSettingId id, /*[in]*/ bool value) = 0;
153 
166  virtual const css::i18n::ForbiddenCharacters*
167  getForbiddenCharacters(/*[in]*/ LanguageType nLang, /*[in]*/ bool bLocaleData) const = 0;
168 
177  virtual void
178  setForbiddenCharacters(/*[in]*/ LanguageType nLang,
179  /*[in]*/ const css::i18n::ForbiddenCharacters& rForbiddenCharacters)
180  = 0;
181 
187  virtual std::shared_ptr<SvxForbiddenCharactersTable>& getForbiddenCharacterTable() = 0;
188 
194  virtual const std::shared_ptr<SvxForbiddenCharactersTable>&
195  getForbiddenCharacterTable() const = 0;
196 
206  virtual sal_uInt16 getLinkUpdateMode(/*[in]*/ bool bGlobalSettings) const = 0;
207 
213  virtual void setLinkUpdateMode(/*[in]*/ sal_uInt16 nMode) = 0;
214 
224  virtual SwFieldUpdateFlags getFieldUpdateFlags(/*[in]*/ bool bGlobalSettings) const = 0;
225 
231  virtual void setFieldUpdateFlags(/*[in]*/ SwFieldUpdateFlags nMode) = 0;
232 
238  virtual CharCompressType getCharacterCompressionType() const = 0;
239 
245  virtual void setCharacterCompressionType(/*[in]*/ CharCompressType nType) = 0;
246 
249  virtual sal_uInt32 Getn32DummyCompatibilityOptions1() const = 0;
250 
253  virtual void Setn32DummyCompatibilityOptions1(const sal_uInt32 CompatibilityOptions1) = 0;
254 
257  virtual sal_uInt32 Getn32DummyCompatibilityOptions2() const = 0;
258 
261  virtual void Setn32DummyCompatibilityOptions2(const sal_uInt32 CompatibilityOptions2) = 0;
262 
263  virtual sal_Int32 getImagePreferredDPI() = 0;
264  virtual void setImagePreferredDPI(sal_Int32 nValue) = 0;
265 
266 protected:
268 };
269 
270 #endif // INCLUDED_SW_INC_IDOCUMENTSETTINGACCESS_HXX
271 
272 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
virtual std::shared_ptr< SvxForbiddenCharactersTable > & getForbiddenCharacterTable()=0
Get the forbidden character table and creates one if necessary.
virtual sal_uInt32 Getn32DummyCompatibilityOptions2() const =0
Get the n32DummyCompatibilityOptions2.
SwFieldUpdateFlags
Definition: fldupde.hxx:22
virtual void setImagePreferredDPI(sal_Int32 nValue)=0
virtual const css::i18n::ForbiddenCharacters * getForbiddenCharacters(LanguageType nLang, bool bLocaleData) const =0
Return the forbidden characters.
virtual void setFieldUpdateFlags(SwFieldUpdateFlags nMode)=0
Set the current field update mode.
static LanguageType nLang
Definition: srtdlg.cxx:51
virtual void set(DocumentSettingId id, bool value)=0
Set the specified document setting.
virtual void setCharacterCompressionType(CharCompressType nType)=0
Set the character compression type for Asian characters.
virtual SwFieldUpdateFlags getFieldUpdateFlags(bool bGlobalSettings) const =0
Get the current field update mode.
virtual void Setn32DummyCompatibilityOptions1(const sal_uInt32 CompatibilityOptions1)=0
Set the n32DummyCompatibilityOptions1.
virtual sal_Int32 getImagePreferredDPI()=0
virtual CharCompressType getCharacterCompressionType() const =0
Get the character compression type for Asian characters.
CharCompressType
virtual sal_uInt16 getLinkUpdateMode(bool bGlobalSettings) const =0
Get the current link update mode.
Provides access to settings of a document.
virtual sal_uInt32 Getn32DummyCompatibilityOptions1() const =0
Get the n32DummyCompatibilityOptions1.
virtual void setForbiddenCharacters(LanguageType nLang, const css::i18n::ForbiddenCharacters &rForbiddenCharacters)=0
Set the forbidden characters.
virtual void setLinkUpdateMode(sal_uInt16 nMode)=0
Set the current link update mode.
QPRO_FUNC_TYPE nType
Any value
virtual void Setn32DummyCompatibilityOptions2(const sal_uInt32 CompatibilityOptions2)=0
Set the n32DummyCompatibilityOptions2.
sal_Int16 nValue