1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_text_TextDocumentSettings_idl__
24#define __com_sun_star_text_TextDocumentSettings_idl__
25
26#ifndef __com_sun_star_beans_XPropertySet_idl__
27#include <com/sun/star/beans/XPropertySet.idl>
28#endif
29
30#ifndef __com_sun_star_document_Settings_idl__
31#include <com/sun/star/document/Settings.idl>
32#endif
33
34#ifndef __com_sun_star_text_PrintSettings_idl__
35#include <com/sun/star/text/PrintSettings.idl>
36#endif
37
38#ifndef __com_sun_star_text_PrintPreviewSettings_idl__
39#include <com/sun/star/text/PrintPreviewSettings.idl>
40#endif
41
42//=============================================================================
43
44module com { module sun { module star { module text {
45
46//=============================================================================
47
48/** describes properties that apply to the whole text document.
49 */
50published service DocumentSettings
51{
52    service com::sun::star::document::Settings;
53
54    [optional] service com::sun::star::text::PrintSettings;
55
56    [optional] service com::sun::star::text::PrintPreviewSettings;
57
58    //-------------------------------------------------------------------------
59    /** gives access to the properties implemented by this service.
60     */
61    interface com::sun::star::beans::XPropertySet;
62
63    //-------------------------------------------------------------------------
64
65    /** specifies if charts in text documents are updated automatically.
66
67        This has no effect if 'FieldAutoUpdate' is <FALSE/>.
68    */
69    [optional, property] boolean ChartAutoUpdate;
70
71    /** specifies if spacing between paragraphs and tables is to be
72        added.
73
74        <p>If between two paragraphs, two tables, or a paragraph and a
75        table, you have defined spacing above and below each object,
76        usually only the larger one of the two spaces is used.  If the
77        spacing between hte objects are to be added this property has
78        to be <TRUE/>.</p>
79    */
80    [optional, property] boolean AddParaTableSpacing;
81
82    /** specifies if top paragraph spacing is applied to paragraphs
83        on the first page of text documents.
84
85        <p>If <TRUE/>, the paragraph or table spacing to the top will
86        also be effective at the beginning of a page or column if the
87        paragraph or table is positioned on the first page of the
88        document.  The same applies for a page break.</p>
89    */
90    [optional, property] boolean AddParaTableSpacingAtStart;
91
92    /** specifies the alignment of tab stops in text documents.
93
94        <p>If <TRUE/> centered and right-aligned paragraphs containing
95        tabs are formatted as a whole in the center or aligned to the
96        right. If <FALSE/>, only the text to the right of the last
97        tab, for example, is aligned to the right, while the text to
98        the left remains where it is.</p>
99    */
100    [optional, property] boolean AlignTabStopPosition;
101
102    // ------------------------------------------------------------
103    /** specifies if the contents of links in the global document
104        are saved or not.
105
106        <p>This property applies only for master documents.</p>
107
108        <p><em>Note</em>: This name is a bit misleading, it should be
109        something like <code>SaveLinkedDocumentContent</code>.</p>
110    */
111    [optional, property] boolean SaveGlobalDocumentLinks;
112    // ------------------------------------------------------------
113    /** specifies if the document has been created as a label document.
114
115        <p>This property indicates that the document contains multiple text frames
116        and that the content of one frame is duplicated into the other frames
117        by internally linked text sections.</p>
118
119    */
120    [optional, property] boolean IsLabelDocument;
121    // ------------------------------------------------------------
122    /** specifies if the former (till OpenOffice.org 1.1) or the new
123        line spacing formatting is applied.
124
125        <p>This property controls how a set line spacing at a paragraph
126        influences the formatting of the text lines and the spacing between
127        paragraphs.
128        If <TRUE/>, the formatting till OpenOffice.org 1.1 is
129        applied. This means, that a proportional line spacing is applied
130        above and below a text line and that the maximum of the line spacing
131        value between two paragraph is added respectively reckoned up with the
132        paragraph spacing (adding or reckoning up is controlled by document
133        option AddParaTableSpacing).
134        If <FALSE/> (default for documents since OpenOffice.org 2.0),
135        a proportional line spacing is only applied below a text line and
136        it's always added to the paragraph spacing between two paragraphs.</p>
137
138        @since OpenOffice 2.0
139    */
140    [optional, property] boolean UseFormerLineSpacing;
141    // ------------------------------------------------------------
142    /** specifies if paragraph and table spacing is added at the
143        bottom of table cells
144
145        <p>This property controls, if the spacing of the last paragraph
146        respectively table of a table cell is added at the bottom of this
147        table cells
148        If <TRUE/> (default for documents since OpenOffice.org 2.0),
149        the spacing of the last paragraph respectively table of a table
150        cell is added at the bottom of this table cell.
151        If <FALSE/> (typically for documents till OpenOffice.org 1.1),
152        the spacing of the last paragraph respectively table of a table
153        cell isn't added at the bottom of this table cell.</p>
154
155        @since OpenOffice 2.0
156    */
157    [optional, property] boolean AddParaSpacingToTableCells;
158    // ------------------------------------------------------------
159    /** specifies if the former (till OpenOffice.org 1.1) or the new
160        object positioning is applied.
161
162        <p>This property controls how floating screen objects (Writer
163        fly frames and drawing objects are positioned.
164        If <TRUE/>, the object positioning till OpenOffice.org 1.1 is
165        applied. This means, that the top of a paragraph, at which a
166        floating screen object orients its vertical position, includes
167        the lower spacing and the line spacing of the previous paragraph.
168        If <FALSE/> (default for documents since OpenOffice.org 2.0),
169        the top of a paragraph, at which a floating screen object orients
170        its vertical position, doesn't include the lower spacing and the
171        line spacing of the previous paragraph.</p>
172
173        @since OpenOffice 2.0
174    */
175    [optional, property] boolean UseFormerObjectPositioning;
176
177    // ------------------------------------------------------------
178    /** specifies if the text wrap of floating screen objects are
179        considered in a specified way in the positioning algorithm.
180
181        <p>This property controls how floating screen objects (Writer
182        fly frames and drawing objects) are positioned.
183        If <TRUE/>, the object positioning algorithm will consider
184        the text wrap style, set at the floating screen object.
185        The attribute <member>BaseFrameProperties::WrapInfluenceOnPosition</member>
186        specifies how the text wrap is considered.
187        If <FALSE/> (default value), the former object positioning
188        algorithm (known from OpenOffice.org 1.1) is applied.</p>
189
190        @since OpenOffice 2.0
191    */
192    [optional, property] boolean ConsiderTextWrapOnObjPos;
193
194    // ------------------------------------------------------------
195    /** specifies if Math objects should automatically vertically aligned to
196        match the baseline of the surrounding text.
197
198        <p>If activated formula object that are anchored 'As Character' will be
199        vertically aligned to have their baseline match with the one from the text.</p>
200
201        @since OpenOffice 3.4
202    */
203    [optional, property] boolean MathBaselineAlignment;
204};
205
206//=============================================================================
207
208}; }; }; };
209
210#endif
211