Update ooo320-m1
[ooovba.git] / offapi / com / sun / star / style / ParagraphProperties.idl
blob14f91d6b8913ee67da41ca6495a1dbf8b1646822
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: ParagraphProperties.idl,v $
10 * $Revision: 1.25 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_style_ParagraphProperties_idl__
31 #define __com_sun_star_style_ParagraphProperties_idl__
33 #ifndef __com_sun_star_style_ParagraphAdjust_idl__
34 #include <com/sun/star/style/ParagraphAdjust.idl>
35 #endif
37 #ifndef __com_sun_star_util_Color_idl__
38 #include <com/sun/star/util/Color.idl>
39 #endif
41 #ifndef __com_sun_star_style_LineSpacing_idl__
42 #include <com/sun/star/style/LineSpacing.idl>
43 #endif
45 #ifndef __com_sun_star_style_GraphicLocation_idl__
46 #include <com/sun/star/style/GraphicLocation.idl>
47 #endif
49 #ifndef __com_sun_star_style_TabStop_idl__
50 #include <com/sun/star/style/TabStop.idl>
51 #endif
53 #ifndef __com_sun_star_style_DropCapFormat_idl__
54 #include <com/sun/star/style/DropCapFormat.idl>
55 #endif
57 #ifndef __com_sun_star_container_XIndexReplace_idl__
58 #include <com/sun/star/container/XIndexReplace.idl>
59 #endif
60 #ifndef __com_sun_star_table_ShadowFormat_idl__
61 #include <com/sun/star/table/ShadowFormat.idl>
62 #endif
63 #ifndef __com_sun_star_table_BorderLine_idl__
64 #include <com/sun/star/table/BorderLine.idl>
65 #endif
66 #ifndef __com_sun_star_style_BreakType_idl__
67 #include <com/sun/star/style/BreakType.idl>
68 #endif
69 #ifndef __com_sun_star_container_XNameContainer_idl__
70 #include <com/sun/star/container/XNameContainer.idl>
71 #endif
73 //=============================================================================
75 module com { module sun { module star { module style {
77 //=============================================================================
79 /** describes the style of paragraphs.
81 published service ParagraphProperties
83 //-------------------------------------------------------------------------
85 /** determines the adjustment of a paragraph.
87 [property] com::sun::star::style::ParagraphAdjust ParaAdjust;
89 //-------------------------------------------------------------------------
91 /** contains the type of the line spacing of a paragraph.
93 [optional, property] com::sun::star::style::LineSpacing ParaLineSpacing;
95 //-------------------------------------------------------------------------
97 /** contains the paragraph background color.
99 [optional, property] com::sun::star::util::Color ParaBackColor;
101 //-------------------------------------------------------------------------
103 /** This value is <TRUE/> if the paragraph background color
104 is set to transparent.
106 [optional, property] boolean ParaBackTransparent;
108 //-------------------------------------------------------------------------
110 /** contains the value of a link for the background graphic of a paragraph.
112 [optional, property] string ParaBackGraphicURL;
114 //-------------------------------------------------------------------------
116 /** contains the name of the graphic filter for the background graphic of a paragraph.
118 [optional, property] string ParaBackGraphicFilter;
120 //-------------------------------------------------------------------------
122 /** contains the value for the position of a background graphic.
124 @see com::sun::star::style::GraphicLocation
126 [optional, property] com::sun::star::style::GraphicLocation ParaBackGraphicLocation;
128 //-------------------------------------------------------------------------
130 /** determines the adjustment of the last line.
131 <p>It is only valid if <member>ParagraphProperties::ParaAdjust</member>
132 is set to <const>ParagraphAdjust::BLOCK</const>.</p>
134 [property] short ParaLastLineAdjust;
136 //-------------------------------------------------------------------------
138 /** determines if single words are stretched.
140 <p>It is only valid if <member>ParagraphProperties::ParaAdjust</member> and
141 <member>ParagraphProperties::ParaLastLineAdjust</member> are also valid.</p>
143 [optional, property] boolean ParaExpandSingleWord;
145 //-------------------------------------------------------------------------
147 /** determines the left margin of the paragraph in 100th mm.
149 [property] long ParaLeftMargin;
151 //-------------------------------------------------------------------------
153 /** determines the right margin of the paragraph in 100th mm.
155 [property] long ParaRightMargin;
157 //-------------------------------------------------------------------------
159 /** determines the top margin of the paragraph in 100th mm.
161 <p>The distance between two paragraphs is specified by:</p>
162 <ul>
163 <li>either the bottom margin of the previous paragraph.</li>
164 <li>or the top margin of the following paragraph.</li>
165 </ul>
166 The greater one is chosen.
168 [property] long ParaTopMargin;
170 //-------------------------------------------------------------------------
172 /** determines the bottom margin of the paragraph in 100th mm.
174 <p>The distance between two paragraphs is specified by:</p>
175 <ul>
176 <li>either the bottom margin of the previous paragraph
177 </li>
178 <li>or the top margin of the following paragraph.
179 </li>
180 </ul>
181 The greater one is chosen.
183 [property] long ParaBottomMargin;
185 //-------------------------------------------------------------------------
187 /** determines if the paragraph is included in the
188 line numbering.
190 [optional, property] boolean ParaLineNumberCount;
192 //-------------------------------------------------------------------------
194 /** contains the start value for the line numbering.
196 [optional, property] long ParaLineNumberStartValue;
198 //-------------------------------------------------------------------------
200 /** If this property is set, it creates a page break before the
201 paragraph it belongs to and assigns the value as the name
202 of the new page style sheet to use.
204 [optional, property] string PageDescName;
206 //-------------------------------------------------------------------------
208 /** If a page break property is set at a paragraph, this property contains the new value for the page number.
210 [optional, property] short PageNumberOffset;
212 //-------------------------------------------------------------------------
214 /** determines if the register mode is applied to a
215 paragraph.
219 <p>Remark: Register mode is only used if the register
220 mode property of the page style is switched on.</p>
222 [optional, property] boolean ParaRegisterModeActive;
224 //-------------------------------------------------------------------------
226 /** specifies the positions and kinds of thei tab stops within this
227 paragraph.
229 [optional, property] sequence<com::sun::star::style::TabStop> ParaTabStops;
231 //-------------------------------------------------------------------------
233 /** contains the name of the current paragraph style.
235 [optional, property] string ParaStyleName;
237 //-------------------------------------------------------------------------
239 /** contains the name of the current page style.
241 [optional, property, maybevoid, readonly] string PageStyleName;
243 //-------------------------------------------------------------------------
245 /** specifies whether the first characters of the
246 paragraph are displayed in capital letters and how they are
247 formatted.
249 [optional, property] com::sun::star::style::DropCapFormat DropCapFormat;
251 //-------------------------------------------------------------------------
253 /** specifies if the property <var>DropCapFormat</var>
254 is applied to the whole first word.
256 [optional, property] boolean DropCapWholeWord;
258 //-------------------------------------------------------------------------
260 /** Setting this property to <TRUE/> prevents page or column
261 breaks between this and the following paragraph.
264 <p>This feature is useful for preventing title paragraphs to be
265 the last line on a page or column.</p>
267 [optional, property] boolean ParaKeepTogether;
269 //-------------------------------------------------------------------------
271 /** Setting this property to <FALSE/> prevents the paragraph from
272 getting split into two pages or columns.
274 [optional, property] boolean ParaSplit;
276 //-------------------------------------------------------------------------
278 /** specifies the numbering level of the paragraph.
280 [optional, property] short NumberingLevel;
282 //-------------------------------------------------------------------------
283 /** contains the numbering rules applied to this paragraph.
285 [optional, property] com::sun::star::container::XIndexReplace NumberingRules;
287 //-------------------------------------------------------------------------
289 /** specifies the start value for numbering if a new numbering starts at this paragraph.
291 [optional, property] short NumberingStartValue;
293 //-------------------------------------------------------------------------
294 /** determines if the numbering rules restart, counting at the current paragraph.
296 [optional, property] boolean ParaIsNumberingRestart;
297 //-------------------------------------------------------------------------
299 /** specifies the name of the style for the numbering.
302 <p>The name must be one of the names which are available via
303 <type>XStyleFamiliesSupplier</type>.</p>
305 [optional, property] string NumberingStyleName;
306 //-------------------------------------------------------------------------
308 /** specifies the minimum number of lines of the paragraph that have
309 to be at bottom of a page if the paragraph is spread over more than
310 one page.
312 [optional, property] byte ParaOrphans;
313 //-------------------------------------------------------------------------
315 /** specifies the minimum number of lines of the paragraph that have
316 to be at top of a page if the paragraph is spread over more than
317 one page.
319 [optional, property] byte ParaWidows;
320 //-------------------------------------------------------------------------
321 /** determines the type, color, and size of the shadow.
322 @see com.sun.star.table.ShadowFormat
324 [optional, property] com::sun::star::table::ShadowFormat ParaShadowFormat;
325 //-------------------------------------------------------------------------
326 /** contains the left border of the object.
328 [property, optional] com::sun::star::table::BorderLine LeftBorder;
330 //-------------------------------------------------------------------------
331 /** contains the right border of the object.
333 [property, optional] com::sun::star::table::BorderLine RightBorder;
335 //-------------------------------------------------------------------------
336 /** contains the top border of the object.
338 [property, optional] com::sun::star::table::BorderLine TopBorder;
340 //-------------------------------------------------------------------------
341 /** contains the bottom border of the object.
343 [property, optional] com::sun::star::table::BorderLine BottomBorder;
345 //-------------------------------------------------------------------------
346 /** contains the distance from the border to the object.
348 [property, optional] long BorderDistance;
350 //-------------------------------------------------------------------------
351 /** contains the distance from the left border to the object.
353 [property, optional] long LeftBorderDistance;
355 //-------------------------------------------------------------------------
356 /** contains the distance from the right border to the object.
358 [property, optional] long RightBorderDistance;
360 //-------------------------------------------------------------------------
361 /** contains the distance from the top border to the object.
363 [property, optional] long TopBorderDistance;
365 //-------------------------------------------------------------------------
366 /** contains the distance from the bottom border to the object.
368 [property, optional] long BottomBorderDistance;
370 //-------------------------------------------------------------------------
371 /** determins the type of break that is applied at the beginning of the table.
372 @see com.sun.star.style.BreakType
374 [optional, property] com::sun::star::style::BreakType BreakType;
376 //-------------------------------------------------------------------------
377 /** specifies the character style name for drop caps.
379 [optional, property] string DropCapCharStyleName;
381 //-------------------------------------------------------------------------
382 /** specifies the indent for the first line.
384 [optional, property] long ParaFirstLineIndent;
386 //-------------------------------------------------------------------------
387 /** determines if the first line should be indented automatically.
389 [optional, property] boolean ParaIsAutoFirstLineIndent;
391 //-------------------------------------------------------------------------
392 /** specifies if automatic hyphenation is applied.
394 [property] boolean ParaIsHyphenation;
396 //-------------------------------------------------------------------------
397 /** specifies the maximum number of consecutive hyphens.
399 [optional, property] short ParaHyphenationMaxHyphens;
401 //-------------------------------------------------------------------------
402 /** specifies the maximum number of characters to remain before the
403 hyphen character (when hyphenation is applied).
405 [optional, property] short ParaHyphenationMaxLeadingChars;
407 //-------------------------------------------------------------------------
408 /** specifies the maximum number of characters to remain after the
409 hyphen character (when hyphenation is applied).
411 [optional, property] short ParaHyphenationMaxTrailingChars;
413 //-------------------------------------------------------------------------
414 /** specifies the vertical alignment of a paragraph.
416 @see com::sun::star::text::ParagraphVertAlign
418 [optional, property] short ParaVertAlignment;
420 //-------------------------------------------------------------------------
421 /** this property stores xml attributes.
422 They will be saved to and restored from automatic styles inside xml files.
424 @see com::sun::star::xml::AttributeContainer
426 [optional, property] com::sun::star::container::XNameContainer ParaUserDefinedAttributes;
428 //-------------------------------------------------------------------------
429 /** returns <FALSE/> if the paragraph is part of a numbering, but has no
430 numbering label.
432 <p>A paragraph is part of a numbering, if a style for a numbering is
433 set - see NumberingStyleName.</p>
434 <p>If the paragraph is not part of a numbering the property is void.</p>
436 [optional, property, maybevoid] boolean NumberingIsNumber;
438 //-------------------------------------------------------------------------
439 /** the property determines if borders set at a paragraph are merged with the
440 next paragraph.
441 <p>Borders are only merged if they are identical.</p>
443 [optional, property, maybevoid] boolean ParaIsConnectBorder;
445 //-------------------------------------------------------------------------
446 /** specifies the id of the list to which the paragraph belongs
449 [optional, property] string ListId;
451 //-------------------------------------------------------------------------
452 /** specifies the outline level to which the paragraph belongs
454 @since OOo 3.1
456 <p>Value 0 indicates that the paragraph belongs to the body text.</p>
457 <p>Values [1..10] indicates that the paragraph belongs to the corresponding outline level.</p>
459 [optional, property] short OutlineLevel;
462 //=============================================================================
464 }; }; }; };
466 #endif