xref: /AOO41X/main/offapi/com/sun/star/document/Settings.idl (revision 1ecadb572e7010ff3b3382ad9bf179dbc6efadbb)
1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_document_Settings_idl__
28#define __com_sun_star_document_Settings_idl__
29
30#ifndef __com_sun_star_beans_XPropertySet_idl__
31#include <com/sun/star/beans/XPropertySet.idl>
32#endif
33#ifndef __com_sun_star_i18n_XForbiddenCharacters_idl__
34#include <com/sun/star/i18n/XForbiddenCharacters.idl>
35#endif
36
37//=============================================================================
38
39module com {   module sun {   module star {   module document {
40
41//=============================================================================
42
43/** describes properties that apply to the whole document of any
44    application.
45
46    <p>For application specific settings, please refer to the
47    individual services.</p>
48
49    @see com::sun::star::text::DocumentSettings
50    @see com::sun::star::sheet::DocumentSettings
51    @see com::sun::star::drawing::DocumentSettings
52    @see com::sun::star::presentation::DocumentSettings
53 */
54published service Settings
55{
56    /** gives access to the properties implemented by this service.
57     */
58	interface com::sun::star::beans::XPropertySet;
59
60    //-------------------------------------------------------------------------
61
62    // Note: These settings are global.  However there is a note at
63    // every property that shows which application currently makes use
64    // of it.
65
66    // Writer and Draw/Impress and Calc
67    //-------------------------------------------------------------------------
68    /** gives access to the set of forbidden characters.
69
70        @return the
71            <type scope="com::sun::star::i18n">XForbiddenCharacters</type>
72            interface to allow retreival and modification of the
73            forbidden characters set.
74    */
75    [optional, property] com::sun::star::i18n::XForbiddenCharacters ForbiddenCharacters;
76
77    // Writer and Calc
78    //-------------------------------------------------------------------------
79    /** specifies the update mode for links when loading text documents.
80
81        <p>For supported values see the constants group
82        <type>LinkUpdateModes</type>.</p>
83    */
84    [optional, property] short LinkUpdateMode;
85
86    // Writer and Draw/Impress and Calc
87    //-------------------------------------------------------------------------
88    /** printer used by the document.
89     */
90    [property] string PrinterName;
91
92    // Writer and Draw/Impress and Calc
93    //-------------------------------------------------------------------------
94    /** platform and driver dependent printer setup data.
95
96        <p>This property serves to capture the current printer setup
97        settings, such as paper tray, printer options, etc. The data
98        can typically be interpreted only by the system that generated
99        it. The PrinterSetup property may be used to save and restore
100        the user's printer settings.</p>
101    */
102    [property] sequence< byte > PrinterSetup;
103
104    // Writer and Draw/Impress and Calc
105    //-------------------------------------------------------------------------
106    /** specifies if kerning is applied to Asian punctuation.
107
108        <p>Applies only if kerning is enabled.</p>
109    */
110    [optional, property] boolean IsKernAsianPunctuation;
111
112    // Writer and Draw/Impress and Calc
113    //-------------------------------------------------------------------------
114    /** specifies the compression (character spacing) type used for
115        Asian characters.
116
117        @see com::sun::star::text::CharacterCompressionType
118    */
119    [optional, property] short CharacterCompressionType;
120
121    // Writer and Draw/Impress and Calc
122    //-------------------------------------------------------------------------
123    /** specifies if the user-specific settings saved within a
124        document should be loaded with the document.
125    */
126    [optional, property] boolean ApplyUserData;
127
128    // Writer and Calc
129    //-------------------------------------------------------------------------
130    /** specifies if a new version is created if a document has
131        been modified and you want to close it.
132    */
133    [optional, property] boolean SaveVersionOnClose;
134
135    // Writer and Draw/Impress and Calc
136    //-------------------------------------------------------------------------
137    /** specifies if the document should be updated when the
138        template it was created from changes.
139
140        <p>Applies only for documents that were created from a template.</p>
141    */
142    [optional, property] boolean UpdateFromTemplate;
143
144    // Writer
145    //-------------------------------------------------------------------------
146    /** specifies if fields in text documents are updated automatically.
147     */
148    [optional, property] boolean FieldAutoUpdate;
149
150    // Writer
151    //-------------------------------------------------------------------------
152    /** The name of the globally registered
153        <type scope="com::sun::star::sdb">DataSource</type>
154        from which the current data is taken.
155
156        <p>The data source can e.g. be used for feeding a form
157        letter.</p>
158    */
159    [optional, property] string CurrentDatabaseDataSource;
160
161    // Writer
162    //-------------------------------------------------------------------------
163    /** a string value, specifying the name of the object displayed
164        currently (or the SQL statement used).
165    */
166    [optional, property] string CurrentDatabaseCommand;
167
168    // Writer
169    //-------------------------------------------------------------------------
170    // Note: What is the property DataTableName?  Is this Writer-specific?
171    /** determines the interpretation of the property DataTableName.
172
173        @see com::sun::star::sdb::CommandType
174    */
175    [optional, property] long CurrentDatabaseCommandType;
176
177    // Draw and Impress
178    //-------------------------------------------------------------------------
179    /**
180     */
181    [optional, property] long DefaultTabStop;
182
183    // Draw and Impress
184    //-------------------------------------------------------------------------
185    /** determines if the document will be printed as a booklet
186        (brochure), i.e., two document pages are put together on one
187        physical page, such that you can fold the print result and get
188        a booklet.
189
190        <p>Note, that you have to print in duplex mode, if both,
191        <member>IsPrintBookletFront</member> and
192        <member>IsPrintBookletBack</member> are set to <TRUE/>.</p>
193     */
194    [optional, property] boolean IsPrintBooklet;
195
196    // Draw and Impress
197    //-------------------------------------------------------------------------
198    /** is only effective, if <member>IsPrintBooklet</member> is
199        <TRUE/>.  If this property is also <TRUE/>, only the fronts of
200        the pages of your booklet are printed.
201
202        <p>This is especially useful, if your printer does not supply
203        duplex printing.</p>
204     */
205    [optional, property] boolean IsPrintBookletFront;
206
207    // Draw and Impress
208    //-------------------------------------------------------------------------
209    /** is only effective, if <member>IsPrintBooklet</member> is
210        <TRUE/>.  If this property is also <TRUE/>, only the backs of
211        the pages of your booklet are printed.
212
213        <p>This is especially useful, if your printer does not supply
214        duplex printing.</p>
215     */
216    [optional, property] boolean IsPrintBookletBack;
217
218    // Draw and Impress
219    //-------------------------------------------------------------------------
220    // Note: Define a constant group for that?
221    /**
222     */
223    [optional, property] long PrintQuality;
224
225    // Draw and Impress
226    //-------------------------------------------------------------------------
227    /** contains the URL that points to a color table (file extension
228        .soc) that will be used for showing a palette in dialogs using
229        colors.
230     */
231    [optional, property] string ColorTableURL;
232
233    // Draw and Impress
234    //-------------------------------------------------------------------------
235    /**
236     */
237    [optional, property] string DashTableURL;
238
239    // Draw and Impress
240    //-------------------------------------------------------------------------
241    /**
242     */
243    [optional, property] string LineEndTableURL;
244
245    // Draw and Impress
246    //-------------------------------------------------------------------------
247    /**
248     */
249    [optional, property] string HatchTableURL;
250
251    // Draw and Impress
252    //-------------------------------------------------------------------------
253    /**
254     */
255    [optional, property] string GradientTableURL;
256
257    // Draw and Impress
258    //-------------------------------------------------------------------------
259    /**
260     */
261    [optional, property] string BitmapTableURL;
262
263    // Calc
264    //-------------------------------------------------------------------------
265    /**
266     */
267    [optional, property] boolean AutoCalculate;
268
269    // Writer, later others
270    //-------------------------------------------------------------------------
271    /** forbid use of printer metrics for layout
272
273        <p>For supported values see the constants group
274        <type>PrinterIndependentLayout</type>.</p>
275     */
276    [optional, property] short PrinterIndependentLayout;
277
278    // Writer, maybe later other applications, too
279    //-------------------------------------------------------------------------
280    /** layout engine should add value of a Font's 'external leading'
281     * attribute to the line spacing.
282     */
283    [optional, property] boolean AddExternalLeading;
284
285};
286
287//=============================================================================
288
289}; }; }; };
290
291#endif
292