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: PageProperties.idl,v $
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_PageProperties_idl__
31 #define __com_sun_star_style_PageProperties_idl__
33 #ifndef __com_sun_star_table_ShadowFormat_idl__
34 #include
<com
/sun
/star
/table
/ShadowFormat.idl
>
37 #ifndef __com_sun_star_util_Color_idl__
38 #include
<com
/sun
/star
/util
/Color.idl
>
41 #ifndef __com_sun_star_table_BorderLine_idl__
42 #include
<com
/sun
/star
/table
/BorderLine.idl
>
45 #ifndef __com_sun_star_style_PageStyleLayout_idl__
46 #include
<com
/sun
/star
/style
/PageStyleLayout.idl
>
49 #ifndef __com_sun_star_style_GraphicLocation_idl__
50 #include
<com
/sun
/star
/style
/GraphicLocation.idl
>
53 #ifndef __com_sun_star_awt_Size_idl__
54 #include
<com
/sun
/star
/awt
/Size.idl
>
57 #ifndef __com_sun_star_text_XText_idl__
58 #include
<com
/sun
/star
/text
/XText.idl
>
61 #ifndef __com_sun_star_text_XTextColumns_idl__
62 #include
<com
/sun
/star
/text
/XTextColumns.idl
>
65 #ifndef __com_sun_star_container_XNameContainer_idl__
66 #include
<com
/sun
/star
/container
/XNameContainer.idl
>
69 #ifndef __com_sun_star_text_WritingMode2_idl__
70 #include
<com
/sun
/star
/text
/WritingMode2.idl
>
73 //=============================================================================
75 module com
{ module sun
{ module star
{ module style
{
77 //=============================================================================
79 /** describes the style of pages.
81 published service PageProperties
83 //-----------------------------------------------------------------------------
84 /** contains the background color of the page.
86 [property
] com
::sun
::star
::util
::Color BackColor
;
87 //-----------------------------------------------------------------------------
90 //[property] BackGraphic;
91 //-----------------------------------------------------------------------------
92 /** contains the URL of the background graphic.
94 [property
] string BackGraphicURL
;
95 //-----------------------------------------------------------------------------
96 /** contains the filter name of the background graphic.
98 [property
] string BackGraphicFilter
;
99 //-----------------------------------------------------------------------------
100 /** determins the location of the background graphic.
102 [property
] com
::sun
::star
::style
::GraphicLocation BackGraphicLocation
;
103 //-----------------------------------------------------------------------------
104 /** determins if the background color is transparent.
106 <p>If this property is set to <TRUE/>,
107 <member>PageStyle::BackColor</member> will not be used.</p>
109 [property
] boolean BackTransparent
;
110 //-----------------------------------------------------------------------------
111 /** determins the left margin of the page.
113 [property
] long LeftMargin
;
114 //-----------------------------------------------------------------------------
115 /** determins the right margin of the page.
117 [property
] long RightMargin
;
118 //-----------------------------------------------------------------------------
119 /** determins the top margin of the page.
121 [property
] long TopMargin
;
122 //-----------------------------------------------------------------------------
123 /** determins the bottom margin of the page.
125 [property
] long BottomMargin
;
126 //-----------------------------------------------------------------------------
127 /** determines the style of the left border line of the page.
129 [property
] com
::sun
::star
::table
::BorderLine LeftBorder
;
130 //-----------------------------------------------------------------------------
131 /** determines the style of the right border line of the page.
133 [property
] com
::sun
::star
::table
::BorderLine RightBorder
;
134 //-----------------------------------------------------------------------------
135 /** determines the style of the top border line of the page.
137 [property
] com
::sun
::star
::table
::BorderLine TopBorder
;
138 //-----------------------------------------------------------------------------
139 /** determines the style of the bottom border line of the page.
141 [property
] com
::sun
::star
::table
::BorderLine BottomBorder
;
142 //-----------------------------------------------------------------------------
143 /** determins the left border distance of the page.
145 [property
] long LeftBorderDistance
;
146 //-----------------------------------------------------------------------------
147 /** determins the right border distance of the page.
149 [property
] long RightBorderDistance
;
150 //-----------------------------------------------------------------------------
151 /** determins the top border distance of the page.
153 [property
] long TopBorderDistance
;
154 //-----------------------------------------------------------------------------
155 /** determins the bottom border distance of the page.
157 [property
] long BottomBorderDistance
;
158 //-----------------------------------------------------------------------------
159 /** determins the shadow of the page.
161 [property
] com
::sun
::star
::table
::ShadowFormat ShadowFormat
;
162 //-----------------------------------------------------------------------------
163 /** determins if the page format is landscape.
165 [property
] boolean IsLandscape
;
166 //-----------------------------------------------------------------------------
167 /** determins the default numbering type for this page.
169 [property
] short NumberingType
;
170 //-----------------------------------------------------------------------------
171 /** determins the layout of the page.
173 [property
] com
::sun
::star
::style
::PageStyleLayout PageStyleLayout
;
174 //-----------------------------------------------------------------------------
175 /** contains the name of a paper tray of the selected printer.
177 [property
] string PrinterPaperTray
;
178 //-----------------------------------------------------------------------------
179 /** determins if the register mode is active on that page.
181 [optional, property
] boolean RegisterModeActive
;
182 //-----------------------------------------------------------------------------
183 /** contains the name of the paragraph style that is used as reference of the register mode.
185 [optional, property
] string RegisterParagraphStyle
;
186 //-----------------------------------------------------------------------------
187 /** contains the paper size of the page.
189 [property
] com
::sun
::star
::awt
::Size Size
;
190 //-----------------------------------------------------------------------------
191 /** contains the width of the page.
193 [property
] long Width
;
194 //-----------------------------------------------------------------------------
195 /** contains the height of the page.
197 [property
] long Height
;
198 //-----------------------------------------------------------------------------
199 /** contains the column settings of the page.
201 [optional , property
] com
::sun
::star
::text
::XTextColumns TextColumns
;
202 //-----------------------------------------------------------------------------
203 /** contains user defined attributes.
205 <p>This <type scope="com::sun::star::container">XNameContainer</type>
207 <type scope="com::sun::star::xml">AttributeContainer</type>.</p>
209 [property
] com
::sun
::star
::container
::XNameContainer UserDefinedAttributes
;
211 //-----------------------------------------------------------------------------
212 /** contains the color of the background of the header.
214 [property
, maybevoid
] com
::sun
::star
::util
::Color HeaderBackColor
;
215 //-----------------------------------------------------------------------------
218 //[property, maybevoid] HeaderBackGraphic;
219 //-----------------------------------------------------------------------------
220 /** contains the URL of the background graphic of the header.
222 [property
, maybevoid
] string HeaderBackGraphicURL
;
223 //-----------------------------------------------------------------------------
224 /** contains the filter name of the background graphic of the header.
226 [property
, maybevoid
] string HeaderBackGraphicFilter
;
227 //-----------------------------------------------------------------------------
228 /** determines the location of the background graphic of the header.
230 [property
, maybevoid
] com
::sun
::star
::style
::GraphicLocation HeaderBackGraphicLocation
;
231 //-----------------------------------------------------------------------------
232 /** contains the left margin of the header.
234 [property
, maybevoid
] long HeaderLeftMargin
;
235 //-----------------------------------------------------------------------------
236 /** contains the right margin of the header.
238 [property
, maybevoid
] long HeaderRightMargin
;
239 //-----------------------------------------------------------------------------
240 /** determines if the background color of the header is transparent.
242 <p>If this property is set to <TRUE/>,
243 <member>PageStyle::HeaderBackColor</member> will not be used.</p>
245 [property
, maybevoid
] boolean HeaderBackTransparent
;
246 //-----------------------------------------------------------------------------
247 /** determines the style of the left border line of the header.
249 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderLeftBorder
;
250 //-----------------------------------------------------------------------------
251 /** determines the style of the right border line of the header.
253 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderRightBorder
;
254 //-----------------------------------------------------------------------------
255 /** determines the style of the top border line of the header.
257 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderTopBorder
;
258 //-----------------------------------------------------------------------------
259 /** determines the style of the bottom border line of the header.
261 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderBottomBorder
;
263 //-----------------------------------------------------------------------------
264 /** determines the left border distance of the header.
266 [property
, maybevoid
] long HeaderLeftBorderDistance
;
267 //-----------------------------------------------------------------------------
268 /** determines the right border distance of the header.
270 [property
, maybevoid
] long HeaderRightBorderDistance
;
271 //-----------------------------------------------------------------------------
272 /** determines the top border distance of the header.
274 [property
, maybevoid
] long HeaderTopBorderDistance
;
275 //-----------------------------------------------------------------------------
276 /** determines the bottom border distance of the header.
278 [property
, maybevoid
] long HeaderBottomBorderDistance
;
279 //-----------------------------------------------------------------------------
280 /** determines the shadow of the header.
282 [property
, maybevoid
] com
::sun
::star
::table
::ShadowFormat HeaderShadowFormat
;
283 //-----------------------------------------------------------------------------
284 /** determines the distance between the header and the body text area.
286 [property
, maybevoid
] long HeaderBodyDistance
;
287 //-----------------------------------------------------------------------------
288 /** determines if the header content on left and right pages is the same.
290 [property
, maybevoid
] boolean HeaderIsShared
;
291 //-----------------------------------------------------------------------------
292 /** contains the height of the header.
294 [property
, maybevoid
] long HeaderHeight
;
295 //-----------------------------------------------------------------------------
296 /** determines if the height of the header depends on the content.
298 [property
, maybevoid
] boolean HeaderIsDynamicHeight
;
299 //-----------------------------------------------------------------------------
300 /** determines if a header is used on the page.
302 [property
] boolean HeaderIsOn
;
304 //-----------------------------------------------------------------------------
305 /** contains the interface to the text of the header.
307 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText HeaderText
;
308 //-----------------------------------------------------------------------------
309 /** contains the interface to the text of the header of left pages.
311 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText HeaderTextLeft
;
312 //-----------------------------------------------------------------------------
313 /** contains the interface to the text of the header of right pages.
315 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText HeaderTextRight
;
317 //-----------------------------------------------------------------------------
318 /** contains the color of the background of the footer.
320 [property
, maybevoid
] com
::sun
::star
::util
::Color FooterBackColor
;
321 //-----------------------------------------------------------------------------
324 //[property, maybevoid] FooterBackGraphic;
325 //-----------------------------------------------------------------------------
326 /** contains the URL of the background graphic in the footer.
328 [property
, maybevoid
] string FooterBackGraphicURL
;
329 //-----------------------------------------------------------------------------
330 /** contains the filter name of the background graphic in the footer.
332 [property
, maybevoid
] string FooterBackGraphicFilter
;
333 //-----------------------------------------------------------------------------
334 /** determines the location of the background graphic in the footer.
336 [property
, maybevoid
] com
::sun
::star
::style
::GraphicLocation FooterBackGraphicLocation
;
337 //-----------------------------------------------------------------------------
338 /** determines the left margin of the footer.
340 [property
, maybevoid
] long FooterLeftMargin
;
341 //-----------------------------------------------------------------------------
342 /** determines the right margin of the footer.
344 [property
, maybevoid
] long FooterRightMargin
;
345 //-----------------------------------------------------------------------------
346 /** determines if the background of the footer is transparent.
348 [property
, maybevoid
] boolean FooterBackTransparent
;
349 //-----------------------------------------------------------------------------
350 /** contains the style of the left border line of the footer.
352 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterLeftBorder
;
353 //-----------------------------------------------------------------------------
354 /** contains the style of the right border line of the footer.
356 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterRightBorder
;
357 //-----------------------------------------------------------------------------
358 /** contains the style of the top border line of the footer.
360 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterTopBorder
;
361 //-----------------------------------------------------------------------------
362 /** contains the style of the bottom border line of the footer.
364 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterBottomBorder
;
365 //-----------------------------------------------------------------------------
366 /** contains the left border distance of the footer.
368 [property
, maybevoid
] long FooterLeftBorderDistance
;
369 //-----------------------------------------------------------------------------
370 /** contains the right border distance of the footer.
372 [property
, maybevoid
] long FooterRightBorderDistance
;
373 //-----------------------------------------------------------------------------
374 /** contains the top border distance of the footer.
376 [property
, maybevoid
] long FooterTopBorderDistance
;
377 //-----------------------------------------------------------------------------
378 /** contains the bottom border distance of the footer.
380 [property
, maybevoid
] long FooterBottomBorderDistance
;
381 //-----------------------------------------------------------------------------
382 /** determines the shadow of the footer.
384 [property
, maybevoid
] com
::sun
::star
::table
::ShadowFormat FooterShadowFormat
;
385 //-----------------------------------------------------------------------------
386 /** determines the distance between the footer and the body text area.
388 [property
, maybevoid
] long FooterBodyDistance
;
389 //-----------------------------------------------------------------------------
390 /** determines if the height of the footer depends on the content.
392 [property
, maybevoid
] boolean FooterIsDynamicHeight
;
393 //-----------------------------------------------------------------------------
394 /** determines if the footer content on left and right pages is the same.
396 [property
, maybevoid
] boolean FooterIsShared
;
397 //-----------------------------------------------------------------------------
398 /** determines the height of the footer.
400 [property
, maybevoid
] long FooterHeight
;
401 //-----------------------------------------------------------------------------
402 /** determines if a footer is used on the page.
404 [property
] boolean FooterIsOn
;
405 //-----------------------------------------------------------------------------
406 /** contains the interface to the text of the footer.
408 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText FooterText
;
409 //-----------------------------------------------------------------------------
410 /** contains the interface to the text of the footer of a left page.
412 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText FooterTextLeft
;
413 //-----------------------------------------------------------------------------
414 /** contains the interface to the text of the footer of a right page.
416 //-----------------------------------------------------------------------------
419 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText FooterTextRight
;
420 //-----------------------------------------------------------------------------
421 /** contains the maximum height of the footnote area. If set to zero then the height
422 of the current page is used as limit.
424 [optional,property
] long FootnoteHeight
;
425 //-----------------------------------------------------------------------------
426 /** contains the weight of the separator line between the text and the footnote area.
428 [optional,property
] short FootnoteLineWeight
;
429 //-----------------------------------------------------------------------------
430 /** contains the color of the separator line between the text and the footnote area..
432 [optional,property
] com
::sun
::star
::util
::Color FootnoteLineColor
;
433 //-----------------------------------------------------------------------------
434 /** contains the relative width of the separator line between the text and the footnote area.
436 [optional,property
] byte FootnoteLineRelativeWidth
;
437 //-----------------------------------------------------------------------------
438 /** contains the adjustment of the separator line between the text and the footnote area.
439 <p><type scope="com::sun::star::text">HorizontalAdjust</type>s.</p>
441 [optional,property
] short FootnoteLineAdjust
;
442 //-----------------------------------------------------------------------------
443 /** contains the distance between the text and the separator line between the
444 text and the footnote area.
446 [optional,property
] long FootnoteLineTextDistance
;
447 //-----------------------------------------------------------------------------
448 /** contains the distance between the footnote area and the separator line between
449 the text and the footnote area.
451 [optional,property
] long FootnoteLineDistance
;
452 //-----------------------------------------------------------------------------
453 /** contains the writing direction, as represented by the <type
454 scope="com::sun::star::text">WritingMode2</type> constants */
455 [optional,property
] short WritingMode
;
456 //-----------------------------------------------------------------------------
457 /** contains the mode of the text grid (none, lines, ...), as
458 represented by <type scope="com::sun::star::text">TextGridMode</type>
460 [optional, property
] short GridMode
;
461 //-----------------------------------------------------------------------------
462 /** contains the display color of the text grid */
463 [optional, property
] com
::sun
::star
::util
::Color GridColor
;
464 //-----------------------------------------------------------------------------
465 /** contains the number of lines in the text grid */
466 [optional, property
] short GridLines
;
467 //-----------------------------------------------------------------------------
468 /** contains the height of the base text line inside the text grid */
469 [optional, property
] long GridBaseHeight
;
470 //-----------------------------------------------------------------------------
471 /** contains the height of the ruby text line inside the text grid */
472 [optional, property
] long GridRubyHeight
;
473 //-----------------------------------------------------------------------------
474 /** determines whether the text grid's ruby line is located below or
475 above the base line */
476 [optional, property
] boolean GridRubyBelow
;
477 //-----------------------------------------------------------------------------
478 /** determines whether the text grid lines are printed */
479 [optional, property
] boolean GridPrint
;
480 //-----------------------------------------------------------------------------
481 /** determines whether the text grid lines are visible or not */
482 [optional, property
] boolean GridDisplay
;
483 //-----------------------------------------------------------------------------
484 /** determines whether to use dynamic spacing in header or not. */
485 [optional, property
, maybevoid
] boolean HeaderDynamicSpacing
;
486 //-----------------------------------------------------------------------------
487 /** determines whether to use dynamic spacing in footer or not. */
488 [optional, property
, maybevoid
] boolean FooterDynamicSpacing
;
489 //-----------------------------------------------------------------------------
490 /** determines the distance of all borders of the page. */
491 [property
] long BorderDistance
;
492 //-----------------------------------------------------------------------------
493 /** contains the distance of all borders of the footer. */
494 [property
, maybevoid
] long FooterBorderDistance
;
495 //-----------------------------------------------------------------------------
496 /** determines the distance of all borders of the header. */
497 [property
, maybevoid
] long HeaderBorderDistance
;
500 //=============================================================================