Version 5.2.6.1, tag libreoffice-5.2.6.1
[LibreOffice.git] / offapi / com / sun / star / document / Settings.idl
blobb0c6f31899263cc5db529c2e58389400c0d0e259
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
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 .
19 #ifndef __com_sun_star_document_Settings_idl__
20 #define __com_sun_star_document_Settings_idl__
22 #include <com/sun/star/beans/XPropertySet.idl>
23 #include <com/sun/star/i18n/XForbiddenCharacters.idl>
26 module com { module sun { module star { module document {
29 /** describes properties that apply to the whole document of any
30 application.
32 <p>For application specific settings, please refer to the
33 individual services.</p>
35 @see com::sun::star::text::DocumentSettings
36 @see com::sun::star::sheet::DocumentSettings
37 @see com::sun::star::drawing::DocumentSettings
38 @see com::sun::star::presentation::DocumentSettings
40 published service Settings
42 /** gives access to the properties implemented by this service.
44 interface com::sun::star::beans::XPropertySet;
47 // Note: These settings are global. However there is a note at
48 // every property that shows which application currently makes use
49 // of it.
51 // Writer and Draw/Impress and Calc
52 /** gives access to the set of forbidden characters.
54 @return the
55 com::sun::star::i18n::XForbiddenCharacters
56 interface to allow retrieval and modification of the
57 forbidden characters set.
59 [optional, property] com::sun::star::i18n::XForbiddenCharacters ForbiddenCharacters;
61 // Writer and Calc
62 /** specifies the update mode for links when loading text documents.
64 <p>For supported values see the constants group
65 LinkUpdateModes.</p>
67 [optional, property] short LinkUpdateMode;
69 // Writer and Draw/Impress and Calc
70 /** printer used by the document.
72 [property] string PrinterName;
74 // Writer and Draw/Impress and Calc
75 /** platform and driver dependent printer setup data.
77 <p>This property serves to capture the current printer setup
78 settings, such as paper tray, printer options, etc. The data
79 can typically be interpreted only by the system that generated
80 it. The PrinterSetup property may be used to save and restore
81 the user's printer settings.</p>
83 [property] sequence< byte > PrinterSetup;
85 // Writer and Draw/Impress and Calc
86 /** specifies if kerning is applied to Asian punctuation.
88 <p>Applies only if kerning is enabled.</p>
90 [optional, property] boolean IsKernAsianPunctuation;
92 // Writer and Draw/Impress and Calc
93 /** specifies the compression (character spacing) type used for
94 Asian characters.
96 @see com::sun::star::text::CharacterCompressionType
98 [optional, property] short CharacterCompressionType;
100 // Writer and Draw/Impress and Calc
101 /** specifies if the user-specific settings saved within a
102 document should be loaded with the document.
104 [optional, property] boolean ApplyUserData;
106 // Writer and Calc
107 /** specifies if a new version is created if a document has
108 been modified and you want to close it.
110 [optional, property] boolean SaveVersionOnClose;
112 // Writer and Draw/Impress and Calc
113 /** specifies if the document should be updated when the
114 template it was created from changes.
116 <p>Applies only for documents that were created from a template.</p>
118 [optional, property] boolean UpdateFromTemplate;
120 // Writer
121 /** specifies if fields in text documents are updated automatically.
123 [optional, property] boolean FieldAutoUpdate;
125 // Writer
126 /** The name of the globally registered
127 com::sun::star::sdb::DataSource
128 from which the current data is taken.
130 <p>The data source can e.g. be used for feeding a form
131 letter.</p>
133 [optional, property] string CurrentDatabaseDataSource;
135 // Writer
136 /** a string value, specifying the name of the object displayed
137 currently (or the SQL statement used).
139 [optional, property] string CurrentDatabaseCommand;
141 // Writer
142 // Note: What is the property DataTableName? Is this Writer-specific?
143 /** determines the interpretation of the property DataTableName.
145 @see com::sun::star::sdb::CommandType
147 [optional, property] long CurrentDatabaseCommandType;
149 // Draw and Impress
152 [optional, property] long DefaultTabStop;
154 // Draw and Impress
155 /** determines if the document will be printed as a booklet
156 (brochure), i.e., two document pages are put together on one
157 physical page, such that you can fold the print result and get
158 a booklet.
160 <p>Note, that you have to print in duplex mode, if both,
161 #IsPrintBookletFront and
162 #IsPrintBookletBack are set to `TRUE`.</p>
164 [optional, property] boolean IsPrintBooklet;
166 // Draw and Impress
167 /** is only effective, if #IsPrintBooklet is
168 `TRUE`. If this property is also `TRUE`, only the fronts of
169 the pages of your booklet are printed.
171 <p>This is especially useful, if your printer does not supply
172 duplex printing.</p>
174 [optional, property] boolean IsPrintBookletFront;
176 // Draw and Impress
177 /** is only effective, if #IsPrintBooklet is
178 `TRUE`. If this property is also `TRUE`, only the backs of
179 the pages of your booklet are printed.
181 <p>This is especially useful, if your printer does not supply
182 duplex printing.</p>
184 [optional, property] boolean IsPrintBookletBack;
186 // Draw and Impress
187 // Note: Define a constant group for that?
190 [optional, property] long PrintQuality;
192 // Draw and Impress
193 /** contains the URL that points to a color table (file extension
194 .soc) that will be used for showing a palette in dialogs using
195 colors.
197 [optional, property] string ColorTableURL;
199 // Draw and Impress
202 [optional, property] string DashTableURL;
204 // Draw and Impress
207 [optional, property] string LineEndTableURL;
209 // Draw and Impress
212 [optional, property] string HatchTableURL;
214 // Draw and Impress
217 [optional, property] string GradientTableURL;
219 // Draw and Impress
222 [optional, property] string BitmapTableURL;
224 // Calc
227 [optional, property] boolean AutoCalculate;
229 // Writer, later others
230 /** forbid use of printer metrics for layout
232 <p>For supported values see the constants group
233 PrinterIndependentLayout.</p>
235 [optional, property] short PrinterIndependentLayout;
237 // Writer, maybe later other applications, too
238 /** layout engine should add value of a Font's "external leading"
239 * attribute to the line spacing.
241 [optional, property] boolean AddExternalLeading;
243 // Writer, maybe later others
245 Whether to embed fonts used by the document (see e.g. handling
246 of OOXML embedRegular etc.)
247 @since LibreOffice 4.0
249 [optional, property] boolean EmbedFonts;
250 // Writer, maybe later others
252 Whether to embed also system fonts used by the document.
253 Does not have any effect if EmbedFonts is false.
254 @since LibreOffice 4.0
256 [optional, property] boolean EmbedSystemFonts;
261 }; }; }; };
263 #endif
265 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */